# French translation of the Godot Engine class reference.
# Copyright (c) 2014-present Godot Engine contributors.
# Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur.
# This file is distributed under the same license as the Godot source code.
#
# Rémi Verschelde <remi@godotengine.org>, 2020, 2021, 2025.
# Freyja <aerandil@gmail.com>, 2020, 2023.
# Gol.D.eNI <eniolamy1@gmail.com>, 2020.
# Anonymous <noreply@weblate.org>, 2020.
# Nathan <bonnemainsnathan@gmail.com>, 2020.
# Fox Lahoki <alexbar@live.fr>, 2020.
# Pierre Caye <pierrecaye@laposte.net>, 2020, 2021, 2022.
# Sofiane <Sofiane-77@caramail.fr>, 2020.
# Gaya <limanegaya@gmail.com>, 2020.
# Nick B <nbourrereg@hotmail.com>, 2020.
# JustATranslator <fa5k52y@mailo.com>, 2020.
# Omicron <omicron666.dev@gmail.com>, 2020.
# Pierre Stempin <pierre.stempin@gmail.com>, 2020, 2021, 2023.
# Léo Vincent <l009.vincent@gmail.com>, 2020.
# Bastien Schmitt <bastien.schmitt221@gmail.com>, 2020.
# Ben Zepman <zepman@gmail.com>, 2020.
# Puckid <yannroth@msn.com>, 2020.
# Boris Petrov <boris.v.petrov@protonmail.com>, 2020.
# Joseph Boudou <joseph.boudou@matabio.net>, 2020.
# Helix Sir <vincentbarkmann@gmail.com>, 2020, 2021, 2022.
# Yvanvan 37 <yvanvan.37@gmail.com>, 2020.
# Synkied <synkx@hotmail.fr>, 2020, 2021.
# Théo Tavernier <tavernier.2002@gmail.com>, 2020.
# TechnoPorg <jonah.janzen@gmail.com>, 2020, 2021, 2023.
# Deleted User <noreply+26914@weblate.org>, 2020.
# Gerard Lamber <gerard13lamber@gmail.com>, 2021.
# Youssef Harmal <the.coder.crab@gmail.com>, 2021.
# gael <gael@gborras.fr>, 2021.
# Clément Topy <topy72.mine@gmail.com>, 2021.
# Arnaud Golfouse <arnaud.golfouse@laposte.net>, 2021.
# Toquey SiGauses <meiyo40@gmail.com>, 2021.
# GABRIELLE Damien <damiengabrielle@gmail.com>, 2021.
# Julien Vanelian <julienvanelian@hotmail.com>, 2021.
# Perrier Mathis <mathis.perrier73@gmail.com>, 2021, 2022, 2023, 2024.
# Blackiris <divjvc@free.fr>, 2021, 2022.
# AndyNekena <andy.nekena@gmail.com>, 2021.
# Legorel <Legorel412@gmail.com>, 2021, 2022.
# Romain Hebert <romain.hebert0442@gmail.com>, 2021.
# Tim Krief <tim@timkrief.com>, 2021.
# Rémi Verschelde <akien@godotengine.org>, 2021.
# blfr <contact.blfr@gmail.com>, 2021.
# Urbain <urbain.lantres@tutanota.com>, 2021.
# syns <jpo.drt@gmail.com>, 2021.
# Gallonigher <meduse1500@ovh.fr>, 2021, 2022.
# Timothée MB <timothee.me@gmail.com>, 2021, 2025.
# Florent <fnuttens@dabao.fr>, 2021.
# Benjamin Peter <benji.peter@hotmail.fr>, 2021.
# Maxime Leroy <lisacintosh@gmail.com>, 2021, 2022.
# ASTRALE <jules.cercy@etu.univ-lyon1.fr>, 2021, 2022.
# Pierre-Alexandre Arènes <palex95870@gmail.com>, 2022.
# KikooDX <kikoodx@paranoici.org>, 2022.
# Kevin Bouancheau <kevin.bouancheau@gmail.com>, 2022.
# Maxim Lopez <maxim.lopez.02@gmail.com>, 2022.
# Philippe Lamare <ph.lamare@free.fr>, 2022.
# Augustin Ambiehl <ambiehlaugustin@gmail.com>, 2022.
# Landry Simo <landrysimo99@gmail.com>, 2022.
# Alexis Coudert <coudert.alex@gmail.com>, 2022.
# Callim Ethee <callimethee@gmail.com>, 2023.
# Thalya Gauvrit <skar0ps.dev@gmail.com>, 2023.
# Hipolyte Ponthieu <7hip.po6@orange.fr>, 2023.
# Dricom Dragon <dev@jovian-hersemeule.eu>, 2023.
# t8y <contact@t3y.eu>, 2023.
# GuruWP <guruwp@protonmail.com>, 2023.
# Paul Cordellier <cordellierp@gmail.com>, 2023.
# Alexis Robin <arobin9999@gmail.com>, 2023.
# "Dimitri A." <dimitripilot3@gmail.com>, 2023.
# EGuillemot <Elouen.Guillemot@gmail.com>, 2023.
# Antonia Carrier <carrier.antonia@gmail.com>, 2023.
# #Guigui <guillaume.grosjean@outlook.fr>, 2023.
# Varthore <moutcho57@gmail.com>, 2023.
# Gwendal <gwendalbrd@proton.me>, 2023.
# Paragoumba <paragoumba@gmail.com>, 2023.
# Vincent Caruso <caruso.vincent@gmail.com>, 2023.
# Paul PINA-GHERARDI <pina.paul@orange.fr>, 2023.
# Thomas <ts.guntz@gmail.com>, 2023.
# Chloe Lee-Hone <chloe.leehone@gmail.com>, 2023.
# Oliv Spaï <oliv@extra.world>, 2023.
# Roger Dupond <1gonnet.arthur1@gmail.com>, 2023.
# VBasic <vincentbarkmann@gmail.com>, 2023.
# CedricLeChaton <cedric.vaniez@gmail.com>, 2023.
# Gouvernon Stan <stany@gouvernon.org>, 2023.
# Benjamin Brasseur <benjamin.brasseur85@gmail.com>, 2023.
# Rertsyd <rertsyd@outlook.com>, 2023.
# Calimelo <melo.j@lilo.org>, 2023.
# Roskai <angel.du.2558@gmail.com>, 2023.
# Elfège <HinviElfege@gmail.com>, 2023.
# peperoni <peperoni@users.noreply.hosted.weblate.org>, 2024.
# Octano <theo.huchard@gmail.com>, 2024.
# Mat <mathis-abdou@outlook.com>, 2024.
# Mileeam <Wileeam07@gmail.com>, 2024.
# Pandores <pandores.dr@gmail.com>, 2024.
# Didier Morandi <didier.morandi@gmail.com>, 2024.
# Joshua Adamec <joshua.adamec@gmail.com>, 2024.
# laumane <laumane.laumana@protonmail.com>, 2024.
# normigon <yoann-grosse@proton.me>, 2024.
# Miokoba <jonathan.boussard@gmail.com>, 2024.
# Xltec <axelcrp.pro@gmail.com>, 2024.
# 7lele <leoarn100@gmail.com>, 2024.
# Gabriel <gab.chevanne@gmail.com>, 2024.
# Unreal Vision <unrealvisionyt@gmail.com>, 2024.
# Romain Defente <rdefente@gmail.com>, 2024.
# zefdzeqf <azrzrezfafe@users.noreply.hosted.weblate.org>, 2024.
# Edvard Fauchelevent <edvardfauchelevent@gmail.com>, 2024.
# Fontaine Nathan <nathan.fontaine53@gmail.com>, 2024.
# Mvsqu3 <paulkevinb.22@gmail.com>, 2024.
# Luc Salommez <lucsalommez@gmail.com>, 2024.
# Patou <75997617+xorblo-doitus@users.noreply.github.com>, 2024.
# caspicrone <lu2018@simonch.fr>, 2024.
# aioshiro <aioshiro57@gmail.com>, 2024.
# alpikespot <hasibe1973nurullah@gmail.com>, 2024.
# dan rastock <veryellow@free.fr>, 2024.
# Théo GUEURET <tgueuret@live.fr>, 2025.
# Olivier <martio@hotmail.fr>, 2025.
# Hélie Deschamps <helie.deschamps@gmail.com>, 2025.
# aioshiro <aioshiro57@proton.me>, 2025.
# Dario Le Hy <dario.lehy@gmail.com>, 2025.
# Varga <vancouver_cliparf@simplelogin.com>, 2025.
# Audae <audae@users.noreply.hosted.weblate.org>, 2025.
# 4samsamAC <samilerhbali@gmail.com>, 2025.
# Alexandre Watrin <al.watrin@gmail.com>, 2025.
# Omgeta <anooptiger@hotmail.com>, 2025.
# Creator of Fun <Thewhiteshadow664@gmail.com>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
"PO-Revision-Date: 2025-09-30 07:24+0000\n"
"Last-Translator: aioshiro <aioshiro57@proton.me>\n"
"Language-Team: French <https://hosted.weblate.org/projects/godot-engine/godot-"
"class-reference/fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 5.14-dev\n"

msgid "All classes"
msgstr "Toutes les classes"

msgid "Globals"
msgstr "Variables globales"

msgid "Nodes"
msgstr "Nœuds"

msgid "Resources"
msgstr "Ressources"

msgid "Editor-only"
msgstr "Éditeur-uniquement"

msgid "Other objects"
msgstr "Autres objets"

msgid "Variant types"
msgstr "Types Variant"

msgid "Description"
msgstr "Description"

msgid "Tutorials"
msgstr "Tutoriels"

msgid "Properties"
msgstr "Propriétés"

msgid "Constructors"
msgstr "Constructeurs"

msgid "Methods"
msgstr "Méthodes"

msgid "Operators"
msgstr "Opérateurs"

msgid "Theme Properties"
msgstr "Propriétés du thème"

msgid "Signals"
msgstr "Signaux"

msgid "Enumerations"
msgstr "Énumérations"

msgid "Constants"
msgstr "Constantes"

msgid "Annotations"
msgstr "Annotations"

msgid "Property Descriptions"
msgstr "Descriptions des propriétés"

msgid "Constructor Descriptions"
msgstr "Descriptions des constructeurs"

msgid "Method Descriptions"
msgstr "Descriptions des méthodes"

msgid "Operator Descriptions"
msgstr "Descriptions des opérateurs"

msgid "Theme Property Descriptions"
msgstr "Descriptions des propriétés du thème"

msgid "Inherits:"
msgstr "Hérite de :"

msgid "Inherited By:"
msgstr "Hérité de:"

msgid "(overrides %s)"
msgstr "(remplace %s)"

msgid "Default"
msgstr "Défaut"

msgid "Setter"
msgstr "Setter"

msgid "value"
msgstr "valeur"

msgid "Getter"
msgstr "Getter"

msgid ""
"This method should typically be overridden by the user to have any effect."
msgstr ""
"Cette méthode doit typiquement être redéfinie par l'utilisateur pour avoir un "
"effet."

msgid ""
"This method has no side effects. It doesn't modify any of the instance's "
"member variables."
msgstr ""
"Cette méthode n'a pas d'effets de bord. Elle ne modifie aucune des variables "
"membres de l'instance."

msgid ""
"This method accepts any number of arguments after the ones described here."
msgstr ""
"Cette méthode accepte n'importe quel nombre d'arguments après ceux décris ici."

msgid "This method is used to construct a type."
msgstr "Cette méthode est utilisée pour construire un type."

msgid ""
"This method doesn't need an instance to be called, so it can be called "
"directly using the class name."
msgstr ""
"Cette méthode n'a pas besoin d'instance pour être appelée, elle peut donc "
"être directement appelée en utilisant le nom de la classe."

msgid ""
"This method describes a valid operator to use with this type as left-hand "
"operand."
msgstr ""
"Cette méthode décrit un opérateur valide à utiliser avec ce type en tant "
"qu'opérande gauche."

msgid "This value is an integer composed as a bitmask of the following flags."
msgstr ""
"Cette valeur est un nombre entier composé d'un masque de bits des options "
"suivantes."

msgid "No return value."
msgstr "Aucune valeur de retour."

msgid ""
"There is currently no description for this class. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement pas de description pour cette classe. Aidez-nous "
"en:ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this signal. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement aucune description pour ce signal. Aidez-nous "
"en:ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this enum. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement aucune description pour cette énumératoin. Aidez-nous "
"en :ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this constant. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement pas de description pour cette constante. Aidez-nous "
"en :ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this annotation. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement aucune description pour cette annotation. Aidez-nous "
"en :ref:`contribuant une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this property. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement aucune description pour cette propriété. Aidez-nous "
"en :ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this constructor. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement pas de description pour ce constructeur. Aidez-nous "
"en:ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this method. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement aucune description pour cette méthode. Aidez-nous "
"en:ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this operator. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement aucune description pour cet opérateur. Aidez-nous "
"en:ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There is currently no description for this theme property. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"Il n'y a actuellement pas de description pour cette propriété de thème. Aidez-"
"nous en:ref:`contribuant à une <doc_updating_the_class_reference>` !"

msgid ""
"There are notable differences when using this API with C#. "
"See :ref:`doc_c_sharp_differences` for more information."
msgstr ""
"Il y a des différences notables dans l'utilisation de cette API en C#. Voir "
"ref:`doc_c_sharp_differences` pour plus d'informations."

msgid "Deprecated:"
msgstr "Obsolète :"

msgid "Experimental:"
msgstr "Expérimental :"

msgid "This signal may be changed or removed in future versions."
msgstr "Ce signal peut être changé ou retiré dans de futures versions."

msgid "This constant may be changed or removed in future versions."
msgstr "Cette constante peut être changée ou retirée dans de futures versions."

msgid "This property may be changed or removed in future versions."
msgstr "Cette propriété peut être changée ou retirée dans de futures versions."

msgid "This constructor may be changed or removed in future versions."
msgstr "Ce constructeur peut être changé ou retiré dans de futures versions."

msgid "This method may be changed or removed in future versions."
msgstr "Cette méthode peut être changée ou retirée dans de futures versions."

msgid "This operator may be changed or removed in future versions."
msgstr "Cet opérateur peut être changé ou modifié dans de futures versions."

msgid "This theme property may be changed or removed in future versions."
msgstr ""
"Cette propriété de thème peut être changée ou retirée dans de futures "
"versions."

msgid "Built-in GDScript constants, functions, and annotations."
msgstr "Constantes, fonctions et annotations intégrées à GDScript."

msgid ""
"A list of utility functions and annotations accessible from any script "
"written in GDScript.\n"
"For the list of global functions and constants that can be accessed in any "
"scripting language, see [@GlobalScope]."
msgstr ""
"Une liste de fonctions utilitaires et d'annotations, utilisables depuis "
"n'importe quel script écrit en GDScript.\n"
"Pour voir la liste des fonctions et constantes globales disponibles dans "
"n'importe quel langage, voir [@GlobalScope]."

msgid "GDScript exports"
msgstr "Exports GDScript"

msgid "Use [method Color.from_rgba8] instead."
msgstr "Utilisez [method Color.from_rgba8] à la place."

msgid ""
"Returns a [Color] constructed from red ([param r8]), green ([param g8]), blue "
"([param b8]), and optionally alpha ([param a8]) integer channels, each "
"divided by [code]255.0[/code] for their final value. Using [method Color8] "
"instead of the standard [Color] constructor is useful when you need to match "
"exact color values in an [Image].\n"
"[codeblock]\n"
"var red = Color8(255, 0, 0)             # Same as Color(1, 0, 0).\n"
"var dark_blue = Color8(0, 0, 51)        # Same as Color(0, 0, 0.2).\n"
"var my_color = Color8(306, 255, 0, 102) # Same as Color(1.2, 1, 0, 0.4).\n"
"[/codeblock]\n"
"[b]Note:[/b] Due to the lower precision of [method Color8] compared to the "
"standard [Color] constructor, a color created with [method Color8] will "
"generally not be equal to the same color created with the standard [Color] "
"constructor. Use [method Color.is_equal_approx] for comparisons to avoid "
"issues with floating-point precision error."
msgstr ""
"Renvoie une [Color] construite à partir des niveaux de rouge ([param r8]), de "
"vert ([param g8]), de bleu ([param b8]) et éventuellement de transparence (ou "
"alpha : [param a8]). Chaque niveau est représenté par un entier qui sera "
"divisé par [code]255.0[/code] pour obtenir la valeur de l'attribut associé. "
"Utiliser [method Color8] à la place du constructeur [Color] standard est "
"utile lorsque vous devez faire correspondre des valeurs de couleur exactes "
"dans une [Image].\n"
"[codeblock]\n"
"var red = Color8(255, 0, 0)             # Même effet que Color(1, 0, 0).\n"
"var dark_blue = Color8(0, 0, 51)        # Même effet que Color(0, 0, 0.2).\n"
"var my_color = Color8(306, 255, 0, 102) # Même effet que Color(1.2, 1, 0, "
"0.4).\n"
"[/codeblock]\n"
"[b]Note :[/b] En raison de la précision inférieure de [method Color8] par "
"rapport au constructeur [Color] standard, une couleur créée avec la [method "
"Color8] ne sera généralement pas égale à la même couleur créée avec le "
"constructeur [Color] standard. Utilisez [method Color.is_equal_approx] pour "
"les comparaisons afin d'éviter les problèmes d'erreur de précision en virgule "
"flottante."

msgid ""
"Asserts that the [param condition] is [code]true[/code]. If the [param "
"condition] is [code]false[/code], an error is generated. When running from "
"the editor, the running project will also be paused until you resume it. This "
"can be used as a stronger form of [method @GlobalScope.push_error] for "
"reporting errors to project developers or add-on users.\n"
"An optional [param message] can be shown in addition to the generic "
"\"Assertion failed\" message. You can use this to provide additional details "
"about why the assertion failed.\n"
"[b]Warning:[/b] For performance reasons, the code inside [method assert] is "
"only executed in debug builds or when running the project from the editor. "
"Don't include code that has side effects in an [method assert] call. "
"Otherwise, the project will behave differently when exported in release "
"mode.\n"
"[codeblock]\n"
"# Imagine we always want speed to be between 0 and 20.\n"
"var speed = -10\n"
"assert(speed < 20) # True, the program will continue.\n"
"assert(speed >= 0) # False, the program will stop.\n"
"assert(speed >= 0 and speed < 20) # You can also combine the two conditional "
"statements in one check.\n"
"assert(speed < 20, \"the speed limit is 20\") # Show a message.\n"
"[/codeblock]\n"
"[b]Note:[/b] [method assert] is a keyword, not a function. So you cannot "
"access it as a [Callable] or use it inside expressions."
msgstr ""
"Vérifie que la [param condition] est vraie ([code]true[/code]). Si la [param "
"condition] est fausse ([code]false[/code]), une erreur est générée. Lors de "
"l'exécution à partir de l'éditeur, le projet en cours d'exécution sera "
"également mis en pause jusqu'à ce que vous le repreniez. Cela peut être "
"utilisé comme une alternative plus radicale à [method "
"@GlobalScope.push_error] pour signaler des erreurs aux développeurs de "
"projets ou utilisateurs de plugins.\n"
"Un [param message] facultatif peut être affiché en plus du message générique "
"\"Assertion failed\". Vous pouvez l'utiliser pour fournir des détails "
"supplémentaires sur la raison de l'échec de l'assertion.\n"
"[b]Attention :[/b] Par souci de performance, le code inclus dans [method "
"assert] n'est exécuté que dans les builds de débogage ou quand vous lancez "
"votre projet depuis l'éditeur. N'incluez pas de code qui modifie l'état du "
"script dans un appel à [method assert]. Sinon, votre projet aura un "
"fonctionnement différent une fois exporté pour la production (release "
"build).\n"
"[codeblock]\n"
"# Imaginez que nous voulons une vitesse toujours comprise entre 0 et 20.\n"
"var speed = -10\n"
"assert(speed < 20) # Vrai, le programme continue.\n"
"assert(speed >= 0) # Faux, le programme s'interrompt.\n"
"assert(speed >= 0 and speed < 20) # Vous pouvez aussi combiner les deux "
"conditions en une seule vérification.\n"
"assert(speed < 20, \"speed = %f, mais la limite de vitesse est 20\" % speed) "
"# Affiche un message avec de plus amples détails.\n"
"[/codeblock]\n"
"[b]Note :[/b] [method assert] est un mot-clé, pas une fonction. Vous ne "
"pouvez donc pas y accéder en tant que [Callable] ou l'utiliser dans des "
"expressions."

msgid ""
"Returns a single character (as a [String] of length 1) of the given Unicode "
"code point [param code].\n"
"[codeblock]\n"
"print(char(65))     # Prints \"A\"\n"
"print(char(129302)) # Prints \"🤖\" (robot face emoji)\n"
"[/codeblock]\n"
"This is the inverse of [method ord]. See also [method String.chr] and [method "
"String.unicode_at]."
msgstr ""
"Renvoie un caractère unique (en tant que [String] de longueur 1) du point de "
"code Unicode [param code] donné.\n"
"[codeblock]\n"
"print(char(65))     # Affiche \"A\"\n"
"print(char(129302)) # Affiche \"🤖\" (emoji tête de robot)\n"
"[/codeblock]\n"
"C'est l'inverse de [method ord]. Voir aussi [method String.chr] et [method "
"String.unicode_at]."

msgid "Use [method @GlobalScope.type_convert] instead."
msgstr "Utilisez [method @GlobalScope.type_convert] à la place."

msgid ""
"Converts [param what] to [param type] in the best way possible. The [param "
"type] uses the [enum Variant.Type] values.\n"
"[codeblock]\n"
"var a = [4, 2.5, 1.2]\n"
"print(a is Array) # Prints true\n"
"\n"
"var b = convert(a, TYPE_PACKED_BYTE_ARRAY)\n"
"print(b)          # Prints [4, 2, 1]\n"
"print(b is Array) # Prints false\n"
"[/codeblock]"
msgstr ""
"Convertit [param what] en le type [param type] de la meilleure manière "
"possible. Le [param type] utilise les valeurs de [enum Variant.Type].\n"
"[codeblock]\n"
"var a = [4, 2.5, 1.2]\n"
"print(a is Array) # Affiche true\n"
"\n"
"var b = convert(a, TYPE_PACKED_BYTE_ARRAY)\n"
"print(b)          # Affiche [4, 2, 1]\n"
"print(b is Array) # Affiche false\n"
"[/codeblock]"

msgid ""
"Consider using [method JSON.to_native] or [method Object.get_property_list] "
"instead."
msgstr ""
"Songez à utiliser [method JSON.to_native] ou [method "
"Object.get_property_list] à la place."

msgid ""
"Converts a [param dictionary] (created with [method inst_to_dict]) back to an "
"Object instance. Can be useful for deserializing."
msgstr ""
"Convertit un [param dictionary] (créé précédemment avec [method "
"inst_to_dict]) à nouveau en une instance d'Objet. Utile pour la dé-"
"sérialisation."

msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo()\n"
"\n"
"func foo():\n"
"\tbar()\n"
"\n"
"func bar():\n"
"\tprint(get_stack())\n"
"[/codeblock]\n"
"Starting from [code]_ready()[/code], [code]bar()[/code] would print:\n"
"[codeblock lang=text]\n"
"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]\n"
"See also [method print_debug], [method print_stack], and [method "
"Engine.capture_script_backtraces].\n"
"[b]Note:[/b] By default, backtraces are only available in editor builds and "
"debug builds. To enable them for release builds as well, you need to enable "
"[member ProjectSettings.debug/settings/gdscript/always_track_call_stacks]."
msgstr ""
"Renvoie un tableau de dictionnaires représentant la pile d'appels courante.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo()\n"
"\n"
"func foo():\n"
"\tbar()\n"
"\n"
"func bar():\n"
"\tprint(get_stack())\n"
"[/codeblock]\n"
"En partant de [code]_ready()[/code], [code]bar()[/code] afficherait :\n"
"[codeblock lang=text]\n"
"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]\n"
"Voir aussi [method print_debug], [method print_stack], et [method "
"Engine.capture_script_backtraces].\n"
"[b]Note :[/b] Par défaut, les traces d'appel ne sont disponibles que dans les "
"builds d'éditeur et débogage. Pour les activer dans les builds de release "
"aussi, vous devez activer [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks]."

msgid ""
"Consider using [method JSON.from_native] or [method Object.get_property_list] "
"instead."
msgstr ""
"Songez à utiliser [method JSON.from_native] ou [method "
"Object.get_property_list] à la place."

msgid ""
"Returns the passed [param instance] converted to a [Dictionary]. Can be "
"useful for serializing.\n"
"[codeblock]\n"
"var foo = \"bar\"\n"
"func _ready():\n"
"\tvar d = inst_to_dict(self)\n"
"\tprint(d.keys())\n"
"\tprint(d.values())\n"
"[/codeblock]\n"
"Prints out:\n"
"[codeblock lang=text]\n"
"[@subpath, @path, foo]\n"
"[, res://test.gd, bar]\n"
"[/codeblock]\n"
"[b]Note:[/b] This function can only be used to serialize objects with an "
"attached [GDScript] stored in a separate file. Objects without an attached "
"script, with a script written in another language, or with a built-in script "
"are not supported.\n"
"[b]Note:[/b] This function is not recursive, which means that nested objects "
"will not be represented as dictionaries. Also, properties passed by reference "
"([Object], [Dictionary], [Array], and packed arrays) are copied by reference, "
"not duplicated."
msgstr ""
"Renvoie l'[param instance] donnée convertie en un [Dictionary]. Peut s'avérer "
"utile pour la sérialisation.\n"
"[codeblock]\n"
"var foo = \"bar\"\n"
"func _ready():\n"
"\tvar d = inst_to_dict(self)\n"
"\tprint(d.keys())\n"
"\tprint(d.values())\n"
"[/codeblock]\n"
"Affiche :\n"
"[codeblock lang=text]\n"
"[@subpath, @path, foo]\n"
"[, res://test.gd, bar]\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Cette fonction ne peut être utilisée que pour sérialiser "
"des objets ayant un [GDScript] associé stocké dans un fichier séparé. Les "
"objets sans script associé, avec un script écrit dans un autre langage, ou "
"encore avec un script intégré ne sont pas supportés.\n"
"[b]Remarque :[/b] Cette fonction n'est pas récursive. Ce qui veut dire que "
"les objets imbriqués ne seront pas représentés sous forme de dictionnaire. "
"Aussi, les propriétés passées par référence ([Object], [Dictionary], [Array], "
"et tableaux compactés) seront copiées par référence, et pas dupliquées."

msgid ""
"Returns [code]true[/code] if [param value] is an instance of [param type]. "
"The [param type] value must be one of the following:\n"
"- A constant from the [enum Variant.Type] enumeration, for example [constant "
"TYPE_INT].\n"
"- An [Object]-derived class which exists in [ClassDB], for example [Node].\n"
"- A [Script] (you can use any class, including inner one).\n"
"Unlike the right operand of the [code]is[/code] operator, [param type] can be "
"a non-constant value. The [code]is[/code] operator supports more features "
"(such as typed arrays). Use the operator instead of this method if you do not "
"need to check the type dynamically.\n"
"[b]Examples:[/b]\n"
"[codeblock]\n"
"print(is_instance_of(a, TYPE_INT))\n"
"print(is_instance_of(a, Node))\n"
"print(is_instance_of(a, MyClass))\n"
"print(is_instance_of(a, MyClass.InnerClass))\n"
"[/codeblock]\n"
"[b]Note:[/b] If [param value] and/or [param type] are freed objects (see "
"[method @GlobalScope.is_instance_valid]), or [param type] is not one of the "
"above options, this method will raise a runtime error.\n"
"See also [method @GlobalScope.typeof], [method type_exists], [method "
"Array.is_same_typed] (and other [Array] methods)."
msgstr ""
"Renvoie [code]true[/code] si [param value] est une instance du type [param "
"type]. La valeur de [param type] doit être l'une des suivantes :\n"
"- Une constante de l'énumération [enum Variant.Type], par exemple [constant "
"TYPE_INT].\n"
"- Une classe dérivée de [Object] qui existe dans [ClassDB], par exemple "
"[Node].\n"
"- Un [Script] (vous pouvez utiliser n'importe quelle classe, y compris une "
"classe interne).\n"
"Contrairement à l'opérande droit de l'opérateur [code]is[/code], [param type] "
"peut être une valeur non constante. L'opérateur [code]is[/code] prend en "
"charge davantage de fonctionnalités (telles que les tableaux typés). Utilisez "
"l'opérateur au lieu de cette méthode si vous n'avez pas besoin d'une "
"vérification dynamique des types.\n"
"[b]Exemples :[/b]\n"
"[codeblock]\n"
"print(is_instance_of(a, TYPE_INT))\n"
"print(is_instance_of(a, Node))\n"
"print(is_instance_of(a, MaClasse))\n"
"print(is_instance_of(a, MaClasse.ClasseInterne))\n"
"[/codeblock]\n"
"[b]Note :[/b] Si [param value] et/ou [param type] sont des objets libérés "
"(voir [method @GlobalScope.is_instance_valid]), ou si [param type] n'est pas "
"l'une des options ci-dessus, cette méthode lèvera une erreur d'exécution.\n"
"Voir aussi [method @GlobalScope.typeof], [method type_exists], [method "
"Array.is_same_typed] (et les autres méthodes de [Array])."

msgid ""
"Returns the length of the given Variant [param var]. The length can be the "
"character count of a [String] or [StringName], the element count of any array "
"type, or the size of a [Dictionary]. For every other Variant type, a run-time "
"error is generated and execution is stopped.\n"
"[codeblock]\n"
"var a = [1, 2, 3, 4]\n"
"len(a) # Returns 4\n"
"\n"
"var b = \"Hello!\"\n"
"len(b) # Returns 6\n"
"[/codeblock]"
msgstr ""
"Renvoie la longueur du Variant [param var]. La longueur peut être le nombre "
"de caractères d'une [String], le nombre d'éléments de n'importe quel type de "
"tableau ou la taille de [Dictionary]. Pour tout autre type de Variant, une "
"erreur d’exécution est générée et l’exécution est interrompue.\n"
"[codeblock]\n"
"a = [1, 2, 3, 4]\n"
"len(a) # Renvoie 4\n"
"\n"
"b = \"Hello!\"\n"
"len(b) # Renvoie 6\n"
"[/codeblock]"

msgid ""
"Returns a [Resource] from the filesystem located at the absolute [param "
"path]. Unless it's already referenced elsewhere (such as in another script or "
"in the scene), the resource is loaded from disk on function call, which might "
"cause a slight delay, especially when loading large scenes. To avoid "
"unnecessary delays when loading something multiple times, either store the "
"resource in a variable or use [method preload]. This method is equivalent of "
"using [method ResourceLoader.load] with [constant "
"ResourceLoader.CACHE_MODE_REUSE].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
"in the FileSystem dock and choosing \"Copy Path\", or by dragging the file "
"from the FileSystem dock into the current script.\n"
"[codeblock]\n"
"# Load a scene called \"main\" located in the root of the project directory "
"and cache it in a variable.\n"
"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] Relative paths are [i]not[/i] relative to the script "
"calling this method, instead it is prefixed with [code]\"res://\"[/code]. "
"Loading from relative paths might not work as expected.\n"
"This function is a simplified version of [method ResourceLoader.load], which "
"can be used for more advanced scenarios.\n"
"[b]Note:[/b] Files have to be imported into the engine first to load them "
"using this function. If you want to load [Image]s at run-time, you may use "
"[method Image.load]. If you want to import audio files, you can use the "
"snippet described in [member AudioStreamMP3.data].\n"
"[b]Note:[/b] If [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] is [code]true[/code], [method "
"@GDScript.load] will not be able to read converted files in an exported "
"project. If you rely on run-time loading of files present within the PCK, set "
"[member ProjectSettings.editor/export/convert_text_resources_to_binary] to "
"[code]false[/code]."
msgstr ""
"Renvoie une [Resource] depuis le système de fichiers localisé au chemin "
"absolu [param path]. Sauf si cela est déjà référencé autre part (comme dans "
"un autre script ou dans la scène), la ressource est chargée depuis le disque "
"sur un appel de fonction, qui peut causer un petit délai, en particulier "
"pendant le chargement de larges scènes. Pour éviter des délais inutiles "
"lorsque vous chargez quelque chose plusieurs fois, vous pouvez stocker la "
"ressource dans une variable ou utiliser [method preload]. Cette méthode est "
"équivalent à utiliser [method ResourceLoader.load] avec [constant "
"ResourceLoader.CACHE_MODE_REUSE].\n"
"[b]Note :[/b] Les chemins des ressources peuvent être obtenus en faisant un "
"clic droit sur une ressource dans la barre d'outils du système de fichiers et "
"en choisissant \"Copier le chemin\", ou en déplaçant le fichier du système de "
"fichiers vers le script actuel.\n"
"[codeblock]\n"
"# Charge une scène appelée \"main\" située dans la racine du répertoire du "
"projet et la stocke dans une variable.\n"
"var main = load(\"res://main.tscn\") # main contiendra une ressource "
"PackedScene.\n"
"[/codeblock]\n"
"[b]Important :[/b] Les chemins relatifs [i]ne sont pas[/i] par rapport au "
"script appelant cette méthode, à la place il est préfixé avec [code]\"res://"
"\"[/code]. Le chargement depuis des chemins relatifs pourrait ne pas "
"fonctionner comme prévu.\n"
"Cette fonction est une version simplifiée de [method ResourceLoader.load], "
"qui peut être utilisée pour des scénarios plus avancés.\n"
"[b]Note :[/b] Les fichiers doivent être importés dans le moteur de jeu en "
"premier pour qu'ils soient chargés en utilisant cette fonction. Si vous "
"voulez importer des [Image]s durant l'exécution, vous pouvez utiliser [method "
"Image.load]. Si vous voulez importer des fichiers audios, vous pouvez "
"utiliser l'extrait décrit dans [member AudioStreamMP3.data].\n"
"[b]Note :[/b] Si [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] vaut [code]true[/code], [method "
"@GDScript.load] ne pourra pas lire les fichiers convertis dans un projet "
"exporté. Si vous comptez sur le chargement au moment de l'exécution des "
"fichiers présents dans le PCK, définissez [member ProjectSettings.editor/"
"export/convert_text_resources_to_binary] sur [code]false[/code]."

msgid ""
"Returns an integer representing the Unicode code point of the given character "
"[param char], which should be a string of length 1.\n"
"[codeblock]\n"
"print(ord(\"A\")) # Prints 65\n"
"print(ord(\"🤖\")) # Prints 129302\n"
"[/codeblock]\n"
"This is the inverse of [method char]. See also [method String.chr] and "
"[method String.unicode_at]."
msgstr ""
"Renvoie un entier représentant le point de code Unicode du caractère [param "
"char] donné, qui devrait être une chaîne de longueur 1.\n"
"[codeblock]\n"
"print(ord(\"A\")) # Affiche 65\n"
"print(ord(\"🤖\")) # Affiche 129302\n"
"[/codeblock]\n"
"C'est l'inverse de [method char]. Voir aussi [method String.chr] et [method "
"String.unicode_at]."

msgid ""
"Returns a [Resource] from the filesystem located at [param path]. During run-"
"time, the resource is loaded when the script is being parsed. This function "
"effectively acts as a reference to that resource. Note that this function "
"requires [param path] to be a constant [String]. If you want to load a "
"resource from a dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
"in the Assets Panel and choosing \"Copy Path\", or by dragging the file from "
"the FileSystem dock into the current script.\n"
"[codeblock]\n"
"# Create instance of a scene.\n"
"var diamond = preload(\"res://diamond.tscn\").instantiate()\n"
"[/codeblock]\n"
"[b]Note:[/b] [method preload] is a keyword, not a function. So you cannot "
"access it as a [Callable]."
msgstr ""
"Renvoie la [Resource] localisée à [param path] dans le système de fichiers. "
"Pendant le run-time, la ressource est chargée lors de la lecture initiale du "
"script. Cette fonction agit efficacement comme une référence à cette "
"ressource. Notez que cette méthode nécessite que [param path] soit un "
"[String] constant. Si vous voulez charger une ressource depuis un chemin "
"variable/dynamique, utilisez [method load].\n"
"[b]Note :[/b] Les chemins des ressources peuvent être obtenus en cliquant "
"avec le bouton droit sur la ressource dans la fenêtre des Assets puis en "
"choisissant \"Copier le chemin\", ou en faisant glisser le fichier depuis la "
"fenêtre \"Système de fichiers\" vers le script courant.\n"
"[codeblock]\n"
"# Créer une instance d'une scène.\n"
"var diamond = preload(\"res://diamond.tscn\").instantiate()\n"
"[/codeblock]\n"
"[b]Note :[/b] [method preload] est un mot-clé, pas une fonction. Vous ne "
"pouvez donc pas y accéder en tant que [Callable]."

msgid ""
"Like [method @GlobalScope.print], but includes the current stack frame when "
"running with the debugger turned on.\n"
"The output in the console may look like the following:\n"
"[codeblock lang=text]\n"
"Test print\n"
"At: res://test.gd:15:_process()\n"
"[/codeblock]\n"
"See also [method print_stack], [method get_stack], and [method "
"Engine.capture_script_backtraces].\n"
"[b]Note:[/b] By default, backtraces are only available in editor builds and "
"debug builds. To enable them for release builds as well, you need to enable "
"[member ProjectSettings.debug/settings/gdscript/always_track_call_stacks]."
msgstr ""
"Comme [method @GlobalScope.print], mais inclut l'image de la pile actuelle "
"lors de l'exécution avec le débogueur actif.\n"
"La sortie dans la console ressemblerait à ceci :\n"
"[codeblock lang=text]\n"
"Test print\n"
"At: res://test.gd:15:_process()\n"
"[/codeblock]\n"
"Voir aussi [method print_stack], [method get_stack], et [method "
"Engine.capture_script_backtraces].\n"
"[b]Note :[/b] Par défaut, les traces d'appel ne sont disponibles que dans les "
"builds d'éditeur et débogage. Pour les activer dans les builds de release "
"aussi, vous devez activer [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks]."

msgid ""
"Prints a stack trace at the current code location.\n"
"The output in the console may look like the following:\n"
"[codeblock lang=text]\n"
"Frame 0 - res://test.gd:16 in function '_process'\n"
"[/codeblock]\n"
"See also [method print_debug], [method get_stack], and [method "
"Engine.capture_script_backtraces].\n"
"[b]Note:[/b] By default, backtraces are only available in editor builds and "
"debug builds. To enable them for release builds as well, you need to enable "
"[member ProjectSettings.debug/settings/gdscript/always_track_call_stacks]."
msgstr ""
"Affiche une trace de pile à l'emplacement actuel du code.\n"
"La sortie dans la console peut ressembler à ce qui suit :\n"
"[codeblock lang=text]\n"
"Frame 0 - res://test.gd:16 in function '_process'\n"
"[/codeblock]\n"
"Voir aussi [method print_debug], [method print_stack], et [method "
"Engine.capture_script_backtraces].\n"
"[b]Note :[/b] Par défaut, les traces d'appel ne sont disponibles que dans les "
"builds d'éditeur et débogage. Pour les activer dans les builds de release "
"aussi, vous devez activer [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks]."

msgid ""
"Returns an array with the given range. [method range] can be called in three "
"ways:\n"
"[code]range(n: int)[/code]: Starts from 0, increases by steps of 1, and stops "
"[i]before[/i] [code]n[/code]. The argument [code]n[/code] is [b]exclusive[/"
"b].\n"
"[code]range(b: int, n: int)[/code]: Starts from [code]b[/code], increases by "
"steps of 1, and stops [i]before[/i] [code]n[/code]. The arguments [code]b[/"
"code] and [code]n[/code] are [b]inclusive[/b] and [b]exclusive[/b], "
"respectively.\n"
"[code]range(b: int, n: int, s: int)[/code]: Starts from [code]b[/code], "
"increases/decreases by steps of [code]s[/code], and stops [i]before[/i] "
"[code]n[/code]. The arguments [code]b[/code] and [code]n[/code] are "
"[b]inclusive[/b] and [b]exclusive[/b], respectively. The argument [code]s[/"
"code] [b]can[/b] be negative, but not [code]0[/code]. If [code]s[/code] is "
"[code]0[/code], an error message is printed.\n"
"[method range] converts all arguments to [int] before processing.\n"
"[b]Note:[/b] Returns an empty array if no value meets the value constraint "
"(e.g. [code]range(2, 5, -1)[/code] or [code]range(5, 5, 1)[/code]).\n"
"[b]Examples:[/b]\n"
"[codeblock]\n"
"print(range(4))        # Prints [0, 1, 2, 3]\n"
"print(range(2, 5))     # Prints [2, 3, 4]\n"
"print(range(0, 6, 2))  # Prints [0, 2, 4]\n"
"print(range(4, 1, -1)) # Prints [4, 3, 2]\n"
"[/codeblock]\n"
"To iterate over an [Array] backwards, use:\n"
"[codeblock]\n"
"var array = [3, 6, 9]\n"
"for i in range(array.size() - 1, -1, -1):\n"
"\tprint(array[i])\n"
"[/codeblock]\n"
"Output:\n"
"[codeblock lang=text]\n"
"9\n"
"6\n"
"3\n"
"[/codeblock]\n"
"To iterate over [float], convert them in the loop.\n"
"[codeblock]\n"
"for i in range (3, 0, -1):\n"
"\tprint(i / 10.0)\n"
"[/codeblock]\n"
"Output:\n"
"[codeblock lang=text]\n"
"0.3\n"
"0.2\n"
"0.1\n"
"[/codeblock]"
msgstr ""
"Renvoie un tableau avec l'intervalle donné. [method range] peut être appelée "
"de trois façons :\n"
"[code]range(n : int)[/code] : Commence à 0, augmente par pas de 1, et "
"s'arrête [i]avant[/i] [code]n[/code]. L'argument [code]n[/code] est "
"[b]exclusif[/b].\n"
"[code]range(b : int, n : int)[/code] : Commence à [code]b[/code], augmente "
"par pas de 1, et s'arrête [i]avant[/i] [code]n[/code]. Les arguments [code]b[/"
"code] et [code]n[/code] sont [b]inclusifs[/b] et [b]exclusifs[/b], "
"respectivement.\n"
"[code]range(b : int, n : int, s : int)[/code] : Commence à [code]b[/code], "
"augmente/diminue par pas de [code]s[/code], et s'arrête [i]avant[/i] [code]n[/"
"code]. Les arguments [code]b[/code] et [code]n[/code] sont [b]inclusifs[/b], "
"et [b]exclusifs[/b], respectivement. L'argument [code]s[/code] [b]peut[/b] "
"être négatif, mais pas [code]0[/code]. Si [code]s[/code] est [code]0[/code], "
"un message d'erreur est affiché.\n"
"[method range] convertit tous les arguments en [int] avant le traitement.\n"
"[b]Note :[/b] Renvoie un tableau vide si aucune valeur ne respecte les "
"contraintes (par ex. [code]range(2, 5, -1)[/code] ou [code]range(5, 5, 1)[/"
"code]).\n"
"[b]Exemples :[/b]\n"
"[codeblock]\n"
"print(range(4))             # Affiche [0, 1, 2, 3]\n"
"print(range(2, 5))        # Affiche [2, 3, 4]\n"
"print(range(0, 6, 2))   # Affiche [0, 2, 4]\n"
"print(range(4, 1, -1)) # Affiche [4, 3, 2]\n"
"[/codeblock]\n"
"Pour parcourir un [Array] à l'envers, utilisez :\n"
"[codeblock]\n"
"var array = [3, 6, 9]\n"
"for i in range(array.size() - 1, -1, -1):\n"
"\tprint(array[i])\n"
"[/codeblock]\n"
"Sortie :\n"
"[codeblock]\n"
"9\n"
"6\n"
"3\n"
"[/codeblock]\n"
"Pour itérer sur un [float], convertissez les dans la boucle.\n"
"[codeblock]\n"
"for i in range (3, 0, -1):\n"
"\tprint(i / 10.0)\n"
"[/codeblock]\n"
"Sortie :\n"
"[codeblock lang=text]\n"
"0.3\n"
"0.2\n"
"0.1\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the given [Object]-derived class exists in "
"[ClassDB]. Note that [Variant] data types are not registered in [ClassDB].\n"
"[codeblock]\n"
"type_exists(\"Sprite2D\") # Returns true\n"
"type_exists(\"NonExistentClass\") # Returns false\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si la classe dérivée [Object] donnée existe dans "
"[ClassDB]. Notez que les types de données [Variant] ne sont pas enregistrés "
"dans [ClassDB].\n"
"[codeblock]\n"
"type_exists(\"Sprite2D\") # Renvoie true\n"
"type_exists(\"ClasseNonExistante\") # Renvoie false\n"
"[/codeblock]"

msgid ""
"Constant that represents how many times the diameter of a circle fits around "
"its perimeter. This is equivalent to [code]TAU / 2[/code], or 180 degrees in "
"rotations."
msgstr ""
"Constante qui représente le nombre de fois que le diamètre d'un cercle "
"correspond à son périmètre. Elle équivaut à [code]TAU / 2[/code], soit 180 "
"degrés de rotation."

msgid ""
"The circle constant, the circumference of the unit circle in radians. This is "
"equivalent to [code]PI * 2[/code], or 360 degrees in rotations."
msgstr ""
"La constante du cercle, c'est à dire la circonférence du cercle unité en "
"radians. C'est l'équivalent de [code]PI * 2[/code] ou de 360 degrés en "
"rotation."

msgid ""
"Positive floating-point infinity. This is the result of floating-point "
"division when the divisor is [code]0.0[/code]. For negative infinity, use "
"[code]-INF[/code]. Dividing by [code]-0.0[/code] will result in negative "
"infinity if the numerator is positive, so dividing by [code]0.0[/code] is not "
"the same as dividing by [code]-0.0[/code] (despite [code]0.0 == -0.0[/code] "
"returning [code]true[/code]).\n"
"[b]Warning:[/b] Numeric infinity is only a concept with floating-point "
"numbers, and has no equivalent for integers. Dividing an integer number by "
"[code]0[/code] will not result in [constant INF] and will result in a run-"
"time error instead."
msgstr ""
"L'infini positif représenté en virgule flottante. C'est le résultat d'un "
"nombre à virgule flottante divisé par [code]0.0[/code]. L'infini négatif est "
"représenté par [code]-INF[/code]. Diviser par [code]-0.0[/code] donnera une "
"infinité négative si le numérateur est positif, donc diviser par [code]0.0[/"
"code] n'est pas la même chose que de diviser par [code]-0.0[/code] (même si "
"[code]0.0 == -0.0[/code] est toujours [code]true[/code]).\n"
"[b]Attention :[/b] L'infini numérique est un concept qui n'existe que pour "
"les nombres à virgule flottante, et n'a pas d'équivalent pour les entiers. "
"Diviser un nombre entier par [code]0[/code] ne résultera pas en [constant "
"INF] et entraînera toujours une erreur d'exécution."

msgid ""
"\"Not a Number\", an invalid floating-point value. It is returned by some "
"invalid operations, such as dividing floating-point [code]0.0[/code] by "
"[code]0.0[/code].\n"
"[constant NAN] has special properties, including that [code]!=[/code] always "
"returns [code]true[/code], while other comparison operators always return "
"[code]false[/code]. This is true even when comparing with itself ([code]NAN "
"== NAN[/code] returns [code]false[/code] and [code]NAN != NAN[/code] returns "
"[code]true[/code]). Due to this, you must use [method @GlobalScope.is_nan] to "
"check whether a number is equal to [constant NAN].\n"
"[b]Warning:[/b] \"Not a Number\" is only a concept with floating-point "
"numbers, and has no equivalent for integers. Dividing an integer [code]0[/"
"code] by [code]0[/code] will not result in [constant NAN] and will result in "
"a run-time error instead."
msgstr ""
"\"Not a Number\" (littéralement : pas un nombre), un nombre flottant (nombre "
"à virgule) invalide. Il est renvoyé par certaines opérations invalides, comme "
"la division flottante de [code]0.0[/code] par [code]0.0[/code].\n"
"[constant NAN] a des propriétés spéciales, notamment que [code]!=[/code] "
"renvoie toujours [code]true[/code], tandis que les autres opérateurs "
"renverront toujours [code]false[/code]. Cela est vrai même en le comparant à "
"lui-même ([code]NAN == NAN[/code] renvoie [code]false[/code] et [code]NAN != "
"NAN[/code] renvoie [code]true[/code]). À cause de cela, vous devez utiliser "
"[method @GlobalScope.is_nan] pour vérifier si un nombre est égal à [constant "
"NAN].\n"
"[b]Attention :[/b] \"Not a Number\" est un concept seulement pour les nombres "
"flottants et n'a pas d’équivalent pour les nombres entiers. Diviser un nombre "
"entier [code]0[/code] par [code]0[/code] ne donnera pas un [constant NAN] et "
"résultera à la place en une erreur d’exécution."

msgid ""
"Marks a class or a method as abstract.\n"
"An abstract class is a class that cannot be instantiated directly. Instead, "
"it is meant to be inherited by other classes. Attempting to instantiate an "
"abstract class will result in an error.\n"
"An abstract method is a method that has no implementation. Therefore, a "
"newline or a semicolon is expected after the function header. This defines a "
"contract that inheriting classes must conform to, because the method "
"signature must be compatible when overriding.\n"
"Inheriting classes must either provide implementations for all abstract "
"methods, or the inheriting class must be marked as abstract. If a class has "
"at least one abstract method (either its own or an unimplemented inherited "
"one), then it must also be marked as abstract. However, the reverse is not "
"true: an abstract class is allowed to have no abstract methods.\n"
"[codeblock]\n"
"@abstract class Shape:\n"
"\t@abstract func draw()\n"
"\n"
"class Circle extends Shape:\n"
"\tfunc draw():\n"
"\t\tprint(\"Drawing a circle.\")\n"
"\n"
"class Square extends Shape:\n"
"\tfunc draw():\n"
"\t\tprint(\"Drawing a square.\")\n"
"[/codeblock]"
msgstr ""
"Marque une classe ou une méthode comme abstraite.\n"
"Une classe abstraite est une classe qui ne peut pas être instanciée "
"directement. À la place, elle est destinée à être héritée par d'autres "
"classes. Essayer d’instancier une classe abstraite résultera en une erreur.\n"
"Une méthode abstraite est une méthode qui n'a pas d'implémentation. Ainsi, un "
"retour à la ligne ou un point virgule est attendu après l'entête de la "
"fonction. Ceci défini un contrat auquel les classes héritées doivent "
"souscrire, car la méthode abstraite donne une signature que les "
"implémentations de la méthode doivent respecter. \n"
"Les classes héritées doivent donner une implémentation à toutes les méthodes "
"abstraites, ou elle sera elle-même marquée comme abstraite. Si une classe a "
"au moins une méthode abstraite (soit la sienne soit une non implémentée "
"héritée), alors elle doit aussi être marquée comme abstraite. Cependant, "
"l'inverse n'est pas vrai : une classe abstraite peut ne pas avoir de méthode "
"abstraite.\n"
"[codeblock]\n"
"@abstract class Forme:\n"
"\t@abstract func draw()\n"
"\n"
"class Cercle extends Forme:\n"
"\tfunc draw():\n"
"\t\tprint(\"Dessiner un cercle\")\n"
"\n"
"class Carre extends Forme:\n"
"\tfunc draw():\n"
"\t\tprint(\"Dessiner un carré.\")\n"
"[/codeblock]"

msgid ""
"Mark the following property as exported (editable in the Inspector dock and "
"saved to disk). To control the type of the exported property, use the type "
"hint notation.\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"enum Direction {LEFT, RIGHT, UP, DOWN}\n"
"\n"
"# Built-in types.\n"
"@export var string = \"\"\n"
"@export var int_number = 5\n"
"@export var float_number: float = 5\n"
"\n"
"# Enums.\n"
"@export var type: Variant.Type\n"
"@export var format: Image.Format\n"
"@export var direction: Direction\n"
"\n"
"# Resources.\n"
"@export var image: Image\n"
"@export var custom_resource: CustomResource\n"
"\n"
"# Nodes.\n"
"@export var node: Node\n"
"@export var custom_node: CustomNode\n"
"\n"
"# Typed arrays.\n"
"@export var int_array: Array[int]\n"
"@export var direction_array: Array[Direction]\n"
"@export var image_array: Array[Image]\n"
"@export var node_array: Array[Node]\n"
"[/codeblock]\n"
"[b]Note:[/b] Custom resources and nodes should be registered as global "
"classes using [code]class_name[/code], since the Inspector currently only "
"supports global classes. Otherwise, a less specific type will be exported "
"instead.\n"
"[b]Note:[/b] Node export is only supported in [Node]-derived classes and has "
"a number of other limitations."
msgstr ""
"Marquez la propriété suivante comme exportée (modifiable dans le dock "
"Inspecteur et enregistrée sur le disque). Pour contrôler le type de la "
"propriété exportée, utilisez la notation d'indication de type.\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"enum Direction {LEFT, RIGHT, UP, DOWN}\n"
"\n"
"# Types intégrés.\n"
"@export var string = \"\"\n"
"@export var int_number = 5\n"
"@export var float_number: float = 5\n"
"\n"
"# Enums.\n"
"@export var type: Variant.Type\n"
"@export var format: Image.Format\n"
"@export var direction: Direction\n"
"\n"
"# Ressources.\n"
"@export var image: Image\n"
"@export var custom_resource: CustomResource\n"
"\n"
"# Nœuds.\n"
"@export var node: Node\n"
"@export var custom_node: CustomNode\n"
"\n"
"# Tableaux typés.\n"
"@export var int_array : Array[int]\n"
"@export var direction_array : Array[Direction]\n"
"@export var image_array : Array[Image]\n"
"@export var node_array : Array[Node]\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Les ressources et nœuds personnalisés doivent être "
"enregistrés en tant que classes globales à l'aide de [code]class_name[/code], "
"car l'inspecteur ne prend actuellement en charge que les classes globales. "
"Sinon, un type moins spécifique sera exporté à la place.\n"
"[b]Remarque :[/b] L'exportation de nœuds n'est prise en charge que dans les "
"classes dérivées de [Node] et présente un certain nombre d'autres limitations."

msgid ""
"Define a new category for the following exported properties. This helps to "
"organize properties in the Inspector dock.\n"
"See also [constant PROPERTY_USAGE_CATEGORY].\n"
"[codeblock]\n"
"@export_category(\"Statistics\")\n"
"@export var hp = 30\n"
"@export var speed = 1.25\n"
"[/codeblock]\n"
"[b]Note:[/b] Categories in the Inspector dock's list usually divide "
"properties coming from different classes (Node, Node2D, Sprite, etc.). For "
"better clarity, it's recommended to use [annotation @export_group] and "
"[annotation @export_subgroup], instead."
msgstr ""
"Définir une nouvelle catégorie pour les propriétés exportées suivantes. Cela "
"permet d'organiser les propriétés dans l'Inspector Dock.\n"
"Voir aussi [constant PROPERTY_USAGE_CATEGORY].\n"
"[codeblock]\n"
"@export_category(\"Statistics\")\n"
"@export var hp = 30\n"
"@export var speed = 1.25\n"
"[/codeblock]\n"
"[b]Note :[/b] Les catégories dans la liste de l'Inspector Dock divisent "
"généralement les propriétés provenant de différentes classes (Node, Node2D, "
"Sprite, etc.). Pour plus de clarté, il est recommandé d'utiliser plutôt "
"[annotation @export_group] et [annotation @export_subgroup]."

msgid ""
"Export a [Color], [Array][lb][Color][rb], or [PackedColorArray] property "
"without allowing its transparency ([member Color.a]) to be edited.\n"
"See also [constant PROPERTY_HINT_COLOR_NO_ALPHA].\n"
"[codeblock]\n"
"@export_color_no_alpha var dye_color: Color\n"
"@export_color_no_alpha var dye_colors: Array[Color]\n"
"[/codeblock]"
msgstr ""
"Exporter une propriété [Color], [Array][lb][Color][rb], or [PackedColorArray] "
"sans permettre l'édition de sa transparence ([member Color.a]).\n"
"Voir aussi [constant PROPERTY_HINT_COLOR_NO_ALPHA].\n"
"[codeblock]\n"
"@export_color_no_alpha var dye_color: Color\n"
"@export_color_no_alpha var dye_colors: Array[Color]\n"
"[/codeblock]"

msgid ""
"Allows you to set a custom hint, hint string, and usage flags for the "
"exported property. Note that there's no validation done in GDScript, it will "
"just pass the parameters to the editor.\n"
"[codeblock]\n"
"@export_custom(PROPERTY_HINT_NONE, \"suffix:m\") var suffix: Vector3\n"
"[/codeblock]\n"
"[b]Note:[/b] Regardless of the [param usage] value, the [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] flag is always added, as with any explicitly "
"declared script variable."
msgstr ""
"Vous permet de définir un indice personnalisé, une chaîne d'indice et des "
"drapeaux d'utilisation pour la propriété exportée. Notez qu'aucune validation "
"n'est effectuée dans GDScript, il transmettra simplement les paramètres à "
"l'éditeur.\n"
"[codeblock]\n"
"@export_custom(PROPERTY_HINT_NONE, \"suffix:m\") var suffix: Vector3\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Quelle que soit la valeur de [param usage], le drapeau "
"[constant PROPERTY_USAGE_SCRIPT_VARIABLE] est toujours ajouté, comme pour "
"toute variable de script explicitement déclarée."

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as a path to a directory. The path will be limited to the project folder and "
"its subfolders. See [annotation @export_global_dir] to allow picking from the "
"entire filesystem.\n"
"See also [constant PROPERTY_HINT_DIR].\n"
"[codeblock]\n"
"@export_dir var sprite_folder_path: String\n"
"@export_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété [String], [Array][lb][String][rb], or "
"[PackedStringArray] en tant que chemin d'accès à un répertoire. Le chemin "
"sera limité au dossier du projet et à ses sous-dossiers. Voir [annotation "
"@export_global_dir] pour permettre de choisir dans l'ensemble du système de "
"fichiers.\n"
"Voir aussi [constant PROPERTY_HINT_DIR].\n"
"[codeblock]\n"
"@export_dir var sprite_folder_path: String\n"
"@export_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"

msgid ""
"Export an [int], [String], [Array][lb][int][rb], [Array][lb][String][rb], "
"[PackedByteArray], [PackedInt32Array], [PackedInt64Array], or "
"[PackedStringArray] property as an enumerated list of options (or an array of "
"options). If the property is an [int], then the index of the value is stored, "
"in the same order the values are provided. You can add explicit values using "
"a colon. If the property is a [String], then the value is stored.\n"
"See also [constant PROPERTY_HINT_ENUM].\n"
"[codeblock]\n"
"@export_enum(\"Warrior\", \"Magician\", \"Thief\") var character_class: int\n"
"@export_enum(\"Slow:30\", \"Average:60\", \"Very Fast:200\") var "
"character_speed: int\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String\n"
"\n"
"@export_enum(\"Sword\", \"Spear\", \"Mace\") var character_items: Array[int]\n"
"@export_enum(\"double_jump\", \"climb\", \"dash\") var character_skills: "
"Array[String]\n"
"[/codeblock]\n"
"If you want to set an initial value, you must specify it explicitly:\n"
"[codeblock]\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String = "
"\"Rebecca\"\n"
"[/codeblock]\n"
"If you want to use named GDScript enums, then use [annotation @export] "
"instead:\n"
"[codeblock]\n"
"enum CharacterName {REBECCA, MARY, LEAH}\n"
"@export var character_name: CharacterName\n"
"\n"
"enum CharacterItem {SWORD, SPEAR, MACE}\n"
"@export var character_items: Array[CharacterItem]\n"
"[/codeblock]"
msgstr ""
"Exportez une propriété [int], [String], [Array][lb][int][rb], [Array][lb]"
"[String][rb], [PackedByteArray], [PackedInt32Array], [PackedInt64Array] ou "
"[PackedStringArray] sous forme de liste énumérée d'options (ou de tableau "
"d'options). Si la propriété est un [int], l'index de la valeur est stocké, "
"dans le même ordre que les valeurs fournies. Vous pouvez ajouter des valeurs "
"explicites à l'aide de deux points. Si la propriété est un [String], la "
"valeur est stockée.\n"
"Voir également [constant PROPERTY_HINT_ENUM].\n"
"[codeblock]\n"
"@export_enum(\"Warrior\", \"Magician\", \"Thief\") var character_class: int\n"
"@export_enum(\"Slow:30\", \"Average:60\", \"Very Fast:200\") var "
"character_speed: int\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String\n"
"\n"
"@export_enum(\"Sword\", \"Spear\", \"Mace\") var character_items: Array[int]\n"
"@export_enum(\"double_jump\", \"climb\", \"dash\") var character_skills: "
"Array[String]\n"
"[/codeblock]\n"
"Si vous souhaitez définir une valeur initiale, vous devez la spécifier "
"explicitement :\n"
"[codeblock]\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String = "
"\"Rebecca\"\n"
"[/codeblock]\n"
"Si vous souhaitez utiliser des énumérations GDScript nommées, alors utilisez "
"[annotation @export] à la place :\n"
"[codeblock]\n"
"enum CharacterName {REBECCA, MARY, LEAH}\n"
"@export var character_name : CharacterName\n"
"\n"
"enum CharacterItem {SWORD, SPEAR, MACE}\n"
"@export var character_items : Array[CharacterItem]\n"
"[/codeblock]"

msgid ""
"Export a floating-point property with an easing editor widget. Additional "
"hints can be provided to adjust the behavior of the widget. [code]"
"\"attenuation\"[/code] flips the curve, which makes it more intuitive for "
"editing attenuation properties. [code]\"positive_only\"[/code] limits values "
"to only be greater than or equal to zero.\n"
"See also [constant PROPERTY_HINT_EXP_EASING].\n"
"[codeblock]\n"
"@export_exp_easing var transition_speed\n"
"@export_exp_easing(\"attenuation\") var fading_attenuation\n"
"@export_exp_easing(\"positive_only\") var effect_power\n"
"@export_exp_easing var speeds: Array[float]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété de flottant avec un widget d'éditeur de courbe. Des "
"aides additionnelles peuvent être ajoutées pour ajuster le comportement de ce "
"widget. [code]\"attenuation\"[/code] retourne la courbe, ce qui la rend plus "
"intuitive pour éditer des propriétés d'atténuation. [code]\"positive_only\"[/"
"code] limite les valeurs à être supérieures ou égales à zéro.\n"
"Voir aussi [constant PROPERTY_HINT_EXP_EASING].\n"
"[codeblock]\n"
"@export_exp_easing var transition_speed\n"
"@export_exp_easing(\"attenuation\") var fading_attenuation\n"
"@export_exp_easing(\"positive_only\") var effect_power\n"
"@export_exp_easing var speeds: Array[float]\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as a path to a file. The path will be limited to the project folder and its "
"subfolders. See [annotation @export_global_file] to allow picking from the "
"entire filesystem.\n"
"If [param filter] is provided, only matching files will be available for "
"picking.\n"
"See also [constant PROPERTY_HINT_FILE].\n"
"[codeblock]\n"
"@export_file var sound_effect_path: String\n"
"@export_file(\"*.txt\") var notes_path: String\n"
"@export_file var level_paths: Array[String]\n"
"[/codeblock]\n"
"[b]Note:[/b] The file will be stored and referenced as UID, if available. "
"This ensures that the reference is valid even when the file is moved. You can "
"use [ResourceUID] methods to convert it to path."
msgstr ""
"Exporte une propriété [String], [Array][lb][String][rb], ou "
"[PackedStringArray] en tant que chemin vers un fichier. Le chemin sera limité "
"au dossier de projet et ses sous-dossiers. Voir [annotation "
"@export_global_file] pour autoriser la sélection depuis l'ensemble du système "
"de fichiers.\n"
"Si [param filter] est fourni, seuls les fichiers correspondants seront "
"disponible à la sélection.\n"
"Voir également [constant PROPERTY_HINT_FILE].\n"
"[codeblock]\n"
"@export_file var sound_effect_path: String\n"
"@export_file(\"*.txt\") var notes_path: String\n"
"@export_file var level_paths: Array[String]\n"
"[/codeblock]\n"
"[b]Note :[/b] Le fichier sera stocké et référencé en tant qu'UID, si "
"disponible. Cela garantit que la référence est valide même lorsque le fichier "
"est déplacé. Vous pouvez utiliser des méthodes de [ResourceUID] pour le "
"convertir en chemin."

msgid ""
"Same as [annotation @export_file], except the file will be stored as a raw "
"path. This means that it may become invalid when the file is moved. If you "
"are exporting a [Resource] path, consider using [annotation @export_file] "
"instead."
msgstr ""
"Comme [annotation @export_file], sauf que le fichier sera stocké comme un "
"chemin brut. Cela signifie qu'il peut devenir invalide lorsque le fichier est "
"déplacé. Si vous exportez un chemin de [Resource], envisagez d'utiliser "
"[annotation @export_file] à la place."

msgid ""
"Export an integer property as a bit flag field. This allows to store several "
"\"checked\" or [code]true[/code] values with one property, and comfortably "
"select them from the Inspector dock.\n"
"See also [constant PROPERTY_HINT_FLAGS].\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var spell_elements = "
"0\n"
"[/codeblock]\n"
"You can add explicit values using a colon:\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Foes:16\") var spell_targets = 0\n"
"[/codeblock]\n"
"You can also combine several flags:\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Self and Allies:12\", \"Foes:16\")\n"
"var spell_targets = 0\n"
"[/codeblock]\n"
"[b]Note:[/b] A flag value must be at least [code]1[/code] and at most [code]2 "
"** 32 - 1[/code].\n"
"[b]Note:[/b] Unlike [annotation @export_enum], the previous explicit value is "
"not taken into account. In the following example, A is 16, B is 2, C is 4.\n"
"[codeblock]\n"
"@export_flags(\"A:16\", \"B\", \"C\") var x\n"
"[/codeblock]\n"
"You can also use the annotation on [Array][lb][int][rb], [PackedByteArray], "
"[PackedInt32Array], and [PackedInt64Array]\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var phase_elements: "
"Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété entière en tant que champ de bit flag. Cela permet de "
"stocker plusieurs valeurs \"vérifiées\" ou [code]true[/code] avec une "
"propriété, et de les sélectionner aisément depuis la barre d'outils de "
"l'Inspecteur.\n"
"Voir également [constant PROPERTY_HINT_FLAGS].\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var spell_elements = "
"0\n"
"[/codeblock]\n"
"Vous pouvez ajouter des valeurs explicites en utilisant les deux-points :\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Foes:16\") var spell_targets = 0\n"
"[/codeblock]\n"
"Vous pouvez aussi combiner plusieurs options :\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Self and Allies:12\", \"Foes:16\")\n"
"var spell_targets = 0\n"
"[/codeblock]\n"
"[b]Note :[/b] Une valeur de drapeau doit être au minimum [code]1[/code] et au "
"maximum [code]2 ** 32 - 1[/code].\n"
"[b]Note :[/b] Contrairement à [annotation @export_enum], la valeur explicite "
"précédente n'est pas prise en compte. Dans l'exemple suivant, A est 16, B est "
"2, C est 4.\n"
"[codeblock]\n"
"@export_flags(\"A:16\", \"B\", \"C\") var x\n"
"[/codeblock]\n"
"Vous pouvez aussi l'utiliser cette annotation sur un [Array][lb][int][rb], "
"[PackedByteArray], [PackedInt32Array], ou[PackedInt64Array]\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var phase_elements: "
"Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 2D navigation layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/2d_navigation/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_2D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_2d_navigation var navigation_layers: int\n"
"@export_flags_2d_navigation var navigation_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété entière en tant que champ de bits pour les calques de "
"navigation 2D. Le widget dans le dock Inspecteur utilisera les noms des "
"calques définis dans [member ProjectSettings.layer_names/2d_navigation/"
"layer_1].\n"
"Voir aussi [constant PROPERTY_HINT_LAYERS_2D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_2d_navigation var navigation_layers: int\n"
"@export_flags_2d_navigation var navigation_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 2D physics layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/2d_physics/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_2D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_2d_physics var physics_layers: int\n"
"@export_flags_2d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporter une propriété entière sous forme de champ de bit flag pour les "
"couches physiques 2D. Le widget dans la barre d'outils de l'Inspecteur "
"utilisera les noms des calques définis dans [member "
"ProjectSettings.layer_names/2d_physics/layer_1].\n"
"Voir également [constant PROPERTY_HINT_LAYERS_2D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_2d_physics var physics_layers: int\n"
"@export_flags_2d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 2D render layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/2d_render/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_2D_RENDER].\n"
"[codeblock]\n"
"@export_flags_2d_render var render_layers: int\n"
"@export_flags_2d_render var render_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété entière en tant que champ de bit flag pour le calques "
"de rendu 2D. Le widget dans la barre d'outils de l'Inspecteur utilisera les "
"noms des calques définis dans [member ProjectSettings.layer_names/2d_render/"
"layer_1].\n"
"Voir également [constant PROPERTY_HINT_LAYERS_2D_RENDER].\n"
"[codeblock]\n"
"@export_flags_2d_render var render_layers: int\n"
"@export_flags_2d_render var render_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 3D navigation layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/3d_navigation/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_3D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_3d_navigation var navigation_layers: int\n"
"@export_flags_3d_navigation var navigation_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété [int] en tant que champ de bits pour des couches de "
"navigation 3D. Le widget dans le dock Inspecteur utilisera les noms de couche "
"définis dans [member ProjectSettings.layer_names/3d_navigation/layer_1].\n"
"Voir aussi [constant PROPERTY_HINT_LAYERS_3D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_3d_navigation var couches_navigation: int\n"
"@export_flags_3d_navigation var tableau_couches_navigation: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 3D physics layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/3d_physics/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_3D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_3d_physics var physics_layers: int\n"
"@export_flags_3d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété [int] en tant que champ de bits pour couches physiques "
"3D. Le widget dans le dock Inspecteur utilisera les noms de couches définis "
"dans [member ProjectSettings.layer_names/3d_physics/layer_1].\n"
"Voir aussi [constant PROPERTY_HINT_LAYERS_3D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_3d_physics var physics_layers: int\n"
"@export_flags_3d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 3D render layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/3d_render/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_3D_RENDER].\n"
"[codeblock]\n"
"@export_flags_3d_render var render_layers: int\n"
"@export_flags_3d_render var render_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété d'entier en tant que champ de bit flag pour des couches "
"de rendu 3D. Le widget dans le dock Inspecteur utilisera les noms de couches "
"définis dans [member ProjectSettings.layer_names/3d_render/layer_1].\n"
"Voir aussi [constant PROPERTY_HINT_LAYERS_3D_RENDER].\n"
"[codeblock]\n"
"@export_flags_3d_render var render_layers: int\n"
"@export_flags_3d_render var render_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for navigation avoidance "
"layers. The widget in the Inspector dock will use the layer names defined in "
"[member ProjectSettings.layer_names/avoidance/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_AVOIDANCE].\n"
"[codeblock]\n"
"@export_flags_avoidance var avoidance_layers: int\n"
"@export_flags_avoidance var avoidance_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété entière en tant que champ d'option (bit) pour les "
"calques de navigation 2D. Le widget dans la barre d'outils de l'Inspecteur "
"utilisera les noms des calques définis dans [member "
"ProjectSettings.layer_names/2d_navigation/layer_1].\n"
"Voir également [constant PROPERTY_HINT_LAYERS_AVOIDANCE].\n"
"[codeblock]\n"
"@export_flags_avoidance var avoidance_layers: int\n"
"@export_flags_avoidance var avoidance_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as an absolute path to a directory. The path can be picked from the entire "
"filesystem. See [annotation @export_dir] to limit it to the project folder "
"and its subfolders.\n"
"See also [constant PROPERTY_HINT_GLOBAL_DIR].\n"
"[codeblock]\n"
"@export_global_dir var sprite_folder_path: String\n"
"@export_global_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"
msgstr ""
"Exporter une propriété [String], [Array][lb][String][rb], ou "
"[PackedStringArray] en tant que chemin absolu vers un dossier. Le chemin peut "
"être sélectionné depuis l'entièreté du système de fichiers. Voir [annotation "
"@export_dir] pour le limiter au dossier du projet et ses sous-dossiers.\n"
"Voir aussi [constant PROPERTY_HINT_GLOBAL_DIR].\n"
"[codeblock]\n"
"@export_global_dir var sprite_folder_path: String\n"
"@export_global_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as an absolute path to a file. The path can be picked from the entire "
"filesystem. See [annotation @export_file] to limit it to the project folder "
"and its subfolders.\n"
"If [param filter] is provided, only matching files will be available for "
"picking.\n"
"See also [constant PROPERTY_HINT_GLOBAL_FILE].\n"
"[codeblock]\n"
"@export_global_file var sound_effect_path: String\n"
"@export_global_file(\"*.txt\") var notes_path: String\n"
"@export_global_file var multiple_paths: Array[String]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété [String], [Array][lb][String][rb], ou "
"[PackedStringArray] en tant que chemin absolu à un fichier. Le chemin peut "
"être sélectionné depuis l'entièreté du système de fichiers. Voir [annotation "
"@export_file] afin de le limiter au dossier du projet et ses sous-dossiers.\n"
"Si [param filter] est fourni, seul les fichiers correspondant seront "
"disponibles à la sélection.\n"
"Voir aussi [constant PROPERTY_HINT_GLOBAL_FILE].\n"
"[codeblock]\n"
"@export_global_file var sound_effect_path: String\n"
"@export_global_file(\"*.txt\") var notes_path: String\n"
"@export_global_file var multiple_paths: Array[String]\n"
"[/codeblock]"

msgid ""
"Define a new group for the following exported properties. This helps to "
"organize properties in the Inspector dock. Groups can be added with an "
"optional [param prefix], which would make group to only consider properties "
"that have this prefix. The grouping will break on the first property that "
"doesn't have a prefix. The prefix is also removed from the property's name in "
"the Inspector dock.\n"
"If no [param prefix] is provided, then every following property will be added "
"to the group. The group ends when then next group or category is defined. You "
"can also force end a group by using this annotation with empty strings for "
"parameters, [code]@export_group(\"\", \"\")[/code].\n"
"Groups cannot be nested, use [annotation @export_subgroup] to add subgroups "
"within groups.\n"
"See also [constant PROPERTY_USAGE_GROUP].\n"
"[codeblock]\n"
"@export_group(\"Racer Properties\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_group(\"Car Properties\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"\n"
"@export_group(\"\", \"\")\n"
"@export var ungrouped_number = 3\n"
"[/codeblock]"
msgstr ""
"Définit un nouveau groupe pour les propriétés exportées suivantes. Ceci aide "
"à organiser les propriétés dans la barre d'outils de l'Inspecteur. Les "
"groupes peuvent être ajoutés avec un [param prefix] optionnel qui considère "
"uniquement les propriétés ayant ce préfixe dans le groupe. Le groupement se "
"terminera sur la première propriété n'ayant pas de préfixe. Le préfixe est "
"également supprimé du nom de la propriété dans la barre d'outils de "
"l'Inspecteur.\n"
"Si aucun [param prefix] n'est fourni, alors toutes les propriétés suivantes "
"seront ajoutées au groupe. Le groupe se termine quand le groupe ou la "
"catégorie suivante sont définis. Vous pouvez également forcer la fin d'un "
"groupe en utilisation cette annotation avec des chaînes de caractères vides "
"comme paramètres : [code]@export_group(\"\", \"\")[/code].\n"
"Les groupes ne peuvent pas être imbriqués, utilisez [annotation "
"@export_subgroup] pour ajouter des sous-groupes au sein d'un groupe.\n"
"Voir aussi [constant PROPERTY_USAGE_GROUP]\n"
"[codeblock]\n"
"@export_group(\"Propriétés du pilote\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_group(\"Propriétés de la voiture\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"\n"
"@export_group(\"\", \"\")\n"
"@export var ungrouped_number = 3\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], [PackedStringArray], [Dictionary] "
"or [Array][lb][Dictionary][rb] property with a large [TextEdit] widget "
"instead of a [LineEdit]. This adds support for multiline content and makes it "
"easier to edit large amount of text stored in the property.\n"
"See also [constant PROPERTY_HINT_MULTILINE_TEXT].\n"
"[codeblock]\n"
"@export_multiline var character_biography\n"
"@export_multiline var npc_dialogs: Array[String]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété [String], [Array][lb][String][rb], [PackedStringArray], "
"[Dictionary] ou [Array][lb][Dictionary][rb] avec un widget [TextEdit] large à "
"la place d'un [LineEdit]. Cela ajoute du support pour un contenu multi-ligne "
"et rend plus facile l'édition de beaucoup de texte stocké dans la propriété.\n"
"Voir également [constant PROPERTY_HINT_MULTILINE_TEXT].\n"
"[codeblock]\n"
"@export_multiline var character_biography\n"
"@export_multiline var npc_dialogs: Array[String]\n"
"[/codeblock]"

msgid ""
"Export a [NodePath] or [Array][lb][NodePath][rb] property with a filter for "
"allowed node types.\n"
"See also [constant PROPERTY_HINT_NODE_PATH_VALID_TYPES].\n"
"[codeblock]\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var some_button\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var many_buttons: "
"Array[NodePath]\n"
"[/codeblock]\n"
"[b]Note:[/b] The type must be a native class or a globally registered script "
"(using the [code]class_name[/code] keyword) that inherits [Node]."
msgstr ""
"Exporte une propriété [NodePath] ou [Array][lb][NodePath][rb] avec un filtre "
"pour les types de nœud autorisés.\n"
"Voir également [constant PROPERTY_HINT_NODE_PATH_VALID_TYPES].\n"
"[codeblock]\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var some_button\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var many_buttons: "
"Array[NodePath]\n"
"[/codeblock]\n"
"[b]Note :[/b] Le type doit être une classe native ou un script enregistré "
"globalement (utilisant le mot-clé [code]class_name[/code] ) qui hérite de "
"[Node]."

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"with a placeholder text displayed in the editor widget when no value is "
"present.\n"
"See also [constant PROPERTY_HINT_PLACEHOLDER_TEXT].\n"
"[codeblock]\n"
"@export_placeholder(\"Name in lowercase\") var character_id: String\n"
"@export_placeholder(\"Name in lowercase\") var friend_ids: Array[String]\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété [String] avec un emplacement réservé de texte affiché "
"dans le widget d'éditeur widget quand aucune valeur n'est présente.\n"
"Voir également [constant PROPERTY_HINT_PLACEHOLDER_TEXT].\n"
"[codeblock]\n"
"@export_placeholder(\"Nom en minuscule\") var character_id: String\n"
"@export_placeholder(\"Nom en minuscule\") var friend_ids: Array[String]\n"
"[/codeblock]"

msgid ""
"Export an [int], [float], [Array][lb][int][rb], [Array][lb][float][rb], "
"[PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array], or [PackedFloat64Array] property as a range value. The "
"range must be defined by [param min] and [param max], as well as an optional "
"[param step] and a variety of extra hints. The [param step] defaults to "
"[code]1[/code] for integer properties. For floating-point numbers this value "
"depends on your [member EditorSettings.interface/inspector/"
"default_float_step] setting.\n"
"If hints [code]\"or_greater\"[/code] and [code]\"or_less\"[/code] are "
"provided, the editor widget will not cap the value at range boundaries. The "
"[code]\"exp\"[/code] hint will make the edited values on range to change "
"exponentially. The [code]\"hide_slider\"[/code] hint will hide the slider "
"element of the editor widget.\n"
"Hints also allow to indicate the units for the edited value. Using [code]"
"\"radians_as_degrees\"[/code] you can specify that the actual value is in "
"radians, but should be displayed in degrees in the Inspector dock (the range "
"values are also in degrees). [code]\"degrees\"[/code] allows to add a degree "
"sign as a unit suffix (the value is unchanged). Finally, a custom suffix can "
"be provided using [code]\"suffix:unit\"[/code], where \"unit\" can be any "
"string.\n"
"See also [constant PROPERTY_HINT_RANGE].\n"
"[codeblock]\n"
"@export_range(0, 20) var number\n"
"@export_range(-10, 20) var number\n"
"@export_range(-10, 20, 0.2) var number: float\n"
"@export_range(0, 20) var numbers: Array[float]\n"
"\n"
"@export_range(0, 100, 1, \"or_greater\") var power_percent\n"
"@export_range(0, 100, 1, \"or_greater\", \"or_less\") var health_delta\n"
"\n"
"@export_range(-180, 180, 0.001, \"radians_as_degrees\") var angle_radians\n"
"@export_range(0, 360, 1, \"degrees\") var angle_degrees\n"
"@export_range(-8, 8, 2, \"suffix:px\") var target_offset\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété [int], [float], [Array][lb][int][rb], [Array][lb][float]"
"[rb], [PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array], ou [PackedFloat64Array] en tant que valeur de plage. La "
"plage doit être définie par [param min] et [param max], ainsi qu'un pas "
"[param step] facultatif et une variété d'indices supplémentaires. Le pas "
"[param step] est par défaut [code]1[/code] pour les propriétés entières. Pour "
"les nombres à virgule flottante, cette valeur dépend de votre paramètre "
"[member EditorSettings.interface/inspector/default_float_step].\n"
"Si les indices [code]\"or_greater\"[/code] et [code]\"or_less\"[/code] sont "
"fournis, le widget de l'éditeur ne plafonnera pas la valeur aux limites de la "
"plage. L'indice [code]\"exp\"[/code] fera en sorte que les valeurs modifiées "
"sur la plage changent de manière exponentielle. L'indice [code]"
"\"hide_slider\"[/code] masquera l'élément slider du widget de l'éditeur.\n"
"Des indices permettent également d'indiquer les unités de la valeur modifiée. "
"En utilisant [code]\"radians_as_degrees\"[/code], vous pouvez spécifier que "
"la valeur réelle est en radians, mais doit être affichée en degrés dans le "
"dock Inspecteur (les valeurs de plage sont également en degrés). [code]"
"\"degrees\"[/code] permet d'ajouter un signe de degré comme suffixe d'unité "
"(la valeur est inchangée). Enfin, un suffixe personnalisé peut être fourni en "
"utilisant [code]\"suffix:unit\"[/code], où \"unit\" peut être n'importe "
"quelle chaîne.\n"
"Voir également [constant PROPERTY_HINT_RANGE].\n"
"[codeblock]\n"
"@export_range(0, 20) var number\n"
"@export_range(-10, 20) var number\n"
"@export_range(-10, 20, 0.2) var number: float\n"
"@export_range(0, 20) var numbers: Array[float]\n"
"\n"
"@export_range(0, 100, 1, \"or_greater\") var power_percent\n"
"@export_range(0, 100, 1, \"or_greater\", \"or_less\") var health_delta\n"
"\n"
"@export_range(-180, 180, 0.001, \"radians_as_degrees\") var angle_radians\n"
"@export_range(0, 360, 1, \"degrees\") var angle_degrees\n"
"@export_range(-8, 8, 2, \"suffix:px\") var target_offset\n"
"[/codeblock]"

msgid ""
"Export a property with [constant PROPERTY_USAGE_STORAGE] flag. The property "
"is not displayed in the editor, but it is serialized and stored in the scene "
"or resource file. This can be useful for [annotation @tool] scripts. Also the "
"property value is copied when [method Resource.duplicate] or [method "
"Node.duplicate] is called, unlike non-exported variables.\n"
"[codeblock]\n"
"var a # Not stored in the file, not displayed in the editor.\n"
"@export_storage var b # Stored in the file, not displayed in the editor.\n"
"@export var c: int # Stored in the file, displayed in the editor.\n"
"[/codeblock]"
msgstr ""
"Exporte une propriété avec l'indicateur [constant PROPERTY_USAGE_STORAGE]. La "
"propriété n'est pas affichée dans l'éditeur, mais elle est sérialisée et "
"stockée dans la scène ou le fichier de ressources. Cela peut être utile pour "
"les scripts [annotation @tool]. De plus, la valeur de la propriété est copiée "
"lorsque [method Resource.duplicate] ou la [method Node.duplicate] sont "
"appelés, contrairement aux variables non exportées.\n"
"[codeblock]\n"
"var a # Non stocké dans le fichier, non affiché dans l'éditeur.\n"
"@export_storage var b # Stocké dans le fichier, non affiché dans l'éditeur.\n"
"@export var c: int # Stocké dans le fichier, affiché dans l'éditeur.\n"
"[/codeblock]"

msgid ""
"Define a new subgroup for the following exported properties. This helps to "
"organize properties in the Inspector dock. Subgroups work exactly like "
"groups, except they need a parent group to exist. See [annotation "
"@export_group].\n"
"See also [constant PROPERTY_USAGE_SUBGROUP].\n"
"[codeblock]\n"
"@export_group(\"Racer Properties\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_subgroup(\"Car Properties\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"[/codeblock]\n"
"[b]Note:[/b] Subgroups cannot be nested, but you can use the slash separator "
"([code]/[/code]) to achieve the desired effect:\n"
"[codeblock]\n"
"@export_group(\"Car Properties\")\n"
"@export_subgroup(\"Wheels\", \"wheel_\")\n"
"@export_subgroup(\"Wheels/Front\", \"front_wheel_\")\n"
"@export var front_wheel_strength = 10\n"
"@export var front_wheel_mobility = 5\n"
"@export_subgroup(\"Wheels/Rear\", \"rear_wheel_\")\n"
"@export var rear_wheel_strength = 8\n"
"@export var rear_wheel_mobility = 3\n"
"@export_subgroup(\"Wheels\", \"wheel_\")\n"
"@export var wheel_material: PhysicsMaterial\n"
"[/codeblock]"
msgstr ""
"Définit un nouveau sous-groupe pour les propriétés exportées suivantes. Cela "
"permet d'organiser les propriétés dans le dock Inspecteur. Les sous-groupes "
"fonctionnent exactement comme des groupes, sauf qu'ils ont besoin d'un groupe "
"parent pour exister. Voir [annotation @export_group].\n"
"Voir également [constant PROPERTY_USAGE_SUBGROUP].\n"
"[codeblock]\n"
"@export_group(\"Propriétés du pilote\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_subgroup(\"Propriétés de la voiture\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"[/codeblock]\n"
"[b]Note :[/b] Les sous-groupes ne peuvent pas être imbriqués, mais vous "
"pouvez utiliser l'opérateur slash ([code]/[/code]) pour obtenir l'effet "
"désiré :\n"
"[codeblock]\n"
"@export_group(\"Propriétés de la voiture\")\n"
"@export_subgroup(\"Roues\", \"wheel_\")\n"
"@export_subgroup(\"Roues/Avant\", \"front_wheel_\")\n"
"@export var front_wheel_strength = 10\n"
"@export var front_wheel_mobility = 5\n"
"@export_subgroup(\"Roues/Arriere\", \"rear_wheel_\")\n"
"@export var rear_wheel_strength = 8\n"
"@export var rear_wheel_mobility = 3\n"
"@export_subgroup(\"Roues\", \"wheel_\")\n"
"@export var wheel_material: PhysicsMaterial\n"
"[/codeblock]"

msgid ""
"Export a [Callable] property as a clickable button with the label [param "
"text]. When the button is pressed, the callable is called.\n"
"If [param icon] is specified, it is used to fetch an icon for the button via "
"[method Control.get_theme_icon], from the [code]\"EditorIcons\"[/code] theme "
"type. If [param icon] is omitted, the default [code]\"Callable\"[/code] icon "
"is used instead.\n"
"Consider using the [EditorUndoRedoManager] to allow the action to be reverted "
"safely.\n"
"See also [constant PROPERTY_HINT_TOOL_BUTTON].\n"
"[codeblock]\n"
"@tool\n"
"extends Sprite2D\n"
"\n"
"@export_tool_button(\"Hello\") var hello_action = hello\n"
"@export_tool_button(\"Randomize the color!\", \"ColorRect\")\n"
"var randomize_color_action = randomize_color\n"
"\n"
"func hello():\n"
"\tprint(\"Hello world!\")\n"
"\n"
"func randomize_color():\n"
"\tvar undo_redo = EditorInterface.get_editor_undo_redo()\n"
"\tundo_redo.create_action(\"Randomized Sprite2D Color\")\n"
"\tundo_redo.add_do_property(self, &\"self_modulate\", Color(randf(), randf(), "
"randf()))\n"
"\tundo_redo.add_undo_property(self, &\"self_modulate\", self_modulate)\n"
"\tundo_redo.commit_action()\n"
"[/codeblock]\n"
"[b]Note:[/b] The property is exported without the [constant "
"PROPERTY_USAGE_STORAGE] flag because a [Callable] cannot be properly "
"serialized and stored in a file.\n"
"[b]Note:[/b] In an exported project neither [EditorInterface] nor "
"[EditorUndoRedoManager] exist, which may cause some scripts to break. To "
"prevent this, you can use [method Engine.get_singleton] and omit the static "
"type from the variable declaration:\n"
"[codeblock]\n"
"var undo_redo = "
"Engine.get_singleton(&\"EditorInterface\").get_editor_undo_redo()\n"
"[/codeblock]\n"
"[b]Note:[/b] Avoid storing lambda callables in member variables of "
"[RefCounted]-based classes (e.g. resources), as this can lead to memory "
"leaks. Use only method callables and optionally [method Callable.bind] or "
"[method Callable.unbind]."
msgstr ""
"Exporte une propriété [Callable] en tant que bouton cliquable avec la légende "
"[param text]. Lorsque le bouton est pressé, l'appelable [Callable] est "
"appelé.\n"
"Si l'icône [param icon] est spécifié, il est utilisée pour récupérer un icône "
"pour le bouton via [method Control.get_theme_icon], du type de thème [code]"
"\"EditorIcons\"[/code]. Si [param icon] est omis, l'icône par défaut [code]"
"\"Callable\"[/code] est utilisé à la place.\n"
"Envisagez d'utiliser le [EditorUndoRedoManager] pour permettre à l'action "
"d'être annulée en toute sécurité.\n"
"Voir aussi [constant PROPERTY_HINT_TOOL_BUTTON].\n"
"[codeblock]\n"
"@tool\n"
"extends Sprite2D\n"
"\n"
"@export_tool_button(\"Bonjour\") var Bonjour_action = Bonjour\n"
"@export_tool_button(\"Randomiser la couleur !\", \"ColorRect\")\n"
"var randomiser_couleur_action = randomiser_couleur\n"
"\n"
"func Bonjour():\n"
"print(\"Bonjour monde !\")\n"
"\n"
"func randomiser_couleur():\n"
"var undo_redo = EditorInterface.get_editor_undo_redo()\n"
"undo_redo.create_action(\"Randomiser couleur du Sprite2D\")\n"
"undo_redo.add_do_property(self, \"self_modulate\" , Color(randf(), randf(), "
"randf())\n"
"undo_redo.add_undo_property(self, \"self_modulate\" , self_modulate)\n"
"undo_redo.commit_action()\n"
"[/codeblock]\n"
"[b]Note: [/b] La propriété est exportée sans le drapeau [constant "
"PROPERTY_USAGE_STORAGE] parce qu'un [Callable] ne peut pas être correctement "
"sérialisé et stocké dans un fichier.\n"
"[b]Note :[/b] Dans un projet exporté, il n'existe ni [EditorInterface] ni "
"[EditorUndoRedoManager], ce qui peut casser certains scripts. Pour éviter "
"cela, vous pouvez utiliser [method Engine.get_singleton] et omettre le type "
"statique de la déclaration de variable :\n"
"[codeblock]\n"
"var undo_redo = "
"Engine.get_singleton(&\"EditorInterface\").get_editor_undo_redo()\n"
"[/codeblock]\n"
"[b]Note :[/b] Évitez de stocker fes callables lambda dans les variables de "
"membres des classes basées sur [RefCounted] (p. ex. les ressources), car cela "
"peut conduire à des fuites de mémoire. Utilisez uniquement les callables de "
"méthode et optionnellement [method Callable.bind] ou [method Callable.unbind]."

msgid ""
"Add a custom icon to the current script. The icon specified at [param "
"icon_path] is displayed in the Scene dock for every node of that class, as "
"well as in various editor dialogs.\n"
"[codeblock]\n"
"@icon(\"res://path/to/class/icon.svg\")\n"
"[/codeblock]\n"
"[b]Note:[/b] Only the script can have a custom icon. Inner classes are not "
"supported.\n"
"[b]Note:[/b] As annotations describe their subject, the [annotation @icon] "
"annotation must be placed before the class definition and inheritance.\n"
"[b]Note:[/b] Unlike most other annotations, the argument of the [annotation "
"@icon] annotation must be a string literal (constant expressions are not "
"supported)."
msgstr ""
"Ajoute un icône personnalisé à ce script. L'icône spécifié au [param "
"icon_path] est montré dans le dock de scène pour chaque nœud de cette classe, "
"et dans diverses fenêtres de l'éditeur.\n"
"[codeblock]\n"
"@icon(\"res ://chemin/vers/classe/icone.svg\")\n"
"[/codeblock]\n"
"[b]Note :[/b] Seul le script peut avoir un icône personnalisé. Les classes "
"internes ne sont pas supportées.\n"
"[b]Note :[/b] Comme les annotations décrivent leur sujet, l'[annotation "
"@icon] annotation doit être placée avant la définition de la classe et de son "
"héritage.\n"
"[b]Note :[/b] Contrairement aux autres annotations, le paramètre de "
"l'annotation [annotation @icon] doit être un chaîne de caractères littérale "
"(les expressions constantes ne sont pas supportées)."

msgid ""
"Mark the following property as assigned when the [Node] is ready. Values for "
"these properties are not assigned immediately when the node is initialized "
"([method Object._init]), and instead are computed and stored right before "
"[method Node._ready].\n"
"[codeblock]\n"
"@onready var character_name = $Label\n"
"[/codeblock]"
msgstr ""
"Marque la propriété suivante comme attribuée lorsque la [Node] est prête. Les "
"valeurs de ces propriétés ne sont pas attribuées immédiatement lorsque le "
"nœud est initialisé ([method Object._init]), mais sont à la place calculées "
"et stockées juste avant [method Node._ready].\n"
"[codeblock]\n"
"@onready var nom_personnage = $Label\n"
"[/codeblock]"

msgid ""
"Mark the following method for remote procedure calls. See [url=$DOCS_URL/"
"tutorials/networking/high_level_multiplayer.html]High-level multiplayer[/"
"url].\n"
"If [param mode] is set as [code]\"any_peer\"[/code], allows any peer to call "
"this RPC function. Otherwise, only the authority peer is allowed to call it "
"and [param mode] should be kept as [code]\"authority\"[/code]. When "
"configuring functions as RPCs with [method Node.rpc_config], each of these "
"modes respectively corresponds to the [constant "
"MultiplayerAPI.RPC_MODE_AUTHORITY] and [constant "
"MultiplayerAPI.RPC_MODE_ANY_PEER] RPC modes. See [enum "
"MultiplayerAPI.RPCMode]. If a peer that is not the authority tries to call a "
"function that is only allowed for the authority, the function will not be "
"executed. If the error can be detected locally (when the RPC configuration is "
"consistent between the local and the remote peer), an error message will be "
"displayed on the sender peer. Otherwise, the remote peer will detect the "
"error and print an error there.\n"
"If [param sync] is set as [code]\"call_remote\"[/code], the function will "
"only be executed on the remote peer, but not locally. To run this function "
"locally too, set [param sync] to [code]\"call_local\"[/code]. When "
"configuring functions as RPCs with [method Node.rpc_config], this is "
"equivalent to setting [code]call_local[/code] to [code]true[/code].\n"
"The [param transfer_mode] accepted values are [code]\"unreliable\"[/code], "
"[code]\"unreliable_ordered\"[/code], or [code]\"reliable\"[/code]. It sets "
"the transfer mode of the underlying [MultiplayerPeer]. See [member "
"MultiplayerPeer.transfer_mode].\n"
"The [param transfer_channel] defines the channel of the underlying "
"[MultiplayerPeer]. See [member MultiplayerPeer.transfer_channel].\n"
"The order of [param mode], [param sync] and [param transfer_mode] does not "
"matter, but values related to the same argument must not be used more than "
"once. [param transfer_channel] always has to be the 4th argument (you must "
"specify 3 preceding arguments).\n"
"[codeblock]\n"
"@rpc\n"
"func fn(): pass\n"
"\n"
"@rpc(\"any_peer\", \"unreliable_ordered\")\n"
"func fn_update_pos(): pass\n"
"\n"
"@rpc(\"authority\", \"call_remote\", \"unreliable\", 0) # Equivalent to @rpc\n"
"func fn_default(): pass\n"
"[/codeblock]\n"
"[b]Note:[/b] Methods annotated with [annotation @rpc] cannot receive objects "
"which define required parameters in [method Object._init]. See [method "
"Object._init] for more details."
msgstr ""
"Marque la méthode suivante pour les appels de procédure distante. Voir "
"[url=$DOCS_URL/tutorials/networking/high_level_multiplayer.html]Multijoueur "
"de haut niveau[/url].\n"
"Si [param mode] est défini sur [code]\"any_peer\"[/code], permet à n'importe "
"quel pair d'appeler cette fonction RPC. Sinon, seul le pair d'autorité est "
"autorisé à l'appeler et [param mode] doit être conservé comme [code]"
"\"authority\"[/code]. Lors de la configuration de fonctions en RPC avec "
"[method Node.rpc_config], chacun de ces modes correspond respectivement aux "
"modes RPC [constant MultiplayerAPI.RPC_MODE_AUTHORITY] et [constant "
"MultiplayerAPI.RPC_MODE_ANY_PEER]. Voir [enum MultiplayerAPI.RPCMode]. Si un "
"pair qui n'est pas l'autorité tente d'appeler une fonction autorisée "
"uniquement pour l'autorité, la fonction ne sera pas exécutée. Si l'erreur "
"peut être détectée localement (lorsque la configuration RPC est cohérente "
"entre le homologue local et distant), un message d'erreur sera affiché sur le "
"pair expéditeur. Sinon, le pair distant détectera l'erreur et y affichera une "
"erreur.\n"
"Si [param sync] est défini sur [code]\"call_remote\"[/code], la fonction ne "
"sera exécutée que sur le pair distant, mais pas localement. Pour exécuter "
"cette fonction localement également, définissez [param sync] sur [code]"
"\"call_local\"[/code]. Lors de la configuration de fonctions en tant que RPC "
"avec [method Node.rpc_config], cela équivaut à définir [code]call_local[/"
"code] sur [code]true[/code].\n"
"Les valeurs acceptées par [param transfer_mode] sont [code]\"unreliable\"[/"
"code], [code]\"unreliable_ordered\"[/code] ou [code]\"reliable\"[/code]. Il "
"définit le mode de transfert du [MultiplayerPeer] sous-jacent. Voir [member "
"MultiplayerPeer.transfer_mode].\n"
"Le [param transfer_channel] définit le canal du [MultiplayerPeer] sous-"
"jacent. Voir [member MultiplayerPeer.transfer_channel].\n"
"L'ordre de [param mode], [param sync] et [param transfer_mode] n'a pas "
"d'importance, mais les valeurs liées au même argument ne doivent pas être "
"utilisées plus d'une fois. [param transfer_channel] doit toujours être le "
"4ème argument (vous devez spécifier 3 arguments précédents).\n"
"[codeblock]\n"
"@rpc\n"
"func fn() : pass\n"
"\n"
"@rpc(\"any_peer\", \"unreliable_ordered\")\n"
"func fn_update_pos() : pass\n"
"\n"
"@rpc(\"authority\", \"call_remote\", \"unreliable\", 0) # Équivalent à @rpc\n"
"func fn_default() : pass\n"
"[/codeblock]\n"
"[b]Note :[/b] Les méthodes annotées avec [annotation @rpc] ne peuvent pas "
"recevoir d'objets qui définissent des paramètres requis dans [method "
"Object._init]. Voir [method Object._init] pour plus de détails."

msgid ""
"Make a script with static variables to not persist after all references are "
"lost. If the script is loaded again the static variables will revert to their "
"default values.\n"
"[b]Note:[/b] As annotations describe their subject, the [annotation "
"@static_unload] annotation must be placed before the class definition and "
"inheritance.\n"
"[b]Warning:[/b] Currently, due to a bug, scripts are never freed, even if "
"[annotation @static_unload] annotation is used."
msgstr ""
"Créez un script avec des variables statiques pour ne pas persister après la "
"perte de toutes les références. Si le script est à nouveau chargé, les "
"variables statiques reviendront à leurs valeurs par défaut.\n"
"[b]Remarque :[/b] Comme les annotations décrivent leur sujet, l'annotation "
"[annotation @static_unload] doit être placée avant la définition et "
"l'héritage de la classe.\n"
"[b]Attention :[/b] Actuellement, en raison d'un bug, les scripts ne sont "
"jamais libérés, même si l'annotation [annotation @static_unload] est utilisée."

msgid ""
"Mark the current script as a tool script, allowing it to be loaded and "
"executed by the editor. See [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]Running code in the editor[/url].\n"
"[codeblock]\n"
"@tool\n"
"extends Node\n"
"[/codeblock]\n"
"[b]Note:[/b] As annotations describe their subject, the [annotation @tool] "
"annotation must be placed before the class definition and inheritance."
msgstr ""
"Marque le script actuel comme script outil, lui permettant d'être chargé et "
"exécuté par l'éditeur. Voir [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]Exécution de code dans l'éditeur[/url].\n"
"[codeblock]\n"
"@tool\n"
"extends Node\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Comme les annotations décrivent leur sujet, l'annotation "
"[annotation @tool] doit être placée avant la définition et l'héritage de la "
"classe."

msgid ""
"Mark the following statement to ignore the specified [param warning]. See "
"[url=$DOCS_URL/tutorials/scripting/gdscript/warning_system.html]GDScript "
"warning system[/url].\n"
"[codeblock]\n"
"func test():\n"
"\tprint(\"hello\")\n"
"\treturn\n"
"\t@warning_ignore(\"unreachable_code\")\n"
"\tprint(\"unreachable\")\n"
"[/codeblock]\n"
"See also [annotation @warning_ignore_start] and [annotation "
"@warning_ignore_restore]."
msgstr ""
"Marque l'instruction suivante pour ignorer le [param warning] spécifié. Voir "
"[url=$DOCS_URL/tutorials/scripting/gdscript/warning_system.html]le système "
"d’avertissement GDScript[/url].\n"
"[codeblock]\n"
"func test():\n"
"\tprint(\"hello\")\n"
"\treturn\n"
"\t@warning_ignore(\"unreachable_code\")\n"
"\tprint(\"unreachable\")\n"
"[/codeblock]\n"
"Voir aussi [annotation @warning_ignore_start] et [annotation "
"@warning_ignore_restore]."

msgid ""
"Stops ignoring the listed warning types after [annotation "
"@warning_ignore_start]. Ignoring the specified warning types will be reset to "
"Project Settings. This annotation can be omitted to ignore the warning types "
"until the end of the file.\n"
"[b]Note:[/b] Unlike most other annotations, arguments of the [annotation "
"@warning_ignore_restore] annotation must be string literals (constant "
"expressions are not supported)."
msgstr ""
"Arrête d'ignorer les types d'avertissement énumérés après [annotation "
"@warning_ignore_start]. L'ignorance des types d'avertissement spécifiés sera "
"réinitialisée aux paramètres de projet. Cette annotation peut être omise pour "
"ignorer les types d'avertissement jusqu'à la fin du fichier.\n"
"[b]Note :[/b] Contrairement à la plupart des autres annotations, les "
"arguments de l'annotation [annotation @warning_ignore_restore] doivent être "
"des littéraux de chaîne (les expressions constantes ne sont pas supportées)."

msgid ""
"Starts ignoring the listed warning types until the end of the file or the "
"[annotation @warning_ignore_restore] annotation with the given warning type.\n"
"[codeblock]\n"
"func test():\n"
"\tvar a = 1 # Warning (if enabled in the Project Settings).\n"
"\t@warning_ignore_start(\"unused_variable\")\n"
"\tvar b = 2 # No warning.\n"
"\tvar c = 3 # No warning.\n"
"\t@warning_ignore_restore(\"unused_variable\")\n"
"\tvar d = 4 # Warning (if enabled in the Project Settings).\n"
"[/codeblock]\n"
"[b]Note:[/b] To suppress a single warning, use [annotation @warning_ignore] "
"instead.\n"
"[b]Note:[/b] Unlike most other annotations, arguments of the [annotation "
"@warning_ignore_start] annotation must be string literals (constant "
"expressions are not supported)."
msgstr ""
"Commence à ignorer les types d'avertissement listés jusqu'à la fin du fichier "
"ou l'annotation [annotation @warning_ignore_restore] avec le type "
"d'avertissement donné.\n"
"[codeblock]\n"
"func test():\n"
"var a = 1 # Avertissement (si activé dans les paramètres du projet).\n"
"@warning_ignore_start(\"unused_variable\")\n"
"var b = 2 # Aucun avertissement.\n"
"c = 3 # Aucun avertissement.\n"
"@warning_ignore_restore(\"unused_variable\")\n"
"var d = 4 # Avertissement (si activé dans les paramètres du projet).\n"
"[/codeblock]\n"
"[b]Note :[/b] Pour supprimer un seul avertissement, utilisez plutôt "
"[annotation @warning_ignore].\n"
"[b]Note :[/b] Contrairement à la plupart des autres annotations, les "
"arguments de l'annotation [annotation @warning_ignore_start] doivent être des "
"littéraux de chaîne (les expressions constantes ne sont pas supportées)."

msgid "Global scope constants and functions."
msgstr "Constantes et fonction à portée globale."

msgid ""
"A list of global scope enumerated constants and built-in functions. This is "
"all that resides in the globals, constants regarding error codes, keycodes, "
"property hints, etc.\n"
"Singletons are also documented here, since they can be accessed from "
"anywhere.\n"
"For the entries that can only be accessed from scripts written in GDScript, "
"see [@GDScript]."
msgstr ""
"Une liste des constantes de portée globale et des fonctions intégrées. Il "
"s'agit de tout ce qui réside au global, les constantes concernant les codes "
"d'erreur, les codes de touche, les indices de propriété, etc.\n"
"Les Singletons sont également documentés ici, car ils peuvent être "
"accessibles de n'importe où.\n"
"Pour les entrées qui ne peuvent être consultées que dans les scripts écrits "
"en GDScript, voir [@GDScript]."

msgid "Random number generation"
msgstr "Génération de nombres aléatoires"

msgid ""
"Returns the absolute value of a [Variant] parameter [param x] (i.e. non-"
"negative value). Supported types: [int], [float], [Vector2], [Vector2i], "
"[Vector3], [Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"var a = abs(-1)\n"
"# a is 1\n"
"\n"
"var b = abs(-1.2)\n"
"# b is 1.2\n"
"\n"
"var c = abs(Vector2(-3.5, -4))\n"
"# c is (3.5, 4)\n"
"\n"
"var d = abs(Vector2i(-5, -6))\n"
"# d is (5, 6)\n"
"\n"
"var e = abs(Vector3(-7, 8.5, -3.8))\n"
"# e is (7, 8.5, 3.8)\n"
"\n"
"var f = abs(Vector3i(-7, -8, -9))\n"
"# f is (7, 8, 9)\n"
"[/codeblock]\n"
"[b]Note:[/b] For better type safety, use [method absf], [method absi], "
"[method Vector2.abs], [method Vector2i.abs], [method Vector3.abs], [method "
"Vector3i.abs], [method Vector4.abs], or [method Vector4i.abs]."
msgstr ""
"Renvoie la valeur absolue d'un paramètre [Variant] [param x] (c'est-à-dire "
"une valeur non négative). Types pris en charge : [int], [float], [Vector2], "
"[Vector2i], [Vector3], [Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"var a = abs(-1)\n"
"# a vaut 1\n"
"\n"
"var b = abs(-1,2)\n"
"#b vaut 1,2\n"
"\n"
"var c = abs(Vecteur2(-3.5, -4))\n"
"#c vaut (3.5, 4)\n"
"\n"
"var d = abs(Vecteur2i(-5, -6))\n"
"# d vaut (5, 6)\n"
"\n"
"var e = abs(Vecteur3(-7, 8,5, -3,8))\n"
"# e vaut (7, 8,5, 3,8)\n"
"\n"
"var f = abs(Vecteur3i(-7, -8, -9))\n"
"# f vaut (7, 8, 9)\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Pour une meilleure sûreté du typage, utilisez [method "
"absf], [method absi], [method Vector2.abs], [method Vector2i.abs], [method "
"Vector3.abs], [method Vector3i.abs], [method Vector4.abs] ou [method "
"Vector4i.abs]."

msgid ""
"Returns the absolute value of float parameter [param x] (i.e. positive "
"value).\n"
"[codeblock]\n"
"# a is 1.2\n"
"var a = absf(-1.2)\n"
"[/codeblock]"
msgstr ""
"Renvoie la valeur absolue du paramètre d'une valeur décimale [param x] (c'est-"
"à-dire une valeur positive).\n"
"[codeblock]\n"
"# a vaut 1.2\n"
"var a = absf(-1.2)\n"
"[/codeblock]"

msgid ""
"Returns the absolute value of int parameter [param x] (i.e. positive value).\n"
"[codeblock]\n"
"# a is 1\n"
"var a = absi(-1)\n"
"[/codeblock]"
msgstr ""
"Renvoie la valeur absolue du paramètre d'un entier [param x] (c'est-à-dire "
"une valeur positive).\n"
"[codeblock]\n"
"# a vaut 1\n"
"var a = absi(-1)\n"
"[/codeblock]"

msgid ""
"Returns the arc cosine of [param x] in radians. Use to get the angle of "
"cosine [param x]. [param x] will be clamped between [code]-1.0[/code] and "
"[code]1.0[/code] (inclusive), in order to prevent [method acos] from "
"returning [constant @GDScript.NAN].\n"
"[codeblock]\n"
"# c is 0.523599 or 30 degrees if converted with rad_to_deg(c)\n"
"var c = acos(0.866025)\n"
"[/codeblock]"
msgstr ""
"Renvoie l'arc cosinus de [param x] en radians. À utiliser pour obtenir "
"l'angle du cosinus [param x]. [param x] sera borné entre [code]-1.0[/code] et "
"[code]1.0[/code] (inclus), dans le cas contraire, [method acos] renverra "
"[constant @GDScript.NAN].\n"
"[codeblock]\n"
"# c vaut 0.523599 ou 30 degrés si converti avec rad_to_deg(c)\n"
"var c = acos(0.866025)\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic arc (also called inverse) cosine of [param x], "
"returning a value in radians. Use it to get the angle from an angle's cosine "
"in hyperbolic space if [param x] is larger or equal to 1. For values of "
"[param x] lower than 1, it will return 0, in order to prevent [method acosh] "
"from returning [constant @GDScript.NAN].\n"
"[codeblock]\n"
"var a = acosh(2) # Returns 1.31695789692482\n"
"cosh(a) # Returns 2\n"
"\n"
"var b = acosh(-1) # Returns 0\n"
"[/codeblock]"
msgstr ""
"Renvoie l'arc cosinus hyperbolique (aussi appelé cosinus hyperbolique "
"inverse) de [param x], renvoyant une valeur en radians. Utilisez la pour "
"obtenir l'angle depuis un cosinus d'angle dans l'espace hyperbolique si "
"[param x] est supérieur ou égal à 1. Pour les valeurs de [param x] "
"inférieures à 1, il renverra 0 afin d'empêcher [method acosh] de renvoyer "
"[constant @GDScript.NAN].\n"
"[codeblock]\n"
"var a = acosh(2) # Renvoie 1.31695789692482\n"
"cosh(a) # Renvoie 2\n"
"\n"
"var b = acosh(-1) # Renvoie 0\n"
"[/codeblock]"

msgid ""
"Returns the difference between the two angles (in radians), in the range of "
"[code][-PI, +PI][/code]. When [param from] and [param to] are opposite, "
"returns [code]-PI[/code] if [param from] is smaller than [param to], or "
"[code]PI[/code] otherwise."
msgstr ""
"Renvoie la différence entre deux angles (en radians), dans l'intervalle [code]"
"[-PI, +PI][/code]. Quand [param from] et [param to] sont opposés, renvoie "
"[code]-PI[/code] si [param from] est plus petit que [param to], ou [code]PI[/"
"code] dans le cas contraire."

msgid ""
"Returns the arc sine of [param x] in radians. Use to get the angle of sine "
"[param x]. [param x] will be clamped between [code]-1.0[/code] and [code]1.0[/"
"code] (inclusive), in order to prevent [method asin] from returning [constant "
"@GDScript.NAN].\n"
"[codeblock]\n"
"# s is 0.523599 or 30 degrees if converted with rad_to_deg(s)\n"
"var s = asin(0.5)\n"
"[/codeblock]"
msgstr ""
"Renvoie l'arc sinus de [param x] en radians. Utilisé pour obtenir l'angle du "
"sinus [param x]. [param x] sera borné entre [code]-1.0[/code] et [code]1.0[/"
"code] (inclus) afin d'empêcher [method asin] de renvoyer [constant "
"@GDScript.NAN].\n"
"[codeblock]\n"
"# s vaut 0.523599 ou 30 degrés si converti avec rad_to_deg(s)\n"
"var s = asin(0.5)\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic arc (also called inverse) sine of [param x], returning "
"a value in radians. Use it to get the angle from an angle's sine in "
"hyperbolic space.\n"
"[codeblock]\n"
"var a = asinh(0.9) # Returns 0.8088669356527824\n"
"sinh(a) # Returns 0.9\n"
"[/codeblock]"
msgstr ""
"Renvoie l'arc sinus hyperbolique (aussi appelé sinus hyperbolique inverse) de "
"[param x], renvoyant une valeur en radians. Utilisez la pour obtenir l'angle "
"depuis un sinus d'angle dans l'espace hyperbolique.\n"
"[codeblock]\n"
"var a = asinh(0.9) # Renvoie 0.8088669356527824\n"
"sinh(a) # Renvoie 0.9\n"
"[/codeblock]"

msgid ""
"Returns the arc tangent of [param x] in radians. Use it to get the angle from "
"an angle's tangent in trigonometry.\n"
"The method cannot know in which quadrant the angle should fall. See [method "
"atan2] if you have both [code]y[/code] and [code skip-lint]x[/code].\n"
"[codeblock]\n"
"var a = atan(0.5) # a is 0.463648\n"
"[/codeblock]\n"
"If [param x] is between [code]-PI / 2[/code] and [code]PI / 2[/code] "
"(inclusive), [code]atan(tan(x))[/code] is equal to [param x]."
msgstr ""
"Renvoie la tangente inverse de [param x] en radians. Utilisez ceci pour "
"obtenir l'angle à partir de la tangente d'un angle en trigonométrie.\n"
"La méthode ne peut pas savoir dans quel quart de cercle l'angle doit se "
"situer. Voir [method atan2] si vous avez à la fois [code]y[/code] et [code "
"skip-lint]x[/code].\n"
"[codeblock]\n"
"var a = atan(0.5) # a vaut 0.463648\n"
"[/codeblock]\n"
"Si [param x] est entre [code]-PI / 2[/code] et [code]PI / 2[/code] "
"(inclusif), [code]atan(tan(x))[/code] est égal à [param x]."

msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"var a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
"Renvoie la tangente inverse de [code]y/x[/code] en radians. Utilisez ceci "
"pour obtenir l'angle de la tangente [code]y/x[/code]. Pour calculer la "
"valeur, la méthode prend en compte le signe des deux arguments afin de "
"déterminer l'arc de cercle.\n"
"Note importante : La coordonnée Y est en premier, par convention.\n"
"[codeblock]\n"
"a = atan2(0, -1) # a vaut 3.141593\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic arc (also called inverse) tangent of [param x], "
"returning a value in radians. Use it to get the angle from an angle's tangent "
"in hyperbolic space if [param x] is between -1 and 1 (non-inclusive).\n"
"In mathematics, the inverse hyperbolic tangent is only defined for -1 < "
"[param x] < 1 in the real set, so values equal or lower to -1 for [param x] "
"return negative [constant @GDScript.INF] and values equal or higher than 1 "
"return positive [constant @GDScript.INF] in order to prevent [method atanh] "
"from returning [constant @GDScript.NAN].\n"
"[codeblock]\n"
"var a = atanh(0.9) # Returns 1.47221948958322\n"
"tanh(a) # Returns 0.9\n"
"\n"
"var b = atanh(-2) # Returns -inf\n"
"tanh(b) # Returns -1\n"
"[/codeblock]"
msgstr ""
"Renvoie l'arc hyperbolique tangent (également appelé tangente hyperbolique "
"inverse) de [param x], renvoyant une valeur en radians. Utilisez-le pour "
"obtenir l'angle de la tangente d'un angle dans l'espace hyperbolique si "
"[param x] est compris entre -1 et 1 (non inclus).\n"
"En mathématiques, la tangente hyperbolique inverse n'est définie que pour -1 "
"< [param x] < 1 dans l'ensemble réel, donc les valeurs égales ou inférieures "
"à -1 pour [param x] renvoient une [constant @GDScript.INF] négative et des "
"valeurs égales ou supérieur à 1 renvoie une [constant @GDScript.INF] positive "
"afin d'empêcher [method atanh] de renvoyer [constant @GDScript.NAN].\n"
"[codeblock]\n"
"var a = atanh(0.9) # Renvoie 1,47221948958322\n"
"tanh(a) # Renvoie 0,9\n"
"\n"
"var b = atanh(-2) # Renvoie -inf\n"
"tanh(b) # Renvoie -1\n"
"[/codeblock]"

msgid ""
"Returns the derivative at the given [param t] on a one-dimensional "
"[url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] "
"defined by the given [param control_1], [param control_2], and [param end] "
"points."
msgstr ""
"Renvoie la dérivée au paramètre [param t] dans une [url=https://"
"fr.wikipedia.org/wiki/Courbe_de_B%C3%A9zier]courbe de Bézier[/url] "
"unidimensionnelle donnée par les points [param control_1],[param control_2] "
"et [param end]."

msgid ""
"Returns the point at the given [param t] on a one-dimensional [url=https://"
"en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by the "
"given [param control_1], [param control_2], and [param end] points."
msgstr ""
"Renvoie le point au paramètre [param t] dans une [url=https://"
"fr.wikipedia.org/wiki/Courbe_de_B%C3%A9zier]courbe de Bézier[/url] "
"unidimensionnelle donnée par les points [param control_1],[param control_2] "
"et [param end]."

msgid ""
"Decodes a byte array back to a [Variant] value, without decoding objects.\n"
"[b]Note:[/b] If you need object deserialization, see [method "
"bytes_to_var_with_objects]."
msgstr ""
"Décode un tableau d'octets en une valeur [Variant], sans décoder les objets.\n"
"[b]Remarque :[/b] Si vous avez besoin d'une désérialisation d'objet, "
"consultez [method bytes_to_var_with_objects]."

msgid ""
"Decodes a byte array back to a [Variant] value. Decoding objects is allowed.\n"
"[b]Warning:[/b] Deserialized object can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats (remote code execution)."
msgstr ""
"Décode un tableau d'octets pour le ramener à une valeur [Variant]. Le "
"décodage d'objets est autorisé.\n"
"[b]Attention :[/b] L'objet désérialisé peut contenir du code qui sera "
"exécuté. N'utilisez pas cette option si l'objet désérialisé provient de "
"sources non fiables afin d'éviter d'éventuelles menaces de sécurité "
"(exécution de code distant)."

msgid ""
"Rounds [param x] upward (towards positive infinity), returning the smallest "
"whole number that is not less than [param x]. Supported types: [int], "
"[float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], "
"[Vector4i].\n"
"[codeblock]\n"
"var i = ceil(1.45) # i is 2.0\n"
"i = ceil(1.001)    # i is 2.0\n"
"[/codeblock]\n"
"See also [method floor], [method round], and [method snapped].\n"
"[b]Note:[/b] For better type safety, use [method ceilf], [method ceili], "
"[method Vector2.ceil], [method Vector3.ceil], or [method Vector4.ceil]."
msgstr ""
"Arrondit [param x] au supérieur (vers l'infini positif), renvoyant la plus "
"petite valeur entière qui n'est pas inférieure à [param x]. Les types "
"supportés sont : [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"var i = ceil(1.45)  # i vaut 2.0\n"
"i = ceil(1.001) # i vaut 2.0\n"
"[/codeblock]\n"
"Voir aussi [method floor], [method round], and [method snapped].\n"
"[b]Note : [/b] Pour une meilleure sûreté du typage, utilisez [method ceilf], "
"[method ceili], [method Vector2.ceil], [method Vector3.ceil], ou [method "
"Vector4.ceil]."

msgid ""
"Rounds [param x] upward (towards positive infinity), returning the smallest "
"whole number that is not less than [param x].\n"
"A type-safe version of [method ceil], returning a [float]."
msgstr ""
"Arrondit [param x] au supérieur (vers l'infini positif), renvoyant la plus "
"petite valeur entière qui n'est pas inférieure à [param x].\n"
"Une version \"type-safe\" de [method ceil], renvoyant un [float]."

msgid ""
"Rounds [param x] upward (towards positive infinity), returning the smallest "
"whole number that is not less than [param x].\n"
"A type-safe version of [method ceil], returning an [int]."
msgstr ""
"Arrondit [param x] au supérieur (vers l'infini positif), renvoyant la plus "
"petite valeur entière qui n'est pas inférieure à [param x].\n"
"Une version sure de typage de la [method ceil], renvoyant un [int]."

msgid ""
"Clamps the [param value], returning a [Variant] not less than [param min] and "
"not more than [param max]. Any values that can be compared with the less than "
"and greater than operators will work.\n"
"[codeblock]\n"
"var a = clamp(-10, -1, 5)\n"
"# a is -1\n"
"\n"
"var b = clamp(8.1, 0.9, 5.5)\n"
"# b is 5.5\n"
"[/codeblock]\n"
"[b]Note:[/b] For better type safety, use [method clampf], [method clampi], "
"[method Vector2.clamp], [method Vector2i.clamp], [method Vector3.clamp], "
"[method Vector3i.clamp], [method Vector4.clamp], [method Vector4i.clamp], or "
"[method Color.clamp] (not currently supported by this method).\n"
"[b]Note:[/b] When using this on vectors it will [i]not[/i] perform component-"
"wise clamping, and will pick [param min] if [code]value < min[/code] or "
"[param max] if [code]value > max[/code]. To perform component-wise clamping "
"use the methods listed above."
msgstr ""
"Borne la valeur [param value], renvoyant un [Variant] non inférieur à [param "
"min] et non supérieur à [param max]. Toutes les valeurs pouvant être "
"comparées avec les opérateurs inférieur à et supérieur à fonctionneront.\n"
"[codeblock]\n"
"var a = clamp(-10, -1, 5)\n"
"# a vaut -1\n"
"\n"
"var b = clamp(8.1, 0.9, 5.5)\n"
"#b vaut 5,5\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Pour une meilleure sûreté du typage, utilisez [method "
"clampf], [method clampi], [method Vector2.clamp], [method Vector2i.clamp], "
"[method Vector3.clamp], [method Vector3i.clamp], [method Vector4.clamp], "
"[method Vector4i.clamp] ou [method Color.clamp] (actuellement non prise en "
"charge par cette méthode).\n"
"[b]Remarque :[/b] Lors de l'utilisation de ceci sur des vecteurs, il "
"n'effectuera [i]pas[/i] un bornage par composant et sélectionnera [param min] "
"si [code]value < min[/code] ou [param max] si [code]valeur > max[/code]. Pour "
"effectuer un bornage par composant, utilisez les méthodes répertoriées ci-"
"dessus."

msgid ""
"Clamps the [param value], returning a [float] not less than [param min] and "
"not more than [param max].\n"
"[codeblock]\n"
"var speed = 42.1\n"
"var a = clampf(speed, 1.0, 20.5) # a is 20.5\n"
"\n"
"speed = -10.0\n"
"var b = clampf(speed, -1.0, 1.0) # b is -1.0\n"
"[/codeblock]"
msgstr ""
"Borne une valeur [param value] et renvoie un [float] compris entre [param "
"min] et [param max].\n"
"[codeblock]\n"
"var speed = 42.1\n"
"var a = clampf(speed, 1.0, 20.5) # a vaut 20.5\n"
"\n"
"speed = -10.0\n"
"var b = clampf(speed, -1.0, 1.0) # b vaut -1.0\n"
"[/codeblock]"

msgid ""
"Clamps the [param value], returning an [int] not less than [param min] and "
"not more than [param max].\n"
"[codeblock]\n"
"var speed = 42\n"
"var a = clampi(speed, 1, 20) # a is 20\n"
"\n"
"speed = -10\n"
"var b = clampi(speed, -1, 1) # b is -1\n"
"[/codeblock]"
msgstr ""
"Borne une valeur [param value] et renvoie un [int] compris entre [param min] "
"et [param max].\n"
"[codeblock]\n"
"var speed = 42\n"
"var a = clampi(speed, 1, 20) # a vaut 20\n"
"\n"
"speed = -10\n"
"var b = clampi(speed, -1, 1) # b vaut -1\n"
"[/codeblock]"

msgid ""
"Returns the cosine of angle [param angle_rad] in radians.\n"
"[codeblock]\n"
"cos(PI * 2)         # Returns 1.0\n"
"cos(PI)             # Returns -1.0\n"
"cos(deg_to_rad(90)) # Returns 0.0\n"
"[/codeblock]"
msgstr ""
"Renvoie le cosinus de l'angle [param angle_rad] en radians.\n"
"[codeblock]\n"
"cos(PI * 2)         # Renvoie 1.0\n"
"cos(PI)             # Renvoie -1.0\n"
"cos(deg_to_rad(90)) # Renvoie 0.0\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic cosine of [param x] in radians.\n"
"[codeblock]\n"
"print(cosh(1)) # Prints 1.543081\n"
"[/codeblock]"
msgstr ""
"Renvoie le cosinus hyperbolique de [param x] en radians.\n"
"[codeblock]\n"
"print(cosh(1)) # Renvoie 1.543081\n"
"[/codeblock]"

msgid ""
"Cubic interpolates between two values by the factor defined in [param weight] "
"with [param pre] and [param post] values."
msgstr ""
"Réalise une interpolation cubique entre deux valeurs par le facteur défini "
"dans [param weight] avec les valeurs [param pre] et [param post]."

msgid ""
"Cubic interpolates between two rotation values with shortest path by the "
"factor defined in [param weight] with [param pre] and [param post] values. "
"See also [method lerp_angle]."
msgstr ""
"Réalise une interpolation cubique entre deux valeurs de rotation par le "
"chemin le plus court par le facteur défini dans [param weight] avec les "
"valeurs [param pre] et [param post]. Voir aussi [method lerp_angle]."

msgid ""
"Cubic interpolates between two rotation values with shortest path by the "
"factor defined in [param weight] with [param pre] and [param post] values. "
"See also [method lerp_angle].\n"
"It can perform smoother interpolation than [method cubic_interpolate] by the "
"time values."
msgstr ""
"Réalise une interpolation cubique entre deux valeurs de rotation par le "
"chemin le plus court par le facteur défini dans [param weight] avec les "
"valeurs [param pre] et [param post]. Voir aussi [method lerp_angle].\n"
"Elle peut effectuer une interpolation plus lisse que [method "
"cubic_interpolate] par les valeurs temporelles."

msgid ""
"Cubic interpolates between two values by the factor defined in [param weight] "
"with [param pre] and [param post] values.\n"
"It can perform smoother interpolation than [method cubic_interpolate] by the "
"time values."
msgstr ""
"Réalise une interpolation cubique entre deux valeurs par le facteur défini "
"dans [param weight] avec les valeurs [param pre] et [param post].\n"
"Il peut effectuer une interpolation plus fluide que [method "
"cubic_interpolate] pour les valeurs temporelles."

msgid "Converts from decibels to linear energy (audio)."
msgstr "Convertit les décibels en énergie linéaire (audio)."

msgid ""
"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"var r = deg_to_rad(180) # r is 3.141593\n"
"[/codeblock]"
msgstr ""
"Convertit un angle en degrés vers sa valeur en radians.\n"
"[codeblock]\n"
"var r = deg2rad(180) # r vaut 3.141593\n"
"[/codeblock]"

msgid ""
"Returns an \"eased\" value of [param x] based on an easing function defined "
"with [param curve]. This easing function is based on an exponent. The [param "
"curve] can be any floating-point number, with specific values leading to the "
"following behaviors:\n"
"[codeblock lang=text]\n"
"- Lower than -1.0 (exclusive): Ease in-out\n"
"- -1.0: Linear\n"
"- Between -1.0 and 0.0 (exclusive): Ease out-in\n"
"- 0.0: Constant\n"
"- Between 0.0 to 1.0 (exclusive): Ease out\n"
"- 1.0: Linear\n"
"- Greater than 1.0 (exclusive): Ease in\n"
"[/codeblock]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n"
"See also [method smoothstep]. If you need to perform more advanced "
"transitions, use [method Tween.interpolate_value]."
msgstr ""
"Renvoie une valeur \"assouplie\" de [param x] sur la base d'une fonction "
"d'assouplissement définie avec la courbe [param curve]. Cette fonction "
"d'assouplissement est basée sur un exposant. La courbe [param curve] peut "
"être un nombre à virgule flottante, avec des valeurs spécifiques conduisant "
"aux comportements suivants :\n"
"[codeblock = text]\n"
"- Inférieur à -1.0 (exclus) : Plus lent au début et à la fin (\"ease in-"
"out\")\n"
"- 1.0 : Linéaire\n"
"- Entre -1.0 et 0.0 (exclus) : Plus rapide au début et à la fin (\"ease out-"
"in\")\n"
"- 0.0 : Constant\n"
"- Entre 0.0 et 1.0 (exclus) : Plus lent au début (\"ease in\")\n"
"- 1.0 : Linéaire\n"
"- Supérieur à 1.0 (exclus) : Plus lent à la fin (\"ease out\")\n"
"[/codeblock]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"ease_cheatsheet.png]L'aide-mémoire des valeurs de la courbe de ease()[/url]\n"
"Voir également [method smoothstep]. Si vous avez besoin de réaliser des "
"transitions plus avancées, utilisez [method Tween.interpolate_value]."

msgid ""
"Returns a human-readable name for the given [enum Error] code.\n"
"[codeblock]\n"
"print(OK)                              # Prints 0\n"
"print(error_string(OK))                # Prints \"OK\"\n"
"print(error_string(ERR_BUSY))          # Prints \"Busy\"\n"
"print(error_string(ERR_OUT_OF_MEMORY)) # Prints \"Out of memory\"\n"
"[/codeblock]"
msgstr ""
"Renvoie un nom facilement lisible pour le code d'[enum Error] donné.\n"
"[codeblock]\n"
"print(OK)                                                                        "
"# Affiche 0\n"
"print(error_string(OK))                                            # Affiche "
"OK\n"
"print(error_string(ERR_BUSY))                            # Affiche Busy\n"
"print(error_string(ERR_OUT_OF_MEMORY)) # Affiche \"Mémoire insuffisante\"\n"
"[/codeblock]"

msgid ""
"The natural exponential function. It raises the mathematical constant [i]e[/"
"i] to the power of [param x] and returns it.\n"
"[i]e[/i] has an approximate value of 2.71828, and can be obtained with "
"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"var a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
"La fonction exponentielle. Elle élève la constante mathématique [i]e[/i] à la "
"puissance [param x] et la renvoie.\n"
"[i]e[/i] a une valeur approximative de 2,71828, et peut être obtenue avec "
"[code]exp(1)[/code].\n"
"Pour les exposants à d'autres bases, utilisez la méthode [method pow].\n"
"[codeblock]\n"
"a = exp(2) # Environ 7.39\n"
"[/codeblock]"

msgid ""
"Rounds [param x] downward (towards negative infinity), returning the largest "
"whole number that is not more than [param x]. Supported types: [int], "
"[float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], "
"[Vector4i].\n"
"[codeblock]\n"
"var a = floor(2.99) # a is 2.0\n"
"a = floor(-2.99)    # a is -3.0\n"
"[/codeblock]\n"
"See also [method ceil], [method round], and [method snapped].\n"
"[b]Note:[/b] For better type safety, use [method floorf], [method floori], "
"[method Vector2.floor], [method Vector3.floor], or [method Vector4.floor]."
msgstr ""
"Arrondit [param x] à l'inférieur (vers l'infini négatif), renvoyant le plus "
"grand nombre entier qui n'est pas supérieur à [param x]. Les types supportés "
"sont : [int], [float], [Vector2], [Vector2i], [Vector3], [Vector3i], "
"[Vector4], [Vector4i].\n"
"[codeblock]\n"
"var a = floor(2.99) # a vaut 2,0\n"
"a = floor(-2.99)    # a vaut -3,0\n"
"[/codeblock]\n"
"Voir aussi [method ceil], [method round], et [method snapped].\n"
"[b]Remarque :[/b] Pour une meilleure sûreté du typage, utilisez [method "
"floorf], [method floori], [method Vector2.floor], [method Vector3.floor], ou "
"[method Vector4.floor]."

msgid ""
"Rounds [param x] downward (towards negative infinity), returning the largest "
"whole number that is not more than [param x].\n"
"A type-safe version of [method floor], returning a [float]."
msgstr ""
"Arrondit [param x] vers le bas (direction -infini), renvoie le plus grand "
"nombre entier qui est plus petit que [param x].\n"
"Une version sécurisée de [method floor] qui renvoie un [float]."

msgid ""
"Rounds [param x] downward (towards negative infinity), returning the largest "
"whole number that is not more than [param x].\n"
"A type-safe version of [method floor], returning an [int].\n"
"[b]Note:[/b] This function is [i]not[/i] the same as [code]int(x)[/code], "
"which rounds towards 0."
msgstr ""
"Arrondit [param x] vers le bas (en direction -infinie), renvoie le plus grand "
"nombre entier plus petit que [param x].\n"
"Une version sécurisée de la [method floor], renvoyant un [int].\n"
"[b]Note :[/b] Cette fonction n'est [i]pas[/i] la même que [code]int(x)[/"
"code], qui arrondit vers 0."

msgid ""
"Returns the floating-point remainder of [param x] divided by [param y], "
"keeping the sign of [param x].\n"
"[codeblock]\n"
"var remainder = fmod(7, 5.5) # remainder is 1.5\n"
"[/codeblock]\n"
"For the integer remainder operation, use the [code]%[/code] operator."
msgstr ""
"Renvoie le reste en virgule flottante de [param x] divisé par [param y], en "
"gardant le signe de [param x].\n"
"[codeblock]\n"
"var reste = fmod(7, 5.5) # reste vaut 1.5\n"
"[/codeblock]\n"
"Pour l'opération de reste entier, utilisez l'opérateur [code]%[/code]."

msgid ""
"Returns the floating-point modulus of [param x] divided by [param y], "
"wrapping equally in positive and negative.\n"
"[codeblock]\n"
"print(\" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\")\n"
"for i in 7:\n"
"\tvar x = i * 0.5 - 1.5\n"
"\tprint(\"%4.1f           %4.1f  | %4.1f\" % [x, fmod(x, 1.5), fposmod(x, "
"1.5)])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\n"
"-1.5           -0.0  |  0.0\n"
"-1.0           -1.0  |  0.5\n"
"-0.5           -0.5  |  1.0\n"
" 0.0            0.0  |  0.0\n"
" 0.5            0.5  |  0.5\n"
" 1.0            1.0  |  1.0\n"
" 1.5            0.0  |  0.0\n"
"[/codeblock]"
msgstr ""
"Renvoie le modulo en virgule flottante de [param x] divisé par [param y] qui "
"reboucle de manière égale en positif et en négatif.\n"
"[codeblock]\n"
"print(\" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\")\n"
"for i in 7:\n"
"\tvar x = i * 0.5 - 1.5\n"
"\tprint(\"%4.1f           %4.1f  | %4.1f\" % [x, fmod(x, 1.5), fposmod(x, "
"1.5)])\n"
"[/codeblock]\n"
"Affiche :\n"
"[codeblock lang=text]\n"
" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\n"
"-1.5           -0.0  |  0.0\n"
"-1.0           -1.0  |  0.5\n"
"-0.5           -0.5  |  1.0\n"
" 0.0            0.0  |  0.0\n"
" 0.5            0.5  |  0.5\n"
" 1.0            1.0  |  1.0\n"
" 1.5            0.0  |  0.0\n"
"[/codeblock]"

msgid ""
"Returns the integer hash of the passed [param variable].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(hash(\"a\")) # Prints 177670\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(GD.Hash(\"a\")); // Prints 177670\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le hachage entier de la [param variable] passée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(hash(\"a\")) # Affiche 177670\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(GD.Hash(\"a\")); // Affiche 177670\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the [Object] that corresponds to [param instance_id]. All Objects "
"have a unique instance ID. See also [method Object.get_instance_id].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var drink = \"water\"\n"
"\n"
"func _ready():\n"
"\tvar id = get_instance_id()\n"
"\tvar instance = instance_from_id(id)\n"
"\tprint(instance.foo) # Prints \"water\"\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tpublic string Drink { get; set; } = \"water\";\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tulong id = GetInstanceId();\n"
"\t\tvar instance = (MyNode)InstanceFromId(Id);\n"
"\t\tGD.Print(instance.Drink); // Prints \"water\"\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie l'objet [Object] correspondant à l'[param instance_id]. Tous les "
"Objects ont un identifiant d'instance unique. Voir aussi [method "
"Object.get_instance_id].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var boisson= \"eau\"\n"
"\n"
"func _ready():\n"
"\tvar id = get_instance_id()\n"
"\tvar instance = instance_from_id(id)\n"
"\tprint(instance.foo) # Affiche \"eau\"\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class MonNoeud : Node\n"
"{\n"
"\tpublic string Boisson { get; set; } = \"eau\";\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tulong id = GetInstanceId();\n"
"\t\tvar instance = (MonNoeud)InstanceFromId(Id);\n"
"\t\tGD.Print(instance.Boisson); // Affiche \"eau\"\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns an interpolation or extrapolation factor considering the range "
"specified in [param from] and [param to], and the interpolated value "
"specified in [param weight]. The returned value will be between [code]0.0[/"
"code] and [code]1.0[/code] if [param weight] is between [param from] and "
"[param to] (inclusive). If [param weight] is located outside this range, then "
"an extrapolation factor will be returned (return value lower than [code]0.0[/"
"code] or greater than [code]1.0[/code]). Use [method clamp] on the result of "
"[method inverse_lerp] if this is not desired.\n"
"[codeblock]\n"
"# The interpolation ratio in the `lerp()` call below is 0.75.\n"
"var middle = lerp(20, 30, 0.75)\n"
"# middle is now 27.5.\n"
"\n"
"# Now, we pretend to have forgotten the original ratio and want to get it "
"back.\n"
"var ratio = inverse_lerp(20, 30, 27.5)\n"
"# ratio is now 0.75.\n"
"[/codeblock]\n"
"See also [method lerp], which performs the reverse of this operation, and "
"[method remap] to map a continuous series of values to another."
msgstr ""
"Renvoie un facteur d'interpolation ou d'extrapolation suivant l'intervalle "
"spécifié dans [param from] et [param to], et la valeur interpolée spécifiée "
"par [param weight]. La valeur renvoyée sera entre [code]0.0[/code] et "
"[code]1.0[/code] si [param weight] est entre [param from] et [param to] "
"(inclus). Si [param weight] se trouve en dehors de cet intervalle, un facteur "
"d'extrapolation sera renvoyé (une valeur inférieure à [code]0.0[/code] ou "
"supérieure à [code]1.0[/code]). Utilisez [method clamp] sur le résultat de "
"[method inverse_lerp] si cela n'est pas souhaité.\n"
"[codeblock]\n"
"# Le facteur d'interpolation de cet appel à `lerp()` ci-dessous est de 0.75.\n"
"var milieu= lerp(20, 30, 0.75)\n"
"# milieu vaut maintenant 27.5.\n"
"\n"
"# Admettons maintenant que l'on ait oublié le facteur d'interpolation "
"original et que l'on veut le calculer.\n"
"var ratio = inverse_lerp(20, 30, 27.5)\n"
"# ratio vaut maintenant 0.75.\n"
"[/codeblock]\n"
"Voir aussi [method lerp] qui fait l'opération inverse et [method remap] qui "
"fait correspondre une série de valeurs continues à une autre."

msgid ""
"Returns [code]true[/code] if [param a] and [param b] are approximately equal "
"to each other.\n"
"Here, \"approximately equal\" means that [param a] and [param b] are within a "
"small internal epsilon of each other, which scales with the magnitude of the "
"numbers.\n"
"Infinity values of the same sign are considered equal."
msgstr ""
"Renvoie [code]true[/code] si [param a] et [param b] sont à peu près égaux.\n"
"Ici, \"à peu près égaux\" signifie que [param a] et [param b] diffèrent d'une "
"petite valeur interne notée epsilon, qui étant ajustée en fonction de la "
"grandeur des nombres. \n"
"Deux valeurs infinies du même signe sont considérées comme égales."

msgid ""
"Returns whether [param x] is a finite value, i.e. it is not [constant "
"@GDScript.NAN], positive infinity, or negative infinity. See also [method "
"is_inf] and [method is_nan]."
msgstr ""
"Renvoie si [param x] est une valeur finie, c.a.d. n'est pas [constant "
"@GDScript.NAN], infini positif ou infini négatif. Voir aussi [method is_inf] "
"et [method is_nan]."

msgid ""
"Returns [code]true[/code] if [param x] is either positive infinity or "
"negative infinity. See also [method is_finite] and [method is_nan]."
msgstr ""
"Renvoie [code]true[/code] si [param x] est une valeur infinie positive ou "
"infinie négative. Voir aussi [method is_finite] et [method is_nan]."

msgid ""
"Returns [code]true[/code] if the Object that corresponds to [param id] is a "
"valid object (e.g. has not been deleted from memory). All Objects have a "
"unique instance ID."
msgstr ""
"Renvoie [code]true[/code] si l'Object qui correspond à [param id] est un "
"objet valide (par ex. s'il n'a pas été supprimé de la mémoire). Tous les "
"Objects ont un identifiant d'instance unique."

msgid ""
"Returns [code]true[/code] if [param instance] is a valid Object (e.g. has not "
"been deleted from memory)."
msgstr ""
"Renvoie [code]true[/code] si [param instance] est un [Object] valide (par ex. "
"s'il n'a pas été supprimé de la mémoire)."

msgid ""
"Returns [code]true[/code] if [param x] is a NaN (\"Not a Number\" or invalid) "
"value. This method is needed as [constant @GDScript.NAN] is not equal to "
"itself, which means [code]x == NAN[/code] can't be used to check whether a "
"value is a NaN."
msgstr ""
"Renvoie [code]true[/code] si [param x] est une valeur NaN (« Not a Number » "
"ou invalide). Cette méthode est nécessaire car [constant @GDScript.NAN] n'est "
"pas égal à lui-même, ce qui signifie que [code]x == NAN[/code] ne peut pas "
"être utilisé pour vérifier si une valeur est un NaN."

msgid ""
"Returns [code]true[/code], for value types, if [param a] and [param b] share "
"the same value. Returns [code]true[/code], for reference types, if the "
"references of [param a] and [param b] are the same.\n"
"[codeblock]\n"
"# Vector2 is a value type\n"
"var vec2_a = Vector2(0, 0)\n"
"var vec2_b = Vector2(0, 0)\n"
"var vec2_c = Vector2(1, 1)\n"
"is_same(vec2_a, vec2_a)  # true\n"
"is_same(vec2_a, vec2_b)  # true\n"
"is_same(vec2_a, vec2_c)  # false\n"
"\n"
"# Array is a reference type\n"
"var arr_a = []\n"
"var arr_b = []\n"
"is_same(arr_a, arr_a)  # true\n"
"is_same(arr_a, arr_b)  # false\n"
"[/codeblock]\n"
"These are [Variant] value types: [code]null[/code], [bool], [int], [float], "
"[String], [StringName], [Vector2], [Vector2i], [Vector3], [Vector3i], "
"[Vector4], [Vector4i], [Rect2], [Rect2i], [Transform2D], [Transform3D], "
"[Plane], [Quaternion], [AABB], [Basis], [Projection], [Color], [NodePath], "
"[RID], [Callable] and [Signal].\n"
"These are [Variant] reference types: [Object], [Dictionary], [Array], "
"[PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array], [PackedFloat64Array], [PackedStringArray], "
"[PackedVector2Array], [PackedVector3Array], [PackedVector4Array], and "
"[PackedColorArray]."
msgstr ""
"Renvoie [code]true[/code], pour les types valeur, si [param a] et [param b] "
"partagent la même valeur. Renvoie [code]true[/code], pour les types "
"référence, si les références de [param a] et [param b] sont les mêmes.\n"
"[codeblock]\n"
"# Vector2 est un type valeur\n"
"var vec2_a = Vector2(0, 0)\n"
"var vec2_b = Vector2(0, 0)\n"
"var vec2_c = Vector2(1, 1)\n"
"is_same(vec2_a, vec2_a) # true\n"
"is_same(vec2_a, vec2_b) # true\n"
"is_same(vec2_a, vec2_c) # false\n"
"\n"
"# Array est un type référence\n"
"var arr_a = []\n"
"var arr_b = []\n"
"is_same(arr_a, arr_a) # true\n"
"is_same(arr_a, arr_b) # false\n"
"[/codeblock]\n"
"Ceci sont des types valeur de [Variant] : [code]null[/code], [bool], [int], "
"[float], [String], [StringName], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i], [Rect2], [Rect2i], [Transform2D], "
"[Transform3D], [Plane], [Quaternion], [AABB], [Basis], [Projection], [Color], "
"[NodePath], [RID], [Callable] et [Signal].\n"
"Ceux-là sont des types référence de [Variant] : [Object], [Dictionary], "
"[Array], [PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array], [PackedFloat64Array], [PackedStringArray], "
"[PackedVector2Array], [PackedVector3Array], [PackedVector4Array] et "
"[PackedColorArray]."

msgid ""
"Returns [code]true[/code] if [param x] is zero or almost zero. The comparison "
"is done using a tolerance calculation with a small internal epsilon.\n"
"This function is faster than using [method is_equal_approx] with one value as "
"zero."
msgstr ""
"Renvoie [code]true[/code] si [param x] vaut zéro ou quasiment zéro. La "
"comparaison est faite en utilisant une tolérance de calcul avec un petit "
"epsilon interne.\n"
"Cette méthode est plus rapide que [method is_equal_approx] avec une valeur "
"nulle."

msgid ""
"Linearly interpolates between two values by the factor defined in [param "
"weight]. To perform interpolation, [param weight] should be between "
"[code]0.0[/code] and [code]1.0[/code] (inclusive). However, values outside "
"this range are allowed and can be used to perform [i]extrapolation[/i]. If "
"this is not desired, use [method clampf] to limit [param weight].\n"
"Both [param from] and [param to] must be the same type. Supported types: "
"[int], [float], [Vector2], [Vector3], [Vector4], [Color], [Quaternion], "
"[Basis], [Transform2D], [Transform3D].\n"
"[codeblock]\n"
"lerp(0, 4, 0.75) # Returns 3.0\n"
"[/codeblock]\n"
"See also [method inverse_lerp] which performs the reverse of this operation. "
"To perform eased interpolation with [method lerp], combine it with [method "
"ease] or [method smoothstep]. See also [method remap] to map a continuous "
"series of values to another.\n"
"[b]Note:[/b] For better type safety, use [method lerpf], [method "
"Vector2.lerp], [method Vector3.lerp], [method Vector4.lerp], [method "
"Color.lerp], [method Quaternion.slerp], [method Basis.slerp], [method "
"Transform2D.interpolate_with], or [method Transform3D.interpolate_with]."
msgstr ""
"Effectue une interpolation linéaire entre deux valeurs par un facteur défini "
"dans [param weight]. Pour effectuer l'interpolation, [param weight] devrait "
"se situer entre [code]0.0[/code] et [code]1.0[/code] (inclus). Pour autant, "
"des valeurs en dehors de cet intervalle sont autorisées pour effectuer une "
"[i]extrapolation[/i]. Si cela n'est pas souhaité, utilisez [method clampf] "
"pour limiter [param weight].\n"
"Les arguments [param from] et [param to] doivent être du même type. Types "
"supportés : [int], [float], [Vector2], [Vector3], [Vector4], [Color], "
"[Quaternion], [Basis], [Transform2D], [Transform3D].\n"
"[codeblock]\n"
"lerp(0, 4, 0.75) # Renvoie 3.0\n"
"[/codeblock]\n"
"Voir aussi [method inverse_lerp] qui effectue l'opération inverse. Pour "
"effectuer une interpolation adoucie avec [method lerp], combinez l'appel avec "
"[method ease] ou [method smoothstep]. Voir aussi [method remap] pour faire "
"correspondre une série de valeurs continues à une autre.\n"
"[b]Note :[/b] Pour une meilleure sûreté du typage, utilisez [method lerpf], "
"[method Vector2.lerp], [method Vector3.lerp], [method Vector4.lerp], [method "
"Color.lerp], [method Quaternion.slerp], [method Basis.slerp], [method "
"Transform2D.interpolate_with], ou [method Transform3D.interpolate_with]."

msgid ""
"Linearly interpolates between two angles (in radians) by a [param weight] "
"value between 0.0 and 1.0.\n"
"Similar to [method lerp], but interpolates correctly when the angles wrap "
"around [constant @GDScript.TAU]. To perform eased interpolation with [method "
"lerp_angle], combine it with [method ease] or [method smoothstep].\n"
"[codeblock]\n"
"extends Sprite\n"
"var elapsed = 0.0\n"
"func _process(delta):\n"
"\tvar min_angle = deg_to_rad(0.0)\n"
"\tvar max_angle = deg_to_rad(90.0)\n"
"\trotation = lerp_angle(min_angle, max_angle, elapsed)\n"
"\telapsed += delta\n"
"[/codeblock]\n"
"[b]Note:[/b] This function lerps through the shortest path between [param "
"from] and [param to]. However, when these two angles are approximately "
"[code]PI + k * TAU[/code] apart for any integer [code]k[/code], it's not "
"obvious which way they lerp due to floating-point precision errors. For "
"example, [code]lerp_angle(0, PI, weight)[/code] lerps counter-clockwise, "
"while [code]lerp_angle(0, PI + 5 * TAU, weight)[/code] lerps clockwise."
msgstr ""
"Interpolation linéaire entre deux angles (en radians) par une valeur "
"normalisée.\n"
"Similaire à [method lerp], mais interpole correctement lorsque les angles "
"proches de [constant @GDScript.TAU]. Pour une interpolation plus douce avec "
"[method lerp_angle], utilisez aussi [method ease] ou [method smoothstep].\n"
"[codeblock]\n"
"extends Sprite\n"
"var elapsed = 0.0\n"
"func _process(delta) :\n"
"\tvar min_angle = deg2rad(0.0)\n"
"\tvar max_angle = deg2rad(90.0)\n"
"\trotation = lerp_angle(min_angle, max_angle, elapsed)\n"
"\telapsed += delta\n"
"[/codeblock]\n"
"[b]Note :[/b] Cette méthode utiliser une interpolation avec le chemin le plus "
"court entre [param from] et [param to]. Par contre, si ces deux angles sont "
"approximativement [code]PI + k * TAU[/code] l'un de l'autre pour n'importe "
"quel entier [code]k[/code], l'interpolation n'est pas évidente à cause des "
"erreurs de précision des flottants. Par exemple, [code]lerp_angle(0, PI, "
"weight)[/code] ira dans le sens anti-horaire, alors que [code]lerp_angle(0, "
"PI + 5 * TAU, weight)[/code] ira dans le sens horaire."

msgid ""
"Linearly interpolates between two values by the factor defined in [param "
"weight]. To perform interpolation, [param weight] should be between "
"[code]0.0[/code] and [code]1.0[/code] (inclusive). However, values outside "
"this range are allowed and can be used to perform [i]extrapolation[/i]. If "
"this is not desired, use [method clampf] on the result of this function.\n"
"[codeblock]\n"
"lerpf(0, 4, 0.75) # Returns 3.0\n"
"[/codeblock]\n"
"See also [method inverse_lerp] which performs the reverse of this operation. "
"To perform eased interpolation with [method lerp], combine it with [method "
"ease] or [method smoothstep]."
msgstr ""
"Effectue une interpolation linéaire entre deux valeurs par un facteur défini "
"dans [param weight]. Pour effectuer l'interpolation, [param weight] se situer "
"entre [code]0.0[/code] et [code]1.0[/code] (inclus). Pour autant, des valeurs "
"en dehors de cet intervalle sont autorisées pour effectuer une "
"[i]extrapolation[/i]. Utilisez [method clampf] sur le résultat de cette "
"fonction si cela n'est pas souhaité.\n"
"[codeblock]\n"
"lerp(0, 4, 0.75) # Renvoie 3.0\n"
"[/codeblock]\n"
"Voir aussi [method inverse_lerp] qui effectue l'opération inverse. Pour "
"effectuer une interpolation adoucie avec [method lerp], combinez l'appel avec "
"[method ease] ou [method smoothstep]."

msgid ""
"Converts from linear energy to decibels (audio). Since volume is not normally "
"linear, this can be used to implement volume sliders that behave as "
"expected.\n"
"[b]Example:[/b] Change the Master bus's volume through a [Slider] node, which "
"ranges from [code]0.0[/code] to [code]1.0[/code]:\n"
"[codeblock]\n"
"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
"linear_to_db($Slider.value))\n"
"[/codeblock]"
msgstr ""
"Convertit l'énergie linéaire en décibels (audio). Comme le volume n'est "
"normalement pas linéaire, cela peut être utilisé pour implémenter des "
"curseurs de volume qui se comportent comme prévu.\n"
"[b]Exemple :[/b] Changez le volume du bus Master grâce à un nœud [Slider] qui "
"va de [code]0.0[/code] à [code]1.0[/code] :\n"
"[codeblock]\n"
"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
"linear_to_db($Slider.value)))\n"
"[/codeblock]"

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Natural_logarithm]natural "
"logarithm[/url] of [param x] (base [url=https://en.wikipedia.org/wiki/"
"E_(mathematical_constant)][i]e[/i][/url], with [i]e[/i] being approximately "
"2.71828). This is the amount of time needed to reach a certain level of "
"continuous growth.\n"
"[b]Note:[/b] This is not the same as the \"log\" function on most "
"calculators, which uses a base 10 logarithm. To use base 10 logarithm, use "
"[code]log(x) / log(10)[/code].\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
"[/codeblock]\n"
"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], while "
"negative values return [code]-nan[/code]."
msgstr ""
"Renvoie le [url=https://fr.wikipedia.org/wiki/"
"Logarithme_n%C3%A9p%C3%A9rien]logarithme naturel (ou népérien)[/url] de "
"[param x] (en base [url=https://fr.wikipedia.org/wiki/E_(nombre)][i]e[/i][/"
"url], avec [i]e[/i] une constante environ égale à 2.71828). Il s'agit du "
"temps nécessaire pour atteindre un certain niveau de croissance continue.\n"
"[b]Note :[/b] Il ne s'agit pas de la même fonction que la fonction \"log\" "
"sur la plupart des calculateurs, qui utilise un logarithme en base 10. Pour "
"utiliser le logarithme en base 10, utilisez [code]log(x) / log(10)[/code].\n"
"[codeblock]\n"
"log(10) # Renvoie 2.302585\n"
"[/codeblock]\n"
"[b]Note :[/b] Le logarithme de [code]0[/code] renvoie [code]-inf[/code], "
"tandis que les valeurs négatives renvoient [code]-nan[/code]."

msgid ""
"Returns the maximum of the given numeric values. This function can take any "
"number of arguments.\n"
"[codeblock]\n"
"max(1, 7, 3, -6, 5) # Returns 7\n"
"[/codeblock]\n"
"[b]Note:[/b] When using this on vectors it will [i]not[/i] perform component-"
"wise maximum, and will pick the largest value when compared using [code]x < "
"y[/code]. To perform component-wise maximum, use [method Vector2.max], "
"[method Vector2i.max], [method Vector3.max], [method Vector3i.max], [method "
"Vector4.max], and [method Vector4i.max]."
msgstr ""
"Renvoie le maximum des valeurs numériques données. Cette fonction peut "
"prendre n'importe quel nombre d'arguments.\n"
"[codeblock]\n"
"max(1, 7, 3, -6, 5) # Renvoie 7\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Lorsque vous utilisez cette fonction sur des vecteurs, elle "
"n'effectuera [i]pas[/i] de maximum par composant et choisira la valeur la "
"plus élevée lors de la comparaison à l'aide de [code]x < y[/code]. Pour "
"effectuer un maximum par composant, utilisez [method Vector2.max], [method "
"Vector2i.max], [method Vector3.max], [method Vector3i.max], [method "
"Vector4.max] et [method Vector4i.max]."

msgid ""
"Returns the maximum of two [float] values.\n"
"[codeblock]\n"
"maxf(3.6, 24)   # Returns 24.0\n"
"maxf(-3.99, -4) # Returns -3.99\n"
"[/codeblock]"
msgstr ""
"Renvoie le maximum entre deux flottants [float].\n"
"[codeblock]\n"
"max(3.6, 24)    # Renvoie 24.0\n"
"max(-3.99, -4) # Renvoie -3.99\n"
"[/codeblock]"

msgid ""
"Returns the maximum of two [int] values.\n"
"[codeblock]\n"
"maxi(1, 2)   # Returns 2\n"
"maxi(-3, -4) # Returns -3\n"
"[/codeblock]"
msgstr ""
"Renvoie le maximum entre deux entiers [int].\n"
"[codeblock]\n"
"max(1, 2)   # Renvoie 2\n"
"max(-3, -4) # Renvoie -3\n"
"[/codeblock]"

msgid ""
"Returns the minimum of the given numeric values. This function can take any "
"number of arguments.\n"
"[codeblock]\n"
"min(1, 7, 3, -6, 5) # Returns -6\n"
"[/codeblock]\n"
"[b]Note:[/b] When using this on vectors it will [i]not[/i] perform component-"
"wise minimum, and will pick the smallest value when compared using [code]x < "
"y[/code]. To perform component-wise minimum, use [method Vector2.min], "
"[method Vector2i.min], [method Vector3.min], [method Vector3i.min], [method "
"Vector4.min], and [method Vector4i.min]."
msgstr ""
"Renvoie le minimum des valeurs numériques données. Cette fonction peut "
"prendre n'importe quel nombre d'arguments.\n"
"[codeblock]\n"
"min(1, 7, 3, -6, 5) # Renvoie -6\n"
"[/codeblock]\n"
"[b]Remarque :[/b] Lorsque vous utilisez cette fonction sur des vecteurs, elle "
"n'effectuera [i]pas[/i] de minimum par composant et choisira la plus petite "
"valeur lors de la comparaison à l'aide de [code]x < y[/code]. Pour effectuer "
"un minimum par composant, utilisez [method Vector2.min], [method "
"Vector2i.min], [method Vector3.min], [method Vector3i.min], [method "
"Vector4.min] et [method Vector4i.min]."

msgid ""
"Returns the minimum of two [float] values.\n"
"[codeblock]\n"
"minf(3.6, 24)   # Returns 3.6\n"
"minf(-3.99, -4) # Returns -4.0\n"
"[/codeblock]"
msgstr ""
"Renvoie le minimum entre deux flottants [float].\n"
"[codeblock]\n"
"min(3.6, 24)    # Renvoie 3.6\n"
"min(-3.99, -4) # Renvoie -4.0\n"
"[/codeblock]"

msgid ""
"Returns the minimum of two [int] values.\n"
"[codeblock]\n"
"mini(1, 2)   # Returns 1\n"
"mini(-3, -4) # Returns -4\n"
"[/codeblock]"
msgstr ""
"Renvoie le minimum entre deux entiers [int].\n"
"[codeblock]\n"
"min(1, 2) # Renvoie 1\n"
"min(-3, -4) # Renvoie -4\n"
"[/codeblock]"

msgid ""
"Moves [param from] toward [param to] by the [param delta] amount. Will not go "
"past [param to].\n"
"Use a negative [param delta] value to move away.\n"
"[codeblock]\n"
"move_toward(5, 10, 4)    # Returns 9\n"
"move_toward(10, 5, 4)    # Returns 6\n"
"move_toward(5, 10, 9)    # Returns 10\n"
"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
"Déplace [param from] vers [param to] du montant [param delta]. Ne dépassera "
"pas [param to].\n"
"Utilisez une valeur [param delta] négative pour vous éloigner.\n"
"[codeblock]\n"
"move_toward(5, 10, 4) # Renvoie 9\n"
"move_toward(10, 5, 4) # Renvoie 6\n"
"move_toward(5, 10, 9) # Renvoie 10\n"
"move_toward(10, 5, -1.5) # Renvoie 11.5\n"
"[/codeblock]"

msgid ""
"Returns the smallest integer power of 2 that is greater than or equal to "
"[param value].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
"\n"
"nearest_po2(0)  # Returns 0 (this may not be expected)\n"
"nearest_po2(-1) # Returns 0 (this may not be expected)\n"
"[/codeblock]\n"
"[b]Warning:[/b] Due to its implementation, this method returns [code]0[/code] "
"rather than [code]1[/code] for values less than or equal to [code]0[/code], "
"with an exception for [param value] being the smallest negative 64-bit "
"integer ([code]-9223372036854775808[/code]) in which case the [param value] "
"is returned unchanged."
msgstr ""
"Renvoie la plus petite puissance de 2 égale ou supérieure à la valeur [param "
"value].\n"
"[codeblock]\n"
"nearest_po2(3) # Renvoie 4\n"
"nearest_po2(4) # Renvoie 4\n"
"nearest_po2(5) # Renvoie 8\n"
"\n"
"nearest_po2(0) # Renvoie 0 (cela pourrait ne pas être la valeur attendue)\n"
"nearest_po2(-1) # Renvoie 0 (cela pourrait ne pas être la valeur attendue)\n"
"[/codeblock]\n"
"[b]Attention :[/b] À cause de la manière dont elle est implémentée, cette "
"fonction renvoie [code]0[/code] plutôt que [code]1[/code] pour des valeurs "
"inférieures ou égales à [code]0[/code], avec une exception lorsque [param "
"value] vaut l'entier 64-bits négatif le plus petit "
"([code]-9223372036854775808[/code]). Dans ce cas, [param value] est renvoyé à "
"l'identique."

msgid ""
"Wraps [param value] between [code]0[/code] and the [param length]. If the "
"limit is reached, the next value the function returns is decreased to the "
"[code]0[/code] side or increased to the [param length] side (like a triangle "
"wave). If [param length] is less than zero, it becomes positive.\n"
"[codeblock]\n"
"pingpong(-3.0, 3.0) # Returns 3.0\n"
"pingpong(-2.0, 3.0) # Returns 2.0\n"
"pingpong(-1.0, 3.0) # Returns 1.0\n"
"pingpong(0.0, 3.0)  # Returns 0.0\n"
"pingpong(1.0, 3.0)  # Returns 1.0\n"
"pingpong(2.0, 3.0)  # Returns 2.0\n"
"pingpong(3.0, 3.0)  # Returns 3.0\n"
"pingpong(4.0, 3.0)  # Returns 2.0\n"
"pingpong(5.0, 3.0)  # Returns 1.0\n"
"pingpong(6.0, 3.0)  # Returns 0.0\n"
"[/codeblock]"
msgstr ""
"Fait boucler une valeur [param value] entre [code]0[/code] et la longueur "
"[param length]. Si la limite est atteinte, la valeur suivante renvoyée par la "
"fonction est diminuée vers le côté [code]0[/code] ou augmentée du côté [param "
"length] (comme un signal triangulaire). Si [param length] est inférieure à "
"zéro, elle devient positive.\n"
"[codeblock]\n"
"pingpong(-3.0, 3.0) # Renvoie 3.0\n"
"pingpong(-2.0, 3.0) # Renvoie 2.0\n"
"pingpong(-1.0, 3.0) # Renvoie 1.0\n"
"pingpong(0.0, 3.0) # Renvoie 0.0\n"
"pingpong(1.0, 3.0) # Renvoie 1.0\n"
"pingpong(2.0, 3.0) # Renvoie 2.0\n"
"pingpong(3.0, 3.0) # Renvoie 3.0\n"
"pingpong(4.0, 3.0) # Renvoie 2.0\n"
"pingpong(5.0, 3.0) # Renvoie 1.0\n"
"pingpong(6.0, 3.0) # Renvoie 0.0\n"
"[/codeblock]"

msgid ""
"Returns the integer modulus of [param x] divided by [param y] that wraps "
"equally in positive and negative.\n"
"[codeblock]\n"
"print(\"#(i)  (i % 3)   (posmod(i, 3))\")\n"
"for i in range(-3, 4):\n"
"\tprint(\"%2d       %2d  | %2d\" % [i, i % 3, posmod(i, 3)])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"(i)  (i % 3)   (posmod(i, 3))\n"
"-3        0  |  0\n"
"-2       -2  |  1\n"
"-1       -1  |  2\n"
" 0        0  |  0\n"
" 1        1  |  1\n"
" 2        2  |  2\n"
" 3        0  |  0\n"
"[/codeblock]"
msgstr ""
"Renvoie le modulo entier de [param x] divisé par [param y] qui reboucle de "
"manière égale en positif et en négatif.\n"
"[codeblock]\n"
"print(\"#(i)  (i % 3)   (posmod(i, 3))\")\n"
"for i in range(-3, 4):\n"
"\tprint(\"%2d       %2d  | %2d\" % [i, i % 3, posmod(i, 3)])\n"
"[/codeblock]\n"
"Affiche :\n"
"[codeblock lang=text]\n"
"(i)  (i % 3)   (posmod(i, 3))\n"
"-3        0  |  0\n"
"-2       -2  |  1\n"
"-1       -1  |  2\n"
" 0        0  |  0\n"
" 1        1  |  1\n"
" 2        2  |  2\n"
" 3        0  |  0\n"
"[/codeblock]"

msgid ""
"Returns the result of [param base] raised to the power of [param exp].\n"
"In GDScript, this is the equivalent of the [code]**[/code] operator.\n"
"[codeblock]\n"
"pow(2, 5)   # Returns 32.0\n"
"pow(4, 1.5) # Returns 8.0\n"
"[/codeblock]"
msgstr ""
"Renvoie le résultat de [param base] élevée à la puissance [param exp].\n"
"En GDScript, c'est l'équivalent de l'opérateur [code]**[/code].\n"
"[codeblock]\n"
"pow(2, 5) # Renvoie 32.0\n"
"pow(4,1. 5) # Renvoie 8.0\n"
"[/codeblock]"

msgid ""
"Converts one or more arguments of any type to string in the best way possible "
"and prints them to the console.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = [1, 2, 3]\n"
"print(\"a\", \"b\", a) # Prints \"ab[1, 2, 3]\"\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array a = [1, 2, 3];\n"
"GD.Print(\"a\", \"b\", a); // Prints \"ab[1, 2, 3]\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Consider using [method push_error] and [method push_warning] to "
"print error and warning messages instead of [method print] or [method "
"print_rich]. This distinguishes them from print messages used for debugging "
"purposes, while also displaying a stack trace when an error or warning is "
"printed. See also [member Engine.print_to_stdout] and [member "
"ProjectSettings.application/run/disable_stdout]."
msgstr ""
"Convertit un ou plusieurs arguments de n'importe quel type en chaîne de "
"caractères de la meilleure façon possible et les imprime dans la console.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = [1, 2, 3]\n"
"print(\"a\", \"b\", a) # Affiche \"ab[1, 2, 3]\"\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array a = [1, 2, 3];\n"
"GD.Print(\"a\", \"b\", a); // Prints \"ab[1, 2, 3]\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Envisagez d'utiliser [method push_error] et [method "
"push_warning] pour afficher les messages d'erreur et d'avertissement au lieu "
"de [method print] ou [method print_rich]. Cela les distingue des messages "
"affichés utilisés à des fins de débogage, tout en affichant une trace de la "
"pile lorsqu'une erreur ou un avertissement est affiché. Voir aussi [member "
"Engine.print_to_stdout] et [member ProjectSettings.application/run/"
"disable_stdout]."

msgid ""
"Converts one or more arguments of any type to string in the best way possible "
"and prints them to the console.\n"
"The following BBCode tags are supported: [code]b[/code], [code]i[/code], "
"[code]u[/code], [code]s[/code], [code]indent[/code], [code]code[/code], "
"[code]url[/code], [code]center[/code], [code]right[/code], [code]color[/"
"code], [code]bgcolor[/code], [code]fgcolor[/code].\n"
"URL tags only support URLs wrapped by a URL tag, not URLs with a different "
"title.\n"
"When printing to standard output, the supported subset of BBCode is converted "
"to ANSI escape codes for the terminal emulator to display. Support for ANSI "
"escape codes varies across terminal emulators, especially for italic and "
"strikethrough. In standard output, [code]code[/code] is represented with "
"faint text but without any font change. Unsupported tags are left as-is in "
"standard output.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"print_rich(\"[color=green][b]Hello world![/b][/color]\") # Prints \"Hello "
"world!\", in green with a bold font.\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"GD.PrintRich(\"[color=green][b]Hello world![/b][/color]\"); // Prints \"Hello "
"world!\", in green with a bold font.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Consider using [method push_error] and [method push_warning] to "
"print error and warning messages instead of [method print] or [method "
"print_rich]. This distinguishes them from print messages used for debugging "
"purposes, while also displaying a stack trace when an error or warning is "
"printed.\n"
"[b]Note:[/b] Output displayed in the editor supports clickable [code skip-"
"lint][url=address]text[/url][/code] tags. The [code skip-lint][url][/code] "
"tag's [code]address[/code] value is handled by [method OS.shell_open] when "
"clicked."
msgstr ""
"Convertit un ou plusieurs arguments de n'importe quel type en chaîne de "
"caractères de la meilleure façon possible et les affiche dans la console.\n"
"Les balises BBCode suivantes sont prises en charge : [code]b[/code], [code]i[/"
"code], [code]u[/code], [code]s[/code], [code]indent[/code], [code]code[/"
"code], [code]url[/code], [code]center[/code], [code]right[/code], "
"[code]color[/code], [code]bgcolor[/code], [code]fgcolor[/code].\n"
"Les balises URL ne prennent en charge que les URL entourées par une balise "
"URL, pas les URL avec un titre différent.\n"
"Lors de l'impression vers la sortie standard, le sous-ensemble BBCode pris en "
"charge est converti en codes d'échappement ANSI pour que l'émulateur de "
"terminal puisse les afficher. La prise en charge des codes d'échappement ANSI "
"varie selon les émulateurs de terminal, en particulier pour l'italique et le "
"barré. Dans la sortie standard, [code]code[/code] est représenté par un texte "
"pâle mais sans aucun changement de police. Les balises non prises en charge "
"sont laissées telles quelles dans la sortie standard.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"print_rich(\"[color=green][b]Bonjour le monde ![/b][/color]\") # Affiche "
"\"Hello world!\" en vert avec une police en gras\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"GD.PrintRich(\"[color=green][b]Bonjour le monde ![/b][/color]\"); // Affiche "
"\"Hello world!\" en vert avec une police en gras\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Remarque :[/b] Considérez d'utiliser [method push_error] et [method "
"push_warning] pour imprimer les messages d'erreur et d'avertissement au lieu "
"de [method print] ou [method print_rich]. Cela les distingue des messages "
"affichés utilisés à des fins de débogage, tout en affichant également une "
"trace de pile lorsqu'une erreur ou un avertissement est affiché.\n"
"[b]Remarque :[/b] La sortie affichée dans l'éditeur prend en charge les "
"balises [code skip-lint][url=address]text[/url][/code] cliquables. La valeur "
"[code]address[/code] de la balise [code skip-lint][url][/code] est gérée par "
"[method OS.shell_open] lorsqu'elle est cliquée."

msgid ""
"If verbose mode is enabled ([method OS.is_stdout_verbose] returning "
"[code]true[/code]), converts one or more arguments of any type to string in "
"the best way possible and prints them to the console."
msgstr ""
"Si le mode verbeux est activé ([method OS.is_stdout_verbose] qui renvoie "
"[code]true[/code]), convertit un ou plusieurs arguments de n'importe quel "
"type en chaîne de caractères de la meilleure façon possible et les affiche "
"dans la console."

msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printerr(\"prints to stderr\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintErr(\"prints to stderr\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Affiche un ou plusieurs arguments en chaînes de caractères de la meilleure "
"façon possible sur la ligne d'erreur.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printerr(\"affiche sur stderr\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintErr(\"affiche sur stderr\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Prints one or more arguments to strings in the best way possible to the OS "
"terminal. Unlike [method print], no newline is automatically added at the "
"end.\n"
"[b]Note:[/b] The OS terminal is [i]not[/i] the same as the editor's Output "
"dock. The output sent to the OS terminal can be seen when running Godot from "
"a terminal. On Windows, this requires using the [code]console.exe[/code] "
"executable.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Prints \"ABC\" to terminal.\n"
"printraw(\"A\")\n"
"printraw(\"B\")\n"
"printraw(\"C\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Prints \"ABC\" to terminal.\n"
"GD.PrintRaw(\"A\");\n"
"GD.PrintRaw(\"B\");\n"
"GD.PrintRaw(\"C\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Affiche un ou plusieurs arguments en chaînes de caractères de la meilleure "
"façon possible sur le terminal de l'OS. Contrairement à [method print], "
"aucune nouvelle ligne n'est ajoutée à la fin.\n"
"[b]Note :[/b] Le terminal de l'OS n'est [i]pas[/i] le même que le dock Sortie "
"de l'éditeur. La sortie envoyée au terminal de l'OS peut être vue lors de "
"l'exécution de Godot sur un terminal. Sur Windows, cela requiert "
"l'utilisation de l'exécutable [code]console.exe[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Affiche \"ABC\" dans le terminal.\n"
"printraw(\"A\")\n"
"printraw(\"B\")\n"
"printraw(\"C\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Affiche \"ABC\" dans le terminal.\n"
"GD.PrintRaw(\"A\");\n"
"GD.PrintRaw(\"B\");\n"
"GD.PrintRaw(\"C\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
"[codeblocks]\n"
"[gdscript]\n"
"prints(\"A\", \"B\", \"C\") # Prints \"A B C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintS(\"A\", \"B\", \"C\"); // Prints \"A B C\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Affiche un ou plusieurs arguments dans la console, intercalés d'un espace "
"entre chaque.\n"
"[codeblocks]\n"
"[gdscript]\n"
"prints(\"A\", \"B\", \"C\") # Affiche \"A B C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintS(\"A\", \"B\", \"C\"); // Affiche \"A B C\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printt(\"A\", \"B\", \"C\") # Prints \"A       B       C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintT(\"A\", \"B\", \"C\"); // Prints \"A       B       C\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Affiche un ou plusieurs arguments dans la console, intercalés d'une "
"tabulation entre chaque.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printt(\"A\", \"B\", \"C\") # Affiche \"A       B       C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintT(\"A\", \"B\", \"C\"); // Affiche \"A       B       C\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS terminal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_error(\"test error\") # Prints \"test error\" to debugger and terminal "
"as an error.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushError(\"test error\"); // Prints \"test error\" to debugger and "
"terminal as an error.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This function does not pause project execution. To print an "
"error message and pause project execution in debug builds, use "
"[code]assert(false, \"test error\")[/code] instead."
msgstr ""
"Renvoie un message d'erreur au débogueur interne de Godot et dans le terminal "
"du système.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_error(\"erreur test\") # Affiche \"erreur test\" dans le débogueur et le "
"terminal en tant qu'erreur.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushError(\"erreur test\"); // Affiche \"erreur test\" dans le débogueur "
"et le terminal en tant qu'erreur.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Les erreurs affichées ainsi n'interrompent pas l'exécution du "
"projet. Pour afficher un message d'erreur et interrompre l'exécution du "
"projet dans une compilation de débogage, utilisez [code]assert(false, "
"\"erreur test\")[/code] à la place."

msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_warning(\"test warning\") # Prints \"test warning\" to debugger and "
"terminal as a warning.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushWarning(\"test warning\"); // Prints \"test warning\" to debugger and "
"terminal as a warning.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Pousse un message d'avertissement dans le débogueur intégré de Godot et le "
"terminal de l'OS.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_warning(\"avertissement de test\") # Affiche \"avertissement de test\" "
"dans le débogueur et le terminal en tant qu'avertissement.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushWarning(\"avertissement de test\"); // Affiche \"avertissement de "
"test\" dans le débogueur et le terminal en tant qu'avertissement.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad_to_deg(0.523599) # Returns 30\n"
"rad_to_deg(PI)       # Returns 180\n"
"rad_to_deg(PI * 2)   # Returns 360\n"
"[/codeblock]"
msgstr ""
"Convertit un angle exprimé en radians en degrés.\n"
"[codeblock]\n"
"rad_to_deg(0.523599) # Renvoie 30\n"
"rad_to_deg(PI)       # Renvoie 180\n"
"rad_to_deg(PI * 2)   # Renvoie 360\n"
"[/codeblock]"

msgid ""
"Given a [param seed], returns a [PackedInt64Array] of size [code]2[/code], "
"where its first element is the randomized [int] value, and the second element "
"is the same as [param seed]. Passing the same [param seed] consistently "
"returns the same array.\n"
"[b]Note:[/b] \"Seed\" here refers to the internal state of the pseudo random "
"number generator, currently implemented as a 64 bit integer.\n"
"[codeblock]\n"
"var a = rand_from_seed(4)\n"
"\n"
"print(a[0]) # Prints 2879024997\n"
"print(a[1]) # Prints 4\n"
"[/codeblock]"
msgstr ""
"Pour un [param seed] donné, renvoie un [PackedInt64Array] de taille [code]2[/"
"code] dont le premier élément est la valeur [int] aléatoire et le second "
"élément est le même que [param seed]. Donner en entrée la même [param seed] "
"renvoie toujours le même tableau.\n"
"[b]Note :[/b] \"Seed\" représente ici l'état interne du générateur de nombres "
"pseudo-aléatoires, actuellement implémenté en tant qu'entier 64 bits.\n"
"[codeblock]\n"
"var a = rand_from_seed(4)\n"
"\n"
"print(a[0])\t# Affiche 2879024997\n"
"print(a[1])\t# Affiche 4\n"
"[/codeblock]"

msgid ""
"Returns a random floating-point value between [code]0.0[/code] and [code]1.0[/"
"code] (inclusive).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf() # Returns e.g. 0.375671\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randf(); // Returns e.g. 0.375671\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une valeur aléatoire à virgule flottante entre [code]0.0[/code] et "
"[code]1.0[/code] (inclusif).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf() # Renvoie par ex. 0.375671\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randf(); // Renvoie par ex. 0.375671\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a random floating-point value between [param from] and [param to] "
"(inclusive).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf_range(0, 20.5) # Returns e.g. 7.45315\n"
"randf_range(-10, 10) # Returns e.g. -3.844535\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0.0, 20.5);   // Returns e.g. 7.45315\n"
"GD.RandRange(-10.0, 10.0); // Returns e.g. -3.844535\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un flottant aléatoire entre [param from] et [param to] (inclusif).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf_range(0, 20.5) # Renvoie par ex. 7.45315\n"
"randf_range(-10, 10) # Renvoie par ex. -3.844535\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0.0, 20.5);   // Renvoie par ex. 7.45315\n"
"GD.RandRange(-10.0, 10.0); // Renvoie par ex. -3.844535\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a [url=https://en.wikipedia.org/wiki/Normal_distribution]normally-"
"distributed[/url], pseudo-random floating-point value from the specified "
"[param mean] and a standard [param deviation]. This is also known as a "
"Gaussian distribution.\n"
"[b]Note:[/b] This method uses the [url=https://en.wikipedia.org/wiki/"
"Box%E2%80%93Muller_transform]Box-Muller transform[/url] algorithm."
msgstr ""
"Renvoie une valeur flottante pseudo-aléatoire d'une loi [url=https://"
"fr.wikipedia.org/wiki/Loi_normale]normale[/url] ayant comme moyenne [param "
"mean] et comme déviation standard [param deviation]. Aussi connue sous le nom "
"de loi Gaussienne.\n"
"[b]Note :[/b] Cette méthode utilise l'algorithme de [url=https://"
"fr.wikipedia.org/wiki/M%C3%A9thode_de_Box-Muller]tranformation de Box-Muller[/"
"url]."

msgid ""
"Returns a random unsigned 32-bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
"2^32).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi()           # Returns random integer between 0 and 2^32 - 1\n"
"randi() % 20      # Returns random integer between 0 and 19\n"
"randi() % 100     # Returns random integer between 0 and 99\n"
"randi() % 100 + 1 # Returns random integer between 1 and 100\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randi();           // Returns random integer between 0 and 2^32 - 1\n"
"GD.Randi() % 20;      // Returns random integer between 0 and 19\n"
"GD.Randi() % 100;     // Returns random integer between 0 and 99\n"
"GD.Randi() % 100 + 1; // Returns random integer between 1 and 100\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un nombre entier non signé de 32 bits aléatoire. Utilisez l'opérateur "
"modulo pour obtenir une valeur aléatoire dans l'intervalle [code][0, N - 1][/"
"code] (où N est plus petit que 2^32).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi()           # Renvoie un nombre entier aléatoire entre 0 et 2^32 - 1\n"
"randi() % 20      # Renvoie un nombre entier aléatoire entre 0 et 9\n"
"randi() % 100     # Renvoie un nombre entier aléatoire entre 0 et 99\n"
"randi() % 100 + 1 # Renvoie un nombre entier aléatoire entre 1 et 100\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randi();           // Renvoie un nombre entier aléatoire entre 0 et 2^32 - "
"1\n"
"GD.Randi() % 20;      // Renvoie un nombre entier aléatoire entre 0 et 9\n"
"GD.Randi() % 100;     // Renvoie un nombre entier aléatoire entre 0 et 99\n"
"GD.Randi() % 100 + 1; // Renvoie un nombre entier aléatoire entre 1 et 100\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a random signed 32-bit integer between [param from] and [param to] "
"(inclusive). If [param to] is lesser than [param from], they are swapped.\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi_range(0, 1)      # Returns either 0 or 1\n"
"randi_range(-10, 1000) # Returns random integer between -10 and 1000\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0, 1);      // Returns either 0 or 1\n"
"GD.RandRange(-10, 1000); // Returns random integer between -10 and 1000\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un nombre entier positif aléatoire de 32 bits entre [param from] et "
"[param to] (inclusif). Si [param to] est inférieur à [param from], ils sont "
"échangés.\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi_range(0, 1)      # Renvoie 0 or 1\n"
"randi_range(-10, 1000) # Renvoie un entier aléatoire entre -10 et 1000\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0, 1);      // Renvoie 0 or 1\n"
"GD.RandRange(-10, 1000); // Renvoie un entier aléatoire entre -10 et 1000\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"The current implementation uses a number based on the device's time.\n"
"[b]Note:[/b] This function is called automatically when the project is run. "
"If you need to fix the seed to have consistent, reproducible results, use "
"[method seed] to initialize the random number generator."
msgstr ""
"Randomise la graine (ou état interne) du générateur de nombres aléatoires. "
"L'implémentation actuelle utilise un nombre basé sur l'horloge de "
"l'appareil.\n"
"[b]Note :[/b] Cette fonction est invoquée automatiquement lorsque le projet "
"est exécuté. Si vous avez besoin de fixer la graine pour avoir des résultats "
"consistants et reproductibles, utilisez [method seed] pour initialiser le "
"générateur de nombres aléatoires."

msgid ""
"Maps a [param value] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code]. See also [method lerp] and [method inverse_lerp]. If "
"[param value] is outside [code][istart, istop][/code], then the resulting "
"value will also be outside [code][ostart, ostop][/code]. If this is not "
"desired, use [method clamp] on the result of this function.\n"
"[codeblock]\n"
"remap(75, 0, 100, -1, 1) # Returns 0.5\n"
"[/codeblock]\n"
"For complex use cases where multiple ranges are needed, consider using "
"[Curve] or [Gradient] instead.\n"
"[b]Note:[/b] If [code]istart == istop[/code], the return value is undefined "
"(most likely NaN, INF, or -INF)."
msgstr ""
"Fait correspondre une valeur [param value] de l'intervalle [code][istart, "
"istop][/code] à [code][ostart, ostop][/code]. Voir aussi [method lerp] et "
"[method inverse_lerp]. Si [param value] est en dehors de [code][istart, istop]"
"[/code], la valeur résultante sera aussi en dehors de [code][ostart, ostop][/"
"code]. Si cela n'est pas souhaité, utilisez [method clamp] sur le résultat de "
"cette fonction.\n"
"[codeblock]\n"
"remap(75, 0, 100, -1, 1) # Renvoie 0.5\n"
"[/codeblock]\n"
"Pour les cas d'utilisation plus complexes avec plusieurs intervalles, "
"favorisez plutôt [Curve] ou [Gradient].\n"
"[b]Note :[/b] Si [code]istart == istop[/code], la valeur de retour est "
"indéfinie (en général, NaN, INF ou -INF)."

msgid ""
"Allocates a unique ID which can be used by the implementation to construct an "
"RID. This is used mainly from native extensions to implement servers."
msgstr ""
"Alloue un ID unique qui peut être utilisé par l'implémentation pour "
"construire un RID. Ceci est principalement utilisé depuis des extensions "
"natives pour implémenter des serveurs."

msgid ""
"Creates an RID from a [param base]. This is used mainly from native "
"extensions to build servers."
msgstr ""
"Crée un RID depuis une [param base]. Principalement utilisé depuis des "
"extensions natives pour compiler des serveurs."

msgid ""
"Rotates [param from] toward [param to] by the [param delta] amount. Will not "
"go past [param to].\n"
"Similar to [method move_toward], but interpolates correctly when the angles "
"wrap around [constant @GDScript.TAU].\n"
"If [param delta] is negative, this function will rotate away from [param to], "
"toward the opposite angle, and will not go past the opposite angle."
msgstr ""
"Fait pivoter [param from] vers [param to] du montant [param delta]. Ne "
"dépassera pas [param to].\n"
"Similaire à [method move_toward], mais interpole correctement lorsque les "
"angles dépassent [constant @GDScript.TAU] pour revenir à 0.\n"
"Si [param delta] est négatif, cette fonction tournera en sens inverse de "
"[param to] vers l’angle opposé et ne dépassera pas l’angle opposé."

msgid ""
"Rounds [param x] to the nearest whole number, with halfway cases rounded away "
"from 0. Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"round(2.4) # Returns 2\n"
"round(2.5) # Returns 3\n"
"round(2.6) # Returns 3\n"
"[/codeblock]\n"
"See also [method floor], [method ceil], and [method snapped].\n"
"[b]Note:[/b] For better type safety, use [method roundf], [method roundi], "
"[method Vector2.round], [method Vector3.round], or [method Vector4.round]."
msgstr ""
"Arrondit [param x] au nombre entier le plus proche, avec les cas à mi-chemin "
"arrondis dans le sens opposé à 0. Les types supportés sont : [int], [float], "
"[Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"round(2.4) # Renvoie 2\n"
"round(2.5) # Renvoie 3\n"
"round(2.6) # Renvoie 3\n"
"[/codeblock]\n"
"Voir aussi [method floor], [method ceil], et [method snapped].\n"
"[b]Note :[/b] Pour une meilleure sûreté du typage, utilisez [method roundf], "
"[method roundi], [method Vector2.round], [method Vector3.round], ou [method "
"Vector4.round]."

msgid ""
"Rounds [param x] to the nearest whole number, with halfway cases rounded away "
"from 0.\n"
"A type-safe version of [method round], returning a [float]."
msgstr ""
"Arrondit [param x] vers l'entier le plus proche, avec les demis exacts "
"arrondis à l'opposé de 0.\n"
"Une version typée de [method round], renvoyant un [float]."

msgid ""
"Rounds [param x] to the nearest whole number, with halfway cases rounded away "
"from 0.\n"
"A type-safe version of [method round], returning an [int]."
msgstr ""
"Arrondit [param x] jusqu'au nombre entier le plus proche, avec les cas à mi-"
"chemin arrondis à l'opposé de 0.\n"
"Une version typée de [method round], renvoyant un [int]."

msgid ""
"Sets the seed for the random number generator to [param base]. Setting the "
"seed manually can ensure consistent, repeatable results for most random "
"functions.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_seed = \"Godot Rocks\".hash()\n"
"seed(my_seed)\n"
"var a = randf() + randi()\n"
"seed(my_seed)\n"
"var b = randf() + randi()\n"
"# a and b are now identical\n"
"[/gdscript]\n"
"[csharp]\n"
"ulong mySeed = (ulong)GD.Hash(\"Godot Rocks\");\n"
"GD.Seed(mySeed);\n"
"var a = GD.Randf() + GD.Randi();\n"
"GD.Seed(mySeed);\n"
"var b = GD.Randf() + GD.Randi();\n"
"// a and b are now identical\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Définit la graine pour le générateur de nombres aléatoires à [param base]. "
"Définir la graine manuellement garantit des résultats consistants et "
"répétables pour la plupart des fonctions aléatoires.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_seed = \"Godot Rocks\".hash()\n"
"seed(my_seed)\n"
"var a = randf() + randi()\n"
"seed(my_seed)\n"
"var b = randf() + randi()\n"
"# a et b sont maintenant identiques\n"
"[/gdscript]\n"
"[csharp]\n"
"ulong mySeed = (ulong)GD.Hash(\"Godot Rocks\");\n"
"GD.Seed(mySeed);\n"
"var a = GD.Randf() + GD.Randi();\n"
"GD.Seed(mySeed);\n"
"var b = GD.Randf() + GD.Randi();\n"
"// a et b sont maintenant identiques\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the same type of [Variant] as [param x], with [code]-1[/code] for "
"negative values, [code]1[/code] for positive values, and [code]0[/code] for "
"zeros. For [code]nan[/code] values it returns 0.\n"
"Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"sign(-6.0) # Returns -1\n"
"sign(0.0)  # Returns 0\n"
"sign(6.0)  # Returns 1\n"
"sign(NAN)  # Returns 0\n"
"\n"
"sign(Vector3(-6.0, 0.0, 6.0)) # Returns (-1, 0, 1)\n"
"[/codeblock]\n"
"[b]Note:[/b] For better type safety, use [method signf], [method signi], "
"[method Vector2.sign], [method Vector2i.sign], [method Vector3.sign], [method "
"Vector3i.sign], [method Vector4.sign], or [method Vector4i.sign]."
msgstr ""
"Renvoie le même type de [Variant] que [param x], avec [code]-1[/code] pour "
"des valeurs négatives, [code]1[/code] pour des valeurs positives, et [code]0[/"
"code] pour des zéros. Pour des valeurs [code]nan[/code], renvoie 0.\n"
"Les types supportés sont : [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"sign(-6.0) # Renvoie -1\n"
"sign(0.0)  # Renvoie 0\n"
"sign(6.0)  # Renvoie 1\n"
"sign(NAN)  # Renvoie 0\n"
"\n"
"sign(Vector3(-6.0, 0.0, 6.0)) # Renvoie (-1, 0, 1)\n"
"[/codeblock]\n"
"[b]Note :[/b] Pour une meilleure sûreté du typage, utilisez [method signf], "
"[method signi], [method Vector2.sign], [method Vector2i.sign], [method "
"Vector3.sign], [method Vector3i.sign], [method Vector4.sign], ou [method "
"Vector4i.sign]."

msgid ""
"Returns [code]-1.0[/code] if [param x] is negative, [code]1.0[/code] if "
"[param x] is positive, and [code]0.0[/code] if [param x] is zero. For "
"[code]nan[/code] values of [param x] it returns 0.0.\n"
"[codeblock]\n"
"signf(-6.5) # Returns -1.0\n"
"signf(0.0)  # Returns 0.0\n"
"signf(6.5)  # Returns 1.0\n"
"signf(NAN)  # Returns 0.0\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]-1.0[/code] si [param x] est négatif, [code]1.0[/code] si "
"[param x] est positif, et[code]0.0[/code] si [param x] vaut zéro. Pour des "
"valeurs [code]nan[/code] de [param x], renvoie 0.0.\n"
"[codeblock]\n"
"signf(-6.5) # Renvoie -1.0\n"
"signf(0.0)  # Renvoie 0.0\n"
"signf(6.5)  # Renvoie 1.0\n"
"signf(NAN)  # Renvoie 0.0\n"
"[/codeblock]"

msgid ""
"Returns [code]-1[/code] if [param x] is negative, [code]1[/code] if [param x] "
"is positive, and [code]0[/code] if [param x] is zero.\n"
"[codeblock]\n"
"signi(-6) # Returns -1\n"
"signi(0)  # Returns 0\n"
"signi(6)  # Returns 1\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]-1[/code] si [param x] est négatif, [code]1[/code] si [param x] "
"est positif, et[code]0[/code] si [param x] vaut zéro.\n"
"[codeblock]\n"
"signi(-6) # Renvoie -1\n"
"signi(0)  # Renvoie 0\n"
"signi(6)  # Renvoie 1\n"
"[/codeblock]"

msgid ""
"Returns the sine of angle [param angle_rad] in radians.\n"
"[codeblock]\n"
"sin(0.523599)       # Returns 0.5\n"
"sin(deg_to_rad(90)) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
"Renvoie le sinus de l'angle [param angle_rad] en radians.\n"
"[codeblock]\n"
"sin(0.523599)       # Renvoie 0.5\n"
"sin(deg_to_rad(90)) # Renvoie 1.0\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic sine of [param x].\n"
"[codeblock]\n"
"var a = log(2.0) # Returns 0.693147\n"
"sinh(a) # Returns 0.75\n"
"[/codeblock]"
msgstr ""
"Renvoie le sinus hyperbolique de [param x].\n"
"[codeblock]\n"
"a = log(2.0) # Renvoie 0.693147\n"
"sinh(a) # Renvoie 0.75\n"
"[/codeblock]"

msgid ""
"Returns a smooth cubic Hermite interpolation between [code]0[/code] and "
"[code]1[/code].\n"
"For positive ranges (when [code]from <= to[/code]) the return value is "
"[code]0[/code] when [code]x <= from[/code], and [code]1[/code] when [code]x "
">= to[/code]. If [param x] lies between [param from] and [param to], the "
"return value follows an S-shaped curve that smoothly transitions from "
"[code]0[/code] to [code]1[/code].\n"
"For negative ranges (when [code]from > to[/code]) the function is mirrored "
"and returns [code]1[/code] when [code]x <= to[/code] and [code]0[/code] when "
"[code]x >= from[/code].\n"
"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(y) = "
"3*y^2 - 2*y^3[/code] where [code]y = (x-from) / (to-from)[/code].\n"
"[codeblock]\n"
"smoothstep(0, 2, -5.0) # Returns 0.0\n"
"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]\n"
"Compared to [method ease] with a curve value of [code]-1.6521[/code], [method "
"smoothstep] returns the smoothest possible curve with no sudden changes in "
"the derivative. If you need to perform more advanced transitions, use [Tween] "
"or [AnimationPlayer].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_ease_comparison.png]Comparison between smoothstep() and ease(x, "
"-1.6521) return values[/url]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_range.webp]Smoothstep() return values with positive, zero, and "
"negative ranges[/url]"
msgstr ""
"Renvoie une interpolation d'Hermite avec cubique lisse entre [code]0[/code] "
"et [code]1[/code].\n"
"Pour les plages positives (lorsque [code]from <= to[/code]), la valeur de "
"renvoi est [code]0[/code] lorsque [code]x <= from[/code], et [code]1[/code] "
"lorsque [code]x >= to[/code]. Si [param x] se situe entre [param from] et "
"[param to], la valeur de renvoi suit une courbe en forme de S qui varie en "
"douceur de [code]0[/code] à [code]1[/code].\n"
"Pour les plages négatives (lorsque [code]from > to[/code]), la fonction est "
"réfléchie et renvoie [code]1[/code] lorsque [code]x <= to[/code] et [code]0[/"
"code] lorsque [code]x >= from[/code].\n"
"Cette courbe en S est l'interpolateur cubique d'Hermite, donné par [code]f(y) "
"= 3*y^2 - 2*y^3[/code] où [code]y = (x-from) / (to-from)[/code].\n"
"[codeblock]\n"
"smoothstep(0, 2, -5.0) # Renvoie 0.0\n"
"smoothstep(0, 2, 0.5) # Renvoie 0.15625\n"
"smoothstep(0, 2, 1.0) # Renvoie 0.5\n"
"smoothstep(0, 2, 2.0) # Renvoie 1.0\n"
"[/codeblock]\n"
"Par rapport à [method ease] avec une valeur de courbe de [code]-1.6521[/"
"code], [method smoothstep] renvoie la courbe la plus lisse possible sans "
"changement soudain dans la dérivée. Si vous devez effectuer des transitions "
"plus avancées, utilisez [Tween] ou [AnimationPlayer].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_ease_comparison.png]Comparaison entre les valeurs de renvoi de "
"smoothstep() et ease(x, -1.6521)[/url]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_range.webp]Les valeurs de renvoi de Smoothstep() pour des plages "
"positives, zéro et négatives[/url]"

msgid ""
"Returns the multiple of [param step] that is the closest to [param x]. This "
"can also be used to round a floating-point number to an arbitrary number of "
"decimals.\n"
"The returned value is the same type of [Variant] as [param step]. Supported "
"types: [int], [float], [Vector2], [Vector2i], [Vector3], [Vector3i], "
"[Vector4], [Vector4i].\n"
"[codeblock]\n"
"snapped(100, 32)  # Returns 96\n"
"snapped(3.14159, 0.01)  # Returns 3.14\n"
"\n"
"snapped(Vector2(34, 70), Vector2(8, 8))  # Returns (32, 72)\n"
"[/codeblock]\n"
"See also [method ceil], [method floor], and [method round].\n"
"[b]Note:[/b] For better type safety, use [method snappedf], [method "
"snappedi], [method Vector2.snapped], [method Vector2i.snapped], [method "
"Vector3.snapped], [method Vector3i.snapped], [method Vector4.snapped], or "
"[method Vector4i.snapped]."
msgstr ""
"Renvoie le multiple de [param step] qui est le plus proche de [param x]. Cela "
"peut aussi être utilisé pour arrondir un flottant à un nombre arbitraire de "
"décimales.\n"
"La valeur renvoyée est du même type de [Variant] que [param step]. Les types "
"supportés sont : [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"snapped(100, 32)  # Renvoie 96\n"
"snapped(3.14159, 0.01)  # Renvoie 3,14\n"
"\n"
"snapped(Vector2(34, 70), Vector2(8, 8))  # Renvoie (32, 72)\n"
"[/codeblock]\n"
"Voir aussi [method ceil], [method floor], et [method round].\n"
"[b]Note :[/b] Pour une meilleure sûreté du typage, utilisez [method "
"snappedf], [method snappedi], [method Vector2.snapped], [method "
"Vector2i.snapped], [method Vector3.snapped], [method Vector3i.snapped], "
"[method Vector4.snapped], ou [method Vector4i.snapped]."

msgid ""
"Returns the multiple of [param step] that is the closest to [param x]. This "
"can also be used to round a floating-point number to an arbitrary number of "
"decimals.\n"
"A type-safe version of [method snapped], returning a [float].\n"
"[codeblock]\n"
"snappedf(32.0, 2.5)  # Returns 32.5\n"
"snappedf(3.14159, 0.01)  # Returns 3.14\n"
"[/codeblock]"
msgstr ""
"Renvoie le multiple de [param step] qui est le plus proche de [param x]. Cela "
"peut être utilisé pour arrondir un flottant à un nombre arbitraire de "
"décimales.\n"
"Une version typée de [method snapped], renvoyant un [float].\n"
"[codeblock]\n"
"snappedf(32.0, 2.5)  # Renvoie 32.5\n"
"snappedf(3.14159, 0.01)  # Renvoie 3.14\n"
"[/codeblock]"

msgid ""
"Returns the multiple of [param step] that is the closest to [param x].\n"
"A type-safe version of [method snapped], returning an [int].\n"
"[codeblock]\n"
"snappedi(53, 16)  # Returns 48\n"
"snappedi(4096, 100)  # Returns 4100\n"
"[/codeblock]"
msgstr ""
"Renvoie le multiple de [param step] qui est le plus proche de [param x].\n"
"Une version de typée de [method snapped], renvoyant un [int].\n"
"[codeblock]\n"
"snappedi(53, 16) # Renvoie 48\n"
"snappedi(4096, 100) # Renvoie 4100\n"
"[/codeblock]"

msgid ""
"Returns the square root of [param x], where [param x] is a non-negative "
"number.\n"
"[codeblock]\n"
"sqrt(9)     # Returns 3\n"
"sqrt(10.24) # Returns 3.2\n"
"sqrt(-1)    # Returns NaN\n"
"[/codeblock]\n"
"[b]Note:[/b] Negative values of [param x] return NaN (\"Not a Number\"). In "
"C#, if you need negative inputs, use [code]System.Numerics.Complex[/code]."
msgstr ""
"Renvoie la racine carrée de [param x], où [param x] est un nombre non "
"négatif.\n"
"[codeblock]\n"
"sqrt(9)     # Renvoie 3\n"
"sqrt(10.24) # Renvoie 3.2\n"
"sqrt(-1)    # Renvoie NaN\n"
"[/codeblock]\n"
"[b]Note :[/b] Les valeurs négatives de [param x] renvoient NaN (\"Not a "
"Number\", pas un nombre). En C#, si vous avez besoin d'entrées négatives, "
"utilisez [code]System.Numerics.Complex[/code]."

msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
"implementation.\n"
"[codeblock]\n"
"var n = step_decimals(5)       # n is 0\n"
"n = step_decimals(1.0005)      # n is 4\n"
"n = step_decimals(0.000000005) # n is 9\n"
"[/codeblock]"
msgstr ""
"Renvoie la position du premier chiffre différent de zéro, après la virgule "
"décimale. Notez que la valeur maximale renvoyée est 10, ce qui est une "
"décision par design dans l'implémentation.\n"
"[codeblock]\n"
"n = step_decimals(5)           # n vaut 0\n"
"n = step_decimals(1.0005)      # n vaut 4\n"
"n = step_decimals(0.000000005) # n vaut 9\n"
"[/codeblock]"

msgid ""
"Converts one or more arguments of any [Variant] type to a [String] in the "
"best way possible.\n"
"[codeblock]\n"
"var a = [10, 20, 30]\n"
"var b = str(a)\n"
"print(len(a)) # Prints 3 (the number of elements in the array).\n"
"print(len(b)) # Prints 12 (the length of the string \"[10, 20, 30]\").\n"
"[/codeblock]"
msgstr ""
"Convertit un ou plusieurs arguments de type [Variant] en chaîne de caractères "
"de la meilleure manière possible.\n"
"[codeblock]\n"
"var a = [10, 20, 30]\n"
"var b = str(a) \n"
"print(len(a)) # Affiche 3 (le nombre d'éléments du tableau).\n"
"print(len(b)) # Affiche 12 (la longueur de la chaîne \"[10, 20, 30]\").\n"
"[/codeblock]"

msgid ""
"Converts a formatted [param string] that was returned by [method var_to_str] "
"to the original [Variant].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var data = '{ \"a\": 1, \"b\": 2 }' # data is a String\n"
"var dict = str_to_var(data)     # dict is a Dictionary\n"
"print(dict[\"a\"])                # Prints 1\n"
"[/gdscript]\n"
"[csharp]\n"
"string data = \"{ \\\"a\\\": 1, \\\"b\\\": 2 }\";           // data is a "
"string\n"
"var dict = GD.StrToVar(data).AsGodotDictionary(); // dict is a Dictionary\n"
"GD.Print(dict[\"a\"]);                              // Prints 1\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Convertit une chaîne de caractère [param string] formatée qui a été renvoyée "
"par [method var_to_str] en son [Variant] d'origine.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var data = '{ \"a\": 1, \"b\": 2 }' # data est un String\n"
"var dict = str_to_var(data)     # dict est un Dictionary\n"
"print(dict[\"a\"])                # Affiche 1\n"
"[/gdscript]\n"
"[csharp]\n"
"string data = \"{ \\\"a\\\": 1, \\\"b\\\": 2 }\";           // data est un "
"String\n"
"var dict = GD.StrToVar(data).AsGodotDictionary(); // dict est un Dictionary\n"
"GD.Print(dict[\"a\"]);                              // Affiche 1\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the tangent of angle [param angle_rad] in radians.\n"
"[codeblock]\n"
"tan(deg_to_rad(45)) # Returns 1\n"
"[/codeblock]"
msgstr ""
"Renvoie la tangente de l'angle [param angle_rad] en radians.\n"
"[codeblock]\n"
"tan(deg_to_rad(45)) # Renvoie 1\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic tangent of [param x].\n"
"[codeblock]\n"
"var a = log(2.0) # Returns 0.693147\n"
"tanh(a)          # Returns 0.6\n"
"[/codeblock]"
msgstr ""
"Renvoie la tangente hyperbolique de [param x].\n"
"[codeblock]\n"
"var a = log(2.0) # Renvoie 0.693147\n"
"tanh(a)          # Returns 0.6\n"
"[/codeblock]"

msgid ""
"Converts the given [param variant] to the given [param type], using the [enum "
"Variant.Type] values. This method is generous with how it handles types, it "
"can automatically convert between array types, convert numeric [String]s to "
"[int], and converting most things to [String].\n"
"If the type conversion cannot be done, this method will return the default "
"value for that type, for example converting [Rect2] to [Vector2] will always "
"return [constant Vector2.ZERO]. This method will never show error messages as "
"long as [param type] is a valid Variant type.\n"
"The returned value is a [Variant], but the data inside and its type will be "
"the same as the requested type.\n"
"[codeblock]\n"
"type_convert(\"Hi!\", TYPE_INT) # Returns 0\n"
"type_convert(\"123\", TYPE_INT) # Returns 123\n"
"type_convert(123.4, TYPE_INT) # Returns 123\n"
"type_convert(5, TYPE_VECTOR2) # Returns (0, 0)\n"
"type_convert(\"Hi!\", TYPE_NIL) # Returns null\n"
"[/codeblock]"
msgstr ""
"Convertit la [param variant] donnée en le [param type] donné, en utilisant la "
"valeur de [enum Variant.Type]. Cette méthode est généreuse avec la façon dont "
"elle gère les types, elle peut automatiquement convertir entre les types de "
"tableaux, convertir les [String] numériques en [int], et convertir la plupart "
"des choses en [String].\n"
"Si la conversion de type ne peut être effectuée, cette méthode renverra la "
"valeur par défaut pour ce type, par exemple convertir [Rect2] en [Vector2] "
"renverra toujours [constant Vector2.ZERO]. Cette méthode n'affichera jamais "
"de messages d'erreur tant que [param type] est un type Variant valide.\n"
"La valeur renvoyée est un [Variant], mais les données à l'intérieur et leurs "
"types seront les mêmes que le type demandé.\n"
"[codeblock]\n"
"type_convert(\"Hi!\", TYPE_INT) # Renvoie 0\n"
"type_convert(\"123\", TYPE_INT) # Renvoie 123\n"
"type_convert(123.4, TYPE_INT) # Renvoie 123\n"
"type_convert(5, TYPE_VECTOR2) # Renvoie (0, 0)\n"
"type_convert(\"Hi!\", TYPE_NIL) # Renvoie null\n"
"[/codeblock]"

msgid ""
"Returns a human-readable name of the given [param type], using the [enum "
"Variant.Type] values.\n"
"[codeblock]\n"
"print(TYPE_INT) # Prints 2\n"
"print(type_string(TYPE_INT)) # Prints \"int\"\n"
"print(type_string(TYPE_STRING)) # Prints \"String\"\n"
"[/codeblock]\n"
"See also [method typeof]."
msgstr ""
"Renvoie un nom facilement lisible du [param type] donné, en utilisant la "
"valeur de [enum Variant.Type].\n"
"[codeblock]\n"
"print(TYPE_INT) # Affiche 2\n"
"print(type_string(TYPE_INT)) # Affiche \"int\"\n"
"print(type_string(TYPE_STRING)) # Affiche \"String\"\n"
"[/codeblock]\n"
"Voir aussi [method typeof]."

msgid ""
"Returns the internal type of the given [param variable], using the [enum "
"Variant.Type] values.\n"
"[codeblock]\n"
"var json = JSON.new()\n"
"json.parse('[\"a\", \"b\", \"c\"]')\n"
"var result = json.get_data()\n"
"if result is Array:\n"
"\tprint(result[0]) # Prints \"a\"\n"
"else:\n"
"\tprint(\"Unexpected result!\")\n"
"[/codeblock]\n"
"See also [method type_string]."
msgstr ""
"Renvoie le type interne de la [param variable] donnée, en utilisant la valeur "
"de [enum Variant.Type].\n"
"[codeblock]\n"
"var json = JSON.new()\n"
"json.parse('[\"a\", \"b\", \"c\"]')\n"
"var result = json.get_data()\n"
"if result is Array:\n"
"\tprint(result[0]) # Affiche a\n"
"else:\n"
"\tprint(\"Résultat inattendu !\")\n"
"[/codeblock]\n"
"Voir aussi [method type_string]."

msgid ""
"Encodes a [Variant] value to a byte array, without encoding objects. "
"Deserialization can be done with [method bytes_to_var].\n"
"[b]Note:[/b] If you need object serialization, see [method "
"var_to_bytes_with_objects].\n"
"[b]Note:[/b] Encoding [Callable] is not supported and will result in an empty "
"value, regardless of the data."
msgstr ""
"Encode une valeur de [Variant] en un tableau de bytes, sans encoder les "
"objets. La désérialisation peut être faite avec [method bytes_to_var].\n"
"[b]Note :[/b] Si vous avez besoin de serialisation d'objets, voir [method "
"var_to_bytes_with_objects].\n"
"[b]Note :[/b] Encoder [Callable] n'est pas supporté et va renvoyer une valeur "
"vide, peu importe les données."

msgid ""
"Encodes a [Variant] value to a byte array. Encoding objects is allowed (and "
"can potentially include executable code). Deserialization can be done with "
"[method bytes_to_var_with_objects].\n"
"[b]Note:[/b] Encoding [Callable] is not supported and will result in an empty "
"value, regardless of the data."
msgstr ""
"Encode une valeur [Variant] en un tableau d'octets. L'encodage d'objets est "
"autorisé (et peut éventuellement inclure du code exécutable). La "
"désérialisation peut être faite avec [method bytes_to_var_with_objects].\n"
"[b]Note :[/b] Encoder [Callable] n'est pas pris en charge et renverra une "
"valeur vide, peu importe les données."

msgid ""
"Converts a [Variant] [param variable] to a formatted [String] that can then "
"be parsed using [method str_to_var].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = { \"a\": 1, \"b\": 2 }\n"
"print(var_to_str(a))\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Godot.Collections.Dictionary { [\"a\"] = 1, [\"b\"] = 2 };\n"
"GD.Print(GD.VarToStr(a));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"{\n"
"\t\"a\": 1,\n"
"\t\"b\": 2\n"
"}\n"
"[/codeblock]\n"
"[b]Note:[/b] Converting [Signal] or [Callable] is not supported and will "
"result in an empty value for these types, regardless of their data."
msgstr ""
"Convertit une [Variant] [param variable] en une chaîne de caractères [String] "
"formatée qui pourra ensuite être décodée grâce à [method str_to_var].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = {\"a\": 1, \"b\": 2}\n"
"print(var_to_str(a))\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Godot.Collections.Dictionary { [\"a\"] = 1, [\"b\"] = 2 };\n"
"GD.Print(GD.VarToStr(a));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Affiche :\n"
"[codeblock lang=text]\n"
"{\n"
"\t\"a\": 1,\n"
"\t\"b\": 2\n"
"}\n"
"[/codeblock]\n"
"[b]Note :[/b] Convertir [Signal] ou [Callable] n'est pas supporté et va "
"résulter en une valeur vide pour ces types, peu importe leurs données."

msgid ""
"Returns a [WeakRef] instance holding a weak reference to [param obj]. Returns "
"an empty [WeakRef] instance if [param obj] is [code]null[/code]. Prints an "
"error and returns [code]null[/code] if [param obj] is neither [Object]-"
"derived nor [code]null[/code].\n"
"A weak reference to an object is not enough to keep the object alive: when "
"the only remaining references to a referent are weak references, garbage "
"collection is free to destroy the referent and reuse its memory for something "
"else. However, until the object is actually destroyed the weak reference may "
"return the object even if there are no strong references to it."
msgstr ""
"Renvoie une instance [WeakRef] contenant une faible référence à [param obj]. "
"Renvoie une instance [WeakRef] vide si [param obj] est [code]null[/code]. "
"Affiche une erreur et renvoie [code]null[/code] si [param obj] n'est ni "
"dérivé [Object] ni [code]null[/code].\n"
"Une référence faible à un objet n'est pas suffisante pour garder l'objet en "
"vie : lorsque les seules références restantes à un référent sont des "
"références faibles, le nettoyeur de mémoire est libre de détruire le référent "
"et de réutiliser sa mémoire pour autre chose. Cependant, jusqu'à ce que "
"l'objet soit effectivement détruit, la référence faible peut renvoyer l'objet "
"même s'il n'y a pas de références fortes à celui-ci."

msgid ""
"Wraps the [Variant] [param value] between [param min] and [param max]. [param "
"min] is [i]inclusive[/i] while [param max] is [i]exclusive[/i]. This can be "
"used for creating loop-like behavior or infinite surfaces.\n"
"Variant types [int] and [float] are supported. If any of the arguments is "
"[float], this function returns a [float], otherwise it returns an [int].\n"
"[codeblock]\n"
"var a = wrap(4, 5, 10)\n"
"# a is 9 (int)\n"
"\n"
"var a = wrap(7, 5, 10)\n"
"# a is 7 (int)\n"
"\n"
"var a = wrap(10.5, 5, 10)\n"
"# a is 5.5 (float)\n"
"[/codeblock]"
msgstr ""
"Enroule le [Variant] [param value] entre [param min] et [param max]. [param "
"min] est [i]inclusif[/i] tandis que [param max] est [i]exclusif[/i]. Peut "
"être utilisé pour créer un comportement de boucle ou des surfaces infinies.\n"
"Les types de variants [int] et [float] sont supportés. Si l'un des arguments "
"est [float], cette fonction renvoie un [float], sinon elle renvoie un [int].\n"
"[codeblock]\n"
"var a = wrap(4, 5, 10)\n"
"# a vaut 9 (int)\n"
"\n"
"var a = wrap(7, 5, 10)\n"
"# a vaut 7 (int)\n"
"\n"
"var a = wrap(10.5, 5, 10)\n"
"# a vaut 5.5 (float)\n"
"[/codeblock]"

msgid ""
"Wraps the float [param value] between [param min] and [param max]. [param "
"min] is [i]inclusive[/i] while [param max] is [i]exclusive[/i]. This can be "
"used for creating loop-like behavior or infinite surfaces.\n"
"[codeblock]\n"
"# Infinite loop between 5.0 and 9.9\n"
"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
"[/codeblock]\n"
"[b]Note:[/b] If [param min] is [code]0[/code], this is equivalent to [method "
"fposmod], so prefer using that instead. [method wrapf] is more flexible than "
"using the [method fposmod] approach by giving the user control over the "
"minimum value."
msgstr ""
"Enroule le flottant [param value] entre [param min] and [param max]. [param "
"min] est [i]inclusif[/i] tandis que [param max] est [i]exclusif[/i]. Cela "
"peut être utilisé pour émuler des boucles ou des surfaces infinies.\n"
"[codeblock]\n"
"# Boucle infinie entre 5.0 et 9.9\n"
"valeur = wrapf(valeur + 0.1 ,5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Rotation infinie (en radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Rotation infinie (en radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
"[/codeblock]\n"
"[b]Note :[/b] Si [param min] vaut [code]0[/code], la méthode est équivalente "
"à [method fposmod], donc préférez l'utiliser à la place. [method wrapf] est "
"plus flexible que [method fposmod] en donnant à l'utilisateur le contrôle de "
"la valeur sur la valeur minimale."

msgid ""
"Wraps the integer [param value] between [param min] and [param max]. [param "
"min] is [i]inclusive[/i] while [param max] is [i]exclusive[/i]. This can be "
"used for creating loop-like behavior or infinite surfaces.\n"
"[codeblock]\n"
"# Infinite loop between 5 and 9\n"
"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
"[/codeblock]"
msgstr ""
"Enroule l'entier [param value] entre [param min] et [param max]. [param min] "
"est [i]inclusif[/i] tandis que [param max] est [i]exclusif[/i]. Peut être "
"utilisé pour créer des comportements de boucle ou des surfaces infinies.\n"
"[codeblock]\n"
"# Boucle infinie entre 5 et 9\n"
"trame = wrapi(trame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Le résultat est -2\n"
"var result = wrapi(-6, -5, -1)\n"
"[/codeblock]"

msgid "The [AudioServer] singleton."
msgstr "Le singleton [AudioServer]."

msgid "The [CameraServer] singleton."
msgstr "Le singleton [CameraServer]."

msgid "The [ClassDB] singleton."
msgstr "Le singleton [ClassDB]."

msgid "The [DisplayServer] singleton."
msgstr "Le singleton [DisplayServer]."

msgid ""
"The [EditorInterface] singleton.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Le singleton [EditorInterface].\n"
"[b]Note :[/b] Uniquement disponible dans les compilations de l'éditeur."

msgid "The [Engine] singleton."
msgstr "Le singleton [Engine]."

msgid "The [EngineDebugger] singleton."
msgstr "Le singleton [EngineDebugger]."

msgid "The [GDExtensionManager] singleton."
msgstr "Le singleton [GDExtensionManager]."

msgid "The [Geometry2D] singleton."
msgstr "Le singleton [Geometry2D]."

msgid "The [Geometry3D] singleton."
msgstr "Le singleton [Geometry3D]."

msgid "The [IP] singleton."
msgstr "Le singleton [IP]."

msgid "The [Input] singleton."
msgstr "Le singleton [Input]."

msgid "The [InputMap] singleton."
msgstr "Le singleton [InputMap]."

msgid ""
"The [JavaClassWrapper] singleton.\n"
"[b]Note:[/b] Only implemented on Android."
msgstr ""
"Le singleton [JavaClassWrapper].\n"
"[b]Remarque :[/b] Uniquement implémenté sur Android."

msgid ""
"The [JavaScriptBridge] singleton.\n"
"[b]Note:[/b] Only implemented on the Web platform."
msgstr ""
"Le singleton [JavaScriptBridge].\n"
"[b]Note :[/b] Uniquement implémenté sur la plateforme Web."

msgid "The [Marshalls] singleton."
msgstr "Le singleton [Marshalls]."

msgid ""
"The [NativeMenu] singleton.\n"
"[b]Note:[/b] Only implemented on macOS."
msgstr ""
"Le singleton [NativeMenu].\n"
"[b]Note :[/b] Uniquement implémenté sur macOS."

msgid "The [NavigationMeshGenerator] singleton."
msgstr "Le singleton du [NavigationMeshGenerator]."

msgid "The [NavigationServer2D] singleton."
msgstr "Le singleton [NavigationServer2D]."

msgid "The [NavigationServer3D] singleton."
msgstr "Le singleton [NavigationServer3D]."

msgid "The [OS] singleton."
msgstr "Le singleton [OS]."

msgid "The [Performance] singleton."
msgstr "Le singleton [Performance]."

msgid "The [PhysicsServer2D] singleton."
msgstr "Le singleton [PhysicsServer2D]."

msgid "The [PhysicsServer2DManager] singleton."
msgstr "Le singleton [PhysicsServer2DManager]."

msgid "The [PhysicsServer3D] singleton."
msgstr "Le singleton [PhysicsServer3D]."

msgid "The [PhysicsServer3DManager] singleton."
msgstr "Le singleton [PhysicsServer3DManager]."

msgid "The [ProjectSettings] singleton."
msgstr "Le singleton [ProjectSettings]."

msgid "The [RenderingServer] singleton."
msgstr "Le singleton [RenderingServer]."

msgid "The [ResourceLoader] singleton."
msgstr "Le singleton [ResourceLoader]."

msgid "The [ResourceSaver] singleton."
msgstr "Le singleton [ResourceLoader]."

msgid "The [ResourceUID] singleton."
msgstr "Le singleton [ResourceUID]."

msgid "The [TextServerManager] singleton."
msgstr "Le singleton [TextServerManager]."

msgid "The [ThemeDB] singleton."
msgstr "Le singleton [ThemeDB]."

msgid "The [Time] singleton."
msgstr "Le singleton du [Time]."

msgid "The [TranslationServer] singleton."
msgstr "Le singleton [TranslationServer]."

msgid "The [WorkerThreadPool] singleton."
msgstr "Le singleton [WorkerThreadPool]."

msgid "The [XRServer] singleton."
msgstr "Le singleton [XRServer]."

msgid "Left side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Côté gauche, généralement utilisé pour les classes dérivées de [Control] ou "
"[StyleBox]."

msgid "Top side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Côté haut, généralement utilisé pour les classes dérivées de [Control] ou "
"[StyleBox]."

msgid "Right side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Côté droit, habituellement utilisé pour les classes dérivées de [Control] ou "
"[StyleBox]."

msgid "Bottom side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Côté haut, habituellement utilisé pour les classes dérivées de [Control] ou "
"de [StyleBox]."

msgid "Top-left corner."
msgstr "Coin supérieur gauche."

msgid "Top-right corner."
msgstr "Coin supérieur droit."

msgid "Bottom-right corner."
msgstr "Coin inférieur droit."

msgid "Bottom-left corner."
msgstr "Coin inférieur gauche."

msgid ""
"General vertical alignment, usually used for [Separator], [ScrollBar], "
"[Slider], etc."
msgstr ""
"Alignement vertical général, généralement utilisé pour les [Separator], "
"[ScrollBar], [Slider], etc."

msgid ""
"General horizontal alignment, usually used for [Separator], [ScrollBar], "
"[Slider], etc."
msgstr ""
"Alignement horizontal général, généralement utilisé pour les [Separator], "
"[ScrollBar], [Slider], etc."

msgid ""
"Clockwise rotation. Used by some methods (e.g. [method Image.rotate_90])."
msgstr ""
"Rotation horaire. Utilisée par certaines méthodes (e.g. [method "
"Image.rotate_90])."

msgid ""
"Counter-clockwise rotation. Used by some methods (e.g. [method "
"Image.rotate_90])."
msgstr ""
"Rotation anti-horaire. Utilisée par certaines méthodes (e.g. [method "
"Image.rotate_90])."

msgid "Horizontal left alignment, usually for text-derived classes."
msgstr ""
"Alignement horizontal à gauche, généralement pour des classes dérivées de "
"texte."

msgid "Horizontal center alignment, usually for text-derived classes."
msgstr ""
"Alignement horizontal centre, généralement pour des classes dérivées de texte."

msgid "Horizontal right alignment, usually for text-derived classes."
msgstr ""
"Alignement horizontal droite, généralement pour des classes dérivées de texte."

msgid "Expand row to fit width, usually for text-derived classes."
msgstr ""
"Étend la ligne pour faire correspondre à la largeur, habituellement pour les "
"classes de texte."

msgid "Vertical top alignment, usually for text-derived classes."
msgstr ""
"Alignement vertical haut, généralement pour des classes dérivées de texte."

msgid "Vertical center alignment, usually for text-derived classes."
msgstr ""
"Alignement vertical centre, généralement pour des classes dérivées de texte."

msgid "Vertical bottom alignment, usually for text-derived classes."
msgstr ""
"Alignement vertical bas, généralement pour des classes dérivées de texte."

msgid "Expand rows to fit height, usually for text-derived classes."
msgstr ""
"Étend les lignes pour faire correspondre à la hauteur, habituellement pour "
"les classes de texte."

msgid ""
"Aligns the top of the inline object (e.g. image, table) to the position of "
"the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant."
msgstr ""
"Aligne le haut de l'objet incorporé (par ex. image, tableau) à la position du "
"texte spécifié par la constante [code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Aligns the center of the inline object (e.g. image, table) to the position of "
"the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant."
msgstr ""
"Aligne le centre de l'objet incorporé (par ex. image, tableau) à la position "
"du texte spécifié par la constante [code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Aligns the baseline (user defined) of the inline object (e.g. image, table) "
"to the position of the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] "
"constant."
msgstr ""
"Aligne la référence (définie par l'utilisateur) de l'objet incorporé (par ex. "
"image, tableau) à la position du texte spécifié par la constante "
"[code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Aligns the bottom of the inline object (e.g. image, table) to the position of "
"the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant."
msgstr ""
"Aligne le bas de l'objet incorporé (par ex. image, tableau) à la position du "
"texte spécifié par la constante [code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Aligns the position of the inline object (e.g. image, table) specified by "
"[code]INLINE_ALIGNMENT_*_TO[/code] constant to the top of the text."
msgstr ""
"Aligne la position de l'objet incorporé (par ex. image, tableau) spécifiée "
"par la constante [code]INLINE_ALIGNMENT_*_TO[/code] au haut du texte."

msgid ""
"Aligns the position of the inline object (e.g. image, table) specified by "
"[code]INLINE_ALIGNMENT_*_TO[/code] constant to the center of the text."
msgstr ""
"Aligne la position de l'objet incorporé (par ex. image, tableau) spécifiée "
"par la constante [code]INLINE_ALIGNMENT_*_TO[/code] au centre du texte."

msgid ""
"Aligns the position of the inline object (e.g. image, table) specified by "
"[code]INLINE_ALIGNMENT_*_TO[/code] constant to the baseline of the text."
msgstr ""
"Aligne la position de l'objet incorporé (par ex. image, tableau) spécifiée "
"par la constante [code]INLINE_ALIGNMENT_*_TO[/code] à la base du texte."

msgid "Aligns inline object (e.g. image, table) to the bottom of the text."
msgstr "Aligne l'objet incorporé (par ex. image, tableau) au bas du texte."

msgid ""
"Aligns top of the inline object (e.g. image, table) to the top of the text. "
"Equivalent to [code]INLINE_ALIGNMENT_TOP_TO | INLINE_ALIGNMENT_TO_TOP[/code]."
msgstr ""
"Aligne le haut de l'objet incorporé (par ex. image, tableau) en haut du "
"texte. Équivalent à [code]INLINE_ALIGNMENT_TOP_TO | INLINE_ALIGNMENT_TO_TOP[/"
"code]."

msgid ""
"Aligns center of the inline object (e.g. image, table) to the center of the "
"text. Equivalent to [code]INLINE_ALIGNMENT_CENTER_TO | "
"INLINE_ALIGNMENT_TO_CENTER[/code]."
msgstr ""
"Aligne le centre de l'objet incorporé (par ex. image, tableau) au centre du "
"texte. Équivalent à [code]INLINE_ALIGNMENT_CENTER_TO | "
"INLINE_ALIGNMENT_TO_CENTER[/code]."

msgid ""
"Aligns bottom of the inline object (e.g. image, table) to the bottom of the "
"text. Equivalent to [code]INLINE_ALIGNMENT_BOTTOM_TO | "
"INLINE_ALIGNMENT_TO_BOTTOM[/code]."
msgstr ""
"Aligne le bas de l'objet incorporé (par ex. image, tableau) au bas du texte. "
"Équivalent à [code]INLINE_ALIGNMENT_BOTTOM_TO | INLINE_ALIGNMENT_TO_BOTTOM[/"
"code]."

msgid "A bit mask for [code]INLINE_ALIGNMENT_*_TO[/code] alignment constants."
msgstr ""
"Un masque de bits pour les constantes d'alignement "
"[code]INLINE_ALIGNMENT_*_TO[/code]."

msgid "A bit mask for [code]INLINE_ALIGNMENT_TO_*[/code] alignment constants."
msgstr ""
"Un masque de bits pour les constantes d'alignement "
"[code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Specifies that Euler angles should be in XYZ order. When composing, the order "
"is X, Y, Z. When decomposing, the order is reversed, first Z, then Y, and X "
"last."
msgstr ""
"Indique que les angles Euler doivent être dans l'ordre XYZ. Lors de la "
"composition, l'ordre est X, Y, Z. Lors de la décomposition, l'ordre est "
"inversé, Z en premier, puis Y, et enfin X."

msgid ""
"Specifies that Euler angles should be in XZY order. When composing, the order "
"is X, Z, Y. When decomposing, the order is reversed, first Y, then Z, and X "
"last."
msgstr ""
"Indique que les angles Euler doivent être dans l'ordre XZY. Lors de la "
"composition, l'ordre est X, Z, Y. Lors de la décomposition, l'ordre est "
"inversé, Y en premier, puis Z, et enfin X."

msgid ""
"Specifies that Euler angles should be in YXZ order. When composing, the order "
"is Y, X, Z. When decomposing, the order is reversed, first Z, then X, and Y "
"last."
msgstr ""
"Indique que les angles Euler doivent être dans l'ordre YXZ. Lors de la "
"composition, l'ordre est Y, X, Z. Lors de la décomposition, l'ordre est "
"inversé, Z en premier, puis X, et enfin Y."

msgid ""
"Specifies that Euler angles should be in YZX order. When composing, the order "
"is Y, Z, X. When decomposing, the order is reversed, first X, then Z, and Y "
"last."
msgstr ""
"Indique que les angles d'Euler doivent être dans l'ordre YZX. Lors de la "
"composition, l'ordre est Y, Z, X. Lors de la décomposition, l'ordre est "
"inversé, X en premier, puis Z et enfin Y."

msgid ""
"Specifies that Euler angles should be in ZXY order. When composing, the order "
"is Z, X, Y. When decomposing, the order is reversed, first Y, then X, and Z "
"last."
msgstr ""
"Indique que les angles Euler doivent être dans l'ordre ZXY. Lors de la "
"composition, l'ordre est Z, X, Y. Lors de la décomposition, l'ordre est "
"inversé, Y en premier, puis X, et enfin Z."

msgid ""
"Specifies that Euler angles should be in ZYX order. When composing, the order "
"is Z, Y, X. When decomposing, the order is reversed, first X, then Y, and Z "
"last."
msgstr ""
"Indique que les angles Euler doivent être dans l'ordre ZYX. Lors de la "
"composition, l'ordre est Z, Y, X. Lors de la décomposition, l'ordre est "
"inversé, X en premier, puis Y, et enfin Z."

msgid ""
"Enum value which doesn't correspond to any key. This is used to initialize "
"[enum Key] properties with a generic state."
msgstr ""
"Valeur d'énumération qui ne correspond à aucune touche. Utilisé pour "
"initialiser les propriétés [enum Key] à un état générique."

msgid "Keycodes with this bit applied are non-printable."
msgstr "Les codes de touches avec ce bit appliqué ne sont pas affichables."

msgid "Escape key."
msgstr "Touche Échap."

msgid "Tab key."
msgstr "Touche de tabulation."

msgid "Shift + Tab key."
msgstr "Touche Maj + Tab."

msgid "Backspace key."
msgstr "Touche de retour arrière."

msgid "Return key (on the main keyboard)."
msgstr "Touche Entrée (sur le clavier principal)."

msgid "Enter key on the numeric keypad."
msgstr "Touche Entrée sur le pavé numérique."

msgid "Insert key."
msgstr "Touche d'insertion."

msgid "Delete key."
msgstr "Touche de suppression."

msgid "Pause key."
msgstr "Touche Pause."

msgid "Print Screen key."
msgstr "Touche d'impression d'écran."

msgid "System Request key."
msgstr "Clé de demande système."

msgid "Clear key."
msgstr "Touche d'effacement."

msgid "Home key."
msgstr "Touche Accueil."

msgid "End key."
msgstr "Touche de fin."

msgid "Left arrow key."
msgstr "Touche de la flèche gauche."

msgid "Up arrow key."
msgstr "Touche de la flèche haut."

msgid "Right arrow key."
msgstr "Touche de la flèche droite."

msgid "Down arrow key."
msgstr "Touche de la flèche bas."

msgid "Page Up key."
msgstr "Touche Page précédente."

msgid "Page Down key."
msgstr "Touche Page suivante."

msgid "Shift key."
msgstr "Touche Shift."

msgid "Control key."
msgstr "Touche contrôle."

msgid "Meta key."
msgstr "Touche méta."

msgid "Alt key."
msgstr "Touche Alt."

msgid "Caps Lock key."
msgstr "Touche de verrouillage des majuscules."

msgid "Num Lock key."
msgstr "Touche de verrouillage numérique."

msgid "Scroll Lock key."
msgstr "Touche de verrouillage du défilement."

msgid "F1 key."
msgstr "Touche F1."

msgid "F2 key."
msgstr "Touche F2."

msgid "F3 key."
msgstr "Touche F3."

msgid "F4 key."
msgstr "Touche F4."

msgid "F5 key."
msgstr "Touche F5."

msgid "F6 key."
msgstr "Touche F6."

msgid "F7 key."
msgstr "Touche F7."

msgid "F8 key."
msgstr "Touche F8."

msgid "F9 key."
msgstr "Touche F9."

msgid "F10 key."
msgstr "Touche F10."

msgid "F11 key."
msgstr "Touche F11."

msgid "F12 key."
msgstr "Touche F12."

msgid "F13 key."
msgstr "Touche F13."

msgid "F14 key."
msgstr "Touche F14."

msgid "F15 key."
msgstr "Touche F15."

msgid "F16 key."
msgstr "Touche F16."

msgid "F17 key."
msgstr "Touche F7."

msgid "F18 key."
msgstr "Touche F8."

msgid "F19 key."
msgstr "Touche F9."

msgid "F20 key."
msgstr "Touche F20."

msgid "F21 key."
msgstr "Touche F21."

msgid "F22 key."
msgstr "Touche F22."

msgid "F23 key."
msgstr "Touche F23."

msgid "F24 key."
msgstr "Touche F24."

msgid "F25 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F25. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F26 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F26. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F27 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F27. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F28 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F28. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F29 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F29. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F30 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F30. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F31 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F31. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F32 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F32. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F33 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F33. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F34 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F34. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "F35 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Touche F35. Supporté uniquement sur macOS et Linux à cause d'une limitation "
"de Windows."

msgid "Multiply (*) key on the numeric keypad."
msgstr "Touche de multiplication (*) sur le pavé numérique."

msgid "Divide (/) key on the numeric keypad."
msgstr "Touche de division (/) sur le pavé numérique."

msgid "Subtract (-) key on the numeric keypad."
msgstr "Touche de soustraction (-) sur le pavé numérique."

msgid "Period (.) key on the numeric keypad."
msgstr "Touche point (.) sur le pavé numérique."

msgid "Add (+) key on the numeric keypad."
msgstr "Touche d'addition (+) sur le pavé numérique."

msgid "Number 0 on the numeric keypad."
msgstr "Chiffre 0 sur le pavé numérique."

msgid "Number 1 on the numeric keypad."
msgstr "Chiffre 1 sur le pavé numérique."

msgid "Number 2 on the numeric keypad."
msgstr "Chiffre 2 sur le pavé numérique."

msgid "Number 3 on the numeric keypad."
msgstr "Chiffre 3 sur le pavé numérique."

msgid "Number 4 on the numeric keypad."
msgstr "Chiffre 4 sur le pavé numérique."

msgid "Number 5 on the numeric keypad."
msgstr "Chiffre 5 sur le pavé numérique."

msgid "Number 6 on the numeric keypad."
msgstr "Chiffre 6 sur le pavé numérique."

msgid "Number 7 on the numeric keypad."
msgstr "Chiffre 7 sur le pavé numérique."

msgid "Number 8 on the numeric keypad."
msgstr "Chiffre 8 sur le pavé numérique."

msgid "Number 9 on the numeric keypad."
msgstr "Chiffre 9 sur le pavé numérique."

msgid "Context menu key."
msgstr "Touche de menu contextuel."

msgid "Hyper key. (On Linux/X11 only)."
msgstr "Touche Hyper. (Seulement sur Linux/X11)."

msgid "Help key."
msgstr "Touche d’aide."

msgid "Back key."
msgstr "Touche Retour."

msgid "Forward key."
msgstr "Touche avant."

msgid "Media stop key."
msgstr "Clé d'arrêt de média."

msgid "Refresh key."
msgstr "Touche rafraîchissement."

msgid "Volume down key."
msgstr "Touche de réduction du volume."

msgid "Mute volume key."
msgstr "Touche de mise en sourdine du volume."

msgid "Volume up key."
msgstr "Touche d'augmentation du volume."

msgid "Media play key."
msgstr "Clé de lecture de média."

msgid "Previous song key."
msgstr "Touche de chanson précédente."

msgid "Next song key."
msgstr "Touche de chanson suivante."

msgid "Media record key."
msgstr "Clé d’enregistrement de média."

msgid "Home page key."
msgstr "Clé de la page d'accueil."

msgid "Favorites key."
msgstr "Touche Favoris."

msgid "Search key."
msgstr "Clé de recherche."

msgid "Standby key."
msgstr "Touche de veille."

msgid "Open URL / Launch Browser key."
msgstr "Clé d'ouverture d'URL / Lancement du navigateur."

msgid "Launch Mail key."
msgstr "Clé de lancement d'e-mail."

msgid "Launch Media key."
msgstr "Clé de lancement de média."

msgid "Launch Shortcut 0 key."
msgstr "Touche de lancement du raccourci 0."

msgid "Launch Shortcut 1 key."
msgstr "Touche de lancement du raccourci 1."

msgid "Launch Shortcut 2 key."
msgstr "Touche de lancement du raccourci 2."

msgid "Launch Shortcut 3 key."
msgstr "Touche de lancement du raccourci 3."

msgid "Launch Shortcut 4 key."
msgstr "Touche de lancement du raccourci 4."

msgid "Launch Shortcut 5 key."
msgstr "Touche de lancement du raccourci 5."

msgid "Launch Shortcut 6 key."
msgstr "Touche de lancement du raccourci 6."

msgid "Launch Shortcut 7 key."
msgstr "Touche de lancement du raccourci 7."

msgid "Launch Shortcut 8 key."
msgstr "Touche de lancement du raccourci 8."

msgid "Launch Shortcut 9 key."
msgstr "Touche de lancement du raccourci 9."

msgid "Launch Shortcut A key."
msgstr "Touche de lancement du raccourci A."

msgid "Launch Shortcut B key."
msgstr "Touche de lancement du raccourci B."

msgid "Launch Shortcut C key."
msgstr "Touche de lancement du raccourci C."

msgid "Launch Shortcut D key."
msgstr "Touche de lancement du raccourci D."

msgid "Launch Shortcut E key."
msgstr "Touche de lancement du raccourci E."

msgid "Launch Shortcut F key."
msgstr "Touche de lancement du raccourci F."

msgid "\"Globe\" key on Mac / iPad keyboard."
msgstr "Touche \"Globe\" sur le clavier Mac / iPad."

msgid "\"On-screen keyboard\" key on iPad keyboard."
msgstr "Touche \"Clavier à l'écran\" sur clavier iPad."

msgid "英数 key on Mac keyboard."
msgstr "Touche 英数 sur le clavier Mac."

msgid "かな key on Mac keyboard."
msgstr "Touche かな sur le clavier Mac."

msgid "Unknown key."
msgstr "Touché inconnue."

msgid "Space key."
msgstr "Touche espace."

msgid "Exclamation mark ([code]![/code]) key."
msgstr "Touche de point d'exclamation ([code]![/code])."

msgid "Double quotation mark ([code]\"[/code]) key."
msgstr "Touche de guillemets doubles ([code]\"[/code])."

msgid "Number sign or [i]hash[/i] ([code]#[/code]) key."
msgstr "Touche croisillon ([code]#[/code])."

msgid "Dollar sign ([code]$[/code]) key."
msgstr "Touche de symbole dollar ([code]$[/code])."

msgid "Percent sign ([code]%[/code]) key."
msgstr "Touche de pourcentage ([code]%[/code])."

msgid "Ampersand ([code]&[/code]) key."
msgstr "Touche esperluette ([code]&[/code])."

msgid "Apostrophe ([code]'[/code]) key."
msgstr "Touche apostrophe ([code]'[/code])."

msgid "Left parenthesis ([code]([/code]) key."
msgstr "Touche de parenthèse gauche ([code]([/code])."

msgid "Right parenthesis ([code])[/code]) key."
msgstr "Touche de parenthèse droite ([code])[/code])."

msgid "Asterisk ([code]*[/code]) key."
msgstr "Touche astérisque ([code]*[/code])."

msgid "Plus ([code]+[/code]) key."
msgstr "Touche plus ([code]+[/code])."

msgid "Comma ([code],[/code]) key."
msgstr "Touche virgule ([code],[/code])."

msgid "Minus ([code]-[/code]) key."
msgstr "Touche moins ([code]-[/code])."

msgid "Period ([code].[/code]) key."
msgstr "Touche point ([code].[/code])."

msgid "Slash ([code]/[/code]) key."
msgstr "Touche slash ([code]/[/code])."

msgid "Number 0 key."
msgstr "Touche nombre 0."

msgid "Number 1 key."
msgstr "Touche nombre 1."

msgid "Number 2 key."
msgstr "Touche nombre 2."

msgid "Number 3 key."
msgstr "Touche nombre 3."

msgid "Number 4 key."
msgstr "Touche nombre 4."

msgid "Number 5 key."
msgstr "Touche nombre 5."

msgid "Number 6 key."
msgstr "Touche nombre 6."

msgid "Number 7 key."
msgstr "Touche nombre 7."

msgid "Number 8 key."
msgstr "Touche nombre 8."

msgid "Number 9 key."
msgstr "Touche nombre 9."

msgid "Colon ([code]:[/code]) key."
msgstr "Touche deux-points ([code]:[/code])."

msgid "Semicolon ([code];[/code]) key."
msgstr "Touche point-virgule ([code];[/code])."

msgid "Less-than sign ([code]<[/code]) key."
msgstr "Touche de symbole inférieur à ([code]<[/code])."

msgid "Equal sign ([code]=[/code]) key."
msgstr "Touche de symbole égal ([code]=[/code])."

msgid "Greater-than sign ([code]>[/code]) key."
msgstr "Touche de supérieur à ([code]>[/code])."

msgid "Question mark ([code]?[/code]) key."
msgstr "Touche de point d'interrogation ([code]?[/code])."

msgid "At sign ([code]@[/code]) key."
msgstr "Touche de symbole arobase ([code]@[/code])."

msgid "A key."
msgstr "Touche A."

msgid "B key."
msgstr "Touche B."

msgid "C key."
msgstr "Touche C."

msgid "D key."
msgstr "Touche D."

msgid "E key."
msgstr "Touche E."

msgid "F key."
msgstr "Touche F."

msgid "G key."
msgstr "Touche G."

msgid "H key."
msgstr "Touche H."

msgid "I key."
msgstr "Touche I."

msgid "J key."
msgstr "Touche J."

msgid "K key."
msgstr "Touche K."

msgid "L key."
msgstr "Touche L."

msgid "M key."
msgstr "Touche M."

msgid "N key."
msgstr "Touche N."

msgid "O key."
msgstr "Touche O."

msgid "P key."
msgstr "Touche P."

msgid "Q key."
msgstr "Touche Q."

msgid "R key."
msgstr "Touche R."

msgid "S key."
msgstr "Touche S."

msgid "T key."
msgstr "Touche T."

msgid "U key."
msgstr "Touche U."

msgid "V key."
msgstr "Touche V."

msgid "W key."
msgstr "Touche W."

msgid "X key."
msgstr "Touche X."

msgid "Y key."
msgstr "Touche Y."

msgid "Z key."
msgstr "Touche Z."

msgid "Left bracket ([code][lb][/code]) key."
msgstr "Touche crochet gauche ([code][lb][/code])."

msgid "Backslash ([code]\\[/code]) key."
msgstr "Touche antislash ([code]\\[/code])."

msgid "Right bracket ([code][rb][/code]) key."
msgstr "Touche crochet droit ([code][lb][/code])."

msgid "Caret ([code]^[/code]) key."
msgstr "Touche caret / accent circonflexe ([code]^[/code])."

msgid "Underscore ([code]_[/code]) key."
msgstr "Touche tiret du bas ([code]_[/code])."

msgid "Backtick ([code]`[/code]) key."
msgstr "Touche accent grave ([code]`[/code])."

msgid "Left brace ([code]{[/code]) key."
msgstr "Touche accolade gauche ([code]{[/code])."

msgid "Vertical bar or [i]pipe[/i] ([code]|[/code]) key."
msgstr "Touche barre verticale ou [i]pipe[/i] ([code]|[/code])."

msgid "Right brace ([code]}[/code]) key."
msgstr "Touche d'accolade droite ([code]}[/code])."

msgid "Tilde ([code]~[/code]) key."
msgstr "Touche tilde ([code]~[/code])."

msgid "Yen symbol ([code]¥[/code]) key."
msgstr "Touche de symbole du yen ([code]¥[/code])."

msgid "Section sign ([code]§[/code]) key."
msgstr "Touche de symbole de paragraphe ([code]§[/code])."

msgid "Key Code mask."
msgstr "Masque de code clé."

msgid "Modifier key mask."
msgstr "Masque de touche de modification."

msgid ""
"Automatically remapped to [constant KEY_META] on macOS and [constant "
"KEY_CTRL] on other platforms, this mask is never set in the actual events, "
"and should be used for key mapping only."
msgstr ""
"Réattribué automatiquement à [constant KEY_META] sur macOS et [constant "
"KEY_CTRL] sur les autres plateformes, ce masque n'est jamais défini dans les "
"événements réels, et devrait être utilisé pour le mapping des touches "
"uniquement."

msgid "Shift key mask."
msgstr "Masque de la touche Shift."

msgid "Alt or Option (on macOS) key mask."
msgstr "Masque de touche Alt ou Option (sur macOS)."

msgid "Command (on macOS) or Meta/Windows key mask."
msgstr "Masque de touche Commande (sur macOS) ou Meta/Windows."

msgid "Control key mask."
msgstr "Masque de la touche Ctrl."

msgid "Keypad key mask."
msgstr "Masque des touches du clavier."

msgid "Group Switch key mask."
msgstr "Masque de l'interrupteur groupe."

msgid ""
"Used for keys which only appear once, or when a comparison doesn't need to "
"differentiate the [code]LEFT[/code] and [code]RIGHT[/code] versions.\n"
"For example, when using [method InputEvent.is_match], an event which has "
"[constant KEY_LOCATION_UNSPECIFIED] will match any [enum KeyLocation] on the "
"passed event."
msgstr ""
"Utilisé pour les touches qui n'apparaissent qu'une fois, ou lorsqu'une "
"comparaison n'a pas besoin de différencier les versions [code]LEFT[/code] et "
"[code]RIGHT[/code].\n"
"Par exemple, lors de l'utilisation de [method InputEvent.is_match], un "
"événement qui a [constant KEY_LOCATION_UNSPECIFIED] correspond à toute [enum "
"KeyLocation] sur l'événement passé."

msgid "A key which is to the left of its twin."
msgstr "Une touche qui est à gauche de son jumeau."

msgid "A key which is to the right of its twin."
msgstr "Une touche qui est à droite de son jumeau."

msgid ""
"Enum value which doesn't correspond to any mouse button. This is used to "
"initialize [enum MouseButton] properties with a generic state."
msgstr ""
"Valeur d'énumération qui ne correspond à aucun bouton de souris. Ceci est "
"utilisé pour initialiser les propriétés [enum MouseButton] à un état "
"générique."

msgid "Primary mouse button, usually assigned to the left button."
msgstr "Bouton de souris principal, habituellement assigné au bouton gauche."

msgid "Secondary mouse button, usually assigned to the right button."
msgstr "Bouton de souris secondaire, généralement assigné au bouton droit."

msgid "Middle mouse button."
msgstr "Bouton du milieu de la souris."

msgid "Mouse wheel scrolling up."
msgstr "Défilement vers le haut de la molette de la souris."

msgid "Mouse wheel scrolling down."
msgstr "Défilement vers le bas de la molette de la souris."

msgid "Mouse wheel left button (only present on some mice)."
msgstr ""
"Bouton gauche de la molette souris (présent uniquement sur certaines souris)."

msgid "Mouse wheel right button (only present on some mice)."
msgstr ""
"Bouton gauche de la molette souris (présent uniquement sur certaines souris)."

msgid ""
"Extra mouse button 1. This is sometimes present, usually to the sides of the "
"mouse."
msgstr ""
"Bouton de souris supplémentaire 1. Présent parfois sur certaines souris, en "
"général sur les côtés."

msgid ""
"Extra mouse button 2. This is sometimes present, usually to the sides of the "
"mouse."
msgstr ""
"Bouton de souris supplémentaire 2. Présent parfois sur certaines souris, en "
"général sur les côtés."

msgid "Primary mouse button mask, usually for the left button."
msgstr ""
"Masque de bouton de souris principal, habituellement pour le bouton gauche."

msgid "Secondary mouse button mask, usually for the right button."
msgstr ""
"Masque du bouton secondaire de la souris, habituellement pour le bouton droit."

msgid "Middle mouse button mask."
msgstr "Masque du bouton central de la souris."

msgid "Extra mouse button 1 mask."
msgstr "Masque du bouton supplémentaire de la souris 1."

msgid "Extra mouse button 2 mask."
msgstr "Masque du bouton supplémentaire de la souris 2."

msgid "An invalid game controller button."
msgstr "Un bouton de manette invalide."

msgid ""
"Game controller SDL button A. Corresponds to the bottom action button: Sony "
"Cross, Xbox A, Nintendo B."
msgstr ""
"Bouton A de manette SDL. Correspond au bouton d'action inférieur : Croix de "
"Sony, A de Xbox, B de Nintendo."

msgid ""
"Game controller SDL button B. Corresponds to the right action button: Sony "
"Circle, Xbox B, Nintendo A."
msgstr ""
"Bouton B de manette SDL. Correspond au bouton d'action droit : Cercle de "
"Sony, B de Xbox, A de Nintendo."

msgid ""
"Game controller SDL button X. Corresponds to the left action button: Sony "
"Square, Xbox X, Nintendo Y."
msgstr ""
"Bouton X de manette SDL. Correspond au bouton d'action gauche : Carré de "
"Sony, X de Xbox, Y de Nintendo."

msgid ""
"Game controller SDL button Y. Corresponds to the top action button: Sony "
"Triangle, Xbox Y, Nintendo X."
msgstr ""
"Bouton Y de manette SDL. Correspond au bouton d'action haut : Triangle de "
"Sony, Y de Xbox, X de Nintendo."

msgid ""
"Game controller SDL back button. Corresponds to the Sony Select, Xbox Back, "
"Nintendo - button."
msgstr ""
"Bouton retour de manette SDL. Correspond au bouton Select de Sony, Back de "
"Xbox, - de Nintendo."

msgid ""
"Game controller SDL guide button. Corresponds to the Sony PS, Xbox Home "
"button."
msgstr ""
"Bouton guide de manette SDL. Correspond au bouton PS de Sony, Home de Xbox."

msgid ""
"Game controller SDL start button. Corresponds to the Sony Options, Xbox Menu, "
"Nintendo + button."
msgstr ""
"Bouton start de manette SDL. Correspond au bouton Options de Sony, Menu de "
"Xbox, + de Nintendo."

msgid ""
"Game controller SDL left stick button. Corresponds to the Sony L3, Xbox L/LS "
"button."
msgstr ""
"Bouton stick gauche de manette SDL. Correspond au bouton L3 de Sony, L/LS de "
"Xbox."

msgid ""
"Game controller SDL right stick button. Corresponds to the Sony R3, Xbox R/RS "
"button."
msgstr ""
"Bouton stick droit de manette SDL. Correspond au bouton R3 de Sony, R/RS de "
"Xbox."

msgid ""
"Game controller SDL left shoulder button. Corresponds to the Sony L1, Xbox LB "
"button."
msgstr ""
"Bouton d'épaule gauche de manette SDL. Correspond au bouton L1 de Sony, LB de "
"Xbox."

msgid ""
"Game controller SDL right shoulder button. Corresponds to the Sony R1, Xbox "
"RB button."
msgstr ""
"Bouton d'épaule droit de manette SDL. Correspond au bouton R1 de Sony, RB de "
"Xbox."

msgid "Game controller D-pad up button."
msgstr "Bouton haut d'un pavé directionnel de contrôleur de jeu."

msgid "Game controller D-pad down button."
msgstr "Bouton bas d'un pavé directionnel de contrôleur de jeu."

msgid "Game controller D-pad left button."
msgstr "Bouton gauche d'un pavé directionnel de contrôleur de jeu."

msgid "Game controller D-pad right button."
msgstr "Bouton droite d'un pavé directionnel de contrôleur de jeu."

msgid ""
"Game controller SDL miscellaneous button. Corresponds to Xbox share button, "
"PS5 microphone button, Nintendo Switch capture button."
msgstr ""
"Bouton divers de manette SDL. Correspond au bouton share de Xbox, microphone "
"de PS5, capture de Nintendo Switch."

msgid "Game controller SDL paddle 1 button."
msgstr "Bouton de palette 1 de manette SDL."

msgid "Game controller SDL paddle 2 button."
msgstr "Bouton de palette 2 de manette SDL."

msgid "Game controller SDL paddle 3 button."
msgstr "Bouton de palette 3 de manette SDL."

msgid "Game controller SDL paddle 4 button."
msgstr "Bouton de palette 4 de manette SDL."

msgid "Game controller SDL touchpad button."
msgstr "Bouton de pavé tactile de manette SDL."

msgid "The number of SDL game controller buttons."
msgstr "Le nombre de boutons de manette SDL."

msgid ""
"The maximum number of game controller buttons supported by the engine. The "
"actual limit may be lower on specific platforms:\n"
"- [b]Android:[/b] Up to 36 buttons.\n"
"- [b]Linux:[/b] Up to 80 buttons.\n"
"- [b]Windows[/b] and [b]macOS:[/b] Up to 128 buttons."
msgstr ""
"Le nombre maximum de boutons de contrôleurs de jeu supporté par le moteur. La "
"limite réelle peut être plus basse sur des plateformes spécifiques :\n"
"- [b]Android : [/b]Jusqu'à 36 boutons.\n"
"- [b]Linux : [/b]Jusqu'à 80 boutons.\n"
"- [b]Windows[/b] et [b]macOS :[/b] Jusqu'à 128 boutons."

msgid "An invalid game controller axis."
msgstr "Un axe de manette invalide."

msgid "Game controller left joystick x-axis."
msgstr "Axe X du joystick gauche de manette."

msgid "Game controller left joystick y-axis."
msgstr "Axe Y du joystick gauche de manette."

msgid "Game controller right joystick x-axis."
msgstr "Axe X du joystick droit de manette."

msgid "Game controller right joystick y-axis."
msgstr "Axe Y du joystick droit de manette."

msgid "Game controller left trigger axis."
msgstr "Axe de la gâchette gauche de manette."

msgid "Game controller right trigger axis."
msgstr "Axe de la gâchette droite de manette."

msgid "The number of SDL game controller axes."
msgstr "Le nombre d'axes de manette SDL."

msgid ""
"The maximum number of game controller axes: OpenVR supports up to 5 Joysticks "
"making a total of 10 axes."
msgstr ""
"Le nombre maximum d'axes de manette : OpenVR supporte jusqu'à 5 joysticks "
"pour un total de 10 axes."

msgid ""
"Does not correspond to any MIDI message. This is the default value of [member "
"InputEventMIDI.message]."
msgstr ""
"Ne correspond à aucun message MIDI. C'est la valeur par défaut de [member "
"InputEventMIDI.message]."

msgid ""
"MIDI message sent when a note is released.\n"
"[b]Note:[/b] Not all MIDI devices send this message; some may send [constant "
"MIDI_MESSAGE_NOTE_ON] with [member InputEventMIDI.velocity] set to [code]0[/"
"code]."
msgstr ""
"Message MIDI envoyé lorsqu'une note est relâchée.\n"
"[b]Note :[/b] Tous les périphériques MIDI n'envoient pas ce message, certains "
"peuvent envoyer [constant MIDI_MESSAGE_NOTE_ON] avec [member "
"InputEventMIDI.velocity] défini à [code]0[/code]."

msgid "MIDI message sent when a note is pressed."
msgstr "Message MIDI envoyé quand une note est appuyée."

msgid ""
"MIDI message sent to indicate a change in pressure while a note is being "
"pressed down, also called aftertouch."
msgstr ""
"Message MIDI envoyé pour indiquer un changement de pression pendant qu'une "
"note est pressée, également appelée aftertouch."

msgid ""
"MIDI message sent when a controller value changes. In a MIDI device, a "
"controller is any input that doesn't play notes. These may include sliders "
"for volume, balance, and panning, as well as switches and pedals. See the "
"[url=https://en.wikipedia.org/wiki/General_MIDI#Controller_events]General "
"MIDI specification[/url] for a small list."
msgstr ""
"Message MIDI envoyé quand une valeur de contrôleur change. Dans un appareil "
"MIDI, un contrôleur est toute entrée qui ne joue pas de notes. Elles peuvent "
"inclure des curseurs pour le volume, l'équilibre et le pannage, ainsi que des "
"interrupteurs et des pédales. Voir [url=https://en.wikipedia.org/wiki/"
"General_MIDI#Controller_events]Spécification MIDI générale[/url] pour une "
"petite liste."

msgid ""
"MIDI message sent when the MIDI device changes its current instrument (also "
"called [i]program[/i] or [i]preset[/i])."
msgstr ""
"Message MIDI envoyé lorsque l'appareil MIDI modifie son instrument actuel "
"(également appelé [i]program[/i] ou [i]preset[/i])."

msgid ""
"MIDI message sent to indicate a change in pressure for the whole channel. "
"Some MIDI devices may send this instead of [constant MIDI_MESSAGE_AFTERTOUCH]."
msgstr ""
"Message MIDI envoyé pour indiquer un changement de pression pour l'ensemble "
"du canal. Certains périphériques MIDI peuvent envoyer ceci au lieu de "
"[constant MIDI_MESSAGE_AFTERTOUCH]."

msgid ""
"MIDI system exclusive (SysEx) message. This type of message is not "
"standardized and it's highly dependent on the MIDI device sending it.\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"Message exclusif au système MIDI (SysEX). Ce type de message n'est pas "
"standardisé et il est fortement dépendant de l'appareil MIDI qui l'envoie.\n"
"[b]Note :[/b] Obtenir les données de ce message depuis [InputEventMIDI] n'est "
"pas implémenté."

msgid ""
"MIDI message sent every quarter frame to keep connected MIDI devices "
"synchronized. Related to [constant MIDI_MESSAGE_TIMING_CLOCK].\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"Le message MIDI envoyé à chaque quart de trame pour garder les périphériques "
"MIDI connectés synchronisés. Lié avec [constant MIDI_MESSAGE_TIMING_CLOCK].\n"
"[b]Note :[/b] Obtenir les données de ce message depuis [InputEventMIDI] n'est "
"pas implémenté."

msgid ""
"MIDI message sent to jump onto a new position in the current sequence or "
"song.\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"Message MIDI envoyé pour sauter vers une nouvelle position dans la séquence "
"ou la chanson courante.\n"
"[b]Note :[/b] Obtenir les données de ce message depuis [InputEventMIDI] n'est "
"pas implémenté."

msgid ""
"MIDI message sent to select a sequence or song to play.\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"Message MIDI envoyé pour sélectionner une séquence ou une chanson à jouer.\n"
"[b]Note : [/b] Obtenir les données de ce message depuis [InputEventMIDI] "
"n'est pas implémenté."

msgid ""
"MIDI message sent to request a tuning calibration. Used on analog "
"synthesizers. Most modern MIDI devices do not need this message."
msgstr ""
"Message MIDI envoyé pour demander un calibrage d'accord. Utilisé sur les "
"synthétiseurs analogiques. La plupart des appareils MIDI modernes n'ont pas "
"besoin de ce message."

msgid ""
"MIDI message sent 24 times after [constant MIDI_MESSAGE_QUARTER_FRAME], to "
"keep connected MIDI devices synchronized."
msgstr ""
"Message MIDI envoyé 24 fois après [constant MIDI_MESSAGE_QUARTER_FRAME], pour "
"garder les périphériques MIDI connectés synchronisés."

msgid ""
"MIDI message sent to start the current sequence or song from the beginning."
msgstr ""
"Message MIDI envoyé pour démarrer la séquence ou la chanson courante dès le "
"début."

msgid ""
"MIDI message sent to resume from the point the current sequence or song was "
"paused."
msgstr ""
"Message MIDI envoyé pour reprendre à partir du moment où la séquence ou la "
"chanson actuelle a été mise en pause."

msgid "MIDI message sent to pause the current sequence or song."
msgstr ""
"Message MIDI envoyé pour mettre en pause la séquence ou la chanson courante."

msgid ""
"MIDI message sent repeatedly while the MIDI device is idle, to tell the "
"receiver that the connection is alive. Most MIDI devices do not send this "
"message."
msgstr ""
"Message MIDI envoyé de manière répétée pendant que le périphérique MIDI est "
"inactif, pour dire au récepteur que la connexion est vivante. La plupart des "
"périphériques MIDI n'envoient pas ce message."

msgid ""
"MIDI message sent to reset a MIDI device to its default state, as if it was "
"just turned on. It should not be sent when the MIDI device is being turned on."
msgstr ""
"Message MIDI envoyé pour réinitialiser un périphérique MIDI à son état par "
"défaut, comme s'il venait de s'allumer. Il ne devrait pas être envoyé lorsque "
"l'appareil MIDI est activé."

msgid ""
"Methods that return [enum Error] return [constant OK] when no error "
"occurred.\n"
"Since [constant OK] has value [code]0[/code], and all other error constants "
"are positive integers, it can also be used in boolean checks.\n"
"[codeblock]\n"
"var error = method_that_returns_error()\n"
"if error != OK:\n"
"\tprinterr(\"Failure!\")\n"
"\n"
"# Or, alternatively:\n"
"if error:\n"
"\tprinterr(\"Still failing!\")\n"
"[/codeblock]\n"
"[b]Note:[/b] Many functions do not return an error code, but will print error "
"messages to standard output."
msgstr ""
"Les méthodes qui renvoient [enum Error] renvoient [constant OK] lorsqu'aucune "
"erreur ne s'est produite.\n"
"Puisque [constant OK] a la valeur [code]0[/code] et que tous les autres "
"constantes d'échec sont des entiers positifs, il peut également être utilisé "
"comme un booléen.\n"
"[codeblock]\n"
"var error = method_that_returns_error()\n"
"if error != OK:\n"
"\tprint (\"Échec !\")\n"
"\n"
"# Ou sinon :\n"
"if error:\n"
"\tprint (\"Échec encore !\")\n"
"[/codeblock]\n"
"[b]Note :[/b] De nombreuses fonctions ne renvoient pas de code d'erreur mais "
"affichent des messages d'erreur sur la sortie standard."

msgid "Generic error."
msgstr "Erreur générique."

msgid "Unavailable error."
msgstr "Erreur indisponible."

msgid "Unconfigured error."
msgstr "Erreur non configurée."

msgid "Unauthorized error."
msgstr "Erreur non autorisée."

msgid "Parameter range error."
msgstr "Erreur de plage de paramètres."

msgid "Out of memory (OOM) error."
msgstr "Erreur de mémoire insuffisante (OOM)."

msgid "File: Not found error."
msgstr "Fichier : Erreur non trouvée."

msgid "File: Bad drive error."
msgstr "Fichier : Erreur de lecteur."

msgid "File: Bad path error."
msgstr "Fichier : Erreur de chemin d’accès."

msgid "File: No permission error."
msgstr "Fichier : Erreur d'absence de permission."

msgid "File: Already in use error."
msgstr "Fichier : Erreur, fichier déjà en usage."

msgid "File: Can't open error."
msgstr "Fichier : Erreur d'impossibilité d'ouverture."

msgid "File: Can't write error."
msgstr "Fichier : Erreur d'écriture."

msgid "File: Can't read error."
msgstr "Fichier : Erreur de lecture."

msgid "File: Unrecognized error."
msgstr "Fichier : Erreur non reconnue."

msgid "File: Corrupt error."
msgstr "Fichier : Erreur de corruption."

msgid "File: Missing dependencies error."
msgstr "Fichier : Erreur de dépendances manquantes."

msgid "File: End of file (EOF) error."
msgstr "Fichier : Erreur fin de fichier(EOF)."

msgid "Can't open error."
msgstr "Erreur d'ouverture."

msgid "Can't create error."
msgstr "Erreur de création."

msgid "Query failed error."
msgstr "Erreur d'échec de la requête."

msgid "Already in use error."
msgstr "Erreur quand déjà utilisé."

msgid "Locked error."
msgstr "Erreur verrouillée."

msgid "Timeout error."
msgstr "Erreur de délai d’expiration."

msgid "Can't connect error."
msgstr "Erreur de connexion."

msgid "Can't resolve error."
msgstr "Erreur de résolution."

msgid "Connection error."
msgstr "Erreur de connexion."

msgid "Can't acquire resource error."
msgstr "Erreur d'acquisition de ressource."

msgid "Can't fork process error."
msgstr "Erreur d'embranchement de processus."

msgid "Invalid data error."
msgstr "Erreur de données invalides."

msgid "Invalid parameter error."
msgstr "Erreur de paramètre invalide."

msgid "Already exists error."
msgstr "Erreur de préexistence."

msgid "Does not exist error."
msgstr "Erreur de non existence."

msgid "Database: Read error."
msgstr "Base de données : Erreur de lecture."

msgid "Database: Write error."
msgstr "Base de données : Erreur d'écriture."

msgid "Compilation failed error."
msgstr "Erreur d’échec de la compilation."

msgid "Method not found error."
msgstr "Erreur de méthode non trouvée."

msgid "Linking failed error."
msgstr "Erreur de liaison échouée."

msgid "Script failed error."
msgstr "Erreur d'échec de script."

msgid "Cycling link (import cycle) error."
msgstr "Erreur de lien cyclique (cycle d'importation)."

msgid "Invalid declaration error."
msgstr "Erreur de déclaration non valide."

msgid "Duplicate symbol error."
msgstr "Erreur de symbole dupliqué."

msgid "Parse error."
msgstr "Erreur d’analyse syntaxique."

msgid "Busy error."
msgstr "Erreur d'occupation."

msgid "Skip error."
msgstr "Ignorer l'erreur."

msgid ""
"Help error. Used internally when passing [code]--version[/code] or [code]--"
"help[/code] as executable options."
msgstr ""
"Erreur d'aide. Utilisé de manière interne lors du passage de [code]--version[/"
"code] ou [code]--help[/code] comme options exécutables."

msgid ""
"Bug error, caused by an implementation issue in the method.\n"
"[b]Note:[/b] If a built-in method returns this code, please open an issue on "
"[url=https://github.com/godotengine/godot/issues]the GitHub Issue Tracker[/"
"url]."
msgstr ""
"Erreur de bogue, causée par un problème d'implémentation dans la méthode.\n"
"[b]Note :[/b] Si une méthode intégrée renvoie ce code, veuillez ouvrir un "
"sujet sur [url=https://github.com/godotengine/godot/issues]l'Issue Tracker de "
"GitHub[/url]."

msgid ""
"Printer on fire error (This is an easter egg, no built-in methods return this "
"error code)."
msgstr ""
"Erreur d'imprimante en feu (C'est une blague, aucune méthode du moteur ne "
"renvoie ce code d'erreur)."

msgid "The property has no hint for the editor."
msgstr "La propriété n'a aucun indice pour l'éditeur."

msgid ""
"Hints that an [int] or [float] property should be within a range specified "
"via the hint string [code]\"min,max\"[/code] or [code]\"min,max,step\"[/"
"code]. The hint string can optionally include [code]\"or_greater\"[/code] and/"
"or [code]\"or_less\"[/code] to allow manual input going respectively above "
"the max or below the min values.\n"
"[b]Example:[/b] [code]\"-360,360,1,or_greater,or_less\"[/code].\n"
"Additionally, other keywords can be included: [code]\"exp\"[/code] for "
"exponential range editing, [code]\"radians_as_degrees\"[/code] for editing "
"radian angles in degrees (the range values are also in degrees), [code]"
"\"degrees\"[/code] to hint at an angle and [code]\"hide_slider\"[/code] to "
"hide the slider."
msgstr ""
"Indique qu'une propriété [int] ou [float] doit être dans un intervalle "
"spécifié via la chaîne d'indice [code]\"min,max\"[/code] ou [code]"
"\"min,max,step\"[/code]. La chaîne d'indice peut en option inclure [code]"
"\"or_greater\"[/code] et/ou [code]\"or_less\"[/code] pour permettre une "
"entrée manuelle allant respectivement au-dessus ou en dessous des valeurs "
"maximales et minimales.\n"
"[b]Exemple :[/b] [code]\"-360,360,1,or_greater,or_less\"[/code].\n"
"De plus, d'autres mots-clés peuvent être inclus : [code]\"exp\"[/code] pour "
"l'édition d'un intervalle exponentiel, [code]\"radians_as_degrees\"[/code] "
"pour l'édition des angles radians en degrés (les valeurs de l'intervalle sont "
"également en degrés), [code]\"degrees\"[/code] pour indiquer un angle et "
"[code]\"hide_slider\"[/code] pour cacher le slider."

msgid ""
"Hints that an [int] or [String] property is an enumerated value to pick in a "
"list specified via a hint string.\n"
"The hint string is a comma separated list of names such as [code]"
"\"Hello,Something,Else\"[/code]. Whitespaces are [b]not[/b] removed from "
"either end of a name. For integer properties, the first name in the list has "
"value 0, the next 1, and so on. Explicit values can also be specified by "
"appending [code]:integer[/code] to the name, e.g. [code]"
"\"Zero,One,Three:3,Four,Six:6\"[/code]."
msgstr ""
"Indique qu'une propriété d'un entier [int] ou une chaine de caractères "
"[String] est une valeur d'énumération à choisir dans une liste spécifiée par "
"une chaîne d'indice.\n"
"Cette chaîne d'indice est une liste séparée par des virgules de noms tels que "
"[code]\"Bonjour,Salut,Autre\"[/code]. Les espace [b]ne sont pas [/b] "
"supprimés du début ou de la fin d'un nom. Pour les propriétés d'entiers, le "
"premier nom de la liste a valeur 0, le suivant 1, et ainsi de suite. Des "
"valeurs explicites peuvent également être spécifiées en ajoutant "
"[code]:integer[/code] au nom, par ex. [code]\"Zéro,Un,Trois:3,Quatre,Six:6\"[/"
"code]."

msgid ""
"Hints that a [String] property can be an enumerated value to pick in a list "
"specified via a hint string such as [code]\"Hello,Something,Else\"[/code].\n"
"Unlike [constant PROPERTY_HINT_ENUM], a property with this hint still accepts "
"arbitrary values and can be empty. The list of values serves to suggest "
"possible values."
msgstr ""
"Indique qu'une propriété [String] peut être une valeur d'énumération parmi "
"une liste spécifiée via une chaîne de caractères d'indice telle que [code]"
"\"Bonjour,Salut,Autre\"[/code].\n"
"Contrairement à [constant PROPERTY_HINT_ENUM], une propriété avec cette "
"indice accepte toujours des valeurs arbitraires et peut être vide. La liste "
"des valeurs permet donc de suggérer des valeurs possibles."

msgid ""
"Hints that a [float] property should be edited via an exponential easing "
"function. The hint string can include [code]\"attenuation\"[/code] to flip "
"the curve horizontally and/or [code]\"positive_only\"[/code] to exclude in/"
"out easing and limit values to be greater than or equal to zero."
msgstr ""
"Indique qu'une propriété de nombre décimal [float] doit être modifiée depuis "
"un une fonction de transition exponentielle. Le texte de l'indication peut "
"inclure [code]\"attenuation\"[/code] pour inverser la courbe horizontalement "
"et/ou [code]\"positive_only\"[/code] pour exclure la transition in/out et "
"forcer les valeurs à être supérieures ou égales à 0."

msgid ""
"Hints that a vector property should allow its components to be linked. For "
"example, this allows [member Vector2.x] and [member Vector2.y] to be edited "
"together."
msgstr ""
"Indique qu'une propriété vectorielle devrait permettre à ses composants "
"d'êtres liés. Par exemple, cela permet [member Vector2.x] et [member "
"Vector2.y] d'être édités ensemble."

msgid ""
"Hints that an [int] property is a bitmask with named bit flags.\n"
"The hint string is a comma separated list of names such as [code]"
"\"Bit0,Bit1,Bit2,Bit3\"[/code]. Whitespaces are [b]not[/b] removed from "
"either end of a name. The first name in the list has value 1, the next 2, "
"then 4, 8, 16 and so on. Explicit values can also be specified by appending "
"[code]:integer[/code] to the name, e.g. [code]\"A:4,B:8,C:16\"[/code]. You "
"can also combine several flags ([code]\"A:4,B:8,AB:12,C:16\"[/code]).\n"
"[b]Note:[/b] A flag value must be at least [code]1[/code] and at most [code]2 "
"** 32 - 1[/code].\n"
"[b]Note:[/b] Unlike [constant PROPERTY_HINT_ENUM], the previous explicit "
"value is not taken into account. For the hint [code]\"A:16,B,C\"[/code], A is "
"16, B is 2, C is 4."
msgstr ""
"Indique qu'une propriété [int] est un maque de bits avec des drapeaux bits "
"nommés.\n"
"La chaîne d'indice est une liste de noms séparée par des virgules tels que "
"[code]\"Bit0,Bit1,Bit2,Bit3\"[/code]. Les espaces blancs [b]ne sont pas [/b] "
"retirés de chaque extrémité d'un nom. Le premier nom de la liste a la valeur "
"1, le 2 suivant, puis 4, 8, 16 et ainsi de suite. Des valeurs explicites "
"peuvent également être spécifiées en ajoutant [code]:integer[/code] au nom, "
"par exemple [code]\"A:4,B:8,C:16\"[/code]. Vous pouvez également combiner "
"plusieurs drapeaux ([code]\"A:4,B:8,AB:12,C:16\"[/code]).\n"
"[b]Note :[/b] Une valeur de drapeau doit être au moins [code]1[/code] et au "
"plus [code]2 ** 32 - 1[/code].\n"
"[b]Note :[/b] Contrairement à [constant PROPERTY_HINT_ENUM], la valeur "
"explicite précédente n'est pas prise en compte. Pour l'indice [code]"
"\"A:16,B,C\"[/code], A est 16, B est 2, C est 4."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 2D "
"render layers."
msgstr ""
"Indique qu'une propriété de nombre entier ([int]) est un masque de bits "
"utilisant les couches de rendu 2D optionnellement nommées."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 2D "
"physics layers."
msgstr ""
"Indique qu'une propriété de nombre entier ([int]) est un masque de bits "
"utilisant les couches de physique 2D optionnellement nommées."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 2D "
"navigation layers."
msgstr ""
"Indique qu'une propriété de nombre entier ([int]) est un masque de bits "
"utilisant les couches de navigation 2D optionnellement nommées."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 3D "
"render layers."
msgstr ""
"Indique qu'une propriété de nombre entier ([int]) est un masque de bits "
"utilisant les couches de rendu 3D optionnellement nommées."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 3D "
"physics layers."
msgstr ""
"Indique qu'une propriété de nombre entier ([int]) est un masque de bits "
"utilisant les couches de physique 3D optionnellement nommées."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 3D "
"navigation layers."
msgstr ""
"Indique qu'une propriété de nombre entier ([int]) est un masque de bits "
"utilisant les couches de navigation 3D optionnellement nommées."

msgid ""
"Hints that an integer property is a bitmask using the optionally named "
"avoidance layers."
msgstr ""
"Indique qu'une propriété d'entier est un masque de bits utilisant des calques "
"d'évitement qui peuvent être nommés."

msgid ""
"Hints that a [String] property is a path to a file. Editing it will show a "
"file dialog for picking the path. The hint string can be a set of filters "
"with wildcards like [code]\"*.png,*.jpg\"[/code]. By default the file will be "
"stored as UID whenever available. You can use [ResourceUID] methods to "
"convert it back to path. For storing a raw path, use [constant "
"PROPERTY_HINT_FILE_PATH]."
msgstr ""
"Indique qu'une propriété chaîne de caractères [String] est un chemin d'accès "
"à un fichier. En l'éditant, une boîte de dialogue de fichier apparaîtra pour "
"choisir le chemin. Le texte de l'indice peut être un ensemble de filtres avec "
"des caractères génériques, comme [code]\"*.png,*.jpg\"[/code]. Par défaut, le "
"fichier sera stocké en tant qu'UID si possible. Vous pouvez utiliser les "
"méthodes de [ResourceUID] pour le reconvertir en chemin. Pour stocker un "
"chemin brut, utilisez [constant PROPERTY_HINT_FILE_PATH]."

msgid ""
"Hints that a [String] property is a path to a directory. Editing it will show "
"a file dialog for picking the path."
msgstr ""
"Indique qu'une propriété chaîne de caractères [String] est un chemin d'accès "
"à un répertoire. En l'éditant, une boîte de dialogue de fichier apparaîtra "
"pour choisir le chemin."

msgid ""
"Hints that a [String] property is an absolute path to a file outside the "
"project folder. Editing it will show a file dialog for picking the path. The "
"hint string can be a set of filters with wildcards, like [code]"
"\"*.png,*.jpg\"[/code]."
msgstr ""
"Indique qu'une propriété de chaîne de caractères [String] est un chemin "
"d'accès absolu à un fichier en dehors du répertoire du projet. En l'éditant, "
"une boîte de dialogue de fichier apparaîtra pour choisir le chemin. Le texte "
"de l'indice peut être un ensemble de filtres avec des caractères génériques, "
"comme [code]\"*.png,*.jpg\"[/code]."

msgid ""
"Hints that a [String] property is an absolute path to a directory outside the "
"project folder. Editing it will show a file dialog for picking the path."
msgstr ""
"Indice que la propriété d'une chaîne de caractères [String] est un chemin "
"d'accès absolu à un fichier en dehors du répertoire du projet. En l'éditant, "
"une boîte de dialogue de fichier apparaîtra pour choisir le chemin."

msgid ""
"Hints that a property is an instance of a [Resource]-derived type, optionally "
"specified via the hint string (e.g. [code]\"Texture2D\"[/code]). Editing it "
"will show a popup menu of valid resource types to instantiate."
msgstr ""
"Indice que la propriété est une instance d'un type dérivé de [Resource], "
"spécifie optionnellement via le texte de l'indice (e.g. [code]\"Texture2D\"[/"
"code]) En l'éditant, un menu contextuel apparaîtra avec les types de "
"ressources valides à instancier."

msgid ""
"Hints that a [String] property is text with line breaks. Editing it will show "
"a text input field where line breaks can be typed."
msgstr ""
"Indique qu'une propriété chaîne de caractères [String] est du texte avec des "
"sauts de ligne. L'éditer affichera une zone de saisie de texte où des sauts "
"de ligne peuvent être tapés."

msgid "Hints that a [String] property is an [Expression]."
msgstr "Indique qu'une propriété [String] est une [Expression]."

msgid ""
"Hints that a [String] property should show a placeholder text on its input "
"field, if empty. The hint string is the placeholder text to use."
msgstr ""
"Indique qu'une propriété chaîne de caractères [String] devrait afficher un "
"texte générique visible dans son champ de saisie quand le propriété est vide. "
"La chaîne de l'indice est le texte générique à utiliser."

msgid ""
"Hints that a [Color] property should be edited without affecting its "
"transparency ([member Color.a] is not editable)."
msgstr ""
"Indique qu'une propriété couleur [Color] devrait être éditée sans changer sa "
"transparence ([member Color.a] n'est pas éditable)."

msgid ""
"Hints that the property's value is an object encoded as object ID, with its "
"type specified in the hint string. Used by the debugger."
msgstr ""
"Indique que la valeur de la propriété est un objet encodé comme un ID "
"d'objet, avec son type spécifié dans la chaîne indice. Utilisé par le "
"débogueur."

msgid ""
"If a property is [String], hints that the property represents a particular "
"type (class). This allows to select a type from the create dialog. The "
"property will store the selected type as a string.\n"
"If a property is [Array], hints the editor how to show elements. The "
"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] "
"and [code]\"/\"[/code].\n"
"If a property is [Dictionary], hints the editor how to show elements. The "
"[code]hint_string[/code] is the same as [Array], with a [code]\";\"[/code] "
"separating the key and value.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Array of elem_type.\n"
"hint_string = \"%d:\" % [elem_type]\n"
"hint_string = \"%d/%d:%s\" % [elem_type, elem_hint, elem_hint_string]\n"
"# Two-dimensional array of elem_type (array of arrays of elem_type).\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d/%d:%s\" % [TYPE_ARRAY, elem_type, elem_hint, "
"elem_hint_string]\n"
"# Three-dimensional array of elem_type (array of arrays of arrays of "
"elem_type).\n"
"hint_string = \"%d:%d:%d:\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d:%d/%d:%s\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type, "
"elem_hint, elem_hint_string]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Array of elemType.\n"
"hintString = $\"{elemType:D}:\";\n"
"hintString = $\"{elemType:}/{elemHint:D}:{elemHintString}\";\n"
"// Two-dimensional array of elemType (array of arrays of elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}:\";\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}/{elemHint:D}:"
"{elemHintString}\";\n"
"// Three-dimensional array of elemType (array of arrays of arrays of "
"elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}:"
"\";\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}/"
"{elemHint:D}:{elemHintString}\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Examples:[/b]\n"
"[codeblocks]\n"
"[gdscript]\n"
"hint_string = \"%d:\" % [TYPE_INT] # Array of integers.\n"
"hint_string = \"%d/%d:1,10,1\" % [TYPE_INT, PROPERTY_HINT_RANGE] # Array of "
"integers (in range from 1 to 10).\n"
"hint_string = \"%d/%d:Zero,One,Two\" % [TYPE_INT, PROPERTY_HINT_ENUM] # Array "
"of integers (an enum).\n"
"hint_string = \"%d/%d:Zero,One,Three:3,Six:6\" % [TYPE_INT, "
"PROPERTY_HINT_ENUM] # Array of integers (an enum).\n"
"hint_string = \"%d/%d:*.png\" % [TYPE_STRING, PROPERTY_HINT_FILE] # Array of "
"strings (file paths).\n"
"hint_string = \"%d/%d:Texture2D\" % [TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Array of textures.\n"
"\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, TYPE_FLOAT] # Two-dimensional array "
"of floats.\n"
"hint_string = \"%d:%d/%d:\" % [TYPE_ARRAY, TYPE_STRING, "
"PROPERTY_HINT_MULTILINE_TEXT] # Two-dimensional array of multiline strings.\n"
"hint_string = \"%d:%d/%d:-1,1,0.1\" % [TYPE_ARRAY, TYPE_FLOAT, "
"PROPERTY_HINT_RANGE] # Two-dimensional array of floats (in range from -1 to "
"1).\n"
"hint_string = \"%d:%d/%d:Texture2D\" % [TYPE_ARRAY, TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Two-dimensional array of textures.\n"
"[/gdscript]\n"
"[csharp]\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Range:D}:1,10,1\"; // "
"Array of integers (in range from 1 to 10).\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Enum:D}:Zero,One,Two\"; // "
"Array of integers (an enum).\n"
"hintString = $\"{Variant.Type.Int:D}/"
"{PropertyHint.Enum:D}:Zero,One,Three:3,Six:6\"; // Array of integers (an "
"enum).\n"
"hintString = $\"{Variant.Type.String:D}/{PropertyHint.File:D}:*.png\"; // "
"Array of strings (file paths).\n"
"hintString = $\"{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Array of textures.\n"
"\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}:\"; // Two-"
"dimensional array of floats.\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.String:D}/"
"{PropertyHint.MultilineText:D}:\"; // Two-dimensional array of multiline "
"strings.\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}/"
"{PropertyHint.Range:D}:-1,1,0.1\"; // Two-dimensional array of floats (in "
"range from -1 to 1).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Two-dimensional array of "
"textures.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The trailing colon is required for properly detecting built-in "
"types."
msgstr ""
"Si une propriété est un [String], indique que la propriété représente un type "
"particulier (une classe). Cela permet de sélectionner un type dans la fenêtre "
"de création. Cette propriété va enregistrer le type sélectionné comme une "
"chaîne de caractères.\n"
"Si la propriété est un [Array], indique à l'éditeur comment afficher ses "
"éléments. La chaîne [code]hint_string[/code] doit encoder des types imbriqués "
"en utilisant [code]\":\"[/code] et [code]\"/\"[/code].\n"
"Si la propriété est un [Dictionary], indique à l'éditeur comment afficher ses "
"éléments. La chaîne [code]hint_string[/code] est la même que [Array], avec un "
"[code]\";\"[/code] séparant la clé et la valeur.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Tableau de elem_type.\n"
"hint_string = \"%d:\" % [elem_type]\n"
"hint_string = \"%d/%d:%s\" % [elem_type, elem_hint, elem_hint_string]\n"
"# Tableau 2D de elem_type (tableau de tableaux de elem_type).\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d/%d:%s\" % [TYPE_ARRAY, elem_type, elem_hint, "
"elem_hint_string]\n"
"# Tableau 3D de elem_type (tableau de tableaux de tableaux de elem_type).\n"
"hint_string = \"%d:%d:%d:\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d:%d/%d:%s\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type, "
"elem_hint, elem_hint_string]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Tableau de elemType.\n"
"hintString = $\"{elemType:D}:\";\n"
"hintString = $\"{elemType:}/{elemHint:D}:{elemHintString}\";\n"
"// Tableau 2D de elemType (tableau de tableaux de elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}:\";\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}/{elemHint:D}:"
"{elemHintString}\";\n"
"// Tableau 3D elemType (tableau de tableaux de tableaux de elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}:"
"\";\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}/"
"{elemHint:D}:{elemHintString}\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Examples :[/b]\n"
"[codeblocks]\n"
"[gdscript]\n"
"hint_string = \"%d:\" % [TYPE_INT] # Tableau d'entiers.\n"
"hint_string = \"%d/%d:1,10,1\" % [TYPE_INT, PROPERTY_HINT_RANGE] # Tableau "
"d'entiers (de 1 à 10).\n"
"hint_string = \"%d/%d:Zero,One,Two\" % [TYPE_INT, PROPERTY_HINT_ENUM] # "
"Tableau d'entiers (une énumération).\n"
"hint_string = \"%d/%d:Zero,One,Three:3,Six:6\" % [TYPE_INT, "
"PROPERTY_HINT_ENUM] # Tableau d'entiers (une énumération).\n"
"hint_string = \"%d/%d:*.png\" % [TYPE_STRING, PROPERTY_HINT_FILE] # Tableau "
"de chaînes de caractères (chemins de fichier).\n"
"hint_string = \"%d/%d:Texture2D\" % [TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Tableau de textures.\n"
"\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, TYPE_FLOAT] # Tableau 2D de "
"flottants.\n"
"hint_string = \"%d:%d/%d:\" % [TYPE_ARRAY, TYPE_STRING, "
"PROPERTY_HINT_MULTILINE_TEXT] # Tableau 2D de chaînes de caractères multi-"
"lignes.\n"
"hint_string = \"%d:%d/%d:-1,1,0.1\" % [TYPE_ARRAY, TYPE_FLOAT, "
"PROPERTY_HINT_RANGE] # Tableau 2D de flottants (de -1 à 1).\n"
"hint_string = \"%d:%d/%d:Texture2D\" % [TYPE_ARRAY, TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Tableau 2D de textures.\n"
"[/gdscript]\n"
"[csharp]\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Range:D}:1,10,1\"; // "
"Tableau d'entiers (de 1 à 10)..\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Enum:D}:Zero,One,Two\"; // "
"Tableau d'entiers (une énumération).\n"
"hintString = $\"{Variant.Type.Int:D}/"
"{PropertyHint.Enum:D}:Zero,One,Three:3,Six:6\"; // Tableau d'entiers (une "
"énumération).\n"
"hintString = $\"{Variant.Type.String:D}/{PropertyHint.File:D}:*.png\"; // "
"Tableau de chaînes de caractères (chemins de fichier).\n"
"hintString = $\"{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Tableau de textures.\n"
"\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}:\"; // Tableau "
"2D de flottants.\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.String:D}/"
"{PropertyHint.MultilineText:D}:\"; // Tableau 2D de chaînes de caractères "
"multi-lignes.\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}/"
"{PropertyHint.Range:D}:-1,1,0.1\"; // Tableau 2D de flottants (de -1 à 1).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Tableau 2D de textures.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Le deux-points final est nécessaire pour détecter proprement "
"les types intégrés."

msgid "This hint is not used by the engine."
msgstr "Cet indice n'est pas utilisé par le moteur."

msgid "Hints that an object is too big to be sent via the debugger."
msgstr "Indique d'un objet est trop gros pour être envoyé via le débugueur."

msgid ""
"Hints that the hint string specifies valid node types for property of type "
"[NodePath]."
msgstr ""
"Indique que la chaine-indice spécifie des types de nœud valides pour la "
"propriété de type [NodePath]."

msgid ""
"Hints that a [String] property is a path to a file. Editing it will show a "
"file dialog for picking the path for the file to be saved at. The dialog has "
"access to the project's directory. The hint string can be a set of filters "
"with wildcards like [code]\"*.png,*.jpg\"[/code]. See also [member "
"FileDialog.filters]."
msgstr ""
"Indique qu'une propriété chaîne de caractères [String] est un chemin d'accès "
"à un fichier. En l'éditant, une boîte de dialogue de fichier apparaîtra pour "
"choisir le chemin où sauvegarder le fichier. La fenêtre a accès au répertoire "
"du projet. Le texte de l'indice peut être un ensemble de filtres avec des "
"caractères génériques, comme [code]\"*.png,*.jpg\"[/code]."

msgid ""
"Hints that a [String] property is a path to a file. Editing it will show a "
"file dialog for picking the path for the file to be saved at. The dialog has "
"access to the entire filesystem. The hint string can be a set of filters with "
"wildcards like [code]\"*.png,*.jpg\"[/code]. See also [member "
"FileDialog.filters]."
msgstr ""
"Indique qu'une propriété chaîne de caractères [String] est un chemin d'accès "
"à un fichier. En l'éditant, une boîte de dialogue de fichier apparaîtra pour "
"choisir le chemin où sauvegarder le fichier. La fenêtre a accès au système de "
"fichiers complet. Le texte de l'indice peut être un ensemble de filtres avec "
"des caractères génériques, comme [code]\"*.png,*.jpg\"[/code]. Voir aussi "
"[member FileDialog.filters]."

msgid "Hints that an [int] property is a pointer. Used by GDExtension."
msgstr ""
"Indique qu'une propriété [int] est un pointeur. Utilisé par GDExtension."

msgid ""
"Hints that a property is an [Array] with the stored type specified in the "
"hint string. The hint string contains the type of the array (e.g. [code]"
"\"String\"[/code]).\n"
"Use the hint string format from [constant PROPERTY_HINT_TYPE_STRING] for more "
"control over the stored type."
msgstr ""
"Indique qu'une propriété est un [Array] avec le type stocké spécifié dans la "
"chaîne d'indice. La chaîne d'indice contient le type du tableau (par exemple "
"[code]\"String\"[/code]).\n"
"Utilisez le format de chaîne d'indice de [constant PROPERTY_HINT_TYPE_STRING] "
"pour plus de contrôle sur le type stocké."

msgid ""
"Hints that a property is a [Dictionary] with the stored types specified in "
"the hint string. The hint string contains the key and value types separated "
"by a semicolon (e.g. [code]\"int;String\"[/code]).\n"
"Use the hint string format from [constant PROPERTY_HINT_TYPE_STRING] for more "
"control over the stored types."
msgstr ""
"Indique qu'une propriété est un [Dictionary] avec le type stocké spécifié "
"dans la chaîne d'indice. La chaîne d'indice contient les types de la clé et "
"de la valeur séparés par un point-virgule (par exemple [code]\"int;String[/"
"code]).\n"
"Utilisez le format de chaîne d'indice de [constant PROPERTY_HINT_TYPE_STRING] "
"pour plus de contrôle sur les types stockés."

msgid ""
"Hints that a string property is a locale code. Editing it will show a locale "
"dialog for picking language and country."
msgstr ""
"Indique qu'une propriété de chaîne de caractères est un code de langue. En "
"l'éditant, une boîte de dialogue de paramètres régionaux apparaîtra pour "
"choisir la langue et le pays."

msgid ""
"Hints that a dictionary property is string translation map. Dictionary keys "
"are locale codes and, values are translated strings."
msgstr ""
"Indique qu'une propriété dictionnaire est une carte de traduction de chaîne "
"de caractères. Les clés du dictionnaire sont des code de langue et les "
"valeurs les chaînes traduites."

msgid ""
"Hints that a property is an instance of a [Node]-derived type, optionally "
"specified via the hint string (e.g. [code]\"Node2D\"[/code]). Editing it will "
"show a dialog for picking a node from the scene."
msgstr ""
"Indique que la propriété est une instance d'un type dérivé de [Node], "
"spécifié optionnellement via le texte de l'indice (e.g. [code]\"Node2D\"[/"
"code]) En l'éditant, un boîte de dialogue apparaîtra pour choisir un nœud "
"dans la scène."

msgid ""
"Hints that a quaternion property should disable the temporary euler editor."
msgstr ""
"Indique qu'une propriété quaternion devrait désactiver l'éditeur temporaire "
"d'angles d'Euler."

msgid ""
"Hints that a string property is a password, and every character is replaced "
"with the secret character."
msgstr ""
"Indique qu'une propriété de chaine de caractères est un mot de passe, et que "
"chaque caractère est remplacé par le caractère secret."

msgid ""
"Hints that a [Callable] property should be displayed as a clickable button. "
"When the button is pressed, the callable is called. The hint string specifies "
"the button text and optionally an icon from the [code]\"EditorIcons\"[/code] "
"theme type.\n"
"[codeblock lang=text]\n"
"\"Click me!\" - A button with the text \"Click me!\" and the default "
"\"Callable\" icon.\n"
"\"Click me!,ColorRect\" - A button with the text \"Click me!\" and the "
"\"ColorRect\" icon.\n"
"[/codeblock]\n"
"[b]Note:[/b] A [Callable] cannot be properly serialized and stored in a file, "
"so it is recommended to use [constant PROPERTY_USAGE_EDITOR] instead of "
"[constant PROPERTY_USAGE_DEFAULT]."
msgstr ""
"Indique qu'une propriété [Callable] devrait être affichée comme un bouton "
"cliquable. Quand le bouton est appuyé, la fonction est appelé. La chaîne de "
"caractères d'indice spécifie le texte du bouton et, optionnellement, une "
"icône de type de thème [code]\"EditorIcons\"[/code].\n"
"[codeblock lang=text]\n"
"\"Cliquer moi!\" - Un bouton avec le texte \"Cliquer moi!\" et l'icône "
"\"Callable\" par défaut.\n"
"\"Cliquer moi!,ColorRect\" - Un bouton avec le texte \"Cliquer moi!\" et "
"l'icône \"ColorRect\".\n"
"[/codeblock]\n"
"[b]Note:[/b] Un [Callable] ne peut être correctement sérialisé et sauvegardé "
"dans un fichier, donc il est recommandé d'utiliser [constant "
"PROPERTY_USAGE_EDITOR] plutôt que [constant PROPERTY_USAGE_DEFAULT]."

msgid ""
"Hints that a property will be changed on its own after setting, such as "
"[member AudioStreamPlayer.playing] or [member GPUParticles3D.emitting]."
msgstr ""
"Indique qu'une propriété sera changée toute seule après sa définition, comme "
"pour [member AudioStreamPlayer.playing] ou [member GPUParticles3D.emitting]."

msgid ""
"Hints that a boolean property will enable the feature associated with the "
"group that it occurs in. The property will be displayed as a checkbox on the "
"group header. Only works within a group or subgroup.\n"
"By default, disabling the property hides all properties in the group. Use the "
"optional hint string [code]\"checkbox_only\"[/code] to disable this behavior."
msgstr ""
"Indique qu'une propriété booléenne va activer la fonctionnalité associée au "
"groupe dans lequel elle se produit. La propriété sera affichée comme une case "
"à cocher dans l'en-tête du groupe. Marche seulement dans un groupe ou sous-"
"groupe.\n"
"Par défaut, désactiver cette propriété cache toutes les propriétés dans le "
"groupe. Utilisez la chaîne d'indice optionnelle [code]\"checkbox_only\"[/"
"code] pour désactiver ce comportement."

msgid ""
"Hints that a [String] or [StringName] property is the name of an input "
"action. This allows the selection of any action name from the Input Map in "
"the Project Settings. The hint string may contain two options separated by "
"commas:\n"
"- If it contains [code]\"show_builtin\"[/code], built-in input actions are "
"included in the selection.\n"
"- If it contains [code]\"loose_mode\"[/code], loose mode is enabled. This "
"allows inserting any action name even if it's not present in the input map."
msgstr ""
"Indique qu'une propriété [String] ou [StringName] est le nom d'une action "
"d'entrée. Cela permet de sélectionner n'importe quel nom d'action de la carte "
"des entrées dans les paramètres du projet. La chaîne d'indice peut contenir "
"deux options séparées par des virgules :\n"
"- Si elle contient [code]\"show_builtin\"[/code], les actions d'entrée "
"intégrées sont incluses dans la sélection.\n"
"- Si elle contient [code]\"loose_mode\"[/code], le mode libre est activé. "
"Cela permet d'insérer tout nom d'action même s'il n'est pas présent dans la "
"carte des entrées."

msgid ""
"Like [constant PROPERTY_HINT_FILE], but the property is stored as a raw path, "
"not UID. That means the reference will be broken if you move the file. "
"Consider using [constant PROPERTY_HINT_FILE] when possible."
msgstr ""
"Comme [constant PROPERTY_HINT_FILE], mais la propriété est stockée en tant "
"que chemin brut, et non un UID. Cela signifie que la référence sera brisée si "
"vous déplacez le fichier. Envisagez d'utiliser [constant PROPERTY_HINT_FILE] "
"si possible."

msgid "Represents the size of the [enum PropertyHint] enum."
msgstr "Représente la taille de l'énumération [enum PropertyHint]."

msgid ""
"The property is not stored, and does not display in the editor. This is the "
"default for non-exported properties."
msgstr ""
"La propriété n'est pas enregistrée, et ne s'affiche pas dans l'éditeur. C'est "
"le comportement par défaut des propriétés non-exportées."

msgid ""
"The property is serialized and saved in the scene file (default for exported "
"properties)."
msgstr ""
"Le propriété est sérialisée et sauvegardée dans le fichier de la scène "
"(défaut pour les propriétés exportées)."

msgid ""
"The property is shown in the [EditorInspector] (default for exported "
"properties)."
msgstr ""
"Le propriété est affichée dans l'inspecteur de l'éditeur [EditorInspector] "
"(défaut pour les propriétés exportées)."

msgid "The property is excluded from the class reference."
msgstr "La propriété est exclue de la référence de classe."

msgid "The property can be checked in the [EditorInspector]."
msgstr ""
"La propriété peut être cochée dans l'inspecteur de l'éditeur "
"[EditorInspector]."

msgid "The property is checked in the [EditorInspector]."
msgstr ""
"La propriété est cochée dans l'inspecteur de l'éditeur [EditorInspector]."

msgid "Used to group properties together in the editor. See [EditorInspector]."
msgstr ""
"Utilisé pour rassembler des propriétés ensemble dans l'éditeur. Voir "
"[EditorInspector]."

msgid "Used to categorize properties together in the editor."
msgstr "Utilisé pour classer des propriétés ensemble dans l'éditeur."

msgid ""
"Used to group properties together in the editor in a subgroup (under a "
"group). See [EditorInspector]."
msgstr ""
"Utilisé pour rassembler des propriétés ensemble dans l'éditeur (sous un "
"groupe). Voir [EditorInspector]."

msgid ""
"The property is a bitfield, i.e. it contains multiple flags represented as "
"bits."
msgstr ""
"La propriété est un champ de bits, c'est-à-dire elle contient plusieurs "
"drapeaux représentés par des bits."

msgid "The property does not save its state in [PackedScene]."
msgstr "La propriété ne sauvegarde pas son état dans [PackedScene]."

msgid "Editing the property prompts the user for restarting the editor."
msgstr "Éditer la propriété incite à l'utilisateur de redémarrer l'éditeur."

msgid ""
"The property is a script variable. [constant PROPERTY_USAGE_SCRIPT_VARIABLE] "
"can be used to distinguish between exported script variables from built-in "
"variables (which don't have this usage flag). By default, [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] is [b]not[/b] applied to variables that are "
"created by overriding [method Object._get_property_list] in a script."
msgstr ""
"La propriété est une variable de script. [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] peut être utilisé pour distinguer entre les "
"variables de script exportées des variables intégrées (qui n'ont pas ce "
"drapeau d'utilisation). Par défaut, [constant PROPERTY_USAGE_SCRIPT_VARIABLE] "
"[b]n'est pas[/b] appliqué aux variables qui sont créées par la redéfinition "
"de [method Object._get_property_list] dans un script."

msgid ""
"The property value of type [Object] will be stored even if its value is "
"[code]null[/code]."
msgstr ""
"La valeur de la propriété de type [Object] sera enregistrée même si sa valeur "
"est [code]null[/code]."

msgid "If this property is modified, all inspector fields will be refreshed."
msgstr ""
"Si cette propriété est modifiée, tous les champs de l'inspecteur seront "
"rafraichis."

msgid "This flag is not used by the engine."
msgstr "Ce drapeau n'est pas utilisé par le moteur."

msgid ""
"The property is a variable of enum type, i.e. it only takes named integer "
"constants from its associated enumeration."
msgstr ""
"La propriété est une variable de type enum, c'est-à-dire qu'elle ne prend que "
"des constantes entières nommées de son énumération associée."

msgid ""
"If property has [code]nil[/code] as default value, its type will be [Variant]."
msgstr ""
"Si la propriété a [code]nil[/code] comme valeur par défaut, son type sera "
"[Variant]."

msgid "The property is an array."
msgstr "La propriété est un tableau."

msgid ""
"When duplicating a resource with [method Resource.duplicate], and this flag "
"is set on a property of that resource, the property should always be "
"duplicated, regardless of the [code]subresources[/code] bool parameter."
msgstr ""
"Lorsque l'on duplique une ressource avec [method Resource.duplicate], et ce "
"drapeau est placé sur une propriété de cette ressource, la propriété doit "
"toujours être dupliquée, peu importe le paramètre booléen [code]subresources[/"
"code]."

msgid ""
"When duplicating a resource with [method Resource.duplicate], and this flag "
"is set on a property of that resource, the property should never be "
"duplicated, regardless of the [code]subresources[/code] bool parameter."
msgstr ""
"Lorsque l'on duplique une ressource avec [method Resource.duplicate], et ce "
"drapeau est placé sur une propriété de cette ressource, la propriété ne doit "
"jamais être dupliquée, peu importe le paramètre booléen [code]subresources[/"
"code]."

msgid ""
"The property is only shown in the editor if modern renderers are supported "
"(the Compatibility rendering method is excluded)."
msgstr ""
"Le propriété est seulement montrée dans l'éditeur si les moteurs de rendu "
"modernes sont supportés (le méthode de rendu Compatibilité est exclue)."

msgid ""
"The [NodePath] property will always be relative to the scene's root. Mostly "
"useful for local resources."
msgstr ""
"La propriété [NodePath] sera toujours relative à la racine de la scène. "
"Généralement utile pour les ressources locales."

msgid ""
"Use when a resource is created on the fly, i.e. the getter will always return "
"a different instance. [ResourceSaver] needs this information to properly save "
"such resources."
msgstr ""
"Utilisez quand une ressource est créée à la volée, c'est-à-dire que le getter "
"renverra toujours une instance différente. [ResourceSaver] a besoin de cette "
"information pour sauvegarder correctement ces ressources."

msgid ""
"Inserting an animation key frame of this property will automatically "
"increment the value, allowing to easily keyframe multiple values in a row."
msgstr ""
"Insérer une trame de clé d'animation de cette propriété incrémentera "
"automatiquement la valeur, permettant d'animer facilement plusieurs valeurs à "
"la suite."

msgid ""
"When this property is a [Resource] and base object is a [Node], a resource "
"instance will be automatically created whenever the node is created in the "
"editor."
msgstr ""
"Lorsque cette propriété est une [Resource] et l'objet de base est un [Node], "
"une instance de la ressource sera automatiquement créée lorsque le nœud est "
"créé dans l'éditeur."

msgid ""
"The property is considered a basic setting and will appear even when advanced "
"mode is disabled. Used for project settings."
msgstr ""
"La propriété est considérée comme un réglage de base et apparaîtra même "
"lorsque le mode avancé est désactivé. Utilisé pour les réglages de projet."

msgid "The property is read-only in the [EditorInspector]."
msgstr ""
"La propriété est en lecture seule dans l'inspecteur de l'éditeur "
"[EditorInspector]."

msgid ""
"An export preset property with this flag contains confidential information "
"and is stored separately from the rest of the export preset configuration."
msgstr ""
"Une propriété de préréglage d'export avec ce drapeau contient des "
"informations confidentielles et est stockée séparément du reste de la "
"configuration du préréglage d'export."

msgid "Default usage (storage and editor)."
msgstr "Utilisation par défaut (stockage et éditeur)."

msgid "Default usage but without showing the property in the editor (storage)."
msgstr ""
"Utilisation par défaut mais sans l'affichage de la propriété dans l'éditeur "
"(stockage)."

msgid "Flag for a normal method."
msgstr "Indicateur pour une méthode normale."

msgid "Flag for an editor method."
msgstr "Indicateur pour une méthode d'édition."

msgid "Flag for a constant method."
msgstr "Indicateur pour une méthode constante."

msgid "Flag for a virtual method."
msgstr "Indicateur pour une méthode virtuelle."

msgid "Flag for a method with a variable number of arguments."
msgstr "Indicateur pour une méthode avec un nombre variable d'arguments."

msgid "Flag for a static method."
msgstr "Indicateur pour une méthode statique."

msgid ""
"Used internally. Allows to not dump core virtual methods (such as [method "
"Object._notification]) to the JSON API."
msgstr ""
"Utilisé en interne. Permet de ne pas décharger des méthodes virtuelles coeur "
"(telles que [method Object._notification]) à l'API JSON."

msgid ""
"Flag for a virtual method that is required. In GDScript, this flag is set for "
"abstract functions."
msgstr ""
"Drapeau pour une méthode virtuelle qui est requise. En GDScript, ce drapeau "
"est défini pour les fonctions abstraites."

msgid "Default method flags (normal)."
msgstr "Drapeaux de méthode par défaut (normale)."

msgid "Variable is [code]null[/code]."
msgstr "La variable est [code]null[/code]."

msgid "Variable is of type [bool]."
msgstr "La variable est du type [bool]."

msgid "Variable is of type [int]."
msgstr "La variable est du type [int]."

msgid "Variable is of type [float]."
msgstr "La variable est du type [float]."

msgid "Variable is of type [String]."
msgstr "La variable est du type [String]."

msgid "Variable is of type [Vector2]."
msgstr "La variable est du type [Vector2]."

msgid "Variable is of type [Vector2i]."
msgstr "La variable est du type [Vector2i]."

msgid "Variable is of type [Rect2]."
msgstr "La variable est du type [Rect2]."

msgid "Variable is of type [Rect2i]."
msgstr "La variable est du type [Rect2i]."

msgid "Variable is of type [Vector3]."
msgstr "La variable est du type [Vector3]."

msgid "Variable is of type [Vector3i]."
msgstr "La variable est du type [Vector3i]."

msgid "Variable is of type [Transform2D]."
msgstr "La variable est du type [Transform2D]."

msgid "Variable is of type [Vector4]."
msgstr "La variable est du type [Vector4]."

msgid "Variable is of type [Vector4i]."
msgstr "La variable est du type [Vector4i]."

msgid "Variable is of type [Plane]."
msgstr "La variable est du type [Plane]."

msgid "Variable is of type [Quaternion]."
msgstr "La variable est du type [Quaternion]."

msgid "Variable is of type [AABB]."
msgstr "La variable est du type [AABB]."

msgid "Variable is of type [Basis]."
msgstr "La variable est du type [Basis]."

msgid "Variable is of type [Transform3D]."
msgstr "La variable est du type [Transform3D]."

msgid "Variable is of type [Projection]."
msgstr "La variable est du type [Projection]."

msgid "Variable is of type [Color]."
msgstr "La variable est du type [Color]."

msgid "Variable is of type [StringName]."
msgstr "La variable est du type [StringName]."

msgid "Variable is of type [NodePath]."
msgstr "La variable est du type [NodePath]."

msgid "Variable is of type [RID]."
msgstr "La variable est du type [RID]."

msgid "Variable is of type [Object]."
msgstr "La variable est du type [Object]."

msgid "Variable is of type [Callable]."
msgstr "La variable est du type [Callable]."

msgid "Variable is of type [Signal]."
msgstr "La variable est du type [Signal]."

msgid "Variable is of type [Dictionary]."
msgstr "La variable est du type [Dictionary]."

msgid "Variable is of type [Array]."
msgstr "La variable est du type [Array]."

msgid "Variable is of type [PackedByteArray]."
msgstr "La variable est du type [PackedByteArray]."

msgid "Variable is of type [PackedInt32Array]."
msgstr "La variable est du type [PackedInt32Array]."

msgid "Variable is of type [PackedInt64Array]."
msgstr "La variable est du type [PackedInt64Array]."

msgid "Variable is of type [PackedFloat32Array]."
msgstr "La variable est du type [PackedFloat32Array]."

msgid "Variable is of type [PackedFloat64Array]."
msgstr "La variable est du type [PackedFloat64Array]."

msgid "Variable is of type [PackedStringArray]."
msgstr "La variable est du type [PackedStringArray]."

msgid "Variable is of type [PackedVector2Array]."
msgstr "La variable est du type [PackedVector2Array]."

msgid "Variable is of type [PackedVector3Array]."
msgstr "La variable est du type [PackedVector3Array]."

msgid "Variable is of type [PackedColorArray]."
msgstr "La variable est du type [PackedColorArray]."

msgid "Variable is of type [PackedVector4Array]."
msgstr "La variable est de type [PackedVector4Array]."

msgid "Represents the size of the [enum Variant.Type] enum."
msgstr "Représente la taille de l'énumération [enum Variant.Type]."

msgid "Equality operator ([code]==[/code])."
msgstr "L'opérateur d’égalité ([code]==[/code])."

msgid "Inequality operator ([code]!=[/code])."
msgstr "L'opérateur d’inégalité ([code]!=[/code])."

msgid "Less than operator ([code]<[/code])."
msgstr "L'opérateur inférieur à ([code]<[/code])."

msgid "Less than or equal operator ([code]<=[/code])."
msgstr "L'opérateur inférieur ou égal ([code]<=[/code])."

msgid "Greater than operator ([code]>[/code])."
msgstr "L'opérateur supérieur à ([code]>[/code])."

msgid "Greater than or equal operator ([code]>=[/code])."
msgstr "L'opérateur supérieur ou égal ([code]>=[/code])."

msgid "Addition operator ([code]+[/code])."
msgstr "L'opérateur d’addition ([code]+[/code])."

msgid "Subtraction operator ([code]-[/code])."
msgstr "L'opérateur de soustraction ([code]-[/code])."

msgid "Multiplication operator ([code]*[/code])."
msgstr "L'opérateur de multiplication ([code]*[/code])."

msgid "Division operator ([code]/[/code])."
msgstr "L'opérateur de division ([code]/[/code])."

msgid "Unary negation operator ([code]-[/code])."
msgstr "L'opérateur de négation unaire ([code]-[/code])."

msgid "Unary plus operator ([code]+[/code])."
msgstr "L'opérateur d'addition unaire ([code]+[/code])."

msgid "Remainder/modulo operator ([code]%[/code])."
msgstr "Reste / opérateur modulo ([code]%[/code])."

msgid "Power operator ([code]**[/code])."
msgstr "Opérateur de puissance ([code]**[/code])."

msgid "Left shift operator ([code]<<[/code])."
msgstr "Operateur de décalage de bits vers la gauche ([code]<<[/code])."

msgid "Right shift operator ([code]>>[/code])."
msgstr "Operateur de décalage de bits vers la droite ([code]<<[/code])."

msgid "Bitwise AND operator ([code]&[/code])."
msgstr "Opérateur binaire ET ([code]&[/code])."

msgid "Bitwise OR operator ([code]|[/code])."
msgstr "Opérateur binaire OU ([code]|[/code])."

msgid "Bitwise XOR operator ([code]^[/code])."
msgstr "Opérateur binaire OU exclusif (XOR) ([code]^[/code])."

msgid "Bitwise NOT operator ([code]~[/code])."
msgstr "Opérateur binaire NON ([code]~[/code])."

msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
msgstr "L'opérateur logique ET ([code]and[/code] or [code]&&[/code])."

msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
msgstr "L'opérateur logique OU ([code]or[/code] or [code]||[/code])."

msgid "Logical XOR operator (not implemented in GDScript)."
msgstr "Opérateur logique OU exclusif (XOR) (non implémenté dans le GDScript)."

msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
msgstr "L'opérateur logique NON ([code]not[/code] or [code]![/code])."

msgid "Logical IN operator ([code]in[/code])."
msgstr "Opérateur logique DANS ([code]in[/code])."

msgid "Represents the size of the [enum Variant.Operator] enum."
msgstr "Représente la taille de l'énumération [enum Variant.Operator]."

msgid "A 3D axis-aligned bounding box."
msgstr "Une boîte délimitante 3D alignée sur les axes."

msgid "Math documentation index"
msgstr "Index de la documentation sur les mathématiques"

msgid "Vector math"
msgstr "Mathématiques des vecteurs"

msgid "Advanced vector math"
msgstr "Mathématiques avancées des vecteurs"

msgid ""
"Constructs an [AABB] with its [member position] and [member size] set to "
"[constant Vector3.ZERO]."
msgstr ""
"Construit une [AABB] avec sa [member position] et sa taille [member size] "
"définies à [constant Vector3.ZERO]."

msgid "Constructs an [AABB] as a copy of the given [AABB]."
msgstr "Construit une [AABB] en tant que copie de la [AABB] donnée."

msgid "Constructs an [AABB] by [param position] and [param size]."
msgstr ""
"Construit une [AABB] avec sa [param position] et sa taille [param size]."

msgid ""
"Returns an [AABB] equivalent to this bounding box, with its width, height, "
"and depth modified to be non-negative values.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(5, 0, 5), Vector3(-20, -10, -5))\n"
"var absolute = box.abs()\n"
"print(absolute.position) # Prints (-15.0, -10.0, 0.0)\n"
"print(absolute.size)     # Prints (20.0, 10.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(5, 0, 5), new Vector3(-20, -10, -5));\n"
"var absolute = box.Abs();\n"
"GD.Print(absolute.Position); // Prints (-15, -10, 0)\n"
"GD.Print(absolute.Size);     // Prints (20, 10, 5)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] It's recommended to use this method when [member size] is "
"negative, as most other methods in Godot assume that the [member size]'s "
"components are greater than [code]0[/code]."
msgstr ""
"Renvoie une [AABB] équivalente à cette boîte délimitante, avec sa largeur, sa "
"hauteur et sa profondeur modifiées pour être des valeurs non-négatives.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(5, 0, 5), Vector3(-20, -10, -5))\n"
"var absolu = box.abs()\n"
"print(absolu.position) # Affiche (-15.0, -10.0, 0.0)\n"
"print(absolu.size)          # Affiche (20.0, 10.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(5, 0, 5), new Vector3(-20, -10, -5));\n"
"var absolu = box.Abs();\n"
"GD.Print(absolu.Position); // Affiche (-15.0, -10.0, 0.0)\n"
"GD.Print(absolu.Size); // Affiche (20.0, 10.0, 5.0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Il est recommandé d'utiliser cette méthode lorsque [member "
"size] est négatif, car la plupart des autres méthodes de Godot supposent que "
"les composants de [member size] sont supérieurs à [code]0[/code]."

msgid ""
"Returns [code]true[/code] if this bounding box [i]completely[/i] encloses the "
"[param with] box. The edges of both boxes are included.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(0, 0, 0), Vector3(4, 4, 4))\n"
"var b = AABB(Vector3(1, 1, 1), Vector3(3, 3, 3))\n"
"var c = AABB(Vector3(2, 2, 2), Vector3(8, 8, 8))\n"
"\n"
"print(a.encloses(a)) # Prints true\n"
"print(a.encloses(b)) # Prints true\n"
"print(a.encloses(c)) # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(0, 0, 0), new Vector3(4, 4, 4));\n"
"var b = new Aabb(new Vector3(1, 1, 1), new Vector3(3, 3, 3));\n"
"var c = new Aabb(new Vector3(2, 2, 2), new Vector3(8, 8, 8));\n"
"\n"
"GD.Print(a.Encloses(a)); // Prints True\n"
"GD.Print(a.Encloses(b)); // Prints True\n"
"GD.Print(a.Encloses(c)); // Prints False\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie [code]true[/code] si cette boîte délimitante encadre [i]complètement[/"
"i] la boîte [param with]. Les bords des deux boîtes sont inclus.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(0, 0, 0), Vector3(4, 4, 4))\n"
"var b = AABB(Vector3(1, 1, 1), Vector3(3, 3, 3))\n"
"c = AABB(Vector3(2, 2, 2), Vector3(8, 8, 8))\n"
"\n"
"print(a.encloses(a)) # Affiche true\n"
"print(a.encloses(b)) # Affiche true\n"
"print(a.encloses(c)) # Affiche false\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(0, 0, 0), new Vector3(4, 4, 4));\n"
"var b = new Aabb(nouveau Vector3(1, 1, 1), new Vector3(3, 3, 3));\n"
"c = new Aabb(nouveau Vector3(2, 2, 2), new Vector3(8, 8, 8));\n"
"\n"
"GD.Print(a.Encloses(a)); // Affiche True\n"
"GD.Print(a.Encloses(b)); // Affiche True\n"
"GD.Print(a.Encloses(c)); // Affiche False\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of this bounding box expanded to align the edges with the "
"given [param to_point], if necessary.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(5, 2, 5))\n"
"\n"
"box = box.expand(Vector3(10, 0, 0))\n"
"print(box.position) # Prints (0.0, 0.0, 0.0)\n"
"print(box.size)     # Prints (10.0, 2.0, 5.0)\n"
"\n"
"box = box.expand(Vector3(-5, 0, 5))\n"
"print(box.position) # Prints (-5.0, 0.0, 0.0)\n"
"print(box.size)     # Prints (15.0, 2.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 5));\n"
"\n"
"box = box.Expand(new Vector3(10, 0, 0));\n"
"GD.Print(box.Position); // Prints (0, 0, 0)\n"
"GD.Print(box.Size);     // Prints (10, 2, 5)\n"
"\n"
"box = box.Expand(new Vector3(-5, 0, 5));\n"
"GD.Print(box.Position); // Prints (-5, 0, 0)\n"
"GD.Print(box.Size);     // Prints (15, 2, 5)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une copie de cette boîte délimitante élargie pour aligner les bords "
"avec le point [param to_point] donné, si nécessaire.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var boite = AABB(Vector3(0, 0, 0), Vector3(5, 2, 5))\n"
"\n"
"boite = boite.expand(Vector3(10, 0, 0))\n"
"print(boite.position) # Affiche (0.0, 0.0, 0.0)\n"
"print(boite.size) # Affiche (10, 2,0, 5.0)\n"
"\n"
"boite = boite.expand(Vector3(-5, 0, 5))\n"
"print(-5.0, 0.0, 0.0)\n"
"print(boite.size) # Affiche (15,0, 2.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var boite = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 5));\n"
"\n"
"boite = boite.Expand(new Vector3(10, 0, 0));\n"
"GD.Print(boite.Position); // Prints (0, 0, 0)\n"
"GD.Print(boite.Size); // Prints (10, 2, 5)\n"
"\n"
"boite= boite.Expand(new Vector3(-5, 0, 5));\n"
"GD.Print(boite.Position); // Affiche (-5, 0, 0)\n"
"GD.Print(boite.Size); // Affiche (15, 2, 5)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the center point of the bounding box. This is the same as "
"[code]position + (size / 2.0)[/code]."
msgstr ""
"Renvoie le point central de la boîte délimitante. Cela revient à "
"[code]position + (size / 2.0)[/code]."

msgid ""
"Returns the position of one of the 8 vertices that compose this bounding box. "
"With an [param idx] of [code]0[/code] this is the same as [member position], "
"and an [param idx] of [code]7[/code] is the same as [member end]."
msgstr ""
"Renvoie la position de l'un des 8 sommets qui composent cette boîte "
"délimitante. Avec un index [param idx] de [code]0[/code], cela revient à "
"[member position], et un [param idx] de [code]7[/code] revient à [member end]."

msgid ""
"Returns the longest normalized axis of this bounding box's [member size], as "
"a [Vector3] ([constant Vector3.RIGHT], [constant Vector3.UP], or [constant "
"Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(box.get_longest_axis())       # Prints (0.0, 0.0, 1.0)\n"
"print(box.get_longest_axis_index()) # Prints 2\n"
"print(box.get_longest_axis_size())  # Prints 8.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetLongestAxis());      // Prints (0, 0, 1)\n"
"GD.Print(box.GetLongestAxisIndex()); // Prints Z\n"
"GD.Print(box.GetLongestAxisSize());  // Prints 8\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method get_longest_axis_index] and [method get_longest_axis_size]."
msgstr ""
"Renvoie l'axe normalisé le plus long du [member size] de la boîte "
"délimitante, en tant que [Vector3] ([constant Vector3.RIGHT], [constant "
"Vector3.UP], ou [constant Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var boite = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(boite.get_longest_axis())       # Affiche (0.0, 0.0, 1.0)\n"
"print(boite.get_longest_axis_index()) # Affiche 2\n"
"print(boite.get_longest_axis_size())  # Affiche 8.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetLongestAxis());      // Affiche (0, 0, 1)\n"
"GD.Print(box.GetLongestAxisIndex()); // Affiche Z\n"
"GD.Print(box.GetLongestAxisSize());  // Affiche 8\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Voir aussi [method get_longest_axis_index] et [method get_longest_axis_size]."

msgid ""
"Returns the index to the longest axis of this bounding box's [member size] "
"(see [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y], and [constant "
"Vector3.AXIS_Z]).\n"
"For an example, see [method get_longest_axis]."
msgstr ""
"Renvoie l'index de l'axe le plus long de la taille [member size] de cette "
"boîte (voir [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y], et "
"[constant Vector3.AXIS_Z]).\n"
"Pour un exemple, voir [method get_longest_axis]."

msgid ""
"Returns the longest dimension of this bounding box's [member size].\n"
"For an example, see [method get_longest_axis]."
msgstr ""
"Renvoie la dimension la plus longue de la taille [member size] de cette boîte "
"délimitante.\n"
"Pour un exemple, voir [method get_longest_axis]."

msgid ""
"Returns the shortest normalized axis of this bounding box's [member size], as "
"a [Vector3] ([constant Vector3.RIGHT], [constant Vector3.UP], or [constant "
"Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(box.get_shortest_axis())       # Prints (1.0, 0.0, 0.0)\n"
"print(box.get_shortest_axis_index()) # Prints 0\n"
"print(box.get_shortest_axis_size())  # Prints 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetShortestAxis());      // Prints (1, 0, 0)\n"
"GD.Print(box.GetShortestAxisIndex()); // Prints X\n"
"GD.Print(box.GetShortestAxisSize());  // Prints 2\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method get_shortest_axis_index] and [method get_shortest_axis_size]."
msgstr ""
"Renvoie l'axe normalisé le plus court de la taille [member size] de cette "
"boîte de délimitation, en tant que [Vector3] ([constant Vector3.RIGHT], "
"[constant Vector3.UP], ou [constant Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(box.get_shortest_axis())       # Affiche (1.0, 0.0, 1.0)\n"
"print(box.get_shortest_axis_index()) # Affiche 0\n"
"print(box.get_shortest_axis_size())  # Affiche 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetShortestAxis());      // Affiche (1, 0, 0)\n"
"GD.Print(box.GetShortestAxisIndex()); // Affiche X\n"
"GD.Print(box.GetShortestAxisSize());  // Affiche 2\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Voir aussi [method get_shortest_axis_index] et [method "
"get_shortest_axis_size]."

msgid ""
"Returns the index to the shortest axis of this bounding box's [member size] "
"(see [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y], and [constant "
"Vector3.AXIS_Z]).\n"
"For an example, see [method get_shortest_axis]."
msgstr ""
"Renvoie l'index de l'axe le plus court de la taille [member size] de cette "
"boîte (voir [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y], et "
"[constant Vector3.AXIS_Z]).\n"
"Pour un exemple, voir [method get_shortest_axis]."

msgid ""
"Returns the shortest dimension of this bounding box's [member size].\n"
"For an example, see [method get_shortest_axis]."
msgstr ""
"Renvoie la dimension la plus courte de la taille [member size] de cette boîte "
"délimitante.\n"
"Pour un exemple, voir [method get_shortest_axis]."

msgid ""
"Returns the vertex's position of this bounding box that's the farthest in the "
"given direction. This point is commonly known as the support point in "
"collision detection algorithms."
msgstr ""
"Renvoie la position du sommet de cette boîte délimitante qui est le plus "
"éloigné dans la direction donnée. Ce point est communément connu comme le "
"point de support dans les algorithmes de détection de collision."

msgid ""
"Returns the bounding box's volume. This is equivalent to [code]size.x * "
"size.y * size.z[/code]. See also [method has_volume]."
msgstr ""
"Renvoie le volume de la boîte délimitante. Cela revient à [code]size.x * "
"size.y * size.z[/code]. Voir aussi [method has_volume]."

msgid ""
"Returns a copy of this bounding box extended on all sides by the given amount "
"[param by]. A negative amount shrinks the box instead.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(4, 4, 4), Vector3(8, 8, 8)).grow(4)\n"
"print(a.position) # Prints (0.0, 0.0, 0.0)\n"
"print(a.size)     # Prints (16.0, 16.0, 16.0)\n"
"\n"
"var b = AABB(Vector3(0, 0, 0), Vector3(8, 4, 2)).grow(2)\n"
"print(b.position) # Prints (-2.0, -2.0, -2.0)\n"
"print(b.size)     # Prints (12.0, 8.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(4, 4, 4), new Vector3(8, 8, 8)).Grow(4);\n"
"GD.Print(a.Position); // Prints (0, 0, 0)\n"
"GD.Print(a.Size);     // Prints (16, 16, 16)\n"
"\n"
"var b = new Aabb(new Vector3(0, 0, 0), new Vector3(8, 4, 2)).Grow(2);\n"
"GD.Print(b.Position); // Prints (-2, -2, -2)\n"
"GD.Print(b.Size);     // Prints (12, 8, 6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une copie de cette boîte délimitante étendue sur tous les côtés par "
"la quantité [param by] donnée. Une quantité négative rétrécit la boîte à la "
"place.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(4, 4, 4), Vector3(8, 8, 8)).grow(4)\n"
"print(a.position) # Affiche (0.0, 0.0, 0.0)\n"
"print(a.size)     # Affiche (16.0, 16.0, 16.0)\n"
"\n"
"var b = AABB(Vector3(0, 0, 0), Vector3(8, 4, 2)).grow(2)\n"
"print(b.position) # Affiche (-2.0, -2.0, -2.0)\n"
"print(b.size)     # Affiche (12.0, 8.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(4, 4, 4), new Vector3(8, 8, 8)).Grow(4);\n"
"GD.Print(a.Position); // Affiche (0, 0, 0)\n"
"GD.Print(a.Size); // Affiche (16, 16, 16)\n"
"\n"
"var b = new Aabb(new Vector3(0, 0, 0), new Vector3(8, 4, 2)).Grow(2);\n"
"GD.Print(b.Position); // Affiche (-2, -2, -2)\n"
"GD.Print(b.Size); // Affiche (12, 8, 6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if the bounding box contains the given [param "
"point]. By convention, points exactly on the right, top, and front sides are "
"[b]not[/b] included.\n"
"[b]Note:[/b] This method is not reliable for [AABB] with a [i]negative[/i] "
"[member size]. Use [method abs] first to get a valid bounding box."
msgstr ""
"Renvoie [code]true[/code] si la boîte délimitante contient le [param point] "
"donné. Par convention, les points exactement sur la droite, le dessus et les "
"côtés avant [b]ne sont pas[/b] inclus.\n"
"[b]Note :[/b] Cette méthode n'est pas fiable pour les [AABB] avec une taille "
"[member size] [i]négative[/i]. Utilisez [method abs] d'abord pour obtenir une "
"boîte délimitante valide."

msgid ""
"Returns [code]true[/code] if this bounding box has a surface or a length, "
"that is, at least one component of [member size] is greater than [code]0[/"
"code]. Otherwise, returns [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si cette boîte délimitante a une surface ou une "
"longueur, c'est-à-dire qu'au moins une composante de [member size] est "
"supérieure à [code]0[/code]. Sinon, renvoie [code]false[/code]."

msgid ""
"Returns [code]true[/code] if this bounding box's width, height, and depth are "
"all positive. See also [method get_volume]."
msgstr ""
"Renvoie [code]true[/code] si la largeur, la hauteur et la profondeur de cette "
"boîte délimitante sont toutes positives. Voir aussi [method get_volume]."

msgid ""
"Returns the intersection between this bounding box and [param with]. If the "
"boxes do not intersect, returns an empty [AABB]. If the boxes intersect at "
"the edge, returns a flat [AABB] with no volume (see [method has_surface] and "
"[method has_volume]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box1 = AABB(Vector3(0, 0, 0), Vector3(5, 2, 8))\n"
"var box2 = AABB(Vector3(2, 0, 2), Vector3(8, 4, 4))\n"
"\n"
"var intersection = box1.intersection(box2)\n"
"print(intersection.position) # Prints (2.0, 0.0, 2.0)\n"
"print(intersection.size)     # Prints (3.0, 2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box1 = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 8));\n"
"var box2 = new Aabb(new Vector3(2, 0, 2), new Vector3(8, 4, 4));\n"
"\n"
"var intersection = box1.Intersection(box2);\n"
"GD.Print(intersection.Position); // Prints (2, 0, 2)\n"
"GD.Print(intersection.Size);     // Prints (3, 2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you only need to know whether two bounding boxes are "
"intersecting, use [method intersects], instead."
msgstr ""
"Renvoie l'intersection entre cette boîte délimitante et [param with]. Si les "
"boîtes ne s'intersectent pas, renvoie une [AABB] vide. Si les boîtes se "
"croisent sur le bord, renvoie une [AABB] plate sans volume (voir [method "
"has_surface] et [method has_volume]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var boite1 = AABB(Vector3(0, 0, 0), Vector3(5, 2, 8))\n"
"var boite2 = AABB(Vector3(2, 0, 2), Vector3(8, 4, 4))\n"
"\n"
"var intersection = boite1.intersection(boite2)\n"
"print(intersection.position) # Affiche (2.0, 0.0, 2.0)\n"
"print(intersection.size)     # Affiche (3.0, 2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var boite1 = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 8));\n"
"var boite 2= new Aabb(new Vector3(2, 0, 2), new Vector3(8, 4, 4));\n"
"\n"
"var intersection = boite1.Intersection(boite2);\n"
"GD.Print(intersection.Position); // Affiche (2, 0, 2)\n"
"GD.Print(intersection.Size);     // Affiche(3, 2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Si vous avez besoin de savoir uniquement si deux boîtes "
"délimitantes s'intersectent, utilisez [method intersects] à la place."

msgid ""
"Returns [code]true[/code] if this bounding box overlaps with the box [param "
"with]. The edges of both boxes are [i]always[/i] excluded."
msgstr ""
"Renvoie [code]true[/code] si cette boîte délimitante chevauche la boîte "
"[param with]. Les bords des deux boîtes sont [i]toujours[/i] exclus."

msgid ""
"Returns [code]true[/code] if this bounding box is on both sides of the given "
"[param plane]."
msgstr ""
"Renvoie [code]true[/code] si cette boîte délimitante est des deux côtés du "
"plan [param plane] donné."

msgid ""
"Returns the first point where this bounding box and the given ray intersect, "
"as a [Vector3]. If no intersection occurs, returns [code]null[/code].\n"
"The ray begin at [param from], faces [param dir] and extends towards infinity."
msgstr ""
"Renvoie le premier point où cette boîte délimitante et le rayon donné "
"s'intersectent, en tant que [Vector3]. Si aucune intersection ne se produit, "
"renvoie [code]null[/code].\n"
"Le rayon commence à [param from], a comme direction [param dir] et s'étend "
"vers l'infini."

msgid ""
"Returns the first point where this bounding box and the given segment "
"intersect, as a [Vector3]. If no intersection occurs, returns [code]null[/"
"code].\n"
"The segment begins at [param from] and ends at [param to]."
msgstr ""
"Renvoie le premier point où cette boîte délimitante et le segment donné "
"s'intersectent, en tant que [Vector3]. Si aucune intersection ne se produit, "
"renvoie [code]null[/code].\n"
"Le segment commence au point [param from] et se termine au point [param to]."

msgid ""
"Returns [code]true[/code] if this bounding box and [param aabb] are "
"approximately equal, by calling [method Vector3.is_equal_approx] on the "
"[member position] and the [member size]."
msgstr ""
"Renvoie [code]true[/code] si cette boîte délimitante et [param aabb] sont "
"approximativement égaux, en appelant [method Vector3.is_equal_approx] sur la "
"[member position] et la taille [member size]."

msgid ""
"Returns [code]true[/code] if this bounding box's values are finite, by "
"calling [method Vector3.is_finite] on the [member position] and the [member "
"size]."
msgstr ""
"Renvoie [code]true[/code] si les valeurs de cette boîte délimitante sont "
"finies, en appelant [method Vector3.is_finite] sur [member position] et "
"[member size]."

msgid ""
"Returns an [AABB] that encloses both this bounding box and [param with] "
"around the edges. See also [method encloses]."
msgstr ""
"Renvoie une [AABB] qui contient à la fois cette boîte délimitante et [param "
"with] autour des bords. Voir aussi [method encloses]."

msgid ""
"The ending point. This is usually the corner on the top-right and back of the "
"bounding box, and is equivalent to [code]position + size[/code]. Setting this "
"point affects the [member size]."
msgstr ""
"Le point de fin. Il s'agit généralement du coin en haut à droite et en "
"arrière de la boîte délimitante , et est équivalent à [code]position + size[/"
"code]. Définir ce point affecte la taille [member size]."

msgid ""
"The origin point. This is usually the corner on the bottom-left and forward "
"of the bounding box."
msgstr ""
"Le point d'origine. Il s'agit généralement du coin en bas à gauche et à "
"l'avant de la boîte délimitante."

msgid ""
"The bounding box's width, height, and depth starting from [member position]. "
"Setting this value also affects the [member end] point.\n"
"[b]Note:[/b] It's recommended setting the width, height, and depth to non-"
"negative values. This is because most methods in Godot assume that the "
"[member position] is the bottom-left-forward corner, and the [member end] is "
"the top-right-back corner. To get an equivalent bounding box with non-"
"negative size, use [method abs]."
msgstr ""
"La largeur, la hauteur et la profondeur de la boîte délimitante à partir de "
"la [member position]. Définir cette valeur affecte aussi le point de fin "
"[member end].\n"
"[b]Note :[/b] Il est recommandé de fixer la largeur, la hauteur et la "
"profondeur à des valeurs non négatives. C'est parce que la plupart des "
"méthodes de Godot supposent que la [member position] est le coin inférieur "
"gauche-avant, et le point de fin [member end] est le coin supérieur droit-"
"arrière. Pour obtenir une boîte délimitante équivalente avec une taille non "
"négative, utilisez [method abs]."

msgid ""
"Returns [code]true[/code] if the [member position] or [member size] of both "
"bounding boxes are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si la [member position] ou la taille [member size] "
"des deux boîtes de délimitation ne sont pas égales.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid ""
"Inversely transforms (multiplies) the [AABB] by the given [Transform3D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]aabb * transform[/code] is equivalent to [code]transform.inverse() * "
"aabb[/code]. See [method Transform3D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * aabb[/code] can be used instead. See "
"[method Transform3D.affine_inverse]."
msgstr ""
"Transforme (multiplie) de manière inverse la [AABB] par la matrice de "
"transformation [Transform3D] donnée, avec la supposition que la base de la "
"transformation est orthonormée (c.a.d. une rotation/réflexion est OK, une "
"échelle/un cisaillement ne l'est pas).\n"
"[code]aabb * transform[/code] est équivalent à [code]transform.inverse() * "
"aabb[/code]. Voir [method Transform3D.inverse].\n"
"Pour transformer par l'inverse d'une transformation affine (par ex. avec une "
"mise à l'échelle), [code]transform.affine_inverse() * rect[/code] peut être "
"utilisé à la place. Voir [method Transform3D.affine_inverse]."

msgid ""
"Returns [code]true[/code] if both [member position] and [member size] of the "
"bounding boxes are exactly equal, respectively.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si [member position] et [member size] des boîtes "
"délimitantes sont tous les deux exactement égaux, respectivement.\n"
"[b]Note :[/b] En raison d'erreurs de précision flottante, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid "A base dialog used for user notification."
msgstr ""
"Une boîte de dialogue de base utilisée pour la notification des utilisateurs."

msgid ""
"The default use of [AcceptDialog] is to allow it to only be accepted or "
"closed, with the same result. However, the [signal confirmed] and [signal "
"canceled] signals allow to make the two actions different, and the [method "
"add_button] method allows to add custom buttons and actions."
msgstr ""
"L'utilisation par défaut d'[AcceptDialog] est de lui permettre d'être "
"seulement accepté ou fermé, avec le même résultat. Cependant, les signaux "
"[signal confirmed] et [signal canceled] permettent de rendre les deux actions "
"différentes, et la méthode [method add_button] permet d'ajouter des boutons "
"et des actions personnalisés."

msgid ""
"Adds a button with label [param text] and a custom [param action] to the "
"dialog and returns the created button.\n"
"If [param action] is not empty, pressing the button will emit the [signal "
"custom_action] signal with the specified action string.\n"
"If [code]true[/code], [param right] will place the button to the right of any "
"sibling buttons.\n"
"You can use [method remove_button] method to remove a button created with "
"this method from the dialog."
msgstr ""
"Ajoute un bouton avec l'étiquette [param text] et une [param action] "
"personnalisée à la boite de dialogue et renvoie le bouton créé.\n"
"Si l'[param action] n'est pas vide, appuyer sur le bouton émettra le signal "
"[signal custom_action] avec la chaîne d'action spécifiée.\n"
"Si [code]true[/code], [param right] placera le bouton à la droite des autres "
"boutons frères.\n"
"Vous pouvez utiliser la méthode [method remove_button] pour supprimer de la "
"boite de dialogue un bouton créé avec cette méthode."

msgid ""
"Adds a button with label [param name] and a cancel action to the dialog and "
"returns the created button.\n"
"You can use [method remove_button] method to remove a button created with "
"this method from the dialog."
msgstr ""
"Ajoute un bouton avec l'étiquette [param name] et une action d'annulation à "
"la boîte de dialogue et renvoie le bouton créé.\n"
"Vous pouvez utiliser la méthode [method remove_button] pour supprimer de la "
"boite de dialogue un bouton un bouton créé avec cette méthode."

msgid ""
"Returns the label used for built-in text.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie le label utilisé pour le texte intégré.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne nécessaire, le retirer et "
"le libérer peut causer un plantage. Si vous voulez le cacher lui ou l'un de "
"ses enfants, utilisez plutôt [member CanvasItem.visible]."

msgid ""
"Returns the OK [Button] instance.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie l'instance du [Button] \"OK\".\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne nécessaire, le retirer et "
"le libérer peut causer un plantage. Si vous voulez le cacher lui ou l'un de "
"ses enfants, utilisez plutôt [member CanvasItem.visible]."

msgid ""
"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
"dialog will be accepted."
msgstr ""
"Ajoute une [LineEdit] dans le dialogue. Quand on appuie sur la touche entrée, "
"le dialogue sera accepté."

msgid ""
"Removes the [param button] from the dialog. Does NOT free the [param button]. "
"The [param button] must be a [Button] added with [method add_button] or "
"[method add_cancel_button] method. After removal, pressing the [param button] "
"will no longer emit this dialog's [signal custom_action] or [signal canceled] "
"signals."
msgstr ""
"Retire le [param button] de la boite de dialogue. Ne libère PAS le [param "
"button]. Le [param button] doit être un [Button] ajouté avec la méthode "
"[method add_button] ou [method add_cancel_button]. Après retrait, appuyer sur "
"[param button] n'émettra plus les signaux [signal custom_action] ou [signal "
"canceled] de la boite de dialogue."

msgid "Sets autowrapping for the text in the dialog."
msgstr ""
"Défini le retour à la ligne automatique du texte dans la fenêtre de dialogue."

msgid ""
"If [code]true[/code], the dialog will be hidden when the [code]ui_cancel[/"
"code] action is pressed (by default, this action is bound to [constant "
"KEY_ESCAPE])."
msgstr ""
"Si [code]true[/code], la boîte de dialogue sera cachée lorsque l'action "
"[code]ui_cancel[/code] est pressée (par défaut, cette action est liée à "
"[constant KEY_ESCAPE])."

msgid ""
"If [code]true[/code], the dialog is hidden when the OK button is pressed. You "
"can set it to [code]false[/code] if you want to do e.g. input validation when "
"receiving the [signal confirmed] signal, and handle hiding the dialog in your "
"own logic.\n"
"[b]Note:[/b] Some nodes derived from this class can have a different default "
"value, and potentially their own built-in logic overriding this setting. For "
"example [FileDialog] defaults to [code]false[/code], and has its own input "
"validation code that is called when you press OK, which eventually hides the "
"dialog if the input is valid. As such, this property can't be used in "
"[FileDialog] to disable hiding the dialog when pressing OK."
msgstr ""
"Si [code]true[/code], la boîte de dialogue est cachée quand le bouton OK est "
"pressé. Vous pouvez le mettre à [code]false[/code] si vous voulez, par "
"exemple, valider l'entrée quand le signal [signal confirmed] est reçu et "
"masquer manuellement la boîte de dialogue.\n"
"[b]Note:[/b] Plusieurs nœuds dérivés de cette classe peuvent avoir une valeur "
"par défaut différente mais aussi leur propre logique intégrée qui "
"outrepassera ce réglage. Par exemple [FileDialog] utilise par défaut "
"[code]false[/code], et contient sa propre logique pour valider l'entrée qui "
"est appelée quand vous pressez OK, puis va cacher le dialogue si cette entrée "
"est valide. Telle quelle, cette propriété ne peut pas être utilisée dans "
"[FileDialog] pour désactiver la dissimulation de la boîte de dialogue quand "
"OK est pressé."

msgid "The text displayed by the dialog."
msgstr "Le texte affiché par le dialogue."

msgid ""
"The text displayed by the OK button (see [method get_ok_button]). If empty, a "
"default text will be used."
msgstr ""
"Le texte affiché par le bouton OK (voir [method get_ok_button]). Si vide, un "
"texte par défaut sera utilisé."

msgid ""
"Emitted when the dialog is closed or the button created with [method "
"add_cancel_button] is pressed."
msgstr ""
"Émis lorsque la fenêtre est fermée ou que le bouton créé avec [method "
"add_cancel_button] est pressé."

msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr ""
"Émis lorsque le dialogue est accepté, c'est-à-dire lorsque le bouton OK est "
"enfoncé."

msgid ""
"Emitted when a custom button with an action is pressed. See [method "
"add_button]."
msgstr ""
"Émis lorsqu'un bouton personnalisé est appuyé. Voir [method add_button]."

msgid ""
"The minimum height of each button in the bottom row (such as OK/Cancel) in "
"pixels. This can be increased to make buttons with short texts easier to "
"click/tap."
msgstr ""
"La hauteur minimale de chaque bouton de la ligne inférieure (comme OK/"
"Annuler) en pixels. Cela peut être augmenté pour rendre les boutons avec des "
"textes courts plus faciles à cliquer/presser."

msgid ""
"The minimum width of each button in the bottom row (such as OK/Cancel) in "
"pixels. This can be increased to make buttons with short texts easier to "
"click/tap."
msgstr ""
"La largeur minimale de chaque bouton de la ligne inférieure (comme OK/"
"Annuler) en pixels. Cela peut être augmenté pour rendre les boutons avec des "
"textes courts plus faciles à cliquer/presser."

msgid ""
"The size of the vertical space between the dialog's content and the button "
"row."
msgstr ""
"La taille de l'espace vertical entre le contenu de la fenêtre et la ligne de "
"boutons."

msgid "The panel that fills the background of the window."
msgstr "Le panneau qui remplit l'arrière-plan de la fenêtre."

msgid "Provides access to AES encryption/decryption of raw data."
msgstr "Fournit l'accès au chiffrement/déchiffrement AES de données brutes."

msgid ""
"This class holds the context information required for encryption and "
"decryption operations with AES (Advanced Encryption Standard). Both AES-ECB "
"and AES-CBC modes are supported.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var aes = AESContext.new()\n"
"\n"
"func _ready():\n"
"\tvar key = \"My secret key!!!\" # Key must be either 16 or 32 bytes.\n"
"\tvar data = \"My secret text!!\" # Data size must be multiple of 16 bytes, "
"apply padding if needed.\n"
"\t# Encrypt ECB\n"
"\taes.start(AESContext.MODE_ECB_ENCRYPT, key.to_utf8_buffer())\n"
"\tvar encrypted = aes.update(data.to_utf8_buffer())\n"
"\taes.finish()\n"
"\t# Decrypt ECB\n"
"\taes.start(AESContext.MODE_ECB_DECRYPT, key.to_utf8_buffer())\n"
"\tvar decrypted = aes.update(encrypted)\n"
"\taes.finish()\n"
"\t# Check ECB\n"
"\tassert(decrypted == data.to_utf8_buffer())\n"
"\n"
"\tvar iv = \"My secret iv!!!!\" # IV must be of exactly 16 bytes.\n"
"\t# Encrypt CBC\n"
"\taes.start(AESContext.MODE_CBC_ENCRYPT, key.to_utf8_buffer(), "
"iv.to_utf8_buffer())\n"
"\tencrypted = aes.update(data.to_utf8_buffer())\n"
"\taes.finish()\n"
"\t# Decrypt CBC\n"
"\taes.start(AESContext.MODE_CBC_DECRYPT, key.to_utf8_buffer(), "
"iv.to_utf8_buffer())\n"
"\tdecrypted = aes.update(encrypted)\n"
"\taes.finish()\n"
"\t# Check CBC\n"
"\tassert(decrypted == data.to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate AesContext _aes = new AesContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tstring key = \"My secret key!!!\"; // Key must be either 16 or 32 bytes.\n"
"\t\tstring data = \"My secret text!!\"; // Data size must be multiple of 16 "
"bytes, apply padding if needed.\n"
"\t\t// Encrypt ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8Buffer());\n"
"\t\tbyte[] encrypted = _aes.Update(data.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Decrypt ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8Buffer());\n"
"\t\tbyte[] decrypted = _aes.Update(encrypted);\n"
"\t\t_aes.Finish();\n"
"\t\t// Check ECB\n"
"\t\tDebug.Assert(decrypted == data.ToUtf8Buffer());\n"
"\n"
"\t\tstring iv = \"My secret iv!!!!\"; // IV must be of exactly 16 bytes.\n"
"\t\t// Encrypt CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tencrypted = _aes.Update(data.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Decrypt CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tdecrypted = _aes.Update(encrypted);\n"
"\t\t_aes.Finish();\n"
"\t\t// Check CBC\n"
"\t\tDebug.Assert(decrypted == data.ToUtf8Buffer());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Cette classe contient l'information de contexte nécessaire aux opérations de "
"chiffrement/déchiffrement AES (Advanced Encryption Standard, litt. Norme de "
"Chiffrement Avancé). Elle est compatible avec les modes AES-ECB et AES-CBC.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var aes = AESContext.new()\n"
"\n"
"func _ready():\n"
"\tvar cle = \"Ma clé secrète !!!\" # La clé doit être soit de 16 ou de 32 "
"octets.\n"
"\tvar donnee = \"Mon texte secret!!\" # La taille des données doit être un "
"multiple de 16 octets, ajoutez du remplissage si nécessaire.\n"
"\t# Crypter l'ECB\n"
"\taes.start(AESContext.MODE_ECB_ENCRYPT, cle.to_utf8())\n"
"\tvar encrypte = aes.update(donnee.to_utf8())\n"
"\taes.finish()\n"
"\t# Décrypter l'ECB\n"
"\taes.start(AESContext.MODE_ECB_DECRYPT, cle.to_utf8())\n"
"\tvar decrypte = aes.update(encrypte)\n"
"\taes.finish()\n"
"\t# Vérifier l'ECB\n"
"\tassert(decrypte == donnee.to_utf8())\n"
"\n"
"\tvar iv = \"Mon iv secret !!!!\" # La taille du vecteur d'initialisation "
"doit être d'exactement 16 octets.\n"
"\t# Chiffrer le CBC\n"
"\taes.start(AESContext.MODE_CBC_ENCRYPT, cle.to_utf8(), iv.to_utf8())\n"
"\tencrypte = aes.update(donnee.to_utf8())\n"
"\taes.finish()\n"
"\t# Déchiffrer le CBC\n"
"\taes.start(AESContext.MODE_CBC_DECRYPT, cle.to_utf8(), iv.to_utf8())\n"
"\tdecrypte = aes.update(encrypte)\n"
"\taes.finish()\n"
"\t# Vérifier le CBC\n"
"\tassert(encrypte == donnee.to_utf8())\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public partial class MonNoeud : Node\n"
"{\n"
"\tprivate AesContext _aes = new AesContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tstring cle = \"Ma clé secrète !!!\"; // La clé doit être soit de 16 ou de "
"32 octets.\n"
"\t\tstring donnee = \"Mon texte secret !!\"; // La taille des données doit "
"être un multiple de 16 octets, ajoutez du remplissage si nécessaire.\n"
"\t\t// Crypter l'ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, cle.ToUtf8Buffer());\n"
"\t\tbyte[] encrypte = _aes.Update(donnee.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Décrypter l'ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, cle.ToUtf8Buffer());\n"
"\t\tbyte[] decrypte = _aes.Update(encrypte);\n"
"\t\t_aes.Finish();\n"
"\t\t// Vérifier l'ECB\n"
"\t\tDebug.Assert(decrypte == donnees.ToUtf8Buffer());\n"
"\n"
"\t\tstring iv = \"Mon iv secret !!!!\"; // La taille du vecteur "
"d'initialisation doit être d'exactement 16 octets.\n"
"\t\t// Chiffrer le CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, cle.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tencrypte = _aes.Update(donnee.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Déchiffrer le CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, cle.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tdecrypted = _aes.Update(encrypte);\n"
"\t\t_aes.Finish();\n"
"\t\t// Vérifier le CBC\n"
"\t\tDebug.Assert(decrypte == donnee.ToUtf8Buffer());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Close this AES context so it can be started again. See [method start]."
msgstr ""
"Ferme ce contexte AES afin qu’il puisse être recommencé. Voir [method start]."

msgid ""
"Get the current IV state for this context (IV gets updated when calling "
"[method update]). You normally don't need this function.\n"
"[b]Note:[/b] This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
"Obtient l'état IV actuel pour ce contexte (L'IV est mis à jour en appelant "
"[method update]). Vous n'avez généralement pas besoin de cette fonction.\n"
"[b]Note :[/b] Cette fonction a seulement du sens quand le contexte est "
"initialisé avec [constant MODE_CBC_ENCRYPT] ou [constant MODE_CBC_DECRYPT]."

msgid ""
"Start the AES context in the given [param mode]. A [param key] of either 16 "
"or 32 bytes must always be provided, while an [param iv] (initialization "
"vector) of exactly 16 bytes, is only needed when [param mode] is either "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
"Commence le contexte AES dans le [param mode] donné. Une clé [param key] de "
"soit 16 ou 32 octets doit toujours être fournie, alors qu'un [param iv] "
"(vecteur d'initialisation) de précisément 16 octets est seulement nécessaire "
"quand [param mode] est soit [constant MODE_CBC_ENCRYPT] ou [constant "
"MODE_CBC_DECRYPT]."

msgid ""
"Run the desired operation for this AES context. Will return a "
"[PackedByteArray] containing the result of encrypting (or decrypting) the "
"given [param src]. See [method start] for mode of operation.\n"
"[b]Note:[/b] The size of [param src] must be a multiple of 16. Apply some "
"padding if needed."
msgstr ""
"Exécute l'opération désirée pour ce contexte AES. Renverra un "
"[PackedByteArray] contenant le résultat du chiffrement (ou déchiffrement) de "
"[param src]. Voir [method start] pour le mode d'opération.\n"
"[b]Note :[/b] La taille de [param src] doit être un multiple de 16. Applique "
"du padding si nécessaire."

msgid "AES electronic codebook encryption mode."
msgstr "Mode de chiffrement du livre de codes électroniques AES."

msgid "AES electronic codebook decryption mode."
msgstr "Mode de décryptage du codebook électronique AES."

msgid "AES cipher blocker chaining encryption mode."
msgstr "Mode de cryptage de chiffre de chaînage de blocs AES."

msgid "AES cipher blocker chaining decryption mode."
msgstr "Mode de décryptage de chiffre de chaînage de blocs AES."

msgid "Maximum value for the mode enum."
msgstr "Valeur maximale pour le mode énumeration."

msgid "The [AimModifier3D] rotates a bone to look at a reference bone."
msgstr "L'[AimModifier3D] pivote un os pour regarder vers un os de référence."

msgid ""
"This is a simple version of [LookAtModifier3D] that only allows bone to the "
"reference without advanced options such as angle limitation or time-based "
"interpolation.\n"
"The feature is simplified, but instead it is implemented with smooth tracking "
"without euler, see [method set_use_euler]."
msgstr ""
"Il s'agit d'une version simple de [LookAtModifier3D] qui permet seulement un "
"os comme référence sans options avancées telles que la limitation d'angle ou "
"l'interpolation temporelle.\n"
"La fonctionnalité est simplifiée, mais elle est implémentée avec un suivi "
"lisse sans Euler, voir [method set_use_euler]."

msgid "Returns the forward axis of the bone."
msgstr "Renvoie l'axe avant de l'os."

msgid ""
"Returns the axis of the first rotation. It is enabled only if [method "
"is_using_euler] is [code]true[/code]."
msgstr ""
"Renvoie l'axe de la première rotation. Il est activé seulement si [method "
"is_using_euler] vaut [code]true[/code]."

msgid "Returns [code]true[/code] if it provides rotation with using euler."
msgstr ""
"Renvoie [code]true[/code] si elle fournit la rotation en utilisant les angles "
"d'Euler."

msgid ""
"Returns [code]true[/code] if it provides rotation by two axes. It is enabled "
"only if [method is_using_euler] is [code]true[/code]."
msgstr ""
"Renvoie [code]true[/code] s'il fournit une rotation à deux axes. C'est activé "
"seulement si [method is_using_euler] vaut [code]true[/code]."

msgid "Sets the forward axis of the bone."
msgstr "Définit l'axe avant de l'os."

msgid ""
"Sets the axis of the first rotation. It is enabled only if [method "
"is_using_euler] is [code]true[/code]."
msgstr ""
"Définit l'axe de la première rotation. C'est activé seulement si [method "
"is_using_euler] vaut [code]true[/code]."

msgid ""
"If sets [param enabled] to [code]true[/code], it provides rotation with using "
"euler.\n"
"If sets [param enabled] to [code]false[/code], it provides rotation with "
"using rotation by arc generated from the forward axis vector and the vector "
"toward the reference."
msgstr ""
"Si [param enabled] vaut [code]true[/code], il fournit la rotation en "
"utilisant Euler.\n"
"Si [param enabled] vaut [code]false[/code], il fournit la rotation en "
"utilisant la rotation de l'arc généré par le vecteur de l'axe avant et le "
"vecteur vers la référence."

msgid ""
"If sets [param enabled] to [code]true[/code], it provides rotation by two "
"axes. It is enabled only if [method is_using_euler] is [code]true[/code]."
msgstr ""
"Si [param enabled] vaut [code]true[/code], cela fournit une rotation par deux "
"axes. C'est activé seulement si [method is_using_euler] vaut [code]true[/"
"code]."

msgid "The number of settings in the modifier."
msgstr "Le nombre de réglages dans le modificateur."

msgid ""
"A 2D physics body that can't be moved by external forces. When moved "
"manually, it affects other bodies in its path."
msgstr ""
"Un corps physique 2D qui ne peut être déplacé par des forces extérieures. "
"Lorsqu'il est déplacé manuellement, il affecte les autres corps sur son "
"chemin."

msgid ""
"An animatable 2D physics body. It can't be moved by external forces or "
"contacts, but can be moved manually by other means such as code, "
"[AnimationMixer]s (with [member AnimationMixer.callback_mode_process] set to "
"[constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform2D].\n"
"When [AnimatableBody2D] is moved, its linear and angular velocity are "
"estimated and used to affect other physics bodies in its path. This makes it "
"useful for moving platforms, doors, and other moving objects."
msgstr ""
"Un corps physique 2D animable. Il ne peut pas être déplacé par des forces ou "
"des contacts externes, mais peut être déplacé manuellement par d'autres "
"moyens tels que le code, des [AnimationMixer]s (avec [member "
"AnimationMixer.callback_mode_process]) définis à [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), et des "
"[RemoteTransform2D]s.\n"
"Lorsque [AnimatableBody2D] est déplacé, sa vitesse linéaire et angulaire sont "
"estimées et utilisées pour affecter d'autres corps physiques sur son chemin. "
"Cela le rend utile pour les plates-formes mobiles, les portes et autres "
"objets mobiles."

msgid "Physics introduction"
msgstr "Introduction à la physique"

msgid "Troubleshooting physics issues"
msgstr "Dépanner des problèmes de physique"

msgid ""
"If [code]true[/code], the body's movement will be synchronized to the physics "
"frame. This is useful when animating movement via [AnimationPlayer], for "
"example on moving platforms. Do [b]not[/b] use together with [method "
"PhysicsBody2D.move_and_collide]."
msgstr ""
"Si [code]true[/code], le mouvement du corps sera synchronisé à la trame "
"physique. Ceci est utile lors de l'animation du mouvement via "
"[AnimationPlayer], par exemple sur les plateformes mobiles. N'utilisez "
"[b]pas[/b] ceci en même temps avec [method PhysicsBody2D.move_and_collide]."

msgid ""
"A 3D physics body that can't be moved by external forces. When moved "
"manually, it affects other bodies in its path."
msgstr ""
"Un corps physique 3D qui ne peut pas être déplacé par des forces extérieures. "
"Lorsqu'il est déplacé manuellement, il affecte les autres corps sur son "
"chemin."

msgid ""
"An animatable 3D physics body. It can't be moved by external forces or "
"contacts, but can be moved manually by other means such as code, "
"[AnimationMixer]s (with [member AnimationMixer.callback_mode_process] set to "
"[constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform3D].\n"
"When [AnimatableBody3D] is moved, its linear and angular velocity are "
"estimated and used to affect other physics bodies in its path. This makes it "
"useful for moving platforms, doors, and other moving objects."
msgstr ""
"Un corps physique 3D animable. Il ne peut pas être déplacé par des forces ou "
"des contacts externes, mais peut être déplacé manuellement par d'autres "
"moyens tels que le code, des [AnimationMixer]s (avec [member "
"AnimationMixer.callback_mode_process]) définis à [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), et des "
"[RemoteTransform3D]s.\n"
"Lorsque [AnimatableBody3D] est déplacé, sa vitesse linéaire et angulaire sont "
"estimées et utilisées pour affecter d'autres corps physiques sur son chemin. "
"Cela le rend utile pour les plates-formes mobiles, les portes et autres "
"objets mobiles."

msgid "3D Physics Tests Demo"
msgstr "Démo de tests physiques en 3D"

msgid "Third Person Shooter (TPS) Demo"
msgstr "Démo de tir à la troisième personne (TPS)"

msgid "3D Voxel Demo"
msgstr "Démo voxel 3D"

msgid ""
"If [code]true[/code], the body's movement will be synchronized to the physics "
"frame. This is useful when animating movement via [AnimationPlayer], for "
"example on moving platforms. Do [b]not[/b] use together with [method "
"PhysicsBody3D.move_and_collide]."
msgstr ""
"Si [code]true[/code], le mouvement du corps sera synchronisé à la trame "
"physique. Ceci est utile lors de l'animation du mouvement via "
"[AnimationPlayer], par exemple sur les plateformes mobiles. N'utilisez "
"[b]pas[/b] ceci en même temps avec [method PhysicsBody3D.move_and_collide]."

msgid ""
"Sprite node that contains multiple textures as frames to play for animation."
msgstr ""
"Le nœud de sprite qui peut utiliser plusieurs textures pour jouer une "
"animation."

msgid ""
"[AnimatedSprite2D] is similar to the [Sprite2D] node, except it carries "
"multiple textures as animation frames. Animations are created using a "
"[SpriteFrames] resource, which allows you to import image files (or a folder "
"containing said files) to provide the animation frames for the sprite. The "
"[SpriteFrames] resource can be configured in the editor via the SpriteFrames "
"bottom panel."
msgstr ""
"[AnimatedSprite2D] est semblable au nœud [Sprite2D], sauf qu'il contient "
"plusieurs textures comme des trames d'animation. Les animations sont créées à "
"l'aide d'une ressource [SpriteFrames] qui vous permet d'importer des fichiers "
"d'image (ou un dossier contenant ces fichiers) pour fournir les trames "
"d'animation pour le sprite. La ressource [SpriteFrames] peut être configurée "
"dans l'éditeur via le panneau inférieur SpriteFrames."

msgid "2D Sprite animation"
msgstr "Animation Sprite 2D"

msgid "2D Dodge The Creeps Demo"
msgstr "Démo 2D « Dodge The Creeps »"

msgid ""
"Returns the actual playing speed of current animation or [code]0[/code] if "
"not playing. This speed is the [member speed_scale] property multiplied by "
"[code]custom_speed[/code] argument specified when calling the [method play] "
"method.\n"
"Returns a negative value if the current animation is playing backwards."
msgstr ""
"Renvoie la vitesse réelle de lecture de l'animation actuelle ou [code]0[/"
"code] si elle n'est pas en train de jouer. Cette vitesse est la propriété "
"[member speed_scale] multipliée par l'argument [code]custom_speed[/code] "
"spécifié lors de l'appel de la méthode [method play].\n"
"Renvoie une valeur négative si l'animation actuelle se joue à l'envers."

msgid ""
"Returns [code]true[/code] if an animation is currently playing (even if "
"[member speed_scale] and/or [code]custom_speed[/code] are [code]0[/code])."
msgstr ""
"Renvoie [code]true[/code] si une animation est jouée actuellement (même si "
"[member speed_scale] et/ou [code]custom_speed[/code] valent [code]0[/code])."

msgid ""
"Pauses the currently playing animation. The [member frame] and [member "
"frame_progress] will be kept and calling [method play] or [method "
"play_backwards] without arguments will resume the animation from the current "
"playback position.\n"
"See also [method stop]."
msgstr ""
"Pause l'animation en cours de lecture. La trame [member frame] et [member "
"frame_progress] seront conservés et appeler [method play] ou [method "
"play_backwards] sans arguments reprendra l'animation à la position de lecture "
"actuelle.\n"
"Voir aussi [method stop]."

msgid ""
"Plays the animation with key [param name]. If [param custom_speed] is "
"negative and [param from_end] is [code]true[/code], the animation will play "
"backwards (which is equivalent to calling [method play_backwards]).\n"
"If this method is called with that same animation [param name], or with no "
"[param name] parameter, the assigned animation will resume playing if it was "
"paused."
msgstr ""
"Joue l'animation avec la clé [param name]. Si [param custom_speed] est "
"négatif et [param from_end] vaut [code]true[/code], l'animation jouera à "
"l'envers (ce qui est équivalent à appeler [method play_backwards]).\n"
"Si cette méthode est appelée avec ce même nom d'animation [param name], ou "
"sans paramètre [param name], l'animation assignée reprendra la lecture si "
"elle a été interrompue."

msgid ""
"Plays the animation with key [param name] in reverse.\n"
"This method is a shorthand for [method play] with [code]custom_speed = -1.0[/"
"code] and [code]from_end = true[/code], so see its description for more "
"information."
msgstr ""
"Joue à l'envers l'animation avec la clé [param name].\n"
"Cette méthode est un raccourci pour [method play] avec [code]custom_speed = "
"-1.0[/code] et [code]from_end = true[/code], voir donc sa description pour "
"plus d'informations."

msgid ""
"Sets [member frame] and [member frame_progress] to the given values. Unlike "
"setting [member frame], this method does not reset the [member "
"frame_progress] to [code]0.0[/code] implicitly.\n"
"[b]Example:[/b] Change the animation while keeping the same [member frame] "
"and [member frame_progress]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_frame = animated_sprite.get_frame()\n"
"var current_progress = animated_sprite.get_frame_progress()\n"
"animated_sprite.play(\"walk_another_skin\")\n"
"animated_sprite.set_frame_and_progress(current_frame, current_progress)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Définit [member frame] et [member frame_progress] aux valeurs données. "
"Contrairement à définir [member frame], cette méthode ne réinitialise pas "
"implicitement [member frame_progress] à [code]0.0[/code].\n"
"[b]Exemple :[/b] Changer l'animation tout en gardant la même [member frame] "
"et [member frame_progress] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var trame_actuelle = animated_sprite.get_frame()\n"
"var progresion_actuelle = animated_sprite.get_frame_progress()\n"
"animated_sprite.play(\"marche_autre_skin\")\n"
"animated_sprite.set_frame_and_progress(trame_actuelle, progresion_actuelle)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Stops the currently playing animation. The animation position is reset to "
"[code]0[/code] and the [code]custom_speed[/code] is reset to [code]1.0[/"
"code]. See also [method pause]."
msgstr ""
"Arrête l'animation en cours de lecture. La position d'animation est "
"réinitialisée à [code]0[/code] et la vitesse [code]custom_speed[/code] est "
"réinitialisée à [code]1.0[/code]. Voir aussi [method pause]."

msgid ""
"The current animation from the [member sprite_frames] resource. If this value "
"is changed, the [member frame] counter and the [member frame_progress] are "
"reset."
msgstr ""
"L'animation actuelle de la ressource [member sprite_frames]. Si cette valeur "
"est modifiée, le compteur [member frame] et [member frame_progress] sont "
"réinitialisés."

msgid "The key of the animation to play when the scene loads."
msgstr "La clé d'animation à jouer quand la scène est chargée."

msgid ""
"If [code]true[/code], texture will be centered.\n"
"[b]Note:[/b] For games with a pixel art aesthetic, textures may appear "
"deformed when centered. This is caused by their position being between "
"pixels. To prevent this, set this property to [code]false[/code], or consider "
"enabling [member ProjectSettings.rendering/2d/snap/snap_2d_vertices_to_pixel] "
"and [member ProjectSettings.rendering/2d/snap/snap_2d_transforms_to_pixel]."
msgstr ""
"Si [code]true[/code], la texture sera centrée.\n"
"[b]Note :[/b] Pour les jeux avec une esthétique pixel art, les textures "
"peuvent apparaître déformées lorsqu'elles sont centrées. Ceci est causé par "
"leur position se trouvant entre les pixels. Pour éviter cela, définissez "
"cette propriété à [code]false[/code], ou envisagez d'activer [member "
"ProjectSettings.rendering/2d/snap/snap_2d_vertices_to_pixel] et [member "
"ProjectSettings.rendering/2d/snap/snap_2d_transforms_to_pixel]."

msgid "If [code]true[/code], texture is flipped horizontally."
msgstr "Si [code]true[/code], la texture est inversée horizontalement."

msgid "If [code]true[/code], texture is flipped vertically."
msgstr "Si [code]true[/code], la texture est inversée verticalement."

msgid ""
"The displayed animation frame's index. Setting this property also resets "
"[member frame_progress]. If this is not desired, use [method "
"set_frame_and_progress]."
msgstr ""
"L'index de la trame d'animation affichée. Définir cette propriété "
"réinitialise aussi [member frame_progress]. Si cela n'est pas souhaité, "
"utilisez [method set_frame_and_progress]."

msgid ""
"The progress value between [code]0.0[/code] and [code]1.0[/code] until the "
"current frame transitions to the next frame. If the animation is playing "
"backwards, the value transitions from [code]1.0[/code] to [code]0.0[/code]."
msgstr ""
"La valeur de progression entre [code]0.0[/code] et [code]1.0[/code] jusqu'à "
"ce que la trame actuelle transitionne vers la prochain trame. Si l'animation "
"joue à l'envers, la valeur passe de [code]1.0[/code] à [code]0.0[/code]."

msgid "The texture's drawing offset."
msgstr "Le décalage du dessin de la texture."

msgid ""
"The speed scaling ratio. For example, if this value is [code]1[/code], then "
"the animation plays at normal speed. If it's [code]0.5[/code], then it plays "
"at half speed. If it's [code]2[/code], then it plays at double speed.\n"
"If set to a negative value, the animation is played in reverse. If set to "
"[code]0[/code], the animation will not advance."
msgstr ""
"Le rapport d'échelle de vitesse. Par exemple, si cette valeur vaut [code]1[/"
"code], alors l'animation joue à la vitesse normale. À [code]0,5[/code], elle "
"est joué deux fois moins vite. À [code]2[/code], elle est jouée deux fois "
"plus vite.\n"
"S'il est négatif, l'animation est jouée à l'envers. S'il est défini à "
"[code]0[/code], l'animation n'avancera pas."

msgid ""
"The [SpriteFrames] resource containing the animation(s). Allows you the "
"option to load, edit, clear, make unique and save the states of the "
"[SpriteFrames] resource."
msgstr ""
"La ressource [SpriteFrames] contenant les animations. Vous permet de charger, "
"modifier, effacer, rendre unique et sauvegarder les états de la ressource "
"[SpriteFrames]."

msgid "Emitted when [member animation] changes."
msgstr "Émis lorsque [member animation] change."

msgid ""
"Emitted when the animation reaches the end, or the start if it is played in "
"reverse. When the animation finishes, it pauses the playback.\n"
"[b]Note:[/b] This signal is not emitted if an animation is looping."
msgstr ""
"Émis lorsque l'animation atteint la fin, ou le départ si elle est jouée à "
"l'envers. Lorsque l'animation se termine, elle met en pause la lecture.\n"
"[b]Note :[/b] Ce signal n'est pas émis si une animation boucle."

msgid "Emitted when the animation loops."
msgstr "Émis lorsque l'animation boucle."

msgid "Emitted when [member frame] changes."
msgstr "Émis lorsque [member frame] change."

msgid "Emitted when [member sprite_frames] changes."
msgstr "Émis lorsque [member sprite_frames] change."

msgid ""
"2D sprite node in 3D world, that can use multiple 2D textures for animation."
msgstr ""
"Nœud sprite 2D dans le monde 3D, qui peut utiliser plusieurs textures 2D pour "
"l'animation."

msgid ""
"[AnimatedSprite3D] is similar to the [Sprite3D] node, except it carries "
"multiple textures as animation [member sprite_frames]. Animations are created "
"using a [SpriteFrames] resource, which allows you to import image files (or a "
"folder containing said files) to provide the animation frames for the sprite. "
"The [SpriteFrames] resource can be configured in the editor via the "
"SpriteFrames bottom panel."
msgstr ""
"[AnimatedSprite3D] est semblable au nœud [Sprite3D], sauf qu'il contient "
"plusieurs textures comme des trames d'animation ([member sprite_frames]). Les "
"animations sont créées à l'aide d'une ressource [SpriteFrames] qui vous "
"permet d'importer des fichiers d'image (ou un dossier contenant ces fichiers) "
"pour fournir les trames d'animation pour le sprite. La ressource "
"[SpriteFrames] peut être configurée dans l'éditeur via le panneau inférieur "
"SpriteFrames."

msgid "2D Sprite animation (also applies to 3D)"
msgstr "L'animation des sprites 2D (et aussi 3D)"

msgid ""
"This class does not work properly in current versions and may be removed in "
"the future. There is currently no equivalent workaround."
msgstr ""
"Cette classe ne fonctionne pas correctement dans les versions actuelles et "
"peut être supprimée à l'avenir. Il n'y a actuellement pas de solution "
"équivalente."

msgid "Proxy texture for simple frame-based animations."
msgstr "Texture de substitut pour des animations simples basés sur les trames."

msgid ""
"[AnimatedTexture] is a resource format for frame-based animations, where "
"multiple textures can be chained automatically with a predefined delay for "
"each frame. Unlike [AnimationPlayer] or [AnimatedSprite2D], it isn't a "
"[Node], but has the advantage of being usable anywhere a [Texture2D] resource "
"can be used, e.g. in a [TileSet].\n"
"The playback of the animation is controlled by the [member speed_scale] "
"property, as well as each frame's duration (see [method set_frame_duration]). "
"The animation loops, i.e. it will restart at frame 0 automatically after "
"playing the last frame.\n"
"[AnimatedTexture] currently requires all frame textures to have the same "
"size, otherwise the bigger ones will be cropped to match the smallest one.\n"
"[b]Note:[/b] AnimatedTexture doesn't support using [AtlasTexture]s. Each "
"frame needs to be a separate [Texture2D].\n"
"[b]Warning:[/b] The current implementation is not efficient for the modern "
"renderers."
msgstr ""
"[AnimatedTexture] est un format de ressource pour les animations basées sur "
"les trames, où plusieurs textures peuvent être automatiquement chaînés avec "
"un délai prédéfini pour chaque trame. Contrairement à [AnimationPlayer] ou "
"[AnimatedSprite2D], ce n'est pas un [Node], mais à l'avantage d'être "
"utilisable n'importe où une ressource [Texture2D] peut être utilisée, par "
"exemple dans un [TileSet].\n"
"La lecture de l'animation est contrôlée par la propriété [member speed_scale] "
"ainsi que le délai de chaque trame (voir [method set_frame_duration]). "
"L'animation boucle, c'est-à dire que l'animation recommence automatiquement à "
"la trame 0 dès que la dernière trame de l'animation est jouée.\n"
"[AnimatedTexture] nécessite actuellement que toutes les textures de trame "
"aient la même taille, sinon les plus grandes seront coupées pour correspondre "
"à la plus petite.\n"
"[b]Note :[/b] AnimatedTexture ne supporte pas l'utilisation "
"d'[AtlasTexture]s. Chaque trame doit être une [Texture2D] distincte.\n"
"[b]Attention :[/b] L'implémentation actuelle n'est pas efficiente pour les "
"moteurs de rendu modernes."

msgid "Returns the given [param frame]'s duration, in seconds."
msgstr "Renvoie la durée de la trame [param frame] donnée, en secondes."

msgid "Returns the given frame's [Texture2D]."
msgstr "Renvoie la [Texture2D] de la trame donnée."

msgid ""
"Sets the duration of any given [param frame]. The final duration is affected "
"by the [member speed_scale]. If set to [code]0[/code], the frame is skipped "
"during playback."
msgstr ""
"Définit la durée de toute trame [param frame] donnée. La durée finale est "
"affectée par [member speed_scale]. Si définie à [code]0[/code], la trame est "
"ignorée lors de la lecture."

msgid ""
"Assigns a [Texture2D] to the given frame. Frame IDs start at 0, so the first "
"frame has ID 0, and the last frame of the animation has ID [member frames] - "
"1.\n"
"You can define any number of textures up to [constant MAX_FRAMES], but keep "
"in mind that only frames from 0 to [member frames] - 1 will be part of the "
"animation."
msgstr ""
"Affecte une [Texture2D] à la trame donnée. Les identifiants de trames "
"commencent à 0, donc la première trame a l'identifiant 0, et la dernière "
"trame a l'identifiant [member frames] - 1.\n"
"Vous pouvez définir n'importe quel nombre de textures jusqu'à [constant "
"MAX_FRAMES], mais rappelez-vous que seulement les trames qui vont de 0 à "
"[member frames] - 1 feront partie de l'animation."

msgid ""
"Sets the currently visible frame of the texture. Setting this frame while "
"playing resets the current frame time, so the newly selected frame plays for "
"its whole configured frame duration."
msgstr ""
"Définit la trame actuellement visible de la texture. Définir cette trame tout "
"en jouant réinitialise le temps actuel de trame, de sorte que la trame "
"nouvellement sélectionnée joue pour toute sa durée configurée."

msgid ""
"Number of frames to use in the animation. While you can create the frames "
"independently with [method set_frame_texture], you need to set this value for "
"the animation to take new frames into account. The maximum number of frames "
"is [constant MAX_FRAMES]."
msgstr ""
"Le nombre de trames d'utiliser dans l'animation. Même que vous pouvez créer "
"les trames indépendamment avec [method set_frame_texture], vous devez définir "
"cette valeur pour l'animation pour prendre en compte les nouvelles trames. Le "
"nombre maximum de trames est [constant MAX_FRAMES]."

msgid ""
"If [code]true[/code], the animation will only play once and will not loop "
"back to the first frame after reaching the end. Note that reaching the end "
"will not set [member pause] to [code]true[/code]."
msgstr ""
"Si [code]true[/code], l'animation jouera une fois seulement et ne retournera "
"pas à la première trame après avoir terminé. Remarquez qu'atteindre la fin ne "
"définira pas [member pause] à [code]true[/code]."

msgid ""
"If [code]true[/code], the animation will pause where it currently is (i.e. at "
"[member current_frame]). The animation will continue from where it was paused "
"when changing this property to [code]false[/code]."
msgstr ""
"Si [code]true[/code], l'animation pausera à la trame où il se trouve "
"actuellement (c'est-à-dire à [member current_frame]). L'animation continuera "
"d'où c'était pausé quand cette propriété est mise à [code]false[/code]."

msgid ""
"The animation speed is multiplied by this value. If set to a negative value, "
"the animation is played in reverse."
msgstr ""
"La vitesse de l’animation est multipliée par cette valeur. Si elle est "
"négative, l’animation est jouée à l’envers."

msgid ""
"The maximum number of frames supported by [AnimatedTexture]. If you need more "
"frames in your animation, use [AnimationPlayer] or [AnimatedSprite2D]."
msgstr ""
"Le nombre maximum de trames supporté par [AnimatedTexture]. Si vous avez "
"besoin de plus de trames dans votre animation, utilisez [AnimationPlayer] ou "
"[AnimatedSprite2D]."

msgid "Holds data that can be used to animate anything in the engine."
msgstr ""
"Contient des données qui peuvent être utilisées pour animer n'importe quoi "
"dans le moteur."

msgid ""
"This resource holds data that can be used to animate anything in the engine. "
"Animations are divided into tracks and each track must be linked to a node. "
"The state of that node can be changed through time, by adding timed keys "
"(events) to the track.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
"# 100 pixels in 2.0 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 2.0, 100)\n"
"animation.length = 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"// This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
"// 100 pixels in 2.0 seconds.\n"
"var animation = new Animation();\n"
"int trackIndex = animation.AddTrack(Animation.TrackType.Value);\n"
"animation.TrackSetPath(trackIndex, \"Enemy:position:x\");\n"
"animation.TrackInsertKey(trackIndex, 0.0f, 0);\n"
"animation.TrackInsertKey(trackIndex, 2.0f, 100);\n"
"animation.Length = 2.0f;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Animations are just data containers, and must be added to nodes such as an "
"[AnimationPlayer] to be played back. Animation tracks have different types, "
"each with its own set of dedicated methods. Check [enum TrackType] to see "
"available types.\n"
"[b]Note:[/b] For 3D position/rotation/scale, using the dedicated [constant "
"TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] and [constant TYPE_SCALE_3D] "
"track types instead of [constant TYPE_VALUE] is recommended for performance "
"reasons."
msgstr ""
"Une ressource d'Animation qui contient des données qui peuvent être utilisées "
"pour animer n'importe quoi dans le moteur. Les animations sont divisées en "
"pistes et chaque piste doit être liée à un nœud. L'état de ce nœud peut être "
"modifié au cours du temps, en ajoutant des clés programmées (les évènements) "
"à la piste.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Cela crée une animation qui fait bouger vers la droite le nœud \"Ennemi\" "
"de\n"
"# 100 pixels en 2.0 secondes.\n"
"var animation = Animation.new()\n"
"var index_piste = animation.add_track(Animation.TYPE_VALUE)\n"
"animation.track_set_path(index_piste, \"Ennemi:position:x\")\n"
"animation.track_insert_key(index_piste, 0.0, 0)\n"
"animation.track_insert_key(index_piste, 0.5, 100)\n"
"animation.length = 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"// Cela crée une animation qui fait bouger vers la droite le nœud \"Ennemi\" "
"de\n"
"// 100 pixels en 2.0 secondes.\n"
"var animation = new Animation();\n"
"int indexPiste = animation.AddTrack(Animation.TrackType.Value);\n"
"animation.TrackSetPath(indexPiste, \"Ennemi:position:x\");\n"
"animation.TrackInsertKey(indexPiste, 0.0f, 0);\n"
"animation.TrackInsertKey(indexPiste, 2.0f, 100);\n"
"animation.Length = 2.0f;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Les animations ne contiennent que des données et doivent être ajoutés à un "
"nœud comme un [AnimationPlayer] pour être lues. Il y a plusieurs types de "
"pistes d'animation, chacun eavec son propre ensemble de méthodes dédiées. "
"Voir [enum TrackType] pour voir les types disponibles.\n"
"[b]Note :[/b] Pour la position/rotation/échelle 3D, en utiliser les types de "
"pistes [constant TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] et [constant "
"TYPE_SCALE_3D] dédiées au lieu de [constant TYPE_VALUE] est recommandé pour "
"des raisons de performance."

msgid "Animation documentation index"
msgstr "Index de la documentation sur l'animation"

msgid "Adds a marker to this Animation."
msgstr "Ajoute un marqueur à cette animation."

msgid "Adds a track to the Animation."
msgstr "Ajoute une piste à l’animation."

msgid ""
"Returns the animation name at the key identified by [param key_idx]. The "
"[param track_idx] must be the index of an Animation Track."
msgstr ""
"Renvoie le nom de l'animation à la clé identifiée par [param key_idx]. "
"L'index de piste [param track_idx] doit être l'index d'une piste d'animation."

msgid ""
"Inserts a key with value [param animation] at the given [param time] (in "
"seconds). The [param track_idx] must be the index of an Animation Track."
msgstr ""
"Insère une clé avec la valeur [param animation] au temps [param time] donné "
"(en secondes). L'index de piste [param track_idx] doit être l'index d'une "
"piste d'animation."

msgid ""
"Sets the key identified by [param key_idx] to value [param animation]. The "
"[param track_idx] must be the index of an Animation Track."
msgstr ""
"Définit la clé identifiée par [param key_idx] à la valeur [param animation]. "
"L'index de piste [param track_idx] doit être l'index d'une piste d'animation."

msgid ""
"Returns the end offset of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of an Audio Track.\n"
"End offset is the number of seconds cut off at the ending of the audio stream."
msgstr ""
"Renvoie le décalage de fin de la clé identifiée par [param key_idx]. L'index "
"de piste [param track_idx] doit être l'index d'une piste audio.\n"
"Le décalage de fin est le nombre de secondes coupées à la fin du flux audio."

msgid ""
"Returns the start offset of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of an Audio Track.\n"
"Start offset is the number of seconds cut off at the beginning of the audio "
"stream."
msgstr ""
"Renvoie le décalage de début de la clé identifiée par [param key_idx]. "
"L'index de piste [param track_idx] doit être l'index d'une piste audio.\n"
"Le décalage de début est le nombre de secondes coupées au début du flux audio."

msgid ""
"Returns the audio stream of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of an Audio Track."
msgstr ""
"Renvoie le flux audio de la clé identifiée par [param key_idx]. L'index de "
"piste [param track_idx] doit être l'index d'une piste audio."

msgid ""
"Inserts an Audio Track key at the given [param time] in seconds. The [param "
"track_idx] must be the index of an Audio Track.\n"
"[param stream] is the [AudioStream] resource to play. [param start_offset] is "
"the number of seconds cut off at the beginning of the audio stream, while "
"[param end_offset] is at the ending."
msgstr ""
"Insère une clé de piste audio au temps [param time] donné en secondes. "
"L'index de piste [param track_idx] doit être l'index d'une piste audio.\n"
"[param stream] est la ressource [AudioStream] à jouer. [param start_offset] "
"est le nombre de secondes à couper au début du flux audio, tandis que [param "
"end_offset] est le nombre de secondes à couper à la fin."

msgid ""
"Returns [code]true[/code] if the track at [param track_idx] will be blended "
"with other animations."
msgstr ""
"Renvoie [code]true[/code] si la piste à l'index [param track_idx] sera "
"mélangée avec d'autres animations."

msgid ""
"Sets the end offset of the key identified by [param key_idx] to value [param "
"offset]. The [param track_idx] must be the index of an Audio Track."
msgstr ""
"Définit le décalage de fin de la clé identifiée par [param key_idx] à la "
"valeur [param offset]. L'index de piste [param track_idx] doit être l'index "
"d'une piste audio."

msgid ""
"Sets the start offset of the key identified by [param key_idx] to value "
"[param offset]. The [param track_idx] must be the index of an Audio Track."
msgstr ""
"Définit le décalage de début de la clé identifiée par [param key_idx] à la "
"valeur [param offset]. L'index de piste [param track_idx] doit être l'index "
"d'une piste audio."

msgid ""
"Sets the stream of the key identified by [param key_idx] to value [param "
"stream]. The [param track_idx] must be the index of an Audio Track."
msgstr ""
"Définit le flux de la clé identifiée par [param key_idx] à la valeur [param "
"stream]. L'index de piste [param track_idx] doit être l'index d'une piste "
"audio."

msgid ""
"Sets whether the track will be blended with other animations. If [code]true[/"
"code], the audio playback volume changes depending on the blend value."
msgstr ""
"Définit si la piste sera mélangée avec d'autres animations. Si [code]true[/"
"code], le volume de lecture audio change en fonction du montant de mélange."

msgid ""
"Returns the in handle of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of a Bezier Track."
msgstr ""
"Renvoie la poignée d'entrée de la clé identifiée par [param key_idx]. Le "
"paramètre [param track_idx] doit être l'index d'une piste de Bézier."

msgid ""
"Returns the out handle of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of a Bezier Track."
msgstr ""
"Renvoie la poignée de sortie de la clé identifiée par [param key_idx]. Le "
"paramètre [param track_idx] doit être l'index d'une piste de Bézier."

msgid ""
"Returns the value of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of a Bezier Track."
msgstr ""
"Renvoie la valeur de la clé identifiée par [param key_idx]. Le paramètre "
"[param track_idx] doit être l'index d'une piste de Bézier."

msgid ""
"Inserts a Bezier Track key at the given [param time] in seconds. The [param "
"track_idx] must be the index of a Bezier Track.\n"
"[param in_handle] is the left-side weight of the added Bezier curve point, "
"[param out_handle] is the right-side one, while [param value] is the actual "
"value at this point."
msgstr ""
"Insère une clé de piste de Bézier au temps [param time] donné en secondes. Le "
"paramètre [param track_idx] doit être l'index d'une piste de Bézier.\n"
"[param in_handle] est le poids à gauche du point ajouté à la courbe de "
"Bézier, [param out_handle] est celui à droite, tandis que [param value] est "
"la valeur réelle à ce point."

msgid ""
"Returns the interpolated value at the given [param time] (in seconds). The "
"[param track_idx] must be the index of a Bezier Track."
msgstr ""
"Renvoie la valeur interpolée au temps [param time] donné (en secondes). Le "
"paramètre [param track_idx] doit être l'index d'une piste de Bézier."

msgid ""
"Sets the in handle of the key identified by [param key_idx] to value [param "
"in_handle]. The [param track_idx] must be the index of a Bezier Track."
msgstr ""
"Définit la poignée d'entrée de la clé identifiée par [param key_idx] à la "
"valeur [param in_handle]. Le paramètre [param track_idx] doit être l'index "
"d'une piste de Bézier."

msgid ""
"Sets the out handle of the key identified by [param key_idx] to value [param "
"out_handle]. The [param track_idx] must be the index of a Bezier Track."
msgstr ""
"Définit la poignée de sortie de la clé identifiée par [param key_idx] à la "
"valeur [param out_handle]. Le paramètre [param track_idx] doit être l'index "
"d'une piste de Bézier."

msgid ""
"Sets the value of the key identified by [param key_idx] to the given value. "
"The [param track_idx] must be the index of a Bezier Track."
msgstr ""
"Définit la valeur de la clé identifiée par [param key_idx] à la valeur "
"donnée. Le paramètre [param track_idx] doit être l'index d'une piste de "
"Bézier."

msgid "Inserts a key in a given blend shape track. Returns the key index."
msgstr ""
"Insère une clé dans une piste de blend shape donnée. Renvoie l'index de la "
"clé."

msgid ""
"Returns the interpolated blend shape value at the given time (in seconds). "
"The [param track_idx] must be the index of a blend shape track."
msgstr ""
"Renvoie la valeur de la blend shape interpolée au moment donné (en secondes). "
"Le paramètre [param track_idx] doit être l'index d'une piste de blend shape."

msgid "Clear the animation (clear all tracks and reset all)."
msgstr "Efface l'animation (nettoie toutes les pistes et réinitialise tout)."

msgid ""
"Compress the animation and all its tracks in-place. This will make [method "
"track_is_compressed] return [code]true[/code] once called on this "
"[Animation]. Compressed tracks require less memory to be played, and are "
"designed to be used for complex 3D animations (such as cutscenes) imported "
"from external 3D software. Compression is lossy, but the difference is "
"usually not noticeable in real world conditions.\n"
"[b]Note:[/b] Compressed tracks have various limitations (such as not being "
"editable from the editor), so only use compressed animations if you actually "
"need them."
msgstr ""
"Compresse l'animation et toutes ses pistes en place. Cela fera que [method "
"track_is_compressed] renvoie [code]true[/code] une fois appelée sur ce "
"[Animation]. Les pistes compressées nécessitent moins de mémoire à jouer et "
"sont conçues pour être utilisées pour des animations 3D complexes (comme des "
"cinématiques) importées de logiciels 3D externes. La compression crée des "
"pertes, mais la différence n'est généralement pas perceptible en conditions "
"réelles.\n"
"[b]Note :[/b] Les pistes compressées ont diverses limitations (comme ne pas "
"être modifiables dans l'éditeur), donc utilisez uniquement des animations "
"compressées si vous en avez vraiment besoin."

msgid ""
"Adds a new track to [param to_animation] that is a copy of the given track "
"from this animation."
msgstr ""
"Ajoute une nouvelle piste à [param to_animation] qui est une copie de la "
"piste donnée de cette animation."

msgid ""
"Returns the index of the specified track. If the track is not found, return "
"-1."
msgstr ""
"Renvoie l'index de la piste spécifiée. Si la piste n'est pas trouvée, renvoie "
"-1."

msgid "Returns the name of the marker located at the given time."
msgstr "Renvoie le nom du marqueur situé au temps donné."

msgid "Returns the given marker's color."
msgstr "Renvoie la couleur du marqueur."

msgid "Returns every marker in this Animation, sorted ascending by time."
msgstr ""
"Renvoie tous les marqueurs dans cette Animation, triés par ordre croissant de "
"temps."

msgid "Returns the given marker's time."
msgstr "Renvoie le temps du marqueur donné."

msgid ""
"Returns the closest marker that comes after the given time. If no such marker "
"exists, an empty string is returned."
msgstr ""
"Renvoie le marqueur le plus proche qui vient après le temps donné. Si un tel "
"marqueur n'existe pas, une chaîne vide est renvoyée."

msgid ""
"Returns the closest marker that comes before the given time. If no such "
"marker exists, an empty string is returned."
msgstr ""
"Renvoie le marqueur le plus proche qui vient avant le temps donné. Si un tel "
"marqueur n'existe pas, une chaîne vide est renvoyée."

msgid "Returns the amount of tracks in the animation."
msgstr "Renvoie le nombre de pistes dans l'animation."

msgid ""
"Returns [code]true[/code] if this Animation contains a marker with the given "
"name."
msgstr ""
"Renvoie [code]true[/code] si cette Animation contient un marqueur avec le nom "
"donné."

msgid "Returns the method name of a method track."
msgstr "Renvoie le nom de la méthode d'une piste de méthode."

msgid ""
"Returns the arguments values to be called on a method track for a given key "
"in a given track."
msgstr ""
"Renvoie les valeurs des paramètres d'appel à utiliser sur une piste de "
"méthode pour une clé donnée dans une piste donnée."

msgid ""
"Optimize the animation and all its tracks in-place. This will preserve only "
"as many keys as are necessary to keep the animation within the specified "
"bounds."
msgstr ""
"Optimise l'animation et toutes ses pistes en place. Cela conservera seulement "
"autant de clés que nécessaire pour garder l'animation dans les limites "
"spécifiées."

msgid "Inserts a key in a given 3D position track. Returns the key index."
msgstr ""
"Insère une clé dans une piste de position 3D donnée. Renvoie l'index de la "
"clé."

msgid ""
"Returns the interpolated position value at the given time (in seconds). The "
"[param track_idx] must be the index of a 3D position track."
msgstr ""
"Renvoie la valeur de la position interpolée au temps donné (en secondes). Le "
"paramètre [param track_idx] doit être l'index d'une piste de position 3D."

msgid "Removes the marker with the given name from this Animation."
msgstr "Retire le marqueur avec le nom donné de cette Animation."

msgid "Removes a track by specifying the track index."
msgstr "Enlève une piste spécifiée par son index."

msgid "Inserts a key in a given 3D rotation track. Returns the key index."
msgstr ""
"Insère une clé dans une piste de rotation 3D donnée. Renvoie l'index de la "
"clé."

msgid ""
"Returns the interpolated rotation value at the given time (in seconds). The "
"[param track_idx] must be the index of a 3D rotation track."
msgstr ""
"Renvoie la valeur de la rotation interpolée au temps donné (en secondes). Le "
"paramètre [param track_idx] doit être l'index d'une piste de rotation 3D."

msgid "Inserts a key in a given 3D scale track. Returns the key index."
msgstr ""
"Insère une clé dans une piste d'échelle 3D donnée. Renvoie l'index de la clé."

msgid ""
"Returns the interpolated scale value at the given time (in seconds). The "
"[param track_idx] must be the index of a 3D scale track."
msgstr ""
"Renvoie la valeur d'échelle interpolée au temps donné (en secondes). Le "
"paramètre [param track_idx] doit être l'index d'une piste d'échelle 3D."

msgid "Sets the given marker's color."
msgstr "Définit la couleur du marqueur donné."

msgid ""
"Finds the key index by time in a given track. Optionally, only find it if the "
"approx/exact time is given.\n"
"If [param limit] is [code]true[/code], it does not return keys outside the "
"animation range.\n"
"If [param backward] is [code]true[/code], the direction is reversed in "
"methods that rely on one directional processing.\n"
"For example, in case [param find_mode] is [constant FIND_MODE_NEAREST], if "
"there is no key in the current position just after seeked, the first key "
"found is retrieved by searching before the position, but if [param backward] "
"is [code]true[/code], the first key found is retrieved after the position."
msgstr ""
"Trouve l'index d'une clé par son temps dans une piste donnée. "
"Optionnellement, ne le trouve que si le temps approximatif/exact est donné.\n"
"Si [param limit] vaut [code]true[/code], elle ne renvoie pas les clés en "
"dehors de la plage d'animation.\n"
"Si [param backward] vaut [code]true[/code], la direction est inversée dans "
"les méthodes qui comptent sur un traitement uni-directionnel.\n"
"Par exemple, dans le cas où [param find_mode] vaut [constant "
"FIND_MODE_NEAREST], s'il n'y a pas de clé dans la position actuelle juste "
"après avoir cherché, la première clé trouvée est récupérée en cherchant avant "
"la position, mais si [param backward] vaut [code]true[/code], la première clé "
"trouvée est récupérée après la position."

msgid ""
"Returns [code]true[/code] if the track at [param track_idx] wraps the "
"interpolation loop. New tracks wrap the interpolation loop by default."
msgstr ""
"Renvoie [code]true[/code] si la piste de [param track_idx] enveloppe la "
"boucle d'interpolation. Les nouvelles pistes enveloppent la boucle "
"d'interpolation par défaut."

msgid "Returns the interpolation type of a given track."
msgstr "Renvoie le type d'interpolation d'une piste donnée."

msgid "Returns the number of keys in a given track."
msgstr "Renvoie le nombre de clés dans une piste donnée."

msgid "Returns the time at which the key is located."
msgstr "Renvoie le temps où est située la clé."

msgid ""
"Returns the transition curve (easing) for a specific key (see the built-in "
"math function [method @GlobalScope.ease])."
msgstr ""
"Renvoie la courbe de transition (atténuation) pour une clé spécifique (voir "
"la fonction mathématique intégrée [method @GlobalScope.ease])."

msgid "Returns the value of a given key in a given track."
msgstr "Renvoie la valeur d'une clé donnée dans une piste donnée."

msgid ""
"Gets the path of a track. For more information on the path format, see "
"[method track_set_path]."
msgstr ""
"Obtient le chemin d'une piste. Pour plus d'informations sur le format des "
"chemins, voir [method track_set_path]."

msgid "Gets the type of a track."
msgstr "Obtient le type d’une piste."

msgid "Inserts a generic key in a given track. Returns the key index."
msgstr ""
"Insère une clé générique dans une piste donnée. Renvoie l'index de la clé."

msgid ""
"Returns [code]true[/code] if the track is compressed, [code]false[/code] "
"otherwise. See also [method compress]."
msgstr ""
"Renvoie [code]true[/code] si la piste est compressée, [code]false[/code] "
"sinon. Voir aussi [method compress]."

msgid ""
"Returns [code]true[/code] if the track at index [param track_idx] is enabled."
msgstr ""
"Renvoie [code]true[/code] si la piste à l'index [param track_idx] est activée."

msgid ""
"Returns [code]true[/code] if the given track is imported. Else, return "
"[code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si la piste donnée est importée. Sinon, renvoie "
"[code]false[/code]."

msgid "Moves a track down."
msgstr "Déplace une piste vers le bas."

msgid ""
"Changes the index position of track [param track_idx] to the one defined in "
"[param to_idx]."
msgstr ""
"Change la position de l'index de la piste [param track_idx] à celle définie "
"dans [param to_idx]."

msgid "Moves a track up."
msgstr "Déplace une piste vers le haut."

msgid "Removes a key by index in a given track."
msgstr "Supprime une clé par son index dans une piste donnée."

msgid "Removes a key at [param time] in a given track."
msgstr "Supprime une clé au temps [param time] dans une piste donnée."

msgid "Enables/disables the given track. Tracks are enabled by default."
msgstr "Active/désactive la piste donnée. Les pistes sont actives par défaut."

msgid "Sets the given track as imported or not."
msgstr "Définit la piste donnée comme importée ou non."

msgid ""
"If [code]true[/code], the track at [param track_idx] wraps the interpolation "
"loop."
msgstr ""
"Si [code]true[/code], la piste d'index [param track_idx] enveloppe la boucle "
"d'interpolation."

msgid "Sets the interpolation type of a given track."
msgstr "Définit le type d'interpolation d'une piste donnée."

msgid "Sets the time of an existing key."
msgstr "Définit l’heure d’une clé existante."

msgid ""
"Sets the transition curve (easing) for a specific key (see the built-in math "
"function [method @GlobalScope.ease])."
msgstr ""
"Définit la courbe de transition (atténuation) pour une clé donnée (voir la "
"fonction mathématique intégrée [method @GlobalScope.ease])."

msgid "Sets the value of an existing key."
msgstr "Définit la valeur d'une clé."

msgid ""
"Sets the path of a track. Paths must be valid scene-tree paths to a node and "
"must be specified starting from the [member AnimationMixer.root_node] that "
"will reproduce the animation. Tracks that control properties or bones must "
"append their name after the path, separated by [code]\":\"[/code].\n"
"For example, [code]\"character/skeleton:ankle\"[/code] or [code]\"character/"
"mesh:transform/local\"[/code]."
msgstr ""
"Définit le chemin d'une piste. Les chemins doivent être des chemins de scène "
"valides vers un nœud et doivent être spécifiés à partir du nœud [member "
"AnimationMixer.root_node] qui va reproduire l'animation. Les pistes qui "
"contrôlent des propriétés ou des os doivent ajouter leur nom après le chemin, "
"séparé par [code]\":\"[/code].\n"
"Par exemple, [code]\"personnage/squelette:cheville\"[/code] ou [code]"
"\"personnage/maillage:transform/local\"[/code]."

msgid ""
"Swaps the track [param track_idx]'s index position with the track [param "
"with_idx]."
msgstr ""
"Échange la position de la piste d'index [param track_idx] avec la piste "
"d'index [param with_idx]."

msgid "Returns the update mode of a value track."
msgstr "Renvoie le mode de mise à jour d'une piste de valeur."

msgid ""
"Returns the interpolated value at the given time (in seconds). The [param "
"track_idx] must be the index of a value track.\n"
"A [param backward] mainly affects the direction of key retrieval of the track "
"with [constant UPDATE_DISCRETE] converted by [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] to match "
"the result with [method track_find_key]."
msgstr ""
"Renvoie la valeur interpolée au temps donné (en secondes). Le paramètre "
"[param track_idx] doit être l'index d'une piste de valeur.\n"
"Le paramètre [param backward] affecte principalement la direction de la "
"récupération de clé de la piste avec [constant UPDATE_DISCRETE] converti par "
"[constant AnimationMixer.ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] "
"pour correspondre au résultat de [method track_find_key]."

msgid "Sets the update mode of a value track."
msgstr "Définit le mode de mise à jour d'une piste de valeur."

msgid ""
"Returns [code]true[/code] if the capture track is included. This is a cached "
"readonly value for performance."
msgstr ""
"Renvoie [code]true[/code] si la piste de capture est incluse. C'est une "
"valeur en lecture seule mise en cache pour les performances."

msgid ""
"The total length of the animation (in seconds).\n"
"[b]Note:[/b] Length is not delimited by the last key, as this one may be "
"before or after the end to ensure correct interpolation and looping."
msgstr ""
"La longueur totale de l’animation (en secondes).\n"
"[b]Note:[/b] Longueur n’est pas délimitée par la dernière clé, car celle-ci "
"peut-être avant ou après la fin pour assurer une interpolation correcte et le "
"bouclage."

msgid ""
"Determines the behavior of both ends of the animation timeline during "
"animation playback. This indicates whether and how the animation should be "
"restarted, and is also used to correctly interpolate animation cycles."
msgstr ""
"Détermine le comportement des deux extrémités de la chronologie de "
"l'animation pendant la lecture de l'animation. Cela indique si et comment "
"l'animation doit être redemarrée, et est aussi utilisé pour avoir une "
"interpolation correcte des cycles d'animation."

msgid "The animation step value."
msgstr "La valeur de l’étape d’animation."

msgid ""
"Value tracks set values in node properties, but only those which can be "
"interpolated. For 3D position/rotation/scale, using the dedicated [constant "
"TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] and [constant TYPE_SCALE_3D] "
"track types instead of [constant TYPE_VALUE] is recommended for performance "
"reasons."
msgstr ""
"Les pistes de valeur définissent des valeurs dans les propriétés d'un nœud, "
"mais seulement celles qui peuvent être interpolées. Pour la position/rotation/"
"échelle 3D, utiliser les types de pistes [constant TYPE_POSITION_3D], "
"[constant TYPE_ROTATION_3D] et [constant TYPE_SCALE_3D] dédiés au lieu de "
"[constant TYPE_VALUE] est recommandé pour des raisons de performances."

msgid "3D position track (values are stored in [Vector3]s)."
msgstr "Piste de position 3D (les valeurs sont stockées dans des [Vector3]s)."

msgid "3D rotation track (values are stored in [Quaternion]s)."
msgstr ""
"Piste de rotation 3D (les valeurs sont stockées dans des [Quaternion]s)."

msgid "3D scale track (values are stored in [Vector3]s)."
msgstr "Piste d'échelle 3D (les valeurs sont stockées dans des [Vector3]s)."

msgid "Blend shape track."
msgstr "Piste de blend shape."

msgid "Method tracks call functions with given arguments per key."
msgstr ""
"Les pistes d'appel de méthode appellent des fonctions à arguments donnés à "
"chaque clé d'animation."

msgid ""
"Bezier tracks are used to interpolate a value using custom curves. They can "
"also be used to animate sub-properties of vectors and colors (e.g. alpha "
"value of a [Color])."
msgstr ""
"Les pistes de Bézier sont utilisées pour calculer une valeur par "
"interpolation en utilisant des courbes personnalisées. Elles peuvent "
"également être utilisées pour animer des sous-propriétés de vecteurs et de "
"couleurs (par exemple, l'opacité d'une [Color])."

msgid ""
"Audio tracks are used to play an audio stream with either type of "
"[AudioStreamPlayer]. The stream can be trimmed and previewed in the animation."
msgstr ""
"Les pistes audio sont utilisées pour lire un flux audio avec l'un ou l'autre "
"type de [AudioStreamPlayer]. Le flux peut être découpé et prévisualisé dans "
"l'animation."

msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
msgstr ""
"Les pistes d'animation jouent des animations dans d'autres nœuds "
"[AnimationPlayer]."

msgid "No interpolation (nearest value)."
msgstr "Pas d'interpolation (valeur la plus proche)."

msgid "Linear interpolation."
msgstr "Interpolation linéaire."

msgid ""
"Cubic interpolation. This looks smoother than linear interpolation, but is "
"more expensive to interpolate. Stick to [constant INTERPOLATION_LINEAR] for "
"complex 3D animations imported from external software, even if it requires "
"using a higher animation framerate in return."
msgstr ""
"Interpolation cubique. Cela donne un aspect plus lisse que l'interpolation "
"linéaire, mais est plus cher à interpoler. Restez avec [constant "
"INTERPOLATION_LINEAR] pour des animations 3D complexes importées de logiciels "
"externes, même si cela nécessite l'utilisation d'une fréquence d'images "
"d'animation plus élevé en retour."

msgid ""
"Linear interpolation with shortest path rotation.\n"
"[b]Note:[/b] The result value is always normalized and may not match the key "
"value."
msgstr ""
"Interpolation linéaire avec la rotation au chemin le plus court.\n"
"[b]Note :[/b] La valeur du résultat est toujours normalisée et peut ne pas "
"correspondre à la valeur de la clé."

msgid ""
"Cubic interpolation with shortest path rotation.\n"
"[b]Note:[/b] The result value is always normalized and may not match the key "
"value."
msgstr ""
"Interpolation cubique avec la rotation au chemin le plus court.\n"
"[b]Note :[/b] La valeur du résultat est toujours normalisée et peut ne pas "
"correspondre à la valeur de la clé."

msgid "Update between keyframes and hold the value."
msgstr "Met à jour entre les clés d'animation et conserve la valeur."

msgid "Update at the keyframes."
msgstr "Mise à jour aux images clés."

msgid ""
"Same as [constant UPDATE_CONTINUOUS] but works as a flag to capture the value "
"of the current object and perform interpolation in some methods. See also "
"[method AnimationMixer.capture], [member "
"AnimationPlayer.playback_auto_capture], and [method "
"AnimationPlayer.play_with_capture]."
msgstr ""
"Comme [constant UPDATE_CONTINUOUS], mais fonctionne comme un drapeau pour "
"capturer la valeur de l'objet courant et effectuer l'interpolation dans "
"certaines méthodes. Voir aussi [method AnimationMixer.capture], [member "
"AnimationPlayer.playback_auto_capture], et [method "
"AnimationPlayer.play_with_capture]."

msgid "At both ends of the animation, the animation will stop playing."
msgstr "Aux deux extrémités de l'animation, l'animation cessera de jouer."

msgid ""
"At both ends of the animation, the animation will be repeated without "
"changing the playback direction."
msgstr ""
"Aux deux extrémités de l'animation, l'animation sera répétée sans changer la "
"direction de lecture."

msgid "Repeats playback and reverse playback at both ends of the animation."
msgstr ""
"Répète la lecture et inverse son sens aux deux extrémités de l'animation."

msgid "This flag indicates that the animation proceeds without any looping."
msgstr "Ce drapeau indique que l'animation se produit sans aucune boucle."

msgid ""
"This flag indicates that the animation has reached the end of the animation "
"and just after loop processed."
msgstr ""
"Ce drapeau indique que l'animation a atteint la fin de l'animation et est "
"juste après le traitement de la boucle."

msgid ""
"This flag indicates that the animation has reached the start of the animation "
"and just after loop processed."
msgstr ""
"Ce drapeau indique que l'animation a atteint le début de l'animation et est "
"juste après le traitement de la boucle."

msgid "Finds the nearest time key."
msgstr "Trouve la clé avec le temps le plus proche."

msgid "Finds only the key with approximating the time."
msgstr "Trouve seulement la clé en approximant le temps."

msgid "Finds only the key with matching the time."
msgstr "Trouve seulement la clé en faisant correspondre le temps."

msgid "Container for [Animation] resources."
msgstr "Conteneur pour des ressources [Animation]."

msgid ""
"An animation library stores a set of animations accessible through "
"[StringName] keys, for use with [AnimationPlayer] nodes."
msgstr ""
"Une bibliothèque d'animation stocke un ensemble d'animations accessibles par "
"les clés [StringName], pour une utilisation avec les nœuds [AnimationPlayer]."

msgid "Animation tutorial index"
msgstr "Index de tutoriel d'animation"

msgid ""
"Adds the [param animation] to the library, accessible by the key [param name]."
msgstr ""
"Ajoute l'[param animation] à la bibliothèque, accessible par la clé [param "
"name]."

msgid ""
"Returns the [Animation] with the key [param name]. If the animation does not "
"exist, [code]null[/code] is returned and an error is logged."
msgstr ""
"Renvoie l'[Animation] avec la clé [param name]. Si l'animation n'existe pas, "
"[code]null[/code] est renvoyé est une erreur est enregistrée."

msgid "Returns the keys for the [Animation]s stored in the library."
msgstr "Renvoie les clés pour les [Animation]s stockées dans la bibliothèque."

msgid "Returns the key count for the [Animation]s stored in the library."
msgstr ""
"Renvoie le compte de clés pour les [Animation]s stockées dans la bibliothèque."

msgid ""
"Returns [code]true[/code] if the library stores an [Animation] with [param "
"name] as the key."
msgstr ""
"Renvoie [code]true[/code] si la bibliothèque stocke une [Animation] avec "
"[param name] comme clé."

msgid "Removes the [Animation] with the key [param name]."
msgstr "Supprime l'[Animation] avec la clé [param name]."

msgid ""
"Changes the key of the [Animation] associated with the key [param name] to "
"[param newname]."
msgstr ""
"Change la clé de l'[Animation] associée à la clé [param name] à [param "
"newname]."

msgid "Emitted when an [Animation] is added, under the key [param name]."
msgstr "Émis quand une [Animation] est ajoutée, avec la clé [param name]."

msgid ""
"Emitted when there's a change in one of the animations, e.g. tracks are "
"added, moved or have changed paths. [param name] is the key of the animation "
"that was changed.\n"
"See also [signal Resource.changed], which this acts as a relay for."
msgstr ""
"Émis lorsqu'il y a un changement dans l'une des animations, par ex. des "
"pistes sont ajoutées, déplacées ou ont changé de chemin. [param name] est la "
"clé de l'animation qui a été changée.\n"
"Voir aussi [signal Resource.changed], pour lequel ceci agit comme un relais."

msgid "Emitted when an [Animation] stored with the key [param name] is removed."
msgstr ""
"Émis lorsqu'une [Animation] stockée avec la clé [param name] est supprimée."

msgid ""
"Emitted when the key for an [Animation] is changed, from [param name] to "
"[param to_name]."
msgstr ""
"Émis lorsque la clé d'une [Animation] est changée, de [param name] à [param "
"to_name]."

msgid "Base class for [AnimationPlayer] and [AnimationTree]."
msgstr "Classe de base pour [AnimationPlayer] et [AnimationTree]."

msgid ""
"Base class for [AnimationPlayer] and [AnimationTree] to manage animation "
"lists. It also has general properties and methods for playback and blending.\n"
"After instantiating the playback information data within the extended class, "
"the blending is processed by the [AnimationMixer]."
msgstr ""
"Classe de base pour [AnimationPlayer] et [AnimationTree] pour gérer les "
"listes d'animation. Elle possède également des propriétés générales et des "
"méthodes de lecture et de mélange.\n"
"Après avoir instancié les données d'information de lecture dans la classe "
"étendue, le mélange est traité par [AnimationMixer]."

msgid "Migrating Animations from Godot 4.0 to 4.3"
msgstr "Migrer des animations de Godot 4.0 à 4.3"

msgid "A virtual function for processing after getting a key during playback."
msgstr ""
"Une fonction virtuelle pour le traitement après avoir obtenu une clé pendant "
"la lecture."

msgid ""
"Adds [param library] to the animation player, under the key [param name].\n"
"AnimationMixer has a global library by default with an empty string as key. "
"For adding an animation to the global library:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var global_library = mixer.get_animation_library(\"\")\n"
"global_library.add_animation(\"animation_name\", animation_resource)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Ajoute la bibliothèque [param library] au lecteur d'animation, avec la clé "
"[param name].\n"
"AnimationMixer a une bibliothèque globale par défaut avec une chaîne vide "
"comme clé. Pour ajouter une animation à la bibliothèque globale :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var biblio_globale = mixer.get_animation_library(\")\n"
"biblio_globale.add_animation(\"nom_animation\", ressource_animation)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Manually advance the animations by the specified time (in seconds)."
msgstr "Avance manuellement les animations par le temps spécifié (en secondes)."

msgid ""
"If the animation track specified by [param name] has an option [constant "
"Animation.UPDATE_CAPTURE], stores current values of the objects indicated by "
"the track path as a cache. If there is already a captured cache, the old "
"cache is discarded.\n"
"After this it will interpolate with current animation blending result during "
"the playback process for the time specified by [param duration], working like "
"a crossfade.\n"
"You can specify [param trans_type] as the curve for the interpolation. For "
"better results, it may be appropriate to specify [constant "
"Tween.TRANS_LINEAR] for cases where the first key of the track begins with a "
"non-zero value or where the key value does not change, and [constant "
"Tween.TRANS_QUAD] for cases where the key value changes linearly."
msgstr ""
"Si la piste d'animation spécifiée par [param name] a une option [constant "
"Animation.UPDATE_CAPTURE], stocke les valeurs actuelles des objets indiqués "
"par le chemin de piste en tant que cache. S'il y a déjà un cache capturé, "
"l'ancien cache est supprimé.\n"
"Après cela, elle interpolera avec le résultat de mélange d'animation actuel "
"pendant le processus de lecture pendant le temps spécifié par [param "
"duration], fonctionnant comme un fondu enchaîné.\n"
"Vous pouvez spécifier [param trans_type] pour la courbe de l'interpolation. "
"Pour de meilleurs résultats, il peut être approprié de préciser [constant "
"Tween.TRANS_LINEAR] pour les cas où la première clé de la piste commence par "
"une valeur non nulle ou où la valeur clé ne change pas, et [constant "
"Tween.TRANS_QUAD] pour les cas où la valeur clé change linéairement."

msgid ""
"[AnimationMixer] caches animated nodes. It may not notice if a node "
"disappears; [method clear_caches] forces it to update the cache again."
msgstr ""
"[AnimationMixer] met en cache des nœuds animés. Il peut ne pas remarquer si "
"un nœud disparaît, [method clear_caches] le force à mettre à jour le cache à "
"nouveau."

msgid ""
"Returns the key of [param animation] or an empty [StringName] if not found."
msgstr ""
"Renvoie la clé de [param animation] ou une chaîne [StringName] vide si elle "
"n'est pas trouvée."

msgid ""
"Returns the key for the [AnimationLibrary] that contains [param animation] or "
"an empty [StringName] if not found."
msgstr ""
"Renvoie la clé pour l'[AnimationLibrary] qui contient [param animation] ou "
"une chaîne [StringName] vide si elle n'est pas trouvée."

msgid ""
"Returns the first [AnimationLibrary] with key [param name] or [code]null[/"
"code] if not found.\n"
"To get the [AnimationMixer]'s global animation library, use "
"[code]get_animation_library(\"\")[/code]."
msgstr ""
"Renvoie la première [AnimationLibrary] avec la clé [param name] ou "
"[code]null[/code] si aucune n'est trouvée.\n"
"Pour obtenir la bibliothèque d'animation globale d'[AnimationMixer], utilisez "
"[code]get_animation_library(\")[/code]."

msgid "Returns the list of stored library keys."
msgstr "Renvoie la liste des clés de bibliothèque stockées."

msgid "Returns the list of stored animation keys."
msgstr "Renvoie la liste des clés d'animations stockées."

msgid ""
"Retrieve the blended value of the rotation tracks with the [member "
"root_motion_track] as a [Quaternion] that can be used elsewhere.\n"
"This is necessary to apply the root motion position correctly, taking "
"rotation into account. See also [method get_root_motion_position].\n"
"Also, this is useful in cases where you want to respect the initial key "
"values of the animation.\n"
"For example, if an animation with only one key [code]Quaternion(0, 0, 0, 1)[/"
"code] is played in the previous frame and then an animation with only one key "
"[code]Quaternion(0, 0.707, 0, 0.707)[/code] is played in the next frame, the "
"difference can be calculated as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_rotation_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_rotation_accumulator = "
"animation_tree.get_root_motion_rotation_accumulator()\n"
"\tvar difference = prev_root_motion_rotation_accumulator.inverse() * "
"current_root_motion_rotation_accumulator\n"
"\tprev_root_motion_rotation_accumulator = "
"current_root_motion_rotation_accumulator\n"
"\ttransform.basis *=  Basis(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"However, if the animation loops, an unintended discrete change may occur, so "
"this is only useful for some simple use cases."
msgstr ""
"Récupère la valeur du mélange des pistes de rotation avec le [member "
"root_motion_track] en tant que [Quaternion] qui peut être utilisé ailleurs.\n"
"Ceci est nécessaire pour appliquer correctement la position du mouvement "
"racine, en tenant compte de la rotation. Voir aussi [method "
"get_root_motion_position].\n"
"En outre, cela est utile dans les cas où vous voulez respecter les valeurs de "
"clés initiales de l'animation.\n"
"Par exemple, si une animation avec une seule clé [code]Quaternion(0, 0, 1)[/"
"code] est jouée dans la trame précédente, puis une animation avec une seule "
"clé [code]Quaternion(0, 0.707, 0, 0.707)[/code] est jouée dans la trame "
"suivante, la différence peut être calculée comme suit :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var accumulateur_rotation_mouvement_source_precedent\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar accumulateur_rotation_mouvement_source_actuel = "
"animation_tree.get_root_motion_rotation_accumulator()\n"
"\tvar difference = accumulateur_rotation_mouvement_source_precedent.inverse() "
"* accumulateur_rotation_mouvement_source_actuel\n"
"\taccumulateur_rotation_mouvement_source_precedent = "
"accumulateur_rotation_mouvement_source_actuel\n"
"\ttransform.basis *=  Basis(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Cependant, si l'animation boucle, un changement discret non intentionnel peut "
"se produire, donc cela n'est utile que pour certains cas d'utilisation "
"simples."

msgid ""
"Retrieve the blended value of the scale tracks with the [member "
"root_motion_track] as a [Vector3] that can be used elsewhere.\n"
"For example, if an animation with only one key [code]Vector3(1, 1, 1)[/code] "
"is played in the previous frame and then an animation with only one key "
"[code]Vector3(2, 2, 2)[/code] is played in the next frame, the difference can "
"be calculated as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_scale_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_scale_accumulator = "
"animation_tree.get_root_motion_scale_accumulator()\n"
"\tvar difference = current_root_motion_scale_accumulator - "
"prev_root_motion_scale_accumulator\n"
"\tprev_root_motion_scale_accumulator = current_root_motion_scale_accumulator\n"
"\ttransform.basis = transform.basis.scaled(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"However, if the animation loops, an unintended discrete change may occur, so "
"this is only useful for some simple use cases."
msgstr ""
"Récupère la valeur du mélange des pistes d'échelle avec le [member "
"root_motion_track] en tant que [Vector3] qui peut être utilisé ailleurs.\n"
"Par exemple, si une animation avec une seule clé [code]Vector3(1, 1, 1)[/"
"code] est jouée dans la trame précédente, puis une animation avec une seule "
"clé [code]Vector3(2, 2, 2)[/code] est jouée dans la trame suivante, la "
"différence peut être calculée comme suit :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var accumulateur_echelle_mouvement_source_precedent\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar accumulateur_echelle_mouvement_source_actuel = "
"animation_tree.get_root_motion_scale_accumulator()\n"
"\tvar difference = accumulateur_echelle_mouvement_source_actuel- "
"accumulateur_echelle_mouvement_source_precedent\n"
"\taccumulateur_echelle_mouvement_source_precedent = "
"accumulateur_echelle_mouvement_source_actuel\n"
"\ttransform.basis = transform.basis.scaled(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Cependant, si l'animation boucle, un changement discret non intentionnel peut "
"se produire, donc cela n'est utile que pour certains cas d'utilisation "
"simples."

msgid ""
"Returns [code]true[/code] if the [AnimationMixer] stores an [Animation] with "
"key [param name]."
msgstr ""
"Renvoie [code]true[/code] si l'[AnimationMixer] stocke une [Animation] avec "
"la clé [param name]."

msgid ""
"Returns [code]true[/code] if the [AnimationMixer] stores an "
"[AnimationLibrary] with key [param name]."
msgstr ""
"Renvoie [code]true[/code] si l'[AnimationMixer] stocke une [AnimationLibrary] "
"avec la clé [param name]."

msgid "Removes the [AnimationLibrary] associated with the key [param name]."
msgstr "Retire la [AnimationLibrary] associée à la clé [param name]."

msgid ""
"Moves the [AnimationLibrary] associated with the key [param name] to the key "
"[param newname]."
msgstr ""
"Déplace le [AnimationLibrary] associée à la clé [param name] vers la clé "
"[param newname]."

msgid "If [code]true[/code], the [AnimationMixer] will be processing."
msgstr "Si [code]true[/code], l’[AnimationMixer] fera le traitement."

msgid ""
"The number of possible simultaneous sounds for each of the assigned "
"AudioStreamPlayers.\n"
"For example, if this value is [code]32[/code] and the animation has two audio "
"tracks, the two [AudioStreamPlayer]s assigned can play simultaneously up to "
"[code]32[/code] voices each."
msgstr ""
"Le nombre de sons simultanés possibles pour chacun des AudioStreamPlayers "
"assignés.\n"
"Par exemple, si cette valeur est [code]32[/code] et que l'animation a deux "
"pistes audio, les deux [AudioStreamPlayer]s assignés peuvent jouer "
"simultanément jusqu'à [code]32[/code] voix chacun."

msgid "The call mode used for \"Call Method\" tracks."
msgstr "Le mode d'appel utilisé pour les pistes \"Appel de méthode\"."

msgid "The process notification in which to update animations."
msgstr ""
"La notification de processus dans laquelle mettre à jour les animations."

msgid ""
"If [code]true[/code], the blending uses the deterministic algorithm. The "
"total weight is not normalized and the result is accumulated with an initial "
"value ([code]0[/code] or a [code]\"RESET\"[/code] animation if present).\n"
"This means that if the total amount of blending is [code]0.0[/code], the "
"result is equal to the [code]\"RESET\"[/code] animation.\n"
"If the number of tracks between the blended animations is different, the "
"animation with the missing track is treated as if it had the initial value.\n"
"If [code]false[/code], The blend does not use the deterministic algorithm. "
"The total weight is normalized and always [code]1.0[/code]. If the number of "
"tracks between the blended animations is different, nothing is done about the "
"animation that is missing a track.\n"
"[b]Note:[/b] In [AnimationTree], the blending with [AnimationNodeAdd2], "
"[AnimationNodeAdd3], [AnimationNodeSub2] or the weight greater than "
"[code]1.0[/code] may produce unexpected results.\n"
"For example, if [AnimationNodeAdd2] blends two nodes with the amount "
"[code]1.0[/code], then total weight is [code]2.0[/code] but it will be "
"normalized to make the total amount [code]1.0[/code] and the result will be "
"equal to [AnimationNodeBlend2] with the amount [code]0.5[/code]."
msgstr ""
"Si [code]true[/code], le mélange utilise l'algorithme déterministe. Le poids "
"total n'est pas normalisé et le résultat est accumulé avec une valeur "
"initiale ([code]0[/code] ou une animation [code]\"RESET\"[/code] si elle est "
"présente).\n"
"Cela signifie que si la quantité totale du mélange est de [code]0.0[/code], "
"le résultat est égal à l'animation [code]\"RESET\"[/code].\n"
"Si le nombre de pistes entre les animations mélangées est différent, "
"l'animation avec la piste manquante est traitée comme si elle avait la valeur "
"initiale.\n"
"Si [code]false[/code], Le mélange n'utilise pas l'algorithme déterministe. Le "
"poids total est normalisé et vaut toujours [code]1.0[/code]. Si le nombre de "
"pistes entre les animations mélangées est différent, rien n'est fait pour "
"l'animation à laquelle il manque une piste.\n"
"[b]Note :[/b] Dans [AnimationTree], le mélange avec [AnimationNodeAdd2], "
"[AnimationNodeAdd3], [AnimationNodeSub2] ou un poids supérieur à [code]1.0[/"
"code] peut produire des résultats inattendus.\n"
"Par exemple, si [AnimationNodeAdd2] mélange deux nœuds avec la quantité "
"[code]1.0[/code], alors le poids total est de [code]2.0[/code] mais il sera "
"normalisé pour rendre le montant total égal à [code]1.0[/code] et le résultat "
"sera égal à [AnimationNodeBlend2] avec la quantité [code]0.5[/code]."

msgid ""
"This is used by the editor. If set to [code]true[/code], the scene will be "
"saved with the effects of the reset animation (the animation with the key "
"[code]\"RESET\"[/code]) applied as if it had been seeked to time 0, with the "
"editor keeping the values that the scene had before saving.\n"
"This makes it more convenient to preview and edit animations in the editor, "
"as changes to the scene will not be saved as long as they are set in the "
"reset animation."
msgstr ""
"Ceci est utilisé par l'éditeur. Si défini à [code]true[/code], la scène sera "
"sauvegardée avec les effets de l'animation de réinitialisation (l'animation "
"avec la clé [code]\"RESET\"[/code]) appliqués comme si elle avait été "
"positionnée au temps 0, avec l'éditeur gardant les valeurs que la scène avait "
"avant la sauvegarde.\n"
"Cela rend plus commode la prévisualisation et la modification des animations "
"dans l'éditeur, car les modifications de la scène ne seront pas sauvegardées "
"tant qu'elles sont définies dans l'animation de réinitialisation."

msgid ""
"The path to the Animation track used for root motion. Paths must be valid "
"scene-tree paths to a node, and must be specified starting from the parent "
"node of the node that will reproduce the animation. The [member "
"root_motion_track] uses the same format as [method Animation.track_set_path], "
"but note that a bone must be specified.\n"
"If the track has type [constant Animation.TYPE_POSITION_3D], [constant "
"Animation.TYPE_ROTATION_3D], or [constant Animation.TYPE_SCALE_3D] the "
"transformation will be canceled visually, and the animation will appear to "
"stay in place. See also [method get_root_motion_position], [method "
"get_root_motion_rotation], [method get_root_motion_scale], and "
"[RootMotionView]."
msgstr ""
"Le chemin vers la piste d'animation utilisée pour le mouvement racine. Les "
"chemins doivent être des chemins d’arborescence de scène valides vers un "
"nœud, et doivent être spécifiés à partir du nœud parent du nœud qui va "
"reproduire l'animation. La piste du mouvement racine [member "
"root_motion_track] utilise le même format que [method "
"Animation.track_set_path], mais notez qu'un os doit être spécifié.\n"
"Si la piste est du type [constant Animation.TYPE_POSITION_3D], [constant "
"Animation.TYPE_ROTATION_3D], ou [constant Animation.TYPE_SCALE_3D] la "
"transformation sera annulée visuellement, et l'animation semblera rester sur "
"place. Voir aussi [method get_root_motion_position], [method "
"get_root_motion_rotation], [method get_root_motion_scale], et "
"[RootMotionView]."

msgid "The node which node path references will travel from."
msgstr ""
"Le nœud à partir duquel les références de chemin de nœud vont commencer."

msgid ""
"Notifies when an animation finished playing.\n"
"[b]Note:[/b] This signal is not emitted if an animation is looping."
msgstr ""
"Notifie quand une animation a fini de jouer.\n"
"[b]Note :[/b] Ce signal n'est pas émis si une animation boucle."

msgid "Notifies when the animation libraries have changed."
msgstr "Notifie quand les bibliothèques d'animation ont changé."

msgid "Notifies when an animation list is changed."
msgstr "Notifie quand une liste d'animation est changée."

msgid ""
"Notifies when an animation starts playing.\n"
"[b]Note:[/b] This signal is not emitted if an animation is looping."
msgstr ""
"Notifie quand une animation commence à jouer.\n"
"[b]Note :[/b] Ce signal n'est pas émis si une animation boucle."

msgid ""
"Notifies when the caches have been cleared, either automatically, or manually "
"via [method clear_caches]."
msgstr ""
"Notifie quand les caches ont été effacées, soit automatiquement ou soit "
"manuellement par [method clear_caches]."

msgid ""
"Notifies when the blending result related have been applied to the target "
"objects."
msgstr "Notifie quand le résultat de mélange a été appliqué aux objets cibles."

msgid "Notifies when the property related process have been updated."
msgstr "Notifie quand une propriété liée au traitement a été mise à jour."

msgid ""
"Process animation during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS]). This is especially useful when "
"animating physics bodies."
msgstr ""
"Traite l'animation pendant les trames de physique (voir [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS]). Ceci est particulièrement utile "
"lors de l'animation de corps physiques."

msgid ""
"Process animation during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Traite l'animation pendant les trames de traitement (voir [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Do not process animation. Use [method advance] to process the animation "
"manually."
msgstr ""
"Ne met à jour l'animation. Utilisez [method advance] pour mettre à jour "
"l'animation manuellement."

msgid ""
"Batch method calls during the animation process, then do the calls after "
"events are processed. This avoids bugs involving deleting nodes or modifying "
"the AnimationPlayer while playing."
msgstr ""
"Regroupe les appels de méthodes durant le processus d'animation, puis "
"effectue les appels après que les évènements ont été traités. Cela évite des "
"bugs impliquant la suppression de nœuds ou la modification de "
"l'AnimationPlayer durant la lecture."

msgid "Make method calls immediately when reached in the animation."
msgstr ""
"Appelle la méthode aussitôt qu'elle est précisée lors de la lecture de "
"l'animation."

msgid ""
"An [constant Animation.UPDATE_DISCRETE] track value takes precedence when "
"blending [constant Animation.UPDATE_CONTINUOUS] or [constant "
"Animation.UPDATE_CAPTURE] track values and [constant "
"Animation.UPDATE_DISCRETE] track values."
msgstr ""
"Une valeur de piste [constant Animation.UPDATE_DISCRETE] a la priorité lors "
"du mélange avec des valeurs de piste [constant Animation.UPDATE_CONTINUOUS] "
"ou [constant Animation.UPDATE_CAPTURE] et une valeur de piste [constant "
"Animation.UPDATE_DISCRETE]."

msgid ""
"An [constant Animation.UPDATE_CONTINUOUS] or [constant "
"Animation.UPDATE_CAPTURE] track value takes precedence when blending the "
"[constant Animation.UPDATE_CONTINUOUS] or [constant Animation.UPDATE_CAPTURE] "
"track values and the [constant Animation.UPDATE_DISCRETE] track values. This "
"is the default behavior for [AnimationPlayer]."
msgstr ""
"Une valeur de piste [constant Animation.UPDATE_CONTINUOUS] ou [constant "
"Animation.UPDATE_CAPTURE] a la priorité lors du mélange avec des valeurs de "
"piste [constant Animation.UPDATE_CONTINUOUS] ou [constant "
"Animation.UPDATE_CAPTURE] et une valeur de piste [constant "
"Animation.UPDATE_DISCRETE]. C'est le comportement par défaut "
"d'[AnimationPlayer]."

msgid ""
"Always treat the [constant Animation.UPDATE_DISCRETE] track value as "
"[constant Animation.UPDATE_CONTINUOUS] with [constant "
"Animation.INTERPOLATION_NEAREST]. This is the default behavior for "
"[AnimationTree].\n"
"If a value track has un-interpolatable type key values, it is internally "
"converted to use [constant ANIMATION_CALLBACK_MODE_DISCRETE_RECESSIVE] with "
"[constant Animation.UPDATE_DISCRETE].\n"
"Un-interpolatable type list:\n"
"- [constant @GlobalScope.TYPE_NIL]\n"
"- [constant @GlobalScope.TYPE_NODE_PATH]\n"
"- [constant @GlobalScope.TYPE_RID]\n"
"- [constant @GlobalScope.TYPE_OBJECT]\n"
"- [constant @GlobalScope.TYPE_CALLABLE]\n"
"- [constant @GlobalScope.TYPE_SIGNAL]\n"
"- [constant @GlobalScope.TYPE_DICTIONARY]\n"
"- [constant @GlobalScope.TYPE_PACKED_BYTE_ARRAY]\n"
"[constant @GlobalScope.TYPE_BOOL] and [constant @GlobalScope.TYPE_INT] are "
"treated as [constant @GlobalScope.TYPE_FLOAT] during blending and rounded "
"when the result is retrieved.\n"
"It is same for arrays and vectors with them such as [constant "
"@GlobalScope.TYPE_PACKED_INT32_ARRAY] or [constant "
"@GlobalScope.TYPE_VECTOR2I], they are treated as [constant "
"@GlobalScope.TYPE_PACKED_FLOAT32_ARRAY] or [constant "
"@GlobalScope.TYPE_VECTOR2]. Also note that for arrays, the size is also "
"interpolated.\n"
"[constant @GlobalScope.TYPE_STRING] and [constant "
"@GlobalScope.TYPE_STRING_NAME] are interpolated between character codes and "
"lengths, but note that there is a difference in algorithm between "
"interpolation between keys and interpolation by blending."
msgstr ""
"Toujours traiter la valeur de piste [constant Animation.UPDATE_DISCRETE] "
"comme [constant Animation.UPDATE_CONTINUOUS] avec [constant "
"Animation.INTERPOLATION_NEAREST]. C'est le comportement par défaut "
"d'[AnimationTree].\n"
"Si une piste de valeur a des valeurs clés d'un type non-interpolable, elle "
"est convertie en interne pour utiliser [constant "
"ANIMATION_CALLBACK_MODE_DISCRETE_RECESSIVE] avec [constant "
"Animation.UPDATE_DISCRETE].\n"
"Liste des types non-interpolables :\n"
"- [constant @GlobalScope.TYPE_NIL]\n"
"- [constant @GlobalScope.TYPE_NODE_PATH]\n"
"- [constant @GlobalScope.TYPE_RID]\n"
"- [constant @GlobalScope.TYPE_OBJECT]\n"
"- [constant @GlobalScope.TYPE_CALLABLE]\n"
"- [constant @GlobalScope.TYPE_SIGNAL]\n"
"- [constant @GlobalScope.TYPE_DICTIONARY]\n"
"- [constant @GlobalScope.TYPE_PACKED_BYTE_ARRAY]\n"
"[constant @GlobalScope.TYPE_BOOL] et [constant @GlobalScope.TYPE_INT] sont "
"traités comme [constant @GlobalScope.TYPE_FLOAT] pendant le mélange et "
"arrondis lorsque le résultat est récupéré.\n"
"Il en va de même pour les tableaux et les vecteurs avec eux tels que "
"[constant @GlobalScope.TYPE_PACKED_INT32_ARRAY] ou [constant "
"@GlobalScope.TYPE_VECTOR2I], ils sont traités comme [constant "
"@GlobalScope.TYPE_PACKED_FLOAT32_ARRAY] ou [constant "
"@GlobalScope.TYPE_VECTOR2]. Notez également que pour les tableaux, la taille "
"est également interpolée.\n"
"[constant @GlobalScope.TYPE_STRING] et [constant "
"@GlobalScope.TYPE_STRING_NAME] sont interpolés entre les codes de caractères "
"et les longueurs, mais notez qu'il y a une différence d'algorithme entre "
"l'interpolation par clé et l'interpolation par mélange."

msgid "Base class for [AnimationTree] nodes. Not related to scene nodes."
msgstr ""
"Classe de base pour les nœuds [AnimationTree]. Non lié aux nœuds de scène."

msgid ""
"Base resource for [AnimationTree] nodes. In general, it's not used directly, "
"but you can create custom ones with custom blending formulas.\n"
"Inherit this when creating animation nodes mainly for use in "
"[AnimationNodeBlendTree], otherwise [AnimationRootNode] should be used "
"instead.\n"
"You can access the time information as read-only parameter which is processed "
"and stored in the previous frame for all nodes except [AnimationNodeOutput].\n"
"[b]Note:[/b] If multiple inputs exist in the [AnimationNode], which time "
"information takes precedence depends on the type of [AnimationNode].\n"
"[codeblock]\n"
"var current_length = $AnimationTree[\"parameters/AnimationNodeName/"
"current_length\"]\n"
"var current_position = $AnimationTree[\"parameters/AnimationNodeName/"
"current_position\"]\n"
"var current_delta = $AnimationTree[\"parameters/AnimationNodeName/"
"current_delta\"]\n"
"[/codeblock]"
msgstr ""
"Ressources de base pour les nœuds [AnimationTree]. En général, ce n'est pas "
"utilisé directement, mais vous pouvez créer des formules de mélange "
"personnalisées.\n"
"Héritez de ceci lors de la création de nœuds d'animation, principalement pour "
"utiliser dans [AnimationNodeBlendTree], sinon [AnimationRootNode] devrait "
"être utilisé à la place.\n"
"Vous pouvez accéder à l'information de temps comme paramètre en lecture-seule "
"qui est traité et stocké dans la trame précédente pour tous les nœuds sauf "
"[AnimationNodeOutput].\n"
"[b]Note :[/b] Si plusieurs entrées existent dans l'[AnimationNode], quelle "
"information de temps a la priorité dépend du type d'[AnimationNode].\n"
"[codeblock]\n"
"var longueur_actuelle = $AnimationTree[\"parameters/AnimationNodeName/"
"current_length\"]\n"
"var position_actuelle = $AnimationTree[\"parameters/AnimationNodeName/"
"current_position\"]\n"
"var delta_actuel = $AnimationTree[\"parameters/AnimationNodeName/"
"current_delta\"]\n"
"[/codeblock]"

msgid "Using AnimationTree"
msgstr "Utiliser les AnimationTree"

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"override the text caption for this animation node."
msgstr ""
"Lors de l'héritage d'[AnimationRootNode], implémentez cette méthode virtuelle "
"pour remplacer la légende de texte pour ce nœud d'animation."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return a child animation node by its [param name]."
msgstr ""
"Lorsque vous héritez d’[AnimationRootNode], implémentez cette méthode "
"virtuelle pour renvoyer un nœud d’animation enfant par son nom [param name]."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return all child animation nodes in order as a [code]name: node[/code] "
"dictionary."
msgstr ""
"Lorsque vous héritez d’[AnimationRootNode], implémentez cette méthode "
"virtuelle pour renvoyer tous les nœuds d’animation enfants en tant que "
"dictionnaire [code]nom : nœud[/code]."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return the default value of a [param parameter]. Parameters are custom local "
"memory used for your animation nodes, given a resource can be reused in "
"multiple trees."
msgstr ""
"Lorsque vous héritez d’[AnimationRootNode], implémentez cette méthode "
"virtuelle pour obtenir la valeur par défaut d'un paramètre [param parameter]. "
"Les paramètres sont de la mémoire locale personnalisée utilisée pour vos "
"nœuds d’animation, étant donné qu'une ressource peut être réutilisée dans "
"plusieurs arbres."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return a list of the properties on this animation node. Parameters are custom "
"local memory used for your animation nodes, given a resource can be reused in "
"multiple trees. Format is similar to [method Object.get_property_list]."
msgstr ""
"Lors de l'héritage d'[AnimationRootNode], implémentez cette méthode virtuelle "
"pour renvoyer une liste des propriétés de ce nœud d'animation. Les paramètres "
"sont la mémoire locale personnalisée utilisée pour vos nœuds d'animation, "
"étant donné qu'une ressource peut être réutilisée dans plusieurs arbres. Le "
"format est similaire à [method Object.get_property_list]."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return whether the blend tree editor should display filter editing on this "
"animation node."
msgstr ""
"Lors de l'héritage d'[AnimationRootNode], implémentez cette méthode virtuelle "
"pour renvoyer si l'éditeur d'arbre de mélange devrait afficher l'édition de "
"filtre sur ce nœud d'animation."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return whether the [param parameter] is read-only. Parameters are custom "
"local memory used for your animation nodes, given a resource can be reused in "
"multiple trees."
msgstr ""
"Lors de l'héritage d'[AnimationRootNode], implémentez cette méthode virtuelle "
"pour renvoyer une liste des propriétés de ce nœud d'animation. Les paramètres "
"sont la mémoire locale personnalisée utilisée pour vos nœuds d'animation, "
"étant donné qu'une ressource peut être réutilisée dans plusieurs arbres."

msgid ""
"Currently this is mostly useless as there is a lack of many APIs to extend "
"AnimationNode by GDScript. It is planned that a more flexible API using "
"structures will be provided in the future."
msgstr ""
"Actuellement c'est surtout inutile car il y a un manque de nombreuses API "
"pour étendre AnimationNode par GDScript. Il est prévu qu'une API plus "
"flexible utilisant des structures sera fournie à l'avenir."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"run some code when this animation node is processed. The [param time] "
"parameter is a relative delta, unless [param seek] is [code]true[/code], in "
"which case it is absolute.\n"
"Here, call the [method blend_input], [method blend_node] or [method "
"blend_animation] functions. You can also use [method get_parameter] and "
"[method set_parameter] to modify local memory.\n"
"This function should return the delta."
msgstr ""
"Lorsque vous héritez d'[AnimationRootNode], implémentez cette méthode "
"virtuelle pour exécuter un code lorsque ce nœud d'animation est traité. Le "
"paramètre [param time] est un delta relatif, sauf si [param seek] vaut "
"[code]true[/code], auquel cas il est absolu.\n"
"Ici, appelez les fonctions [method blend_input], [method blend_node] ou "
"[method blend_animation]. Vous pouvez également utiliser [method "
"get_parameter] et [method set_parameter] pour modifier la mémoire locale.\n"
"Cette fonction devrait renvoyer le delta."

msgid ""
"Adds an input to the animation node. This is only useful for animation nodes "
"created for use in an [AnimationNodeBlendTree]. If the addition fails, "
"returns [code]false[/code]."
msgstr ""
"Ajoute une entrée au nœud d'animation. Ce n'est utile que pour les nœuds "
"d'animation créés pour une utilisation dans un [AnimationNodeBlendTree]. Si "
"l'ajout échoue, renvoie [code]false[/code]."

msgid ""
"Blends an animation by [param blend] amount (name must be valid in the linked "
"[AnimationPlayer]). A [param time] and [param delta] may be passed, as well "
"as whether [param seeked] happened.\n"
"A [param looped_flag] is used by internal processing immediately after the "
"loop."
msgstr ""
"Mélange une animation par une quantité [param blend] (le nom doit être valide "
"dans l'[AnimationPlayer] lié). Un temps [param time] et un [param delta] "
"peuvent être passés, ainsi que si un positionnement [param seeked] est "
"arrivé.\n"
"Un [param looped_flag] est utilisé par traitement interne immédiatement après "
"la boucle."

msgid ""
"Blends an input. This is only useful for animation nodes created for an "
"[AnimationNodeBlendTree]. The [param time] parameter is a relative delta, "
"unless [param seek] is [code]true[/code], in which case it is absolute. A "
"filter mode may be optionally passed."
msgstr ""
"Mélange une entrée. Ceci est uniquement utile pour les nœuds créés pour un "
"[AnimationNodeBlendTree]. Le paramètre de temps [param time] est un delta "
"relatif, sauf si [param seek] vaut [code]true[/code], auquel cas il est "
"absolu. Un mode de filtre peut être passé facultativement."

msgid ""
"Blend another animation node (in case this animation node contains child "
"animation nodes). This function is only useful if you inherit from "
"[AnimationRootNode] instead, otherwise editors will not display your "
"animation node for addition."
msgstr ""
"Mélange un autre nœud d'animation (au cas où ce nœud contiendrait des nœuds "
"d'animation enfants). Cette fonction n'est utile qu'en héritant d'abord "
"d'[AnimationRootNode], sinon les éditeurs n'afficheront pas votre nœud "
"d'animation pour ajout."

msgid ""
"Returns the input index which corresponds to [param name]. If not found, "
"returns [code]-1[/code]."
msgstr ""
"Renvoie l'index d'entrée qui correspond à [param name]. Si elle n'est pas "
"trouvée, renvoie [code]-1[/code]."

msgid ""
"Amount of inputs in this animation node, only useful for animation nodes that "
"go into [AnimationNodeBlendTree]."
msgstr ""
"La quantité d'entrées dans ce nœud d'animation, utile uniquement pour les "
"nœuds d'animation qui vont dans un [AnimationNodeBlendTree]."

msgid "Gets the name of an input by index."
msgstr "Obtient le nom d'un entrée par son index."

msgid ""
"Gets the value of a parameter. Parameters are custom local memory used for "
"your animation nodes, given a resource can be reused in multiple trees."
msgstr ""
"Obtient la valeur d'un paramètre. Les paramètres sont la mémoire locale "
"personnalisée utilisée pour vos nœuds d'animation, étant donné qu'une "
"ressource peut être réutilisée dans plusieurs arbres."

msgid ""
"Returns the object id of the [AnimationTree] that owns this node.\n"
"[b]Note:[/b] This method should only be called from within the [method "
"AnimationNodeExtension._process_animation_node] method, and will return an "
"invalid id otherwise."
msgstr ""
"Renvoie l'id d'objet de l'[AnimationTree] qui possède ce nœud.\n"
"[b]Note :[/b] Cette méthode ne doit être appelée qu'à partir de la méthode "
"[method AnimationNodeExtension._process_animation_node] et renverra un id "
"invalide autrement."

msgid "Returns [code]true[/code] if the given path is filtered."
msgstr "Renvoie [code]true[/code] si le chemin donné est filtré."

msgid ""
"Returns [code]true[/code] if this animation node is being processed in test-"
"only mode."
msgstr ""
"Renvoie [code]true[/code] si ce nœud d'animation est en cours de traitement "
"en mode test seulement."

msgid "Removes an input, call this only when inactive."
msgstr "Supprime une entrée, à n'appeler que si le nœud est inactif."

msgid "Adds or removes a path for the filter."
msgstr "Ajoute ou supprime un chemin pour le filtre."

msgid ""
"Sets the name of the input at the given [param input] index. If the setting "
"fails, returns [code]false[/code]."
msgstr ""
"Définit le nom de l'entrée à l'index [param input] donné. Si le réglage "
"échoue, renvoie [code]false[/code]."

msgid ""
"Sets a custom parameter. These are used as local memory, because resources "
"can be reused across the tree or scenes."
msgstr ""
"Définit un paramètre personnalisé. Utilisé comme stockage local, car les "
"ressources peuvent être réutilisées à travers l'arbre ou les différentes "
"scènes."

msgid "If [code]true[/code], filtering is enabled."
msgstr "Si [code]true[/code], le filtrage est activé."

msgid ""
"Emitted by nodes that inherit from this class and that have an internal tree "
"when one of their animation nodes removes. The animation nodes that emit this "
"signal are [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], and [AnimationNodeBlendTree]."
msgstr ""
"Émis par les nœuds qui héritent de cette classe et qui ont un arbre interne "
"lorsque l'un de leurs nœuds d'animation est supprimé. Les nœuds d'animation "
"qui émettent ce signal sont [AnimationNodeBlendSpace1D], "
"[AnimationNodeBlendSpace2D], [AnimationNodeStateMachine], et "
"[AnimationNodeBlendTree]."

msgid ""
"Emitted by nodes that inherit from this class and that have an internal tree "
"when one of their animation node names changes. The animation nodes that emit "
"this signal are [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], and [AnimationNodeBlendTree]."
msgstr ""
"Émis par les nœuds qui héritent de cette classe et ayant un arbre interne "
"quand un de leurs noms de nœud d’animation change. Les nœuds émettant ce "
"signal sont des [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], et [AnimationNodeBlendTree]."

msgid ""
"Emitted by nodes that inherit from this class and that have an internal tree "
"when one of their animation nodes changes. The animation nodes that emit this "
"signal are [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], [AnimationNodeBlendTree] and "
"[AnimationNodeTransition]."
msgstr ""
"Émis par les nœuds qui héritent de cette classe et qui ont un arbre interne "
"lorsque l'un de leurs nœuds d'animation change. Les nœuds d'animation qui "
"émettent ce signal sont [AnimationNodeBlendSpace1D], "
"[AnimationNodeBlendSpace2D], [AnimationNodeStateMachine], "
"[AnimationNodeBlendTree] et [AnimationNodeTransition]."

msgid "Do not use filtering."
msgstr "Ne pas utiliser de filtrage."

msgid "Paths matching the filter will be allowed to pass."
msgstr "Les chemins passant le filtre seront autorisés."

msgid "Paths matching the filter will be discarded."
msgstr "Les chemins passant le filtre seront rejetés."

msgid "Paths matching the filter will be blended (by the blend value)."
msgstr "Les chemins passant le filtre seront mélangés (par la valeur de blend)."

msgid "Blends two animations additively inside of an [AnimationNodeBlendTree]."
msgstr ""
"Mélange deux animations additivement à l'intérieur d'un "
"[AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"additively based on the amount value.\n"
"If the amount is greater than [code]1.0[/code], the animation connected to "
"\"in\" port is blended with the amplified animation connected to \"add\" "
"port.\n"
"If the amount is less than [code]0.0[/code], the animation connected to "
"\"in\" port is blended with the inverted animation connected to \"add\" port."
msgstr ""
"Une ressource à ajouter à un [AnimationNodeBlendTree]. Mélange deux "
"animations de manière additive selon la quantité de valeur.\n"
"Si le montant est supérieur à [code]1.0[/code], l'animation connectée au port "
"\"in\" est mélangée avec l'animation amplifiée connectée au port \"add\".\n"
"Si le montant est inférieur à [code]0.0[/code], l'animation connectée au port "
"\"in\" est mélangée avec l'animation inversée connectée au port \"add\"."

msgid ""
"Blends two of three animations additively inside of an "
"[AnimationNodeBlendTree]."
msgstr ""
"Mélange deux des trois animations de manière additive à l'intérieur d'un "
"[AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations out "
"of three additively out of three based on the amount value.\n"
"This animation node has three inputs:\n"
"- The base animation to add to\n"
"- A \"-add\" animation to blend with when the blend amount is negative\n"
"- A \"+add\" animation to blend with when the blend amount is positive\n"
"If the absolute value of the amount is greater than [code]1.0[/code], the "
"animation connected to \"in\" port is blended with the amplified animation "
"connected to \"-add\"/\"+add\" port."
msgstr ""
"Une ressource à ajouter à un [AnimationNodeBlendTree]. Mélange deux "
"animations sur 3 ensemble de manière additive selon la quantité de valeur.\n"
"Ce nœud comporte trois entrées :\n"
"- L'animation de base sur laquelle ajouter\n"
"- L'animation \"-add\" à mélanger quand la valeur de mélange est négative\n"
"- L'animation \"+add\" à mélanger quand la valeur de mélange est positive\n"
"Si la valeur absolue du montant est supérieur à [code]1.0[/code], l'animation "
"connectée au port \"in\" est mélangée avec l'animation amplifiée connectée au "
"port \"-add\"/\"+add\"."

msgid "An input animation for an [AnimationNodeBlendTree]."
msgstr "Une animation d'entrée pour un [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Only has one output port "
"using the [member animation] property. Used as an input for [AnimationNode]s "
"that blend animations together."
msgstr ""
"Une ressource à ajouter à un [AnimationNodeBlendTree]. Possède seulement un "
"port de sortie utilisant la propriété [member animation]. Utilisé comme "
"entrée pour les [AnimationNode]s qui mélangent des animations ensemble."

msgid "3D Platformer Demo"
msgstr "Démo de jeu de plateforme en 3D"

msgid ""
"If [code]true[/code], on receiving a request to play an animation from the "
"start, the first frame is not drawn, but only processed, and playback starts "
"from the next frame.\n"
"See also the notes of [method AnimationPlayer.play]."
msgstr ""
"Si [code]true[/code], à la réception d'une demande de lecture d'une animation "
"depuis le début, la première trame n'est pas dessiné, mais seulement traitée, "
"et la lecture commence à partir de la prochaine trame.\n"
"Voir aussi les notes de [method AnimationPlayer.play]."

msgid ""
"Animation to use as an output. It is one of the animations provided by "
"[member AnimationTree.anim_player]."
msgstr ""
"L'animation à utiliser comme sortie. C'est l'une des animations fournies par "
"[member AnimationTree.anim_player]."

msgid ""
"If [member use_custom_timeline] is [code]true[/code], override the loop "
"settings of the original [Animation] resource with the value.\n"
"[b]Note:[/b] If the [member Animation.loop_mode] isn't set to looping, the "
"[method Animation.track_set_interpolation_loop_wrap] option will not be "
"respected. If you cannot get the expected behavior, consider duplicating the "
"[Animation] resource and changing the loop settings."
msgstr ""
"Si [member use_custom_timeline] vaut [code]true[/code], redéfinit les "
"paramètres de boucle de la ressource [Animation] originale par la valeur.\n"
"[b]Note :[/b] Si l'option [member Animation.loop_mode] n'est pas activée pour "
"boucler, l'option [method Animation.track_set_interpolation_loop_wrap] ne "
"sera pas respectée. Si vous ne pouvez pas obtenir le comportement attendu, "
"envisagez de doubler la ressource [Animation] et de modifier les paramètres "
"de boucle."

msgid "Determines the playback direction of the animation."
msgstr "Détermine la direction de lecture de l'animation."

msgid ""
"If [member use_custom_timeline] is [code]true[/code], offset the start "
"position of the animation.\n"
"This is useful for adjusting which foot steps first in 3D walking animations."
msgstr ""
"Si [member use_custom_timeline] vaut [code]true[/code], décale la position de "
"démarrage de l'animation.\n"
"Ceci est utile pour ajuster quel pied marche en premier dans les animations "
"de marche en 3D."

msgid ""
"If [code]true[/code], scales the time so that the length specified in [member "
"timeline_length] is one cycle.\n"
"This is useful for matching the periods of walking and running animations.\n"
"If [code]false[/code], the original animation length is respected. If you set "
"the loop to [member loop_mode], the animation will loop in [member "
"timeline_length]."
msgstr ""
"Si [code]true[/code], redimensionne le temps de sorte que la longueur "
"spécifiée dans [member timeline_length] soit d'un cycle.\n"
"Ceci est utile pour faire correspondre les périodes des animations de marche "
"et de course.\n"
"Si [code]false[/code], la longueur d'animation originale est respectée. Si "
"vous définissez la boucle à [member loop_mode], l'animation bouclera en "
"[member timeline_length] secondes."

msgid ""
"If [member use_custom_timeline] is [code]true[/code], offset the start "
"position of the animation."
msgstr ""
"Si [member use_custom_timeline] vaut [code]true[/code], décale la position de "
"démarrage de l'animation."

msgid ""
"If [code]true[/code], [AnimationNode] provides an animation based on the "
"[Animation] resource with some parameters adjusted."
msgstr ""
"Si [code]true[/code], [AnimationNode] fournit une animation basée sur la "
"ressource [Animation] avec quelques paramètres ajustés."

msgid "Plays animation in forward direction."
msgstr "Joue l'animation en sens avant."

msgid "Plays animation in backward direction."
msgstr "Joue l'animation en sens inverse."

msgid "Blends two animations linearly inside of an [AnimationNodeBlendTree]."
msgstr ""
"Mélange deux animations de façon linéaire à l'intérieur d'un "
"[AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"linearly based on the amount value.\n"
"In general, the blend value should be in the [code][0.0, 1.0][/code] range. "
"Values outside of this range can blend amplified or inverted animations, "
"however, [AnimationNodeAdd2] works better for this purpose."
msgstr ""
"Une ressource pour ajouter à un [AnimationNodeBlendTree]. Mélange deux "
"animations linéairement selon la valeur de la quantité.\n"
"En général, la valeur du mélange devrait être dans l'intervalle [code][0.0, "
"1.0][/code]. Les valeurs en dehors de cette plage peuvent mélanger des "
"animations amplifiées ou inversées, cependant, [AnimationNodeAdd2] fonctionne "
"mieux à cette fin."

msgid ""
"Blends two of three animations linearly inside of an [AnimationNodeBlendTree]."
msgstr ""
"Mélange deux des trois animations de façon linéaire à l'intérieur d'un "
"[AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations out "
"of three linearly out of three based on the amount value.\n"
"This animation node has three inputs:\n"
"- The base animation to blend with\n"
"- A \"-blend\" animation to blend with when the blend amount is negative "
"value\n"
"- A \"+blend\" animation to blend with when the blend amount is positive "
"value\n"
"In general, the blend value should be in the [code][-1.0, 1.0][/code] range. "
"Values outside of this range can blend amplified animations, however, "
"[AnimationNodeAdd3] works better for this purpose."
msgstr ""
"Une ressource à ajouter à un [AnimationNodeBlendTree]. Mélange deux "
"animations sur 3 linéairement selon le montant de la valeur.\n"
"Ce nœud d'animation a trois entrées :\n"
"- L'animation de base à laquelle se mélanger\n"
"- Une animation \"-blend\" pour mélanger avec quand le montant de mélange est "
"négatif\n"
"- Une animation \"+blend\" pour mélanger avec quand le montant de mélange est "
"positif\n"
"En général, le montant de mélange devrait être dans l'intervalle [code]"
"[-1.0,1.0][/code]. Les valeurs hors de cet intervalle peuvent mélanger des "
"animations amplifiées. Cependant, [AnimationNodeAdd3] marche mieux dans ce "
"but."

msgid ""
"A resource used by [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace1D] represents a virtual axis on which any type of "
"[AnimationRootNode]s can be added using [method add_blend_point]. Outputs the "
"linear blend of the two [AnimationRootNode]s adjacent to the current value.\n"
"You can set the extents of the axis with [member min_space] and [member "
"max_space]."
msgstr ""
"Une ressource utilisée par [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace1D] représente un axe virtuel sur lequel tout type "
"d'[AnimationRootNode] peut être ajouté en utilisant [method add_blend_point]. "
"Produit le mélange linéaire des deux [AnimationRootNode] adjacents à la "
"valeur courante.\n"
"Vous pouvez définir la plage de l'axe avec [member min_space] et [member "
"max_space]."

msgid ""
"Adds a new point that represents a [param node] on the virtual axis at a "
"given position set by [param pos]. You can insert it at a specific index "
"using the [param at_index] argument. If you use the default value for [param "
"at_index], the point is inserted at the end of the blend points array."
msgstr ""
"Ajoute un nouveau point qui représente un nœud [param node] sur l'axe virtuel "
"à une position donnée par [param pos]. Il est possible de l'insérer à l'index "
"spécifié en utilisant l'argument [param at_index]. Si vous utilisez la valeur "
"par défaut pour [param at_index], le point est inséré à la fin du tableau des "
"points de mélange."

msgid "Returns the number of points on the blend axis."
msgstr "Renvoie le nombre de points sur l'axe de mélange."

msgid ""
"Returns the [AnimationNode] referenced by the point at index [param point]."
msgstr ""
"Renvoie l'[AnimationNode] référencé par le point à l'index [param point]."

msgid "Returns the position of the point at index [param point]."
msgstr "Renvoie la position du point à l'index [param point]."

msgid "Removes the point at index [param point] from the blend axis."
msgstr "Supprime le point à l'index [param point] de l'axe du mélange."

msgid ""
"Changes the [AnimationNode] referenced by the point at index [param point]."
msgstr ""
"Change l'[AnimationNode] référencé par le point à l'index [param point]."

msgid ""
"Updates the position of the point at index [param point] on the blend axis."
msgstr ""
"Met à jour la position du point à l'index [param point] sur l'axe du mélange."

msgid "Controls the interpolation between animations."
msgstr "Contrôle l'interpolation entre les animations."

msgid ""
"The blend space's axis's upper limit for the points' position. See [method "
"add_blend_point]."
msgstr ""
"La limite supérieure de position pour des points sur l'axe de l'espace blend. "
"Voir [method add_blend_point]."

msgid ""
"The blend space's axis's lower limit for the points' position. See [method "
"add_blend_point]."
msgstr ""
"La limite inférieure de position pour des points sur l'axe de l'espace blend. "
"Voir [method add_blend_point]."

msgid "Position increment to snap to when moving a point on the axis."
msgstr "Incrément de position (snap) quand un point est déplacé sur l'axe."

msgid ""
"If [code]false[/code], the blended animations' frame are stopped when the "
"blend value is [code]0[/code].\n"
"If [code]true[/code], forcing the blended animations to advance frame."
msgstr ""
"Si [code]false[/code], la trame des animations mélangées est arrêtée lorsque "
"la valeur du mélange vaut [code]0[/code].\n"
"Si [code]true[/code], force les animations mélangées à avancer dans les "
"trames."

msgid "Label of the virtual axis of the blend space."
msgstr "Étiquette de l'axe virtuel de l'espace blend."

msgid "The interpolation between animations is linear."
msgstr "L'interpolation entre les animations est linéaire."

msgid ""
"The blend space plays the animation of the animation node which blending "
"position is closest to. Useful for frame-by-frame 2D animations."
msgstr ""
"L'espace de mélange joue l'animation du nœud d'animation dont la position de "
"mélange le plus proche. Utile pour les animations 2D trame par trame."

msgid ""
"Similar to [constant BLEND_MODE_DISCRETE], but starts the new animation at "
"the last animation's playback position."
msgstr ""
"Semblable à [constant BLEND_MODE_DISCRETE], mais commence la nouvelle "
"animation à la dernière position de lecture de l'animation suivante."

msgid ""
"A resource used by [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace2D] represents a virtual 2D space on which "
"[AnimationRootNode]s are placed. Outputs the linear blend of the three "
"adjacent animations using a [Vector2] weight. Adjacent in this context means "
"the three [AnimationRootNode]s making up the triangle that contains the "
"current value.\n"
"You can add vertices to the blend space with [method add_blend_point] and "
"automatically triangulate it by setting [member auto_triangles] to "
"[code]true[/code]. Otherwise, use [method add_triangle] and [method "
"remove_triangle] to triangulate the blend space by hand."
msgstr ""
"Une ressource utilisée par [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace2D] représente un espace virtuel 2D sur lequel des "
"[AnimationRootNode]s sont placés. Produit le mélange linéaire des trois "
"animations adjacentes en utilisant un poids [Vector2]. Adjacent dans ce "
"contexte signifie que les trois [AnimationRootNode] composent le triangle qui "
"contient la valeur actuelle.\n"
"Vous pouvez ajouter des sommets à l'espace de mélange avec [method "
"add_blend_point] et le trianguler automatiquement en définissant [member "
"auto_triangles] à [code]true[/code]. Sinon, utilisez [method add_triangle] et "
"[method remove_triangle] pour trianguler l'espace de mélange à la main."

msgid ""
"Adds a new point that represents a [param node] at the position set by [param "
"pos]. You can insert it at a specific index using the [param at_index] "
"argument. If you use the default value for [param at_index], the point is "
"inserted at the end of the blend points array."
msgstr ""
"Ajoute un nouveau point qui représente un nœud [param node] à une position "
"donnée par [param pos]. Il est possible de l'insérer à l'index spécifié en "
"utilisant l'argument [param at_index]. Si vous utilisez la valeur par défaut "
"pour [param at_index], le point est inséré à la fin du tableau des points de "
"mélange."

msgid ""
"Creates a new triangle using three points [param x], [param y], and [param "
"z]. Triangles can overlap. You can insert the triangle at a specific index "
"using the [param at_index] argument. If you use the default value for [param "
"at_index], the point is inserted at the end of the blend points array."
msgstr ""
"Crée un nouveau triangle en utilisant trois points [param x], [param y], et "
"[param z]. Les triangles peuvent se superposer. Vous pouvez insérer un "
"triangle à un index spécifique en utilisant l'argument [param at_index]. Si "
"vous utilisez une valeur par défaut pour [param at_index], le point est "
"inséré à la fin de la séquence des points de mélange."

msgid "Returns the number of points in the blend space."
msgstr "Renvoie le nombre de points dans le blend space."

msgid ""
"Returns the [AnimationRootNode] referenced by the point at index [param "
"point]."
msgstr ""
"Renvoie l'[AnimationRootNode] référencé par le point à l'index [param point]."

msgid "Returns the number of triangles in the blend space."
msgstr "Renvoie le nombre de triangles dans le blend space."

msgid ""
"Returns the position of the point at index [param point] in the triangle of "
"index [param triangle]."
msgstr ""
"Renvoie la position du point à l'index [param point] dans le triangle à "
"l'index [param triangle]."

msgid "Removes the point at index [param point] from the blend space."
msgstr "Supprime le point à l'index [param point] de l'espace de mélange."

msgid "Removes the triangle at index [param triangle] from the blend space."
msgstr "Supprime le triangle à l'index [param triangle] de l'espace de mélange."

msgid ""
"Updates the position of the point at index [param point] in the blend space."
msgstr ""
"Met à jour la position du point à l'index [param point] sur l'axe de mélange."

msgid ""
"If [code]true[/code], the blend space is triangulated automatically. The mesh "
"updates every time you add or remove points with [method add_blend_point] and "
"[method remove_blend_point]."
msgstr ""
"Si [code]true[/code], le blend space est triangulé automatiquement. Le "
"maillage se met à jour à chaque ajout ou suppression de points via [method "
"add_blend_point] et [method remove_blend_point]."

msgid ""
"The blend space's X and Y axes' upper limit for the points' position. See "
"[method add_blend_point]."
msgstr ""
"La limite supérieure pour les positions des point sur les axes X/Y de "
"l'espace de mélange. Voir [method add_blend_point]."

msgid ""
"The blend space's X and Y axes' lower limit for the points' position. See "
"[method add_blend_point]."
msgstr ""
"La limite inférieure pour les positions des point sur les axes X/Y de "
"l'espace de mélange. Voir [method add_blend_point]."

msgid "Position increment to snap to when moving a point."
msgstr ""
"L' incrément de position à laquelle s'accrocher lorsque l'on bouge un point."

msgid "Name of the blend space's X axis."
msgstr "Nom de l'axe X de l'espace de mélange."

msgid "Name of the blend space's Y axis."
msgstr "Nom de l'axe Y de l'espace de mélange."

msgid ""
"Emitted every time the blend space's triangles are created, removed, or when "
"one of their vertices changes position."
msgstr ""
"Émis à chaque création, suppression de triangles ou changement de position de "
"l'un de leurs sommets dans le blend space."

msgid ""
"A sub-tree of many type [AnimationNode]s used for complex animations. Used by "
"[AnimationTree]."
msgstr ""
"Un sous-arbre de nombreux types [AnimationNode]s utilisés pour des animations "
"complexes. Utilisé par [AnimationTree]."

msgid ""
"This animation node may contain a sub-tree of any other type animation nodes, "
"such as [AnimationNodeTransition], [AnimationNodeBlend2], "
"[AnimationNodeBlend3], [AnimationNodeOneShot], etc. This is one of the most "
"commonly used animation node roots.\n"
"An [AnimationNodeOutput] node named [code]output[/code] is created by default."
msgstr ""
"Ce nœud d'animation peut contenir un sous-arbre d'autres nœuds de type "
"animation, tels que [AnimationNodeTransition], [AnimationNodeBlend2], "
"[AnimationNodeBlend3], [AnimationNodeOneShot], etc. C'est l'une des racines "
"de nœud d'animation la plus couramment utilisée.\n"
"Un nœud [AnimationNodeOutput] nommé [code]output[/code] est créé par défaut."

msgid ""
"Adds an [AnimationNode] at the given [param position]. The [param name] is "
"used to identify the created sub animation node later."
msgstr ""
"Ajoute un [AnimationNode] à la [param position] donnée. Le nom [param name] "
"est utilisé pour identifier plus tard le sous nœud d'animation créé."

msgid ""
"Connects the output of an [AnimationNode] as input for another "
"[AnimationNode], at the input port specified by [param input_index]."
msgstr ""
"Connecte la sortie d'un [AnimationNode] à l'entrée d'un autre "
"[AnimationNode], au port d'entrée spécifié par [param input_index]."

msgid "Disconnects the animation node connected to the specified input."
msgstr "Déconnecte le nœud d'animation connecté à l'entrée spécifiée."

msgid "Returns the sub animation node with the specified [param name]."
msgstr "Renvoie le sous nœud d'animation avec le nom [param name] spécifié."

msgid ""
"Returns a list containing the names of all sub animation nodes in this blend "
"tree."
msgstr ""
"Renvoie une liste contenant les noms de tous les sous nœuds d'animation dans "
"cet arbre de mélange."

msgid ""
"Returns the position of the sub animation node with the specified [param "
"name]."
msgstr ""
"Renvoie la position du sous nœud d'animation avec le nom [param name] "
"spécifié."

msgid ""
"Returns [code]true[/code] if a sub animation node with specified [param name] "
"exists."
msgstr ""
"Renvoie [code]true[/code] si un sous nœud d'animation avec le nom [param "
"name] spécifié existe."

msgid "Removes a sub animation node."
msgstr "Supprime un sous-nœud d'animation."

msgid "Changes the name of a sub animation node."
msgstr "Change le nom d'un sous nœud d'animation."

msgid "Modifies the position of a sub animation node."
msgstr "Modifie la position d'un sous nœud d'animation."

msgid "The global offset of all sub animation nodes."
msgstr "Le décalage global de tous les sous-nœuds d'animation."

msgid "Emitted when the input port information is changed."
msgstr "Émis lorsque l'information du port d'entrée est modifiée."

msgid "The connection was successful."
msgstr "La connexion a réussi."

msgid "The input node is [code]null[/code]."
msgstr "Le nœud d'entrée est [code]null[/code]."

msgid "The specified input port is out of range."
msgstr "Le port d’entrée spécifié est hors de portée."

msgid "The output node is [code]null[/code]."
msgstr "Le nœud de sortie est [code]null[/code]."

msgid "Input and output nodes are the same."
msgstr "Les nœuds d’entrée et de sortie sont identiques."

msgid "The specified connection already exists."
msgstr "La connexion spécifiée existe déjà."

msgid "Base class for extending [AnimationRootNode]s from GDScript, C#, or C++."
msgstr ""
"Classe de base pour étendre [AnimationRootNode] en GDScript, C#, ou C++."

msgid ""
"[AnimationNodeExtension] exposes the APIs of [AnimationRootNode] to allow "
"users to extend it from GDScript, C#, or C++. This class is not meant to be "
"used directly, but to be extended by other classes. It is used to create "
"custom nodes for the [AnimationTree] system."
msgstr ""
"[AnimationNodeExtension] expose les API d'[AnimationRootNode] pour permettre "
"aux utilisateurs de l'étendre en GDScript, C# ou C++. Cette classe n'est pas "
"destinée à être utilisée directement, mais à être étendue par d'autres "
"classes. Elle est utilisée pour créer des nœuds personnalisés pour le système "
"[AnimationTree]."

msgid ""
"A version of the [method AnimationNode._process] method that is meant to be "
"overridden by custom nodes. It returns a [PackedFloat32Array] with the "
"processed animation data.\n"
"The [PackedFloat64Array] parameter contains the playback information, "
"containing the following values encoded as floating point numbers (in order): "
"playback time and delta, start and end times, whether a seek was requested "
"(encoded as a float greater than [code]0[/code]), whether the seek request "
"was externally requested (encoded as a float greater than [code]0[/code]), "
"the current [enum Animation.LoopedFlag] (encoded as a float), and the current "
"blend weight.\n"
"The function must return a [PackedFloat32Array] of the node's time info, "
"containing the following values (in order): animation length, time position, "
"delta, [enum Animation.LoopMode] (encoded as a float), whether the animation "
"is about to end (encoded as a float greater than [code]0[/code]) and whether "
"the animation is infinite (encoded as a float greater than [code]0[/code]). "
"All values must be included in the returned array."
msgstr ""
"Une version de la méthode [method AnimationNode._process] qui est censée être "
"redéfinie par des nœuds personnalisés. Elle renvoie un [PackedFloat32Array] "
"avec les données d'animation traitées.\n"
"Le paramètre [PackedFloat64Array] contient les informations de lecture, "
"contenant les valeurs suivantes encodées en nombres à virgule flottante (dans "
"l'ordre) : temps de lecture et delta, temps de début et de fin, si une "
"recherche a été demandée (encodé en tant que flottant supérieur à [code]0[/"
"code]), si la demande de recherche a été demandée de manière externe (encodé "
"en tant que flottant supérieur à [code]0[/code], l'actuelle énumération [enum "
"Animation.LoopedFlag] (encodé en tant que flottant), et le poids du mélange "
"courant.\n"
"La fonction doit renvoyer un [PackedFloat32Array] de l'information temporelle "
"du nœud, contenant les valeurs suivantes (dans l'ordre) : longueur "
"d'animation, position temporelle, delta, [enum Animation.LoopMode] (encodé en "
"tant que flottant), si l'animation est sur le point de se terminer (encodé en "
"tant que flottant supérieur à [code]0[/code]) et si l'animation est infinie "
"(encodé en tant que flottant supérieur à [code]0[/code]). Toutes les valeurs "
"doivent être incluses dans le tableau renvoyé."

msgid ""
"Returns the animation's remaining time for the given node info. For looping "
"animations, it will only return the remaining time if [param break_loop] is "
"[code]true[/code], a large integer value will be returned otherwise."
msgstr ""
"Renvoie le temps restant de l'animation pour l'info de nœud donnée. Pour les "
"animations qui bouclent, elle ne renverra que le temps restant si [param "
"break_loop] vaut [code]true[/code], une large valeur entière sera renvoyée "
"sinon.."

msgid ""
"Returns [code]true[/code] if the animation for the given [param node_info] is "
"looping."
msgstr ""
"Renvoie [code]true[/code] si l'animation pour le [param node_info] donné "
"boucle."

msgid "Plays an animation once in an [AnimationNodeBlendTree]."
msgstr "Joue une animation une fois dans un [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. This animation node will "
"execute a sub-animation and return once it finishes. Blend times for fading "
"in and out can be customized, as well as filters.\n"
"After setting the request and changing the animation playback, the one-shot "
"node automatically clears the request on the next process frame by setting "
"its [code]request[/code] value to [constant ONE_SHOT_REQUEST_NONE].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Play child animation connected to \"shot\" port.\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE\n"
"\n"
"# Abort child animation connected to \"shot\" port.\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT\n"
"\n"
"# Abort child animation with fading out connected to \"shot\" port.\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT\n"
"\n"
"# Get current state (read-only).\n"
"animation_tree.get(\"parameters/OneShot/active\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/active\"]\n"
"\n"
"# Get current internal state (read-only).\n"
"animation_tree.get(\"parameters/OneShot/internal_active\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/internal_active\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Play child animation connected to \"shot\" port.\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Fire);\n"
"\n"
"// Abort child animation connected to \"shot\" port.\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Abort);\n"
"\n"
"// Abort child animation with fading out connected to \"shot\" port.\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.FadeOut);\n"
"\n"
"// Get current state (read-only).\n"
"animationTree.Get(\"parameters/OneShot/active\");\n"
"\n"
"// Get current internal state (read-only).\n"
"animationTree.Get(\"parameters/OneShot/internal_active\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Une ressource pour ajouter à un [AnimationNodeBlendTree]. Ce nœud d'animation "
"exécutera une sous-animation et renverra une fois qu'il aura terminé. Les "
"temps de mélange pour les fondus d'ouverture et de fermeture peuvent être "
"personnalisés, ainsi que les filtres.\n"
"Après avoir paramétré la requête et modifié la lecture de l'animation, ce "
"nœud à lecture unique efface automatiquement la requête lors de la prochaine "
"trame de traitement en définissant sa valeur [code]request[/code] à [constant "
"ONE_SHOT_REQUEST_NONE].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Jouer l'animation enfant liée au port \"shot\".\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE)\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE\n"
"\n"
"# Annuler l'animation enfant liée au port \"shot\".\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT)\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT\n"
"\n"
"# Annuler l'animation enfant liée au port \"shot\" avec un fondu de "
"fermeture.\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT)\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT\n"
"\n"
"# Obtenir l'état actuel (lecture seule).\n"
"animation_tree.get(\"parameters/OneShot/active\")\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/OneShot/active\"]\n"
"\n"
"# Obtenir l'état interne actuel (lecture seule).\n"
"animation_tree.get(\"parameters/OneShot/internal_active\")\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/OneShot/internal_active\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Jouer l'animation enfant liée au port \"shot\".\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Fire);\n"
"\n"
"// Annuler l'animation enfant liée au port \"shot\".\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Abort);\n"
"\n"
"// Annuler l'animation enfant liée au port \"shot\" avec un fondu de "
"fermeture.\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.FadeOut);\n"
"\n"
"// Obtenir l'état actuel (lecture seule).\n"
"animationTree.Get(\"parameters/OneShot/active\");\n"
"\n"
"// Obtenir l'état interne actuel (lecture seule).\n"
"animationTree.Get(\"parameters/OneShot/internal_active\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]true[/code], the sub-animation will restart automatically after "
"finishing.\n"
"In other words, to start auto restarting, the animation must be played once "
"with the [constant ONE_SHOT_REQUEST_FIRE] request. The [constant "
"ONE_SHOT_REQUEST_ABORT] request stops the auto restarting, but it does not "
"disable the [member autorestart] itself. So, the [constant "
"ONE_SHOT_REQUEST_FIRE] request will start auto restarting again."
msgstr ""
"Si [code]true[/code], la sous-animation redémarre automatiquement après avoir "
"fini.\n"
"En d'autres termes, pour commencer le redémarrage automatique, l'animation "
"doit être jouée une fois avec la requête [constant ONE_SHOT_REQUEST_FIRE]. La "
"requête [constant ONE_SHOT_REQUEST_ABORT] arrête le redémarrage automatique, "
"mais elle ne désactive pas la propriété [member autorestart] elle-même. "
"Ainsi, la requête [constant ONE_SHOT_REQUEST_FIRE] va démarrer encore le "
"redémarrage automatique."

msgid "The delay after which the automatic restart is triggered, in seconds."
msgstr ""
"Le délai après lequel le redémarrage automatique est déclenché, en secondes."

msgid ""
"If [member autorestart] is [code]true[/code], a random additional delay (in "
"seconds) between 0 and this value will be added to [member autorestart_delay]."
msgstr ""
"Si [member autorestart] est [code]true[/code], un délai additionnel (en "
"secondes) aléatoirement choisi entre 0 et cette valeur sera ajouté à [member "
"autorestart_delay]."

msgid ""
"If [code]true[/code], breaks the loop at the end of the loop cycle for "
"transition, even if the animation is looping."
msgstr ""
"Si [code]true[/code], brise la boucle à la fin du cycle de boucle pour la "
"transition, même si l'animation boucle."

msgid ""
"The fade-in duration. For example, setting this to [code]1.0[/code] for a 5 "
"second length animation will produce a cross-fade that starts at 0 second and "
"ends at 1 second during the animation.\n"
"[b]Note:[/b] [AnimationNodeOneShot] transitions the current state after the "
"fading has finished."
msgstr ""
"La durée du fondu d'ouverture. Par exemple, définir ceci à [code]1.0[/code] "
"pour une animation de 5 secondes produira un fondu enchaîné qui commence à 0 "
"seconde et se termine à 1 seconde pendant l'animation.\n"
"[b]Note :[/b] [AnimationNodeOneShot] transitionne l'état actuel après la fin "
"du fondu."

msgid ""
"The fade-out duration. For example, setting this to [code]1.0[/code] for a 5 "
"second length animation will produce a cross-fade that starts at 4 second and "
"ends at 5 second during the animation.\n"
"[b]Note:[/b] [AnimationNodeOneShot] transitions the current state after the "
"fading has finished."
msgstr ""
"La durée du fondu de fermeture. Par exemple, définir ceci à [code]1.0[/code] "
"pour une animation de 5 secondes produira un fondu enchaîné qui commence à 4 "
"secondes et se termine à 5 secondes pendant l'animation.\n"
"[b]Note :[/b] [AnimationNodeOneShot] transitionne l'état actuel après la fin "
"du fondu."

msgid "The blend type."
msgstr "Le type de mélange."

msgid "The default state of the request. Nothing is done."
msgstr "L'état par défaut de la demande. Rien n'est fait."

msgid "The request to play the animation connected to \"shot\" port."
msgstr "La demande de jouer l'animation connectée au port \"shot\"."

msgid "The request to stop the animation connected to \"shot\" port."
msgstr "La demande pour arrêter l'animation connectée au port \"shot\"."

msgid "The request to fade out the animation connected to \"shot\" port."
msgstr ""
"La demande de faire un fondu sortant avec l'animation connectée au port "
"\"shot\"."

msgid "Blends two animations. See also [AnimationNodeBlend2]."
msgstr "Mélange deux animations. Voir aussi [AnimationNodeBlend2]."

msgid "Blends two animations additively. See also [AnimationNodeAdd2]."
msgstr "Mélange deux animations additivement. Voir aussi [AnimationNodeAdd2]."

msgid "The animation output node of an [AnimationNodeBlendTree]."
msgstr "Le nœud d’animation de sortie d’un [AnimationNodeBlendTree]."

msgid ""
"A node created automatically in an [AnimationNodeBlendTree] that outputs the "
"final animation."
msgstr ""
"Un nœud créé automatiquement dans un [AnimationNodeBlendTree] qui produit "
"l'animation finale."

msgid ""
"A state machine with multiple [AnimationRootNode]s, used by [AnimationTree]."
msgstr ""
"Un automate avec plusieurs [AnimationRootNode]s, utilisé par [AnimationTree]."

msgid ""
"Contains multiple [AnimationRootNode]s representing animation states, "
"connected in a graph. State transitions can be configured to happen "
"automatically or via code, using a shortest-path algorithm. Retrieve the "
"[AnimationNodeStateMachinePlayback] object from the [AnimationTree] node to "
"control it programmatically.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
"state_machine.travel(\"some_state\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var stateMachine = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\") as AnimationNodeStateMachinePlayback;\n"
"stateMachine.Travel(\"some_state\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Contient plusieurs [AnimationRootNode]s représentant des états d'animation, "
"connectés dans un graphique. Les transitions d'état peuvent être configurées "
"pour se produire automatiquement ou par code, en utilisant un algorithme de "
"plus court chemin. Récupère l'objet [AnimationNodeStateMachinePlayback] du "
"nœud [AnimationTree] pour le contrôler programmatiquement.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var automate = $AnimationTree.get(\"parameters/playback\")\n"
"automate.travel(\"un_etat\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var automate = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\") as AnimationNodeStateMachinePlayback;\n"
"automate.Travel(\"un_etat\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Adds a new animation node to the graph. The [param position] is used for "
"display in the editor."
msgstr ""
"Ajoute un nouveau nœud d'animation au graphe. La [param position] est "
"utilisée pour l’affichage dans l’éditeur."

msgid "Adds a transition between the given animation nodes."
msgstr "Ajoute une transition entre les nœuds d'animation donnés."

msgid "Returns the draw offset of the graph. Used for display in the editor."
msgstr ""
"Renvoie le décalage de l'affichage du graphe. Utilisé pour l'affichage dans "
"l'éditeur."

msgid "Returns the animation node with the given name."
msgstr "Renvoie le nœud d'animation avec le nom donné."

msgid ""
"Returns a list containing the names of all animation nodes in this state "
"machine."
msgstr ""
"Renvoie une liste contenant les noms de tous les nœuds d'animation dans cet "
"automate."

msgid "Returns the given animation node's name."
msgstr "Renvoie le nom du nœud d'animation donné."

msgid ""
"Returns the given animation node's coordinates. Used for display in the "
"editor."
msgstr ""
"Renvoie les coordonnées du nœud d'animation donné. Utilisé pour l'affichage "
"dans l'éditeur."

msgid "Returns the given transition."
msgstr "Renvoie la transition donnée."

msgid "Returns the number of connections in the graph."
msgstr "Renvoie le nombre de connections dans le graphe."

msgid "Returns the given transition's start node."
msgstr "Renvoie le nœud de début de la transition donnée."

msgid "Returns the given transition's end node."
msgstr "Renvoie le nœud de fin de la transition donnée."

msgid ""
"Returns [code]true[/code] if the graph contains the given animation node."
msgstr ""
"Renvoie[code]true[/code] si le graphe contient le nœud d’animation spécifié."

msgid ""
"Returns [code]true[/code] if there is a transition between the given "
"animation nodes."
msgstr ""
"Renvoie [code]true[/code] s'il y a une transition entre les nœuds d’animation "
"spécifiés."

msgid "Deletes the given animation node from the graph."
msgstr "Supprime le nœud d’animation spécifié du graphe."

msgid "Deletes the transition between the two specified animation nodes."
msgstr "Supprime la transition entre les deux nœuds d’animation spécifiés."

msgid "Deletes the given transition by index."
msgstr "Supprime la transition donnée par index."

msgid "Renames the given animation node."
msgstr "Renomme le nœud d'animation spécifié."

msgid "Replaces the given animation node with a new animation node."
msgstr "Remplace le nœud d'animation donné avec un nouveau nœud d'animation."

msgid "Sets the draw offset of the graph. Used for display in the editor."
msgstr ""
"Définit le décalage de l'affichage du graphe. Utilisé pour l'affichage dans "
"l'éditeur."

msgid "Sets the animation node's coordinates. Used for display in the editor."
msgstr ""
"Définit les coordonnées du nœud d'animation. Utilisé pour l'affichage dans "
"l'éditeur."

msgid ""
"If [code]true[/code], treat the cross-fade to the start and end nodes as a "
"blend with the RESET animation.\n"
"In most cases, when additional cross-fades are performed in the parent "
"[AnimationNode] of the state machine, setting this property to [code]false[/"
"code] and matching the cross-fade time of the parent [AnimationNode] and the "
"state machine's start node and end node gives good results."
msgstr ""
"Si [code]true[/code], traite le fondu enchaîné vers les nœuds de début et de "
"fin comme un mélange avec l'animation de réinitialisation (RESET).\n"
"Dans la plupart des cas, lorsque des fondus enchaînés supplémentaires sont "
"exécutés dans l'[AnimationNode] parent de l'automate, définir cette propriété "
"à [code]false[/code] et faire correspondre le temps de fondu enchaîné du "
"parent [AnimationNode] et celui du nœud de début et de fin de l'automate "
"donne de bons résultats."

msgid ""
"This property can define the process of transitions for different use cases. "
"See also [enum AnimationNodeStateMachine.StateMachineType]."
msgstr ""
"Cette propriété peut définir le processus de transition pour différents cas "
"d'utilisation. Voir aussi [enum AnimationNodeStateMachine.StateMachineType]."

msgid ""
"Seeking to the beginning is treated as playing from the start state. "
"Transition to the end state is treated as exiting the state machine."
msgstr ""
"Aller au début est traité comme jouer depuis l'état de départ. La transition "
"vers l'état final est traitée comme une sortie de l'automate."

msgid ""
"Seeking to the beginning is treated as seeking to the beginning of the "
"animation in the current state. Transition to the end state, or the absence "
"of transitions in each state, is treated as exiting the state machine."
msgstr ""
"Aller au début est considéré comme aller au début de l'animation dans l'état "
"actuel. La transition vers l'état final, ou l'absence de transitions dans "
"chaque état, est traité comme sortir de l'automate."

msgid ""
"This is a grouped state machine that can be controlled from a parent state "
"machine. It does not work independently. There must be a state machine with "
"[member state_machine_type] of [constant STATE_MACHINE_TYPE_ROOT] or "
"[constant STATE_MACHINE_TYPE_NESTED] in the parent or ancestor."
msgstr ""
"C'est un automate groupé qui peut être contrôlé à partir d'un automate "
"parent. Il ne fonctionne pas de façon indépendante. Il doit y avoir un "
"automate avec [member state_machine_type] défini à [constant "
"STATE_MACHINE_TYPE_ROOT] ou [constant STATE_MACHINE_TYPE_NESTED] dans le "
"parent ou l'ancêtre."

msgid "Provides playback control for an [AnimationNodeStateMachine]."
msgstr "Fournit le contrôle de la lecture pour une [AnimationNodeStateMachine]."

msgid ""
"Allows control of [AnimationTree] state machines created with "
"[AnimationNodeStateMachine]. Retrieve with [code]"
"$AnimationTree.get(\"parameters/playback\")[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
"state_machine.travel(\"some_state\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var stateMachine = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\").As<AnimationNodeStateMachinePlayback>();\n"
"stateMachine.Travel(\"some_state\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Permet le contrôle d'automates [AnimationTree] créés avec "
"[AnimationNodeStateMachine]. Récupérez [code]avec [code]"
"$AnimationTree.get(\"parameters/playback\")[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var automate = $AnimationTree.get(\"parameters/playback\")\n"
"automate.travel(\"un_etat\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var automate = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\").As<AnimationNodeStateMachinePlayback>();\n"
"automate.Travel(\"un_etat\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the current state length.\n"
"[b]Note:[/b] It is possible that any [AnimationRootNode] can be nodes as well "
"as animations. This means that there can be multiple animations within a "
"single state. Which animation length has priority depends on the nodes "
"connected inside it. Also, if a transition does not reset, the remaining "
"length at that point will be returned."
msgstr ""
"Renvoie la longueur de l'état actuel.\n"
"[b]Note :[/b] Il est possible que tout [AnimationRootNode] soit des nœuds "
"ainsi que des animations. Cela signifie qu'il peut y avoir plusieurs "
"animations dans un seul état. Quelle durée d'animation a la priorité dépend "
"des nœuds connectés à l'intérieur. De plus, si une transition ne se "
"réinitialise pas, la longueur restante à ce moment sera renvoyée."

msgid ""
"Returns the currently playing animation state.\n"
"[b]Note:[/b] When using a cross-fade, the current state changes to the next "
"state immediately after the cross-fade begins."
msgstr ""
"Renvoie l'état de l'animation jouant actuellement.\n"
"[b]Note :[/b] Lors de l'utilisation d'un fondu enchaîné, l'état actuel change "
"immédiatement à l'état suivant après que le fondu enchaîné commence."

msgid "Returns the playback position within the current animation state."
msgstr "Renvoie la position de lecture pour l'état actuel de l'animation."

msgid "Returns the starting state of currently fading animation."
msgstr "Renvoie l'état de départ de l'animation en cours de fondu."

msgid ""
"Returns the current travel path as computed internally by the A* algorithm."
msgstr ""
"Renvoie le chemin de voyage actuel tel que calculé en interne par "
"l’algorithme A*."

msgid "Returns [code]true[/code] if an animation is playing."
msgstr "Renvoie [code]true[/code] si une animation est en lecture."

msgid ""
"If there is a next path by travel or auto advance, immediately transitions "
"from the current state to the next state."
msgstr ""
"S'il y a un chemin suivant par lequel voyager ou avancer automatiquement, "
"transitionne immédiatement de l'état actuel à l'état suivant."

msgid ""
"Starts playing the given animation.\n"
"If [param reset] is [code]true[/code], the animation is played from the "
"beginning."
msgstr ""
"Commence à jouer l'animation donnée.\n"
"Si [param reset] vaut [code]true[/code], l'animation est jouée depuis le "
"début."

msgid "Stops the currently playing animation."
msgstr "Arrête l’animation en cours de lecture."

msgid ""
"Transitions from the current state to another one, following the shortest "
"path.\n"
"If the path does not connect from the current state, the animation will play "
"after the state teleports.\n"
"If [param reset_on_teleport] is [code]true[/code], the animation is played "
"from the beginning when the travel cause a teleportation."
msgstr ""
"Transitionne de l'état actuel à un autre, en suivant le chemin le plus "
"court.\n"
"Si le chemin ne se connecte pas depuis l'état actuel, l'animation jouera "
"après les téléportations d'état.\n"
"Si [param reset_on_teleport] vaut [code]true[/code], l'animation est jouée "
"depuis le début lorsque la transition cause une téléportation."

msgid ""
"Emitted when the [param state] finishes playback. If [param state] is a state "
"machine set to grouped mode, its signals are passed through with its name "
"prefixed.\n"
"If there is a crossfade, this will be fired when the influence of the [method "
"get_fading_from_node] animation is no longer present."
msgstr ""
"Émis lorsque l'état [param state] finit la lecture. Si [param state] est un "
"automate en mode groupé, ses signaux sont passés avec son nom en préfixe.\n"
"S'il y a un fondu croisé, cela sera émis lorsque l'influence de l'animation "
"[method get_fading_from_node] n'est plus présente."

msgid ""
"Emitted when the [param state] starts playback. If [param state] is a state "
"machine set to grouped mode, its signals are passed through with its name "
"prefixed."
msgstr ""
"Émis lorsque l'état [param state] commence la lecture. Si [param state] est "
"un automate en mode groupé, ses signaux sont passés avec son nom en préfixe."

msgid ""
"A transition within an [AnimationNodeStateMachine] connecting two "
"[AnimationRootNode]s."
msgstr ""
"Une transition dans un [AnimationNodeStateMachine] reliant deux "
"[AnimationRootNode]s."

msgid ""
"The path generated when using [method "
"AnimationNodeStateMachinePlayback.travel] is limited to the nodes connected "
"by [AnimationNodeStateMachineTransition].\n"
"You can set the timing and conditions of the transition in detail."
msgstr ""
"Le chemin généré lors de l'utilisation de [method "
"AnimationNodeStateMachinePlayback.travel] est limité aux nœuds connectés par "
"[AnimationNodeStateMachineTransition].\n"
"Vous pouvez définir le timing et les conditions de la transition en détail."

msgid ""
"Turn on auto advance when this condition is set. The provided name will "
"become a boolean parameter on the [AnimationTree] that can be controlled from "
"code (see [url=$DOCS_URL/tutorials/animation/animation_tree.html#controlling-"
"from-code]Using AnimationTree[/url]). For example, if [member "
"AnimationTree.tree_root] is an [AnimationNodeStateMachine] and [member "
"advance_condition] is set to [code]\"idle\"[/code]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"$animation_tree.set(\"parameters/conditions/idle\", is_on_floor and "
"(linear_velocity.x == 0))\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<AnimationTree>(\"animation_tree\").Set(\"parameters/conditions/"
"idle\", IsOnFloor && (LinearVelocity.X == 0));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Active l'avance automatique lorsque cette condition est définie. Le nom "
"fourni deviendra un paramètre booléen sur l'[AnimationTree] qui peut être "
"contrôlé à partir du code (voir [url=$DOCS_URL/tutorials/animation/"
"animation_tree.html#controlling-from-code]Utiliser AnimationTree[/url]). Par "
"exemple, si [member AnimationTree.tree_root] est un "
"[AnimationNodeStateMachine] et [member advance_condition] est défini à [code]"
"\"idle\"[/code] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"$animation_tree.set(\"parameters/conditions/idle\", is_on_floor and "
"(linear_velocity.x == 0)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<AnimationTree>(\"animation_tree\").Set(\"parameters/conditions/"
"idle\", IsOnFloor && (LinearVelocity.X == 0));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Use an expression as a condition for state machine transitions. It is "
"possible to create complex animation advance conditions for switching between "
"states and gives much greater flexibility for creating complex state machines "
"by directly interfacing with the script code."
msgstr ""
"Utilisez une expression comme condition pour les transitions d'automate. Il "
"est possible de créer des conditions d'avancement d'animation complexes pour "
"changer d'état et donne ainsi beaucoup plus de flexibilité pour créer des "
"automates complexes en interfaçant directement avec des scripts."

msgid ""
"Determines whether the transition should be disabled, enabled when using "
"[method AnimationNodeStateMachinePlayback.travel], or traversed automatically "
"if the [member advance_condition] and [member advance_expression] checks are "
"[code]true[/code] (if assigned)."
msgstr ""
"Détermine si la transition doit être désactivée, activée lors de "
"l'utilisation de [method AnimationNodeStateMachinePlayback.travel], ou "
"traversée automatiquement si les vérifications [member advance_condition] et "
"[member advance_expression] valent [code]true[/code] (si elles sont "
"attribuées)."

msgid ""
"Lower priority transitions are preferred when travelling through the tree via "
"[method AnimationNodeStateMachinePlayback.travel] or [member advance_mode] is "
"set to [constant ADVANCE_MODE_AUTO]."
msgstr ""
"Les transitions les moins prioritaires sont préférées lorsque vous traversez "
"l'arborescence via [method AnimationNodeStateMachinePlayback.travel] ou quand "
"[member advance_mode] est défini à [constant ADVANCE_MODE_AUTO]."

msgid ""
"If [code]true[/code], the destination animation is played back from the "
"beginning when switched."
msgstr ""
"Si [code]true[/code], l'animation de destination est lue depuis le début lors "
"de la transition."

msgid "The transition type."
msgstr "Le type de transition."

msgid "Emitted when [member advance_condition] is changed."
msgstr "Émis quand [member advance_condition] est changé."

msgid ""
"Switch to the next state immediately. The current state will end and blend "
"into the beginning of the new one."
msgstr ""
"Passe à l'état suivant immédiatement. L'état actuel se terminera et se fondra "
"au début du nouveau."

msgid ""
"Switch to the next state immediately, but will seek the new state to the "
"playback position of the old state."
msgstr ""
"Passe immédiatement à l'état suivant, mais cherchera le nouvel état à la "
"position de lecture de l'ancien état."

msgid ""
"Wait for the current state playback to end, then switch to the beginning of "
"the next state animation."
msgstr ""
"Attend que la lecture de l'état actuelle se termine, puis passe au début de "
"la prochaine animation de l'état."

msgid "Don't use this transition."
msgstr "N'utilisez pas cette transition."

msgid ""
"Only use this transition during [method "
"AnimationNodeStateMachinePlayback.travel]."
msgstr ""
"Utilisez seulement cette transition pendant [method "
"AnimationNodeStateMachinePlayback.travel]."

msgid ""
"Automatically use this transition if the [member advance_condition] and "
"[member advance_expression] checks are [code]true[/code] (if assigned)."
msgstr ""
"Utiliser automatiquement cette transition si les vérifications [member "
"advance_condition] et [member advance_expression] valent [code]true[/code] "
"(s'ils sont affectés)."

msgid ""
"Blends two animations subtractively inside of an [AnimationNodeBlendTree]."
msgstr ""
"Mélange deux animations de manière soustractive à l'intérieur d'un "
"[AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"subtractively based on the amount value.\n"
"This animation node is usually used for pre-calculation to cancel out any "
"extra poses from the animation for the \"add\" animation source in "
"[AnimationNodeAdd2] or [AnimationNodeAdd3].\n"
"In general, the blend value should be in the [code][0.0, 1.0][/code] range, "
"but values outside of this range can be used for amplified or inverted "
"animations.\n"
"[b]Note:[/b] This calculation is different from using a negative value in "
"[AnimationNodeAdd2], since the transformation matrices do not satisfy the "
"commutative law. [AnimationNodeSub2] multiplies the transformation matrix of "
"the inverted animation from the left side, while negative [AnimationNodeAdd2] "
"multiplies it from the right side."
msgstr ""
"Une ressource à ajouter à un [AnimationNodeBlendTree]. Mélange deux "
"animations de manière soustractive selon un montant donné.\n"
"Ce nœud d'animation est généralement utilisé pour des pré-calculs pour "
"annuler toute pose supplémentaire de l'animation pour la source d'animation "
"\"add\" dans [AnimationNodeAdd2] ou [AnimationNodeAdd3].\n"
"En général, la valeur de mélange devrait être dans l'intervalle [code][0.0, "
"1.0][/code], mais les valeurs en dehors de cette plage peuvent être utilisées "
"pour des animations amplifiées ou inversées.\n"
"[b]Note :[/b] Ce calcul est différent de l'utilisation d'une valeur négative "
"dans [AnimationNodeAdd2], puisque les matrices de transformation ne satisfont "
"pas la loi commutative. [AnimationNodeSub2] multiplie la matrice de "
"transformation de l'animation inversée du côté gauche, tandis qu'un "
"[AnimationNodeAdd2] négatif la multiplie du côté droit."

msgid "AnimationTree"
msgstr "AnimationTree"

msgid ""
"Base class for [AnimationNode]s with multiple input ports that must be "
"synchronized."
msgstr ""
"Classe de base pour les [AnimationNode]s avec plusieurs ports d'entrée qui "
"doivent être synchronisés."

msgid ""
"An animation node used to combine, mix, or blend two or more animations "
"together while keeping them synchronized within an [AnimationTree]."
msgstr ""
"Un nœud d'animation utilisé pour combiner, fusionner ou mélanger deux ou "
"plusieurs animations tout en les gardant synchronisées dans un "
"[AnimationTree]."

msgid "A time-scaling animation node used in [AnimationTree]."
msgstr "Un nœud d'animation qui étire le temps utilisé dans [AnimationTree]."

msgid ""
"Allows to scale the speed of the animation (or reverse it) in any child "
"[AnimationNode]s. Setting it to [code]0.0[/code] will pause the animation."
msgstr ""
"Permet de redimensionner la vitesse de l'animation (ou de l'inverser) dans "
"tout enfant [AnimationNode]s. La définir à [code]0.0[/code] va mettre en "
"pause l'animation."

msgid ""
"If [code]true[/code], some processes are executed to handle keys between "
"seeks, such as calculating root motion and finding the nearest discrete key."
msgstr ""
"Si [code]true[/code], certains traitements sont exécutés pour gérer les clés "
"entre les recherches, comme le calcul du mouvement racine et la recherche de "
"la clé discrète la plus proche."

msgid "A transition within an [AnimationTree] connecting two [AnimationNode]s."
msgstr "Une transition dans un [AnimationTree] reliant deux [AnimationNode]s."

msgid ""
"Simple state machine for cases which don't require a more advanced "
"[AnimationNodeStateMachine]. Animations can be connected to the inputs and "
"transition times can be specified.\n"
"After setting the request and changing the animation playback, the transition "
"node automatically clears the request on the next process frame by setting "
"its [code]transition_request[/code] value to empty.\n"
"[b]Note:[/b] When using a cross-fade, [code]current_state[/code] and "
"[code]current_index[/code] change to the next state immediately after the "
"cross-fade begins.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Play child animation connected to \"state_2\" port.\n"
"animation_tree.set(\"parameters/Transition/transition_request\", "
"\"state_2\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/Transition/transition_request\"] = \"state_2\"\n"
"\n"
"# Get current state name (read-only).\n"
"animation_tree.get(\"parameters/Transition/current_state\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/Transition/current_state\"]\n"
"\n"
"# Get current state index (read-only).\n"
"animation_tree.get(\"parameters/Transition/current_index\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/Transition/current_index\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Play child animation connected to \"state_2\" port.\n"
"animationTree.Set(\"parameters/Transition/transition_request\", "
"\"state_2\");\n"
"\n"
"// Get current state name (read-only).\n"
"animationTree.Get(\"parameters/Transition/current_state\");\n"
"\n"
"// Get current state index (read-only).\n"
"animationTree.Get(\"parameters/Transition/current_index\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Automate simple pour les cas qui ne nécessitent pas une "
"[AnimationNodeStateMachine] plus avancée. Les animations peuvent être "
"connectées aux entrées et les temps de transition peuvent être spécifiés.\n"
"Après avoir paramétré la requête et modifié la lecture d'animation, le nœud "
"de transition efface automatiquement la requête sur la prochaine trame de "
"traitement en définissant sa valeur [code]transition_request[/code] à vide.\n"
"[b]Note :[/b] Lors de l'utilisation d'un fondu croisé, [code]current_state[/"
"code] et [code]current_index[/code] changent vers l'état suivant "
"immédiatement après le début du fondu enchaîné.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Jouer l'animation enfant connectée au port \"state_2\".\n"
"animation_tree.set(\"parameters/Transition/transition_request\", "
"\"state_2\")\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/Transition/transition_request\"] = \"state_2\"\n"
"\n"
"# Obtenir le nom de l'état actuel (lecture seule).\n"
"animation_tree.get(\"parameters/Transition/current_state\")\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/Transition/current_state\"]\n"
"\n"
"# Obtenir l'index de l'état actuel (lecture seule).\n"
"animation_tree.get(\"parameters/Transition/current_index\")\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/Transition/current_index\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Jouer l'animation enfant connectée au port \"state_2\".\n"
"animationTree.Set(\"parameters/Transition/transition_request\", "
"\"state_2\");\n"
"\n"
"// Obtenir le nom de l'état actuel (lecture seule).\n"
"animationTree.Get(\"parameters/Transition/current_state\");\n"
"\n"
"// Obtenir l'index de l'état actuel (lecture seule).\n"
"animationTree.Get(\"parameters/Transition/current_index\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns whether the animation restarts when the animation transitions from "
"the other animation."
msgstr ""
"Renvoie si l'animation redémarre lorsque l'animation transitionne depuis "
"l'autre animation."

msgid ""
"Returns [code]true[/code] if auto-advance is enabled for the given [param "
"input] index."
msgstr ""
"Renvoie [code]true[/code] si l'avance automatique est activée pour l'index "
"[param input] donné."

msgid ""
"Enables or disables auto-advance for the given [param input] index. If "
"enabled, state changes to the next input after playing the animation once. If "
"enabled for the last input state, it loops to the first."
msgstr ""
"Active ou désactive l'avancement automatique pour l'index [param input] "
"donné. Si activé, l'état change vers la prochaine entrée après avoir joué "
"l'animation une fois. Si activé pour le dernier état d'entrée, il boucle "
"jusqu'au premier."

msgid ""
"If [code]true[/code], the destination animation is restarted when the "
"animation transitions."
msgstr ""
"Si [code]true[/code], l'animation de destination est redémarrée lors "
"l'animation transitionne."

msgid "The number of enabled input ports for this animation node."
msgstr "Le nombre de ports d'entrée actifs pour ce nœud d'animation."

msgid "A node used for animation playback."
msgstr "Un nœud utilisé pour la lecture d'animation."

msgid ""
"An animation player is used for general-purpose playback of animations. It "
"contains a dictionary of [AnimationLibrary] resources and custom blend times "
"between animation transitions.\n"
"Some methods and properties use a single key to reference an animation "
"directly. These keys are formatted as the key for the library, followed by a "
"forward slash, then the key for the animation within the library, for example "
"[code]\"movement/run\"[/code]. If the library's key is an empty string (known "
"as the default library), the forward slash is omitted, being the same key "
"used by the library.\n"
"[AnimationPlayer] is better-suited than [Tween] for more complex animations, "
"for example ones with non-trivial timings. It can also be used over [Tween] "
"if the animation track editor is more convenient than doing it in code.\n"
"Updating the target properties of animations occurs at the process frame."
msgstr ""
"Un lecteur d'animation est utilisé pour la lecture générale des ressources "
"[Animation]. Il contient un dictionnaire de ressources [AnimationLibrary] et "
"des temps de mélange personnalisés entre les transitions d'animation.\n"
"Certaines méthodes et propriétés utilisent une unique clé pour référencer une "
"animation directement. Ces clés sont formatées comme la clé pour la "
"bibliothèque, suivies d'un slash avant, puis la clé pour l'animation dans la "
"bibliothèque, par exemple [code]\"movement/run\"[/code]. Si la clé de la "
"bibliothèque est une chaîne vide (connue sous le nom de bibliothèque par "
"défaut), le slash avant est omis, étant la même clé utilisée par la "
"bibliothèque.\n"
"[AnimationPlayer] est mieux adapté que [Tween] pour des animations plus "
"complexes, par exemple celles avec des timings non-triviaux. Il peut "
"également être utilisé au lieu [Tween] si l'éditeur de piste d'animation est "
"plus pratique que de le faire dans du code.\n"
"La mise à jour des propriétés cibles des animations se produit lors de la "
"trame de traitement."

msgid ""
"Returns the key of the animation which is queued to play after the [param "
"animation_from] animation."
msgstr ""
"Renvoie la clé de l'animation qui est dans la queue pour jouer après "
"l'animation [param animation_from]."

msgid ""
"Triggers the [param animation_to] animation when the [param animation_from] "
"animation completes."
msgstr ""
"Déclenche l'animation [param animation_to] quand l'animation [param "
"animation_from] se termine."

msgid "Clears all queued, unplayed animations."
msgstr "Efface toutes les animations en file d’attente et non joués."

msgid ""
"Returns the blend time (in seconds) between two animations, referenced by "
"their keys."
msgstr ""
"Renvoie le temps de mélange (en secondes) entre deux animations, référencées "
"par leurs clés."

msgid "Use [member AnimationMixer.callback_mode_method] instead."
msgstr "Utilisez [member AnimationMixer.callback_mode_method] à la place."

msgid "Returns the call mode used for \"Call Method\" tracks."
msgstr "Renvoie le mode d'appel utilisé pour les pistes \"Appel de méthode\"."

msgid "Use [member AnimationMixer.callback_mode_process] instead."
msgstr "Utilisez [member AnimationMixer.callback_mode_process] à la place."

msgid "Returns the process notification in which to update animations."
msgstr ""
"Renvoie la notification de traitement dans laquelle mettre à jour les "
"animations."

msgid "Returns a list of the animation keys that are currently queued to play."
msgstr ""
"Renvoie une liste de clés d'animation qui sont actuellement dans la file pour "
"jouer."

msgid "Use [member AnimationMixer.root_node] instead."
msgstr "Utilisez [member AnimationMixer.root_node] à la place."

msgid "Returns the node which node path references will travel from."
msgstr ""
"Renvoie le nœud à partir duquel les références de chemin de nœud vont "
"commencer."

msgid "Returns the end time of the section currently being played."
msgstr "Renvoie le temps de fin de la section en cours de lecture."

msgid "Returns the start time of the section currently being played."
msgstr "Renvoie le temps de début de la section en cours de lecture."

msgid ""
"Returns [code]true[/code] if an animation is currently playing with a section."
msgstr ""
"Renvoie [code]true[/code] si une animation joue actuellement avec une section."

msgid ""
"Pauses the currently playing animation. The [member "
"current_animation_position] will be kept and calling [method play] or [method "
"play_backwards] without arguments or with the same animation name as [member "
"assigned_animation] will resume the animation.\n"
"See also [method stop]."
msgstr ""
"Met en pause l'animation en cours. La position d'animation actuelle ([member "
"current_animation_position]) sera gardée et appeller [method play] ou [method "
"play_backwards] sans arguments ou avec le même nom d'animation que [member "
"assigned_animation] reprendra l'animation.\n"
"Voir aussi [method stop]."

msgid ""
"Plays the animation with key [param name]. Custom blend times and speed can "
"be set.\n"
"The [param from_end] option only affects when switching to a new animation "
"track, or if the same track but at the start or end. It does not affect "
"resuming playback that was paused in the middle of an animation. If [param "
"custom_speed] is negative and [param from_end] is [code]true[/code], the "
"animation will play backwards (which is equivalent to calling [method "
"play_backwards]).\n"
"The [AnimationPlayer] keeps track of its current or last played animation "
"with [member assigned_animation]. If this method is called with that same "
"animation [param name], or with no [param name] parameter, the assigned "
"animation will resume playing if it was paused.\n"
"[b]Note:[/b] The animation will be updated the next time the "
"[AnimationPlayer] is processed. If other variables are updated at the same "
"time this is called, they may be updated too early. To perform the update "
"immediately, call [code]advance(0)[/code]."
msgstr ""
"Joue l'animation avec la clé [param name]. Des temps de mélange et une "
"vitesse personnalisés peuvent être définis.\n"
"L'option [param from_end] n'affecte que lorsque vous passez à une nouvelle "
"piste d'animation, ou avec la même piste, mais au début ou à la fin. Elle "
"n'affecte pas la reprise de la lecture qui a été mise en pause au milieu "
"d'une animation. Si [param custom_speed] est négatif et [param from_end] vaut "
"[code]true[/code], l'animation jouera à l'envers (qui est équivalent à "
"appeler [method play_backwards]).\n"
"L'[AnimationPlayer] garde la trace de son animation actuelle ou dernière avec "
"[member assigned_animation]. Si cette méthode est appelée avec ce même nom "
"d'animation [param name], ou sans paramètre [param name], l'animation "
"assignée reprendra la lecture si elle a été interrompue.\n"
"[b]Note:[/b] L'animation sera mise à jour la prochaine fois que "
"l'[AnimationPlayer] sera traité. Si d'autres variables sont mises à jour en "
"même temps que ceci est appelle, elles peuvent être mises à jour trop tôt. "
"Pour effectuer la mise à jour immédiatement, appelez [code]advance(0)[/code]."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_time] and ending on [param end_time]. See also [method play].\n"
"Setting [param start_time] to a value outside the range of the animation "
"means the start of the animation will be used instead, and setting [param "
"end_time] to a value outside the range of the animation means the end of the "
"animation will be used instead. [param start_time] cannot be equal to [param "
"end_time]."
msgstr ""
"Joue l'animation avec la clé [param name] et la section commençant au temps "
"[param start_time] et se terminant au temps [param end_time]. Voir aussi "
"[method play].\n"
"Définir [param start_time] à une valeur en dehors de la plage de l'animation "
"signifie que le début de l'animation sera utilisé à la place, et définir "
"[param end_time] à une valeur en dehors de la plage de l'animation signifie "
"que la fin de l'animation sera utilisée à la place. [param start_time] ne "
"peut être égal à [param end_time]."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_time] and ending on [param end_time] in reverse.\n"
"This method is a shorthand for [method play_section] with [code]custom_speed "
"= -1.0[/code] and [code]from_end = true[/code], see its description for more "
"information."
msgstr ""
"Joue l'animation avec la clé [param name] et la section commençant à [param "
"start_time] et finissant à [param end_time], à l'envers.\n"
"Cette méthode est un raccourci pour [method play_section] avec "
"[code]custom_speed = -1.0[/code] et [code]from_end = true[/code], voir sa "
"description pour plus d'informations."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_marker] and ending on [param end_marker].\n"
"If the start marker is empty, the section starts from the beginning of the "
"animation. If the end marker is empty, the section ends on the end of the "
"animation. See also [method play]."
msgstr ""
"Joue l'animation avec la clé [param name] et la section commençant au "
"marqueur [param start_marker] et se terminant au marqueur [param "
"end_marker].\n"
"Si le marqueur de départ est vide, la section commence à partir du début de "
"l'animation. Si le marqueur de fin est vide, la section se termine à la fin "
"de l'animation. Voir aussi [method play]."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_marker] and ending on [param end_marker] in reverse.\n"
"This method is a shorthand for [method play_section_with_markers] with "
"[code]custom_speed = -1.0[/code] and [code]from_end = true[/code], see its "
"description for more information."
msgstr ""
"Joue l'animation avec la clé [param name] et la section commençant à [param "
"start_marker] et finissant à [param end_marker], à l'envers.\n"
"Cette méthode est un raccourci pour [method play_section_with_markers] avec "
"[code]custom_speed = -1.0[/code] et [code]from_end = true[/code], voir sa "
"description pour plus d'informations."

msgid ""
"See also [method AnimationMixer.capture].\n"
"You can use this method to use more detailed options for capture than those "
"performed by [member playback_auto_capture]. When [member "
"playback_auto_capture] is [code]false[/code], this method is almost the same "
"as the following:\n"
"[codeblock]\n"
"capture(name, duration, trans_type, ease_type)\n"
"play(name, custom_blend, custom_speed, from_end)\n"
"[/codeblock]\n"
"If [param name] is blank, it specifies [member assigned_animation].\n"
"If [param duration] is a negative value, the duration is set to the interval "
"between the current position and the first key, when [param from_end] is "
"[code]true[/code], uses the interval between the current position and the "
"last key instead.\n"
"[b]Note:[/b] The [param duration] takes [member speed_scale] into account, "
"but [param custom_speed] does not, because the capture cache is interpolated "
"with the blend result and the result may contain multiple animations."
msgstr ""
"Voir aussi [method AnimationMixer.capture].\n"
"Vous pouvez utiliser cette méthode pour utiliser des options plus détaillées "
"pour la capture que celles effectuées par [member playback_auto_capture]. "
"Lorsque [member playback_auto_capture] vaut [code]false[/code], cette méthode "
"est presque identique à ce qui suit :\n"
"[codeblock]\n"
"capture(name, duration, trans_type, ease_type)\n"
"play(name, custom_blend, custom_speed, from_end)\n"
"[/codeblock]\n"
"Si [param name] est vierge, il spécifie [member assigned_animation].\n"
"Si [param duration] est une valeur négative, la durée est définie à "
"l'intervalle entre la position actuelle et la première clé. Lorsque [param "
"from_end] vaut [code]true[/code], utilise l'intervalle entre la position "
"actuelle et la dernière clé à la place.\n"
"[b]Note :[/b] La [param duration] prend en compte [member speed_scale], mais "
"[param custom_speed] ne le fait pas, car le cache de capture est interpolé "
"avec le résultat du mélange et le résultat peut contenir plusieurs animations."

msgid ""
"Queues an animation for playback once the current animation and all "
"previously queued animations are done.\n"
"[b]Note:[/b] If a looped animation is currently playing, the queued animation "
"will never play unless the looped animation is stopped somehow."
msgstr ""
"Met en d'attente une animation pour lecture une fois que l'animation actuelle "
"et toutes les animations déjà en attente sont faites.\n"
"[b]Note :[/b] Si une animation bouclant joue actuellement, l'animation en "
"attente ne jouera jamais à moins que l'animation bouclant soit arrêtée."

msgid "Resets the current section. Does nothing if a section has not been set."
msgstr ""
"Réinitialise la section actuelle. Ne fait rien si une section n'a pas été "
"définie."

msgid ""
"Seeks the animation to the [param seconds] point in time (in seconds). If "
"[param update] is [code]true[/code], the animation updates too, otherwise it "
"updates at process time. Events between the current frame and [param seconds] "
"are skipped.\n"
"If [param update_only] is [code]true[/code], the method / audio / animation "
"playback tracks will not be processed.\n"
"[b]Note:[/b] Seeking to the end of the animation doesn't emit [signal "
"AnimationMixer.animation_finished]. If you want to skip animation and emit "
"the signal, use [method AnimationMixer.advance]."
msgstr ""
"Avance la lecture de l'animation à la position [param seconds] dans le temps "
"(en secondes). Si [param update] est [code]true[/code], l'animation se mettra "
"également à jour, sinon elle le sera au moment du traitement. Les événements "
"entre la trame actuelle et la position [param seconds] sont ignorés.\n"
"Si [param update_only] est [code]true[/code], les pistes de lecture de "
"méthode / audio / animation ne seront pas traitées.\n"
"[b]Note :[/b] Aller à la fin de l'animation n'émet pas le signal [signal "
"AnimationMixer.animation_finished]. Si vous souhaitez ignorer l'animation et "
"émettre le signal, utilisez plutôt [method AnimationMixer.advance]."

msgid ""
"Specifies a blend time (in seconds) between two animations, referenced by "
"their keys."
msgstr ""
"Spécifie un temps de mélange (en secondes) entre deux animations, référencées "
"par leurs clés."

msgid "Sets the call mode used for \"Call Method\" tracks."
msgstr "Définit le mode d'appel utilisé pour les pistes \"Appel de méthode\"."

msgid "Sets the process notification in which to update animations."
msgstr ""
"Définit la notification de traitement dans laquelle mettre à jour les "
"animations."

msgid "Sets the node which node path references will travel from."
msgstr ""
"Définit le nœud à partir duquel les références de chemin de nœud vont "
"commencer."

msgid ""
"Changes the start and end times of the section being played. The current "
"playback position will be clamped within the new section. See also [method "
"play_section]."
msgstr ""
"Change les temps de début et de fin de la section actuellement jouée. La "
"position de lecture actuelle sera bornée à l’intérieur la nouvelle section. "
"Voir aussi [method play_section]."

msgid ""
"Changes the start and end markers of the section being played. The current "
"playback position will be clamped within the new section. See also [method "
"play_section_with_markers].\n"
"If the argument is empty, the section uses the beginning or end of the "
"animation. If both are empty, it means that the section is not set."
msgstr ""
"Change les marqueurs de début et de fin de la section en cours de lecture. La "
"position de lecture actuelle sera bornée dans la nouvelle section. Voir aussi "
"[method play_section_with_markers].\n"
"Si l'argument est vide, la section utilise le début ou la fin de l'animation. "
"Si les deux sont vides, cela signifie que la section n'est pas définie."

msgid ""
"Stops the currently playing animation. The animation position is reset to "
"[code]0[/code] and the [code]custom_speed[/code] is reset to [code]1.0[/"
"code]. See also [method pause].\n"
"If [param keep_state] is [code]true[/code], the animation state is not "
"updated visually.\n"
"[b]Note:[/b] The method / audio / animation playback tracks will not be "
"processed by this method."
msgstr ""
"Arrête l'animation en cours de lecture. La position de l'animation est "
"réinitialisée à [code]0[/code] et la vitesse de lecture [code]custom_speed[/"
"code] est réinitialisée à [code]1.0[/code]. Voir aussi [method pause].\n"
"Si [param keep_state] vaut [code]true[/code], l'état d'animation n'est pas "
"mis à jour visuellement.\n"
"[b]Note :[/b] Les pistes de lecture de méthode / d'audio / d'animations ne "
"seront pas traitées par cette méthode."

msgid ""
"If playing, the current animation's key, otherwise, the animation last "
"played. When set, this changes the animation, but will not play it unless "
"already playing. See also [member current_animation]."
msgstr ""
"Si en lecture, la clé de l'animation actuelle, sinon, la dernière animation "
"jouée. Lorsque cela est défini, cela change l'animation, mais ne le jouera "
"pas à moins de jouer déjà. Voir aussi [member current_animation]."

msgid ""
"The key of the currently playing animation. If no animation is playing, the "
"property's value is an empty string. Changing this value does not restart the "
"animation. See [method play] for more information on playing animations.\n"
"[b]Note:[/b] While this property appears in the Inspector, it's not meant to "
"be edited, and it's not saved in the scene. This property is mainly used to "
"get the currently playing animation, and internally for animation playback "
"tracks. For more information, see [Animation]."
msgstr ""
"La clé de l'animation en cours de lecture. Si aucune animation ne joue, la "
"valeur de la propriété est une chaîne vide. Changer cette valeur ne redémarre "
"pas l'animation. Voir [method play] pour plus d'informations sur la lecture "
"d'animations.\n"
"[b]Note :[/b] Bien que cette propriété apparaisse dans l'inspecteur, elle "
"n'est pas censée être modifiée, et elle n'est pas sauvegardée dans la scène. "
"Cette propriété est principalement utilisée pour obtenir l'animation en cours "
"de lecture, et en interne pour les pistes de lecture d'animation. Pour plus "
"d'informations, voir [Animation]."

msgid "The length (in seconds) of the currently playing animation."
msgstr "La durée (en secondes) de l'animation actuellement jouée."

msgid "The position (in seconds) of the currently playing animation."
msgstr "La position (en secondes) de l'animation actuellement jouée."

msgid ""
"If [code]true[/code] and the engine is running in Movie Maker mode (see "
"[MovieWriter]), exits the engine with [method SceneTree.quit] as soon as an "
"animation is done playing in this [AnimationPlayer]. A message is printed "
"when the engine quits for this reason.\n"
"[b]Note:[/b] This obeys the same logic as the [signal "
"AnimationMixer.animation_finished] signal, so it will not quit the engine if "
"the animation is set to be looping."
msgstr ""
"Si [code]true[/code] et que le moteur fonctionne en mode Création de film "
"(voir [MovieWriter]), quitte le moteur avec [method SceneTree.quit] dès "
"qu'une animation a fini de jouer dans ce [AnimationPlayer]. Un message est "
"affiché lorsque le moteur quitte pour cette raison.\n"
"[b]Note :[/b] Cela obéit à la même logique que le signal [signal "
"AnimationMixer.animation_finished], de sorte qu'il fera pas quitter le moteur "
"si l'animation est définie pour jouer en boucle."

msgid ""
"If [code]true[/code], performs [method AnimationMixer.capture] before "
"playback automatically. This means just [method play_with_capture] is "
"executed with default arguments instead of [method play].\n"
"[b]Note:[/b] Capture interpolation is only performed if the animation "
"contains a capture track. See also [constant Animation.UPDATE_CAPTURE]."
msgstr ""
"Si [code]true[/code], effectue [method AnimationMixer.capture] avant la "
"lecture automatiquement. Cela signifie juste que [method play_with_capture] "
"est exécuté avec des arguments par défaut au lieu de [method play].\n"
"[b]Note :[/b] L'interpolation de capture n'est effectuée que si l'animation "
"contient une piste de capture. Voir aussi [constant Animation.UPDATE_CAPTURE]."

msgid ""
"See also [method play_with_capture] and [method AnimationMixer.capture].\n"
"If [member playback_auto_capture_duration] is negative value, the duration is "
"set to the interval between the current position and the first key."
msgstr ""
"Voir aussi [method play_with_capture] et [method AnimationMixer.capture].\n"
"Si [member playback_auto_capture_duration] est une valeur négative, la durée "
"est définie à l'intervalle entre la position actuelle et la première clé."

msgid ""
"The transition type of the capture interpolation. See also [enum "
"Tween.TransitionType]."
msgstr ""
"Le type de transition de l'interpolation de capture. Voir aussi [enum "
"Tween.TransitionType]."

msgid ""
"The default time in which to blend animations. Ranges from 0 to 4096 with "
"0.01 precision."
msgstr ""
"Le moment par défaut où les animations sont mélangées. L'intervalle va de 0 à "
"4096 avec une précision de 0,01."

msgid ""
"Emitted when a queued animation plays after the previous animation finished. "
"See also [method AnimationPlayer.queue].\n"
"[b]Note:[/b] The signal is not emitted when the animation is changed via "
"[method AnimationPlayer.play] or by an [AnimationTree]."
msgstr ""
"Émis lorsqu'une animation ajoutée à la file jouera après la fin de "
"l'animation précédente. Voir aussi [method AnimationPlayer.queue].\n"
"[b]Note :[/b] Le signal n'est pas émis lorsque l'animation est changée via "
"[method AnimationPlayer.play] ou par un [AnimationTree]."

msgid "Emitted when [member current_animation] changes."
msgstr "Émis lorsque [member current_animation] change."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]."
msgstr "Voir [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_IDLE]."
msgstr "Voir [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_IDLE]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_MANUAL]."
msgstr "Voir [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_MANUAL]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_DEFERRED]."
msgstr "Voir [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_DEFERRED]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_IMMEDIATE]."
msgstr ""
"Voir [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_IMMEDIATE]."

msgid ""
"Base class for [AnimationNode]s that hold one or multiple composite "
"animations. Usually used for [member AnimationTree.tree_root]."
msgstr ""
"Classe de base pour les [AnimationNode]s qui détiennent une ou plusieurs "
"animations composites. Habituellement utilisé pour [member "
"AnimationTree.tree_root]."

msgid ""
"[AnimationRootNode] is a base class for [AnimationNode]s that hold a complete "
"animation. A complete animation refers to the output of an "
"[AnimationNodeOutput] in an [AnimationNodeBlendTree] or the output of another "
"[AnimationRootNode]. Used for [member AnimationTree.tree_root] or in other "
"[AnimationRootNode]s.\n"
"Examples of built-in root nodes include [AnimationNodeBlendTree] (allows "
"blending nodes between each other using various modes), "
"[AnimationNodeStateMachine] (allows to configure blending and transitions "
"between nodes using a state machine pattern), [AnimationNodeBlendSpace2D] "
"(allows linear blending between [b]three[/b] [AnimationNode]s), "
"[AnimationNodeBlendSpace1D] (allows linear blending only between [b]two[/b] "
"[AnimationNode]s)."
msgstr ""
"[AnimationRootNode] est une classe de base pour les [AnimationNode]s qui "
"contiennent une animation complète. Une animation complète se réfère à la "
"sortie d'un [AnimationNodeOutput] dans un [AnimationNodeBlendTree] ou la "
"sortie d'un autre [AnimationRootNode]. Utilisé pour [member "
"AnimationTree.tree_root] ou dans d'autres [AnimationRootNode]s.\n"
"Les exemples de nœuds racine intégrés incluent [AnimationNodeBlendTree] "
"(permet de mélanger des nœuds entre eux avec plusieurs modes), "
"[AnimationNodeStateMachine] (permet de configurer le mélange et les "
"transitions entre des nœuds en utilisant un automate), "
"[AnimationNodeBlendSpace2D] (permet un mélange linéaire entre [b]trois[/b] "
"[AnimationNode]s), [AnimationNodeBlendSpace1D] (permet un mélange linéaire "
"seulement entre [b]deux[/b] [AnimationNode]s)."

msgid "A node used for advanced animation transitions in an [AnimationPlayer]."
msgstr ""
"Un nœud utilisé pour les transitions d'animation avancées dans un "
"[AnimationPlayer]."

msgid ""
"A node used for advanced animation transitions in an [AnimationPlayer].\n"
"[b]Note:[/b] When linked with an [AnimationPlayer], several properties and "
"methods of the corresponding [AnimationPlayer] will not function as expected. "
"Playback and transitions should be handled using only the [AnimationTree] and "
"its constituent [AnimationNode](s). The [AnimationPlayer] node should be used "
"solely for adding, deleting, and editing animations."
msgstr ""
"Un nœud utilisé pour des transitions d'animation avancées dans un "
"[AnimationPlayer].\n"
"[b]Note :[/b] Quand lié à un [AnimationPlayer], plusieurs propriétés et "
"méthodes de l'[AnimationPlayer] correspondant ne fonctionneront pas comme "
"prévu. La lecture et les transitions doivent être gérées en utilisant "
"seulement le [AnimationTree] et ses éléments [AnimationNode]s. Le nœud "
"[AnimationPlayer] doit être utilisé uniquement pour ajouter, supprimer et "
"éditer des animations."

msgid ""
"The path to the [Node] used to evaluate the [AnimationNode] [Expression] if "
"one is not explicitly specified internally."
msgstr ""
"Le chemin vers le [Node] utilisé pour évaluer l'[Expression] [AnimationNode] "
"si un n'est pas explicitement spécifiée en interne."

msgid "The path to the [AnimationPlayer] used for animating."
msgstr "Le chemin vers le [AnimationPlayer] utilisé pour l'animation."

msgid ""
"The root animation node of this [AnimationTree]. See [AnimationRootNode]."
msgstr ""
"Le nœud d'animation racine de cet [AnimationTree]. Voir [AnimationRootNode]."

msgid "Emitted when the [member anim_player] is changed."
msgstr "Émis quand [member anim_player] a changé."

msgid ""
"A region of 2D space that detects other [CollisionObject2D]s entering or "
"exiting it."
msgstr ""
"Une région d'espace 2D qui détecte d'autres [CollisionObject2D]s qui en "
"entrent ou en sortent."

msgid ""
"[Area2D] is a region of 2D space defined by one or multiple "
"[CollisionShape2D] or [CollisionPolygon2D] child nodes. It detects when other "
"[CollisionObject2D]s enter or exit it, and it also keeps track of which "
"collision objects haven't exited it yet (i.e. which one are overlapping it).\n"
"This node can also locally alter or override physics parameters (gravity, "
"damping) and route audio to custom audio buses.\n"
"[b]Note:[/b] Areas and bodies created with [PhysicsServer2D] might not "
"interact as expected with [Area2D]s, and might not emit signals or track "
"objects correctly."
msgstr ""
"[Area2D] est une région d'espace 2D définie par un ou plusieurs nœuds enfant "
"[CollisionShape2D] or [CollisionPolygon2D]. Elle détecte quand d'autres "
"[CollisionObject2D]s en entrent ou en sortent, et elle garde également la "
"trace de quels objets de collision n'en sont pas encore sortis (c.-à-d. "
"lesquels la chevauche).\n"
"Ce nœud peut également modifier ou redéfinir localement les paramètres "
"physiques (gravité, amortissement) et dévier l'audio vers des bus audio "
"personnalisés.\n"
"[b]Note:[/b] Les zones et corps créés avec [PhysicsServer2D] peuvent ne pas "
"interagir comme prévu avec les [Area2D]s, et peuvent ne pas émettre des "
"signaux ou suivre des objets correctement."

msgid "Using Area2D"
msgstr "Utiliser les Area2D"

msgid "2D Pong Demo"
msgstr "Démo 2D « Pong »"

msgid "2D Platformer Demo"
msgstr "Démo de jeu de plateforme en 2D"

msgid ""
"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
"CollisionObject2D.collision_layer] must be part of this area's [member "
"CollisionObject2D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Renvoie une liste des [Area2D] qui s'intersectent. Le [member "
"CollisionObject2D.collision_layer] de l'aire intersectant doit faire partie "
"du [member CollisionObject2D.collision_mask] de cette aire pour être "
"détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps) cette liste est modifiée une fois pendant l'étape physique, pas "
"immédiatement après le déplacement des objets. Considérez plutôt utiliser des "
"signaux."

msgid ""
"Returns a list of intersecting [PhysicsBody2D]s and [TileMap]s. The "
"overlapping body's [member CollisionObject2D.collision_layer] must be part of "
"this area's [member CollisionObject2D.collision_mask] in order to be "
"detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Renvoie la liste des [PhysicsBody2D]s et [TileMap]s en intersection. La "
"couche [member CollisionObject2D.collision_layer] du corps chevauchant doit "
"être dans le masque [member CollisionObject2D.collision_mask] de cette zone "
"pour être détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps) cette liste est modifiée une fois pendant l'étape physique, pas "
"immédiatement après le déplacement des objets. Considérez plutôt utiliser des "
"signaux."

msgid ""
"Returns [code]true[/code] if intersecting any [Area2D]s, otherwise returns "
"[code]false[/code]. The overlapping area's [member "
"CollisionObject2D.collision_layer] must be part of this area's [member "
"CollisionObject2D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping areas is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Renvoie [code]true[/code] si la zone chevauche n'importe quelle [Area2D], "
"sinon renvoie [code]false[/code]. La couche [member "
"CollisionObject2D.collision_layer] de la zone chevauchante doit faire partie "
"du [member CollisionObject2D.collision_mask] de cette zone afin d'être "
"détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps), cette liste est modifiée une fois pendant l'étape physique, mais pas "
"immédiatement après le déplacement des objets. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns [code]true[/code] if intersecting any [PhysicsBody2D]s or [TileMap]s, "
"otherwise returns [code]false[/code]. The overlapping body's [member "
"CollisionObject2D.collision_layer] must be part of this area's [member "
"CollisionObject2D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping bodies is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Renvoie [code]true[/code] si la zone intersecte au moins un [PhysicsBody2D] "
"ou une [TileMap], sinon renvoie [code]false[/code]. La couche [member "
"CollisionObject2D.collision_layer] du corps chevauchant doit faire partie du "
"masque de collision [member CollisionObject2D.collision_mask] de cette zone "
"pour être détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps), cette liste est modifiée une fois pendant l'étape physique, mais pas "
"immédiatement après le déplacement des objets. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns [code]true[/code] if the given [Area2D] intersects or overlaps this "
"[Area2D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, the list of overlaps is updated once per frame and before "
"the physics step. Consider using signals instead."
msgstr ""
"Renvoie [code]true[/code] si l'[Area2D] donnée intersecte ou chevauche cette "
"[Area2D], [code]false[/code] sinon.\n"
"[b]Note :[/b] Le résultat de ce test n'est pas immédiat après le déplacement "
"des objets. Pour les performances, la liste des chevauchements est mise à "
"jour une fois par trame et avant l'étape physique. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns [code]true[/code] if the given physics body intersects or overlaps "
"this [Area2D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead.\n"
"The [param body] argument can either be a [PhysicsBody2D] or a [TileMap] "
"instance. While TileMaps are not physics bodies themselves, they register "
"their tiles with collision shapes as a virtual physics body."
msgstr ""
"Renvoie [code]true[/code] si le corps physique donné intersecte ou chevauche "
"cette [Area2D], [code]false[/code] sinon.\n"
"[b]Note :[/b] Le résultat de ce test n'est pas immédiat après le déplacement "
"des objets. Pour les performances, la liste des chevauchements est mise à "
"jour une fois par trame et avant l'étape physique. Envisagez d'utiliser des "
"signaux à la place.\n"
"L'argument [param body] peut être une instance de [PhysicsBody2D] ou de "
"[TileMap]. Bien que les TileMaps ne sont pas des corps physiques elles-mêmes, "
"elles enregistrent leurs tuiles avec des formes de collision comme un corps "
"physique virtuel."

msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/2d/default_angular_damp] for more details "
"about damping."
msgstr ""
"La vitesse à laquelle les objets arrêtent de tourner dans cette zone. "
"Représente la vitesse angulaire perdue par seconde.\n"
"Voir [member ProjectSettings.physics/2d/default_angular_damp] pour plus de "
"détails sur l'amortissement."

msgid "Override mode for angular damping calculations within this area."
msgstr ""
"Mode de redéfinition pour les calculs d'amortissement angulaire dans cette "
"zone."

msgid "The name of the area's audio bus."
msgstr "Le nom du bus audio de l'aire."

msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
"Si [code]true[/code], le bus audio de la zone remplace le bus audio par "
"défaut."

msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity direction. This is useful to alter the force of "
"gravity without altering its direction."
msgstr ""
"L'intensité de gravité de la zone (en pixels par seconde au carré). Cette "
"valeur multiplie la direction de la gravité. Ceci est utile pour modifier la "
"force de la gravité sans modifier sa direction."

msgid "The area's gravity vector (not normalized)."
msgstr "Le vecteur de gravité de la zone (non normalisé)."

msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_point_center]). See also [member gravity_space_override]."
msgstr ""
"Si [code]true[/code], la gravité est calculée à partir d'un point (défini via "
"[member gravity_point_center]). Voir aussi [member gravity_space_override]."

msgid ""
"If gravity is a point (see [member gravity_point]), this will be the point of "
"attraction."
msgstr ""
"Si la gravité est un point (voir [member gravity_point]), ce sera le point "
"d'attraction."

msgid ""
"The distance at which the gravity strength is equal to [member gravity]. For "
"example, on a planet 100 pixels in radius with a surface gravity of 4.0 px/"
"s², set the [member gravity] to 4.0 and the unit distance to 100.0. The "
"gravity will have falloff according to the inverse square law, so in the "
"example, at 200 pixels from the center the gravity will be 1.0 px/s² (twice "
"the distance, 1/4th the gravity), at 50 pixels it will be 16.0 px/s² (half "
"the distance, 4x the gravity), and so on.\n"
"The above is true only when the unit distance is a positive number. When this "
"is set to 0.0, the gravity will be constant regardless of distance."
msgstr ""
"La distance à laquelle la force de la gravité est égale à [member gravity]. "
"Par exemple, sur une planète de 100 mètres de rayon avec une gravité de "
"surface de 4.0 px/s², définissez la [member gravity] à 4.0 et la distance "
"unité à 100.0. La gravité aura une décroissance selon la loi carrée inverse, "
"donc dans l'exemple, à 200 pixels du centre la gravité sera de 1.0 px/s² "
"(deux fois la distance, 1/4 de la gravité), à 50 pixels elle sera de 16.0 px/"
"s² (la moitié de la distance, 4x la gravité), et ainsi de suite.\n"
"L’exemple ci-dessus est vrai seulement lorsque la distance unité est un "
"nombre positif. Lorsque elle est fixée à 0.0, la gravité sera constante "
"indépendamment de la distance."

msgid "Override mode for gravity calculations within this area."
msgstr "Mode de redéfinition pour les calculs de gravité dans cette zone."

msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
"about damping."
msgstr ""
"La vitesse à laquelle les objets arrêtent de se déplacer dans cette zone. "
"Représente la vitesse linéaire perdue par seconde.\n"
"Voir [member ProjectSettings.physics/2d/default_linear_damp] pour plus de "
"détails sur l'amortissement."

msgid "Override mode for linear damping calculations within this area."
msgstr ""
"Mode de redéfinition pour les calculs d'amortissement linéaire dans cette "
"zone."

msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
"Si [code]true[/code], les autres aires surveillantes peuvent détecter cette "
"aire."

msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
"Si [code]true[/code], l'aire détecte les corps qui y entrent ou qui en "
"sortent."

msgid ""
"The area's priority. Higher priority areas are processed first. The "
"[World2D]'s physics is always processed last, after all areas."
msgstr ""
"La priorité de la zone. Les zones de plus haute priorité seront traitées en "
"premier. La physique du [World2D] est toujours traitée en dernier, après "
"toutes les zones."

msgid ""
"Emitted when the received [param area] enters this area. Requires [member "
"monitoring] to be set to [code]true[/code]."
msgstr ""
"Émis quand la zone [param area] reçue entre dans cette zone. Nécessite que "
"[member monitoring] soit défini à [code]true[/code]."

msgid ""
"Emitted when the received [param area] exits this area. Requires [member "
"monitoring] to be set to [code]true[/code]."
msgstr ""
"Émis quand la zone [param area] reçue quitte cette zone. Nécessite que "
"[member monitoring] soit défini à [code]true[/code]."

msgid ""
"Emitted when a [Shape2D] of the received [param area] enters a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param area_shape_index] contain indices of the "
"interacting shapes from this area and the other area, respectively. [param "
"area_rid] contains the [RID] of the other area. These values can be used with "
"the [PhysicsServer2D].\n"
"[b]Example:[/b] Get the [CollisionShape2D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var other_shape_owner = area.shape_find_owner(area_shape_index)\n"
"var other_shape_node = area.shape_owner_get_owner(other_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Émis lorsqu'une [Shape2D] de la zone [param area] reçue entre dans une forme "
"de cette zone. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"[param local_shape_index] et [param area_shape_index] contiennent les indices "
"des formes en interaction de cette zone et de l'autre, respectivement. [param "
"area_rid] contient le [RID] de l'autre zone. Ces valeurs peuvent être "
"utilisées avec le [PhysicsServer2D].\n"
"[b]Exemple :[/b] Obtenez le nœud [CollisionShape2D] depuis l'index de "
"forme :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var autre_proprietaire_forme = zone.shape_find_owner(area_shape_index)\n"
"var autre_noeud_forme = zone.shape_owner_get_owner(autre_proprietaire_forme)\n"
"\n"
"var proprietaire_forme_local = shape_find_owner(local_shape_index)\n"
"var noeud_forme_local = shape_owner_get_owner(proprietaire_forme_local)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape2D] of the received [param area] exits a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"See also [signal area_shape_entered]."
msgstr ""
"Émis lorsqu'une [Shape2D] de la zone [param area] reçue sort d'une forme de "
"cette zone. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"Voir aussi [signal area_shape_entered]."

msgid ""
"Emitted when the received [param body] enters this area. [param body] can be "
"a [PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] "
"has collision shapes configured. Requires [member monitoring] to be set to "
"[code]true[/code]."
msgstr ""
"Émis lorsque le corps [param body] reçu entre dans cette zone. [param body] "
"peut être un [PhysicsBody2D] ou une [TileMap]. Les [TileMap]s sont détectées "
"si leur [TileSet] a des formes de collision configurées. Nécessite que "
"[member monitoring] soit défini à [code]true[/code]."

msgid ""
"Emitted when the received [param body] exits this area. [param body] can be a "
"[PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] "
"has collision shapes configured. Requires [member monitoring] to be set to "
"[code]true[/code]."
msgstr ""
"Émis lorsque le corps [param body] reçu quitte cette zone. [param body] peut "
"être un [PhysicsBody2D] ou une [TileMap]. Les [TileMap]s sont détectées si "
"leur [TileSet] a des formes de collision configurées. Nécessite que [member "
"monitoring] soit défini à [code]true[/code]."

msgid ""
"Emitted when a [Shape2D] of the received [param body] enters a shape of this "
"area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are "
"detected if their [TileSet] has collision shapes configured. Requires [member "
"monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param body_shape_index] contain indices of the "
"interacting shapes from this area and the interacting body, respectively. "
"[param body_rid] contains the [RID] of the body. These values can be used "
"with the [PhysicsServer2D].\n"
"[b]Example:[/b] Get the [CollisionShape2D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var body_shape_owner = body.shape_find_owner(body_shape_index)\n"
"var body_shape_node = body.shape_owner_get_owner(body_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Émis lorsqu'une [Shape2D] du corps [param body] reçu entre dans une forme de "
"cette zone. [param body] peut être un [PhysicsBody2D] ou une [TileMap]. Les "
"[TileMap]s sont détectées si leur [TileSet] a des formes de collision "
"configurées. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"[param local_shape_index] et [param body_shape_index] contiennent les indices "
"des formes en interaction de cette zone et du corps en interaction, "
"respectivement. [param body_rid] contient le [RID] du corps. Ces valeurs "
"peuvent être utilisées avec le [PhysicsServer2D].\n"
"[b]Exemple :[/b] Obtenez le nœud [CollisionShape2D] depuis l'index de "
"forme :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var autre_proprietaire_forme = zone.shape_find_owner(body_shape_index)\n"
"var autre_noeud_forme = zone.shape_owner_get_owner(autre_proprietaire_forme)\n"
"\n"
"var proprietaire_forme_local = shape_find_owner(local_shape_index)\n"
"var noeud_forme_local = shape_owner_get_owner(proprietaire_forme_local)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape2D] of the received [param body] exits a shape of this "
"area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are "
"detected if their [TileSet] has collision shapes configured. Requires [member "
"monitoring] to be set to [code]true[/code].\n"
"See also [signal body_shape_entered]."
msgstr ""
"Émis lorsqu'une [Shape2D] du corps [param body] reçu sort d'une forme de "
"cette zone. [param body] peut être un [PhysicsBody2D] ou une [TileMap]. Les "
"[TileMap]s sont détectées si leur [TileSet] a des formes de collision "
"configurées. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"Voir aussi [signal body_shape_entered]."

msgid "This area does not affect gravity/damping."
msgstr "Cette aire n'influe pas sur la gravité/amortissement."

msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
"Cette zone ajoute les valeurs de gravité/amortissement à tout ce qui a été "
"calculé jusqu'à présent (dans l'ordre de [member priority])."

msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order), ignoring any lower priority areas."
msgstr ""
"Cette zone ajoute sa valeur de gravité/amortissement à tout ce qui a été "
"calculé pour le moment (dans l'ordre de [member priority]), en ignorant les "
"zones de plus basse priorité."

msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any lower "
"priority areas."
msgstr ""
"Cette zone remplace n'importe quelle gravité/amortissement, même les valeurs "
"par défaut, en ignorant les zones de plus basse priorité."

msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
msgstr ""
"Cette zone remplace n'importe quelle gravité/amortissement calculé pour le "
"moment (dans l'ordre de [member priority]), mais continue de calculer le "
"reste des zones."

msgid ""
"A region of 3D space that detects other [CollisionObject3D]s entering or "
"exiting it."
msgstr ""
"Une région de l’espace 3D qui détecte les autres [CollisionObject3D]s qui "
"l'entrent ou en sortent."

msgid ""
"[Area3D] is a region of 3D space defined by one or multiple "
"[CollisionShape3D] or [CollisionPolygon3D] child nodes. It detects when other "
"[CollisionObject3D]s enter or exit it, and it also keeps track of which "
"collision objects haven't exited it yet (i.e. which one are overlapping it).\n"
"This node can also locally alter or override physics parameters (gravity, "
"damping) and route audio to custom audio buses.\n"
"[b]Note:[/b] Areas and bodies created with [PhysicsServer3D] might not "
"interact as expected with [Area3D]s, and might not emit signals or track "
"objects correctly.\n"
"[b]Warning:[/b] Using a [ConcavePolygonShape3D] inside a [CollisionShape3D] "
"child of this node (created e.g. by using the [b]Create Trimesh Collision "
"Sibling[/b] option in the [b]Mesh[/b] menu that appears when selecting a "
"[MeshInstance3D] node) may give unexpected results, since this collision "
"shape is hollow. If this is not desired, it has to be split into multiple "
"[ConvexPolygonShape3D]s or primitive shapes like [BoxShape3D], or in some "
"cases it may be replaceable by a [CollisionPolygon3D]."
msgstr ""
"[Area3D] est une région de l'espace 3D définie par un ou plusieurs nœuds "
"[CollisionShape3D] ou [CollisionPolygon3D] enfants. Elle détecte quand "
"d'autres [CollisionObject3D] l'entrent ou en sortent, et elle garde également "
"la trace de quels objets en collision ne sont pas encore sortis (c.-à-d. "
"lesquels la chevauchent).\n"
"Ce nœud peut également altérer ou redéfinir localement les paramètres "
"physiques (gravité, amortissement) et rediriger l'audio vers des bus audio "
"personnalisés.\n"
"[b]Note :[/b] Les zones et les corps créés avec le [PhysicsServer3D] peuvent "
"ne pas interagir comme prévu avec les [Area3D]s, et peuvent ne pas émettre "
"des signaux ou suivre des objets correctement.\n"
"[b]Attention :[/b] Utiliser un [ConcavePolygonShape3D] à l'intérieur d'un "
"[CollisionShape3D] enfant de ce noeud (créé par exemple en utilisant l'option "
"[b]Créer maillage de collision frère[/b] dans le menu [b]Maillage[/b] qui "
"apparaît lors de la sélection d'un nœud [MeshInstance3D]) peut mener à des "
"résultats inattendus, car la forme de collision est creuse. Si cela n'est pas "
"souhaité, il doit être divisé en plusieurs [ConvexPolygonShape3D]s ou formes "
"primitives comme [BoxShape3D], ou dans certains cas il peut être remplacé par "
"un [CollisionPolygon3D]."

msgid "GUI in 3D Viewport Demo"
msgstr "Démo de GUI dans un Viewport 3D"

msgid ""
"Returns a list of intersecting [Area3D]s. The overlapping area's [member "
"CollisionObject3D.collision_layer] must be part of this area's [member "
"CollisionObject3D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Renvoie une liste des [Area3D]s en intersection. Le [member "
"CollisionObject3D.collision_layer] de la zone chevauchante doit faire partie "
"du [member CollisionObject3D.collision_mask] de la zone afin d'être détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps), cette liste est modifiée une fois pendant l'étape physique, mais pas "
"immédiatement après le déplacement des objets. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns a list of intersecting [PhysicsBody3D]s and [GridMap]s. The "
"overlapping body's [member CollisionObject3D.collision_layer] must be part of "
"this area's [member CollisionObject3D.collision_mask] in order to be "
"detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Renvoie une liste des [PhysicsBody3D]s et [GridMap]s en intersection. Le "
"[member CollisionObject3D.collision_layer] du corps chevauchant doit faire "
"partie du [member CollisionObject3D.collision_mask] de la zone afin d'être "
"détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps), cette liste est modifiée une fois pendant l'étape physique, mais pas "
"immédiatement après le déplacement des objets. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns [code]true[/code] if intersecting any [Area3D]s, otherwise returns "
"[code]false[/code]. The overlapping area's [member "
"CollisionObject3D.collision_layer] must be part of this area's [member "
"CollisionObject3D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping areas is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Renvoie [code]true[/code] si la zone chevauche n'importe quelle [Area3D], "
"sinon renvoie [code]false[/code]. Le [member "
"CollisionObject3D.collision_layer] de la zone chevauchante doit faire parti "
"du [member CollisionObject3D.collision_mask] de cette zone afin d'être "
"détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps), cette liste est modifiée une fois pendant l'étape physique, mais pas "
"immédiatement après le déplacement des objets. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns [code]true[/code] if intersecting any [PhysicsBody3D]s or [GridMap]s, "
"otherwise returns [code]false[/code]. The overlapping body's [member "
"CollisionObject3D.collision_layer] must be part of this area's [member "
"CollisionObject3D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping bodies is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Renvoie [code]true[/code] si la zone chevauche n'importe quel [PhysicsBody3D] "
"ou [GridMap], sinon renvoie [code]false[/code]. Le [member "
"CollisionObject3D.collision_layer] du corps chevauchant doit faire parti du "
"[member CollisionObject3D.collision_mask] de cette zone afin d'être détecté.\n"
"Pour des raisons de performance (les collisions sont toutes traitées en même "
"temps), cette liste est modifiée une fois pendant l'étape physique, mais pas "
"immédiatement après le déplacement des objets. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns [code]true[/code] if the given [Area3D] intersects or overlaps this "
"[Area3D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead."
msgstr ""
"Renvoie [code]true[/code] si l'[Area3D] donné intersecte ou chevauche cette "
"[Area3D], [code]false[/code] sinon.\n"
"[b]Note :[/b] Le résultat de ce test n'est pas immédiat après le déplacement "
"des objets. Pour les performances, la liste des chevauchements est mise à "
"jour une fois par trame et avant l'étape physique. Envisagez d'utiliser des "
"signaux à la place."

msgid ""
"Returns [code]true[/code] if the given physics body intersects or overlaps "
"this [Area3D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead.\n"
"The [param body] argument can either be a [PhysicsBody3D] or a [GridMap] "
"instance. While GridMaps are not physics body themselves, they register their "
"tiles with collision shapes as a virtual physics body."
msgstr ""
"Renvoie [code]true[/code] si le corps physique donné intersecte ou chevauche "
"cette [Area3D], sinon renvoie [code]false[/code].\n"
"[b]Note :[/b] Le résultat de cet essai n'est pas immédiat après le "
"déplacement des objets. Pour les performances, la liste des chevauchements "
"est mise à jour une fois par trame et avant l'étape physique. Envisagez "
"d'utiliser des signaux à la place.\n"
"L'argument [param body] peut être une instance [PhysicsBody3D] ou [GridMap]. "
"Bien que les GridMaps ne sont pas un corps physique eux-mêmes, ils "
"enregistrent leurs tuiles avec des formes de collision comme un corps "
"physique virtuel."

msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/3d/default_angular_damp] for more details "
"about damping."
msgstr ""
"La vitesse à laquelle les objets s'arrêtent de tourner dans cette zone. "
"Représente la vitesse angulaire perdue par seconde.\n"
"Voir [member ProjectSettings.physics/3d/default_angular_damp] pour plus de "
"détails sur l'amortissement."

msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity direction. This is useful to alter the force of "
"gravity without altering its direction."
msgstr ""
"L'intensité de la gravité de la zone (en mètres par seconde au carré). Cette "
"valeur multiplie le vecteur de gravité. Ceci est utile pour modifier la force "
"de gravité sans modifier sa direction."

msgid ""
"The distance at which the gravity strength is equal to [member gravity]. For "
"example, on a planet 100 meters in radius with a surface gravity of 4.0 m/s², "
"set the [member gravity] to 4.0 and the unit distance to 100.0. The gravity "
"will have falloff according to the inverse square law, so in the example, at "
"200 meters from the center the gravity will be 1.0 m/s² (twice the distance, "
"1/4th the gravity), at 50 meters it will be 16.0 m/s² (half the distance, 4x "
"the gravity), and so on.\n"
"The above is true only when the unit distance is a positive number. When this "
"is set to 0.0, the gravity will be constant regardless of distance."
msgstr ""
"La distance à laquelle la force de la gravité est égale à [member gravity]. "
"Par exemple, sur une planète de 100 mètres de rayon avec une gravité de "
"surface de 4.0 m/s², définissez la [member gravity] à 4.0 et la distance "
"unité à 100.0. La gravité aura une décroissance selon la loi carrée inverse, "
"donc dans l'exemple, à 200 mètres du centre la gravité sera de 1.0 m/s² (deux "
"fois la distance, 1/4 de la gravité), à 50 mètres elle sera de 16.0 m/s² (la "
"moitié de la distance, 4x la gravité), et ainsi de suite.\n"
"L’exemple ci-dessus est vrai seulement lorsque la distance unité est un "
"nombre positif. Lorsque elle est fixée à 0.0, la gravité sera constante "
"indépendamment de la distance."

msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
"about damping."
msgstr ""
"La vitesse à laquelle les objets arrêtent de se déplacer dans cette zone. "
"Représente la vitesse linéaire perdue par seconde.\n"
"Voir [member ProjectSettings.physics/3d/default_linear_damp] pour plus de "
"détails sur l'amortissement."

msgid ""
"The area's priority. Higher priority areas are processed first. The "
"[World3D]'s physics is always processed last, after all areas."
msgstr ""
"La priorité de la zone. Les zone de plus hautes priorités seront gérées en "
"premier. La physique du [World3D] est toujours traitée en dernier, après "
"toutes les zones."

msgid ""
"The degree to which this area applies reverb to its associated audio. Ranges "
"from [code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
msgstr ""
"La mesure dans laquelle la zone applique la verbalisation à l'audio associé. "
"Les valeurs vont de [code]0[/code] à [code]1[/code] avec une précision de "
"[code]0.1[/code]."

msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
"Si [code]true[/code], la zone applique de la réverbération à l'audio qui lui "
"est associé."

msgid "The name of the reverb bus to use for this area's associated audio."
msgstr ""
"Le nom de bus de réverbération à utiliser pour l'audio associé à cette zone."

msgid ""
"The degree to which this area's reverb is a uniform effect. Ranges from "
"[code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
msgstr ""
"Le degré de réverbération de cette zone est un effet uniforme. L'intervalle "
"va de [code]0[/code] à [code]1[/code] avec une précision de [code]0.1[/code]."

msgid ""
"The exponential rate at which wind force decreases with distance from its "
"origin.\n"
"[b]Note:[/b] This wind force only applies to [SoftBody3D] nodes. Other "
"physics bodies are currently not affected by wind."
msgstr ""
"Le taux exponentiel auquel la force du vent diminue avec la distance à son "
"origine.\n"
"[b]Note :[/b] Cette force du vent ne s'applique qu'aux nœuds [SoftBody3D]. "
"Les autres corps physiques ne sont actuellement pas affectés par le vent."

msgid ""
"The magnitude of area-specific wind force.\n"
"[b]Note:[/b] This wind force only applies to [SoftBody3D] nodes. Other "
"physics bodies are currently not affected by wind."
msgstr ""
"La magnitude de la force du vent spécifique à la zone.\n"
"[b]Note :[/b] Cette force du vent ne s'applique qu'aux nœuds [SoftBody3D]. "
"Les autres corps de physique ne sont actuellement pas affectés par le vent."

msgid ""
"The [Node3D] which is used to specify the direction and origin of an area-"
"specific wind force. The direction is opposite to the z-axis of the "
"[Node3D]'s local transform, and its origin is the origin of the [Node3D]'s "
"local transform.\n"
"[b]Note:[/b] This wind force only applies to [SoftBody3D] nodes. Other "
"physics bodies are currently not affected by wind."
msgstr ""
"Le [Node3D] qui est utilisé pour préciser la direction et l'origine d'une "
"force du vent spécifique à la zone. La direction est opposée à l'axe z de la "
"transformation locale du [Node3D], et son origine est l'origine de la "
"transformation locale du [Node3D].\n"
"[b]Note :[/b] Cette force du vent ne s'applique qu'aux nœuds [SoftBody3D]. "
"Les autres corps physiques ne sont actuellement pas affectés par le vent."

msgid ""
"Emitted when a [Shape3D] of the received [param area] enters a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param area_shape_index] contain indices of the "
"interacting shapes from this area and the other area, respectively. [param "
"area_rid] contains the [RID] of the other area. These values can be used with "
"the [PhysicsServer3D].\n"
"[b]Example:[/b] Get the [CollisionShape3D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var other_shape_owner = area.shape_find_owner(area_shape_index)\n"
"var other_shape_node = area.shape_owner_get_owner(other_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Émis lorsqu'une [Shape3D] de la zone [param area] reçue entre dans une forme "
"de cette zone. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"[param local_shape_index] et [param area_shape_index] contiennent les indices "
"des formes en interaction de cette zone et de l'autre, respectivement. [param "
"area_rid] contient le [RID] de l'autre zone. Ces valeurs peuvent être "
"utilisées avec le [PhysicsServer3D].\n"
"[b]Exemple :[/b] Obtenez le nœud [CollisionShape3D] depuis l'index de "
"forme :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var autre_proprietaire_forme = zone.shape_find_owner(area_shape_index)\n"
"var autre_noeud_forme = zone.shape_owner_get_owner(autre_proprietaire_forme)\n"
"\n"
"var proprietaire_forme_local = shape_find_owner(local_shape_index)\n"
"var noeud_forme_local = shape_owner_get_owner(proprietaire_forme_local)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape3D] of the received [param area] exits a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"See also [signal area_shape_entered]."
msgstr ""
"Émis lorsqu'une [Shape3D] de la zone [param area] reçue sort d'une forme de "
"cette zone. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"Voir aussi [signal area_shape_entered]."

msgid ""
"Emitted when the received [param body] enters this area. [param body] can be "
"a [PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their "
"[MeshLibrary] has collision shapes configured. Requires [member monitoring] "
"to be set to [code]true[/code]."
msgstr ""
"Émis lorsque le corps [param body] reçu entre dans cette zone. [param body] "
"peut être un [PhysicsBody3D] ou une [GridMap]. Les [GridMap]s sont détectées "
"si leur [MeshLibrary] a des formes de collision configurées. Nécessite que "
"[member monitoring] soit défini à [code]true[/code]."

msgid ""
"Emitted when the received [param body] exits this area. [param body] can be a "
"[PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their "
"[MeshLibrary] has collision shapes configured. Requires [member monitoring] "
"to be set to [code]true[/code]."
msgstr ""
"Émis lorsque le corps [param body] reçu quitte cette zone. [param body] peut "
"être un [PhysicsBody3D] ou une [GridMap]. Les [GridMap]s sont détectées si "
"leur [MeshLibrary] a des formes de collision configurées. Nécessite que "
"[member monitoring] soit défini à [code]true[/code]."

msgid ""
"Emitted when a [Shape3D] of the received [param body] enters a shape of this "
"area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are "
"detected if their [MeshLibrary] has collision shapes configured. Requires "
"[member monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param body_shape_index] contain indices of the "
"interacting shapes from this area and the interacting body, respectively. "
"[param body_rid] contains the [RID] of the body. These values can be used "
"with the [PhysicsServer3D].\n"
"[b]Example:[/b] Get the [CollisionShape3D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var body_shape_owner = body.shape_find_owner(body_shape_index)\n"
"var body_shape_node = body.shape_owner_get_owner(body_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Émis lorsqu'une [Shape3D] du corps [param body] reçu entre dans une forme de "
"cette zone. [param body] peut être un [PhysicsBody3D] ou une [GridMap]. Les "
"[GridMap]s sont détectées si leur [MeshLibrary] a des formes de collision "
"configurées. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"[param local_shape_index] et [param body_shape_index] contiennent les indices "
"des formes en interaction de cette zone et du corps en interaction, "
"respectivement. [param body_rid] contient le [RID] du corps. Ces valeurs "
"peuvent être utilisées avec le [PhysicsServer3D].\n"
"[b]Exemple :[/b] Obtenez le nœud [CollisionShape3D] depuis l'index de "
"forme :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var autre_proprietaire_forme = zone.shape_find_owner(body_shape_index)\n"
"var autre_noeud_forme = zone.shape_owner_get_owner(autre_proprietaire_forme)\n"
"\n"
"var proprietaire_forme_local = shape_find_owner(local_shape_index)\n"
"var noeud_forme_local = shape_owner_get_owner(proprietaire_forme_local)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape3D] of the received [param body] exits a shape of this "
"area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are "
"detected if their [MeshLibrary] has collision shapes configured. Requires "
"[member monitoring] to be set to [code]true[/code].\n"
"See also [signal body_shape_entered]."
msgstr ""
"Émis lorsqu'une [Shape3D] du corps [param body] reçu sort d'une forme de "
"cette zone. [param body] peut être un [PhysicsBody3D] ou une [GridMap]. Les "
"[GridMap]s sont détectées si leur [MeshLibrary] a des formes de collision "
"configurées. Nécessite que [member monitoring] soit défini à [code]true[/"
"code].\n"
"Voir aussi [signal body_shape_entered]."

msgid "A built-in data structure that holds a sequence of elements."
msgstr "Une structure de données intégrée qui contient une suite d'éléments."

msgid ""
"An array data structure that can contain a sequence of elements of any "
"[Variant] type by default. Values can optionally be constrained to a specific "
"type by creating a [i]typed array[/i]. Elements are accessed by a numerical "
"index starting at [code]0[/code]. Negative indices are used to count from the "
"back ([code]-1[/code] is the last element, [code]-2[/code] is the second to "
"last, etc.).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = [\"First\", 2, 3, \"Last\"]\n"
"print(array[0])  # Prints \"First\"\n"
"print(array[2])  # Prints 3\n"
"print(array[-1]) # Prints \"Last\"\n"
"\n"
"array[1] = \"Second\"\n"
"print(array[1])  # Prints \"Second\"\n"
"print(array[-3]) # Prints \"Second\"\n"
"\n"
"# This typed array can only contain integers.\n"
"# Attempting to add any other type will result in an error.\n"
"var typed_array: Array[int] = [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [\"First\", 2, 3, \"Last\"];\n"
"GD.Print(array[0]); // Prints \"First\"\n"
"GD.Print(array[2]); // Prints 3\n"
"GD.Print(array[^1]); // Prints \"Last\"\n"
"\n"
"array[1] = \"Second\";\n"
"GD.Print(array[1]); // Prints \"Second\"\n"
"GD.Print(array[^3]); // Prints \"Second\"\n"
"\n"
"// This typed array can only contain integers.\n"
"// Attempting to add any other type will result in an error.\n"
"Godot.Collections.Array<int> typedArray = [1, 2, 3];\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Arrays are always passed by [b]reference[/b]. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate].\n"
"[b]Note:[/b] Erasing elements while iterating over arrays is [b]not[/b] "
"supported and will result in unpredictable behavior.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedInt64Array] versus [code]Array[int]"
"[/code]). Also, packed arrays consume less memory. As a downside, packed "
"arrays are less flexible as they don't offer as many convenience methods such "
"as [method Array.map]. Typed arrays are in turn faster to iterate on and "
"modify than untyped arrays."
msgstr ""
"Une structure de données en tableau qui peut contenir une suite d'éléments de "
"n'importe quel type [Variant] par défaut. Les valeurs peuvent être limitées à "
"un type spécifique en créant un [i]tableau typé[/i]. Les éléments sont "
"accessibles par un indice numérique commençant à [code]0[/code]. Les indices "
"négatifs peuvent être utilisés pour obtenir une position à partir de la fin "
"du tableau ([code]-1[/code] est le dernier élément, [code]-2[/code] est "
"l'avant-dernier, etc...).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tableau= [\"Premier\", 2, 3, \"Dernier\"]\n"
"print(tableau[0])  # Affiche \"Premier\"\n"
"print(tableau[2])  # Affiche 3\n"
"print(tableau[-1]) # Affiche \"Dernier\"\n"
"\n"
"array[1] = \"Second\"\n"
"print(array[1])  # Affiche \"Second\"\n"
"print(array[-3]) # Affiche \"Second\"\n"
"\n"
"# Ce tableau typé ne peut contenir que des nombres entiers.\n"
"# Tenter d'ajouter un autre type retourne une erreur.\n"
"var tableau_typé: Array[int] = [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array tableau= [\"Premier\", 2, 3, \"Dernier\"];\n"
"GD.Print(array[0]); // Affiche \"Premier\"\n"
"GD.Print(array[2]); // Affiche 3\n"
"GD.Print(array[^1]); // Affiche \"Dernier\"\n"
"\n"
"array[1] = \"Second\";\n"
"GD.Print(array[1]); // Affiche \"Second\"\n"
"GD.Print(array[^3]); // Affiche \"Second\"\n"
"\n"
"// Ce tableau typé ne peut contenir que des nombres entiers.\n"
"// Tenter d'ajouter un autre type retourne une erreur.\n"
"Godot.Collections.Array<int> tableauTypé = [1, 2, 3];\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Les tableaux sont toujours passés par [b]référence[/b]. Pour "
"obtenir une copie d'un tableau qui peut être modifié indépendamment de "
"l'original, utilisez [method duplicate].\n"
"[b]Note :[/b] Effacer des éléments lors de l'itération d'un tableau n'est "
"[b]pas[/b] supporté et va résulter en un comportement imprévisible.\n"
"[b]Différences entre les tableaux compactés, les tableaux typés et les "
"tableaux non typés :[/b] Les tableaux compactés sont généralement plus "
"rapides pour itérer et modifier par rapport à un tableau typé du même type "
"(par exemple [PackedInt64Array] contre [code]Array[int][/code]). De plus, les "
"tableaux compactés consomment moins de mémoire. À l'envers, les tableaux "
"compactés sont moins flexibles car ils ne proposent pas autant de méthodes de "
"commodité comme [method Array.map]. Les tableaux typés sont à leur tour plus "
"rapides pour itérer dessus et modifier que les tableaux non typés."

msgid "Constructs an empty [Array]."
msgstr "Construit un [Array] vide."

msgid ""
"Creates a typed array from the [param base] array. A typed array can only "
"contain elements of the given type, or that inherit from the given class, as "
"described by this constructor's parameters:\n"
"- [param type] is the built-in [Variant] type, as one the [enum Variant.Type] "
"constants.\n"
"- [param class_name] is the built-in class name (see [method "
"Object.get_class]).\n"
"- [param script] is the associated script. It must be a [Script] instance or "
"[code]null[/code].\n"
"If [param type] is not [constant TYPE_OBJECT], [param class_name] must be an "
"empty [StringName] and [param script] must be [code]null[/code].\n"
"[codeblock]\n"
"class_name Sword\n"
"extends Node\n"
"\n"
"class Stats:\n"
"\tpass\n"
"\n"
"func _ready():\n"
"\tvar a = Array([], TYPE_INT, \"\", null)               # Array[int]\n"
"\tvar b = Array([], TYPE_OBJECT, \"Node\", null)        # Array[Node]\n"
"\tvar c = Array([], TYPE_OBJECT, \"Node\", Sword)       # Array[Sword]\n"
"\tvar d = Array([], TYPE_OBJECT, \"RefCounted\", Stats) # Array[Stats]\n"
"[/codeblock]\n"
"The [param base] array's elements are converted when necessary. If this is "
"not possible or [param base] is already typed, this constructor fails and "
"returns an empty [Array].\n"
"In GDScript, this constructor is usually not necessary, as it is possible to "
"create a typed array through static typing:\n"
"[codeblock]\n"
"var numbers: Array[float] = []\n"
"var children: Array[Node] = [$Node, $Sprite2D, $RigidBody3D]\n"
"\n"
"var integers: Array[int] = [0.2, 4.5, -2.0]\n"
"print(integers) # Prints [0, 4, -2]\n"
"[/codeblock]"
msgstr ""
"Crée un tableau typé depuis le tableau [param base]. Un tableau typé ne peut "
"contenir que des éléments du type donné, ou qui héritent de la classe donnée, "
"comme décrit par les paramètres du constructeur :\n"
"- [param type] est le type intégré [Variant], en tant qu'une des constantes "
"[enum Variant.Type] .\n"
"- [param class_name] est le nom de la classe intégrée (voir [method "
"Object.get_class]).\n"
"- [param script] est le script associé. Il doit être une instance [Script] ou "
"[code]null[/code].\n"
"Si [param type] n'est pas [constant TYPE_OBJECT], [param class_name] doit "
"être une chaîne [StringName] vide et [param script] doit être [code]null[/"
"code].\n"
"[codeblock]\n"
"class_name Epee\n"
"extends Node\n"
"\n"
"class Stats:\n"
"\tpass\n"
"\n"
"func _ready():\n"
"\tvar a = Array([], TYPE_INT, \"\", null)               # Array[int]\n"
"\tvar b = Array([], TYPE_OBJECT, \"Node\", null)        # Array[Node]\n"
"\tvar c = Array([], TYPE_OBJECT, \"Node\", Epee)       # Array[Epee]\n"
"\tvar d = Array([], TYPE_OBJECT, \"RefCounted\", Stats) # Array[Stats]\n"
"[/codeblock]\n"
"Les éléments du tableau [param base] sont convertis si nécessaire. Si cela "
"n'est pas possible ou que [param base] est déjà typé, ce constructeur échoue "
"et renvoie un [Array] vide.\n"
"En GDScript, ce constructeur n'est généralement pas nécessaire, car il est "
"possible de créer un tableau typé par le typage statique :\n"
"[codeblock]\n"
"var nombres: Array[float] = []\n"
"var enfants: Array[Node] = [$Node, $Sprite2D, $RigidBody3D]\n"
"\n"
"var entiers: Array[int] = [0.2, 4.5, -2.0]\n"
"print(entiers) # Affiche [0, 4, -2]\n"
"[/codeblock]"

msgid ""
"Returns the same array as [param from]. If you need a copy of the array, use "
"[method duplicate]."
msgstr ""
"Renvoie le même tableau que [param from]. Si vous avez besoin d'une copie du "
"tableau, utilisez [method duplicate]."

msgid "Constructs an array from a [PackedByteArray]."
msgstr "Construit an tableau à partir d'un [PackedByteArray]."

msgid "Constructs an array from a [PackedColorArray]."
msgstr "Construit an tableau à partir d'un [PackedColorArray]."

msgid "Constructs an array from a [PackedFloat32Array]."
msgstr "Construit un tableau à partir d'un [PackedFloat32Array]."

msgid "Constructs an array from a [PackedFloat64Array]."
msgstr "Construit un tableau à partir d'un [PackedFloat64Array]."

msgid "Constructs an array from a [PackedInt32Array]."
msgstr "Construit un tableau à partir d'un [PackedInt32Array]."

msgid "Constructs an array from a [PackedInt64Array]."
msgstr "Construit un tableau à partir d'un [PackedInt64Array]."

msgid "Constructs an array from a [PackedStringArray]."
msgstr "Construit un tableau à partir d'un [PackedStringArray]."

msgid "Constructs an array from a [PackedVector2Array]."
msgstr "Construit un tableau à partir d'un [PackedVector2Array]."

msgid "Constructs an array from a [PackedVector3Array]."
msgstr "Construit an tableau à partir d'un [PackedVector3Array]."

msgid "Constructs an array from a [PackedVector4Array]."
msgstr "Construit un tableau à partir d'un [PackedVector4Array]."

msgid ""
"Calls the given [Callable] on each element in the array and returns "
"[code]true[/code] if the [Callable] returns [code]true[/code] for [i]all[/i] "
"elements in the array. If the [Callable] returns [code]false[/code] for one "
"array element or more, this method returns [code]false[/code].\n"
"The [param method] should take one [Variant] parameter (the current array "
"element) and return a [bool].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func greater_than_5(number):\n"
"\treturn number > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].all(greater_than_5)) # Prints true (3/3 elements evaluate "
"to true).\n"
"\tprint([4, 10, 4].all(greater_than_5)) # Prints false (1/3 elements evaluate "
"to true).\n"
"\tprint([4, 4, 4].all(greater_than_5))  # Prints false (0/3 elements evaluate "
"to true).\n"
"\tprint([].all(greater_than_5))         # Prints true (0/0 elements evaluate "
"to true).\n"
"\n"
"\t# Same as the first line above, but using a lambda function.\n"
"\tprint([6, 10, 6].all(func(element): return element > 5)) # Prints true\n"
"[/gdscript]\n"
"[csharp]\n"
"private static bool GreaterThan5(int number)\n"
"{\n"
"\treturn number > 5;\n"
"}\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t// Prints True (3/3 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(GreaterThan5));\n"
"\t// Prints False (1/3 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 10, 4 }.All(GreaterThan5));\n"
"\t// Prints False (0/3 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 4, 4 }.All(GreaterThan5));\n"
"\t// Prints True (0/0 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { }.All(GreaterThan5));\n"
"\n"
"\t// Same as the first line above, but using a lambda function.\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(element => "
"element > 5)); // Prints True\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method any], [method filter], [method map] and [method reduce].\n"
"[b]Note:[/b] Unlike relying on the size of an array returned by [method "
"filter], this method will return as early as possible to improve performance "
"(especially with large arrays).\n"
"[b]Note:[/b] For an empty array, this method [url=https://en.wikipedia.org/"
"wiki/Vacuous_truth]always[/url] returns [code]true[/code]."
msgstr ""
"Appelle le [Callable] donné sur chaque élément du tableau et renvoie "
"[code]true[/code] si le [Callable] renvoie [code]true[/code] pour [i]tous[/i] "
"les éléments du tableau. Si le [Callable] renvoie [code]false[/code] pour un "
"élément du tableau ou plus, cette méthode renvoie [code]false[/code].\n"
"La méthode [param method] devrait prendre un paramètre [Variant] (l'élément "
"de tableau courant) et renvoyer un booléen [bool].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func superieur_a_5(nombre):\n"
"\treturn nombre > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].all(superieur_a_5)) # Affiche true (3/3 éléments sont "
"évalués à true).\n"
"\tprint([4, 10, 4].all(superieur_a_5)) # Affiche false (1/3 éléments sont "
"évalués à true).\n"
"\tprint([4, 4, 4].all(superieur_a_5))  # Affiche false (0/3 éléments sont "
"évalués à true).\n"
"\tprint([].all(superieur_a_5))         # Affiche true (0/0 éléments sont "
"évalués à true).\n"
"\n"
"\t# Même chose que la première ligne du dessus, mais avec une fonction "
"lambda.\n"
"\tprint([6, 10, 6].all(func(element): return element > 5)) # Affiche true\n"
"[/gdscript]\n"
"[csharp]\n"
"private static bool SuperieurA5(int nombre)\n"
"{\n"
"\treturn nombre > 5;\n"
"}\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t// Affiche True (3/3 éléments sont évalués à true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(SuperieurA5));\n"
"\t// Affiche False (1/3 éléments sont évalués à true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 10, 4 }.All(SuperieurA5));\n"
"\t// Affiche False (0/3 éléments sont évalués à true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 4, 4 }.All(SuperieurA5));\n"
"\t// Affiche True (0/0 éléments sont évalués à true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { }.All(SuperieurA5));\n"
"\n"
"\t// Même chose que la première ligne du dessus, mais avec une fonction "
"lambda.\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(element => "
"element > 5)); // Affiche True\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Voir aussi [method any], [method filter], [method map] et [method reduce].\n"
"[b]Note :[/b] Au lieu de se baser sur la taille du tableau renvoyé par "
"[method filter], cette méthode renverra le résultat le plus tôt possible pour "
"améliorer les performances (en particulier avec de grands tableaux).\n"
"[b]Note :[/b] Pour un tableau vide, cette méthode renvoie [url=https://"
"en.wikipedia.org/wiki/Vacuous_truth]toujours[/url] [code]true[/code]."

msgid ""
"Calls the given [Callable] on each element in the array and returns "
"[code]true[/code] if the [Callable] returns [code]true[/code] for [i]one or "
"more[/i] elements in the array. If the [Callable] returns [code]false[/code] "
"for all elements in the array, this method returns [code]false[/code].\n"
"The [param method] should take one [Variant] parameter (the current array "
"element) and return a [bool].\n"
"[codeblock]\n"
"func greater_than_5(number):\n"
"\treturn number > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].any(greater_than_5)) # Prints true (3 elements evaluate to "
"true).\n"
"\tprint([4, 10, 4].any(greater_than_5)) # Prints true (1 elements evaluate to "
"true).\n"
"\tprint([4, 4, 4].any(greater_than_5))  # Prints false (0 elements evaluate "
"to true).\n"
"\tprint([].any(greater_than_5))         # Prints false (0 elements evaluate "
"to true).\n"
"\n"
"\t# Same as the first line above, but using a lambda function.\n"
"\tprint([6, 10, 6].any(func(number): return number > 5)) # Prints true\n"
"[/codeblock]\n"
"See also [method all], [method filter], [method map] and [method reduce].\n"
"[b]Note:[/b] Unlike relying on the size of an array returned by [method "
"filter], this method will return as early as possible to improve performance "
"(especially with large arrays).\n"
"[b]Note:[/b] For an empty array, this method always returns [code]false[/"
"code]."
msgstr ""
"Appelle le [Callable] donné sur chaque élément du tableau et renvoie "
"[code]true[/code] si le [Callable] renvoie [code]true[/code] pour [i]un ou "
"plusieurs[/i] éléments dans le tableau. Si le [Callable] renvoie [code]false[/"
"code] pour tous les éléments du tableau, cette méthode renvoie [code]false[/"
"code].\n"
"La méthode [param method] devrait prendre un paramètre [Variant] (l'élément "
"de tableau courant) et renvoyer un [bool].\n"
"[codeblock]\n"
"func superieur_a_5(nombre):\n"
"\treturn number > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].any(superieur_a_5)) # Affiche true (3 éléments sont "
"évalués à true).\n"
"\tprint([4, 10, 4].any(superieur_a_5)) # Affiche true (1 élément est évalué à "
"true).\n"
"\tprint([4, 4, 4].any(superieur_a_5))  # Affiche false (0 éléments sont "
"évalués à true).\n"
"\tprint([].any(superieur_a_5))         # Affiche false (0 éléments sont "
"évalués à true).\n"
"\n"
"\t# Comme la première ligne au dessus, mais en utilisant une fonction "
"lambda.\n"
"\tprint([6, 10, 6].any(func(nombre): return nombre > 5)) # Affiche true\n"
"[/codeblock]\n"
"Voir aussi [method all], [method filter], [method map] et [method reduce].\n"
"[b]Note :[/b] Au lieu de se baser sur la taille du tableau renvoyé par "
"[method filter], cette méthode renverra le résultat le plus tôt possible pour "
"améliorer les performances (en particulier avec de grands tableaux).\n"
"[b]Note :[/b] Pour un tableau vide, cette méthode renvoie toujours "
"[code]false[/code]."

msgid ""
"Appends [param value] at the end of the array (alias of [method push_back])."
msgstr ""
"Ajoute une valeur [param value] à la fin du tableau (alias de [method "
"push_back])."

msgid ""
"Appends another [param array] at the end of this array.\n"
"[codeblock]\n"
"var numbers = [1, 2, 3]\n"
"var extra = [4, 5, 6]\n"
"numbers.append_array(extra)\n"
"print(numbers) # Prints [1, 2, 3, 4, 5, 6]\n"
"[/codeblock]"
msgstr ""
"Ajoute un autre tableau [param array] à la fin de ce tableau.\n"
"[codeblock]\n"
"var numbers = [1, 2, 3]\n"
"var extra = [4, 5, 6]\n"
"numbers.append_array(extra)\n"
"print(numbers) # Affiche [1, 2, 3, 4, 5, 6].\n"
"[/codeblock]"

msgid ""
"Assigns elements of another [param array] into the array. Resizes the array "
"to match [param array]. Performs type conversions if the array is typed."
msgstr ""
"Attribue des éléments d'un autre tableau [param array] dans le tableau. "
"Redimensionne le tableau pour correspondre à [param array]. Effectue les "
"conversions de type si le tableau est typé."

msgid ""
"Returns the last element of the array. If the array is empty, fails and "
"returns [code]null[/code]. See also [method front].\n"
"[b]Note:[/b] Unlike with the [code][][/code] operator ([code]array[-1][/"
"code]), an error is generated without stopping project execution."
msgstr ""
"Renvoie le dernier élément du tableau. Si le tableau est vide, affiche une "
"erreur et renvoie [code]null[/code]. Voir aussi [method front].\n"
"[b]Note :[/b] Différemment de l'opérateur [code][][/code] ([code]array[-1][/"
"code]), une erreur est générée sans arrêter l'exécution du projet."

msgid ""
"Returns the index of [param value] in the sorted array. If it cannot be "
"found, returns where [param value] should be inserted to keep the array "
"sorted. The algorithm used is [url=https://en.wikipedia.org/wiki/"
"Binary_search_algorithm]binary search[/url].\n"
"If [param before] is [code]true[/code] (as by default), the returned index "
"comes before all existing elements equal to [param value] in the array.\n"
"[codeblock]\n"
"var numbers = [2, 4, 8, 10]\n"
"var idx = numbers.bsearch(7)\n"
"\n"
"numbers.insert(idx, 7)\n"
"print(numbers) # Prints [2, 4, 7, 8, 10]\n"
"\n"
"var fruits = [\"Apple\", \"Lemon\", \"Lemon\", \"Orange\"]\n"
"print(fruits.bsearch(\"Lemon\", true))  # Prints 1, points at the first "
"\"Lemon\".\n"
"print(fruits.bsearch(\"Lemon\", false)) # Prints 3, points at \"Orange\".\n"
"[/codeblock]\n"
"[b]Note:[/b] Calling [method bsearch] on an [i]unsorted[/i] array will result "
"in unexpected behavior. Use [method sort] before calling this method."
msgstr ""
"Renvoie l'index de la valeur [param value] dans le tableau trié. Si elle ne "
"peut pas être trouvée, renvoie où [param value] doit être insérée pour garder "
"le tableau trié. L'algorithme utilisé est [url=https://fr.wikipedia.org/wiki/"
"Recherche_dichotomique]la recherche dichotomique[/url].\n"
"Si [param before] vaut [code]true[/code] (comme par défaut), l'index renvoyé "
"arrive avant tous les éléments existants égaux à [param value] dans le "
"tableau.\n"
"[codeblock]\n"
"var nombres = [2, 4, 8, 10]\n"
"var idx = nombres.bsearch(7)\n"
"\n"
"nombres.insert(idx, 7)\n"
"print(nombres) # Affiche [2, 4, 7, 8, 10]\n"
"\n"
"var fruits = [\"Pomme\", \"Citron\", \"Citron\", \"Orange\"]\n"
"print(fruits.bsearch(\"Citron\", true) # Affiche 1, pointe vers le premier "
"\"Citron\".\n"
"print(fruits.bsearch(\"Citron\", false) # Affiche 3, pointe vers \"Orange\".\n"
"[/codeblock]\n"
"[b]Note :[/b] Appeler [method bsearch] sur un tableau [i]non trié[/i] "
"résultera en un comportement inattendu. Utilisez [method sort] avant "
"d'appeler cette méthode."

msgid ""
"Returns the index of [param value] in the sorted array. If it cannot be "
"found, returns where [param value] should be inserted to keep the array "
"sorted (using [param func] for the comparisons). The algorithm used is "
"[url=https://en.wikipedia.org/wiki/Binary_search_algorithm]binary search[/"
"url].\n"
"Similar to [method sort_custom], [param func] is called as many times as "
"necessary, receiving one array element and [param value] as arguments. The "
"function should return [code]true[/code] if the array element should be "
"[i]behind[/i] [param value], otherwise it should return [code]false[/code].\n"
"If [param before] is [code]true[/code] (as by default), the returned index "
"comes before all existing elements equal to [param value] in the array.\n"
"[codeblock]\n"
"func sort_by_amount(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar my_items = [[\"Tomato\", 2], [\"Kiwi\", 5], [\"Rice\", 9]]\n"
"\n"
"\tvar apple = [\"Apple\", 5]\n"
"\t# \"Apple\" is inserted before \"Kiwi\".\n"
"\tmy_items.insert(my_items.bsearch_custom(apple, sort_by_amount, true), "
"apple)\n"
"\n"
"\tvar banana = [\"Banana\", 5]\n"
"\t# \"Banana\" is inserted after \"Kiwi\".\n"
"\tmy_items.insert(my_items.bsearch_custom(banana, sort_by_amount, false), "
"banana)\n"
"\n"
"\t# Prints [[\"Tomato\", 2], [\"Apple\", 5], [\"Kiwi\", 5], [\"Banana\", 5], "
"[\"Rice\", 9]]\n"
"\tprint(my_items)\n"
"[/codeblock]\n"
"[b]Note:[/b] Calling [method bsearch_custom] on an [i]unsorted[/i] array will "
"result in unexpected behavior. Use [method sort_custom] with [param func] "
"before calling this method."
msgstr ""
"Renvoie l'index de la valeur [param value] dans le tableau trié. Si elle ne "
"peut pas être trouvée, renvoie où [param value] doit être insérée pour garder "
"le tableau trié (en utilisant [param func] pour les comparaisons). "
"L'algorithme utilisé est [url=https://fr.wikipedia.org/wiki/"
"Recherche_dichotomique]la recherche dichotomique[/url].\n"
"Semblable à [method sort_custom], [param func] est appelé autant de fois que "
"nécessaire, recevant un élément du tableau et [param value] comme arguments. "
"La fonction doit renvoyer [code]true[/code] si l'élément du tableau devrait "
"être [i]derrière[/i] [param value], sinon elle devrait renvoyer [code]false[/"
"code].\n"
"Si [param before] vaut [code]true[/code] (comme par défaut), l'index renvoyé "
"arrive avant tous les éléments existants égaux à [param value] dans le "
"tableau.\n"
"[codeblock]\n"
"func trier_par_quantite(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar mes_objets = [[\"Tomate\", 2], [\"Kiwi\", 5], [\"Riz\", 9]]\n"
"\n"
"\tvar pomme = [\"Pomme\", 5]\n"
"\t# \"Pomme\" est inséré avant \"Kiwi\".\n"
"\tmes_objets.insert(mes_objets .bsearch_custom(pomme , trier_par_quantite, "
"true), pomme)\n"
"\n"
"\tvar banane = [\"Banane\", 5]\n"
"\t# \"Banane\" est inséré après \"Kiwi\".\n"
"\tmes_objets .insert(mes_objets .bsearch_custom(banane, trier_par_quantite, "
"false), banane)\n"
"\n"
"\t# Affiche [[\"Tomate\", 2], [\"Pomme\", 5], [\"Kiwi\", 5], [\"Banane\", 5], "
"[\"Riz\", 9]]\n"
"\tprint(mes_objets )\n"
"[/codeblock]\n"
"[b]Note :[/b] Appeler [method bsearch_custom] sur un tableau [i]non trié[/i] "
"résultera en un comportement inattendu. Utilisez [method sort_custom] avec "
"[param func] avant d'appeler cette méthode."

msgid ""
"Removes all elements from the array. This is equivalent to using [method "
"resize] with a size of [code]0[/code]."
msgstr ""
"Retire tous les éléments du tableau. C'est équivalent à utiliser [method "
"resize] avec une taille de [code]0[/code]."

msgid ""
"Returns the number of times an element is in the array.\n"
"To count how many elements in an array satisfy a condition, see [method "
"reduce]."
msgstr ""
"Renvoie le nombre de fois qu'un élément est dans le tableau.\n"
"Pour compter combien d'éléments dans un tableau satisfont une condition, voir "
"[method reduce]."

msgid ""
"Returns a new copy of the array.\n"
"By default, a [b]shallow[/b] copy is returned: all nested [Array], "
"[Dictionary], and [Resource] elements are shared with the original array. "
"Modifying any of those in one array will also affect them in the other.\n"
"If [param deep] is [code]true[/code], a [b]deep[/b] copy is returned: all "
"nested arrays and dictionaries are also duplicated (recursively). Any "
"[Resource] is still shared with the original array, though."
msgstr ""
"Renvoie une nouvelle copie du tableau.\n"
"Par défaut, une copie [b]superficielle[/b] est renvoyée : tous les éléments "
"[Array], [Dictionary] et [Resource] imbriqués sont partagés avec le tableau "
"original. Modifier l'un d'eux dans un tableau les affectera également dans "
"l'autre.\n"
"Si [param deep] vaut [code]true[/code], une copie [b]profonde[/b] est "
"renvoyée : tous les tableaux et dictionnaires imbriqués sont également "
"dupliqués (récursivement). Cependant, toute [Resource] est toujours partagée "
"avec le tableau original."

msgid ""
"Duplicates this array, deeply, like [method duplicate][code](true)[/code], "
"with extra control over how subresources are handled.\n"
"[param deep_subresources_mode] must be one of the values from [enum "
"Resource.DeepDuplicateMode]. By default, only internal resources will be "
"duplicated (recursively)."
msgstr ""
"Duplique ce tableau, profondément, comme [method duplicate][code](true)[/"
"code], avec du contrôle supplémentaire sur la façon dont les sous-ressources "
"sont gérées.\n"
"[param deep_subresources_mode] doit être l'une des valeurs de [enum "
"Resource.DeepDuplicateMode]. Par défaut, seules les ressources internes "
"seront dupliquées (récursivement)."

msgid ""
"Finds and removes the first occurrence of [param value] from the array. If "
"[param value] does not exist in the array, nothing happens. To remove an "
"element by index, use [method remove_at] instead.\n"
"[b]Note:[/b] This method shifts every element's index after the removed "
"[param value] back, which may have a noticeable performance cost, especially "
"on larger arrays.\n"
"[b]Note:[/b] Erasing elements while iterating over arrays is [b]not[/b] "
"supported and will result in unpredictable behavior."
msgstr ""
"Trouve et supprime la première occurrence de la valeur [param value] du "
"tableau. Si [param value] n'existe pas dans le tableau, rien ne se passe. "
"Pour supprimer un élément par index, utilisez [method remove_at] à la place.\n"
"[b]Note :[/b] Cette méthode déplace l'index de chaque élément après la valeur "
"[param value] supprimée en arrière, ce qui peut avoir un coût de performance "
"notable, en particulier sur les tableaux plus grands.\n"
"[b]Note :[/b] Effacer des éléments lors de l'itération d'un tableau n'est "
"[b]pas[/b] supporté et va résulter en un comportement imprévisible."

msgid ""
"Assigns the given [param value] to all elements in the array.\n"
"This method can often be combined with [method resize] to create an array "
"with a given size and initialized elements:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = []\n"
"array.resize(5)\n"
"array.fill(2)\n"
"print(array) # Prints [2, 2, 2, 2, 2]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [];\n"
"array.Resize(5);\n"
"array.Fill(2);\n"
"GD.Print(array); // Prints [2, 2, 2, 2, 2]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If [param value] is a [Variant] passed by reference ([Object]-"
"derived, [Array], [Dictionary], etc.), the array will be filled with "
"references to the same [param value], which are not duplicates."
msgstr ""
"Assigne la valeur [param value] à tous les éléments du tableau.\n"
"Cette méthode est souvent combinée avec [method resize] pour créer un tableau "
"d'une taille donnée avec tous ses éléments initialisés :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = []\n"
"array.resize(5)\n"
"array.fill(2)\n"
"print(array) # Affiche [2, 2, 2, 2, 2]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [];\n"
"array.Resize(5);\n"
"array.Fill(2);\n"
"GD.Print(array); // Affiche [2, 2, 2, 2, 2]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Si [param value] est un [Variant] passé par référence (dérivé de "
"[Object], [Array], [Dictionary], etc...), le tableau sera rempli de référence "
"à la même valeur [param value], qui ne seront pas des dupliqués."

msgid ""
"Calls the given [Callable] on each element in the array and returns a new, "
"filtered [Array].\n"
"The [param method] receives one of the array elements as an argument, and "
"should return [code]true[/code] to add the element to the filtered array, or "
"[code]false[/code] to exclude it.\n"
"[codeblock]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 4, 5, 8].filter(is_even)) # Prints [4, 8]\n"
"\n"
"\t# Same as above, but using a lambda function.\n"
"\tprint([1, 4, 5, 8].filter(func(number): return number % 2 == 0))\n"
"[/codeblock]\n"
"See also [method any], [method all], [method map] and [method reduce]."
msgstr ""
"Appelle le [Callable] donné sur chaque élément dans le tableau et renvoie un "
"nouveau tableau [Array] filtré.\n"
"La méthode [param method] reçoit l'un des éléments du tableau comme argument, "
"et devrait renvoyer [code]true[/code] pour ajouter l'élément au tableau "
"filtré, ou [code]false[/code] pour l'exclure.\n"
"[codeblock]\n"
"func est_pair(nombre):\n"
"\treturn nombre % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 4, 5, 8].filter(est_pair)) # Affiche [4, 8]\n"
"\n"
"\t# Comme la première ligne au dessus, mais en utilisant une fonction "
"lambda.\n"
"\tprint([1, 4, 5, 8].filter(func(nombre): return nombre % 2 == 0))\n"
"[/codeblock]\n"
"Voir aussi [method any], [method all], [method map] et [method reduce]."

msgid ""
"Returns the index of the [b]first[/b] occurrence of [param what] in this "
"array, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the end of the array.\n"
"[b]Note:[/b] If you just want to know whether the array contains [param "
"what], use [method has] ([code]Contains[/code] in C#). In GDScript, you may "
"also use the [code]in[/code] operator.\n"
"[b]Note:[/b] For performance reasons, the search is affected by [param "
"what]'s [enum Variant.Type]. For example, [code]7[/code] ([int]) and "
"[code]7.0[/code] ([float]) are not considered equal for this method."
msgstr ""
"Renvoie l'index de la [b]première[/b] occurrence de l'objet [param what] dans "
"ce tableau, ou [code]-1[/code] s'il n'y en a pas. Le début de la recherche "
"peut être spécifié avec [param from], continuant vers la fin du tableau.\n"
"[b]Note :[/b] Si vous voulez juste savoir si le tableau contient [param "
"what], utilisez [method has] ([code]Contains[/code] en C#). En GDScript, vous "
"pouvez aussi utiliser l'opérateur [code]in[/code].\n"
"[b]Note :[/b] Pour des raisons de performance, la recherche est affectée par "
"le type de variant [enum Variant.Type] de [param what]. Par exemple, [code]7[/"
"code] (un entier [int]) et [code]7.0[/code] (un flottant [float]) ne sont pas "
"considérés égaux pour cette méthode."

msgid ""
"Returns the index of the [b]first[/b] element in the array that causes [param "
"method] to return [code]true[/code], or [code]-1[/code] if there are none. "
"The search's start can be specified with [param from], continuing to the end "
"of the array.\n"
"[param method] is a callable that takes an element of the array, and returns "
"a [bool].\n"
"[b]Note:[/b] If you just want to know whether the array contains [i]anything[/"
"i] that satisfies [param method], use [method any].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 3, 4, 7].find_custom(is_even.bind())) # Prints 2\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Renvoie l'index du [b]premier[/b] élément du tableau qui cause la méthode "
"[param method] de renvoyer [code]true[/code], ou [code]-1[/code] s'il n'y en "
"a pas. Le début de la recherche peut être spécifié avec [param from], "
"continuant vers la fin du tableau.\n"
"[param method] est un objet appelable qui prend un élément du tableau et "
"renvoie un booléen [bool].\n"
"[b]Note :[/b] Si vous voulez juste savoir si le tableau contient [i]quelque "
"chose[/i] qui satisfait [param method], utilisez [method any].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func est_pair(nombre):\n"
"\treturn nombre % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 3, 4, 7].find_custom(est_pair.bind())) # Affiche 2\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns the first element of the array. If the array is empty, fails and "
"returns [code]null[/code]. See also [method back].\n"
"[b]Note:[/b] Unlike with the [code][][/code] operator ([code]array[0][/"
"code]), an error is generated without stopping project execution."
msgstr ""
"Renvoie le premier élément du tableau. Si le tableau est vide, échoue et "
"renvoie [code]null[/code]. Voir aussi [method back].\n"
"[b]Note :[/b] Contrairement à l'opérateur [code][][/code] ([code]array[0][/"
"code]), une erreur est générée sans arrêter l'exécution du projet."

msgid ""
"Returns the element at the given [param index] in the array. If [param index] "
"out-of-bounds or negative, this method fails and returns [code]null[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Renvoie l'élément à l'index [param index] donné dans le tableau. Si [param "
"index] est hors des limites ou négatif, cette méthode échoue et renvoie "
"[code]null[/code].\n"
"Cette méthode est similaire (mais pas identique) à l'opérateur [code][][/"
"code]. Plus particulièrement, lorsque cette méthode échoue, elle ne met pas "
"en pause l'exécution de projet si il est exécuté depuis l'éditeur."

msgid ""
"Returns the built-in [Variant] type of the typed array as a [enum "
"Variant.Type] constant. If the array is not typed, returns [constant "
"TYPE_NIL]. See also [method is_typed]."
msgstr ""
"Renvoie le type intégré [Variant] du tableau typé en tant que constante [enum "
"Variant.Type]. Si le tableau n'est pas typé , renvoie [constant TYPE_NIL]. "
"Voir aussi [method is_typed]."

msgid ""
"Returns the [b]built-in[/b] class name of the typed array, if the built-in "
"[Variant] type [constant TYPE_OBJECT]. Otherwise, returns an empty "
"[StringName]. See also [method is_typed] and [method Object.get_class]."
msgstr ""
"Renvoie le nom de classe [b]intégré[/b] du tableau typé, si le type intégré "
"[Variant] est [constant TYPE_OBJECT]. Sinon, renvoie un [StringName] vide. "
"Voir aussi [method is_typed] et [method Object.get_class]."

msgid ""
"Returns the [Script] instance associated with this typed array, or "
"[code]null[/code] if it does not exist. See also [method is_typed]."
msgstr ""
"Renvoie l'instance [Script] associée à ce tableau typé, ou [code]null[/code] "
"si elle n'existe pas. Voir aussi [method is_typed]."

msgid ""
"Returns [code]true[/code] if the array contains the given [param value].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print([\"inside\", 7].has(\"inside\"))  # Prints true\n"
"print([\"inside\", 7].has(\"outside\")) # Prints false\n"
"print([\"inside\", 7].has(7))         # Prints true\n"
"print([\"inside\", 7].has(\"7\"))       # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array arr = [\"inside\", 7];\n"
"// By C# convention, this method is renamed to `Contains`.\n"
"GD.Print(arr.Contains(\"inside\"));  // Prints True\n"
"GD.Print(arr.Contains(\"outside\")); // Prints False\n"
"GD.Print(arr.Contains(7));         // Prints True\n"
"GD.Print(arr.Contains(\"7\"));       // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In GDScript, this is equivalent to the [code]in[/code] operator:\n"
"[codeblock]\n"
"if 4 in [2, 4, 6, 8]:\n"
"\tprint(\"4 is here!\") # Will be printed.\n"
"[/codeblock]\n"
"[b]Note:[/b] For performance reasons, the search is affected by the [param "
"value]'s [enum Variant.Type]. For example, [code]7[/code] ([int]) and "
"[code]7.0[/code] ([float]) are not considered equal for this method."
msgstr ""
"Renvoie [code]true[/code] si le tableau contient la valeur [param value] "
"donnée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print([\"dedans\", 7].has(\"dedans\"))  # Affiche true\n"
"print([\"dedans\", 7].has(\"dehors\")) # Affiche false\n"
"print([\"dedans\", 7].has(7))         # Affiche true\n"
"print([\"dedans\", 7].has(\"7\"))       # Affiche false\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array tab = [\"dedans\", 7];\n"
"// Par convention C#, cette méthode est renommée en `Contains`.\n"
"GD.Print(arr.Contains(\"dedans\"));  // Affiche True\n"
"GD.Print(arr.Contains(\"dehors\")); // Affiche False\n"
"GD.Print(arr.Contains(7));         // Affiche True\n"
"GD.Print(arr.Contains(\"7\"));       // Affiche False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"En GDScript, c'est équivalent à l'opérateur [code]in[/code] :\n"
"[codeblock]\n"
"if 4 in [2, 4, 6, 8]:\n"
"\tprint(\"4 est là!\") # Sera affiché.\n"
"[/codeblock]\n"
"[b]Note :[/b] Pour des raisons de performances, la recherche est affectée par "
"le type de variant [enum Variant.Type] de [param value]. Par exemple, "
"[code]7[/code] (un entier [int]) et [code]7.0[/code] (un flottant [float]) ne "
"sont pas considérés comme égaux pour cette méthode."

msgid ""
"Returns a hashed 32-bit integer value representing the array and its "
"contents.\n"
"[b]Note:[/b] Arrays with equal hash values are [i]not[/i] guaranteed to be "
"the same, as a result of hash collisions. On the countrary, arrays with "
"different hash values are guaranteed to be different."
msgstr ""
"Renvoie une valeur entière de 32 bits hachée représentant le tableau et son "
"contenu.\n"
"[b]Note :[/b] Les tableaux avec des valeurs de hachage égales ne sont [i]pas[/"
"i] garantis d'être le même, à cause des collisions de hachage. Au contraire, "
"les tableaux avec différentes valeurs de hachage sont garantis d'être "
"différents."

msgid ""
"Inserts a new element ([param value]) at a given index ([param position]) in "
"the array. [param position] should be between [code]0[/code] and the array's "
"[method size]. If negative, [param position] is considered relative to the "
"end of the array.\n"
"Returns [constant OK] on success, or one of the other [enum Error] constants "
"if this method fails.\n"
"[b]Note:[/b] Every element's index after [param position] needs to be shifted "
"forward, which may have a noticeable performance cost, especially on larger "
"arrays."
msgstr ""
"Insère un nouvel élément ([param value]) à un index donné ([param position]) "
"dans le tableau. [param position] devrait être entre [code]0[/code] et la "
"taille ([method size]) du tableau. Si négatif, [param position] est considéré "
"comme relatif à la fin du tableau.\n"
"Renvoie [constant OK] lors du succès, ou l'une des autres constantes [enum "
"Error] si cette méthode échoue.\n"
"[b]Note :[/b] L'index de chaque élément après [param position] doit être "
"déplacé vers l'avant, ce qui peut avoir un coût de performance notable, en "
"particulier sur les tableaux plus grands."

msgid ""
"Returns [code]true[/code] if the array is empty ([code][][/code]). See also "
"[method size]."
msgstr ""
"Renvoie [code]true[/code] si le tableau est vide ([code][][/code]. Voir aussi "
"[method size]."

msgid ""
"Returns [code]true[/code] if the array is read-only. See [method "
"make_read_only].\n"
"In GDScript, arrays are automatically read-only if declared with the "
"[code]const[/code] keyword."
msgstr ""
"Renvoie [code]true[/code] si le tableau est en lecture seule. Voir [method "
"make_read_only].\n"
"En GDScript, les tableaux sont automatiquement en lecture seule s'ils sont "
"déclarés avec le mot-clé [code]const[/code]."

msgid ""
"Returns [code]true[/code] if this array is typed the same as the given [param "
"array]. See also [method is_typed]."
msgstr ""
"Renvoie [code]true[/code] si ce tableau est typé de la même manière que le "
"tableau [param array] donné. Voir aussi [method is_typed]."

msgid ""
"Returns [code]true[/code] if the array is typed. Typed arrays can only "
"contain elements of a specific type, as defined by the typed array "
"constructor. The methods of a typed array are still expected to return a "
"generic [Variant].\n"
"In GDScript, it is possible to define a typed array with static typing:\n"
"[codeblock]\n"
"var numbers: Array[float] = [0.2, 4.2, -2.0]\n"
"print(numbers.is_typed()) # Prints true\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si le tableau est typé. Les tableaux typés peuvent "
"contenir uniquement des éléments d'un type spécifique, tel que défini par le "
"constructeur du tableau typé. Les méthodes d'un tableau typé sont toujours "
"censées renvoyer un [Variant] générique.\n"
"En GDScript, il est possible de définir un tableau typé avec le typage "
"statique :\n"
"[codeblock]\n"
"var nombres: Array[float] = [0.2, 4.2, -2.0]\n"
"print(nombres.is_typed()) # Affiche true\n"
"[/codeblock]"

msgid ""
"Makes the array read-only. The array's elements cannot be overridden with "
"different values, and their order cannot change. Does not apply to nested "
"elements, such as dictionaries.\n"
"In GDScript, arrays are automatically read-only if declared with the "
"[code]const[/code] keyword."
msgstr ""
"Rend le tableau en lecture seule. Les éléments du tableau ne peuvent être "
"remplacés par des valeurs différentes, et leur ordre ne peut pas changer. Ne "
"s'applique pas aux éléments imbriqués, comme les dictionnaires.\n"
"En GDScript, les tableaux sont automatiquement en lecture seule s'ils sont "
"déclarés avec le mot-clé [code]const[/code]."

msgid ""
"Calls the given [Callable] for each element in the array and returns a new "
"array filled with values returned by the [param method].\n"
"The [param method] should take one [Variant] parameter (the current array "
"element) and can return any [Variant].\n"
"[codeblock]\n"
"func double(number):\n"
"\treturn number * 2\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].map(double)) # Prints [2, 4, 6]\n"
"\n"
"\t# Same as above, but using a lambda function.\n"
"\tprint([1, 2, 3].map(func(element): return element * 2))\n"
"[/codeblock]\n"
"See also [method filter], [method reduce], [method any] and [method all]."
msgstr ""
"Appelle le [Callable] donné pour chaque élément dans le tableau et renvoie un "
"nouveau tableau rempli de valeurs renvoyées par la méthode [param method]\n"
"La méthode [param method] devrait prendre un paramètre [Variant] (l'élément "
"de tableau courant) et peut renvoyer n'importe quel [Variant].\n"
"[codeblock]\n"
"func doubler(nombre):\n"
"\treturn nombre * 2\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].map(doubler)) # Affiche [2, 4, 6]\n"
"\n"
"\t# La même qu'au dessus, mais en utilisant une fonction lambda.\n"
"\tprint([1, 2, 3].map(func(element): return element * 2))\n"
"[/codeblock]\n"
"Voir aussi [method filter], [method reduce], [method any] et [method all]."

msgid ""
"Returns the maximum value contained in the array, if all elements can be "
"compared. Otherwise, returns [code]null[/code]. See also [method min].\n"
"To find the maximum value using a custom comparator, you can use [method "
"reduce]."
msgstr ""
"Renvoie la valeur maximale contenue dans le tableau, si tous les éléments "
"peuvent être comparés. Sinon, renvoie [code]null[/code]. Voir aussi [method "
"min].\n"
"Pour trouver la valeur maximale en utilisant un comparateur personnalisé, "
"vous pouvez utiliser [method reduce]."

msgid ""
"Returns the minimum value contained in the array, if all elements can be "
"compared. Otherwise, returns [code]null[/code]. See also [method max]."
msgstr ""
"Renvoie la valeur minimale contenue dans le tableau si tous les éléments "
"peuvent être comparés entre eux. Si les éléments ne peuvent pas être "
"comparés, renvoie [code]null[/code]. Voir aussi [method max]."

msgid ""
"Returns a random element from the array. Generates an error and returns "
"[code]null[/code] if the array is empty.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# May print 1, 2, 3.25, or \"Hi\".\n"
"print([1, 2, 3.25, \"Hi\"].pick_random())\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [1, 2, 3.25f, \"Hi\"];\n"
"GD.Print(array.PickRandom()); // May print 1, 2, 3.25, or \"Hi\".\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Like many similar functions in the engine (such as [method "
"@GlobalScope.randi] or [method shuffle]), this method uses a common, global "
"random seed. To get a predictable outcome from this method, see [method "
"@GlobalScope.seed]."
msgstr ""
"Renvoie un élément aléatoire du tableau. Génère une erreur et renvoie "
"[code]null[/code] si le tableau est vide.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Peut afficher 1, 2, 3.25, ou \"Salut\".\n"
"print([1, 2, 3.25, \"Salut\"].pick_random())\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array tableau = [1, 2, 3.25f, \"Salut\"];\n"
"GD.Print(tableau.PickRandom()); // Peut afficher 1, 2, 3.25, ou \"Salut\".\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Comme beaucoup de fonctions similaires dans le moteur (comme "
"[method @GlobalScope.randi] ou [method shuffle]), cette méthode utilise une "
"graine aléatoire commune et globale. Pour obtenir un résultat prévisible de "
"cette méthode, voir [method @GlobalScope.seed]."

msgid ""
"Removes and returns the element of the array at index [param position]. If "
"negative, [param position] is considered relative to the end of the array. "
"Returns [code]null[/code] if the array is empty. If [param position] is out "
"of bounds, an error message is also generated.\n"
"[b]Note:[/b] This method shifts every element's index after [param position] "
"back, which may have a noticeable performance cost, especially on larger "
"arrays."
msgstr ""
"Retire et renvoie l'élément du tableau à l'index [param position]. Si la "
"[param position] est négative, elle est considérée par rapport à la fin du "
"tableau. Renvoie [code]null[/code] si le tableau est vide. Si [param "
"position] est hors des limites, un message d'erreur est également généré.\n"
"[b]Note :[/b] Cette méthode déplace l'index de chaque élément après [param "
"position] vers l'arrière, ce qui peut avoir un coût de performance notable, "
"en particulier sur les tableaux plus grands."

msgid ""
"Removes and returns the last element of the array. Returns [code]null[/code] "
"if the array is empty, without generating an error. See also [method "
"pop_front]."
msgstr ""
"Retire et renvoie le dernier élément du tableau. Renvoie [code]null[/code] si "
"le tableau est vide, sans affiche de message d'erreur. Voir aussi [method "
"pop_front]."

msgid ""
"Removes and returns the first element of the array. Returns [code]null[/code] "
"if the array is empty, without generating an error. See also [method "
"pop_back].\n"
"[b]Note:[/b] This method shifts every other element's index back, which may "
"have a noticeable performance cost, especially on larger arrays."
msgstr ""
"Retire et renvoie le premier élément du tableau. Renvoie [code]null[/code] si "
"le tableau est vide, sans générer d'erreur. Voir aussi [method pop_back].\n"
"[b]Note :[/b] Cette méthode déplace l'index de chaque autre élément en "
"arrière, ce qui peut avoir un coût de performance notable, en particulier sur "
"les tableaux plus grands."

msgid ""
"Appends an element at the end of the array. See also [method push_front]."
msgstr "Ajout un élément à la fin du tableau. Voir aussi [method push_front]."

msgid ""
"Adds an element at the beginning of the array. See also [method push_back].\n"
"[b]Note:[/b] This method shifts every other element's index forward, which "
"may have a noticeable performance cost, especially on larger arrays."
msgstr ""
"Ajoute un élément au début du tableau. Voir aussi [method push_back].\n"
"[b]Note :[/b] Cette méthode déplace l'index de chaque autre élément vers "
"l'avant, ce qui peut avoir un coût de performance notable, en particulier sur "
"les tableaux plus grands."

msgid ""
"Calls the given [Callable] for each element in array, accumulates the result "
"in [param accum], then returns it.\n"
"The [param method] takes two arguments: the current value of [param accum] "
"and the current array element. If [param accum] is [code]null[/code] (as by "
"default), the iteration will start from the second element, with the first "
"one used as initial value of [param accum].\n"
"[codeblock]\n"
"func sum(accum, number):\n"
"\treturn accum + number\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].reduce(sum, 0))  # Prints 6\n"
"\tprint([1, 2, 3].reduce(sum, 10)) # Prints 16\n"
"\n"
"\t# Same as above, but using a lambda function.\n"
"\tprint([1, 2, 3].reduce(func(accum, number): return accum + number, 10))\n"
"[/codeblock]\n"
"If [method max] is not desirable, this method may also be used to implement a "
"custom comparator:\n"
"[codeblock]\n"
"func _ready():\n"
"\tvar arr = [Vector2i(5, 0), Vector2i(3, 4), Vector2i(1, 2)]\n"
"\n"
"\tvar longest_vec = arr.reduce(func(max, vec): return vec if "
"is_length_greater(vec, max) else max)\n"
"\tprint(longest_vec) # Prints (3, 4)\n"
"\n"
"func is_length_greater(a, b):\n"
"\treturn a.length() > b.length()\n"
"[/codeblock]\n"
"This method can also be used to count how many elements in an array satisfy a "
"certain condition, similar to [method count]:\n"
"[codeblock]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tvar arr = [1, 2, 3, 4, 5]\n"
"\t# If the current element is even, increment count, otherwise leave count "
"the same.\n"
"\tvar even_count = arr.reduce(func(count, next): return count + 1 if "
"is_even(next) else count, 0)\n"
"\tprint(even_count) # Prints 2\n"
"[/codeblock]\n"
"See also [method map], [method filter], [method any], and [method all]."
msgstr ""
"Appelle l'appelable [Callable] pour chaque élément du tableau, accumule le "
"résultat dans l'accumulateur [param accum], puis le renvoie.\n"
"La méthode [param method] prend deux arguments : la valeur actuelle de [param "
"accum] et l'élément du tableau actuel. Si [param accum] est [code]null[/code] "
"(comme par défaut), l'itération va commencer au second élément, avec le "
"premier élément utilisé comme valeur initiale de [param accum].\n"
"[codeblock]\n"
"func somme(accum, nombre):\n"
"\treturn accum + nombre\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].reduce(somme, 0))  # Affiche 6\n"
"\tprint([1, 2, 3].reduce(somme, 10)) # Affiche 16\n"
"\n"
"\t# Comme au dessus, mais avec une fonction lambda.\n"
"\tprint([1, 2, 3].reduce(func(accum, nombre): return accum + nombre, 10))\n"
"[/codeblock]\n"
"Si [method max] n'est pas désirable, cette méthode peut aussi être utilisé "
"pour implémenter un comparateur personnalisé :\n"
"[codeblock]\n"
"func _ready():\n"
"\tvar arr = [Vector2i(5, 0), Vector2i(3, 4), Vector2i(1, 2)]\n"
"\n"
"\tvar vecteur_le_plus_long = arr.reduce(func(max, vec): return vec if "
"est_plus_long(vec, max) else max)\n"
"\tprint(vecteur_le_plus_long) # Affiche (3, 4)\n"
"\n"
"func est_plus_long(a, b):\n"
"\treturn a.length() > b.length()\n"
"[/codeblock]\n"
"Cette méthode peut aussi être utilisée pour compter combien d'éléments dans "
"un tableau satisfont une condition donné, comme avec [method count] :\n"
"[codeblock]\n"
"func est_pair(nombre):\n"
"\treturn nombre % 2 == 0\n"
"\n"
"func _ready():\n"
"\tvar arr = [1, 2, 3, 4, 5]\n"
"\t# Si l'élément actuel est pair, incrémente le compte, sinon laisse le "
"compte inchangé.\n"
"\tvar compte_pair = arr.reduce(func(compte, prochain): return compte + 1 if "
"est_pair(prochain) else compte, 0)\n"
"\tprint(compte_pair ) # Affiche 2\n"
"[/codeblock]\n"
"Voir aussi [method map], [method filter], [method any], et [method all]."

msgid ""
"Removes the element from the array at the given index ([param position]). If "
"the index is out of bounds, this method fails. If the index is negative, "
"[param position] is considered relative to the end of the array.\n"
"If you need to return the removed element, use [method pop_at]. To remove an "
"element by value, use [method erase] instead.\n"
"[b]Note:[/b] This method shifts every element's index after [param position] "
"back, which may have a noticeable performance cost, especially on larger "
"arrays.\n"
"[b]Note:[/b] The [param position] cannot be negative. To remove an element "
"relative to the end of the array, use [code]arr.remove_at(arr.size() - (i + "
"1))[/code]. To remove the last element from the array, use "
"[code]arr.resize(arr.size() - 1)[/code]."
msgstr ""
"Retire l'élément du tableau à l'index donné ([param position]). Si l'index "
"est hors des limites, cette méthode échoue. Si l'index est négativ, [param "
"position] est considéré comme relatif par rapport à la fin du tableau.\n"
"Si vous devez renvoyer l'élément enlevé, utilisez [method pop_at]. Pour "
"supprimer un élément par valeur, utilisez [method erase] à la place.\n"
"[b]Note :[/b] Cette méthode déplace l'index de chaque élément après [param "
"position] en arrière, ce qui peut avoir un coût de performance notable, en "
"particulier sur les tableaux plus grands.\n"
"[b]Note :[/b] La [param position] ne peut être négative. Pour supprimer un "
"élément relatif à la fin du tableau, utilisez [code]tab.remove_at(tab.size() "
"- (i + 1))[/code]. Pour supprimer le dernier élément du tableau, utilisez "
"[code]tab.resize(tab.size() - 1)[/code]."

msgid ""
"Sets the array's number of elements to [param size]. If [param size] is "
"smaller than the array's current size, the elements at the end are removed. "
"If [param size] is greater, new default elements (usually [code]null[/code]) "
"are added, depending on the array's type.\n"
"Returns [constant OK] on success, or one of the following [enum Error] "
"constants if this method fails: [constant ERR_LOCKED] if the array is read-"
"only, [constant ERR_INVALID_PARAMETER] if the size is negative, or [constant "
"ERR_OUT_OF_MEMORY] if allocations fail. Use [method size] to find the actual "
"size of the array after resize.\n"
"[b]Note:[/b] Calling this method once and assigning the new values is faster "
"than calling [method append] for every new element."
msgstr ""
"Définit le nombre d'éléments du tableau à la taille [param size]. Si [param "
"size] est plus petite que la taille actuelle du tableau, les éléments à la "
"fin sont enlevés. Si [param size] est plus grande, de nouveaux éléments par "
"défaut (généralement [code]null[/code]) sont ajoutés, selon le type du "
"tableau.\n"
"Renvoie [constant OK] lors du succès, ou l'une des constantes [enum Error] "
"suivantes si cette méthode échoue : [constant ERR_LOCKED] si le tableau est "
"en lecture seule, [constant ERR_INVALID_PARAMETER] si la taille est négative, "
"ou [constant ERR_OUT_OF_MEMORY] si les allocations échouent. Utilisez [method "
"size] pour trouver la taille réelle du tableau après le redimensionnement.\n"
"[b]Note :[/b] Appeler cette méthode une fois et attribuer les nouvelles "
"valeurs est plus rapide que d'appeler [method append] pour chaque nouvel "
"élément."

msgid "Reverses the order of all elements in the array."
msgstr "Inverse l'ordre des éléments du tableau."

msgid ""
"Returns the index of the [b]last[/b] occurrence of [param what] in this "
"array, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the beginning of the array. This "
"method is the reverse of [method find]."
msgstr ""
"Renvoie l'index de la [b]dernière[/b] occurrence de l'objet[param what] dans "
"ce tableau, ou [code]-1[/code] s'il n'y en a pas. Le début de la recherche "
"peut être spécifié avec [param from], continuant vers le début du tableau. "
"Cette méthode est l'inverse de [method find]."

msgid ""
"Returns the index of the [b]last[/b] element of the array that causes [param "
"method] to return [code]true[/code], or [code]-1[/code] if there are none. "
"The search's start can be specified with [param from], continuing to the "
"beginning of the array. This method is the reverse of [method find_custom]."
msgstr ""
"Renvoie l'index du [b]dernier[/b] élément du tableau qui provoque [param "
"method] de renvoyer [code]true[/code], ou [code]-1[/code] s'il n'y en a pas. "
"Le début de la recherche peut être spécifié avec [param from], continuant "
"vers le début du tableau. Cette méthode est l'inverse de [method find_custom]."

msgid ""
"Sets the value of the element at the given [param index] to the given [param "
"value]. This will not change the size of the array, it only changes the value "
"at an index already in the array. This is the same as using the [code][][/"
"code] operator ([code]array[index] = value[/code])."
msgstr ""
"Définit la valeur de l'élément à la position [param index] donné à la valeur "
"[param value] donnée. Cela ne changera pas la taille du tableau, ça ne change "
"que la valeur à un index déjà dans le tableau. Cela revient à utiliser "
"l'opérateur [code][][/code] ([code]array[index] = value [/code])."

msgid ""
"Shuffles all elements of the array in a random order.\n"
"[b]Note:[/b] Like many similar functions in the engine (such as [method "
"@GlobalScope.randi] or [method pick_random]), this method uses a common, "
"global random seed. To get a predictable outcome from this method, see "
"[method @GlobalScope.seed]."
msgstr ""
"Mélange tous les éléments du tableau dans un ordre aléatoire.\n"
"[b]Note :[/b] Comme beaucoup de fonctions similaires dans le moteur (comme "
"[method @GlobalScope.randi] ou [method pick_random]), cette méthode utilise "
"une graine aléatoire commune et globale. Pour obtenir un résultat prévisible "
"de cette méthode, voir [method @GlobalScope.seed]."

msgid ""
"Returns the number of elements in the array. Empty arrays ([code][][/code]) "
"always return [code]0[/code]. See also [method is_empty]."
msgstr ""
"Renvoie le nombre d'éléments dans le tableau. Les tableaux vides ([code][][/"
"code]) renvoient toujours [code]0[/code]. Voir aussi [method is_empty]."

msgid ""
"Returns a new [Array] containing this array's elements, from index [param "
"begin] (inclusive) to [param end] (exclusive), every [param step] elements.\n"
"If either [param begin] or [param end] are negative, their value is relative "
"to the end of the array.\n"
"If [param step] is negative, this method iterates through the array in "
"reverse, returning a slice ordered backwards. For this to work, [param begin] "
"must be greater than [param end].\n"
"If [param deep] is [code]true[/code], all nested [Array] and [Dictionary] "
"elements in the slice are duplicated from the original, recursively. See also "
"[method duplicate].\n"
"[codeblock]\n"
"var letters = [\"A\", \"B\", \"C\", \"D\", \"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 2))  # Prints [\"A\", \"B\"]\n"
"print(letters.slice(2, -2)) # Prints [\"C\", \"D\"]\n"
"print(letters.slice(-2, 6)) # Prints [\"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 6, 2))  # Prints [\"A\", \"C\", \"E\"]\n"
"print(letters.slice(4, 1, -1)) # Prints [\"E\", \"D\", \"C\"]\n"
"[/codeblock]"
msgstr ""
"Renvoie un nouveau tableau [Array] contenant les éléments de ce tableau, de "
"l'index [param begin] (inclusif) à [param end] (exclusif), tous les [param "
"step] éléments.\n"
"Si [param begin] ou [param end] sont négatifs, leur valeur est relative par "
"rapport à la fin du tableau.\n"
"Si [param step] est négatif, cette méthode itère à travers le tableau en "
"marche arrière, renvoyant une tranche triée en inverse. Pour que cela "
"fonctionne, [param begin] doit être supérieur à [param end].\n"
"Si [param deep] vaut [code]true[/code], tous les éléments [Array] et "
"[Dictionary] imbriqués de la tranche sont dupliqués de l'original, "
"récursivement. Voir aussi [method duplicate].\n"
"[codeblock]\n"
"var lettres = [\"A\", \"B\", \"C\", \"D\", \"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 2) # Affiche [\"A\", \"B\"]\n"
"print(letters.slice(2, -2)) # Affiche [\"C\", \"D\"]\n"
"print(letters.slice(-2, 6)) # Affiche [\"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 6, 2)   # Affiche [\"A\", \"C\", \"E\"]\n"
"print(letters.slice(4, 1, -1)) # Affiche [\"E\", \"D\", \"C\"]\n"
"[/codeblock]"

msgid ""
"Sorts the array in ascending order. The final order is dependent on the "
"\"less than\" ([code]<[/code]) comparison between elements.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var numbers = [10, 5, 2.5, 8]\n"
"numbers.sort()\n"
"print(numbers) # Prints [2.5, 5, 8, 10]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array numbers = [10, 5, 2.5, 8];\n"
"numbers.Sort();\n"
"GD.Print(numbers); // Prints [2.5, 5, 8, 10]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/"
"wiki/Sorting_algorithm#Stability]stable[/url]. This means that equivalent "
"elements (such as [code]2[/code] and [code]2.0[/code]) may have their order "
"changed when calling [method sort]."
msgstr ""
"Trie le tableau dans l'ordre ascendant. L'ordre final dépend de la "
"comparaison \"inférieur à\" ([code]<[/code]) entre les éléments.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var nombres = [10, 5, 2.5, 8]\n"
"nombres .sort()\n"
"# Affiche [2.5, 5, 8, 10]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array nombres = [10, 5, 2.5, 8];\n"
"nombres.Sort();\n"
"GD.Print(nombres); // Affiche [2.5, 5, 8, 10]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] L'algorithme de tri utilisé n'est pas [url=https://"
"fr.wikipedia.org/wiki/Algorithme_de_tri#Tri_stable]stable[/url]. Cela "
"signifie que les éléments équivalents (tels que [code]2[/code] et [code]2.0[/"
"code]) peuvent avoir leur ordre modifié lors de l'appel de [method sort]."

msgid ""
"Sorts the array using a custom [Callable].\n"
"[param func] is called as many times as necessary, receiving two array "
"elements as arguments. The function should return [code]true[/code] if the "
"first element should be moved [i]before[/i] the second one, otherwise it "
"should return [code]false[/code].\n"
"[codeblock]\n"
"func sort_ascending(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar my_items = [[\"Tomato\", 5], [\"Apple\", 9], [\"Rice\", 4]]\n"
"\tmy_items.sort_custom(sort_ascending)\n"
"\tprint(my_items) # Prints [[\"Rice\", 4], [\"Tomato\", 5], [\"Apple\", 9]]\n"
"\n"
"\t# Sort descending, using a lambda function.\n"
"\tmy_items.sort_custom(func(a, b): return a[1] > b[1])\n"
"\tprint(my_items) # Prints [[\"Apple\", 9], [\"Tomato\", 5], [\"Rice\", 4]]\n"
"[/codeblock]\n"
"It may also be necessary to use this method to sort strings by natural order, "
"with [method String.naturalnocasecmp_to], as in the following example:\n"
"[codeblock]\n"
"var files = [\"newfile1\", \"newfile2\", \"newfile10\", \"newfile11\"]\n"
"files.sort_custom(func(a, b): return a.naturalnocasecmp_to(b) < 0)\n"
"print(files) # Prints [\"newfile1\", \"newfile2\", \"newfile10\", "
"\"newfile11\"]\n"
"[/codeblock]\n"
"[b]Note:[/b] In C#, this method is not supported.\n"
"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/"
"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values "
"considered equal may have their order changed when calling this method.\n"
"[b]Note:[/b] You should not randomize the return value of [param func], as "
"the heapsort algorithm expects a consistent result. Randomizing the return "
"value will result in unexpected behavior."
msgstr ""
"Trie le tableau en utilisant un appelable [Callable] personnalisé.\n"
"[param func] est appelé autant de fois que nécessaire, recevant deux éléments "
"de tableau comme arguments. La fonction devrait renvoyer [code]true[/code] si "
"le premier élément doit être déplacé [i]avant[/i] le deuxième, sinon elle "
"devrait renvoyer [code]false[/code].\n"
"[codeblock]\n"
"func tri_ascendant(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar mes_objets = [[\"Tomate\", 5], [\"Pomme\", 9], [\"Riz\", 4]]\n"
"\tmes_objets.sort_custom(tri_ascendant)\n"
"\tprint(mes_objets) # Affiche [[\"Riz\", 4], [\"Tomate\", 5], [\"Pomme\", "
"9]]\n"
"\n"
"\t# Tri descendant, mais avec une fonction lambda.\n"
"\tmes_objets.sort_custom(func(a, b): return a[1] > b[1])\n"
"\tprint(mes_objets) # Affiche [[\"Pomme\", 9], [\"Tomate\", 5], [\"Riz\", "
"4]]\n"
"[/codeblock]\n"
"Il peut être aussi nécessaire d'utiliser cette méthode pour trier des chaînes "
"de caractères dans l'ordre naturel, avec [method String.naturalnocasecmp_to], "
"comme dans l’exemple suivant :\n"
"[codeblock]\n"
"var fichiers = [\"nouveauficher1\", \"nouveauficher2\", \"nouveauficher10\", "
"\"nouveauficher11\"]\n"
"fichiers.sort_custom(func(a, b): return a.naturalnocasecmp_to(b) < 0)\n"
"print(files) # Affiche [\"nouveauficher1\", \"nouveauficher2\", "
"\"nouveauficher10\", \"nouveauficher11\"]\n"
"[/codeblock]\n"
"[b]Note :[/b] En C#, cette méthode n'est pas supportée.\n"
"[b]Note :[/b] L'algorithme de tri utilisé n'est pas [url=https://"
"fr.wikipedia.org/wiki/Algorithme_de_tri#Tri_stable]stable[/url]. Cela "
"signifie que les valeurs considérées comme égales peuvent avoir changé leur "
"ordre en appelant cette méthode.\n"
"[b]Note :[/b] Vous ne devriez pas randomiser la valeur de retour de [param "
"func], car l'algorithme de tri par tas s'attend à un résultat consistant. "
"Randomiser la valeur de retour va résulter en un comportement inattendu."

msgid ""
"Returns [code]true[/code] if the array's size or its elements are different "
"than [param right]'s."
msgstr ""
"Renvoie [code]true[/code] si la taille du tableau ou ses éléments sont "
"différent de ceux du tableau [param right]."

msgid ""
"Appends the [param right] array to the left operand, creating a new [Array]. "
"This is also known as an array concatenation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array1 = [\"One\", 2]\n"
"var array2 = [3, \"Four\"]\n"
"print(array1 + array2) # Prints [\"One\", 2, 3, \"Four\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Note that concatenation is not possible with C#'s native Array type.\n"
"Godot.Collections.Array array1 = [\"One\", 2];\n"
"Godot.Collections.Array array2 = [3, \"Four\"];\n"
"GD.Print(array1 + array2); // Prints [\"One\", 2, 3, \"Four\"]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] For existing arrays, [method append_array] is much more "
"efficient than concatenation and assignment with the [code]+=[/code] operator."
msgstr ""
"Ajoute le tableau [param right] à l'opérande de gauche, créant un nouvel "
"[Array]. Ceci est également connu comme une concaténation de tableau.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tableau1 = [\"Un\", 2]\n"
"var tableau2 = [3, \"Quatre\"]\n"
"print(tableau1 + tableau2) # Affiche [\"Un\", 2, 3, \"Quatre\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Notez que la concaténation n'est pas possible avec le type Array natif de "
"C#.\n"
"Godot.Collections.Array tableau1 = [\"Un\", 2];\n"
"Godot.Collections.Array tableau2 = [3, \"Quatre\"];\n"
"GD.Print(tableau1 + tableau2 ); // Affiche [\"Un\", 2, 3, \"Quatre\"]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Pour les tableaux existants, [method append_array] est beaucoup "
"plus efficace que la concaténation et l'affectation avec l'opérateur [code]"
"+=[/code]."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is less "
"than [param right]'s, [code]false[/code] if this element is greater. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is less than [param right]'s, otherwise returns [code]false[/code]."
msgstr ""
"Compare les éléments des deux tableaux dans l'ordre, à partir de l'index "
"[code]0[/code] et se terminant sur le dernier index en commun entre les deux "
"tableaux. Pour chaque paire d'éléments, renvoie [code]true[/code] si "
"l'élément de ce tableau est inférieur à celui de [param right], [code]false[/"
"code] si cet élément est supérieur. Sinon, continue avec la paire suivante.\n"
"Si tous les éléments cherchés sont égaux, renvoie [code]true[/code] si la "
"taille de ce tableau est inférieure à celle de [param right], sinon renvoie "
"[code]false[/code]."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is less "
"than [param right]'s, [code]false[/code] if this element is greater. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is less or equal to [param right]'s, otherwise returns [code]false[/"
"code]."
msgstr ""
"Compare les éléments des deux tableaux dans l'ordre, à partir de l'index "
"[code]0[/code] et se terminant sur le dernier index en commun entre les deux "
"tableaux. Pour chaque paire d'éléments, renvoie [code]true[/code] si "
"l'élément de ce tableau est inférieur à celui de [param right], [code]false[/"
"code] si cet élément est supérieur. Sinon, continue avec la paire suivante.\n"
"Si tous les éléments cherchés sont égaux, renvoie [code]true[/code] si la "
"taille de ce tableau est inférieure ou égale à celle de [param right], sinon "
"renvoie [code]false[/code]."

msgid ""
"Compares the left operand [Array] against the [param right] [Array]. Returns "
"[code]true[/code] if the sizes and contents of the arrays are equal, "
"[code]false[/code] otherwise."
msgstr ""
"Compare l'opérande gauche [Array] contre l'opérande droite [Array] [param "
"right]. Renvoie [code]true[/code] si les dimensions et le contenu des "
"tableaux sont égaux, [code]false[/code] sinon."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is "
"greater than [param right]'s, [code]false[/code] if this element is less. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is greater than [param right]'s, otherwise returns [code]false[/code]."
msgstr ""
"Compare les éléments des deux tableaux dans l'ordre, à partir de l'index "
"[code]0[/code] et se terminant sur le dernier index en commun entre les deux "
"tableaux. Pour chaque paire d'éléments, renvoie [code]true[/code] si "
"l'élément de ce tableau est supérieur à celui de [param right], [code]false[/"
"code] si cet élément est inférieur. Sinon, continue avec la paire suivante.\n"
"Si tous les éléments cherchés sont égaux, renvoie [code]true[/code] si la "
"taille de ce tableau est inférieure à celle de [param right], sinon renvoie "
"[code]false[/code]."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is "
"greater than [param right]'s, [code]false[/code] if this element is less. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is greater or equal to [param right]'s, otherwise returns [code]false[/"
"code]."
msgstr ""
"Compare les éléments des deux tableaux dans l'ordre, à partir de l'index "
"[code]0[/code] et se terminant sur le dernier index en commun entre les deux "
"tableaux. Pour chaque paire d'éléments, renvoie [code]true[/code] si "
"l'élément de ce tableau est supérieur à celui de [param right], [code]false[/"
"code] si cet élément est inférieur. Sinon, continue avec la paire suivante.\n"
"Si tous les éléments cherchés sont égaux, renvoie [code]true[/code] si la "
"taille de ce tableau est supérieure ou égale à celle de [param right], sinon "
"renvoie [code]false[/code]."

msgid ""
"Returns the [Variant] element at the specified [param index]. Arrays start at "
"index 0. If [param index] is greater or equal to [code]0[/code], the element "
"is fetched starting from the beginning of the array. If [param index] is a "
"negative value, the element is fetched starting from the end. Accessing an "
"array out-of-bounds will cause a run-time error, pausing the project "
"execution if run from the editor."
msgstr ""
"Renvoie l'élément [Variant] à la position [param index] spécifiée. Les "
"tableaux commencent à l'index 0. Si [param index] est supérieur ou égal à "
"[code]0[/code], l'élément est récupéré à partir du début du tableau. Si "
"[param index] est une valeur négative, l'élément est récupéré à partir de la "
"fin. L'accès à un tableau hors des limites causera une erreur d'exécution, "
"mettant en pose l'exécution du projet s'il est exécuté depuis l'éditeur."

msgid ""
"[Mesh] type that provides utility for constructing a surface from arrays."
msgstr ""
"Le type [Mesh] qui fournit un utilitaire pour la construction d'une nouvelle "
"surface à partir de tableaux."

msgid ""
"The [ArrayMesh] is used to construct a [Mesh] by specifying the attributes as "
"arrays.\n"
"The most basic example is the creation of a single triangle:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var vertices = PackedVector3Array()\n"
"vertices.push_back(Vector3(0, 1, 0))\n"
"vertices.push_back(Vector3(1, 0, 0))\n"
"vertices.push_back(Vector3(0, 0, 1))\n"
"\n"
"# Initialize the ArrayMesh.\n"
"var arr_mesh = ArrayMesh.new()\n"
"var arrays = []\n"
"arrays.resize(Mesh.ARRAY_MAX)\n"
"arrays[Mesh.ARRAY_VERTEX] = vertices\n"
"\n"
"# Create the Mesh.\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays)\n"
"var m = MeshInstance3D.new()\n"
"m.mesh = arr_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector3[] vertices =\n"
"[\n"
"\tnew Vector3(0, 1, 0),\n"
"\tnew Vector3(1, 0, 0),\n"
"\tnew Vector3(0, 0, 1),\n"
"];\n"
"\n"
"// Initialize the ArrayMesh.\n"
"var arrMesh = new ArrayMesh();\n"
"Godot.Collections.Array arrays = [];\n"
"arrays.Resize((int)Mesh.ArrayType.Max);\n"
"arrays[(int)Mesh.ArrayType.Vertex] = vertices;\n"
"\n"
"// Create the Mesh.\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, arrays);\n"
"var m = new MeshInstance3D();\n"
"m.Mesh = arrMesh;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The [MeshInstance3D] is ready to be added to the [SceneTree] to be shown.\n"
"See also [ImmediateMesh], [MeshDataTool] and [SurfaceTool] for procedural "
"geometry generation.\n"
"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
"OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive "
"modes."
msgstr ""
"L'[ArrayMesh] est utilisé pour construire un [Mesh] en spécifiant les "
"attributs comme des tableaux.\n"
"L'exemple le plus trivial est la création d'un simple triangle :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sommets = PackedVector3Array()\n"
"sommets.push_back(Vector3(0, 1, 0))\n"
"sommets.push_back(Vector3(1, 0, 0))\n"
"sommets.push_back(Vector3(0, 0, 1))\n"
"\n"
"# Initialiser l'ArrayMesh.\n"
"var arr_mesh = ArrayMesh.new()\n"
"var tableaux = []\n"
"tableaux.resize(Mesh.ARRAY_MAX)\n"
"tableaux[Mesh.ARRAY_VERTEX] = sommets\n"
"\n"
"# Créer le Mesh.\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, tableaux)\n"
"var m = MeshInstance3D.new()\n"
"m.mesh = arr_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"var sommets = new Vector3[]\n"
"{\n"
"\tnew Vector3(0, 1, 0),\n"
"\tnew Vector3(1, 0, 0),\n"
"\tnew Vector3(0, 0, 1),\n"
"};\n"
"\n"
"// Initialiser l'ArrayMesh.\n"
"var arrMesh = new ArrayMesh();\n"
"var tableaux = new Godot.Collections.Array();\n"
"tableaux.Resize((int)Mesh.ArrayType.Max);\n"
"tableaux[(int)Mesh.ArrayType.Vertex] = sommets;\n"
"\n"
"// Créer le Mesh.\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, tableaux);\n"
"var m = new MeshInstance3D();\n"
"m.Mesh = arrMesh;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"La [MeshInstance3D] est prête à être ajoutée au [SceneTree] pour être "
"affichée.\n"
"Voir aussi [ImmediateMesh], [MeshDataTool] et [SurfaceTool] pour la "
"génération procédurale de géométries.\n"
"[b]Note :[/b] Godot utilise le [url=https://learnopengl.com/Advanced-OpenGL/"
"Face-culling]sens horaire[/url] pour les faces avant dans les modes de "
"primitives de triangles."

msgid "Procedural geometry using the ArrayMesh"
msgstr "Géométrie procédurale en utilisant l'ArrayMesh"

msgid ""
"Adds name for a blend shape that will be added with [method "
"add_surface_from_arrays]. Must be called before surface is added."
msgstr ""
"Ajoute un nom au blend shape qui sera ajouté avec [method "
"add_surface_from_arrays]. Doit être appelé avant que la surface soit ajoutée."

msgid ""
"Creates a new surface. [method Mesh.get_surface_count] will become the "
"[code]surf_idx[/code] for this new surface.\n"
"Surfaces are created to be rendered using a [param primitive], which may be "
"any of the values defined in [enum Mesh.PrimitiveType].\n"
"The [param arrays] argument is an array of arrays. Each of the [constant "
"Mesh.ARRAY_MAX] elements contains an array with some of the mesh data for "
"this surface as described by the corresponding member of [enum "
"Mesh.ArrayType] or [code]null[/code] if it is not used by the surface. For "
"example, [code]arrays[0][/code] is the array of vertices. That first vertex "
"sub-array is always required; the others are optional. Adding an index array "
"puts this surface into \"index mode\" where the vertex and other arrays "
"become the sources of data and the index array defines the vertex order. All "
"sub-arrays must have the same length as the vertex array (or be an exact "
"multiple of the vertex array's length, when multiple elements of a sub-array "
"correspond to a single vertex) or be empty, except for [constant "
"Mesh.ARRAY_INDEX] if it is used.\n"
"The [param blend_shapes] argument is an array of vertex data for each blend "
"shape. Each element is an array of the same structure as [param arrays], but "
"[constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL], and [constant "
"Mesh.ARRAY_TANGENT] are set if and only if they are set in [param arrays] and "
"all other entries are [code]null[/code].\n"
"The [param lods] argument is a dictionary with [float] keys and "
"[PackedInt32Array] values. Each entry in the dictionary represents an LOD "
"level of the surface, where the value is the [constant Mesh.ARRAY_INDEX] "
"array to use for the LOD level and the key is roughly proportional to the "
"distance at which the LOD stats being used. I.e., increasing the key of an "
"LOD also increases the distance that the objects has to be from the camera "
"before the LOD is used.\n"
"The [param flags] argument is the bitwise OR of, as required: One value of "
"[enum Mesh.ArrayCustomFormat] left shifted by "
"[code]ARRAY_FORMAT_CUSTOMn_SHIFT[/code] for each custom channel in use, "
"[constant Mesh.ARRAY_FLAG_USE_DYNAMIC_UPDATE], [constant "
"Mesh.ARRAY_FLAG_USE_8_BONE_WEIGHTS], or [constant "
"Mesh.ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY].\n"
"[b]Note:[/b] When using indices, it is recommended to only use points, lines, "
"or triangles."
msgstr ""
"Crée une nouvelle surface. [method Mesh.get_surface_count] deviendra le "
"[code]surf_idx[/code] pour cette nouvelle surface.\n"
"Les surfaces sont créées pour être rendues en utilisant une [param "
"primitive], qui peut être l'une des valeurs définies dans [enum "
"Mesh.PrimitiveType].\n"
"L'argument [param arrays] est un tableau de tableaux. Chacune des [constant "
"Mesh.ARRAY_MAX] éléments contient un tableau contenant certaines données du "
"maillage pour cette surface, comme le décrit le membre correspondant de [enum "
"Mesh.ArrayType] ou [code]null[/code] s'il n'est pas utilisé par la surface. "
"Par exemple, [code]arrays[0][/code] est le tableau des sommets. Ce premier "
"sous-tableau de sommets est toujours nécessaire ; les autres sont optionnels. "
"L'ajout d'un tableau d'index met cette surface en \"mode index\" où les "
"sommets et les autres tableaux deviennent les sources de données et le "
"tableau d'index définit l'ordre des sommets. Tous les sous-tableaux doivent "
"avoir la même longueur que le tableau des sommets (ou être un multiple exact "
"de la longueur du tableau des sommets, lorsque plusieurs éléments d'un sous-"
"réseau correspondent à un seul sommet) ou être vides, à l'exception de "
"[constant Mesh.ARRAY_INDEX] s'il est utilisé.\n"
"L'argument [param blend_shapes] est un tableau de données sommet pour chaque "
"blend shape. Chaque élément est un tableau de la même structure que [param "
"arrays], mais [constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL], et "
"[constant Mesh.ARRAY_TANGENT] sont définis si et seulement si ils sont "
"définis dans [param arrays] et toutes les autres entrées sont [code]null[/"
"code].\n"
"L'argument [param lods] est un dictionnaire avec des clés [float] et des "
"valeurs [PackedInt32Array]. Chaque entrée dans le dictionnaire représente un "
"niveau de LOD de la surface, où la valeur est le tableau [constant "
"Mesh.ARRAY_INDEX] à utiliser pour le niveau de LOD et la clé est "
"grossièrement proportionnelle à la distance à laquelle les statistiques de "
"LOD sont utilisées. Par exemple, augmenter la clé d'un LOD augmente également "
"la distance à laquelle les objets doivent être de la caméra avant que le LOD "
"soit utilisé.\n"
"L'argument [param flags] est le OU par bits de, comme requis : Une valeur de "
"[enum Mesh.ArrayCustomFormat] décalée à gauche par "
"[code]ARRAY_FORMAT_CUSTOMn_SHIFT[/code] pour chaque canal personnalisé "
"utilisé, [constant Mesh.ARRAY_FLAG_USE_DYNAMIC_UPDATE], [constant "
"Mesh.ARRAY_FLAG_USE_8_BONE_WEIGHTS], ou [constant "
"Mesh.ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY].\n"
"[b]Note :[/b] Lors de l'utilisation d'indices, il est recommandé d'utiliser "
"uniquement des points, des lignes ou des triangles."

msgid "Removes all blend shapes from this [ArrayMesh]."
msgstr "Retire toutes les formes de mélange de ce [ArrayMesh]."

msgid "Removes all surfaces from this [ArrayMesh]."
msgstr "Retirer toutes les surfaces de ce [ArrayMesh]."

msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
msgstr "Renvoie le nombre de blend shapes détenues par ce [ArrayMesh]."

msgid "Returns the name of the blend shape at this index."
msgstr "Renvoie le nom de la blend shape à cette position."

msgid ""
"Performs a UV unwrap on the [ArrayMesh] to prepare the mesh for lightmapping."
msgstr ""
"Exécute un dépliage des UV sur l'[ArrayMesh] pour préparer le maillage au "
"lightmapping."

msgid "Regenerates tangents for each of the [ArrayMesh]'s surfaces."
msgstr "Régénère les tangentes pour chacune des surfaces de [ArrayMesh]."

msgid "Sets the name of the blend shape at this index."
msgstr "Définit le nom de la blend shape à cet index."

msgid ""
"Returns the index of the first surface with this name held within this "
"[ArrayMesh]. If none are found, -1 is returned."
msgstr ""
"Renvoie l'index de la première surface avec ce nom dans ce [ArrayMesh]. Si "
"aucune surface n'existe, -1 est renvoyé."

msgid ""
"Returns the length in indices of the index array in the requested surface "
"(see [method add_surface_from_arrays])."
msgstr ""
"Renvoie la longueur des indices du tableau d'indices pour la surface "
"spécifiée (voir [method add_surface_from_arrays])."

msgid ""
"Returns the length in vertices of the vertex array in the requested surface "
"(see [method add_surface_from_arrays])."
msgstr ""
"Renvoie la longueur en sommets du tableau des sommets dans la surface "
"spécifiée (voir [method add_surface_from_arrays])."

msgid ""
"Returns the format mask of the requested surface (see [method "
"add_surface_from_arrays])."
msgstr ""
"Renvoie le masque de format de la surface demandée (voir [method "
"add_surface_from_arrays])."

msgid "Gets the name assigned to this surface."
msgstr "Obtient le nom assigné à cette surface."

msgid ""
"Returns the primitive type of the requested surface (see [method "
"add_surface_from_arrays])."
msgstr ""
"Renvoie le type primitif de la surface demandée (voir [method "
"add_surface_from_arrays])."

msgid ""
"Removes the surface at the given index from the Mesh, shifting surfaces with "
"higher index down by one."
msgstr ""
"Supprime la surface à l'index donné du maillage, en décalant les surfaces "
"avec un index plus élevé d'un vers le bas."

msgid "Sets a name for a given surface."
msgstr "Définit le nom donné à cette surface."

msgid "The blend shape mode."
msgstr "Le mode de blend shape."

msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unexpected culling when using a shader to offset "
"vertices."
msgstr ""
"Surcharge le [AABB] avec celui défini par l'utilisateur pour le calcul du "
"culling d'affichage. Particulièrement utile pour éviter un culling inattendu "
"lors de l'utilisation d'un shader qui décale les sommets."

msgid ""
"An optional mesh which can be used for rendering shadows and the depth "
"prepass. Can be used to increase performance by supplying a mesh with fused "
"vertices and only vertex position data (without normals, UVs, colors, etc.).\n"
"[b]Note:[/b] This mesh must have exactly the same vertex positions as the "
"source mesh (including the source mesh's LODs, if present). If vertex "
"positions differ, then the mesh will not draw correctly."
msgstr ""
"Un maillage optionnel qui peut être utilisé pour rendre les ombres et la pré-"
"passe de profondeur. Peut être utilisé pour améliorer les performances en "
"fournissant un maillage avec des sommets fusionnés et seulement des données "
"de position de sommets (sans normales, UV, couleurs, etc.).\n"
"[b]Note :[/b] Ce maillage doit avoir exactement les mêmes sommets que le "
"maillage source (y compris les LOD du maillage source, si présents). Si les "
"positions des sommets diffèrent, le maillage ne se dessinera pas correctement."

msgid "3D polygon shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Forme de polygone 3D à utiliser avec l'occlusion culling dans "
"[OccluderInstance3D]."

msgid ""
"[ArrayOccluder3D] stores an arbitrary 3D polygon shape that can be used by "
"the engine's occlusion culling system. This is analogous to [ArrayMesh], but "
"for occluders.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[ArrayOccluder3D] stocke une forme de polygone 3D arbitraire qui peut être "
"utilisée par le système d'occlusion culling du moteur. Ceci est analogue à "
"[ArrayMesh], mais pour les occulteurs.\n"
"Voir la documentation de [OccluderInstance3D] pour les instructions sur la "
"mise en place de l'occlusion culling."

msgid "Occlusion culling"
msgstr "Occlusion culling"

msgid ""
"Sets [member indices] and [member vertices], while updating the final "
"occluder only once after both values are set."
msgstr ""
"Définit [member indices] et [member vertices], tout en mettant à jour "
"l'occulteur final une fois seulement, après que les deux valeurs soient "
"définies."

msgid ""
"The occluder's index position. Indices determine which points from the "
"[member vertices] array should be drawn, and in which order.\n"
"[b]Note:[/b] The occluder is always updated after setting this value. If "
"creating occluders procedurally, consider using [method set_arrays] instead "
"to avoid updating the occluder twice when it's created."
msgstr ""
"La position d'index de l'occulteur. Les indices déterminent quels points du "
"tableau [member vertices] devraient être dessinés, et dans quel ordre.\n"
"[b]Note :[/b] L'occulteur est toujours mis à jour après avoir défini cette "
"valeur. Si vous créez des occulteurs de façon procédurale, envisagez "
"d'utiliser [method set_arrays] à la place pour éviter de mettre à jour "
"l'occulteur deux fois lorsqu'il est créé."

msgid ""
"The occluder's vertex positions in local 3D coordinates.\n"
"[b]Note:[/b] The occluder is always updated after setting this value. If "
"creating occluders procedurally, consider using [method set_arrays] instead "
"to avoid updating the occluder twice when it's created."
msgstr ""
"Les positions des sommets de l'occulteur dans les coordonnées 3D locales.\n"
"[b]Note :[/b] L'occulteur est toujours mis à jour après avoir défini cette "
"valeur. Si vous créez des occulteur de façon procédurale, envisagez "
"d'utiliser [method set_arrays] pour éviter de mettre à jour l'occulteur deux "
"fois lorsqu'il est créé."

msgid "A container that preserves the proportions of its child controls."
msgstr "Un conteneur qui préserve les proportions des contrôles enfants."

msgid ""
"A container type that arranges its child controls in a way that preserves "
"their proportions automatically when the container is resized. Useful when a "
"container has a dynamic size and the child nodes must adjust their sizes "
"accordingly without losing their aspect ratios."
msgstr ""
"Un type de conteneur qui arrange ses contrôles enfants d'une manière qui "
"préserve leurs proportions automatiquement lorsque le conteneur est "
"redimensionné. Utile quand un conteneur a une taille dynamique et les nœuds "
"enfants doivent ajuster leurs tailles en conséquence sans perdre leurs ratios "
"d'aspect."

msgid "Using Containers"
msgstr "Utilisation des conteneurs"

msgid "Specifies the horizontal relative position of child controls."
msgstr "Définit la position horizontale relative des nœuds enfants."

msgid "Specifies the vertical relative position of child controls."
msgstr "Définit la position verticale relative des nœuds enfants."

msgid ""
"The aspect ratio to enforce on child controls. This is the width divided by "
"the height. The ratio depends on the [member stretch_mode]."
msgstr ""
"Le rapport d'aspect à forcer sur les contrôles enfants. C'est la largeur "
"divisée par la hauteur. Le rapport dépend du mode [member stretch_mode]."

msgid "The stretch mode used to align child controls."
msgstr "Le mode d'étirement utilisé pour aligner les contrôles enfants."

msgid ""
"The height of child controls is automatically adjusted based on the width of "
"the container."
msgstr ""
"La hauteur des contrôles enfants seront automatiquement ajusté en fonction de "
"la largeur du conteneur."

msgid ""
"The width of child controls is automatically adjusted based on the height of "
"the container."
msgstr ""
"La largeur des contrôles enfants seront automatiquement ajusté en fonction de "
"la hauteur du conteneur."

msgid ""
"The bounding rectangle of child controls is automatically adjusted to fit "
"inside the container while keeping the aspect ratio."
msgstr ""
"Le rectangle limitant des contrôles enfants est automatiquement ajusté pour "
"s'adapter à l'intérieur du conteneur tout en gardant le rapport d'aspect."

msgid ""
"The width and height of child controls is automatically adjusted to make "
"their bounding rectangle cover the entire area of the container while keeping "
"the aspect ratio.\n"
"When the bounding rectangle of child controls exceed the container's size and "
"[member Control.clip_contents] is enabled, this allows to show only the "
"container's area restricted by its own bounding rectangle."
msgstr ""
"La largeur et la hauteur des contrôles enfants sont automatiquement ajustées "
"pour que leur rectangle délimitant recouvre toute la zone du conteneur tout "
"en gardant le même rapport d'aspect.\n"
"Lorsque le rectangle délimitant des contrôles enfants dépasse la taille du "
"conteneur et que [member Control.clip_contents] est activé, cela permet "
"d'afficher seulement la zone du conteneur restreinte à son propre rectangle "
"délimitant."

msgid "Aligns child controls with the beginning (left or top) of the container."
msgstr "Aligne les enfants au début (à gauche ou en haut) du conteneur."

msgid "Aligns child controls with the center of the container."
msgstr "Aligne les contrôles enfants au centre du conteneur."

msgid "Aligns child controls with the end (right or bottom) of the container."
msgstr "Aligne les enfants à la fin (à droite ou en-bas) du conteneur."

msgid ""
"An implementation of A* for finding the shortest path between two vertices on "
"a connected graph in 2D space."
msgstr ""
"Une implémentation de A* pour trouver le chemin le plus court entre deux "
"sommets d'un graphe connecté dans l'espace 2D."

msgid ""
"An implementation of the A* algorithm, used to find the shortest path between "
"two vertices on a connected graph in 2D space.\n"
"See [AStar3D] for a more thorough explanation on how to use this class. "
"[AStar2D] is a wrapper for [AStar3D] that enforces 2D coordinates."
msgstr ""
"Une implémentation de l'algorithme A* pour trouver le chemin le plus court "
"entre deux sommets d'un graphe connecté dans l'espace 2D.\n"
"Voir [AStar3D] pour une explication plus détaillée de comment utiliser cette "
"classe. [AStar2D] est un wrapper pour [AStar3D] qui impose des coordonnées 2D."

msgid "Grid-based Navigation with AStarGrid2D Demo"
msgstr "Démo de navigation sur une grille avec AStarGrid2D"

msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [AStar2D] class."
msgstr ""
"Appelée lors du calcul du coût entre deux points connectés.\n"
"À noter que cette fonction est cachée dans la classe [AStar2D] par défaut."

msgid ""
"Called when estimating the cost between a point and the path's ending point.\n"
"Note that this function is hidden in the default [AStar2D] class."
msgstr ""
"Appelée lors du calcul du coût entre un point et le point final du chemin.\n"
"À noter que cette fonction est cachée dans la classe [AStar2D] par défaut."

msgid ""
"Called when neighboring enters processing and if [member "
"neighbor_filter_enabled] is [code]true[/code]. If [code]true[/code] is "
"returned the point will not be processed.\n"
"Note that this function is hidden in the default [AStar2D] class."
msgstr ""
"Appelée lorsque le voisin commence à être traité et si [member "
"neighbor_filter_enabled] vaut [code]true[/code]. Si [code]true[/code] est "
"renvoyé, le point ne sera pas traité.\n"
"Notez que cette fonction est cachée dans la classe [AStar2D] par défaut."

msgid ""
"Adds a new point at the given position with the given identifier. The [param "
"id] must be 0 or larger, and the [param weight_scale] must be 0.0 or "
"greater.\n"
"The [param weight_scale] is multiplied by the result of [method "
"_compute_cost] when determining the overall cost of traveling across a "
"segment from a neighboring point to this point. Thus, all else being equal, "
"the algorithm prefers points with lower [param weight_scale]s to form a "
"path.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 0), 4) # Adds the point (1, 0) with "
"weight_scale 4 and id 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 0), 4); // Adds the point (1, 0) with "
"weight_scale 4 and id 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If there already exists a point for the given [param id], its position and "
"weight scale are updated to the given values."
msgstr ""
"Ajoute un nouveau point à la position spécifiée avec l'identifiant donné. "
"L'identifiant [param id] doit être supérieur ou égal à 0, et le facteur de "
"poids [param weight_scale] doit être supérieur ou égal à 0.0.\n"
"Le facteur de poids [param weight_scale] est multiplié par le résultat de "
"[method _compute_cost] pour déterminer le coût global d'une traversée d'un "
"segment depuis un point voisin jusqu'à ce point. Ainsi, si la distance est la "
"même, l'algorithme préfèrera les points avec le facteur de poids [param "
"weight_scale] le plus bas pour construire le chemin.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 0), 4) # Ajoute le point (1, 0) avec le facteur "
"de poids à 4 et l'identifiant 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 0), 4); // Ajoute le point (1, 0) avec le "
"facteur de poids à 4 et l'identifiant 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Si un point existe déjà pour l'identifiant [param id] donné, sa position et "
"son facteur de poids seront mis à jour avec la valeur donnée."

msgid ""
"Returns whether there is a connection/segment between the given points. If "
"[param bidirectional] is [code]false[/code], returns whether movement from "
"[param id] to [param to_id] is possible through this segment."
msgstr ""
"Indique si les deux points donnés sont reliés par un segment ou une "
"connexion. Si [param bidirectional] vaut [code]false[/code], indique si le "
"mouvement de l'identifiant [param id] vers l'autre identifiant [param to_id] "
"est possible par ce segment."

msgid "Clears all the points and segments."
msgstr "Retire tous les points et segments."

msgid ""
"Creates a segment between the given points. If [param bidirectional] is "
"[code]false[/code], only movement from [param id] to [param to_id] is "
"allowed, not the reverse direction.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 1))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 1));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Crée un segment entre les points donnés. Si [param bidirectional] vaut "
"[code]false[/code], seul le mouvement de [param id] vers [param to_id] sera "
"autorisé, et non le sens inverse.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 1))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 1));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Deletes the segment between the given points. If [param bidirectional] is "
"[code]false[/code], only movement from [param id] to [param to_id] is "
"prevented, and a unidirectional segment possibly remains."
msgstr ""
"Supprime le segment entre les points donnés. Si [param bidirectional] vaut "
"[code]false[/code], seul le mouvement de l'identifiant [param id] vers "
"l'autre identifiant [param to_id] est empêché, et un segment unidirectionnel "
"peut rester."

msgid "Returns the next available point ID with no point associated to it."
msgstr ""
"Renvoie l'identifiant du point disponible suivant avec aucun point lui étant "
"associé."

msgid ""
"Returns the ID of the closest point to [param to_position], optionally taking "
"disabled points into account. Returns [code]-1[/code] if there are no points "
"in the points pool.\n"
"[b]Note:[/b] If several points are the closest to [param to_position], the "
"one with the smallest ID will be returned, ensuring a deterministic result."
msgstr ""
"Renvoie l'identifiant du point le plus proche de [param to_position], en "
"prenant en compte les points désactivés en option. Renvoie [code]-1[/code] "
"s'il n'y a pas de points dans l'ensemble de points.\n"
"[b]Note :[/b] Si plusieurs points sont proches de [param to_position], celui "
"avec le plus petit identifiant sera renvoyé, permettant d'obtenir un résultat "
"déterministe."

msgid ""
"Returns the closest position to [param to_position] that resides inside a "
"segment between two connected points.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector2(3, 3)) # Returns (0, "
"3)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector2 res = astar.GetClosestPositionInSegment(new Vector2(3, 3)); // "
"Returns (0, 3)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
"5[/code]. It's the closest position in the segment to the given point."
msgstr ""
"Renvoie la position la plus proche de [param to_position] qui est à "
"l'intérieur du segment entre deux points connectés.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector2(3, 3)) # Renvoie (0, "
"3)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector2 res = astar.GetClosestPositionInSegment(new Vector2(3, 3)); // "
"Renvoie (0, 3)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Le résultat est dans le segment qui va de [code]y = 0[/code] à [code]y = 5[/"
"code]. C'est la position la plus proche sur le segment du point donné."

msgid ""
"Returns an array with the IDs of the points that form the path found by "
"AStar2D between the given points. The array is ordered from the starting "
"point to the ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] When [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1), 1) # Default weight is 1\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1), 1); // Default weight is 1\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Returns [1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you change the 2nd point's weight to 3, then the result will be [code][1, "
"4, 3][/code] instead, because now even though the distance is longer, it's "
"\"easier\" to get through point 4 than through point 2."
msgstr ""
"Renvoie un tableau avec les identifiants des points qui forment le chemin "
"trouvé par AStar2D entre les points donnés. Le tableau est dans l'ordre du "
"point de départ vers celui de l'arrivée.\n"
"S'il n'y a pas de chemin valide vers la cible, et [param allow_partial_path] "
"vaut [code]true[/code], renvoie un chemin vers le point le plus proche de la "
"cible qui peut être atteint.\n"
"[b]Note :[/b] Lorsque [param allow_partial_path] vaut [code]true[/code] et "
"[param to_id] est désactivé, la recherche peut prendre un temps inhabituel à "
"se terminer.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1), 1) # Le poids par défaut est 1\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Renvoie [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1), 1); // Le poids par défaut est 1\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Renvoie[1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Si vous changez le poids du deuxième point à 3, alors le résultat sera [code]"
"[1, 4, 3][/code] à la place, parce que même si la distance est plus grande, "
"c'est plus \"facile\" d'aller en passant par le point 4 que le point 2."

msgid ""
"Returns the capacity of the structure backing the points, useful in "
"conjunction with [method reserve_space]."
msgstr ""
"Renvoie la capacité de la structure qui garde les points en cache, utile avec "
"[method reserve_space]."

msgid ""
"Returns an array with the IDs of the points that form the connection with the "
"given point.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1))\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1));\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un tableau avec les identifiants des points qui forment une connexion "
"avec le point donné.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1))\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var voisins = astar.get_point_connections(1) # Renvoie [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1));\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] voisins = astar.GetPointConnections(1); // Renvoie [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the number of points currently in the points pool."
msgstr "Renvoie le nombre de points actuellement dans le pool de points."

msgid "Returns an array of all point IDs."
msgstr "Renvoie un tableau de tous les identifiants des points."

msgid ""
"Returns an array with the points that are in the path found by AStar2D "
"between the given points. The array is ordered from the starting point to the "
"ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] This method is not thread-safe; it can only be used from a "
"single [Thread] at a given time. Consider using [Mutex] to ensure exclusive "
"access to one thread to avoid race conditions.\n"
"Additionally, when [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish."
msgstr ""
"Renvoie un tableau avec les points qui sont dans le chemin trouvé par AStar2D "
"entre les points donnés. Le tableau est trié du point de départ au point "
"final du chemin.\n"
"S'il n'y a pas de chemin valide vers la cible, et [param allow_partial_path] "
"vaut [code]true[/code], renvoie un chemin vers le point le plus proche de la "
"cible qui peut être atteinte.\n"
"[b]Note :[/b] Cette méthode n'est pas thread-safe, elle ne peut être appelée "
"que depuis un seul [Thread] à un instant donné. Envisagez d'utiliser des "
"[Mutex] pour vous assurer de l'accès exclusif à un thread pour éviter des "
"accès concurrents.\n"
"De plus, lorsque [param allow_partial_path] vaut [code]true[/code] et [param "
"to_id] est désactivé, la recherche peut prendre un temps inhabituellement "
"long pour se terminer."

msgid "Returns the position of the point associated with the given [param id]."
msgstr "Renvoie la position du point associé à l'identifiant [param id] donné."

msgid ""
"Returns the weight scale of the point associated with the given [param id]."
msgstr ""
"Renvoie le facteur de poids du point associé à l'identifiant [param id] donné."

msgid "Returns whether a point associated with the given [param id] exists."
msgstr "Renvoie si un point associé à l'identifiant [param id] donné existe."

msgid ""
"Returns whether a point is disabled or not for pathfinding. By default, all "
"points are enabled."
msgstr ""
"Renvoie si un point est désactivé ou non pour le calcul du chemin. Par "
"défaut, tous les points sont activés."

msgid ""
"Removes the point associated with the given [param id] from the points pool."
msgstr "Retire le point associé à l'[param id] donné du pool des points."

msgid ""
"Reserves space internally for [param num_nodes] points. Useful if you're "
"adding a known large number of points at once, such as points on a grid."
msgstr ""
"Réserve l'espace interne pour [param num_nodes] points. Utile si vous voulez "
"ajouter un grand nombre de points à la fois, pour une grille par exemple."

msgid ""
"Disables or enables the specified point for pathfinding. Useful for making a "
"temporary obstacle."
msgstr ""
"Désactive ou active le point spécifié pour le pathfinding. Utile pour faire "
"des obstacles temporaires."

msgid "Sets the [param position] for the point with the given [param id]."
msgstr ""
"Définit la [param position] du point avec l'identifiant [param id] donné."

msgid ""
"Sets the [param weight_scale] for the point with the given [param id]. The "
"[param weight_scale] is multiplied by the result of [method _compute_cost] "
"when determining the overall cost of traveling across a segment from a "
"neighboring point to this point."
msgstr ""
"Définit le facteur de poids [param weight_scale] pour le point avec "
"l'identifiant [param id] donné. Le facteur de poids [param weight_scale] est "
"multiplié par le résultat de [method _compute_cost] pour déterminer le coût "
"global de voyage le long d'un segment d'un point voisin à ce point."

msgid ""
"If [code]true[/code] enables the filtering of neighbors via [method "
"_filter_neighbor]."
msgstr ""
"Si [code]true[/code], active le filtrage des voisins via [method "
"_filter_neighbor]."

msgid ""
"An implementation of A* for finding the shortest path between two vertices on "
"a connected graph in 3D space."
msgstr ""
"Une implémentation de A* pour trouver le chemin le plus court entre deux "
"sommets d'une graphe connecté de l'espace 3D."

msgid ""
"A* (A star) is a computer algorithm used in pathfinding and graph traversal, "
"the process of plotting short paths among vertices (points), passing through "
"a given set of edges (segments). It enjoys widespread use due to its "
"performance and accuracy. Godot's A* implementation uses points in 3D space "
"and Euclidean distances by default.\n"
"You must add points manually with [method add_point] and create segments "
"manually with [method connect_points]. Once done, you can test if there is a "
"path between two points with the [method are_points_connected] function, get "
"a path containing indices by [method get_id_path], or one containing actual "
"coordinates with [method get_point_path].\n"
"It is also possible to use non-Euclidean distances. To do so, create a script "
"that extends [AStar3D] and override the methods [method _compute_cost] and "
"[method _estimate_cost]. Both should take two point IDs and return the "
"distance between the corresponding points.\n"
"[b]Example:[/b] Use Manhattan distance instead of Euclidean distance:\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MyAStar3D\n"
"extends AStar3D\n"
"\n"
"func _compute_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"\n"
"func _estimate_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MyAStar3D : AStar3D\n"
"{\n"
"\tpublic override float _ComputeCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"\n"
"\tpublic override float _EstimateCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[method _estimate_cost] should return a lower bound of the distance, i.e. "
"[code]_estimate_cost(u, v) <= _compute_cost(u, v)[/code]. This serves as a "
"hint to the algorithm because the custom [method _compute_cost] might be "
"computation-heavy. If this is not the case, make [method _estimate_cost] "
"return the same value as [method _compute_cost] to provide the algorithm with "
"the most accurate information.\n"
"If the default [method _estimate_cost] and [method _compute_cost] methods are "
"used, or if the supplied [method _estimate_cost] method returns a lower bound "
"of the cost, then the paths returned by A* will be the lowest-cost paths. "
"Here, the cost of a path equals the sum of the [method _compute_cost] results "
"of all segments in the path multiplied by the [code]weight_scale[/code]s of "
"the endpoints of the respective segments. If the default methods are used and "
"the [code]weight_scale[/code]s of all points are set to [code]1.0[/code], "
"then this equals the sum of Euclidean distances of all segments in the path."
msgstr ""
"A* (A star) est un algorithme informatique qui est largement utilisé dans le "
"cheminement et la traversée de graphe, le processus de traçage des chemins "
"courts parmi les sommets (points) passant par un ensemble donné d’arêtes "
"(segments). Il est souvent utilisé en raison de sa performance et de sa "
"précision. L'implémentation dans Godot de A* utilise par défaut des points "
"dans un espace tridimensionnel et des distances euclidiennes.\n"
"Vous devez ajouter des points manuellement avec [method add_point] et créer "
"des segments manuellement avec [method connect_points]. Ensuite, vous pouvez "
"tester s'il y a un chemin entre deux points avec la fonction [method "
"are_points_connected], obtenir un chemin contenant des indices par [method "
"get_id_path], ou un contenant des coordonnées réelles avec [method "
"get_point_path].\n"
"Il est également possible d'utiliser des distances non euclidiennes. Pour ce "
"faire, créez une classe qui hérite de [AStar3D] et surchargez les méthodes "
"[method _compute_cost] et [method _estimate_cost]. Les deux doivent prendre "
"deux identifiants de points et renvoyer la longueur entre les points "
"correspondants.\n"
"[b]Exemple :[/b] Utiliser la distance de Manhattan au lieu de la distance "
"euclidienne.\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MyAStar3D\n"
"extends AStar3D\n"
"\n"
"func _compute_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"\n"
"func _estimate_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MyAStar3D : AStar3D\n"
"{\n"
"\tpublic override float _ComputeCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"\n"
"\tpublic override float _EstimateCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[method _estimate_cost] doit renvoyer une borne inférieure de la distance, "
"c.a.d. [code]_estimate_cost(u, v) <= _compute_cost(u, v)[/code]. Cela sert "
"d'indice pour l'algorithme car la méthode [method _compute_cost] "
"personnalisée peut être longue à calculer. Si ce n'est pas le cas, utilisez "
"[method _estimate_cost] pour renvoyer la même valeur que [method "
"_compute_cost] pour fournir à l'algorithme les informations les plus "
"précises.\n"
"Si les méthodes par défaut [method _estimate_cost] et [method _compute_cost] "
"sont utilisées, ou si la méthode [method _estimate_cost] fournie renvoie une "
"borne inférieure du coût du chemin, les chemins renvoyés par A* seront les "
"chemins les moins coûteux. Ici, le coût d'un chemin correspond à la somme des "
"résultats de [method _compute_cost] de tous les segments dans le chemin "
"multiplié par le [code]weight_scale[/code] des points finaux des segments "
"respectifs. Si les méthodes par défaut sont utilisées et que le "
"[code]weight_scale[/code] de tous les points vaut [code]1.0[/code], cela "
"correspond à la somme des distances euclidiennes de tous les segments du "
"chemin."

msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [AStar3D] class."
msgstr ""
"Appelée lors du calcul du coût entre deux points connectés.\n"
"À noter que cette fonction est cachée dans la classe [AStar3D] par défaut."

msgid ""
"Called when estimating the cost between a point and the path's ending point.\n"
"Note that this function is hidden in the default [AStar3D] class."
msgstr ""
"Appelée lors du calcul du coût entre un point et le dernier point du chemin.\n"
"À noter que cette fonction est cachée dans la classe [AStar3D] par défaut."

msgid ""
"Called when neighboring point enters processing and if [member "
"neighbor_filter_enabled] is [code]true[/code]. If [code]true[/code] is "
"returned the point will not be processed.\n"
"Note that this function is hidden in the default [AStar3D] class."
msgstr ""
"Appelée lorsque le point voisin commence à être traité et si [member "
"neighbor_filter_enabled] vaut [code]true[/code]. Si [code]true[/code] est "
"renvoyé, le point ne sera pas traité.\n"
"Notez que cette fonction est cachée dans la classe [AStar3D] par défaut."

msgid ""
"Adds a new point at the given position with the given identifier. The [param "
"id] must be 0 or larger, and the [param weight_scale] must be 0.0 or "
"greater.\n"
"The [param weight_scale] is multiplied by the result of [method "
"_compute_cost] when determining the overall cost of traveling across a "
"segment from a neighboring point to this point. Thus, all else being equal, "
"the algorithm prefers points with lower [param weight_scale]s to form a "
"path.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 0, 0), 4) # Adds the point (1, 0, 0) with "
"weight_scale 4 and id 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(1, 0, 0), 4); // Adds the point (1, 0, 0) with "
"weight_scale 4 and id 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If there already exists a point for the given [param id], its position and "
"weight scale are updated to the given values."
msgstr ""
"Ajoute un nouveau point à la position donnée avec l'identifiant donné. "
"L'identifiant [param id] doit être de 0 ou plus, et le facteur de poids "
"[param weight_scale] doit être de 0,0 ou plus.\n"
"Le facteur de poids [param weight_scale] est multiplié par le résultat de "
"[method _compute_cost] pour déterminer le coût global de voyage à travers un "
"segment d'un point voisin à ce point. Ainsi, tous les autres étant égaux, "
"l'algorithme préfère les points avec des facteurs [param weight_scale] "
"inférieurs pour former un chemin.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 0, 0), 4) # Ajoute le point (1,0,0) avec "
"weight_scale 4 et id 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, nouveau Vector3(1, 0, 0), 4); // Ajoute le point (1,0,0) "
"avec weight_scale 4 et id 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"S'il existe déjà un point pour l'[param id] donné, sa position et son facteur "
"de poids sont mises à jour aux valeurs données."

msgid ""
"Returns whether the two given points are directly connected by a segment. If "
"[param bidirectional] is [code]false[/code], returns whether movement from "
"[param id] to [param to_id] is possible through this segment."
msgstr ""
"Renvoie si les deux points donnés sont directement reliés par un segment. Si "
"[param bidirectional] vaut [code]false[/code], renvoie si le déplacement du "
"point [param id] au point [param to_id] est possible à travers ce segment."

msgid ""
"Creates a segment between the given points. If [param bidirectional] is "
"[code]false[/code], only movement from [param id] to [param to_id] is "
"allowed, not the reverse direction.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 1, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(1, 1, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Crée un segment entre les points donnés. Si [param bidirectional] vaut "
"[code]false[/code], seul le mouvement du point [param id] au point [param "
"to_id] sera autorisé, et non le sens inverse.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 1, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(1, 1, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the closest position to [param to_position] that resides inside a "
"segment between two connected points.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector3(3, 3, 0)) # Returns "
"(0, 3, 0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector3 res = astar.GetClosestPositionInSegment(new Vector3(3, 3, 0)); // "
"Returns (0, 3, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
"5[/code]. It's the closest position in the segment to the given point."
msgstr ""
"Renvoie la position la plus proche de [param to_position] qui est à "
"l'intérieur du segment entre deux points connectés.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector3(3, 3, 0)) # Returns "
"(0, 3, 0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector3 res = astar.GetClosestPositionInSegment(new Vector3(3, 3, 0)); // "
"Returns (0, 3, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Le résultat est dans le segment qui va de [code]y = 0[/code] à [code]y = 5[/"
"code]. C'est la position la plus proche dans le segment du point donné."

msgid ""
"Returns an array with the IDs of the points that form the path found by "
"AStar3D between the given points. The array is ordered from the starting "
"point to the ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] When [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0), 1) # Default weight is 1\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0), 1); // Default weight is 1\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Returns [1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you change the 2nd point's weight to 3, then the result will be [code][1, "
"4, 3][/code] instead, because now even though the distance is longer, it's "
"\"easier\" to get through point 4 than through point 2."
msgstr ""
"Renvoie un tableau avec les identifiants des points qui forment le chemin "
"trouvé par AStar entre les points donnés. Le tableau est dans l'ordre du "
"point de départ de celui de l'arrivée.\n"
"S'il n'y a pas de chemin valide vers la cible, et [param allow_partial_path] "
"vaut [code]true[/code], renvoie un chemin vers le point le plus proche de la "
"cible qui peut être atteinte.\n"
"[b]Note :[/b] Lorsque [param allow_partial_path] vaut [code]true[/code] et "
"[param to_id] est désactivé, la recherche peut prendre un temps inhabituel à "
"se terminer.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0), 1) # Le poids par défaut est 1\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Renvoie [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0), 1); // Le poids par défaut est 1\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Renvoie [1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Si vous changez le poids du deuxième point à 3, alors le résultat sera [code]"
"[1, 4, 3][/code] à la place, parce que même si la distance est plus grande, "
"c'est plus \"facile\" d'aller en passant par le point 4 que le point 2."

msgid ""
"Returns an array with the IDs of the points that form the connection with the "
"given point.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0))\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0));\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un tableau avec les identifiants des points qui forment une connexion "
"avec le point donné.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0))\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var voisins = astar.get_point_connections(1) # Renvoie [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0));\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] voisins = astar.GetPointConnections(1); // Renvoie [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns an array with the points that are in the path found by AStar3D "
"between the given points. The array is ordered from the starting point to the "
"ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] This method is not thread-safe; it can only be used from a "
"single [Thread] at a given time. Consider using [Mutex] to ensure exclusive "
"access to one thread to avoid race conditions.\n"
"Additionally, when [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish."
msgstr ""
"Renvoie un tableau avec les points qui sont dans le chemin trouvé par AStar3D "
"entre les points donnés. Le tableau est trié du point de départ au point "
"final du chemin.\n"
"S'il n'y a pas de chemin valide vers la cible, et [param allow_partial_path] "
"vaut [code]true[/code], renvoie un chemin vers le point le plus proche de la "
"cible qui peut être atteinte.\n"
"[b]Note :[/b] Cette méthode n'est pas thread-safe, elle ne peut être appelée "
"que depuis un seul [Thread] à un instant donné. Envisagez d'utiliser des "
"[Mutex] pour vous assurer de l'accès exclusif à un thread pour éviter des "
"accès concurrents.\n"
"De plus, lorsque [param allow_partial_path] vaut [code]true[/code] et [param "
"to_id] est désactivé, la recherche peut prendre un temps inhabituellement "
"long pour se terminer."

msgid ""
"An implementation of A* for finding the shortest path between two points on a "
"partial 2D grid."
msgstr ""
"Une implémentation de A* pour trouver le chemin le plus court entre deux "
"points sur une grille 2D."

msgid ""
"[AStarGrid2D] is a variant of [AStar2D] that is specialized for partial 2D "
"grids. It is simpler to use because it doesn't require you to manually create "
"points and connect them together. This class also supports multiple types of "
"heuristics, modes for diagonal movement, and a jumping mode to speed up "
"calculations.\n"
"To use [AStarGrid2D], you only need to set the [member region] of the grid, "
"optionally set the [member cell_size], and then call the [method update] "
"method:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar_grid = AStarGrid2D.new()\n"
"astar_grid.region = Rect2i(0, 0, 32, 32)\n"
"astar_grid.cell_size = Vector2(16, 16)\n"
"astar_grid.update()\n"
"print(astar_grid.get_id_path(Vector2i(0, 0), Vector2i(3, 4))) # Prints [(0, "
"0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"print(astar_grid.get_point_path(Vector2i(0, 0), Vector2i(3, 4))) # Prints "
"[(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/gdscript]\n"
"[csharp]\n"
"AStarGrid2D astarGrid = new AStarGrid2D();\n"
"astarGrid.Region = new Rect2I(0, 0, 32, 32);\n"
"astarGrid.CellSize = new Vector2I(16, 16);\n"
"astarGrid.Update();\n"
"GD.Print(astarGrid.GetIdPath(Vector2I.Zero, new Vector2I(3, 4))); // Prints "
"[(0, 0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"GD.Print(astarGrid.GetPointPath(Vector2I.Zero, new Vector2I(3, 4))); // "
"Prints [(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To remove a point from the pathfinding grid, it must be set as \"solid\" with "
"[method set_point_solid]."
msgstr ""
"[AStarGrid2D] est une variante de [AStar2D] spécialisée dans les grilles 2D "
"partielles. Elle est plus simple à utiliser parce qu'elle ne vous oblige pas "
"à créer manuellement des points et à les connecter ensemble. Cette classe "
"prend également en charge plusieurs types d'heuristiques, de modes de "
"mouvement diagonal, et un mode de saut pour accélérer les calculs.\n"
"Pour utiliser [AStarGrid2D], vous n'avez qu'à définir la [member region] de "
"la grille, définir optionnellement la taille de cellule [member cell_size], "
"puis appeler la méthode [method update] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var grille_astar = AStarGrid2D.new()\n"
"grille_astar.region = Rect2i(0, 0, 32, 32)\n"
"grille_astar.cell_size = Vector2(16, 16)\n"
"grille_astar.update()\n"
"print(grille_astar.get_id_path(Vector2i(0, 0), Vector2i(3, 4))) # Affiche "
"[(0, 0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"print(grille_astar.get_point_path(Vector2i(0, 0), Vector2i(3, 4))) # Affiche "
"[(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/gdscript]\n"
"[csharp]\n"
"AStarGrid2D grilleAstar = new AStarGrid2D();\n"
"grilleAstar.Region = new Rect2I(0, 0, 32, 32);\n"
"grilleAstar.CellSize = new Vector2I(16, 16);\n"
"grilleAstar.Update();\n"
"GD.Print(grilleAstar.GetIdPath(Vector2I.Zero, new Vector2I(3, 4))); // "
"Affiche [(0, 0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"GD.Print(grilleAstar.GetPointPath(Vector2I.Zero, new Vector2I(3, 4))); // "
"Affiche [(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Pour supprimer un point de la grille de recherche de chemin, il doit être "
"défini comme \"solide\" avec [method set_point_solid]."

msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [AStarGrid2D] class."
msgstr ""
"Appelée lors du calcul du coût entre deux points connectés.\n"
"À noter que cette fonction est cachée dans la classe [AStarGrid2D] par défaut."

msgid ""
"Called when estimating the cost between a point and the path's ending point.\n"
"Note that this function is hidden in the default [AStarGrid2D] class."
msgstr ""
"Appelée lors du calcul du coût entre un point et le point final du chemin.\n"
"À noter que cette fonction est cachée dans la classe [AStarGrid2D] par défaut."

msgid ""
"Clears the grid and sets the [member region] to [code]Rect2i(0, 0, 0, 0)[/"
"code]."
msgstr ""
"Efface la grille et fixe la [member region] à [code]Rect2i(0, 0, 0, 0)[/code]."

msgid ""
"Fills the given [param region] on the grid with the specified value for the "
"solid flag.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Remplit la [param region] donnée sur la grille avec la valeur spécifiée pour "
"le drapeau solide.\n"
"[b]Note :[/b] L'appel à [method update] n'est pas nécessaire après l'appel de "
"cette fonction."

msgid ""
"Fills the given [param region] on the grid with the specified value for the "
"weight scale.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Remplit la [param region] donnée sur la grille avec la valeur spécifiée pour "
"le facteur de poids.\n"
"[b]Note :[/b] L'appel à [method update] n'est pas nécessaire après l'appel de "
"cette fonction."

msgid ""
"Returns an array with the IDs of the points that form the path found by "
"AStar2D between the given points. The array is ordered from the starting "
"point to the ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] When [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is solid the search may take an unusually long time to finish."
msgstr ""
"Renvoie un tableau avec les points qui sont dans le chemin trouvé par AStar2D "
"entre les points donnés. Le tableau est trié du point de départ au point "
"final du chemin.\n"
"S'il n'y a pas de chemin valide vers la cible, et [param allow_partial_path] "
"vaut [code]true[/code], renvoie un chemin vers le point le plus proche de la "
"cible qui peut être atteint.\n"
"[b]Note :[/b] Lorsque [param allow_partial_path] vaut [code]true[/code] et "
"[param to_id] est solide, la recherche peut prendre un temps inhabituellement "
"long pour se terminer."

msgid ""
"Returns an array of dictionaries with point data ([code]id[/code]: "
"[Vector2i], [code]position[/code]: [Vector2], [code]solid[/code]: [bool], "
"[code]weight_scale[/code]: [float]) within a [param region]."
msgstr ""
"Renvoie un tableau de dictionnaires avec les données des points ([code]id[/"
"code] : [Vector2i], [code]position[/code] : [Vector2], [code]solid[/code] : "
"[bool], [code]weight_scale[/code] : [float]) dans une [param region]."

msgid ""
"Indicates that the grid parameters were changed and [method update] needs to "
"be called."
msgstr ""
"Indique que les paramètres de la grille ont été changés et que [method "
"update] doit être appelée."

msgid ""
"Returns [code]true[/code] if the [param x] and [param y] is a valid grid "
"coordinate (id), i.e. if it is inside [member region]. Equivalent to "
"[code]region.has_point(Vector2i(x, y))[/code]."
msgstr ""
"Renvoie [code]true[/code] si [param x] et [param y] sont une coordonnée de "
"grille valide (id), c'est-à-dire si elle est à l'intérieur de la [member "
"region]. Équivalent à [code]region.has_point(Vector2i(x, y))[/code]."

msgid ""
"Returns [code]true[/code] if the [param id] vector is a valid grid "
"coordinate, i.e. if it is inside [member region]. Equivalent to "
"[code]region.has_point(id)[/code]."
msgstr ""
"Renvoie [code]true[/code] si le vecteur [param id] est une coordonnée de "
"grille valide, c'est-à-dire si il est à l'intérieur de [member region]. "
"Équivalent à [code]region.has_point(id)[/code]."

msgid ""
"Returns [code]true[/code] if a point is disabled for pathfinding. By default, "
"all points are enabled."
msgstr ""
"Renvoie [code]true[/code] si un point est désactivé pour le calcul du chemin. "
"Par défaut, tous les points sont activés."

msgid ""
"Disables or enables the specified point for pathfinding. Useful for making an "
"obstacle. By default, all points are enabled.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Désactive ou active le point spécifié pour la recherche de chemin. Utile pour "
"faire un obstacle. Par défaut, tous les points sont activés.\n"
"[b]Note :[/b] L'appel à [method update] n'est pas nécessaire après l'appel de "
"cette fonction."

msgid ""
"Sets the [param weight_scale] for the point with the given [param id]. The "
"[param weight_scale] is multiplied by the result of [method _compute_cost] "
"when determining the overall cost of traveling across a segment from a "
"neighboring point to this point.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Définit le facteur de poids [param weight_scale] pour le point avec "
"l'identifiant [param id] donné. Le facteur de poids [param weight_scale] est "
"multiplié par le résultat de [method _compute_cost] pour déterminer le coût "
"global de voyage le long d'un segment d'un point voisin à ce point.\n"
"[b]Note :[/b] L'appel à [method update] n'est pas nécessaire après l'appel de "
"cette fonction."

msgid ""
"Updates the internal state of the grid according to the parameters to prepare "
"it to search the path. Needs to be called if parameters like [member region], "
"[member cell_size] or [member offset] are changed. [method is_dirty] will "
"return [code]true[/code] if this is the case and this needs to be called.\n"
"[b]Note:[/b] All point data (solidity and weight scale) will be cleared."
msgstr ""
"Met à jour de l'état interne de la grille selon les paramètres pour la "
"préparer à la recherche du chemin. Il convient d'appeler cette méthode si des "
"paramètres comme [member region], [member cell_size] ou [member offset] sont "
"changés. [method is_dirty] renverra [code]true[/code] si c'est le cas et que "
"ceci doit être appelé.\n"
"[b]Note :[/b] Toutes les données de point (solidité et facteur de poids) "
"seront effacées."

msgid ""
"The cell shape. Affects how the positions are placed in the grid. If changed, "
"[method update] needs to be called before finding the next path."
msgstr ""
"La forme de la cellule. Affecte comment les positions sont placées dans le "
"réseau. Si elle est modifiée, [method update] doit être appelée avant de "
"chercher le chemin suivant."

msgid ""
"The size of the point cell which will be applied to calculate the resulting "
"point position returned by [method get_point_path]. If changed, [method "
"update] needs to be called before finding the next path."
msgstr ""
"La taille de la cellule de point qui sera appliquée pour calculer la position "
"des points résultants renvoyés par [method get_point_path]. Si elle est "
"modifiée, [method update] doit être appelée avant de chercher le chemin "
"suivant."

msgid ""
"The default [enum Heuristic] which will be used to calculate the cost between "
"two points if [method _compute_cost] was not overridden."
msgstr ""
"L'heuristique par défaut [enum Heuristic] qui sera utilisée pour calculer le "
"coût entre deux points si [method _compute_cost] n'a pas été redéfinie."

msgid ""
"The default [enum Heuristic] which will be used to calculate the cost between "
"the point and the end point if [method _estimate_cost] was not overridden."
msgstr ""
"La valeur [enum Heuristic] par défaut qui sera utilisée pour calculer le coût "
"entre le point et le point final si [method _estimate_cost] n'a pas été "
"redéfinie."

msgid ""
"A specific [enum DiagonalMode] mode which will force the path to avoid or "
"accept the specified diagonals."
msgstr ""
"Un mode spécifique [enum DiagonalMode] qui forcera le chemin à éviter ou "
"accepter les diagonales spécifiées."

msgid ""
"Enables or disables jumping to skip up the intermediate points and speeds up "
"the searching algorithm.\n"
"[b]Note:[/b] Currently, toggling it on disables the consideration of weight "
"scaling in pathfinding."
msgstr ""
"Active ou désactive le saut pour ignorer les points intermédiaires et "
"accélère l'algorithme de recherche.\n"
"[b]Note :[/b] À l'heure actuelle, l'activer désactive la prise en compte du "
"facteur de poids dans la recherche de chemin."

msgid ""
"The offset of the grid which will be applied to calculate the resulting point "
"position returned by [method get_point_path]. If changed, [method update] "
"needs to be called before finding the next path."
msgstr ""
"Le décalage de la grille qui sera appliqué pour calculer la position des "
"points résultants renvoyés par [method get_point_path]. Si il est modifié, "
"[method update] doit être appelée avant de chercher le chemin suivant."

msgid ""
"The region of grid cells available for pathfinding. If changed, [method "
"update] needs to be called before finding the next path."
msgstr ""
"La région des cellules de la grille disponibles pour la recherche de chemin. "
"Si elle est modifiée, [method update] doit être appelée avant de trouver le "
"chemin suivant."

msgid "Use [member region] instead."
msgstr "Utilisez [member region] à la place."

msgid ""
"The size of the grid (number of cells of size [member cell_size] on each "
"axis). If changed, [method update] needs to be called before finding the next "
"path."
msgstr ""
"La taille de la grille (le nombre de cellule de taille [member cell_size] sur "
"chaque axe). Si elle est modifiée, [method update] doit être appelée avant de "
"chercher le chemin suivant."

msgid ""
"The [url=https://en.wikipedia.org/wiki/Euclidean_distance]Euclidean "
"heuristic[/url] to be used for the pathfinding using the following formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = sqrt(dx * dx + dy * dy)\n"
"[/codeblock]\n"
"[b]Note:[/b] This is also the internal heuristic used in [AStar3D] and "
"[AStar2D] by default (with the inclusion of possible z-axis coordinate)."
msgstr ""
"L'[url=https://fr.wikipedia.org/wiki/Distance_euclidienne]heuristique "
"Euclidienne[/url] à utiliser pour la recherche de chemin utilisant la formule "
"suivante :\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"resultat = sqrt(dx * dx + dy * dy)\n"
"[/codeblock]\n"
"[b]Note :[/b] C'est aussi l'heuristique interne utilisé par défaut dans "
"[AStar3D] et [AStar2D] (avec l'inclusion d'une éventuelle coordonnée sur "
"l'axe Z)."

msgid ""
"The [url=https://en.wikipedia.org/wiki/Taxicab_geometry]Manhattan heuristic[/"
"url] to be used for the pathfinding using the following formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = dx + dy\n"
"[/codeblock]\n"
"[b]Note:[/b] This heuristic is intended to be used with 4-side orthogonal "
"movements, provided by setting the [member diagonal_mode] to [constant "
"DIAGONAL_MODE_NEVER]."
msgstr ""
"L'[url=https://fr.wikipedia.org/wiki/Distance_de_Manhattan]heuristique de "
"Manhattan[/url] à utiliser pour la recherche de chemin utilisant la formule "
"suivante :\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"resultat = dx + dy\n"
"[/codeblock]\n"
"[b]Note :[/b] Cette heuristique est destinée à être utilisé avec des "
"mouvements orthogonaux à 4 côtés, fournis en définissant [member "
"diagonal_mode] à [constant DIAGONAL_MODE_NEVER]."

msgid ""
"The Octile heuristic to be used for the pathfinding using the following "
"formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"f = sqrt(2) - 1\n"
"result = (dx < dy) ? f * dx + dy : f * dy + dx;\n"
"[/codeblock]"
msgstr ""
"L'heuristique Octile à utiliser pour la recherche de chemin utilisant la "
"formule suivante :\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"f = sqrt(2) - 1\n"
"resultat = (dx < dy) ? f * dx + dy : f * dy + dx;\n"
"[/codeblock]"

msgid ""
"The [url=https://en.wikipedia.org/wiki/Chebyshev_distance]Chebyshev "
"heuristic[/url] to be used for the pathfinding using the following formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = max(dx, dy)\n"
"[/codeblock]"
msgstr ""
"L'[url=https://fr.wikipedia.org/wiki/Distance_de_Tchebychev]heuristique de "
"Chebyshev[/url] à utiliser pour la recherche de chemin utilisant la formule "
"suivante :\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"resultat = max(dx, dy)\n"
"[/codeblock]"

msgid "Represents the size of the [enum Heuristic] enum."
msgstr "Représente la taille de l'énumération [enum Heuristic]."

msgid ""
"The pathfinding algorithm will ignore solid neighbors around the target cell "
"and allow passing using diagonals."
msgstr ""
"L'algorithme de recherche de chemin ignorera les voisins solides autour de la "
"cellule cible et permettra de passer en utilisant des diagonales."

msgid ""
"The pathfinding algorithm will ignore all diagonals and the way will be "
"always orthogonal."
msgstr ""
"L'algorithme de recherche de chemin ignorera toutes les diagonales et le "
"chemin sera toujours orthogonal."

msgid ""
"The pathfinding algorithm will avoid using diagonals if at least two "
"obstacles have been placed around the neighboring cells of the specific path "
"segment."
msgstr ""
"L'algorithme de recherche de chemin évitera d'utiliser des diagonales si au "
"moins deux obstacles ont été placés autour des cellules voisines du segment "
"de chemin spécifique."

msgid ""
"The pathfinding algorithm will avoid using diagonals if any obstacle has been "
"placed around the neighboring cells of the specific path segment."
msgstr ""
"L'algorithme de recherche de chemin évitera d'utiliser des diagonales si un "
"obstacle a été placé autour des cellules voisines du segment de chemin "
"spécifique."

msgid "Represents the size of the [enum DiagonalMode] enum."
msgstr "Représente la taille de l'énumération [enum DiagonalMode]."

msgid "Rectangular cell shape."
msgstr "Forme de cellule rectangulaire."

msgid ""
"Diamond cell shape (for isometric look). Cell coordinates layout where the "
"horizontal axis goes up-right, and the vertical one goes down-right."
msgstr ""
"Forme de cellule en diamant (pour un style isométrique). Disposition de "
"coordonnées de cellule où l'axe horizontal va en haut à droite, et l'axe "
"vertical va en bas à droite."

msgid ""
"Diamond cell shape (for isometric look). Cell coordinates layout where the "
"horizontal axis goes down-right, and the vertical one goes down-left."
msgstr ""
"Forme de cellule en diamant (pour un style isométrique). Disposition de "
"coordonnées de cellule où l'axe horizontal va en bas à droite, et l'axe "
"vertical va en bas à gauche."

msgid "Represents the size of the [enum CellShape] enum."
msgstr "Représente la taille de l'énumération [enum CellShape]."

msgid "A texture that crops out part of another Texture2D."
msgstr "Une texture qui recadre une partie d'une autre Texture2D."

msgid ""
"[Texture2D] resource that draws only part of its [member atlas] texture, as "
"defined by the [member region]. An additional [member margin] can also be "
"set, which is useful for small adjustments.\n"
"Multiple [AtlasTexture] resources can be cropped from the same [member "
"atlas]. Packing many smaller textures into a singular large texture helps to "
"optimize video memory costs and render calls.\n"
"[b]Note:[/b] [AtlasTexture] cannot be used in an [AnimatedTexture], and will "
"not tile properly in nodes such as [TextureRect] or [Sprite2D]. To tile an "
"[AtlasTexture], modify its [member region] instead."
msgstr ""
"Ressource [Texture2D] qui ne dessine qu'une partie de sa texture [member "
"atlas], tel que défini par la [member region]. Une marge supplémentaire "
"[member margin] peut également être définie, ce qui est utile pour les petits "
"ajustements.\n"
"Plusieurs ressources [AtlasTexture] peuvent être découpées à partir du même "
"[member atlas]. Tasser plusieurs textures plus petites dans une grande "
"texture unique aide à optimiser les coûts en mémoire vidéo et les render "
"calls.\n"
"[b]Note :[/b] [AtlasTexture] ne peut pas être utilisée dans une "
"[AnimatedTexture], et ne se répétera pas correctement dans des nœuds tels que "
"[TextureRect] ou [Sprite2D]. Pour répéter une [AtlasTexture], modifiez sa "
"[member region] à la place."

msgid ""
"The texture that contains the atlas. Can be any type inheriting from "
"[Texture2D], including another [AtlasTexture]."
msgstr ""
"La texture qui contient l'atlas. Peut être de n'importe type héritant de "
"[Texture2D], y compris une autre [AtlasTexture]."

msgid ""
"If [code]true[/code], the area outside of the [member region] is clipped to "
"avoid bleeding of the surrounding texture pixels."
msgstr ""
"Si [code]true[/code], la zone située à l'extérieur de la [member region] est "
"coupée pour éviter les saignements des pixels de texture environnants."

msgid ""
"The margin around the [member region]. Useful for small adjustments. If the "
"[member Rect2.size] of this property (\"w\" and \"h\" in the editor) is set, "
"the drawn texture is resized to fit within the margin."
msgstr ""
"La marge autour de la [member region]. Utile pour les petits ajustements. Si "
"le paramètre [member Rect2.size] de cette propriété (\"w\" et \"h\" dans "
"l'éditeur) est défini, la texture dessiné est redimensionnée de sorte qu'elle "
"corresponde à cette marge."

msgid ""
"The region used to draw the [member atlas]. If either dimension of the "
"region's size is [code]0[/code], the value from [member atlas] size will be "
"used for that axis instead."
msgstr ""
"La région utilisée pour dessiner l'[member atlas]. Si l'une ou l'autre des "
"dimensions de la région vaut [code]0[/code], la valeur de la taille de "
"l'[member atlas] sera utilisée pour cet axe à la place."

msgid "Stores information about the audio buses."
msgstr "Stocke de l'information sur les bus audio."

msgid ""
"Stores position, muting, solo, bypass, effects, effect position, volume, and "
"the connections between buses. See [AudioServer] for usage."
msgstr ""
"Stocke la position, la mise en sourdine, le solo, le by-pass, les effets, la "
"position de l'effet, le volume et les connections entre les bus. Voir "
"[AudioServer] pour l'utilisation."

msgid "Base class for audio effect resources."
msgstr "Classe de base pour les ressources d'effet audio."

msgid ""
"The base [Resource] for every audio effect. In the editor, an audio effect "
"can be added to the current bus layout through the Audio panel. At run-time, "
"it is also possible to manipulate audio effects through [method "
"AudioServer.add_bus_effect], [method AudioServer.remove_bus_effect], and "
"[method AudioServer.get_bus_effect].\n"
"When applied on a bus, an audio effect creates a corresponding "
"[AudioEffectInstance]. The instance is directly responsible for manipulating "
"the sound, based on the original audio effect's properties."
msgstr ""
"La ressource ([Resource]) de base pour tout effet audio. Dans l'éditeur, un "
"effet audio peut être ajouté à la disposition du bus actuel dans le panneau "
"Audio. En cours d'exécution, il est également possible de manipuler des "
"effets audio par [method AudioServer.add_bus_effect], [method "
"AudioServer.remove_bus_effect], et [method AudioServer.get_bus_effect].\n"
"Lorsqu'il est appliqué sur un bus, un effet audio crée un "
"[AudioEffectInstance] correspondant. L'instance est directement responsable "
"de la manipulation du son, en fonction des propriétés de l'effet audio "
"original."

msgid "Audio buses"
msgstr "Bus audio"

msgid "Audio Microphone Record Demo"
msgstr "Démo d'enregistrement de l'audio du microphone"

msgid ""
"Override this method to customize the [AudioEffectInstance] created when this "
"effect is applied on a bus in the editor's Audio panel, or through [method "
"AudioServer.add_bus_effect].\n"
"[codeblock]\n"
"extends AudioEffect\n"
"\n"
"@export var strength = 4.0\n"
"\n"
"func _instantiate():\n"
"\tvar effect = CustomAudioEffectInstance.new()\n"
"\teffect.base = self\n"
"\n"
"\treturn effect\n"
"[/codeblock]\n"
"[b]Note:[/b] It is recommended to keep a reference to the original "
"[AudioEffect] in the new instance. Depending on the implementation this "
"allows the effect instance to listen for changes at run-time and be modified "
"accordingly."
msgstr ""
"Surcharger cette méthode pour personnaliser l'[AudioEffectInstance] créée "
"lorsque cet effet est appliqué sur un bus dans le panneau Audio de l'éditeur, "
"ou par [method AudioServer.add_bus_effect].\n"
"[codeblock]\n"
"extends AudioEffect\n"
"\n"
"@export var force = 4.0\n"
"\n"
"func _instantiate():\n"
"\tvar effet = CustomAudioEffectInstance.new()\n"
"\teffet.base = self\n"
"\n"
"\treturn effet\n"
"[/codeblock]\n"
"[b]Note :[/b] Il est recommandé de garder une référence à l'[AudioEffect] "
"original dans la nouvelle instance. En fonction de l'implémentation, cela "
"permet à l'instance d'effet d'écouter les changements durant l'exécution et "
"d'être modifiée en conséquence."

msgid "Adds an amplifying audio effect to an audio bus."
msgstr "Ajoute un effet audio amplifiant à un bus audio."

msgid "Increases or decreases the volume being routed through the audio bus."
msgstr "Augmente ou diminue le volume passé au bus audio."

msgid ""
"Amount of amplification in decibels. Positive values make the sound louder, "
"negative values make it quieter. Value can range from -80 to 24."
msgstr ""
"La quantité d'amplification en décibels. Les valeurs positives augmentent le "
"son, les valeurs négatives le diminue. La valeur peut aller de -80 à 24 dB."

msgid ""
"Amount of amplification as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Montant d'amplification en tant que valeur linéaire.\n"
"[b]Note :[/b] Ce membre modifie [member volume_db] par commodité. La valeur "
"renvoyée est équivalente au résultat de [method @GlobalScope.db_to_linear] "
"sur [member volume_db]. Définir ce membre est équivalent à définir [member "
"volume_db] au résultat de [method @GlobalScope.linear_to_db] sur une valeur."

msgid "Adds a band limit filter to the audio bus."
msgstr "Ajouter un filtre limiteur de bande au bus audio."

msgid ""
"Limits the frequencies in a range around the [member "
"AudioEffectFilter.cutoff_hz] and allows frequencies outside of this range to "
"pass."
msgstr ""
"Limite l'intensité des fréquences dans la gamme autour de [member "
"AudioEffectFilter.cutoff_hz], et permet aux fréquences en dehors de cette "
"gamme de passer."

msgid "Adds a band pass filter to the audio bus."
msgstr "Ajouter un passe-bande au bus audio."

msgid ""
"Attenuates the frequencies inside of a range around the [member "
"AudioEffectFilter.cutoff_hz] and cuts frequencies outside of this band."
msgstr ""
"Atténue les fréquences à l'intérieur de la gamme autour de [member "
"AudioEffectFilter.cutoff_hz] et coupe les fréquences en dehors de cette gamme."

msgid "Captures audio from an audio bus in real-time."
msgstr "Capture l'audio depuis un bus audio en temps réel."

msgid ""
"AudioEffectCapture is an AudioEffect which copies all audio frames from the "
"attached audio effect bus into its internal ring buffer.\n"
"Application code should consume these audio frames from this ring buffer "
"using [method get_buffer] and process it as needed, for example to capture "
"data from an [AudioStreamMicrophone], implement application-defined effects, "
"or to transmit audio over the network. When capturing audio data from a "
"microphone, the format of the samples will be stereo 32-bit floating-point "
"PCM.\n"
"Unlike [AudioEffectRecord], this effect only returns the raw audio samples "
"instead of encoding them into an [AudioStream]."
msgstr ""
"AudioEffectCapture est un AudioEffect qui copie toutes les trames audio du "
"bus d'effet audio joint dans son buffer circulaire interne.\n"
"Le code d'application devrait consommer ces trames audio du buffer circulaire "
"de l'anneau en utilisant [method get_buffer] et les traiter au besoin, par "
"exemple pour capturer des données d'un [AudioStreamMicrophone], implémenter "
"des effets définis par l'application, ou transmettre de l'audio sur le "
"réseau. Lors de la capture de données audio à partir d'un microphone, le "
"format des échantillons sera en stéréo 32 bits à point flottant PCM.\n"
"Contrairement à [AudioEffectRecord], cet effet ne renvoie que les "
"échantillons audio bruts au lieu de les encoder dans un [AudioStream]."

msgid ""
"Returns [code]true[/code] if at least [param frames] audio frames are "
"available to read in the internal ring buffer."
msgstr ""
"Renvoie [code]true[/code] si au moins [param frames] trames audio sont "
"disponibles dans le buffer circulaire."

msgid ""
"Clears the internal ring buffer.\n"
"[b]Note:[/b] Calling this during a capture can cause the loss of samples "
"which causes popping in the playback."
msgstr ""
"Efface le buffer circulaire interne.\n"
"[b]Note :[/b] Appeler ceci lors d'une capture peut causer la perte "
"d'échantillons ce qui provoque du claquement dans la lecture."

msgid ""
"Gets the next [param frames] audio samples from the internal ring buffer.\n"
"Returns a [PackedVector2Array] containing exactly [param frames] audio "
"samples if available, or an empty [PackedVector2Array] if insufficient data "
"was available.\n"
"The samples are signed floating-point PCM between [code]-1[/code] and "
"[code]1[/code]. You will have to scale them if you want to use them as 8 or "
"16-bit integer samples. ([code]v = 0x7fff * samples[0].x[/code])"
msgstr ""
"Obtient les [param frames] prochaines trames d'échantillonnage audio depuis "
"le buffer circulaire interne.\n"
"Renvoie un [PackedVector2Array] contenant exactement [param frames] "
"échantillons audio si disponible, ou un [PackedVector2Array] vide s'il n'y a "
"pas assez de données disponibles.\n"
"Les échantillons sont des PCM flottants signés entre [code]-1[/code] et "
"[code]1[/code]. Vous devrez les mettre à l'échelle si vous voulez les "
"utilisez comme échantillons d'entiers 8 ou 16 bits. ([code]v = 0x7fff * "
"samples[0].x[/code])"

msgid "Returns the total size of the internal ring buffer in frames."
msgstr "Renvoie la taille totale du buffer circulaire interne en trames."

msgid ""
"Returns the number of audio frames discarded from the audio bus due to full "
"buffer."
msgstr ""
"Renvoie le nombre de trames audio perdue dans le bus audio parce que son "
"buffer est plein."

msgid ""
"Returns the number of frames available to read using [method get_buffer]."
msgstr ""
"Renvoie le nombre de trames disponibles à lire en utilisant [method "
"get_buffer]."

msgid "Returns the number of audio frames inserted from the audio bus."
msgstr "Renvoie le nombre de trames audio insérées depuis le bus audio."

msgid ""
"Length of the internal ring buffer, in seconds. Setting the buffer length "
"will have no effect if already initialized."
msgstr ""
"Longueur du buffer circulaire interne, en secondes. Définir la longueur du "
"buffer n'aura aucun effet s'il est déjà initialisé."

msgid "Adds a chorus audio effect."
msgstr "Ajoute un effet audio de chœur."

msgid ""
"Adds a chorus audio effect. The effect applies a filter with voices to "
"duplicate the audio source and manipulate it through the filter."
msgstr ""
"Ajoute un effet audio de chœur. Cet effet applique un filtre avec des voix "
"pour dupliquer la source audio et la manipuler à travers le filtre."

msgid "The effect's raw signal."
msgstr "Le signal brut de l’effet."

msgid "The voice's cutoff frequency."
msgstr "La fréquence limite de la voix."

msgid "The voice's signal delay."
msgstr "Le retard du signal de la voix."

msgid "The voice filter's depth."
msgstr "La profondeur du filtre vocal."

msgid "The voice's volume."
msgstr "Le volume de la voix."

msgid "The voice's pan level."
msgstr "Le niveau de panoramique de la voix."

msgid "The voice's filter rate."
msgstr "Le taux de filtrage de la voix."

msgid "The number of voices in the effect."
msgstr "La nombre de voix dans l’effet."

msgid "The effect's processed signal."
msgstr "Le signal traité de l’effet."

msgid ""
"Adds a compressor audio effect to an audio bus.\n"
"Reduces sounds that exceed a certain threshold level, smooths out the "
"dynamics and increases the overall volume."
msgstr ""
"Ajoute un effet de compresseur audio à un bus audio.\n"
"Réduit les sons qui dépassent un certain seuil, lisse les dynamiques et "
"augmente le volume global."

msgid ""
"Compressor's reaction time when the signal exceeds the threshold, in "
"microseconds. Value can range from 20 to 2000."
msgstr ""
"Temps de réaction du compresseur quand le signal dépasse le seuil, en "
"microsecondes. La valeur peut aller de 20 à 2000."

msgid "Gain applied to the output signal."
msgstr "Gain appliqué au signal de sortie."

msgid ""
"Balance between original signal and effect signal. Value can range from 0 "
"(totally dry) to 1 (totally wet)."
msgstr ""
"Équilibre entre le signal original et le signal avec effet. La valeur peut "
"aller de 0 (totalement dry) à 1 (totalement wet)."

msgid ""
"Amount of compression applied to the audio once it passes the threshold "
"level. The higher the ratio, the more the loud parts of the audio will be "
"compressed. Value can range from 1 to 48."
msgstr ""
"La quantité de compression appliquée à l'audio après avoir franchi le seuil. "
"Plus le rapport est élevé, plus les parties hautes de l'audio seront "
"comprimées. La valeur peut aller de 1 à 48."

msgid ""
"Compressor's delay time to stop reducing the signal after the signal level "
"falls below the threshold, in milliseconds. Value can range from 20 to 2000."
msgstr ""
"Le retard du compresseur avant d'arrêter de réduire le signal après que le "
"niveau de signal sous le seuil, en millisecondes. La valeur peut aller de 20 "
"à 2000."

msgid "Reduce the sound level using another audio bus for threshold detection."
msgstr ""
"Réduit le niveau sonore en utilisant un autre bus audio pour détecter les "
"seuils."

msgid ""
"The level above which compression is applied to the audio. Value can range "
"from -60 to 0."
msgstr ""
"Le niveau au-dessus duquel la compression est appliquée à l'audio. La valeur "
"peut aller de -60 à 0."

msgid ""
"Adds a delay audio effect to an audio bus. Plays input signal back after a "
"period of time.\n"
"Two tap delay and feedback options."
msgstr ""
"Ajoute un effet audio de retard à un bus audio. Joue le signal d'entrée après "
"une période de temps.\n"
"Deux options de retard et de rétroaction."

msgid ""
"Plays input signal back after a period of time. The delayed signal may be "
"played back multiple times to create the sound of a repeating, decaying echo. "
"Delay effects range from a subtle echo effect to a pronounced blending of "
"previous sounds with new sounds."
msgstr ""
"Joue le signal d'entrée après une période de temps. Le signal retardé peut "
"être joué plusieurs fois pour créer un écho qui s'amortit dans le temps. Les "
"effets de retard vont d'un subtil écho à un mélange prononcé de sons "
"précédents avec les nouveaux sons."

msgid ""
"Output percent of original sound. At 0, only delayed sounds are output. Value "
"can range from 0 to 1."
msgstr ""
"Pourcentage de sortie du son original. À 0, seul les sons délayés sont "
"sortis. La valeur peut aller de 0 à 1."

msgid "If [code]true[/code], feedback is enabled."
msgstr "Si [code]true[/code], la rétroaction est activée."

msgid "Feedback delay time in milliseconds."
msgstr "Retard de rétroaction en millisecondes."

msgid "Sound level for feedback."
msgstr "Niveau sonore pour le retour."

msgid ""
"Low-pass filter for feedback, in Hz. Frequencies below this value are "
"filtered out of the source signal."
msgstr ""
"Filtre passe-bas pour rétroaction, en Hz. Les fréquences inférieures à cette "
"valeur sont filtrées hors du signal source."

msgid "If [code]true[/code], the first tap will be enabled."
msgstr "Si [code]true[/code], le premier écho sera activé."

msgid "First tap delay time in milliseconds."
msgstr "Délai du premier écho en millisecondes."

msgid "Sound level for the first tap."
msgstr "Niveau sonore pour le premier écho."

msgid ""
"Pan position for the first tap. Value can range from -1 (fully left) to 1 "
"(fully right)."
msgstr ""
"La balance gauche/droite pour le premier écho. La valeur peut aller de -1 "
"(uniquement à gauche) à 1 (uniquement à droite)."

msgid "If [code]true[/code], the second tap will be enabled."
msgstr "Si [code]true[/code], le second écho sera activé."

msgid "Second tap delay time in milliseconds."
msgstr "Délai du second écho en millisecondes."

msgid "Sound level for the second tap."
msgstr "Niveau sonore le second écho."

msgid ""
"Pan position for the second tap. Value can range from -1 (fully left) to 1 "
"(fully right)."
msgstr ""
"La position gauche-droite pour le second écho. La valeur peut aller de -1 "
"(complètement à gauche) à 1 (complètement à droite)."

msgid ""
"Adds a distortion audio effect to an Audio bus.\n"
"Modifies the sound to make it distorted."
msgstr ""
"Ajoute un effet audio de distorsion à un bus audio.\n"
"Modifie le son pour le rendu distordu."

msgid ""
"Different types are available: clip, tan, lo-fi (bit crushing), overdrive, or "
"waveshape.\n"
"By distorting the waveform the frequency content changes, which will often "
"make the sound \"crunchy\" or \"abrasive\". For games, it can simulate sound "
"coming from some saturated device or speaker very efficiently."
msgstr ""
"Différents types sont disponibles : écrêtement, tan, lo-fi (bit crushing), "
"overdrive, ou waveshape.\n"
"En déformant la forme d'onde, le contenu des fréquences change, ce qui rend "
"souvent le son \"craquant\" ou \"abrasif\". Pour les jeux, il peut simuler le "
"son provenant d'un dispositif ou d'un haut-parleur saturé très efficacement."

msgid "Distortion power. Value can range from 0 to 1."
msgstr "L'intensité de la distorsion. Cette valeur est comprise entre 0 et 1."

msgid ""
"High-pass filter, in Hz. Frequencies higher than this value will not be "
"affected by the distortion. Value can range from 1 to 20000."
msgstr ""
"Le filtre passe-haut, en Hz. Les fréquences supérieures à cette valeur ne "
"seront pas affectées par la distorsion. La valeur peut aller de 1 à 20000 Hz."

msgid "Distortion type."
msgstr "Type de distorsion."

msgid ""
"Increases or decreases the volume after the effect, in decibels. Value can "
"range from -80 to 24."
msgstr ""
"Augmente ou diminue le volume après l'application de l'effet, en décibels. La "
"valeur peut aller de -80 à 24."

msgid ""
"Increases or decreases the volume before the effect, in decibels. Value can "
"range from -60 to 60."
msgstr ""
"Augmente ou diminue le volume sonore avant l'application de l'effet, en "
"décibels. La valeur peut aller de -60 à 60."

msgid ""
"Digital distortion effect which cuts off peaks at the top and bottom of the "
"waveform."
msgstr ""
"Effet de distorsion digital qui coupe les sommet en bas et en haut de l'onde."

msgid ""
"Low-resolution digital distortion effect (bit depth reduction). You can use "
"it to emulate the sound of early digital audio devices."
msgstr ""
"Effet de distorsion numérique à basse résolution (réduction de la profondeur "
"de bits). Vous pouvez l'utiliser pour émuler le son des tous premiers "
"périphériques audio numériques."

msgid ""
"Emulates the warm distortion produced by a field effect transistor, which is "
"commonly used in solid-state musical instrument amplifiers. The [member "
"drive] property has no effect in this mode."
msgstr ""
"Émule la distorsion \"chaude\" produite par un transistor à effet de champ, "
"qui est couramment utilisé dans les amplificateurs d'instruments de musique à "
"l'état solide. La propriété [member drive] n'a aucun effet dans ce mode."

msgid ""
"Waveshaper distortions are used mainly by electronic musicians to achieve an "
"extra-abrasive sound."
msgstr ""
"Les distorsions Waveshaper sont principalement utilisées par les musiciens "
"électroniques pour obtenir un son extra-abrasif."

msgid ""
"Base class for audio equalizers. Gives you control over frequencies.\n"
"Use it to create a custom equalizer if [AudioEffectEQ6], [AudioEffectEQ10] or "
"[AudioEffectEQ21] don't fit your needs."
msgstr ""
"Classe de base pour les égaliseurs audio. Ils vous donnent le contrôle des "
"fréquences.\n"
"Utilisez la pour créer un égaliseur customisé si [AudioEffectEQ6], "
"[AudioEffectEQ10] ou [AudioEffectEQ21] ne satisfont pas vos besoins."

msgid ""
"AudioEffectEQ gives you control over frequencies. Use it to compensate for "
"existing deficiencies in audio. AudioEffectEQs are useful on the Master bus "
"to completely master a mix and give it more character. They are also useful "
"when a game is run on a mobile device, to adjust the mix to that kind of "
"speakers (it can be added but disabled when headphones are plugged)."
msgstr ""
"AudioEffectEQ vous donne le contrôle des fréquences. Utilisez-le pour "
"compenser les lacunes existantes dans l'audio. Les AudioEffectEQs sont utiles "
"sur le bus Master pour maîtriser complètement un mix et lui donner plus de "
"caractère. Ils sont également utiles quand un jeu est exécuté sur un appareil "
"mobile, pour ajuster le mix à ce type de haut-parleurs (il peut être ajouté "
"mais désactivé lorsque les écouteurs sont branchés)."

msgid "Returns the number of bands of the equalizer."
msgstr "Renvoie le nombre de bandes dans l'égaliseur."

msgid "Returns the band's gain at the specified index, in dB."
msgstr "Renvoie le gain de la bande à l'index spécifié, en dB."

msgid "Sets band's gain at the specified index, in dB."
msgstr "Définit le gain de bande à l'index spécifié, en dB."

msgid ""
"Adds a 10-band equalizer audio effect to an Audio bus. Gives you control over "
"frequencies from 31 Hz to 16000 Hz.\n"
"Each frequency can be modulated between -60/+24 dB."
msgstr ""
"Ajoute un effet audio d'égaliseur de 10 bandes à un bus audio. Vous donne le "
"contrôle des fréquences de 31 Hz à 16000 Hz.\n"
"Chaque fréquence peut être modulée entre -60/+24 dB."

msgid ""
"Frequency bands:\n"
"Band 1: 31 Hz\n"
"Band 2: 62 Hz\n"
"Band 3: 125 Hz\n"
"Band 4: 250 Hz\n"
"Band 5: 500 Hz\n"
"Band 6: 1000 Hz\n"
"Band 7: 2000 Hz\n"
"Band 8: 4000 Hz\n"
"Band 9: 8000 Hz\n"
"Band 10: 16000 Hz\n"
"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ21]."
msgstr ""
"Bandes de fréquence :\n"
"Bande 1 : 31 Hz\n"
"Bande 2 : 62 Hz\n"
"Bande 3 : 125 Hz\n"
"Bande 4 : 250 Hz\n"
"Bande 5 : 500 Hz\n"
"Bande 6 : 1000 Hz\n"
"Bande 7 : 2000 Hz\n"
"Bande 8 : 4000 Hz\n"
"Bande 9 : 8000 Hz\n"
"Bande 10 : 16000 Hz\n"
"Voir aussi [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ21]."

msgid ""
"Adds a 21-band equalizer audio effect to an Audio bus. Gives you control over "
"frequencies from 22 Hz to 22000 Hz.\n"
"Each frequency can be modulated between -60/+24 dB."
msgstr ""
"Ajoute un effet audio d'égaliseur de 21 bandes à un bus audio. Vous donne le "
"contrôle des fréquences de 22 Hz à 22000 Hz.\n"
"Chaque fréquence peut être modulée entre -60/+24 dB."

msgid ""
"Frequency bands:\n"
"Band 1: 22 Hz\n"
"Band 2: 32 Hz\n"
"Band 3: 44 Hz\n"
"Band 4: 63 Hz\n"
"Band 5: 90 Hz\n"
"Band 6: 125 Hz\n"
"Band 7: 175 Hz\n"
"Band 8: 250 Hz\n"
"Band 9: 350 Hz\n"
"Band 10: 500 Hz\n"
"Band 11: 700 Hz\n"
"Band 12: 1000 Hz\n"
"Band 13: 1400 Hz\n"
"Band 14: 2000 Hz\n"
"Band 15: 2800 Hz\n"
"Band 16: 4000 Hz\n"
"Band 17: 5600 Hz\n"
"Band 18: 8000 Hz\n"
"Band 19: 11000 Hz\n"
"Band 20: 16000 Hz\n"
"Band 21: 22000 Hz\n"
"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ10]."
msgstr ""
"Bandes de fréquence :\n"
"Bande 1 : 22 Hz\n"
"Bande 2 : 32 Hz\n"
"Bande 3 : 44 Hz\n"
"Bande 4 : 63 Hz\n"
"Bande 5 : 90 Hz\n"
"Bande 6 : 125 Hz\n"
"Bande 7 : 175 Hz\n"
"Bande 8 : 250 Hz\n"
"Bande 9 : 350 Hz\n"
"Bande 10 : 500 Hz\n"
"Bande 11 : 700 Hz\n"
"Bande 12 : 1000 Hz\n"
"Bande 13 : 1400 Hz\n"
"Bande 14 : 2000 Hz\n"
"Bande 15 : 2800 Hz\n"
"Bande 16 : 4000 Hz\n"
"Bande 17 : 5600 Hz\n"
"Bande 18 : 8000 Hz\n"
"Bande 19 : 11000 Hz\n"
"Bande 20 : 16000 Hz\n"
"Bande 21 : 22000 Hz\n"
"Voir aussi [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ10]."

msgid ""
"Adds a 6-band equalizer audio effect to an audio bus. Gives you control over "
"frequencies from 32 Hz to 10000 Hz.\n"
"Each frequency can be modulated between -60/+24 dB."
msgstr ""
"Ajoute un effet audio d'égaliseur de 6 bandes à un bus audio. Vous donne le "
"contrôle des fréquences de 32 Hz à 10000 Hz.\n"
"Chaque fréquence peut être modulée entre -60/+24 dB."

msgid ""
"Frequency bands:\n"
"Band 1: 32 Hz\n"
"Band 2: 100 Hz\n"
"Band 3: 320 Hz\n"
"Band 4: 1000 Hz\n"
"Band 5: 3200 Hz\n"
"Band 6: 10000 Hz\n"
"See also [AudioEffectEQ], [AudioEffectEQ10], [AudioEffectEQ21]."
msgstr ""
"Bandes de fréquence :\n"
"Bande 1 : 32 Hz\n"
"Bande 2 : 100 Hz\n"
"Bande 3 : 320 Hz\n"
"Bande 4 : 1000 Hz\n"
"Bande 5 : 3200 Hz\n"
"Bande 6 : 10000 Hz\n"
"Voir aussi [AudioEffectEQ], [AudioEffectEQ10] et [AudioEffectEQ21]."

msgid "Adds a filter to the audio bus."
msgstr "Ajoute un filtre au bus audio."

msgid "Allows frequencies other than the [member cutoff_hz] to pass."
msgstr "Autorise les fréquences autres que [member cutoff_hz] à passer."

msgid "Threshold frequency for the filter, in Hz."
msgstr "Le fréquence seuil pour le filtre, en Hz."

msgid ""
"Steepness of the cutoff curve in dB per octave, also known as the order of "
"the filter. Higher orders have a more aggressive cutoff."
msgstr ""
"Pente de la courbe de coupure en dB par octave, également appelée l'ordre du "
"filtre. Les ordres supérieurs ont une coupure plus agressive."

msgid "Gain amount of the frequencies after the filter."
msgstr "La valeur du gain de fréquences après le filtre."

msgid "Amount of boost in the frequency range near the cutoff frequency."
msgstr "Quantité de boost dans les harmoniques près de la fréquence de coupure."

msgid "Cutting off at 6dB per octave."
msgstr "Coupe de 6 dB par octave."

msgid "Cutting off at 12dB per octave."
msgstr "Coupe de 12 dB par octave."

msgid "Cutting off at 18dB per octave."
msgstr "Coupe de 18 dB par octave."

msgid "Cutting off at 24dB per octave."
msgstr "Coupe de 24 dB par octave."

msgid "Adds a hard limiter audio effect to an Audio bus."
msgstr "Ajoute un effet audio limiteur dur à un bus audio."

msgid ""
"A limiter is an effect designed to disallow sound from going over a given dB "
"threshold. Hard limiters predict volume peaks, and will smoothly apply gain "
"reduction when a peak crosses the ceiling threshold to prevent clipping and "
"distortion. It preserves the waveform and prevents it from crossing the "
"ceiling threshold. Adding one in the Master bus is recommended as a safety "
"measure to prevent sudden volume peaks from occurring, and to prevent "
"distortion caused by clipping."
msgstr ""
"Un limiteur est un effet conçu pour empêcher le son de dépasser un seuil de "
"dB donné. Les limiteurs durs prédisent les pics de volume, et appliqueront de "
"manière lisse une réduction de gain lorsqu'un pic franchit le seuil du "
"plafond pour éviter les coupures et les distorsions. Il conserve la forme "
"d'onde et l'empêche de franchir le seuil du plafond. En ajouter un au bus "
"Master est recommandé comme mesure de sécurité pour éviter que des pics de "
"volume soudain ne se produisent, et pour prévenir la distorsion causée par "
"des coupures."

msgid ""
"The waveform's maximum allowed value, in decibels. This value can range from "
"[code]-24.0[/code] to [code]0.0[/code].\n"
"The default value of [code]-0.3[/code] prevents potential inter-sample peaks "
"(ISP) from crossing over 0 dB, which can cause slight distortion on some "
"older hardware."
msgstr ""
"La valeur maximale autorisée de la forme d'onde, en décibels. Cette valeur "
"peut aller de [code]-24.0[/code] à [code]0.0[/code].\n"
"La valeur par défaut de [code]-0.3[/code] empêche les pics d'interéchantillon "
"potentiels (en anglais, Inter-Sample Peaks ou ISP) de dépasser 0 dB, ce qui "
"peut causer une légère distorsion sur certains matériels plus anciens."

msgid "Gain to apply before limiting, in decibels."
msgstr "Gain à appliquer avant de limiter, en décibels."

msgid "Time it takes in seconds for the gain reduction to fully release."
msgstr ""
"Temps qu'il faut en secondes pour que la réduction de gain soit complètement "
"retirée."

msgid "Adds a high-pass filter to the audio bus."
msgstr "Ajouter un filtre passe-haut au bus audio."

msgid ""
"Cuts frequencies lower than the [member AudioEffectFilter.cutoff_hz] and "
"allows higher frequencies to pass."
msgstr ""
"Supprime les fréquences inférieures à [member AudioEffectFilter.cutoff_hz] et "
"laisse passer les fréquences supérieures."

msgid "Adds a high-shelf filter to the audio bus."
msgstr ""
"Ajouter un filtre \"high-shelf\" (parfois appelé filtre en plateau haut) au "
"bus audio."

msgid "Reduces all frequencies above the [member AudioEffectFilter.cutoff_hz]."
msgstr ""
"Réduit toutes les fréquences au-dessus de [member "
"AudioEffectFilter.cutoff_hz]."

msgid "Manipulates the audio it receives for a given effect."
msgstr "Manipule l'audio qu'il reçoit pour obtenir un effet donné."

msgid ""
"An audio effect instance manipulates the audio it receives for a given "
"effect. This instance is automatically created by an [AudioEffect] when it is "
"added to a bus, and should usually not be created directly. If necessary, it "
"can be fetched at run-time with [method AudioServer.get_bus_effect_instance]."
msgstr ""
"Une instance d'effet audio manipule l'audio qu'elle reçoit pour obtenir un "
"effet donné. Cette instance est automatiquement créée par un [AudioEffect] "
"lorsqu'il est ajouté à un bus, et ne doit généralement pas être créée "
"directement. Si nécessaire, il peut être récupéré à l'exécution avec [method "
"AudioServer.get_bus_effect_instance]."

msgid ""
"Called by the [AudioServer] to process this effect. When [method "
"_process_silence] is not overridden or it returns [code]false[/code], this "
"method is called only when the bus is active.\n"
"[b]Note:[/b] It is not useful to override this method in GDScript or C#. Only "
"GDExtension can take advantage of it."
msgstr ""
"Appelé par l’[AudioServer] pour traiter cet effet. Lorsque [method "
"_process_silence] n'est pas surchargée ou qu'elle renvoie [code]false[/code], "
"cette méthode est appelée seulement lorsque le bus est actif.\n"
"[b]Note :[/b] Il n'est pas utile de surcharger cette méthode en GDScript ou "
"en C#. Seul GDExtension peut en profiter."

msgid ""
"Override this method to customize the processing behavior of this effect "
"instance.\n"
"Should return [code]true[/code] to force the [AudioServer] to always call "
"[method _process], even if the bus has been muted or cannot otherwise be "
"heard."
msgstr ""
"Surchargez cette méthode pour personnaliser le comportement de traitement de "
"cette instance d'effet.\n"
"Devrait renvoyer [code]true[/code] pour forcer l'[AudioServer] à toujours "
"appeler [method _process], même si le bus a été mis en sourdine ou ne peut "
"être entendu autrement."

msgid "Use [AudioEffectHardLimiter] instead."
msgstr "Utilisez [AudioEffectHardLimiter] à la place."

msgid "Adds a soft-clip limiter audio effect to an Audio bus."
msgstr ""
"Ajoute un effet audio de limiteur soft-clip (coupure douce) à un bus audio."

msgid ""
"A limiter is similar to a compressor, but it's less flexible and designed to "
"disallow sound going over a given dB threshold. Adding one in the Master bus "
"is always recommended to reduce the effects of clipping.\n"
"Soft clipping starts to reduce the peaks a little below the threshold level "
"and progressively increases its effect as the input level increases such that "
"the threshold is never exceeded."
msgstr ""
"Un limiteur est semblable à un compresseur, mais il est moins flexible et "
"conçu pour limiter le son au delà d'un certain seuil de décibels donné. "
"L'ajout d'un limiteur dans le bus \"Master\" est toujours recommandé pour "
"réduire les effets de la coupure.\n"
"La coupure douce commence à réduire les pics un peu en dessous du seuil et "
"augmente progressivement son effet puisque le niveau d'entrée augmente de "
"sorte que le seuil n'est jamais dépassé."

msgid ""
"The waveform's maximum allowed value, in decibels. Value can range from -20 "
"to -0.1."
msgstr ""
"La valeur maximale autorisée pour l'onde, en décibels. La valeur peut varier "
"entre -20 et -0.1."

msgid ""
"Applies a gain to the limited waves, in decibels. Value can range from 0 to 6."
msgstr ""
"Applique un gain aux ondes limitées, en décibels. La valeur peut aller de 0 à "
"6."

msgid ""
"Threshold from which the limiter begins to be active, in decibels. Value can "
"range from -30 to 0."
msgstr ""
"Seuil à partir duquel le limiteur commence à être actif, en décibels. La "
"valeur peut aller de -30 à 0."

msgid "Adds a low-pass filter to the audio bus."
msgstr "Ajoute un filtre passe-bas au bus audio."

msgid ""
"Cuts frequencies higher than the [member AudioEffectFilter.cutoff_hz] and "
"allows lower frequencies to pass."
msgstr ""
"Supprime les fréquences supérieures à [member AudioEffectFilter.cutoff_hz] et "
"laisse passer les fréquences inférieures."

msgid "Adds a low-shelf filter to the audio bus."
msgstr ""
"Ajoute un filtre low-shelf (parfois appelé filtre en plateau bas) au bus "
"audio."

msgid "Reduces all frequencies below the [member AudioEffectFilter.cutoff_hz]."
msgstr ""
"Réduit tous les fréquences en-dessous de [member AudioEffectFilter.cutoff_hz]."

msgid "Adds a notch filter to the Audio bus."
msgstr "Ajoute un filtre notch (type de filtre coupe-bande) au bus Audio."

msgid ""
"Attenuates frequencies in a narrow band around the [member "
"AudioEffectFilter.cutoff_hz] and cuts frequencies outside of this range."
msgstr ""
"Atténue les fréquences dans une bande étroite autour du [member "
"AudioEffectFilter.cutoff_hz] et coupe les fréquences en dehors de cette gamme."

msgid "Adds a panner audio effect to an audio bus. Pans sound left or right."
msgstr ""
"Ajoute un effet audio de balance à un bus audio. Balance les sons à gauche ou "
"à droite."

msgid ""
"Determines how much of an audio signal is sent to the left and right buses."
msgstr ""
"Détermine quelle quantité d'un signal audio est envoyé aux bus de gauche et "
"de droite."

msgid "Pan position. Value can range from -1 (fully left) to 1 (fully right)."
msgstr ""
"La balance gauche/droite. La valeur peut aller de -1 (uniquement à gauche) à "
"1 (uniquement à droite)."

msgid ""
"Adds a phaser audio effect to an audio bus.\n"
"Combines the original signal with a copy that is slightly out of phase with "
"the original."
msgstr ""
"Ajoute un effet audio phaser (ou modulateur de phase) à un bus audio.\n"
"Combine le signal original avec une copie qui est légèrement hors phase avec "
"l'original."

msgid ""
"Combines phase-shifted signals with the original signal. The movement of the "
"phase-shifted signals is controlled using a low-frequency oscillator."
msgstr ""
"Combine des signaux déphasés avec le signal original. Le mouvement des "
"signaux déphasés est contrôlé par un oscillateur à basse fréquence."

msgid ""
"Determines how high the filter frequencies sweep. Low value will primarily "
"affect bass frequencies. High value can sweep high into the treble. Value can "
"range from [code]0.1[/code] to [code]4.0[/code]."
msgstr ""
"Détermine à quelle hauteur les fréquences du filtre balayent. Une faible "
"valeur affectera principalement les fréquences basses. Une haute valeur peut "
"balayer haut dans les aigus. La valeur peut aller de [code]0.1[/code] à "
"[code]4.0[/code]."

msgid "Output percent of modified sound. Value can range from 0.1 to 0.9."
msgstr ""
"Pourcentage de sortie du son modifié. La valeur peut aller de 0,1 à 0.9."

msgid ""
"Determines the maximum frequency affected by the LFO modulations, in Hz. "
"Value can range from 10 to 10000."
msgstr ""
"Détermine la fréquence maximale affectée par les modulations de l'oscillateur "
"basse fréquence, en Hz. La valeur peut aller de 10 à 10000."

msgid ""
"Determines the minimum frequency affected by the LFO modulations, in Hz. "
"Value can range from 10 to 10000."
msgstr ""
"Détermine la fréquence minimale affectée par les modulations de l'oscillateur "
"basse fréquence, en Hz. La valeur peut aller de 10 à 10000."

msgid ""
"Adjusts the rate in Hz at which the effect sweeps up and down across the "
"frequency range."
msgstr ""
"Ajuste le taux de Hz à laquelle l'effet balaye en haut et en bas dans la "
"plage de fréquences."

msgid ""
"Adds a pitch-shifting audio effect to an audio bus.\n"
"Raises or lowers the pitch of original sound."
msgstr ""
"Ajoute un effet audio de décalage de hauteur à un bus audio.\n"
"Augmente ou baisse la hauteur du son original."

msgid ""
"Allows modulation of pitch independently of tempo. All frequencies can be "
"increased/decreased with minimal effect on transients."
msgstr ""
"Permet la modulation de la hauteur indépendamment du tempo. Toutes les "
"fréquences peuvent être augmentées/diminuées avec un effet minimal sur les "
"clics."

msgid ""
"The size of the [url=https://en.wikipedia.org/wiki/"
"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
"smooth out the effect over time, but have greater latency. The effects of "
"this higher latency are especially noticeable on sounds that have sudden "
"amplitude changes."
msgstr ""
"La taille de la mémoire de la [url=https://fr.wikipedia.org/wiki/"
"Transformation_de_Fourier_rapide]Transformation de Fourier rapide[/url]. Les "
"valeurs plus élevées lissent l'effet dans le temps, mais ont une plus grande "
"latence. Cette latence sera bien plus visible sur les sons qui changent "
"soudainement."

msgid ""
"The oversampling factor to use. Higher values result in better quality, but "
"are more demanding on the CPU and may cause audio cracking if the CPU can't "
"keep up."
msgstr ""
"Le facteur de suréchantillonnage à utiliser. Des valeurs plus élevées "
"entraînent une meilleure qualité, mais nécessitent plus de puissance du CPU "
"et peuvent provoquer des craquements audibles si le CPU n'est pas assez "
"puissant."

msgid ""
"The pitch scale to use. [code]1.0[/code] is the default pitch and plays "
"sounds unaffected. [member pitch_scale] can range from [code]0.0[/code] "
"(infinitely low pitch, inaudible) to [code]16[/code] (16 times higher than "
"the initial pitch)."
msgstr ""
"L'échelle de hauteur à utiliser. [code]1.0[/code] est la hauteur par défaut "
"et joue des sons non modifiés. [member pitch_scale] peut aller de [code]0.0[/"
"code] (une hauteur infiniment basse, inaudible) à [code]16[/code] (16 fois "
"supérieur à la hauteur initiale)."

msgid ""
"Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, "
"but least stable over time."
msgstr ""
"Utilise une mémoire tampon de 256 échantillons pour la transformée de Fourier "
"rapide. Le délai est le plus court mais est le moins stable dans le temps."

msgid ""
"Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but "
"less stable over time."
msgstr ""
"Utilise une mémoire tampon de 512 échantillons pour la transformée de Fourier "
"rapide. Le délai est court mais moins stable dans le temps."

msgid ""
"Use a buffer of 1024 samples for the Fast Fourier transform. This is a "
"compromise between latency and stability over time."
msgstr ""
"Utilise une mémoire tampon de 1024 échantillons pour la transformée de "
"Fourier rapide. C'est un bon compromis entre le délai et la stabilité dans le "
"temps."

msgid ""
"Use a buffer of 2048 samples for the Fast Fourier transform. High latency, "
"but stable over time."
msgstr ""
"Utilise une mémoire tampon de 2048 échantillons pour la transformée de "
"Fourier rapide. Le délai est long mais est stable dans le temps."

msgid ""
"Use a buffer of 4096 samples for the Fast Fourier transform. Highest latency, "
"but most stable over time."
msgstr ""
"Utilise une mémoire tampon de 4096 échantillons pour la transformée de "
"Fourier rapide. Le délai est le plus long mais est le plus stable dans le "
"temps."

msgid "Represents the size of the [enum FFTSize] enum."
msgstr "Représente la taille de l'énumération [enum FFTSize]."

msgid "Audio effect used for recording the sound from an audio bus."
msgstr ""
"L'effet audio utilisé pour l'enregistrement des sons venants d'un bus audio."

msgid ""
"Allows the user to record the sound from an audio bus into an "
"[AudioStreamWAV]. When used on the \"Master\" audio bus, this includes all "
"audio output by Godot.\n"
"Unlike [AudioEffectCapture], this effect encodes the recording with the given "
"format (8-bit, 16-bit, or compressed) instead of giving access to the raw "
"audio samples.\n"
"Can be used (with an [AudioStreamMicrophone]) to record from a microphone.\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"Permet à l'utilisateur d'enregistrer le son d'un bus audio dans un "
"[AudioStreamWAV]. Lorsqu'il est utilisé sur le bus audio « Master », cela "
"inclut toutes les sorties audio de Godot.\n"
"Contrairement à [AudioEffectCapture], cet effet encode l'enregistrement au "
"format donné (8-bit, 16-bit ou compressé) au lieu de donner accès aux "
"échantillons audio bruts.\n"
"Peut être utilisé (avec un [AudioStreamMicrophone]) pour enregistrer à partir "
"d'un microphone.\n"
"[b]Note :[/b] [member ProjectSettings.audio/driver/enable_input] doit être "
"[code]true[/code] pour que l'entrée audio marche. Voir aussi la description "
"de ce paramètre pour les avertissements liés aux autorisations et aux "
"paramètres de confidentialité du système d'exploitation."

msgid "Recording with microphone"
msgstr "L'enregistrement avec le microphone"

msgid "Returns the recorded sample."
msgstr "Renvoie l’échantillon enregistré."

msgid "Returns whether the recording is active or not."
msgstr "Renvoie si l'enregistrement est actif ou non."

msgid ""
"If [code]true[/code], the sound will be recorded. Note that restarting the "
"recording will remove the previously recorded sample."
msgstr ""
"Si [code]true[/code], le son sera enregistré. Notez que le redémarrage de "
"l'enregistrement supprimera l'échantillon précédemment enregistré."

msgid "Specifies the format in which the sample will be recorded."
msgstr "Spécifie le format dans lequel l'échantillon sera enregistré."

msgid "Adds a reverberation audio effect to an Audio bus."
msgstr "Ajoute un effet audio de réverbération à un bus audio."

msgid ""
"Simulates the sound of acoustic environments such as rooms, concert halls, "
"caverns, or an open spaces."
msgstr ""
"Simule le son d'environnements acoustiques tels que des pièces, des salles de "
"concert, des cavernes ou des espaces ouverts."

msgid ""
"Defines how reflective the imaginary room's walls are. Value can range from 0 "
"to 1."
msgstr ""
"Définit la valeur de réflexion des murs de la salle imaginaire. La valeur "
"peut aller de 0 à 1."

msgid ""
"Output percent of original sound. At 0, only modified sound is outputted. "
"Value can range from 0 to 1."
msgstr ""
"Pourcentage de sortie du son original. À 0, seul le son modifié est produit. "
"La valeur peut aller de 0 à 1."

msgid ""
"High-pass filter passes signals with a frequency higher than a certain cutoff "
"frequency and attenuates signals with frequencies lower than the cutoff "
"frequency. Value can range from 0 to 1."
msgstr ""
"Le filtre passe-haut laisse passer les signaux avec une fréquence supérieure "
"à une certaine fréquence de coupure et atténue les signaux avec des "
"fréquences inférieures à la fréquence de coupure. La valeur peut aller de 0 à "
"1."

msgid "Output percent of predelay. Value can range from 0 to 1."
msgstr "Pourcentage de sortie du pré-délai. La valeur peut aller de 0 à 1."

msgid ""
"Time between the original signal and the early reflections of the reverb "
"signal, in milliseconds."
msgstr ""
"Durée entre le signal d'origine et les réfections précoces du signal de "
"réverbération, en millisecondes."

msgid ""
"Dimensions of simulated room. Bigger means more echoes. Value can range from "
"0 to 1."
msgstr ""
"Dimensions de la pièce simulée. Plus grand veut dire plus d'échos. La valeur "
"peut varier entre 0 et 1."

msgid ""
"Widens or narrows the stereo image of the reverb tail. 1 means fully widens. "
"Value can range from 0 to 1."
msgstr ""
"Élargit ou rétrécit l'image stéréo de la queue de réverbération. 1 signifie "
"élargi complètement. La valeur peut aller de 0 à 1."

msgid ""
"Output percent of modified sound. At 0, only original sound is outputted. "
"Value can range from 0 to 1."
msgstr ""
"Pourcentage de sortie du son modifié. À 0, seul le son original est produit. "
"La valeur peut aller de 0 à 1."

msgid "Audio effect that can be used for real-time audio visualizations."
msgstr ""
"Effet audio qui peut être utilisé pour des visualisations de l'audio en temps "
"réel."

msgid ""
"This audio effect does not affect sound output, but can be used for real-time "
"audio visualizations.\n"
"This resource configures an [AudioEffectSpectrumAnalyzerInstance], which "
"performs the actual analysis at runtime. An instance can be obtained with "
"[method AudioServer.get_bus_effect_instance].\n"
"See also [AudioStreamGenerator] for procedurally generating sounds."
msgstr ""
"Cet effet audio n'affecte pas la sortie sonore, mais peut être utilisé pour "
"les visualisations de l'audio en temps réel.\n"
"Cette ressource configure un [AudioEffectSpectrumAnalyzerInstance] qui "
"effectue l'analyse effective durant l'exécution. Une instance peut être "
"obtenue avec [method AudioServer.get_bus_effect_instance].\n"
"Voir aussi [AudioStreamGenerator] pour générer des sons procéduraux."

msgid "Audio Spectrum Visualizer Demo"
msgstr "Démo de visualiseur de spectre audio"

msgid ""
"The length of the buffer to keep (in seconds). Higher values keep data around "
"for longer, but require more memory."
msgstr ""
"La longueur du tampon à garder (en secondes). Les valeurs plus élevées "
"conservent les données pendant plus longtemps, mais nécessitent plus de "
"mémoire."

msgid ""
"The size of the [url=https://en.wikipedia.org/wiki/"
"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
"smooth out the spectrum analysis over time, but have greater latency. The "
"effects of this higher latency are especially noticeable with sudden "
"amplitude changes."
msgstr ""
"La taille du tampon de la [url=https://fr.wikipedia.org/wiki/"
"Transformation_de_Fourier_rapide]transformation de Fourier rapide[/url]. Des "
"valeurs plus élevées lissent l'analyse du spectre au fil du temps, mais ont "
"une plus grande latence. Les effets de cette latence plus élevée sont "
"particulièrement visibles lors des changements soudains d'amplitude."

msgid "Queryable instance of an [AudioEffectSpectrumAnalyzer]."
msgstr "Instance interrogeable d'un [AudioEffectSpectrumAnalyzer]."

msgid ""
"The runtime part of an [AudioEffectSpectrumAnalyzer], which can be used to "
"query the magnitude of a frequency range on its host bus.\n"
"An instance of this class can be obtained with [method "
"AudioServer.get_bus_effect_instance]."
msgstr ""
"La partie en cours d’exécution d'un [AudioEffectSpectrumAnalyzer], qui peut "
"être utilisée pour demander la magnitude d'une plage de fréquences sur son "
"bus hôte.\n"
"Une instance de cette classe peut être obtenue avec [method "
"AudioServer.get_bus_effect_instance]."

msgid ""
"Returns the magnitude of the frequencies from [param from_hz] to [param "
"to_hz] in linear energy as a Vector2. The [code]x[/code] component of the "
"return value represents the left stereo channel, and [code]y[/code] "
"represents the right channel.\n"
"[param mode] determines how the frequency range will be processed."
msgstr ""
"Renvoie la magnitude des fréquences de [param from_hz] à [param to_hz] en "
"énergie linéaire en tant que Vector2. La composante [code]x[/code] du "
"résultat représente le canal stéréo gauche, et [code]y[/code] représente le "
"canal droite.\n"
"[param mode] détermine comment la plage de fréquences sera traitée."

msgid "Use the average value across the frequency range as magnitude."
msgstr ""
"Utiliser la valeur moyenne de la plage de fréquences en tant que magnitude."

msgid "Use the maximum value of the frequency range as magnitude."
msgstr ""
"Utiliser la valeur maximale de la plage de fréquences en tant que magnitude."

msgid ""
"An audio effect that can be used to adjust the intensity of stereo panning."
msgstr ""
"Un effet audio qui peut être utilisé pour ajuster l'intensité de la balance "
"stéréo."

msgid ""
"Amplifies the difference between stereo channels, increasing or decreasing "
"existing panning. A value of 0.0 will downmix stereo to mono. Does not affect "
"a mono signal."
msgstr ""
"Amplifie la différence entre les canaux stéréo, augmentant ou diminuant la "
"balance existante. Une valeur de 0.0 passera le signal de stéréo à mono. "
"N'affecte pas un signal mono."

msgid "Overrides the location sounds are heard from."
msgstr "Remplace la position d'où les sons sont entendus."

msgid ""
"Once added to the scene tree and enabled using [method make_current], this "
"node will override the location sounds are heard from. Only one "
"[AudioListener2D] can be current. Using [method make_current] will disable "
"the previous [AudioListener2D].\n"
"If there is no active [AudioListener2D] in the current [Viewport], center of "
"the screen will be used as a hearing point for the audio. [AudioListener2D] "
"needs to be inside [SceneTree] to function."
msgstr ""
"Une fois ajouté à l'arbre de scène et activé en utilisant [method "
"make_current], ce nœud remplacera localisation d'où les sons sont entendus. "
"Un seul [AudioListener2D] peut être actif. Utiliser [method make_current] "
"désactivera l'[AudioListener2D] précédent .\n"
"S'il n'y a pas d'[AudioListener2D] actif dans le [Viewport] courant, le "
"centre de l'écran sera utilisé comme point d'écoute pour l'audio. "
"[AudioListener2D] doit être à l'intérieur de [SceneTree] pour fonctionner."

msgid ""
"Disables the [AudioListener2D]. If it's not set as current, this method will "
"have no effect."
msgstr ""
"Désactive l'[AudioListener2D]. S'il n'est pas défini comme l'actuel, cette "
"méthode n'aura aucun effet."

msgid "Returns [code]true[/code] if this [AudioListener2D] is currently active."
msgstr ""
"Renvoie [code]true[/code] si l'[AudioListener2D] est actuellement actif."

msgid ""
"Makes the [AudioListener2D] active, setting it as the hearing point for the "
"sounds. If there is already another active [AudioListener2D], it will be "
"disabled.\n"
"This method will have no effect if the [AudioListener2D] is not added to "
"[SceneTree]."
msgstr ""
"Rend l'[AudioListener2D] actif, le définissant comme le point d'écoute pour "
"les sons. S'il y a déjà un autre [AudioListener2D] actif, il sera désactivé.\n"
"Cette méthode n'aura aucun effet si l'[AudioListener2D] n'est pas ajouté au "
"[SceneTree]."

msgid ""
"Once added to the scene tree and enabled using [method make_current], this "
"node will override the location sounds are heard from. This can be used to "
"listen from a location different from the [Camera3D]."
msgstr ""
"Une fois ajouté à l'arbre de scène et activé en utilisant [method "
"make_current], ce nœud remplacera la localisation d'où les sons sont "
"entendus. Cela peut être utilisé pour écouter à partir d'un emplacement "
"différent de la [Camera3D]."

msgid "Disables the listener to use the current camera's listener instead."
msgstr ""
"Désactive l'écouteur pour utiliser à la place celui de la caméra actuelle."

msgid "Returns the listener's global orthonormalized [Transform3D]."
msgstr "Renvoie le [Transform3D] global orthonormalisé de l'auditeur."

msgid ""
"Returns [code]true[/code] if the listener was made current using [method "
"make_current], [code]false[/code] otherwise.\n"
"[b]Note:[/b] There may be more than one AudioListener3D marked as \"current\" "
"in the scene tree, but only the one that was made current last will be used."
msgstr ""
"Renvoie [code]true[/code] si l'auditeur a été rendu courant en utilisant "
"[method make_current], [code]false[/code] sinon.\n"
"[b]Note :[/b] Il peut y avoir plus d'un AudioListener3D marqué comme "
"\"current\" (courant) dans l'arbre de scène, mais seulement celui qui a été "
"rendu courant en dernier sera utilisé."

msgid "Enables the listener. This will override the current camera's listener."
msgstr "Active cet écouteur. Cela va remplacer celui de la caméra actuelle."

msgid ""
"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] simulation (default)."
msgstr ""
"Désactive la simulation de [url=https://fr.wikipedia.org/wiki/"
"Effet_Doppler]l'effet Doppler[/url] (par défaut)."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in [code]_process[/"
"code]. Changes in the relative velocity of this listener compared to those "
"objects affect how audio is perceived (changing the audio's [member "
"AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Simule [url=https://fr.wikipedia.org/wiki/Effet_Doppler]l'effet Doppler[/url] "
"en suivant la position des objets qui ont changé lors de [code]_process[/"
"code]. Les changements dans la vitesse relative de cet auditeur par rapport à "
"ces objets affectent la façon dont l'audio est perçu (changement de la "
"hauteur [member AudioStreamPlayer3D.pitch_scale] de l'audio)."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in "
"[code]_physics_process[/code]. Changes in the relative velocity of this "
"listener compared to those objects affect how audio is perceived (changing "
"the audio's [member AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Simule [url=https://fr.wikipedia.org/wiki/Effet_Doppler]l'effet Doppler[/url] "
"en suivant la position des objets qui ont changé lors de [code]_process[/"
"code]. Les changements dans la vitesse relative de cet auditeur par rapport à "
"ces objets affectent la façon dont l'audio est perçu (changement de la "
"hauteur [member AudioStreamPlayer3D.pitch_scale] de l'audio)."

msgid "Base class for audio samples."
msgstr "Classe de base pour les échantillons audio."

msgid "Meta class for playing back audio samples."
msgstr "Classe méta pour jouer des échantillons audio."

msgid "Server interface for low-level audio access."
msgstr "Interface de serveur pour l'accès audio de bas niveau."

msgid ""
"[AudioServer] is a low-level server interface for audio access. It is in "
"charge of creating sample data (playable audio) as well as its playback via a "
"voice interface."
msgstr ""
"[AudioServer] est une interface bas-niveau du serveur pour l'accès audio. Il "
"est chargé de créer des données échantillonnées (audio jouable) mais aussi la "
"lecture par une interface orale."

msgid "Audio Device Changer Demo"
msgstr "Démo de changement de périphérique audio"

msgid "Adds a bus at [param at_position]."
msgstr "Ajoute un bus à la position [param at_position]."

msgid ""
"Adds an [AudioEffect] effect to the bus [param bus_idx] at [param "
"at_position]."
msgstr ""
"Ajoute un effet [AudioEffect] au bus [param bus_idx] à la position [param "
"at_position]."

msgid "Generates an [AudioBusLayout] using the available buses and effects."
msgstr "Génère un [AudioBusLayout] en utilisant les bus et effets disponibles."

msgid "Returns the number of channels of the bus at index [param bus_idx]."
msgstr "Renvoie le nombre de canaux du bus à l'index [param bus_idx]."

msgid ""
"Returns the [AudioEffect] at position [param effect_idx] in bus [param "
"bus_idx]."
msgstr ""
"Renvoie l'[AudioEffect] en position [param effect_idx] dans le bus [param "
"bus_idx]."

msgid "Returns the number of effects on the bus at [param bus_idx]."
msgstr "Renvoie le nombre d'effets pour le bus [param bus_idx]."

msgid ""
"Returns the [AudioEffectInstance] assigned to the given bus and effect "
"indices (and optionally channel)."
msgstr ""
"Renvoie l'[AudioEffectInstance] assignée au bus et aux indices de l'effet "
"donnés (et le canal en option)."

msgid ""
"Returns the index of the bus with the name [param bus_name]. Returns "
"[code]-1[/code] if no bus with the specified name exist."
msgstr ""
"Renvoie l'index du bus avec le nom [param bus_name]. Renvoie [code]-1[/code] "
"si aucun bus avec le nom spécifié n'existe."

msgid "Returns the name of the bus with the index [param bus_idx]."
msgstr "Renvoie le nom du bus avec l'index [param bus_idx]."

msgid ""
"Returns the peak volume of the left speaker at bus index [param bus_idx] and "
"channel index [param channel]."
msgstr ""
"Renvoie le pic de volume du haut-parleur gauche à l'index de bus [param "
"bus_idx] et l'index de canal [param channel]."

msgid ""
"Returns the peak volume of the right speaker at bus index [param bus_idx] and "
"channel index [param channel]."
msgstr ""
"Renvoie le pic de volume du haut-parleur droit à l'index de bus [param "
"bus_idx] et l'index de canal [param channel]."

msgid ""
"Returns the name of the bus that the bus at index [param bus_idx] sends to."
msgstr ""
"Renvoie le nom du bus vers lequel le bus à l'index [param bus_idx] envoie "
"l'audio."

msgid "Returns the volume of the bus at index [param bus_idx] in dB."
msgstr "Renvoie le volume du bus à l'index [param bus_idx] en dB."

msgid ""
"Returns the volume of the bus at index [param bus_idx] as a linear value.\n"
"[b]Note:[/b] The returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on the result of [method get_bus_volume_db]."
msgstr ""
"Renvoie le volume du bus à l'index [param bus_idx] en tant que valeur "
"linéaire.\n"
"[b]Note :[/b] La valeur renvoyée est équivalente au résultat de [method "
"@GlobalScope.db_to_linear] sur le résultat de [method get_bus_volume_db]."

msgid ""
"Returns the name of the current audio driver. The default usually depends on "
"the operating system, but may be overridden via the [code]--audio-driver[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url]. [code]--headless[/code] also automatically sets the audio "
"driver to [code]Dummy[/code]. See also [member ProjectSettings.audio/driver/"
"driver]."
msgstr ""
"Renvoie le nom du pilote audio actuel. La valeur par défaut dépend "
"généralement du système d'exploitation, mais peut être remplacée par "
"l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url] [code]--audio-driver[/code]. [code]--headless[/code] "
"définit aussi automatiquement le pilote audio à [code]Dummy[/code]. Voir "
"aussi [member ProjectSettings.audio/driver/driver]."

msgid ""
"Returns the names of all audio input devices detected on the system.\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"Renvoie les noms de tous les périphériques d'entrée audio détectés sur le "
"système.\n"
"[b]Note : [/b] [member ProjectSettings.audio/driver/enable_input] doit valoir "
"[code]true[/code] pour que l'entrée audio marche. Voir aussi la description "
"du paramètre pour les avertissements liées aux autorisations et aux "
"paramètres de confidentialité du système d'exploitation."

msgid "Returns the sample rate at the input of the [AudioServer]."
msgstr "Renvoie la fréquence d'échantillonnage de l'entrée de l'[AudioServer]."

msgid "Returns the sample rate at the output of the [AudioServer]."
msgstr "Renvoie le débit de sortie du [AudioServer]."

msgid "Returns the names of all audio output devices detected on the system."
msgstr ""
"Renvoie les noms de tous les appareils de sortie audio détectés sur le "
"système."

msgid ""
"Returns the audio driver's effective output latency. This is based on [member "
"ProjectSettings.audio/driver/output_latency], but the exact returned value "
"will differ depending on the operating system and audio driver.\n"
"[b]Note:[/b] This can be expensive; it is not recommended to call [method "
"get_output_latency] every frame."
msgstr ""
"Renvoie la latence de sortie effective du pilote audio. Ceci est basé sur "
"[member ProjectSettings.audio/driver/output_latency], mais la valeur de "
"retour exacte diffère selon le système d'exploitation et le pilote audio.\n"
"[b]Note :[/b] Cela peut être coûteux, il n'est pas recommandé d'appeler "
"[method get_output_latency] à chaque trame."

msgid "Returns the speaker configuration."
msgstr "Renvoie la configuration du haut-parleur."

msgid "Returns the relative time since the last mix occurred."
msgstr "Renvoie le temps relatif écoulé depuis le dernier mixage."

msgid "Returns the relative time until the next mix occurs."
msgstr "Renvoie la durée avant le prochain mixage."

msgid ""
"If [code]true[/code], the bus at index [param bus_idx] is bypassing effects."
msgstr ""
"Si [code]true[/code], le bus à l'index [param bus_idx] ignore les effets."

msgid ""
"If [code]true[/code], the effect at index [param effect_idx] on the bus at "
"index [param bus_idx] is enabled."
msgstr ""
"Si [code]true[/code], l'effet à l'index [param effect_idx] sur le bus à "
"l'index [param bus_idx] est activé."

msgid "If [code]true[/code], the bus at index [param bus_idx] is muted."
msgstr "Si [code]true[/code], le bus à la position [param bus_idx] est muet."

msgid "If [code]true[/code], the bus at index [param bus_idx] is in solo mode."
msgstr ""
"Si [code]true[/code], le bus à l'index [param bus_idx] est en mode solo."

msgid ""
"If [code]true[/code], the stream is registered as a sample. The engine will "
"not have to register it before playing the sample.\n"
"If [code]false[/code], the stream will have to be registered before playing "
"it. To prevent lag spikes, register the stream as sample with [method "
"register_stream_as_sample]."
msgstr ""
"Si [code]true[/code], le flux est enregistré en tant qu'échantillon. Le "
"moteur n'aura pas à l'enregistrer avant de jouer l'échantillon.\n"
"Si [code]false[/code], le flux devra être enregistré avant de le jouer. Pour "
"éviter les pics de lag, enregistrez le flux comme échantillon avec [method "
"register_stream_as_sample]."

msgid ""
"Locks the audio driver's main loop.\n"
"[b]Note:[/b] Remember to unlock it afterwards."
msgstr ""
"Verrouille la boucle principale du pilote audio.\n"
"[b]Note :[/b] Il est important de la déverrouiller après utilisation."

msgid "Moves the bus from index [param index] to index [param to_index]."
msgstr "Déplace le bus de la position [param index] à [param to_index]."

msgid ""
"Forces the registration of a stream as a sample.\n"
"[b]Note:[/b] Lag spikes may occur when calling this method, especially on "
"single-threaded builds. It is suggested to call this method while loading "
"assets, where the lag spike could be masked, instead of registering the "
"sample right before it needs to be played."
msgstr ""
"Force l'enregistrement d'un flux en tant qu'échantillon.\n"
"[b]Note :[/b] Des pics de lag peuvent survenir lors de l'appel de cette "
"méthode, en particulier sur les compilation en single-thread. Il est suggéré "
"d'appeler cette méthode pendant le chargement des ressources, où le pic de "
"lag pourrait être masqué, au lieu d'enregistrer l'échantillon juste avant "
"qu'il ne soit joué."

msgid "Removes the bus at index [param index]."
msgstr "Retire le bus à l'index [param index]."

msgid ""
"Removes the effect at index [param effect_idx] from the bus at index [param "
"bus_idx]."
msgstr ""
"Retire l'effet à l'index [param effect_idx] du bus à l'index [param bus_idx]."

msgid "Overwrites the currently used [AudioBusLayout]."
msgstr "Remplace le [AudioBusLayout] actuellement utilisé."

msgid "Sets the name of the bus at index [param bus_idx] to [param name]."
msgstr "Définit le nom du bus à l'index [param bus_idx] en [param name]."

msgid ""
"Connects the output of the bus at [param bus_idx] to the bus named [param "
"send]."
msgstr ""
"Connecte la sortie du bus à l'index [param bus_idx] au bus nommé [param send]."

msgid ""
"Sets the volume in decibels of the bus at index [param bus_idx] to [param "
"volume_db]."
msgstr "Définit le volume du bus à l'index [param bus_idx] à [param volume_db]."

msgid ""
"Sets the volume as a linear value of the bus at index [param bus_idx] to "
"[param volume_linear].\n"
"[b]Note:[/b] Using this method is equivalent to calling [method "
"set_bus_volume_db] with the result of [method @GlobalScope.linear_to_db] on a "
"value."
msgstr ""
"Définit le volume en tant que valeur linéaire du bus d'index [param bus_idx] "
"à [param volume_linear].\n"
"[b]Note :[/b] L'utilisation de cette méthode équivaut à appeler [method "
"set_bus_volume_db] avec le résultat de [method @GlobalScope.linear_to_db] sur "
"une valeur."

msgid ""
"If set to [code]true[/code], all instances of [AudioStreamPlayback] will call "
"[method AudioStreamPlayback._tag_used_streams] every mix step.\n"
"[b]Note:[/b] This is enabled by default in the editor, as it is used by "
"editor plugins for the audio stream previews."
msgstr ""
"S'il est défini à [code]true[/code], toutes les instances de "
"[AudioStreamPlayback] appelleront [method "
"AudioStreamPlayback._tag_used_streams] à chaque étape de mixage.\n"
"[b]Note :[/b] Ceci est activé par défaut dans l'éditeur, car il est utilisé "
"par les plugins d'éditeur pour les prévisualisations des flux audio."

msgid "Swaps the position of two effects in bus [param bus_idx]."
msgstr "Échange la position de deux effets dans le bus d'index [param bus_idx]."

msgid ""
"Unlocks the audio driver's main loop. (After locking it, you should always "
"unlock it.)"
msgstr ""
"Déverrouille la boucle principale du pilote audio. (Après le verrouillage, "
"vous devriez toujours le déverrouiller.)"

msgid "Number of available audio buses."
msgstr "Nombre de bus audio disponibles."

msgid ""
"Name of the current device for audio input (see [method "
"get_input_device_list]). On systems with multiple audio inputs (such as "
"analog, USB and HDMI audio), this can be used to select the audio input "
"device. The value [code]\"Default\"[/code] will record audio on the system-"
"wide default audio input. If an invalid device name is set, the value will be "
"reverted back to [code]\"Default\"[/code].\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"Le nom du périphérique actuel pour l'entrée audio (voir [method "
"get_input_device_list]). Sur les systèmes avec plusieurs entrées audio (comme "
"l'audio analogique, USB et HDMI), ceci peut être utilisé pour sélectionner le "
"périphérique d'entrée audio. La valeur [code]\"Default\"[/code] enregistrera "
"l'audio sur l'entrée audio par défaut du système. Si un nom de périphérique "
"invalide est défini, la valeur sera remise sur [code]\"Default\"[/code].\n"
"[b]Note :[/b] [member ProjectSettings.audio/driver/enable_input] doit valoir "
"[code]true[/code] pour que l'entrée audio fonctionne. Voir aussi la "
"description de ce paramètre pour les avertissements liés aux autorisations et "
"aux paramètres de confidentialité du système d'exploitation."

msgid ""
"Name of the current device for audio output (see [method "
"get_output_device_list]). On systems with multiple audio outputs (such as "
"analog, USB and HDMI audio), this can be used to select the audio output "
"device. The value [code]\"Default\"[/code] will play audio on the system-wide "
"default audio output. If an invalid device name is set, the value will be "
"reverted back to [code]\"Default\"[/code]."
msgstr ""
"Le nom du périphérique actuel pour la sortie audio (voir [method "
"get_output_device_list]). Sur les systèmes avec plusieurs sorties audio (tels "
"que l'audio analogique, USB et HDMI), cela peut être utilisé pour "
"sélectionner le périphérique de sortie de l'audio. La valeur [code]"
"\"Default\"[/code] jouera l'audio sur la sortie audio par défaut au niveau du "
"système. Si un nom de périphérique invalide est défini, la valeur sera remise "
"sur [code]\"Default\"[/code]."

msgid ""
"Scales the rate at which audio is played (i.e. setting it to [code]0.5[/code] "
"will make the audio be played at half its speed). See also [member "
"Engine.time_scale] to affect the general simulation speed, which is "
"independent from [member AudioServer.playback_speed_scale]."
msgstr ""
"Redimensionne le taux auquel l'audio est joué (c.-à-d. le définir à "
"[code]0.5[/code] fera que l'audio soit joué à la moitié de sa vitesse). Voir "
"aussi [member Engine.time_scale] pour affecter la vitesse de simulation "
"générale, qui est indépendante de [member AudioServer.playback_speed_scale]."

msgid "Emitted when an audio bus is added, deleted, or moved."
msgstr "Émis lorsqu'un bus audio est ajouté, supprimé ou déplacé."

msgid ""
"Emitted when the audio bus at [param bus_index] is renamed from [param "
"old_name] to [param new_name]."
msgstr ""
"Émis lorsque le bus audio à l'index [param bus_index] est renommé de [param "
"old_name] à [param new_name]."

msgid "Two or fewer speakers were detected."
msgstr "Deux enceintes ou moins sont détectées."

msgid "A 3.1 channel surround setup was detected."
msgstr "Une configuration surround 3.1 a été détecté."

msgid "A 5.1 channel surround setup was detected."
msgstr "Une configuration surround 5.1 a été détecté."

msgid "A 7.1 channel surround setup was detected."
msgstr "Une configuration surround 7.1 a été détecté."

msgid ""
"The playback will be considered of the type declared at [member "
"ProjectSettings.audio/general/default_playback_type]."
msgstr ""
"La lecture sera considérée du type déclaré dans [member ProjectSettings.audio/"
"general/default_playback_type]."

msgid "Force the playback to be considered as a stream."
msgstr "Forcer la lecture à considérée comme un flux."

msgid ""
"Force the playback to be considered as a sample. This can provide lower "
"latency and more stable playback (with less risk of audio crackling), at the "
"cost of having less flexibility.\n"
"[b]Note:[/b] Only currently supported on the web platform.\n"
"[b]Note:[/b] [AudioEffect]s are not supported when playback is considered as "
"a sample."
msgstr ""
"Forcer la lecture à être considérée comme un échantillon. Cela peut fournir "
"une latence plus faible et une lecture plus stable (avec moins de risque de "
"craquements audio), au coût d'avoir moins de flexibilité.\n"
"[b]Note :[/b] Actuellement seulement supporté sur la plateforme web.\n"
"[b]Note :[/b] Les [AudioEffect]s ne sont pas pris en charge lorsque la "
"lecture est considérée comme un échantillon."

msgid "Represents the size of the [enum PlaybackType] enum."
msgstr "Représente la taille de l'énumération [enum PlaybackType]."

msgid "Base class for audio streams."
msgstr "Classe de base pour les flux audio."

msgid ""
"Base class for audio streams. Audio streams are used for sound effects and "
"music playback, and support WAV (via [AudioStreamWAV]) and Ogg (via "
"[AudioStreamOggVorbis]) file formats."
msgstr ""
"Classe de base pour les flux audio. Les flux audio sont utilisés pour les "
"effets sonores et la lecture de musique, et supportent les formats de "
"fichiers WAV (via [AudioStreamWAV]) et Ogg (via [AudioStreamOggVorbis])."

msgid "Audio streams"
msgstr "Flux audio"

msgid "Audio Generator Demo"
msgstr "Démo du générateur audio"

msgid "Override this method to return the bar beats of this stream."
msgstr ""
"Surchargez cette méthode pour renvoyer les battements par mesure de ce flux."

msgid ""
"Overridable method. Should return the total number of beats of this audio "
"stream. Used by the engine to determine the position of every beat.\n"
"Ideally, the returned value should be based off the stream's sample rate "
"([member AudioStreamWAV.mix_rate], for example)."
msgstr ""
"Méthode surchargeable. Devrait renvoyer le nombre total de battements de ce "
"flux audio. Utilisé par le moteur pour déterminer la position de chaque "
"battement.\n"
"Idéalement, la valeur renvoyée devrait être basée sur le taux "
"d'échantillonnage du flux ([member AudioStreamWAV.mix_rate], par exemple)."

msgid ""
"Overridable method. Should return the tempo of this audio stream, in beats "
"per minute (BPM). Used by the engine to determine the position of every "
"beat.\n"
"Ideally, the returned value should be based off the stream's sample rate "
"([member AudioStreamWAV.mix_rate], for example)."
msgstr ""
"Méthode surchargeable. Devrait renvoyer le tempo de ce flux audio, en "
"battements par minute (BPM). Utilisé par le moteur pour déterminer la "
"position de chaque battement.\n"
"Idéalement, la valeur renvoyée devrait être basée sur le taux "
"d'échantillonnage du flux ([member AudioStreamWAV.mix_rate], par exemple)."

msgid ""
"Override this method to customize the returned value of [method get_length]. "
"Should return the length of this audio stream, in seconds."
msgstr ""
"Surchargez cette méthode pour personnaliser la valeur renvoyée de [method "
"get_length]. Doit renvoyer la longueur de ce flux audio, en secondes."

msgid ""
"Return the controllable parameters of this stream. This array contains "
"dictionaries with a property info description format (see [method "
"Object.get_property_list]). Additionally, the default value for this "
"parameter must be added tho each dictionary in \"default_value\" field."
msgstr ""
"Renvoie les paramètres contrôlables de ce flux. Ce tableau contient des "
"dictionnaires avec un format de description d'infos de propriété (voir "
"[method Object.get_property_list]). De plus, la valeur par défaut pour ce "
"paramètre doit être ajoutée à chaque dictionnaire dans le champ "
"\"default_value\"."

msgid ""
"Override this method to customize the name assigned to this audio stream. "
"Unused by the engine."
msgstr ""
"Surchargez cette méthode pour personnaliser le nom assigné à ce flux audio. "
"Inutilisé par le moteur."

msgid ""
"Override this method to customize the tags for this audio stream. Should "
"return a [Dictionary] of strings with the tag as the key and its content as "
"the value.\n"
"Commonly used tags include [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code], and [code]date[/code]."
msgstr ""
"Surchargez cette méthode pour personnaliser les tags pour ce flux audio. Doit "
"renvoyer un [Dictionary] de chaînes avec le tag comme clé et son contenu "
"comme la valeur.\n"
"Les tags couramment utilisés incluent [code]title[/code], [code]artist[/"
"code], [code]album[/code], [code]tracknumber[/code], et [code]date[/code]."

msgid ""
"Override this method to return [code]true[/code] if this stream has a loop."
msgstr ""
"Surchargez cette méthode pour renvoyer [code]true[/code] si ce flux a une "
"boucle."

msgid ""
"Override this method to customize the returned value of [method "
"instantiate_playback]. Should return a new [AudioStreamPlayback] created when "
"the stream is played (such as by an [AudioStreamPlayer])."
msgstr ""
"Surchargez cette méthode pour personnaliser la valeur renvoyée de [method "
"instantiate_playback]. Doit renvoyer un nouveau [AudioStreamPlayback] créé "
"lorsque le flux est joué (comme avec un [AudioStreamPlayer])."

msgid ""
"Override this method to customize the returned value of [method "
"is_monophonic]. Should return [code]true[/code] if this audio stream only "
"supports one channel."
msgstr ""
"Surchargez cette méthode pour personnaliser la valeur renvoyée de [method "
"is_monophonic]. Doit renvoyer [code]true[/code] si ce flux audio ne supporte "
"qu'un seul canal."

msgid ""
"Returns if the current [AudioStream] can be used as a sample. Only static "
"streams can be sampled."
msgstr ""
"Renvoie si l'[AudioStream] courant peut être utilisé comme échantillon. Seuls "
"les flux statiques peuvent être échantillonnés."

msgid "Generates an [AudioSample] based on the current stream."
msgstr "Génère un [AudioSample] basé sur le flux courant."

msgid ""
"Returns the length of the audio stream in seconds. If this stream is an "
"[AudioStreamRandomizer], returns the length of the last played stream. If "
"this stream has an indefinite length (such as for [AudioStreamGenerator] and "
"[AudioStreamMicrophone]), returns [code]0.0[/code]."
msgstr ""
"Renvoie la longueur du flux audio en secondes. Si ce flux est un "
"[AudioStreamRandomizer], renvoie la longueur du dernier flux joué. Si ce flux "
"a une longueur indéfinie (comme pour [AudioStreamGenerator] et "
"[AudioStreamMicrophone]), renvoie [code]0.0[/code]."

msgid ""
"Returns a newly created [AudioStreamPlayback] intended to play this audio "
"stream. Useful for when you want to extend [method _instantiate_playback] but "
"call [method instantiate_playback] from an internally held AudioStream "
"subresource. An example of this can be found in the source code for "
"[code]AudioStreamRandomPitch::instantiate_playback[/code]."
msgstr ""
"Renvoie un [AudioStreamPlayback] nouvellement créé destiné à jouer ce flux "
"audio. Utile pour quand vous voulez étendre [method _instantiate_playback] "
"mais appeler [method instantiate_playback] d'une sous-ressource AudioStream "
"détenue en interne. Un exemple de cela se trouve dans le code source de "
"[code]AudioStreamRandomPitch::instantiate_playback[/code]."

msgid ""
"Returns [code]true[/code] if the stream is a collection of other streams, "
"[code]false[/code] otherwise."
msgstr ""
"Renvoie [code]true[/code] si le flux est une collection d'autres flux, "
"[code]false[/code] sinon."

msgid ""
"Returns [code]true[/code] if this audio stream only supports one channel "
"([i]monophony[/i]), or [code]false[/code] if the audio stream supports two or "
"more channels ([i]polyphony[/i])."
msgstr ""
"Renvoie [code]true[/code] si ce flux audio ne supporte qu'un canal "
"([i]monophonie[/i]), ou [code]false[/code] si le flux audio prend en charge "
"deux ou plusieurs canaux ([i]polyphonique[/i])."

msgid "Signal to be emitted to notify when the parameter list changed."
msgstr ""
"Signal à émettre pour notifier lorsque la liste des paramètres a changé."

msgid "An audio stream with utilities for procedural sound generation."
msgstr ""
"Un flux audio avec des utilitaires pour la generation de sons procéduraux."

msgid ""
"[AudioStreamGenerator] is a type of audio stream that does not play back "
"sounds on its own; instead, it expects a script to generate audio data for "
"it. See also [AudioStreamGeneratorPlayback].\n"
"Here's a sample on how to use it to generate a sine wave:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var playback # Will hold the AudioStreamGeneratorPlayback.\n"
"@onready var sample_hz = $AudioStreamPlayer.stream.mix_rate\n"
"var pulse_hz = 440.0 # The frequency of the sound wave.\n"
"var phase = 0.0\n"
"\n"
"func _ready():\n"
"\t$AudioStreamPlayer.play()\n"
"\tplayback = $AudioStreamPlayer.get_stream_playback()\n"
"\tfill_buffer()\n"
"\n"
"func fill_buffer():\n"
"\tvar increment = pulse_hz / sample_hz\n"
"\tvar frames_available = playback.get_frames_available()\n"
"\n"
"\tfor i in range(frames_available):\n"
"\t\tplayback.push_frame(Vector2.ONE * sin(phase * TAU))\n"
"\t\tphase = fmod(phase + increment, 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export] public AudioStreamPlayer Player { get; set; }\n"
"\n"
"private AudioStreamGeneratorPlayback _playback; // Will hold the "
"AudioStreamGeneratorPlayback.\n"
"private float _sampleHz;\n"
"private float _pulseHz = 440.0f; // The frequency of the sound wave.\n"
"private double phase = 0.0;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tif (Player.Stream is AudioStreamGenerator generator) // Type as a generator "
"to access MixRate.\n"
"\t{\n"
"\t\t_sampleHz = generator.MixRate;\n"
"\t\tPlayer.Play();\n"
"\t\t_playback = (AudioStreamGeneratorPlayback)Player.GetStreamPlayback();\n"
"\t\tFillBuffer();\n"
"\t}\n"
"}\n"
"\n"
"public void FillBuffer()\n"
"{\n"
"\tfloat increment = _pulseHz / _sampleHz;\n"
"\tint framesAvailable = _playback.GetFramesAvailable();\n"
"\n"
"\tfor (int i = 0; i < framesAvailable; i++)\n"
"\t{\n"
"\t\t_playback.PushFrame(Vector2.One * (float)Mathf.Sin(phase * Mathf.Tau));\n"
"\t\tphase = Mathf.PosMod(phase + increment, 1.0);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In the example above, the \"AudioStreamPlayer\" node must use an "
"[AudioStreamGenerator] as its stream. The [code]fill_buffer[/code] function "
"provides audio data for approximating a sine wave.\n"
"See also [AudioEffectSpectrumAnalyzer] for performing real-time audio "
"spectrum analysis.\n"
"[b]Note:[/b] Due to performance constraints, this class is best used from C# "
"or from a compiled language via GDExtension. If you still want to use this "
"class from GDScript, consider using a lower [member mix_rate] such as 11,025 "
"Hz or 22,050 Hz."
msgstr ""
"[AudioStreamGenerator] est un type de flux audio qui ne joue pas les sons "
"tout seul, au lieu de cela, il s'attend à ce qu'un script génère des données "
"audio pour lui. Voir aussi [AudioStreamGeneratorPlayback].\n"
"Voici un échantillon sur comment l'utiliser pour générer une onde "
"sinusoïdale :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var lecture # Gardera l'AudioStreamGeneratorPlayback.\n"
"@onready var echantillion_hz= $AudioStreamPlayer.stream.mix_rate\n"
"var pulsation_hz = 440.0 # La fréquence de l'onde sonore\n"
"var phase = 0.0\n"
"\n"
"func _ready():\n"
"\t$AudioStreamPlayer.play()\n"
"\tlecture = $AudioStreamPlayer.get_stream_playback()\n"
"\tremplir_buffer()\n"
"\n"
"func remplir_buffer():\n"
"\tvar increment = pulse_hz / sample_hz\n"
"\tvar trames_disponibles = playback.get_frames_available()\n"
"\n"
"\tfor i in range(trames_disponibles):\n"
"\t\tlecture.push_frame(Vector2.ONE * sin(phase * TAU))\n"
"\t\tphase = fmod(phase + increment, 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export] public AudioStreamPlayer Lecteur { get; set; }\n"
"\n"
"private AudioStreamGeneratorPlayback _lecture ; // Gardera "
"l'AudioStreamGeneratorPlayback.\n"
"private float _echantillionHz;\n"
"private float _pulsationHz = 440.0f; // La fréquence de l'onde sonore\n"
"private double phase = 0.0;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tif (Lecteur.Stream is AudioStreamGenerator generateur) // Typé en tant que "
"générateur pour accéder à MixRate.\n"
"\t{\n"
"\t\t_echantillionHz = generateur.MixRate;\n"
"\t\tLecteur.Play();\n"
"\t\t_lecture = (AudioStreamGeneratorPlayback)Player.GetStreamPlayback();\n"
"\t\tRemplirBuffer();\n"
"\t}\n"
"}\n"
"\n"
"public void RemplirBuffer()\n"
"{\n"
"\tfloat increment = _pulsationHz / _echantillionHz;\n"
"\tint trames_disponibles = _playback.GetFramesAvailable();\n"
"\n"
"\tfor (int i = 0; i < trames_disponibles; i++)\n"
"\t{\n"
"\t\t_lecture.PushFrame(Vector2.One * (float)Mathf.Sin(phase * Mathf.Tau));\n"
"\t\tphase = Mathf.PosMod(phase + increment, 1.0);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Dans l'exemple ci-dessus, le nœud \"AudioStreamPlayer\" doit utiliser un "
"[AudioStreamGenerator] comme son flux. La fonction [code]remplir_buffer[/"
"code] fournit des données audio pour estimer une onde sinusoïdale.\n"
"Voir aussi [AudioEffectSpectrumAnalyzer] pour l'analyse du spectre audio en "
"temps réel.\n"
"[b]Note :[/b] En raison de contraintes de performance, cette classe est la "
"mieux utilisée en C# ou d'un langage compilé via GDExtension. Si vous voulez "
"toujours utiliser cette classe en GDScript, envisagez d'utiliser un [member "
"mix_rate] inférieur comme 11,025 Hz ou 22,050 Hz."

msgid ""
"The length of the buffer to generate (in seconds). Lower values result in "
"less latency, but require the script to generate audio data faster, resulting "
"in increased CPU usage and more risk for audio cracking if the CPU can't keep "
"up."
msgstr ""
"La longueur de la mémoire tampon à générer (en secondes). Les valeurs "
"inférieures entraînent moins de latence, mais exigent que le script génère "
"les données audio plus rapidement, ce qui entraîne une utilisation plus "
"important du CPU et plus de risques de craquements audio si le CPU n'est pas "
"assez puissant."

msgid ""
"Mixing rate mode. If set to [constant MIX_RATE_CUSTOM], [member mix_rate] is "
"used, otherwise current [AudioServer] mixing rate is used."
msgstr ""
"Mode de taux de mixage. Si défini à [constant MIX_RATE_CUSTOM], [member "
"mix_rate] est utilisé, le taux de mixage de l'[AudioServer] courant est "
"utilisé."

msgid "Current [AudioServer] output mixing rate."
msgstr "Taux de mixage de sortie de l'[AudioServer] actuel."

msgid "Current [AudioServer] input mixing rate."
msgstr "Taux de mixage d'entrée de l'[AudioServer] actuel."

msgid "Custom mixing rate, specified by [member mix_rate]."
msgstr "Taux de mixage personnalisé, spécifié par [member mix_rate]."

msgid "Maximum value for the mixing rate mode enum."
msgstr "Valeur maximale pour l'énumération du mode de taux de mixage."

msgid "Plays back audio generated using [AudioStreamGenerator]."
msgstr "Joue les sons générés avec [AudioStreamGenerator]."

msgid ""
"This class is meant to be used with [AudioStreamGenerator] to play back the "
"generated audio in real-time."
msgstr ""
"Cette classe est destinée à être utilisée avec un [AudioStreamGenerator] pour "
"lire l'audio généré en temps réel."

msgid "Godot 3.2 will get new audio features"
msgstr "Godot 3.2 aura ces nouvelles fonctionnalités audio"

msgid ""
"Returns [code]true[/code] if a buffer of the size [param amount] can be "
"pushed to the audio sample data buffer without overflowing it, [code]false[/"
"code] otherwise."
msgstr ""
"Renvoie [code]true[/code] si un buffer de taille [param amount] peut être "
"inséré dans le buffer de données de l'échantillon audio sans le faire "
"déborder, [code]false[/code] autrement."

msgid "Clears the audio sample data buffer."
msgstr "Efface la mémoire tampon des échantillons audio."

msgid ""
"Returns the number of frames that can be pushed to the audio sample data "
"buffer without overflowing it. If the result is [code]0[/code], the buffer is "
"full."
msgstr ""
"Renvoie le nombre de trames qui peuvent être poussés dans le buffer de "
"données d'échantillon audio sans le faire déborder. Si le résultat est "
"[code]0[/code], le buffer est plein."

msgid ""
"Returns the number of times the playback skipped due to a buffer underrun in "
"the audio sample data. This value is reset at the start of the playback."
msgstr ""
"Renvoie le nombre de fois que la lecture a sauté en raison d'un [i]buffer "
"underrun[/i] (le buffer s'est vidé plus rapidement qu’il n'a pu être rempli) "
"dans les données de l'échantillon audio. Cette valeur est réinitialisée au "
"début de la lecture."

msgid ""
"Pushes several audio data frames to the buffer. This is usually more "
"efficient than [method push_frame] in C# and compiled languages via "
"GDExtension, but [method push_buffer] may be [i]less[/i] efficient in "
"GDScript."
msgstr ""
"Ajoute plusieurs trames de données audio dans le buffer. Ceci est "
"généralement plus efficace que [method push_frame] pour le C# et les langages "
"compilés via GDExtension, mais [method push_buffer] peut être [i]moins[/i] "
"efficace en GDScript."

msgid ""
"Pushes a single audio data frame to the buffer. This is usually less "
"efficient than [method push_buffer] in C# and compiled languages via "
"GDExtension, but [method push_frame] may be [i]more[/i] efficient in GDScript."
msgstr ""
"Ajoute une seule trame de données audio dans le buffer. Ceci est généralement "
"moins efficace que [method push_buffer] pour le C# et les langages compilés "
"via GDExtension, mais [method push_frame] peut être [i]plus[/i] efficace en "
"GDScript."

msgid ""
"Audio stream that can playback music interactively, combining clips and a "
"transition table."
msgstr ""
"Flux audio qui peut jouer de la musique de manière interactive, en combinant "
"des clips et une table de transition."

msgid ""
"This is an audio stream that can playback music interactively, combining "
"clips and a transition table. Clips must be added first, and then the "
"transition rules via the [method add_transition]. Additionally, this stream "
"exports a property parameter to control the playback via [AudioStreamPlayer], "
"[AudioStreamPlayer2D], or [AudioStreamPlayer3D].\n"
"The way this is used is by filling a number of clips, then configuring the "
"transition table. From there, clips are selected for playback and the music "
"will smoothly go from the current to the new one while using the "
"corresponding transition rule defined in the transition table."
msgstr ""
"C'est un flux audio qui peut jouer de la musique de manière interactive, en "
"combinant des clips et une table de transition. Les clips doivent être "
"d'abord ajoutés, puis les règles de transition via [method add_transition]. "
"De plus, ce flux exporte un paramètre de propriété pour contrôler la lecture "
"via [AudioStreamPlayer], [AudioStreamPlayer2D], ou [AudioStreamPlayer3D].\n"
"La façon dont cela est utilisé est de remplir un certain nombre de clips, "
"puis de configurer la table de transition. De là, les clips sont sélectionnés "
"pour la lecture et la musique passera en douceur du clip courant au nouveau "
"tout en utilisant la règle de transition correspondante définie dans la table "
"de transition."

msgid ""
"Add a transition between two clips. Provide the indices of the source and "
"destination clips, or use the [constant CLIP_ANY] constant to indicate that "
"transition happens to/from any clip to this one.\n"
"* [param from_time] indicates the moment in the current clip the transition "
"will begin after triggered.\n"
"* [param to_time] indicates the time in the next clip that the playback will "
"start from.\n"
"* [param fade_mode] indicates how the fade will happen between clips. If "
"unsure, just use [constant FADE_AUTOMATIC] which uses the most common type of "
"fade for each situation.\n"
"* [param fade_beats] indicates how many beats the fade will take. Using "
"decimals is allowed.\n"
"* [param use_filler_clip] indicates that there will be a filler clip used "
"between the source and destination clips.\n"
"* [param filler_clip] the index of the filler clip.\n"
"* If [param hold_previous] is used, then this clip will be remembered. This "
"can be used together with [constant AUTO_ADVANCE_RETURN_TO_HOLD] to return to "
"this clip after another is done playing."
msgstr ""
"Ajoute une transition entre deux clips. Fournissez les indices des clips "
"source et de destination, ou utilisez la constante [constant CLIP_ANY] pour "
"indiquer que la transition se produit de/vers tout clip à celui-ci.\n"
"* [param from_time] indique le moment dans le clip actuel où la transition "
"commencera après être déclenchée.\n"
"* [param to_time] indique le temps dans le prochain clip où la lecture "
"commencera.\n"
"* [param fade_mode] indique comment la fondu va se produire entre les clips. "
"Si incertain, utilisez juste [constant FADE_AUTOMATIC] qui utilise le type de "
"fondu le plus courant pour chaque situation.\n"
"* [param fade_beats] indique combien de battements la fondu va prendre. "
"L'utilisation de décimales est autorisée.\n"
"* [param use_filler_clip] indique qu'il y aura un clip de remplissage utilisé "
"entre les clips source et de destination.\n"
"* [param filler_clip] l'index du clip de remplissage.\n"
"* Si [param hold_previous] est utilisé, alors ce clip sera mis en mémoire. "
"Cela peut être utilisé avec [constant AUTO_ADVANCE_RETURN_TO_HOLD] pour "
"revenir à ce clip après qu'un autre ait fini de jouer."

msgid ""
"Erase a transition by providing [param from_clip] and [param to_clip] clip "
"indices. [constant CLIP_ANY] can be used for either argument or both."
msgstr ""
"Efface une transition en fournissant les indices de clip [param from_clip] et "
"[param to_clip]. [constant CLIP_ANY] peut être utilisé pour un ou les deux "
"arguments."

msgid ""
"Return whether a clip has auto-advance enabled. See [method "
"set_clip_auto_advance]."
msgstr ""
"Renvoie si un clip a l'avancement automatique activé. Voir [method "
"set_clip_auto_advance]."

msgid ""
"Return the clip towards which the clip referenced by [param clip_index] will "
"auto-advance to."
msgstr ""
"Renvoie le clip vers lequel le clip référencé par [param clip_index] va "
"avancer automatiquement."

msgid "Return the name of a clip."
msgstr "Renvoie le nom d'un clip."

msgid "Return the [AudioStream] associated with a clip."
msgstr "Renvoie l’[AudioStream] associé à un clip."

msgid ""
"Return the time (in beats) for a transition (see [method add_transition])."
msgstr ""
"Renvoie le temps (en battements) pour une transition (voir [method "
"add_transition])."

msgid "Return the mode for a transition (see [method add_transition])."
msgstr "Renvoie le mode pour une transition (voir [method add_transition])."

msgid "Return the filler clip for a transition (see [method add_transition])."
msgstr ""
"Renvoie le clip de remplissage pour une transition (voir [method "
"add_transition])."

msgid ""
"Return the source time position for a transition (see [method "
"add_transition])."
msgstr ""
"Renvoie la position du temps de la source pour une transition (voir [method "
"add_transition])."

msgid "Return the list of transitions (from, to interleaved)."
msgstr "Renvoie la liste des transitions (de et à entrelacés)."

msgid ""
"Return the destination time position for a transition (see [method "
"add_transition])."
msgstr ""
"Renvoie la position du temps de la destination pour une transition (voir "
"[method add_transition])."

msgid ""
"Returns [code]true[/code] if a given transition exists (was added via [method "
"add_transition])."
msgstr ""
"Renvoie [code]true[/code] si une transition donnée existe (a été ajoutée via "
"[method add_transition])."

msgid ""
"Return whether a transition uses the [i]hold previous[/i] functionality (see "
"[method add_transition])."
msgstr ""
"Renvoie si une transition utilise la fonctionnalité [i]maintenir précédente[/"
"i] (voir [method add_transition])."

msgid ""
"Return whether a transition uses the [i]filler clip[/i] functionality (see "
"[method add_transition])."
msgstr ""
"Renvoie si une transition utilise la fonctionnalité [i]clip de remplissage[/"
"i] (voir [method add_transition])."

msgid "Set whether a clip will auto-advance by changing the auto-advance mode."
msgstr ""
"Définit si un clip va avancer automatiquement en changeant le mode "
"d'avancement automatique."

msgid ""
"Set the index of the next clip towards which this clip will auto advance to "
"when finished. If the clip being played loops, then auto-advance will be "
"ignored."
msgstr ""
"Définir l'index du prochain clip vers lequel ce clip va automatiquement "
"avancer lorsqu'il est fini. Si le clip joué boucle, alors l'avancement "
"automatique sera ignoré."

msgid "Set the name of the current clip (for easier identification)."
msgstr "Définit le nom du clip actuel (pour une identification plus facile)."

msgid "Set the [AudioStream] associated with the current clip."
msgstr "Définit l'[AudioStream] associé au clip actuel."

msgid "Amount of clips contained in this interactive player."
msgstr "Quantité de clips contenus dans ce lecteur interactif."

msgid ""
"Index of the initial clip, which will be played first when this stream is "
"played."
msgstr ""
"Index du clip initial, qui sera joué en premier lorsque ce flux est joué."

msgid ""
"Start transition as soon as possible, don't wait for any specific time "
"position."
msgstr ""
"Commence la transition dès que possible, n'attend pas de position temporelle "
"spécifique."

msgid "Transition when the clip playback position reaches the next beat."
msgstr ""
"Transitionne lorsque la position de lecture du clip atteint le prochain "
"battement."

msgid "Transition when the clip playback position reaches the next bar."
msgstr ""
"Transitionne lorsque la position de lecture du clip atteint la mesure "
"suivante."

msgid "Transition when the current clip finished playing."
msgstr "Transitionne lorsque le clip actuel a fini de jouer."

msgid ""
"Transition to the same position in the destination clip. This is useful when "
"both clips have exactly the same length and the music should fade between "
"them."
msgstr ""
"Transitionne à la même position dans le clip de destination. Ceci est utile "
"lorsque les deux clips ont exactement la même longueur et que la musique "
"devrait faire un fondu entre eux."

msgid "Transition to the start of the destination clip."
msgstr "Transitionne au début du clip de destination."

msgid "Use a fade-in in the next clip, let the current clip finish."
msgstr ""
"Utilise un fondu d'ouverture ([i]fade-in[/i]) dans le clip suivant, laisse le "
"clip actuel se terminer."

msgid "Use a fade-out in the current clip, the next clip will start by itself."
msgstr ""
"Utilise un fondu de fermeture ([i]fade-out[/i]) dans le clip suivant, le "
"prochain clip va commencer tout seul."

msgid "Use a cross-fade between clips."
msgstr "Utilise un fondu enchaîné entre les clips."

msgid ""
"Use automatic fade logic depending on the transition from/to. It is "
"recommended to use this by default."
msgstr ""
"Utilise une logique de fondu automatique en fonction de la transition de/"
"vers. Il est recommandé d'utiliser ceci par défaut."

msgid "Disable auto-advance (default)."
msgstr "Désactive l'avance automatique (par défaut)."

msgid "Enable auto-advance, a clip must be specified."
msgstr "Active l'avancement automatique, un clip doit être spécifié."

msgid ""
"Enable auto-advance, but instead of specifying a clip, the playback will "
"return to hold (see [method add_transition])."
msgstr ""
"Active l'avancement automatique, mais au lieu de spécifier un clip, la "
"lecture retournera au clip gardé (voir [method add_transition])."

msgid ""
"This constant describes that any clip is valid for a specific transition as "
"either source or destination."
msgstr ""
"Cette constante décrit que tout clip est valide pour une transition "
"spécifique comme une source ou une destination."

msgid "Plays real-time audio input data."
msgstr "Joue des données d'entrée audio temps réel."

msgid ""
"When used directly in an [AudioStreamPlayer] node, [AudioStreamMicrophone] "
"plays back microphone input in real-time. This can be used in conjunction "
"with [AudioEffectCapture] to process the data or save it.\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"Lorsqu'il est utilisé directement dans un nœud [AudioStreamPlayer], "
"[AudioStreamMicrophone] joue l'entrée du microphone en temps réel. Cela peut "
"être utilisé conjointement avec [AudioEffectCapture] pour traiter les données "
"ou les enregistrer.\n"
"[b]Note :[/b] [member ProjectSettings.audio/driver/enable_input] doit être "
"[code]true[/code] pour que l'entrée audio marche. Voir aussi la description "
"du paramètre pour les problèmes liés aux autorisations et aux paramètres de "
"confidentialité du système d'exploitation."

msgid "Audio Mic Record Demo"
msgstr "Démo d'enregistrement du microphone"

msgid "MP3 audio stream driver."
msgstr "Le pilote de flux audio MP3."

msgid ""
"MP3 audio stream driver. See [member data] if you want to load an MP3 file at "
"run-time.\n"
"[b]Note:[/b] This class can optionally support legacy MP1 and MP2 formats, "
"provided that the engine is compiled with the "
"[code]minimp3_extra_formats=yes[/code] SCons option. These extra formats are "
"not enabled by default."
msgstr ""
"Driver de flux audio MP3. Voir [member data] si vous voulez charger un "
"fichier MP3 en cours d'exécution.\n"
"[b]Note :[/b] Cette classe peut optionnellement supporter les formats anciens "
"MP1 et MP2, à condition que le moteur soit compilé avec l'option SCons "
"[code]minimp3_extra_formats=yes[/code]. Ces formats supplémentaires ne sont "
"pas activés par défaut."

msgid ""
"Creates a new [AudioStreamMP3] instance from the given buffer. The buffer "
"must contain MP3 data."
msgstr ""
"Crée une nouvelle instance [AudioStreamMP3] depuis le tampon donné. Le tampon "
"doit contenir des données MP3."

msgid ""
"Creates a new [AudioStreamMP3] instance from the given file path. The file "
"must be in MP3 format."
msgstr ""
"Crée une nouvelle instance [AudioStreamMP3] depuis le chemin de fichier "
"donné. Le fichier doit être au format MP3."

msgid ""
"Contains the audio data in bytes.\n"
"You can load a file without having to import it beforehand using the code "
"snippet below. Keep in mind that this snippet loads the whole file into "
"memory and may not be ideal for huge files (hundreds of megabytes or more).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func load_mp3(path):\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\tvar sound = AudioStreamMP3.new()\n"
"\tsound.data = file.get_buffer(file.get_length())\n"
"\treturn sound\n"
"[/gdscript]\n"
"[csharp]\n"
"public AudioStreamMP3 LoadMP3(string path)\n"
"{\n"
"\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\tvar sound = new AudioStreamMP3();\n"
"\tsound.Data = file.GetBuffer(file.GetLength());\n"
"\treturn sound;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Contient les données audio en octets.\n"
"Vous pouvez charger un fichier sans avoir à l'importer à l'avance en "
"utilisant le bout de code ci-dessous. Gardez à l'esprit que ce code charge "
"tout le fichier dans la mémoire et peut ne pas être idéal pour des fichiers "
"énormes (des centaines de mégaoctets ou plus).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func charger_mp3(chemin):\n"
"\tvar fichier = FileAccess.open(chemin, FileAccess.READ)\n"
"\tvar son = AudioStreamMP3.new()\n"
"\tson.data = fichier.get_buffer(fichier.get_length())\n"
"\treturn son\n"
"[/gdscript]\n"
"[csharp]\n"
"public AudioStreamMP3 ChargerMP3(string chemin)\n"
"{\n"
"\tusing var fichier = FileAccess.Open(fichier, FileAccess.ModeFlags.Read);\n"
"\tvar son = new AudioStreamMP3();\n"
"\tson.Data = fichier.GetBuffer(fichier.GetLength());\n"
"\treturn son;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]true[/code], the stream will automatically loop when it reaches the "
"end."
msgstr ""
"Si [code]true[/code], le flux se répètera automatiquement quand il aura "
"atteint la fin."

msgid "Time in seconds at which the stream starts after being looped."
msgstr "Le temps en secondes où le flux commence après avoir bouclé."

msgid "A class representing an Ogg Vorbis audio stream."
msgstr "Une classe représentant un flux audio Ogg Vorbis."

msgid ""
"The AudioStreamOggVorbis class is a specialized [AudioStream] for handling "
"Ogg Vorbis file formats. It offers functionality for loading and playing back "
"Ogg Vorbis files, as well as managing looping and other playback properties. "
"This class is part of the audio stream system, which also supports WAV files "
"through the [AudioStreamWAV] class."
msgstr ""
"La classe AudioStreamOggVorbis est une classe [AudioStream] spécialisée pour "
"la manipulation des formats de fichiers Ogg Vorbis. Il offre des "
"fonctionnalités pour le chargement et la lecture de fichiers Ogg Vorbis, "
"ainsi que la gestion de la lecture en boucle et d'autres propriétés de "
"lecture. Cette classe fait partie du système de flux audio, qui prend "
"également en charge les fichiers WAV avec la classe [AudioStreamWAV]."

msgid "Runtime file loading and saving"
msgstr "Chargement et sauvegarde de fichiers durant l’exécution"

msgid ""
"Creates a new [AudioStreamOggVorbis] instance from the given buffer. The "
"buffer must contain Ogg Vorbis data."
msgstr ""
"Crée une nouvelle instance [AudioStreamOggVorbis] depuis le tampon donné. Le "
"tampon doit contenir des données Ogg Vorbis."

msgid ""
"Creates a new [AudioStreamOggVorbis] instance from the given file path. The "
"file must be in Ogg Vorbis format."
msgstr ""
"Crée une nouvelle instance [AudioStreamOggVorbis] depuis le chemin de fichier "
"donné. Le fichier doit être au format Ogg Vorbis."

msgid ""
"If [code]true[/code], the audio will play again from the specified [member "
"loop_offset] once it is done playing. Useful for ambient sounds and "
"background music."
msgstr ""
"Si [code]true[/code], l'audio jouera de nouveau à partir du décalage [member "
"loop_offset] donné une fois qu'il a fini de jouer. Utile pour les sons "
"ambiants et la musique de fond."

msgid "Contains the raw Ogg data for this stream."
msgstr "Contient les données Ogg brutes pour ce flux."

msgid ""
"Contains user-defined tags if found in the Ogg Vorbis data.\n"
"Commonly used tags include [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code], and [code]date[/code] "
"([code]date[/code] does not have a standard date format).\n"
"[b]Note:[/b] No tag is [i]guaranteed[/i] to be present in every file, so make "
"sure to account for the keys not always existing."
msgstr ""
"Contient des tags définis par l'utilisateur si trouvés dans les données Ogg "
"Vorbis.\n"
"Les tags couramment utilisés incluent [code]title[/code], [code]artist[/"
"code], [code]album[/code], [code]tracknumber[/code], et [code]date[/code] "
"([code]date[/code] n'a pas un format de data standard).\n"
"[b]Note :[/b] Aucun tag n'est [i] garanti[/i] d'être présent dans chaque "
"fichier, alors assurez-vous de tenir compte des clés qui n'existent pas "
"toujours."

msgid "Meta class for playing back audio."
msgstr "Classe méta pour la lecture audio."

msgid ""
"Can play, loop, pause a scroll through audio. See [AudioStream] and "
"[AudioStreamOggVorbis] for usage."
msgstr ""
"Peut jouer, boucler, faire pause dans l'audio. Voir [AudioStream] et "
"[AudioStreamOggVorbis] pour l'utilisation."

msgid ""
"Overridable method. Should return how many times this audio stream has "
"looped. Most built-in playbacks always return [code]0[/code]."
msgstr ""
"Méthode surchargeable. Devrait renvoyer combien de fois ce flux audio a "
"bouclé. La plupart des lecteurs intégrés renverront toujours [code]0[/code]."

msgid ""
"Return the current value of a playback parameter by name (see [method "
"AudioStream._get_parameter_list])."
msgstr ""
"Renvoie la valeur courante d'un paramètre de lecture par son nom (voir "
"[method AudioStream._get_parameter_list])."

msgid ""
"Overridable method. Should return the current progress along the audio "
"stream, in seconds."
msgstr ""
"Méthode redéfinissable. Devrait renvoyer la progression actuelle du flux "
"audio, en secondes."

msgid ""
"Overridable method. Should return [code]true[/code] if this playback is "
"active and playing its audio stream."
msgstr ""
"Méthode redéfinissable. Devrait renvoyer [code]true[/code] si la lecture est "
"active et joue son flux audio."

msgid ""
"Override this method to customize how the audio stream is mixed. This method "
"is called even if the playback is not active.\n"
"[b]Note:[/b] It is not useful to override this method in GDScript or C#. Only "
"GDExtension can take advantage of it."
msgstr ""
"Redéfinissez cette méthode pour personnaliser la façon dont le flux audio est "
"mixé. Cette méthode est appelée même si la lecture n'est pas active.\n"
"[b]Note :[/b] Il n'est pas utile de redéfinir cette méthode en GDScript ou "
"C#. Seul GDExtension peut en profiter."

msgid ""
"Override this method to customize what happens when seeking this audio stream "
"at the given [param position], such as by calling [method "
"AudioStreamPlayer.seek]."
msgstr ""
"Redéfinissez cette méthode pour personnaliser ce qui se passe lors de la "
"recherche de ce flux audio pour la position [param position] donnée, comme "
"lors de l'appel de [method AudioStreamPlayer.seek]."

msgid ""
"Set the current value of a playback parameter by name (see [method "
"AudioStream._get_parameter_list])."
msgstr ""
"Définit la valeur actuelle d'un paramètre de lecture par nom (voir [method "
"AudioStream._get_parameter_list])."

msgid ""
"Override this method to customize what happens when the playback starts at "
"the given position, such as by calling [method AudioStreamPlayer.play]."
msgstr ""
"Redéfinissez cette méthode pour personnaliser ce qui se passe lorsque la "
"lecture commence à la position donnée, comme lors de l'appel [method "
"AudioStreamPlayer.play]."

msgid ""
"Override this method to customize what happens when the playback is stopped, "
"such as by calling [method AudioStreamPlayer.stop]."
msgstr ""
"Redéfinissez cette méthode pour personnaliser ce qui se passe lorsque la "
"lecture est arrêtée, comme lors de l'appel de [method AudioStreamPlayer.stop]."

msgid ""
"Overridable method. Called whenever the audio stream is mixed if the playback "
"is active and [method AudioServer.set_enable_tagging_used_audio_streams] has "
"been set to [code]true[/code]. Editor plugins may use this method to \"tag\" "
"the current position along the audio stream and display it in a preview."
msgstr ""
"Méthode redéfinissable. Appelée chaque fois que le flux audio est mixé si la "
"lecture est active et que [method "
"AudioServer.set_enable_tagging_used_audio_streams] a été défini à [code]true[/"
"code]. Les plugins d'éditeur peuvent utiliser cette méthode pour marquer la "
"position courante le long du flux audio et l'afficher dans un aperçu."

msgid "Returns the number of times the stream has looped."
msgstr "Renvoie le nombre de fois que le flux a bouclé."

msgid "Returns the current position in the stream, in seconds."
msgstr "Renvoie la position actuelle dans le flux, en secondes."

msgid ""
"Returns the [AudioSamplePlayback] associated with this [AudioStreamPlayback] "
"for playing back the audio sample of this stream."
msgstr ""
"Renvoie l'[AudioSamplePlayback] associé à ce [AudioStreamPlayback] pour lire "
"l'échantillon audio de ce flux."

msgid "Returns [code]true[/code] if the stream is playing."
msgstr "Renvoie [code]true[/code] si le flux joue."

msgid "Seeks the stream at the given [param time], in seconds."
msgstr "Avance le flux au temps [param time] donné, en secondes."

msgid ""
"Associates [AudioSamplePlayback] to this [AudioStreamPlayback] for playing "
"back the audio sample of this stream."
msgstr ""
"Associe l'[AudioSamplePlayback] à ce [AudioStreamPlayback] pour jouer "
"l'échantillon audio de ce flux."

msgid "Starts the stream from the given [param from_pos], in seconds."
msgstr ""
"Démarre le flux depuis la position [param from_pos] donnée, en secondes."

msgid "Stops the stream."
msgstr "Arrête le flux."

msgid "Playback component of [AudioStreamInteractive]."
msgstr "Composant de lecture d'[AudioStreamInteractive]."

msgid ""
"Playback component of [AudioStreamInteractive]. Contains functions to change "
"the currently played clip."
msgstr ""
"Composant de lecture d'[AudioStreamInteractive]. Contient des fonctions pour "
"changer le clip actuellement joué."

msgid ""
"Return the index of the currently playing clip. You can use this to get the "
"name of the currently playing clip with [method "
"AudioStreamInteractive.get_clip_name].\n"
"[b]Example:[/b] Get the currently playing clip name from inside an "
"[AudioStreamPlayer] node.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var playing_clip_name = "
"stream.get_clip_name(get_stream_playback().get_current_clip_index())\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Renvoie l'index du clip en cours de lecture. Vous pouvez utiliser ceci pour "
"obtenir le nom du clip en cours de lecture avec [method "
"AudioStreamInteractive.get_clip_name].\n"
"[b]Exemple :[/b] Obtenez le nom de clip en cours de lecture à partir d'un "
"nœud [AudioStreamPlayer].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var nom_clip_lecture = "
"flux.get_clip_name(get_stream_playback().get_current_clip_index())\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Switch to a clip (by index)."
msgstr "Change vers un clip (par index)."

msgid "Switch to a clip (by name)."
msgstr "Change vers un clip (par nom)."

msgid "Playback class used for [AudioStreamPlaylist]."
msgstr "Classe de lecture utilisée pour [AudioStreamPlaylist]."

msgid "Playback instance for [AudioStreamPolyphonic]."
msgstr "Instance de lecture pour [AudioStreamPolyphonic]."

msgid ""
"Playback instance for [AudioStreamPolyphonic]. After setting the "
"[code]stream[/code] property of [AudioStreamPlayer], [AudioStreamPlayer2D], "
"or [AudioStreamPlayer3D], the playback instance can be obtained by calling "
"[method AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] or [method "
"AudioStreamPlayer3D.get_stream_playback] methods."
msgstr ""
"Instance de lecture pour [AudioStreamPolyphonic]. Après avoir paramétré la "
"propriété [code]stream[/code] d'[AudioStreamPlayer], [AudioStreamPlayer2D], "
"ou [AudioStreamPlayer3D], l'instance de lecture peut être obtenue en appelant "
"les méthodes [method AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] ou [method "
"AudioStreamPlayer3D.get_stream_playback]."

msgid ""
"Returns [code]true[/code] if the stream associated with the given integer ID "
"is still playing. Check [method play_stream] for information on when this ID "
"becomes invalid."
msgstr ""
"Renvoie [code]true[/code] si le flux associé à l'identifiant entier donné "
"joue encore. Vérifiez [method play_stream] pour obtenir l'information sur "
"quand cette ID devient invalide."

msgid ""
"Play an [AudioStream] at a given offset, volume, pitch scale, playback type, "
"and bus. Playback starts immediately.\n"
"The return value is a unique integer ID that is associated to this playback "
"stream and which can be used to control it.\n"
"This ID becomes invalid when the stream ends (if it does not loop), when the "
"[AudioStreamPlaybackPolyphonic] is stopped, or when [method stop_stream] is "
"called.\n"
"This function returns [constant INVALID_ID] if the amount of streams "
"currently playing equals [member AudioStreamPolyphonic.polyphony]. If you "
"need a higher amount of maximum polyphony, raise this value."
msgstr ""
"Joue un [AudioStream] à un décalage, volume, échelle de pitch, type de "
"lecture et bus donnés. La lecture commence immédiatement.\n"
"La valeur renvoyée est un identifiant entier unique qui est associé à ce flux "
"de lecture et qui peut être utilisée pour le contrôler.\n"
"Cet ID devient invalide lorsque le flux se termine (s'il ne boucle pas), "
"lorsque le [AudioStreamPlaybackPolyphonic] est arrêté, ou lorsque [method "
"stop_stream] est appelée.\n"
"Cette fonction renvoie [constant INVALID_ID] si la quantité de flux jouant "
"actuellement est égale à [member AudioStreamPolyphonic.polyphony]. Si vous "
"avez besoin d'une quantité supérieure de polyphonie maximale, augmentez cette "
"valeur."

msgid ""
"Change the stream pitch scale. The [param stream] argument is an integer ID "
"returned by [method play_stream]."
msgstr ""
"Change l'échelle de la hauteur du flux. L'argument [param stream] est un ID "
"entier renvoyé par [method play_stream]."

msgid ""
"Change the stream volume (in db). The [param stream] argument is an integer "
"ID returned by [method play_stream]."
msgstr ""
"Change le volume du flux (en db). L'argument [param stream] est un ID entier "
"renvoyé par [method play_stream]."

msgid ""
"Stop a stream. The [param stream] argument is an integer ID returned by "
"[method play_stream], which becomes invalid after calling this function."
msgstr ""
"Arrête un flux. L'argument [param stream] est un ID entier renvoyé par "
"[method play_stream], qui devient invalide après avoir appelé cette fonction."

msgid ""
"Returned by [method play_stream] in case it could not allocate a stream for "
"playback."
msgstr ""
"Renvoyé par [method play_stream] au cas où il ne pouvait pas allouer un flux "
"pour la lecture."

msgid "A node for audio playback."
msgstr "Un nœud pour la lecture d'audio."

msgid ""
"The [AudioStreamPlayer] node plays an audio stream non-positionally. It is "
"ideal for user interfaces, menus, or background music.\n"
"To use this node, [member stream] needs to be set to a valid [AudioStream] "
"resource. Playing more than one sound at the same time is also supported, see "
"[member max_polyphony].\n"
"If you need to play audio at a specific position, use [AudioStreamPlayer2D] "
"or [AudioStreamPlayer3D] instead."
msgstr ""
"Le nœud [AudioStreamPlayer] joue un flux audio de manière non-positionnelle. "
"Il est idéal pour les interfaces utilisateur, les menus ou la musique de "
"fond.\n"
"Pour utiliser ce nœud, [member stream] doit être défini à une ressource "
"[AudioStream] valide. Jouer plus d'un son en même temps est également "
"supporté, voir [member max_polyphony].\n"
"Si vous devez jouer de l'audio à une position spécifique, utilisez "
"[AudioStreamPlayer2D] ou [AudioStreamPlayer3D] à la place."

msgid ""
"Returns the position in the [AudioStream] of the latest sound, in seconds. "
"Returns [code]0.0[/code] if no sounds are playing.\n"
"[b]Note:[/b] The position is not always accurate, as the [AudioServer] does "
"not mix audio every processed frame. To get more accurate results, add "
"[method AudioServer.get_time_since_last_mix] to the returned position.\n"
"[b]Note:[/b] This method always returns [code]0.0[/code] if the [member "
"stream] is an [AudioStreamInteractive], since it can have multiple clips "
"playing at once."
msgstr ""
"Renvoie la position dans le [AudioStream] du dernier son, en secondes. "
"Renvoie [code]0.0[/code] si aucun son ne joue.\n"
"[b]Note :[/b] La position n'est pas toujours exacte, car l'[AudioServer] ne "
"mix pas l'audio à chaque trame traitée. Pour obtenir des résultats plus "
"précis, ajoutez [method AudioServer.get_time_since_last_mix] à la position "
"renvoyée.\n"
"[b]Note :[/b] Cette méthode renverra toujours [code]0.0[/code] si [member "
"stream] est un [AudioStreamInteractive], car il peut avoir plusieurs clips "
"jouant à la fois."

msgid ""
"Returns the latest [AudioStreamPlayback] of this node, usually the most "
"recently created by [method play]. If no sounds are playing, this method "
"fails and returns an empty playback."
msgstr ""
"Renvoie le dernier [AudioStreamPlayback] de ce nœud, habituellement le plus "
"récemment créé par [method play]. Si aucun son ne joue, cette méthode échoue "
"et renvoie une lecture vide."

msgid ""
"Returns [code]true[/code] if any sound is active, even if [member "
"stream_paused] is set to [code]true[/code]. See also [member playing] and "
"[method get_stream_playback]."
msgstr ""
"Renvoie [code]true[/code] si un son est actif, même si [member stream_paused] "
"est défini à [code]true[/code]. Voir aussi [member playing] et [method "
"get_stream_playback]."

msgid ""
"Plays a sound from the beginning, or the given [param from_position] in "
"seconds."
msgstr ""
"Joue un son depuis le début, ou à la position [param from_position] donnée, "
"en secondes."

msgid ""
"Restarts all sounds to be played from the given [param to_position], in "
"seconds. Does nothing if no sounds are playing."
msgstr ""
"Recommence tous les sons à jouer de la position [param to_position] donnée, "
"en secondes. Ne fait rien si aucun son ne joue."

msgid "Stops all sounds from this node."
msgstr "Arrête tous les sons de ce nœud."

msgid ""
"If [code]true[/code], this node calls [method play] when entering the tree."
msgstr ""
"Si [code]true[/code], ce nœud appelle [method play] en entrant dans l'arbre."

msgid ""
"The target bus name. All sounds from this node will be playing on this bus.\n"
"[b]Note:[/b] At runtime, if no bus with the given name exists, all sounds "
"will fall back on [code]\"Master\"[/code]. See also [method "
"AudioServer.get_bus_name]."
msgstr ""
"Le nom du bus cible. Tous les sons de ce nœud joueront sur ce bus.\n"
"[b]Note :[/b] En cours d'exécution, si aucun bus avec le nom donné n'existe, "
"tous les sons se replieront sur [code]\"Master\"[/code]. Voir aussi [method "
"AudioServer.get_bus_name]."

msgid ""
"The maximum number of sounds this node can play at the same time. Calling "
"[method play] after this value is reached will cut off the oldest sounds."
msgstr ""
"Le nombre maximum de sons que ce nœud peut jouer en même temps. Appeler "
"[method play] après que cette valeur est atteinte coupera les sons les plus "
"anciens."

msgid ""
"The mix target channels. Has no effect when two speakers or less are detected "
"(see [enum AudioServer.SpeakerMode])."
msgstr ""
"Les canaux cibles de mixage. N'a aucun effet lorsque deux haut-parleurs ou "
"moins sont détectés (voir [enum AudioServer.SpeakerMode])."

msgid ""
"The audio's pitch and tempo, as a multiplier of the [member stream]'s sample "
"rate. A value of [code]2.0[/code] doubles the audio's pitch, while a value of "
"[code]0.5[/code] halves the pitch."
msgstr ""
"La hauteur et le tempo de l'audio, en tant que multiplicateur du taux "
"d'échantillonnage du flux [member stream]. Une valeur de [code]2.0[/code] "
"double la hauteur de l'audio, tandis qu'une valeur de [code]0.5[/code] divise "
"par deux la hauteur."

msgid ""
"The playback type of the stream player. If set other than to the default "
"value, it will force that playback type."
msgstr ""
"Le type de lecture du lecteur de flux. Si défini à autre chose que la valeur "
"par défaut, elle forcera ce type de lecture."

msgid ""
"If [code]true[/code], this node is playing sounds. Setting this property has "
"the same effect as [method play] and [method stop]."
msgstr ""
"Si [code]true[/code], ce nœud joue des sons. Définir cette propriété a le "
"même effet que [method play] et [method stop]."

msgid ""
"The [AudioStream] resource to be played. Setting this property stops all "
"currently playing sounds. If left empty, the [AudioStreamPlayer] does not "
"work."
msgstr ""
"La ressource [AudioStream] à jouer. Définir cette propriété arrête tous les "
"sons en cours de lecture. Si laissé vide, l'[AudioStreamPlayer] ne fonctionne "
"pas."

msgid ""
"If [code]true[/code], the sounds are paused. Setting [member stream_paused] "
"to [code]false[/code] resumes all sounds.\n"
"[b]Note:[/b] This property is automatically changed when exiting or entering "
"the tree, or this node is paused (see [member Node.process_mode])."
msgstr ""
"Si [code]true[/code], les sons sont mis en pause. Définir [member "
"stream_paused] à [code]false[/code] reprend tous les sons.\n"
"[b]Note :[/b] Cette propriété est automatiquement modifiée lors de la sortie "
"ou de l'entrée de l'arbre, ou si ce nœud est mis en pause (voir [member "
"Node.process_mode])."

msgid ""
"Volume of sound, in decibels. This is an offset of the [member stream]'s "
"volume.\n"
"[b]Note:[/b] To convert between decibel and linear energy (like most volume "
"sliders do), use [member volume_linear], or [method "
"@GlobalScope.db_to_linear] and [method @GlobalScope.linear_to_db]."
msgstr ""
"Volume du son, en décibels. Il s'agit d'un décalage du volume de [member "
"stream].\n"
"[b]Note :[/b] Pour convertir entre decibels et énergie linéaire (comme la "
"plupart des curseurs de volume font), utilisez [member volume_linear], ou "
"[method @GlobalScope.db_to_linear] et [method @GlobalScope.linear_to_db]."

msgid ""
"Volume of sound, as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Volume du son, en tant que valeur linéaire.\n"
"[b]Note :[/b] Ce membre modifie [member volume_db] par commodité. La valeur "
"renvoyée est équivalente au résultat de [method @GlobalScope.db_to_linear] "
"sur [member volume_db]. Définir ce membre est équivalent à définir [member "
"volume_db] au résultat de [method @GlobalScope.linear_to_db] sur une valeur."

msgid ""
"Emitted when a sound finishes playing without interruptions. This signal is "
"[i]not[/i] emitted when calling [method stop], or when exiting the tree while "
"sounds are playing."
msgstr ""
"Émis quand un son finit de jouer sans interruption. Ce signal n'est [i]pas[/"
"i] émis lors de l'appel de [method stop], ou lors de la sortie de l'arbre "
"pendant que des sons jouent."

msgid "The audio will be played only on the first channel. This is the default."
msgstr "L'audio ne sera joué que sur le premier canal. C'est le défaut."

msgid "The audio will be played on all surround channels."
msgstr "L'audio sera joué sur tous les canaux surround."

msgid ""
"The audio will be played on the second channel, which is usually the center."
msgstr ""
"L'audio sera joué sur le deuxième canal, qui est généralement le centre."

msgid "Plays positional sound in 2D space."
msgstr "Joue un son localisé dans un espace 2D."

msgid ""
"Plays audio that is attenuated with distance to the listener.\n"
"By default, audio is heard from the screen center. This can be changed by "
"adding an [AudioListener2D] node to the scene and enabling it by calling "
"[method AudioListener2D.make_current] on it.\n"
"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
"[b]Note:[/b] Hiding an [AudioStreamPlayer2D] node does not disable its audio "
"output. To temporarily disable an [AudioStreamPlayer2D]'s audio output, set "
"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
"audible to human hearing)."
msgstr ""
"Joue de l'audio qui est atténué avec la distance à l'auditeur.\n"
"Par défaut, l'audio est entendu du centre de l'écran. Cela peut être changé "
"en ajoutant un nœud [AudioListener2D] à la scène et en l'activant en appelant "
"[method AudioListener2D.make_current] dessus.\n"
"Voir aussi [AudioStreamPlayer] pour jouer un son non-positionnel.\n"
"[b]Note :[/b] Cacher un nœud [AudioStreamPlayer2D] ne désactive pas sa sortie "
"audio. Pour désactiver temporairement la sortie audio "
"d'[AudioStreamPlayer2D], définissez [member volume_db] à une valeur très "
"basse comme [code]-100[/code] (qui n'est pas audible par l'homme)."

msgid "Returns the position in the [AudioStream]."
msgstr "Renvoie la position dans l'[AudioStream]."

msgid ""
"Returns the [AudioStreamPlayback] object associated with this "
"[AudioStreamPlayer2D]."
msgstr ""
"Renvoie l'objet [AudioStreamPlayback] associé avec cet [AudioStreamPlayer2D]."

msgid ""
"Returns whether the [AudioStreamPlayer] can return the [AudioStreamPlayback] "
"object or not."
msgstr ""
"Renvoie si l'[AudioStreamPlayer] peut renvoyer l'objet [AudioStreamPlayback] "
"ou non."

msgid ""
"Queues the audio to play on the next physics frame, from the given position "
"[param from_position], in seconds."
msgstr ""
"Met dans la file d'attente la piste audio à jouer lors de la prochaine trame "
"physique, depuis la position [param from_position] donnée, en secondes."

msgid "Sets the position from which audio will be played, in seconds."
msgstr "Définit la position depuis laquelle l’audio sera joué, en secondes."

msgid "Stops the audio."
msgstr "Arrête l'audio."

msgid ""
"Determines which [Area2D] layers affect the sound for reverb and audio bus "
"effects. Areas can be used to redirect [AudioStream]s so that they play in a "
"certain audio bus. An example of how you might use this is making a \"water\" "
"area so that sounds played in the water are redirected through an audio bus "
"to make them sound like they are being played underwater."
msgstr ""
"Détermine quelles calques du [Area2D] affectent le son pour les effets de "
"réverbération et du bus audio. Les zones peuvent être utilisées pour "
"rediriger le [AudioStream] afin qu'ils soient joués dans un certain bus "
"audio. Un exemple de la façon dont vous pouvez utiliser ceci est de faire une "
"zone \"eau\" de sorte que les sons joués dans l'eau sont redirigés par un bus "
"audio pour les faire sonner comme ils étaient joués sous l'eau."

msgid "The volume is attenuated over distance with this as an exponent."
msgstr "Le volume est atténué avec la distance avec ceci comme exposant."

msgid "If [code]true[/code], audio plays when added to scene tree."
msgstr ""
"Si [code]true[/code], il commence à jouer dès qu'il est ajouté à l'arbre des "
"scènes."

msgid ""
"Bus on which this audio is playing.\n"
"[b]Note:[/b] When setting this property, keep in mind that no validation is "
"performed to see if the given name matches an existing bus. This is because "
"audio bus layouts might be loaded after this property is set. If this given "
"name can't be resolved at runtime, it will fall back to [code]\"Master\"[/"
"code]."
msgstr ""
"Bus sur lequel cette audio joue.\n"
"[b]Note :[/b] Lorsque vous définissez cette propriété, n'oubliez pas "
"qu'aucune validation n'est effectuée pour voir si le nom donné correspond à "
"un bus existant. C'est parce que les configurations de bus audio peuvent être "
"chargées après que cette propriété soit définie. Si ce nom ne peut pas être "
"résolu en cours d'exécution, il va se replier sur [code]\"Master\"[/code]."

msgid "Maximum distance from which audio is still hearable."
msgstr "Distance maximale à laquelle cette piste audio peut être entendue."

msgid ""
"The maximum number of sounds this node can play at the same time. Playing "
"additional sounds after this value is reached will cut off the oldest sounds."
msgstr ""
"Le nombre maximum de sons que ce nœud peut jouer en même temps. Jouer des "
"sons supplémentaires après que cette valeur est atteinte coupera les sons les "
"plus anciens."

msgid ""
"Scales the panning strength for this node by multiplying the base [member "
"ProjectSettings.audio/general/2d_panning_strength] with this factor. Higher "
"values will pan audio from left to right more dramatically than lower values."
msgstr ""
"Redimensionne la force de balance de ce nœud en multipliant la base [member "
"ProjectSettings.audio/general/2d_panning_strength] par ce facteur. Des "
"valeurs plus élevées vont balancer l'audio de gauche à droite plus "
"dramatiquement que les valeurs plus faibles."

msgid ""
"The pitch and the tempo of the audio, as a multiplier of the audio sample's "
"sample rate."
msgstr ""
"La hauteur et le tempo de l'audio, en tant que multiplicateur du taux "
"d'échantillonnage de l’échantillon audio."

msgid ""
"If [code]true[/code], audio is playing or is queued to be played (see [method "
"play])."
msgstr ""
"Si [code]true[/code], l'audio joue ou est en file pour être joué (voir "
"[method play])."

msgid "The [AudioStream] object to be played."
msgstr "L'objet [AudioStream] à jouer."

msgid ""
"If [code]true[/code], the playback is paused. You can resume it by setting "
"[member stream_paused] to [code]false[/code]."
msgstr ""
"Si [code]true[/code], la lecture est en pause. Vous pouvez la reprendre en "
"définissant [member stream_paused] à [code]false[/code]."

msgid "Base volume before attenuation, in decibels."
msgstr "Volume de base avant atténuation, en décibels."

msgid ""
"Base volume before attenuation, as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Volume de base avant atténuation, en tant que valeur linéaire.\n"
"[b]Note :[/b] Ce membre modifie [member volume_db] par commodité. La valeur "
"renvoyée est équivalente au résultat de [method @GlobalScope.db_to_linear] "
"sur [member volume_db]. Définir ce membre est équivalent à définir [member "
"volume_db] au résultat de [method @GlobalScope.linear_to_db] sur une valeur."

msgid "Emitted when the audio stops playing."
msgstr "Émis quand l'audio a fini de jouer."

msgid "Plays positional sound in 3D space."
msgstr "Joue un son localisé dans un espace 3D."

msgid ""
"Plays audio with positional sound effects, based on the relative position of "
"the audio listener. Positional effects include distance attenuation, "
"directionality, and the Doppler effect. For greater realism, a low-pass "
"filter is applied to distant sounds. This can be disabled by setting [member "
"attenuation_filter_cutoff_hz] to [code]20500[/code].\n"
"By default, audio is heard from the camera position. This can be changed by "
"adding an [AudioListener3D] node to the scene and enabling it by calling "
"[method AudioListener3D.make_current] on it.\n"
"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
"[b]Note:[/b] Hiding an [AudioStreamPlayer3D] node does not disable its audio "
"output. To temporarily disable an [AudioStreamPlayer3D]'s audio output, set "
"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
"audible to human hearing)."
msgstr ""
"Joue de l'audio avec des effets sonores positionnels, en fonction de la "
"position relative de l'auditeur audio. Les effets positionnels incluent "
"l'atténuation avec la distance, la directionnalité et l'effet Doppler. Pour "
"plus de réalisme, un filtre passe-bas est appliqué aux sons lointains. Cela "
"peut être désactivé en définissant [member attenuation_filter_cutoff_hz] à "
"[code]20500[/code].\n"
"Par défaut, l'audio est entendu de la position de la caméra. Cela peut être "
"changé en ajoutant un nœud [AudioListener3D] à la scène et l'activer en "
"appelant [method AudioListener3D.make_current] dessus.\n"
"Voir aussi [AudioStreamPlayer] pour jouer un son non-positionnel.\n"
"[b]Note :[/b] Cacher un nœud [AudioStreamPlayer3D] ne désactive pas sa sortie "
"audio. Pour désactiver temporairement la sortie audio "
"d'[AudioStreamPlayer3D], définissez [member volume_db] à une valeur très "
"basse comme [code]-100[/code] (qui n'est pas audible par l'homme)."

msgid ""
"Returns the [AudioStreamPlayback] object associated with this "
"[AudioStreamPlayer3D]."
msgstr ""
"Renvoie l'objet [AudioStreamPlayback] associé avec ce [AudioStreamPlayer3D]."

msgid ""
"Determines which [Area3D] layers affect the sound for reverb and audio bus "
"effects. Areas can be used to redirect [AudioStream]s so that they play in a "
"certain audio bus. An example of how you might use this is making a \"water\" "
"area so that sounds played in the water are redirected through an audio bus "
"to make them sound like they are being played underwater."
msgstr ""
"Détermine quelles couches d'[Area3D] affectent le son pour les effets de "
"réverbération et de bus audio. Les zones peuvent être utilisées pour "
"rediriger les [AudioStream]s afin qu'ils soient joués sur un certain bus "
"audio. Un exemple de la façon dont vous pouvez utiliser ceci est de faire une "
"zone \"eau\" de sorte que les sons joués dans l'eau sont redirigés dans un "
"bus audio pour les faire sonner comme ils étaient joués sous l'eau."

msgid ""
"The cutoff frequency of the attenuation low-pass filter, in Hz. A sound above "
"this frequency is attenuated more than a sound below this frequency. To "
"disable this effect, set this to [code]20500[/code] as this frequency is "
"above the human hearing limit."
msgstr ""
"La fréquence de coupure du filtre à passe-bas d'atténuation, en Hz. Un son au-"
"dessus de cette fréquence est atténué plus qu'un son en-dessous de cette "
"fréquence. Pour désactiver cet effet, définissez ceci à [code]20500[/code] "
"car cette fréquence est supérieure à la limite d'audition humaine."

msgid "Amount how much the filter affects the loudness, in decibels."
msgstr "Quantité de combien le filtre affecte le volume, en décibels."

msgid ""
"Decides if audio should get quieter with distance linearly, quadratically, "
"logarithmically, or not be affected by distance, effectively disabling "
"attenuation."
msgstr ""
"Décide si la piste audio doit s'atténuer avec la distance de manière "
"linéaire, quadratique, logarithmique ou ne pas être affectée par la distance, "
"désactivant ainsi l'atténuation."

msgid ""
"If [code]true[/code], audio plays when the AudioStreamPlayer3D node is added "
"to scene tree."
msgstr ""
"Si [code]true[/code], la lecture commence dès que le AudioStreamPlayer3D est "
"ajouté à la scène."

msgid ""
"The bus on which this audio is playing.\n"
"[b]Note:[/b] When setting this property, keep in mind that no validation is "
"performed to see if the given name matches an existing bus. This is because "
"audio bus layouts might be loaded after this property is set. If this given "
"name can't be resolved at runtime, it will fall back to [code]\"Master\"[/"
"code]."
msgstr ""
"Le bus sur lequel ce son joue.\n"
"[b]Note :[/b] Lorsque vous définissez cette propriété, n'oubliez pas "
"qu'aucune validation n'est effectuée pour voir si le nom donné correspond à "
"un bus existant. C'est parce que les configurations de bus audio peuvent être "
"chargées après que cette propriété soit définie. Si ce nom ne peut pas être "
"résolu en cours d'exécution, il va se replier sur [code]\"Master\"[/code]."

msgid ""
"Decides in which step the Doppler effect should be calculated.\n"
"[b]Note:[/b] If [member doppler_tracking] is not [constant "
"DOPPLER_TRACKING_DISABLED] but the current [Camera3D]/[AudioListener3D] has "
"doppler tracking disabled, the Doppler effect will be heard but will not take "
"the movement of the current listener into account. If accurate Doppler effect "
"is desired, doppler tracking should be enabled on both the "
"[AudioStreamPlayer3D] and the current [Camera3D]/[AudioListener3D]."
msgstr ""
"Décide dans quelle étape l'effet Doppler devrait être calculé.\n"
"[b]Note :[/b] Si [member doppler_tracking] n'est pas [constant "
"DOPPLER_TRACKING_DISABLED] mais le [Camera3D]/[AudioListener3D] courant a le "
"suivi doppler désactivé, l'effet Doppler sera entendu mais ne prendra pas en "
"compte le mouvement de l'auditeur actuel. Si un effet Doppler précis est "
"souhaité, le suivi doppler doit être activé sur le [AudioStreamPlayer3D] et "
"le [Camera3D]/[AudioListener3D] courant."

msgid "The angle in which the audio reaches a listener unattenuated."
msgstr "L'angle avec lequel l'audio atteint un auditeur non atténué."

msgid ""
"If [code]true[/code], the audio should be attenuated according to the "
"direction of the sound."
msgstr ""
"Si [code]true[/code], l'audio doit être atténué selon la direction du son."

msgid ""
"Attenuation factor used if listener is outside of [member "
"emission_angle_degrees] and [member emission_angle_enabled] is set, in "
"decibels."
msgstr ""
"Facteur d'atténuation utilisé si l'auditeur est à l'extérieur de [member "
"emission_angle_degrees] et que[member emission_angle_enabled] est défini, en "
"décibels."

msgid "Sets the absolute maximum of the sound level, in decibels."
msgstr "Définit le maximum absolu du niveau sonore, en décibels."

msgid ""
"The distance past which the sound can no longer be heard at all. Only has an "
"effect if set to a value greater than [code]0.0[/code]. [member max_distance] "
"works in tandem with [member unit_size]. However, unlike [member unit_size] "
"whose behavior depends on the [member attenuation_model], [member "
"max_distance] always works in a linear fashion. This can be used to prevent "
"the [AudioStreamPlayer3D] from requiring audio mixing when the listener is "
"far away, which saves CPU resources."
msgstr ""
"La distance passée laquelle le son ne peut plus être entendu du tout. A un "
"effet seulement si défini à une valeur supérieure à [code]0.0[/code]. [member "
"max_distance] fonctionne en tandem avec [member unit_size]. Cependant, "
"contrairement à [member unit_size], dont le comportement dépend du [member "
"attenuation_model], [member max_distance] fonctionne toujours de façon "
"linéaire. Cela peut être utilisé pour empêcher l'[AudioStreamPlayer3D] "
"d'exiger un mixage audio lorsque l'auditeur est loin, ce qui permet "
"d'économiser des ressources CPU."

msgid "The [AudioStream] resource to be played."
msgstr "La ressource [AudioStream] à jouer."

msgid ""
"The factor for the attenuation effect. Higher values make the sound audible "
"over a larger distance."
msgstr ""
"Le facteur pour l'effet d'atténuation. Des valeurs plus élevées rendent le "
"son audible sur une distance plus grande."

msgid "The base sound level before attenuation, in decibels."
msgstr "Le niveau sonore de base avant l'atténuation, en décibels."

msgid ""
"The base sound level before attenuation, as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Le niveau sonore de base avant l'atténuation, en tant que valeur linéaire.\n"
"[b]Note :[/b] Ce membre modifie [member volume_db] par commodité. La valeur "
"renvoyée est équivalente au résultat de [method @GlobalScope.db_to_linear] "
"sur [member volume_db]. Définir ce membre est équivalent à définir [member "
"volume_db] au résultat de [method @GlobalScope.linear_to_db] sur une valeur."

msgid "Attenuation of loudness according to linear distance."
msgstr "Atténuation du volume selon la distance linéaire."

msgid "Attenuation of loudness according to squared distance."
msgstr "Atténuation du volume selon la distance carrée."

msgid "Attenuation of loudness according to logarithmic distance."
msgstr "Atténuation du volume selon la distance logarithmique."

msgid ""
"No attenuation of loudness according to distance. The sound will still be "
"heard positionally, unlike an [AudioStreamPlayer]. [constant "
"ATTENUATION_DISABLED] can be combined with a [member max_distance] value "
"greater than [code]0.0[/code] to achieve linear attenuation clamped to a "
"sphere of a defined size."
msgstr ""
"Aucune atténuation du volume selon la distance. Le son sera toujours entendu "
"de manière positionnelle, contrairement à un [AudioStreamPlayer]. [constant "
"ATTENUATION_DISABLED] peut être combinée avec une valeur [member "
"max_distance] supérieure à [code]0.0[/code] pour obtenir une atténuation "
"linéaire bornée à une sphère de taille définie."

msgid "Disables doppler tracking."
msgstr "Désactive le suivi doppler."

msgid ""
"Executes doppler tracking during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Exécute le suivi Doppler pendant les trames de traitement (voir [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Executes doppler tracking during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Exécute le suivi Doppler pendant les trames de physique (voir [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"[AudioStream] that includes sub-streams and plays them back like a playlist."
msgstr ""
"[AudioStream] qui comprend des sous-streams et les joue comme une playlist."

msgid ""
"Returns the BPM of the playlist, which can vary depending on the clip being "
"played."
msgstr ""
"Renvoie le BPM de la playlist, qui peut varier en fonction du clip joué."

msgid "Returns the stream at playback position index."
msgstr "Renvoie le flux à l'index de position de lecture."

msgid "Sets the stream at playback position index."
msgstr "Définit le flux à l'index de position de lecture."

msgid ""
"Fade time used when a stream ends, when going to the next one. Streams are "
"expected to have an extra bit of audio after the end to help with fading."
msgstr ""
"Temps de fondu utilisé quand un flux se termine, en allant au prochain. Les "
"flux devraient avoir un peu plus d'audio après la fin pour aider au fondu."

msgid ""
"If [code]true[/code], the playlist will loop, otherwise the playlist will end "
"when the last stream is finished."
msgstr ""
"Si [code]true[/code], la playlist boucle, sinon la playlist se terminera "
"lorsque le dernier flux sera terminé."

msgid ""
"If [code]true[/code], the playlist will shuffle each time playback starts and "
"each time it loops."
msgstr ""
"Si [code]true[/code], la playlist se mélangera à chaque fois que la lecture "
"démarre et à chaque fois qu'elle boucle."

msgid "Amount of streams in the playlist."
msgstr "Quantité de flux dans la playlist."

msgid "Maximum amount of streams supported in the playlist."
msgstr "Quantité maximale de flux supportés dans la playlist."

msgid ""
"AudioStream that lets the user play custom streams at any time from code, "
"simultaneously using a single player."
msgstr ""
"AudioStream qui permet à l'utilisateur de jouer des flux personnalisés à tout "
"moment à partir du code, simultanément, en utilisant un seul lecteur."

msgid ""
"AudioStream that lets the user play custom streams at any time from code, "
"simultaneously using a single player.\n"
"Playback control is done via the [AudioStreamPlaybackPolyphonic] instance set "
"inside the player, which can be obtained via [method "
"AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] or [method "
"AudioStreamPlayer3D.get_stream_playback] methods. Obtaining the playback "
"instance is only valid after the [code]stream[/code] property is set as an "
"[AudioStreamPolyphonic] in those players."
msgstr ""
"AudioStream qui permet à l'utilisateur de jouer des flux personnalisés à tout "
"moment à partir du code, simultanément, en utilisant un seul lecteur.\n"
"Le contrôle de lecture se fait via l'instance [AudioStreamPlaybackPolyphonic] "
"définie dans le lecteur, qui peut être obtenue via les méthodes [method "
"AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] ou [method "
"AudioStreamPlayer3D.get_stream_playback]. L'obtention de l'instance de "
"lecture n'est valide que lorsque la propriété [code]stream[/code] est définie "
"comme un [AudioStreamPolyphonic] dans ces lecteurs."

msgid "Maximum amount of simultaneous streams that can be played."
msgstr "Quantité maximale de flux simultanés qui peuvent être joués."

msgid "Wraps a pool of audio streams with pitch and volume shifting."
msgstr ""
"Enveloppe un pool de flux audios avec un décalage de pitch et de volume."

msgid ""
"Picks a random AudioStream from the pool, depending on the playback mode, and "
"applies random pitch shifting and volume shifting during playback."
msgstr ""
"Choisi un AudioStream aléatoire dans le pool, suivant le mode de playback et "
"applique un décalage aléatoire au pitch et un décalage du volume pendant le "
"playback."

msgid ""
"Insert a stream at the specified index. If the index is less than zero, the "
"insertion occurs at the end of the underlying pool."
msgstr ""
"Insère un flux à l'index spécifié. Si l'index est inférieur à zéro, "
"l'insertion se produit à la fin de la pool sous-jacente."

msgid "Returns the stream at the specified index."
msgstr "Renvoie le flux à l'index spécifié."

msgid ""
"Returns the probability weight associated with the stream at the given index."
msgstr ""
"Renvoie le coefficient de probabilité associé avec le flux à l'indice donné."

msgid "Move a stream from one index to another."
msgstr "Déplace un flux d'un index à un autre."

msgid "Remove the stream at the specified index."
msgstr "Retire le flux à l'index spécifié."

msgid "Set the AudioStream at the specified index."
msgstr "Définit l'AudioStream à l'index spécifié."

msgid ""
"Set the probability weight of the stream at the specified index. The higher "
"this value, the more likely that the randomizer will choose this stream "
"during random playback modes."
msgstr ""
"Définit le coefficient de probabilité du flux à l'index spécifié. Plus cette "
"valeur est élevée, plus le randomiseur choisira ce flux durant les modes de "
"lecture aléatoire."

msgid ""
"Controls how this AudioStreamRandomizer picks which AudioStream to play next."
msgstr ""
"Contrôle comment cet AudioStreamRandomizer choisit quel AudioStream joue "
"ensuite."

msgid ""
"The intensity of random pitch variation. A value of 1 means no variation."
msgstr ""
"L'intensité de la variation aléatoire de la hauteur. Une valeur de 1 signifie "
"aucune variation."

msgid ""
"The intensity of random volume variation. A value of 0 means no variation."
msgstr ""
"L'intensité de la variation aléatoire du volume. Une valeur de 0 signifie "
"aucune variation."

msgid "The number of streams in the stream pool."
msgstr "Le nombre de flux dans le pool de flux."

msgid ""
"Pick a stream at random according to the probability weights chosen for each "
"stream, but avoid playing the same stream twice in a row whenever possible. "
"If only 1 sound is present in the pool, the same sound will always play, "
"effectively allowing repeats to occur."
msgstr ""
"Choisit un flux au hasard selon les coefficients de probabilité choisis pour "
"chaque flux, mais évite de jouer le même flux deux fois de suite tant que "
"possible. Si seulement 1 son est présent dans la pool, le même son jouera "
"toujours, autorisant effectivement les répétitions."

msgid ""
"Pick a stream at random according to the probability weights chosen for each "
"stream. If only 1 sound is present in the pool, the same sound will always "
"play."
msgstr ""
"Choisit un flux au hasard selon les coefficients de probabilité choisis pour "
"chaque flux. Si seulement 1 son est présent dans la pool, le même son jouera "
"toujours."

msgid ""
"Play streams in the order they appear in the stream pool. If only 1 sound is "
"present in the pool, the same sound will always play."
msgstr ""
"Joue des flux dans l'ordre qu'ils apparaissent dans la pool de flux. Si "
"seulement 1 son est présent dans la piscine, le même son jouera toujours."

msgid ""
"Stream that can be fitted with sub-streams, which will be played in-sync."
msgstr "Flux qui peut être équipé de sous-flux, qui seront joué en synchro."

msgid ""
"This is a stream that can be fitted with sub-streams, which will be played in-"
"sync. The streams begin at exactly the same time when play is pressed, and "
"will end when the last of them ends. If one of the sub-streams loops, then "
"playback will continue."
msgstr ""
"C'est un flux qui peut être équipé de sous-flux, qui seront joués en synchro. "
"Les flux commencent exactement en même temps quand \"jouer\" est appuyé, et "
"se termineront quand le dernier d'entre eux se terminera. Si l'un des sous-"
"flux boucle, la lecture se poursuivra."

msgid "Get one of the synchronized streams, by index."
msgstr "Obtient un des flux synchronisés, par index."

msgid "Get the volume of one of the synchronized streams, by index."
msgstr "Obtient le volume d'un des flux synchronisés, par index."

msgid "Set one of the synchronized streams, by index."
msgstr "Définit un des flux synchronisés, par index."

msgid "Set the volume of one of the synchronized streams, by index."
msgstr "Définit le volume d'un des flux synchronisés, par index."

msgid "Set the total amount of streams that will be played back synchronized."
msgstr "Définir la nombre total de flux qui seront rejoués synchronisés."

msgid "Maximum amount of streams that can be synchronized."
msgstr "Nombre maximal de flux qui peuvent être synchronisés."

msgid "Stores audio data loaded from WAV files."
msgstr "Enregistre les données audio depuis les fichiers WAV."

msgid ""
"AudioStreamWAV stores sound samples loaded from WAV files. To play the stored "
"sound, use an [AudioStreamPlayer] (for non-positional audio) or "
"[AudioStreamPlayer2D]/[AudioStreamPlayer3D] (for positional audio). The sound "
"can be looped.\n"
"This class can also be used to store dynamically-generated PCM audio data. "
"See also [AudioStreamGenerator] for procedural audio generation."
msgstr ""
"AudioStreamSample stocke des échantillons sonores chargés depuis des fichiers "
"WAV. Pour jouer le son enregistré, utilisez un [AudioStreamPlayer] (pour de "
"l'audio indépendant de la position) ou [AudioStreamPlayer2D]/"
"[AudioStreamPlayer3D] (pour de l'audio dépendant de la positions). Le son "
"peut être bouclé.\n"
"Cette classe peut également être utilisée pour stocker des données audio "
"générées dynamiquement au format PCM. Voir aussi [AudioStreamGenerator] pour "
"la génération audio procédurale."

msgid ""
"Creates a new [AudioStreamWAV] instance from the given buffer. The buffer "
"must contain WAV data.\n"
"The keys and values of [param options] match the properties of "
"[ResourceImporterWAV]. The usage of [param options] is identical to [method "
"AudioStreamWAV.load_from_file]."
msgstr ""
"Crée une nouvelle instance [AudioStreamWAV] depuis le tampon donné. Le tampon "
"doit contenir des données WAV.\n"
"Les clés et les valeurs de [param options] correspondent aux propriétés de "
"[ResourceImporterWAV]. L'utilisation de [param options] est identique à "
"[method AudioStreamWAV.load_from_file]."

msgid ""
"Creates a new [AudioStreamWAV] instance from the given file path. The file "
"must be in WAV format.\n"
"The keys and values of [param options] match the properties of "
"[ResourceImporterWAV].\n"
"[b]Example:[/b] Load the first file dropped as a WAV and play it:\n"
"[codeblock]\n"
"@onready var audio_player = $AudioStreamPlayer\n"
"\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(_on_files_dropped)\n"
"\n"
"func _on_files_dropped(files):\n"
"\tif files[0].get_extension() == \"wav\":\n"
"\t\taudio_player.stream = AudioStreamWAV.load_from_file(files[0], {\n"
"\t\t\t\t\"force/max_rate\": true,\n"
"\t\t\t\t\"force/max_rate_hz\": 11025\n"
"\t\t\t})\n"
"\t\taudio_player.play()\n"
"[/codeblock]"
msgstr ""
"Crée une nouvelle instance [AudioStreamWAV] depuis le chemin de fichier "
"donné. Le fichier doit être en format WAV.\n"
"Les clés et les valeurs de [param options] correspondent aux propriétés de "
"[ResourceImporterWAV].\n"
"[b]Exemple :[/b] Charger le premier fichier déposé en WAV et le jouer :\n"
"[codeblock]\n"
"@onready var lecteur_audio = $AudioStreamPlayer\n"
"\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(_lorsque_fichier_depose)\n"
"\n"
"func _lorsque_fichier_depose(fichiers):\n"
"\tif fichiers[0].get_extension() == \"wav\":\n"
"\t\tlecteur_audio.stream = AudioStreamWAV.load_from_file(fichiers[0], {\n"
"\t\t\t\t\"force/max_rate\": true,\n"
"\t\t\t\t\"force/max_rate_hz\": 11025\n"
"\t\t\t})\n"
"\t\tlecteur_audio.play()\n"
"[/codeblock]"

msgid ""
"Saves the AudioStreamWAV as a WAV file to [param path]. Samples with IMA "
"ADPCM or Quite OK Audio formats can't be saved.\n"
"[b]Note:[/b] A [code].wav[/code] extension is automatically appended to "
"[param path] if it is missing."
msgstr ""
"Enregistre l'AudioStreamWAV en un fichier WAV à l'emplacement [param path]. "
"Les échantillons au format IMA ADPCM ou Quite OK Audio ne peuvent pas être "
"enregistrés.\n"
"[b]Note :[/b] Une extension [code].wav[/code] est automatiquement ajoutée au "
"[param path] si elle est manquante."

msgid ""
"Contains the audio data in bytes.\n"
"[b]Note:[/b] If [member format] is set to [constant FORMAT_8_BITS], this "
"property expects signed 8-bit PCM data. To convert from unsigned 8-bit PCM, "
"subtract 128 from each byte.\n"
"[b]Note:[/b] If [member format] is set to [constant FORMAT_QOA], this "
"property expects data from a full QOA file."
msgstr ""
"Contient les données audio en octets.\n"
"[b]Note :[/b] Si [member format] est défini à [constant FORMAT_8_BITS], cette "
"propriété s'attend à des données PCM signées 8 bits. Pour convertir des PCM 8 "
"bits non signés, soustraire 128 à chaque octet.\n"
"[b]Note :[/b] Si [member format] est défini à [constant FORMAT_QOA], cette "
"propriété s'attend à des données d'un fichier QOA complet."

msgid "Audio format."
msgstr "Format audio."

msgid ""
"The loop start point (in number of samples, relative to the beginning of the "
"stream)."
msgstr ""
"Le point de départ de la boucle (en nombre d’échantillons, relatif au début "
"du flux)."

msgid ""
"The loop end point (in number of samples, relative to the beginning of the "
"stream)."
msgstr ""
"Le point de fin de la boucle (en nombre d’échantillons, relatif au début du "
"flux)."

msgid "The loop mode."
msgstr "Le mode de boucle."

msgid ""
"The sample rate for mixing this audio. Higher values require more storage "
"space, but result in better quality.\n"
"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
"[code]48000[/code].\n"
"According to the [url=https://en.wikipedia.org/wiki/"
"Nyquist%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/"
"url], there is no quality difference to human hearing when going past 40,000 "
"Hz (since most humans can only hear up to ~20,000 Hz, often less). If you are "
"using lower-pitched sounds such as voices, lower sample rates such as "
"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
"quality."
msgstr ""
"Le taux d'échantillonnage pour mélanger ce son. Les valeurs plus élevées "
"nécessitent plus d'espace de stockage, mais proposent une meilleure qualité.\n"
"Dans les jeux, les taux d'échantillonnage courants sont [code]11025[/code], "
"[code]16000[/code], [code]22050[/code], [code]32000[/code], [code]44100[/"
"code], et [code]48000[/code].\n"
"D'après le [url=https://fr.wikipedia.org/wiki/"
"Th%C3%A9or%C3%A8me_d'%C3%A9chantillonnage]Théorème d'échantillonnage[/url], "
"il n'y a aucune différence de qualité pour l'audition humaine au-delà de 40 "
"000 Hz (puisque la plupart des humains ne peuvent entendre que jusqu'à 20 000 "
"Hz, et souvent bien moins). Si vous générez des sons inférieurs tels que les "
"voix, des taux d'échantillonnage inférieurs tels que [code]32000[/code] ou "
"[code]22050[/code] peuvent être utilisables sans perte de qualité audible."

msgid "If [code]true[/code], audio is stereo."
msgstr "Si [code]true[/code], l’audio est stéréo."

msgid ""
"Contains user-defined tags if found in the WAV data.\n"
"Commonly used tags include [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code], and [code]date[/code] "
"([code]date[/code] does not have a standard date format).\n"
"[b]Note:[/b] No tag is [i]guaranteed[/i] to be present in every file, so make "
"sure to account for the keys not always existing.\n"
"[b]Note:[/b] Only WAV files using a [code]LIST[/code] chunk with an "
"identifier of [code]INFO[/code] to encode the tags are currently supported."
msgstr ""
"Contient des étiquettes définies par l'utilisateur si elles sont trouvées "
"dans les données WAV.\n"
"Les étiquettes couramment utilisées incluent [code]title[/code], "
"[code]artist[/code], [code]album[/code], [code]tracknumber[/code], et "
"[code]date[/code] ([code]date[/code] n'a pas un format de date standard).\n"
"[b]Note :[/b] Aucune étiquette n'est [i]garantie[/i] d'être présente dans "
"chaque fichier, alors assurez-vous de tenir compte des clés qui n'existent "
"pas toujours.\n"
"[b]Note :[/b] Seuls les fichiers WAV utilisant un chunk [code]LIST[/code] "
"avec un identifiant [code]INFO[/code] pour encoder les étiquettes sont "
"actuellement supportés."

msgid "8-bit PCM audio codec."
msgstr "Codec audio 8 bits PCM."

msgid "16-bit PCM audio codec."
msgstr "Codec audio 16 bits PCM."

msgid "Audio is lossily compressed as IMA ADPCM."
msgstr "L'audio est compressé avec perte en IMA ADPCM."

msgid ""
"Audio is lossily compressed as [url=https://qoaformat.org/]Quite OK Audio[/"
"url]."
msgstr ""
"L'audio est compressé avec perte au format [url=https://qoaformat.org/]Quite "
"OK Audio[/url]."

msgid "Audio does not loop."
msgstr "L'audio ne boucle pas."

msgid ""
"Audio loops the data between [member loop_begin] and [member loop_end], "
"playing forward only."
msgstr ""
"L'audio boucle entre [member loop_begin] et [member loop_end], ne jouant "
"qu'en avant."

msgid ""
"Audio loops the data between [member loop_begin] and [member loop_end], "
"playing back and forth."
msgstr ""
"Les données audio bouclent entre [member loop_begin] et [member loop_end], "
"jouant en arrière puis en avant."

msgid ""
"Audio loops the data between [member loop_begin] and [member loop_end], "
"playing backward only."
msgstr ""
"L'audio boucle entre [member loop_begin] et [member loop_end], ne jouant "
"qu'en arrière."

msgid ""
"A node that copies a region of the screen to a buffer for access in shader "
"code."
msgstr ""
"Un nœud qui copie une région de l'écran vers un buffer pour y accéder dans du "
"code de shader."

msgid ""
"Node for back-buffering the currently-displayed screen. The region defined in "
"the [BackBufferCopy] node is buffered with the content of the screen it "
"covers, or the entire screen according to the [member copy_mode]. It can be "
"accessed in shader scripts using the screen texture (i.e. a uniform sampler "
"with [code]hint_screen_texture[/code]).\n"
"[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), "
"anchors and margins won't apply to child [Control]-derived nodes. This can be "
"problematic when resizing the window. To avoid this, add [Control]-derived "
"nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of adding them "
"as children."
msgstr ""
"Nœud pour le back-buffering (litt. \"buffer arrière\") de l'écran "
"actuellement affiché. La région définie dans le nœud [BackBufferCopy] est "
"mise en buffer avec le contenu de l'écran qu'elle couvre, ou l'écran entier "
"selon le mode de copie [member copy_mode]. Il peut être consulté dans des "
"scripts de shader en utilisant la texture de l'écran (c.-à-d. un "
"échantillonneur uniforme avec [code]hint_screen_texture[/code]).\n"
"[b]Note :[/b] Étant donné que ce nœud hérite de [Node2D] (et non [Control]), "
"les ancres et les marges ne s'appliqueront pas aux nœuds enfants dérivés de "
"[Control]. Cela peut être problématique lors du redimensionnement de la "
"fenêtre. Pour éviter cela, ajoutez des nœuds dérivés de [Control] comme "
"[i]frères[/i] du nœud [BackBufferCopy] au lieu de les ajouter en tant "
"qu'enfants."

msgid "Screen-reading shaders"
msgstr "Shaders lisant l'écran"

msgid "Buffer mode."
msgstr "Mode du tampon."

msgid ""
"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is "
"[constant COPY_MODE_RECT]."
msgstr ""
"La zone couverte par le [BackBufferCopy]. Seulement utilisée si [member "
"copy_mode] vaut [constant COPY_MODE_RECT]."

msgid ""
"Disables the buffering mode. This means the [BackBufferCopy] node will "
"directly use the portion of screen it covers."
msgstr ""
"Désactive le mode buffering. Cela signifie que le nœud [BackBufferCopy] "
"utilisera directement la partie de l'écran qu'il couvre."

msgid "[BackBufferCopy] buffers a rectangular region."
msgstr "[BackBufferCopy] met en tampon une région rectangulaire."

msgid "[BackBufferCopy] buffers the entire screen."
msgstr "[BackBufferCopy] met en mémoire tampon tout l'écran."

msgid "Abstract base class for GUI buttons."
msgstr "Classe commune abstraite pour les boutons GUI."

msgid ""
"[BaseButton] is an abstract base class for GUI buttons. It doesn't display "
"anything by itself."
msgstr ""
"[BaseButton] est une classe de base abstraite pour les boutons GUI. Ça "
"n'affiche rien seul."

msgid ""
"Called when the button is pressed. If you need to know the button's pressed "
"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
"Appelée quand le bouton est appuyé. Si vous avez besoin de connaître l'état "
"du bouton activé (et que [member toggle_mode] est actif), utilisez plutôt "
"[method _toggled]."

msgid ""
"Called when the button is toggled (only if [member toggle_mode] is active)."
msgstr ""
"Appelée quand un bouton est basculé (seulement si [member toggle_mode] est "
"actif)."

msgid ""
"Returns the visual state used to draw the button. This is useful mainly when "
"implementing your own draw code by either overriding _draw() or connecting to "
"\"draw\" signal. The visual state of the button is defined by the [enum "
"DrawMode] enum."
msgstr ""
"Renvoie l'état visuel utilisé pour dessiner le bouton. Ceci est utile surtout "
"pour implémenter votre propre code d'affichage en surchargeant _draw() ou en "
"se connectant au signal \"draw\". L'état visuel du bouton est défini par "
"l’énumération [enum DrawMode]."

msgid ""
"Returns [code]true[/code] if the mouse has entered the button and has not "
"left it yet."
msgstr ""
"Renvoie [code]true[/code] si la souris est entrée dans le bouton mais ne l'a "
"pas encore quitté."

msgid ""
"Changes the [member button_pressed] state of the button, without emitting "
"[signal toggled]. Use when you just want to change the state of the button "
"without sending the pressed event (e.g. when initializing scene). Only works "
"if [member toggle_mode] is [code]true[/code].\n"
"[b]Note:[/b] This method doesn't unpress other buttons in [member "
"button_group]."
msgstr ""
"Change l'état [member button_pressed] du bouton, sans émettre [signal "
"toggled]. Utilisez lorsque vous voulez simplement changer l'état du bouton "
"sans envoyer l'événement quand il est manuellement pressé (par ex. au moment "
"de l'initialisation de la scène). Fonctionne seulement si [member "
"toggle_mode] est [code]true[/code].\n"
"[b]Note :[/b] Cette méthode ne désélectionne pas les autres boutons dans son "
"[member button_group]."

msgid "Determines when the button is considered clicked."
msgstr "Détermine quand le bouton est considéré comme cliqué."

msgid ""
"The [ButtonGroup] associated with the button. Not to be confused with node "
"groups.\n"
"[b]Note:[/b] The button will be configured as a radio button if a "
"[ButtonGroup] is assigned to it."
msgstr ""
"Le [ButtonGroup] associé au bouton. À ne pas confondre avec des groupes de "
"nœuds.\n"
"[b]Note :[/b] Le bouton sera configuré comme un bouton radio si un "
"[ButtonGroup] lui est assigné."

msgid ""
"Binary mask to choose which mouse buttons this button will respond to.\n"
"To allow both left-click and right-click, use [code]MOUSE_BUTTON_MASK_LEFT | "
"MOUSE_BUTTON_MASK_RIGHT[/code]."
msgstr ""
"Masque binaire pour choisir auxquels boutons de la souris ce bouton "
"répondra.\n"
"Pour permettre à la fois le clic gauche et le clic droit, utilisez "
"[code]MOUSE_BUTTON_MASK_LEFT | MOUSE_BUTTON_MASK_RIGHT[/code]."

msgid ""
"If [code]true[/code], the button is in disabled state and can't be clicked or "
"toggled.\n"
"[b]Note:[/b] If the button is disabled while held down, [signal button_up] "
"will be emitted."
msgstr ""
"Si [code]true[/code], le bouton est désactivé et il ne peut donc pas être "
"appuyé ou basculé.\n"
"[b]Note :[/b] Si le bouton est désactivé alors qu'il est en train d'être "
"appuyé, [signal button_up] sera émis."

msgid ""
"If [code]true[/code], the button stays pressed when moving the cursor outside "
"the button while pressing it.\n"
"[b]Note:[/b] This property only affects the button's visual appearance. "
"Signals will be emitted at the same moment regardless of this property's "
"value."
msgstr ""
"Si [code]true[/code], le bouton reste pressé quand le clic est maintenu mais "
"que le curseur est déplacé en dehors du bouton.\n"
"[b]Note :[/b] Cette propriété n'affecte que l'aspect visuel du bouton. Les "
"signaux seront toujours émis au même moment, peu importe la valeur de cette "
"propriété."

msgid "[Shortcut] associated to the button."
msgstr "Le [Shortcut] associé au bouton."

msgid ""
"If [code]true[/code], the button will highlight for a short amount of time "
"when its shortcut is activated. If [code]false[/code] and [member "
"toggle_mode] is [code]false[/code], the shortcut will activate without any "
"visual feedback."
msgstr ""
"Si [code]true[/code], le bouton sera mis en évidence pour une courte durée "
"lorsque son raccourci est activé. Si [code]false[/code] et [member "
"toggle_mode] vaut [code]false[/code], le raccourci s'active sans retour "
"visuel."

msgid ""
"If [code]true[/code], the button will add information about its shortcut in "
"the tooltip.\n"
"[b]Note:[/b] This property does nothing when the tooltip control is "
"customized using [method Control._make_custom_tooltip]."
msgstr ""
"Si [code]true[/code], le bouton ajoutera des informations sur son raccourci "
"dans l'info-bulle.\n"
"[b]Note :[/b] Cette propriété ne fait rien lorsque le contrôle de l'info-"
"bulle est personnalisé en utilisant [method Control._make_custom_tooltip]."

msgid ""
"If [code]true[/code], the button is in toggle mode. Makes the button flip "
"state between pressed and unpressed each time its area is clicked."
msgstr ""
"Si [code]true[/code], le bouton est en mode basculement. Fait basculer le "
"bouton entre les états pressé et non-pressé chaque fois qu'il est cliqué."

msgid "Emitted when the button starts being held down."
msgstr "Émis quand le bouton commence à être appuyé."

msgid "Emitted when the button stops being held down."
msgstr "Émis quand le bouton cesse d'être appuyé."

msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
"and on [signal button_up] otherwise.\n"
"If you need to know the button's pressed state (and [member toggle_mode] is "
"active), use [signal toggled] instead."
msgstr ""
"Émis quand le bouton est basculé ou pressé. Émis lors de [signal button_down] "
"si [member action_mode] est [constant ACTION_MODE_BUTTON_PRESS] et lors de "
"[signal button_up] sinon.\n"
"Si vous avez besoin de connaître l'état du bouton (et que [member "
"toggle_mode] est actif), utilisez plutôt [signal toggled]."

msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[param toggled_on] argument."
msgstr ""
"Émis lorsque le bouton vient de changer d'état entre les états pressés et "
"normaux (seulement si [member toggle_mode] est actif). Le nouvel état est "
"contenu dans l'argument [param toggled_on]."

msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
"L'état normal (c'est-à-dire non pressé, non survolé, non basculé ni activé) "
"des boutons."

msgid "The state of buttons are pressed."
msgstr "L'état des boutons est : pressé."

msgid "The state of buttons are hovered."
msgstr "L'état des boutons est : survolé."

msgid "The state of buttons are disabled."
msgstr "L'état des boutons est : désactivé."

msgid "The state of buttons are both hovered and pressed."
msgstr "L'état des boutons est à la fois survolé et appuyé."

msgid "Require just a press to consider the button clicked."
msgstr "Il suffit d'appuyer sur le bouton pour le considérer comme cliqué."

msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
msgstr ""
"Requiert un appui suivi d'un relâchement avant de considérer le bouton comme "
"cliqué."

msgid "Abstract base class for defining the 3D rendering properties of meshes."
msgstr ""
"Classe de base abstraite pour définir les propriétés de rendu 3D de maillages."

msgid ""
"This class serves as a default material with a wide variety of rendering "
"features and properties without the need to write shader code. See the "
"tutorial below for details."
msgstr ""
"Cette classe sert de matériau par défaut avec une grande variété de "
"fonctionnalités et de propriétés de rendu sans avoir besoin d'écrire de code "
"de shader. Voir le tutoriel ci-dessous pour plus de détails."

msgid "Standard Material 3D and ORM Material 3D"
msgstr "Matériau standard 3D et matériau ORM 3D"

msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
msgstr ""
"Renvoie [code]true[/code] si la fonctionnalité [enum Feature] spécifiée est "
"active."

msgid "Returns [code]true[/code] if the specified flag is enabled."
msgstr "Renvoie [code]true[/code] si le drapeau spécifié est activé."

msgid ""
"Returns the [Texture2D] associated with the specified [enum TextureParam]."
msgstr "Renvoie la [Texture2D] associée avec le [enum TextureParam] spécifié."

msgid ""
"If [code]true[/code], enables the specified [enum Feature]. Many features "
"that are available in [BaseMaterial3D]s need to be enabled before use. This "
"way the cost for using the feature is only incurred when specified. Features "
"can also be enabled by setting the corresponding member to [code]true[/code]."
msgstr ""
"Si [code]true[/code], active la [enum Feature] spécifiée. De nombreuses "
"fonctionnalités disponibles dans [BaseMaterial3D] doivent être activées avant "
"utilisation. De cette façon, le coût d'utilisation de la fonctionnalité n'est "
"présent que lorsque spécifié. Les fonctionnalités peuvent également être "
"activées en définissant le membre correspondant à [code]true[/code]."

msgid ""
"If [code]true[/code], enables the specified flag. Flags are optional behavior "
"that can be turned on and off. Only one flag can be enabled at a time with "
"this function, the flag enumerators cannot be bit-masked together to enable "
"or disable multiple flags at once. Flags can also be enabled by setting the "
"corresponding member to [code]true[/code]."
msgstr ""
"Si [code]true[/code], active le drapeau spécifié. Les drapeaux sont un "
"comportement optionnel qui peut être activé et désactivé. Un seul drapeau "
"peut être activé à la fois avec cette fonction, les énumérateurs de drapeau "
"ne peuvent pas être mis dans un masque de bits ensemble pour activer ou "
"désactiver plusieurs drapeaux à la fois. Les drapeaux peuvent également être "
"activés en définissant le membre correspondant à [code]true[/code]."

msgid "Sets the texture for the slot specified by [param param]."
msgstr "Définit la texture à l'emplacement spécifié par [param param]."

msgid ""
"The material's base color.\n"
"[b]Note:[/b] If [member detail_enabled] is [code]true[/code] and a [member "
"detail_albedo] texture is specified, [member albedo_color] will [i]not[/i] "
"modulate the detail texture. This can be used to color partial areas of a "
"material by not specifying an albedo texture and using a transparent [member "
"detail_albedo] texture instead."
msgstr ""
"La couleur de base du matériau.\n"
"[b]Note :[/b] Si [member detail_enabled] vaut [code]true[/code] et qu'une "
"texture [member detail_albedo] est spécifiée, [member albedo_color] ne "
"modulera [i]pas[/i] la texture des détails. Cela peut être utilisé pour "
"colorer des zones partielles d'un matériau en ne spécifiant pas une texture "
"albédo et en utilisant une texture [member detail_albedo] transparente à la "
"place."

msgid ""
"Texture to multiply by [member albedo_color]. Used for basic texturing of "
"objects.\n"
"If the texture appears unexpectedly too dark or too bright, check [member "
"albedo_texture_force_srgb]."
msgstr ""
"La texture à multiplier par la couleur [member albedo_color]. Utilisé pour "
"l'habillage basique des objets.\n"
"Si la texture apparaît de façon inattendue trop foncée ou trop lumineuse, "
"vérifiez [member albedo_texture_force_srgb]."

msgid ""
"If [code]true[/code], forces a conversion of the [member albedo_texture] from "
"sRGB color space to linear color space. See also [member "
"vertex_color_is_srgb].\n"
"This should only be enabled when needed (typically when using a "
"[ViewportTexture] as [member albedo_texture]). If [member "
"albedo_texture_force_srgb] is [code]true[/code] when it shouldn't be, the "
"texture will appear to be too dark. If [member albedo_texture_force_srgb] is "
"[code]false[/code] when it shouldn't be, the texture will appear to be too "
"bright."
msgstr ""
"Si [code]true[/code], force une conversion de la texture [member "
"albedo_texture] de l'espace de couleur sRGB à l'espace de couleur linéaire. "
"Voir aussi [member vertex_color_is_srgb].\n"
"Cela ne devrait être activé qu'au besoin (généralement lorsque vous utilisez "
"un [ViewportTexture] comme [member albedo_texture]). Si [member "
"albedo_texture_force_srgb] vaut [code]true[/code] lorsque cela ne devrait pas "
"être, la texture semblera trop foncée. Si [member albedo_texture_force_srgb] "
"vaut [code]false[/code] lorsque cela ne devrait pas être, la texture semblera "
"trop brillante."

msgid ""
"Enables multichannel signed distance field rendering shader. Use [member "
"msdf_pixel_range] and [member msdf_outline_size] to configure MSDF parameters."
msgstr ""
"Active le shader de rendu Champ de Distance Signé Multicanal (CDSM, ou MSDF "
"en anglais). Utilisez [member msdf_pixel_range] et [member msdf_outline_size] "
"pour configurer les paramètres CDSM."

msgid "Threshold at which antialiasing will be applied on the alpha channel."
msgstr ""
"Le seuil à partir duquel l'anticrénalage sera appliqué sur le canal alpha."

msgid "The type of alpha antialiasing to apply."
msgstr "Le type d’anticrénelage alpha à appliquer."

msgid ""
"The hashing scale for Alpha Hash. Recommended values between [code]0[/code] "
"and [code]2[/code]."
msgstr ""
"L'échelle de hachage pour Alpha Hash. Valeurs recommandées entre [code]0[/"
"code] et [code]2[/code]."

msgid ""
"Threshold at which the alpha scissor will discard values. Higher values will "
"result in more pixels being discarded. If the material becomes too opaque at "
"a distance, try increasing [member alpha_scissor_threshold]. If the material "
"disappears at a distance, try decreasing [member alpha_scissor_threshold]."
msgstr ""
"Seuil à partir duquel le ciseau alpha rejettera les valeurs. Des valeurs plus "
"élevées entraîneront la suppression de plus de pixels. Si le matériau devient "
"trop opaque à distance, essayez d'augmenter [member alpha_scissor_threshold]. "
"Si le matériau disparaît à distance, essayez de diminuer [member "
"alpha_scissor_threshold]."

msgid ""
"The strength of the anisotropy effect. This is multiplied by [member "
"anisotropy_flowmap]'s alpha channel if a texture is defined there and the "
"texture contains an alpha channel."
msgstr ""
"La force de l'effet d'anisotropie. Ceci est multiplié par le canal alpha de "
"[member anisotropy_flowmap] si une texture y est définie et la texture "
"contient un canal alpha."

msgid ""
"If [code]true[/code], anisotropy is enabled. Anisotropy changes the shape of "
"the specular blob and aligns it to tangent space. This is useful for brushed "
"aluminum and hair reflections.\n"
"[b]Note:[/b] Mesh tangents are needed for anisotropy to work. If the mesh "
"does not contain tangents, the anisotropy effect will appear broken.\n"
"[b]Note:[/b] Material anisotropy should not to be confused with anisotropic "
"texture filtering, which can be enabled by setting [member texture_filter] to "
"[constant TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC]."
msgstr ""
"Si [code]true[/code], l'anisotropie est activée. L'anisotropie modifie la "
"forme du blob spéculaire et l'aligne à l'espace tangent. Ceci est utile pour "
"l'aluminium brossé et les reflets capillaires.\n"
"[b]Note :[/b] Les tangentes du maillage sont nécessaires pour que "
"l'anisotropie fonctionne. Si le maillage ne contient pas de tangentes, "
"l'effet anisotropie apparaîtra cassé.\n"
"[b]Note :[/b] L'anisotropie du matériau ne doit pas être confondue avec le "
"filtrage de texture anisotrope, qui peut être activé en définissant [member "
"texture_filter] à [constant TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC]."

msgid ""
"Texture that offsets the tangent map for anisotropy calculations and "
"optionally controls the anisotropy effect (if an alpha channel is present). "
"The flowmap texture is expected to be a derivative map, with the red channel "
"representing distortion on the X axis and green channel representing "
"distortion on the Y axis. Values below 0.5 will result in negative "
"distortion, whereas values above 0.5 will result in positive distortion.\n"
"If present, the texture's alpha channel will be used to multiply the strength "
"of the [member anisotropy] effect. Fully opaque pixels will keep the "
"anisotropy effect's original strength while fully transparent pixels will "
"disable the anisotropy effect entirely. The flowmap texture's blue channel is "
"ignored."
msgstr ""
"Texture qui décale la tangent map pour les calculs d'anisotropie et contrôle "
"optionnellement l'effet d'anisotropie (si un canal alpha est présent). La "
"texture flowmap devrait être une texture des dérivées, le canal rouge "
"représentant la distorsion sur l'axe X et le canal vert représentant la "
"distorsion sur l'axe Y. Les valeurs inférieures à 0,5 entraîneront une "
"distorsion négative, tandis que les valeurs supérieures à 0,5 entraîneront "
"une distorsion positive.\n"
"S'il est présent, le canal alpha de la texture sera utilisé pour multiplier "
"la force de l'effet [member anisotropy]. Les pixels entièrement opaques "
"garderont la force originale de l'effet anisotropie tandis que les pixels "
"entièrement transparents désactiveront entièrement l'effet d'anisotropie. Le "
"canal bleu de la flowmap est ignoré."

msgid ""
"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion darkens "
"areas based on the [member ao_texture]."
msgstr ""
"Si [code]true[/code], l'occlusion ambiante est activée. L'occlusion ambiante "
"assombrit les zones basées sur [member ao_texture]."

msgid ""
"Amount that ambient occlusion affects lighting from lights. If [code]0[/"
"code], ambient occlusion only affects ambient light. If [code]1[/code], "
"ambient occlusion affects lights just as much as it affects ambient light. "
"This can be used to impact the strength of the ambient occlusion effect, but "
"typically looks unrealistic."
msgstr ""
"Montant de l'occlusion ambiante qui affecte l'éclairage des lumières. Si "
"[code]0[/code], l'occlusion ambiante n'affecte que la lumière ambiante. Si "
"[code]1[/code], l'occlusion ambiante affecte les lumières autant qu'elle "
"affecte la lumière ambiante. Cela peut être utilisé pour influencer la force "
"de l'effet d'occlusion ambiante, mais n'est généralement pas réaliste."

msgid ""
"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
"[member ao_texture]."
msgstr ""
"Si [code]true[/code], utilise les coordonnées [code]UV2[/code] pour la "
"projection de [member ao_texture]."

msgid ""
"Texture that defines the amount of ambient occlusion for a given point on the "
"object."
msgstr ""
"Texture qui définit la quantité d'occlusion ambiante pour un point donné sur "
"l'objet."

msgid ""
"Specifies the channel of the [member ao_texture] in which the ambient "
"occlusion information is stored. This is useful when you store the "
"information for multiple effects in a single texture. For example if you "
"stored metallic in the red channel, roughness in the blue, and ambient "
"occlusion in the green you could reduce the number of textures you use."
msgstr ""
"Spécifie le canal de [member ao_texture] dans lequel les informations "
"d'occlusion ambiante sont stockées. Ceci est utile lorsque vous stockez "
"l'information pour plusieurs effets dans une seule texture. Par exemple, si "
"vous avez stocké le métal dans le canal rouge, la rugosité dans le bleu et "
"l'occlusion ambiante dans le vert, vous pourriez réduire le nombre de "
"textures que vous utilisez."

msgid ""
"The color used by the backlight effect. Represents the light passing through "
"an object."
msgstr ""
"La couleur utilisée par l'effet rétroéclairage. Représente la lumière passant "
"par un objet."

msgid ""
"If [code]true[/code], the backlight effect is enabled. See also [member "
"subsurf_scatter_transmittance_enabled]."
msgstr ""
"Si [code]true[/code], l'effet rétroéclairage est activé. Voir aussi [member "
"subsurf_scatter_transmittance_enabled]."

msgid ""
"Texture used to control the backlight effect per-pixel. Added to [member "
"backlight]."
msgstr ""
"Texture utilisée pour contrôler l'effet de rétroéclairage par pixel. "
"Additionné à [member backlight]."

msgid ""
"If [code]true[/code], the bent normal map is enabled. This allows for more "
"accurate indirect lighting and specular occlusion."
msgstr ""
"Si [code]true[/code], la bent normal map est activée. Cela permet un "
"éclairage indirect plus précis et de l'occlusion spéculaire."

msgid ""
"Texture that specifies the average direction of incoming ambient light at a "
"given pixel. The [member bent_normal_texture] only uses the red and green "
"channels; the blue and alpha channels are ignored. The normal read from "
"[member bent_normal_texture] is oriented around the surface normal provided "
"by the [Mesh].\n"
"[b]Note:[/b] A bent normal map is different from a regular normal map. When "
"baking a bent normal map make sure to use [b]a cosine distribution[/b] for "
"the bent normal map to work correctly.\n"
"[b]Note:[/b] The mesh must have both normals and tangents defined in its "
"vertex data. Otherwise, the shading produced by the bent normal map will not "
"look correct. If creating geometry with [SurfaceTool], you can use [method "
"SurfaceTool.generate_normals] and [method SurfaceTool.generate_tangents] to "
"automatically generate normals and tangents respectively.\n"
"[b]Note:[/b] Godot expects the bent normal map to use X+, Y+, and Z+ "
"coordinates. See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines."
msgstr ""
"Texture qui spécifie la direction moyenne de la lumière ambiante entrante à "
"un pixel donné. La texture [member bent_normal_texture] utilise seulement les "
"canaux rouges et verts, les canaux bleu et alpha sont ignorés. La normale lue "
"de [member bent_normal_texture] est orientée autour de la normale de surface "
"fournie par le [Mesh].\n"
"[b]Note :[/b] Une bent normal map est différente d'une normal map ordinaire. "
"Lors du pré-calcul d'une bent normal map, assurez-vous d'utiliser [b]une "
"distribution en cosinus[/b] pour que la bend normal map fonctionne "
"correctement.\n"
"[b]Note :[/b] Le maillage doit avoir à la fois des normales et des tangents "
"définis dans ses données de sommets. Sinon, l'ombrage produit par la bent "
"normal map ne sera pas correct. Si vous créez une géométrie avec "
"[SurfaceTool], vous pouvez utiliser [method SurfaceTool.generate_normals] et "
"[method SurfaceTool.generate_tangents] pour générer automatiquement des "
"normales et des tangents respectivement.\n"
"[b]Note :[/b] Godot s'attend à ce que la bent normal map utilise les "
"coordonnées X+, Y+ et Z+. Voir [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]cette page[/url] pour "
"une comparaison des coordonnées de normal map attendues par les moteurs "
"populaires."

msgid ""
"If [code]true[/code], the shader will keep the scale set for the mesh. "
"Otherwise, the scale is lost when billboarding. Only applies when [member "
"billboard_mode] is not [constant BILLBOARD_DISABLED]."
msgstr ""
"Si [code]true[/code], le shader conservera l'échelle du maillage. Sinon, "
"l'échelle est perdue lors du mode Billboard. S'applique seulement lorsque "
"[member billboard_mode] ne vaut pas [constant BILLBOARD_DISABLED]."

msgid ""
"Controls how the object faces the camera.\n"
"[b]Note:[/b] Billboard mode is not suitable for VR because the left-right "
"vector of the camera is not horizontal when the screen is attached to your "
"head instead of on the table. See [url=https://github.com/godotengine/godot/"
"issues/41567]GitHub issue #41567[/url] for details."
msgstr ""
"Contrôle comment l'objet fait face à la caméra.\n"
"[b]Note :[/b] Le mode Billboard (litt. panneau d'affichage) n'est pas "
"approprié pour la VR parce que le vecteur gauche-droite de la caméra n'est "
"pas horizontal lorsque l'écran est fixé à votre tête au lieu d'être sur la "
"table. Voir [url=https://github.com/godotengine/godot/issues/41567]l'issue "
"GitHub #41567[/url] pour plus de détails."

msgid ""
"The material's blend mode.\n"
"[b]Note:[/b] Values other than [code]Mix[/code] force the object into the "
"transparent pipeline."
msgstr ""
"Le mode de mélange du matériau.\n"
"[b]Note :[/b] Les valeurs autres que [code]Mix[/code] forcent l'objet dans le "
"pipeline de transparence."

msgid ""
"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
"the same as disabling the clearcoat effect."
msgstr ""
"Définit la force de l'effet de vernis transparent (clearcoat). Le définir à "
"[code]0[/code] donne le même rendu que la désactivation de l'effet de vernis "
"transparent."

msgid ""
"If [code]true[/code], clearcoat rendering is enabled. Adds a secondary "
"transparent pass to the lighting calculation resulting in an added specular "
"blob. This makes materials appear as if they have a clear layer on them that "
"can be either glossy or rough.\n"
"[b]Note:[/b] Clearcoat rendering is not visible if the material's [member "
"shading_mode] is [constant SHADING_MODE_UNSHADED]."
msgstr ""
"Si [code]true[/code], le rendu de vernis transparent (clearcoat) est activé. "
"Ajoute une passe transparent secondaire au calcul de l'éclairage résultant en "
"un blob spéculaire ajouté. Cela fait apparaître des matériaux comme s'ils "
"avaient une couche claire sur eux qui peuvent être brillante ou rugueuse.\n"
"[b]Note :[/b] Le rendu de vernis transparent n'est pas visible si le [member "
"shading_mode] du matériau vaut [constant SHADING_MODE_UNSHADED]."

msgid ""
"Sets the roughness of the clearcoat pass. A higher value results in a rougher "
"clearcoat while a lower value results in a smoother clearcoat."
msgstr ""
"Définit la rugosité de la passe de vernis transparent. Une valeur élevée "
"résulte en un vernis plus rugueux alors qu'une valeur plus faible résulte en "
"un vernis plus lisse."

msgid ""
"Texture that defines the strength of the clearcoat effect and the glossiness "
"of the clearcoat. Strength is specified in the red channel while glossiness "
"is specified in the green channel."
msgstr ""
"Texture qui définit la force de l'effet de vernis transparent et la brillance "
"du vernis. La force est spécifiée dans le canal rouge tandis que la brillance "
"est spécifiée dans le canal vert."

msgid ""
"Determines which side of the triangle to cull depending on whether the "
"triangle faces towards or away from the camera."
msgstr ""
"Détermine le côté du triangle à cull selon que le triangle fait face ou non à "
"la caméra."

msgid ""
"Determines when depth rendering takes place. See also [member transparency]."
msgstr ""
"Détermine quand le rendu de la profondeur a lieu. Voir aussi [member "
"transparency]."

msgid "May be affected by future rendering pipeline changes."
msgstr "Peut être affecté par des changements futurs de la pipeline."

msgid ""
"Determines which comparison operator is used when testing depth. See [enum "
"DepthTest].\n"
"[b]Note:[/b] Changing [member depth_test] to a non-default value only has a "
"visible effect when used on a transparent material, or a material that has "
"[member depth_draw_mode] set to [constant DEPTH_DRAW_DISABLED]."
msgstr ""
"Détermine quel opérateur de comparaison est utilisé lors des tests de "
"profondeur. Voir [enum DepthTest].\n"
"[b]Note :[/b] La modification de [member depth_test] à une valeur non par "
"défaut n'a qu'un effet visible que lorsqu'elle est utilisée sur un matériau "
"transparent, ou un matériau qui a [member depth_draw_mode] défini à [constant "
"DEPTH_DRAW_DISABLED]."

msgid ""
"Texture that specifies the color of the detail overlay. [member "
"detail_albedo]'s alpha channel is used as a mask, even when the material is "
"opaque. To use a dedicated texture as a mask, see [member detail_mask].\n"
"[b]Note:[/b] [member detail_albedo] is [i]not[/i] modulated by [member "
"albedo_color]."
msgstr ""
"Texture qui spécifie la couleur de la couche de détails. Le canal alpha de "
"[member detail_albedo] est utilisé comme masque, même lorsque le matériau est "
"opaque. Pour utiliser une texture dédiée comme masque, voir [member "
"detail_mask].\n"
"[b]Note :[/b] [member detail_albedo] n'est [i]pas[/i] modulé par [member "
"albedo_color]."

msgid ""
"Specifies how the [member detail_albedo] should blend with the current "
"[code]ALBEDO[/code]."
msgstr ""
"Spécifie comment [member detail_albedo] devrait se mélanger avec l'actuel "
"[code]ALBEDO[/code]."

msgid ""
"If [code]true[/code], enables the detail overlay. Detail is a second texture "
"that gets mixed over the surface of the object based on [member detail_mask] "
"and [member detail_albedo]'s alpha channel. This can be used to add variation "
"to objects, or to blend between two different albedo/normal textures."
msgstr ""
"Si [code]true[/code], active la couche de détails. Le détail est une seconde "
"texture qui se mélange avec la surface de l'objet en fonction de [member "
"detail_mask] et du canal alpha de [member detail_albedo]. Cela peut être "
"utilisé pour ajouter de la variation aux objets, ou pour mélanger entre deux "
"textures albédo/normales différentes."

msgid ""
"Texture used to specify how the detail textures get blended with the base "
"textures. [member detail_mask] can be used together with [member "
"detail_albedo]'s alpha channel (if any)."
msgstr ""
"Texture utilisée pour spécifier comment les textures de détail se mélangent "
"avec les textures de base. [member detail_mask] peut être utilisé avec le "
"canal alpha de [member detail_albedo] (s'il existe)."

msgid ""
"Texture that specifies the per-pixel normal of the detail overlay. The "
"[member detail_normal] texture only uses the red and green channels; the blue "
"and alpha channels are ignored. The normal read from [member detail_normal] "
"is oriented around the surface normal provided by the [Mesh].\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. "
"See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines."
msgstr ""
"Texture qui spécifie la normale par pixel de la couche de détails. La texture "
"[member detail_normal] utilise seulement les canaux rouges et verts, les "
"canaux bleu et alpha sont ignorés. La normale lue de [member detail_normal] "
"est orientée autour de la normale de surface fournie par le [Mesh].\n"
"[b]Note :[/b] Godot s'attend à ce que la normal map utilise des coordonnées "
"X+, Y+ et Z+. Voir [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]cette page[/url] pour "
"une comparaison des coordonnées de normal map attendues par les moteurs "
"populaires."

msgid ""
"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
"layer."
msgstr ""
"Spécifie s'il faut utiliser [code]UV[/code] ou [code]UV2[/code] pour la "
"couche de détail."

msgid "If [code]true[/code], the object receives no ambient light."
msgstr "Si [code]trye[/code], l'objet ne reçoit aucune lumière ambiante."

msgid ""
"If [code]true[/code], the object will not be affected by fog (neither "
"volumetric nor depth fog). This is useful for unshaded or transparent "
"materials (e.g. particles), which without this setting will be affected even "
"if fully transparent."
msgstr ""
"Si [code]true[/code], l'objet ne sera pas affecté par le brouillard (ni par "
"le brouillard volumétrique et ni par le brouillard de profondeur). Cela est "
"utile pour les matériaux non ombrés ou transparents (p. ex. les particules), "
"qui, sans ce paramètre, seront affectés même s'ils sont entièrement "
"transparents."

msgid ""
"If [code]true[/code], the object receives no shadow that would otherwise be "
"cast onto it."
msgstr ""
"Si [code]true[/code], l'objet ne va pas recevoir les ombres qui seraient "
"sinon projetées dessus."

msgid ""
"If [code]true[/code], disables specular occlusion even if [member "
"ProjectSettings.rendering/reflections/specular_occlusion/enabled] is "
"[code]false[/code]."
msgstr ""
"Si [code]true[/code], désactive l'occlusion spéculaire même si [member "
"ProjectSettings.rendering/reflections/specular_occlusion/enabled] vaut "
"[code]false[/code]."

msgid ""
"Distance at which the object appears fully opaque.\n"
"[b]Note:[/b] If [member distance_fade_max_distance] is less than [member "
"distance_fade_min_distance], the behavior will be reversed. The object will "
"start to fade away at [member distance_fade_max_distance] and will fully "
"disappear once it reaches [member distance_fade_min_distance]."
msgstr ""
"Distance à laquelle l'objet apparaît entièrement opaque.\n"
"[b]Note :[/b] Si [member distance_fade_max_distance] est inférieur à [member "
"distance_fade_min_distance], le comportement sera inversé. L'objet va "
"commencer à disparaître à [member distance_fade_max_distance] et disparaîtra "
"complètement une fois qu'il atteint [member distance_fade_min_distance]."

msgid ""
"Distance at which the object starts to become visible. If the object is less "
"than this distance away, it will be invisible.\n"
"[b]Note:[/b] If [member distance_fade_min_distance] is greater than [member "
"distance_fade_max_distance], the behavior will be reversed. The object will "
"start to fade away at [member distance_fade_max_distance] and will fully "
"disappear once it reaches [member distance_fade_min_distance]."
msgstr ""
"Distance à laquelle l'objet commence à être visible. Si l'objet plus proche "
"que cette distance, il sera invisible.\n"
"[b]Note :[/b] Si [member distance_fade_min_distance] est supérieur à [member "
"distance_fade_max_distance], le comportement sera inversé. L'objet va "
"commencer à disparaître à [member distance_fade_max_distance] et disparaîtra "
"complètement une fois qu'il atteint [member distance_fade_min_distance]."

msgid ""
"Specifies which type of fade to use. Can be any of the [enum "
"DistanceFadeMode]s."
msgstr ""
"Spécifie quelle type de fondu utiliser. Peut être de n'importe quelle [enum "
"DistanceFadeMode]."

msgid "The emitted light's color. See [member emission_enabled]."
msgstr "La couleur de la lumière émise. Voir [member emission_enabled]."

msgid ""
"If [code]true[/code], the body emits light. Emitting light makes the object "
"appear brighter. The object can also cast light on other objects if a "
"[VoxelGI], SDFGI, or [LightmapGI] is used and this object is used in baked "
"lighting."
msgstr ""
"Si [code]true[/code], le corps émet de la lumière. Émettre de la lumière rend "
"l'objet plus lumineux. L'objet peut également projeter de la lumière sur "
"d'autres objets si un [VoxelGI], SDFGI ou [LightmapGI] est utilisé et cet "
"objet est utilisé dans le pré-calcul des lumières."

msgid "Multiplier for emitted light. See [member emission_enabled]."
msgstr "Multiplicateur la pour lumière émise. Voir [member emission_enabled]."

msgid ""
"Luminance of emitted light, measured in nits (candela per square meter). Only "
"available when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled. The default is roughly equivalent to an "
"indoor lightbulb."
msgstr ""
"Luminance de la lumière émise, mesurée en nits (candela par mètre carré). "
"Seulement disponible lorsque [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] est activé. La valeur par défaut "
"est à peu près équivalente à un une ampoule d'intérieur."

msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
msgstr ""
"Utiliser [code]UV2[/code] pour lire depuis la [member emission_texture]."

msgid ""
"Sets how [member emission] interacts with [member emission_texture]. Can "
"either add or multiply."
msgstr ""
"Définit comment [member emission] interagit avec [member emission_texture]. "
"Peut soit être ajouté soit être multiplié."

msgid "Texture that specifies how much surface emits light at a given point."
msgstr ""
"La texture qui spécifie quelle quantité de lumière sera émise par la surface "
"à un point donné."

msgid ""
"If [code]true[/code], the object is rendered at the same size regardless of "
"distance. The object's size on screen is the same as if the camera was "
"[code]1.0[/code] units away from the object's origin, regardless of the "
"actual distance from the camera. The [Camera3D]'s field of view (or [member "
"Camera3D.size] when in orthogonal/frustum mode) still affects the size the "
"object is drawn at."
msgstr ""
"Si [code]true[/code], l'objet est rendu à la même taille indépendamment de la "
"distance. La taille de l'objet à l'écran est la même que si la caméra était "
"éloignée de [code]1.0[/code] unités de l'origine de l'objet, peu importe la "
"distance réelle de la caméra. Le champ de vision de [Camera3D] (ou [member "
"Camera3D.size] en mode orthogonal/frustum) affecte toujours la taille à "
"laquelle l'objet est dessiné."

msgid ""
"Overrides the [Camera3D]'s field of view angle (in degrees).\n"
"[b]Note:[/b] This behaves as if the field of view is set on a [Camera3D] with "
"[member Camera3D.keep_aspect] set to [constant Camera3D.KEEP_HEIGHT]. "
"Additionally, it may not look correct on a non-perspective camera where the "
"field of view setting is ignored."
msgstr ""
"Redéfinit l'angle du champ de vision de la [Camera3D] (en degrés).\n"
"[b]Note :[/b] Cela se comporte comme si le champ de vision est défini sur une "
"[Camera3D] avec [member Camera3D.keep_aspect] défini à [constant "
"Camera3D.KEEP_HEIGHT]. De plus, il peut ne pas avoir l'air correcte sur une "
"caméra non-perspective où le paramètre du champ de vision est ignoré."

msgid ""
"Grows object vertices in the direction of their normals. Only effective if "
"[member grow] is [code]true[/code]."
msgstr ""
"Agrandit les sommets des objets dans la direction de leurs normales. Effectif "
"seulement si [member grow] vaut [code]true[/code]."

msgid ""
"If [code]true[/code], flips the mesh's binormal vectors when interpreting the "
"height map. If the heightmap effect looks strange when the camera moves (even "
"with a reasonable [member heightmap_scale]), try setting this to [code]true[/"
"code]."
msgstr ""
"Si [code]true[/code], renvoie les vecteurs binormaux du maillage lors de "
"l'interprétation de la heightmap. Si l'effet de la heightmap semble étrange "
"lorsque la caméra se déplace (même avec une [member heightmap_scale] "
"raisonnable), essayez de définir ceci à [code]true[/code]."

msgid ""
"If [code]true[/code], flips the mesh's tangent vectors when interpreting the "
"height map. If the heightmap effect looks strange when the camera moves (even "
"with a reasonable [member heightmap_scale]), try setting this to [code]true[/"
"code]."
msgstr ""
"Si [code]true[/code], renvoie les vecteurs tangents du maillage lors de "
"l'interprétation de la heightmap. Si l'effet de la heightmap semble étrange "
"lorsque la caméra se déplace (même avec une [member heightmap_scale] "
"raisonnable), essayez de définir ceci à [code]true[/code]."

msgid ""
"If [code]true[/code], interprets the height map texture as a depth map, with "
"brighter values appearing to be \"lower\" in altitude compared to darker "
"values.\n"
"This can be enabled for compatibility with some materials authored for Godot "
"3.x. This is not necessary if the Invert import option was used to invert the "
"depth map in Godot 3.x, in which case [member heightmap_flip_texture] should "
"remain [code]false[/code]."
msgstr ""
"Si [code]true[/code], interprète la texture de heightmap comme une depth map, "
"avec les valeurs plus lumineuses qui semblent être « plus basses » en "
"altitude par rapport aux valeurs plus foncées.\n"
"Ceci peut être activé pour la compatibilité avec certains matériaux faits "
"pour Godot 3.x. Cela n'est pas nécessaire si l'option d'import Inverser a été "
"utilisée pour inverser la depth map dans Godot 3.x, auquel cas [member "
"heightmap_flip_texture] devrait rester à [code]false[/code]."

msgid ""
"The heightmap scale to use for the parallax effect (see [member "
"heightmap_enabled]). The default value is tuned so that the highest point "
"(value = 255) appears to be 5 cm higher than the lowest point (value = 0). "
"Higher values result in a deeper appearance, but may result in artifacts "
"appearing when looking at the material from oblique angles, especially when "
"the camera moves. Negative values can be used to invert the parallax effect, "
"but this is different from inverting the texture using [member "
"heightmap_flip_texture] as the material will also appear to be \"closer\" to "
"the camera. In most cases, [member heightmap_scale] should be kept to a "
"positive value.\n"
"[b]Note:[/b] If the height map effect looks strange regardless of this value, "
"try adjusting [member heightmap_flip_binormal] and [member "
"heightmap_flip_tangent]. See also [member heightmap_texture] for "
"recommendations on authoring heightmap textures, as the way the heightmap "
"texture is authored affects how [member heightmap_scale] behaves."
msgstr ""
"L'échelle de la heightmap à utiliser pour l'effet parallaxe (voir [member "
"heightmap_enabled]). La valeur par défaut est réglée de sorte que le point le "
"plus élevé (valeur = 255) semble être 5 cm plus haut que le point le plus bas "
"(valeur = 0). Les valeurs plus élevées résultent en une apparence plus "
"profonde, mais peuvent entraîner des artéfacts apparaissant lors de "
"l'observation du matériau à partir d'angles obliques, surtout lorsque la "
"caméra se déplace. Les valeurs négatives peuvent être utilisées pour inverser "
"l'effet parallaxe, mais cela est différent de l'inversion de la texture en "
"utilisant [member heightmap_flip_texture] puisque le matériau apparaîtra "
"également comme \"plus proche\" de la caméra. Dans la plupart des cas, "
"[member heightmap_scale] devrait être maintenu à une valeur positive.\n"
"[b]Note :[/b] Si l'effet de la heightmap semble étrange indépendamment de "
"cette valeur, essayez de régler [member heightmap_flip_binormal] et [member "
"heightmap_flip_tangent]. Voir aussi [member heightmap_texture] pour les "
"recommandations sur l'écriture de textures de heightmap, car la façon dont la "
"texture de heightmap est faite affecte comment [member heightmap_scale] se "
"comporte."

msgid ""
"The texture to use as a height map. See also [member heightmap_enabled].\n"
"For best results, the texture should be normalized (with [member "
"heightmap_scale] reduced to compensate). In [url=https://gimp.org]GIMP[/url], "
"this can be done using [b]Colors > Auto > Equalize[/b]. If the texture only "
"uses a small part of its available range, the parallax effect may look "
"strange, especially when the camera moves.\n"
"[b]Note:[/b] To reduce memory usage and improve loading times, you may be "
"able to use a lower-resolution heightmap texture as most heightmaps are only "
"comprised of low-frequency data."
msgstr ""
"La texture à utiliser comme heightmap. Voir aussi [member "
"heightmap_enabled].\n"
"Pour les meilleurs résultats, la texture doit être normalisée (avec [member "
"heightmap_scale] réduit pour compenser). Dans [url=https://gimp.org]GIMP[/"
"url], cela peut être fait à l'aide de [b]Couleurs > Auto > Égaliser[/b]. Si "
"la texture n'utilise qu'une petite partie de sa gamme disponible, l'effet "
"parallaxe peut paraître étrange, surtout lorsque la caméra se déplace.\n"
"[b]Note :[/b] Pour réduire l'utilisation de la mémoire et améliorer les temps "
"de chargement, vous pouvez utiliser une texture de heightmap à basse "
"résolution, car la plupart des heightmaps ne contiennent que des données à "
"faible fréquence."

msgid ""
"A high value makes the material appear more like a metal. Non-metals use "
"their albedo as the diffuse color and add diffuse to the specular reflection. "
"With non-metals, the reflection appears on top of the albedo color. Metals "
"use their albedo as a multiplier to the specular reflection and set the "
"diffuse color to black resulting in a tinted reflection. Materials work "
"better when fully metal or fully non-metal, values between [code]0[/code] and "
"[code]1[/code] should only be used for blending between metal and non-metal "
"sections. To alter the amount of reflection use [member roughness]."
msgstr ""
"Une valeur élevée fait apparaître le matériau plus comme un métal. Les non-"
"métaux utilisent leur albédo comme couleur diffuse et ajoutent la couleur "
"diffuse à la réflexion spéculaire. Avec des non-métaux, la réflexion apparaît "
"sur la couleur albédo. Les métaux utilisent leur albédo comme multiplicateur "
"à la réflexion spéculaire et définissent la couleur diffuse en noir, "
"résultant en une réflexion teintée. Les matériaux fonctionnent mieux "
"lorsqu'ils sont entièrement métalliques ou non métalliques, les valeurs entre "
"[code]0[/code] et [code]1[/code] ne devraient être utilisées que pour du "
"fondu entre les parties métalliques et non métalliques. Pour modifier la "
"quantité de réflexion, utilisez [member roughness]."

msgid ""
"Texture used to specify metallic for an object. This is multiplied by [member "
"metallic]."
msgstr ""
"Texture utilisée pour spécifier le métal pour un objet. Ceci est multiplié "
"par [member metallic]."

msgid ""
"Specifies the channel of the [member metallic_texture] in which the metallic "
"information is stored. This is useful when you store the information for "
"multiple effects in a single texture. For example if you stored metallic in "
"the red channel, roughness in the blue, and ambient occlusion in the green "
"you could reduce the number of textures you use."
msgstr ""
"Spécifie le canal de [member metallic_texture] dans lequel les informations "
"métalliques sont stockées. Ceci est utile lorsque vous stockez l'information "
"pour plusieurs effets dans une seule texture. Par exemple, si vous stockeriez "
"le métallique dans le canal rouge, la rugosité dans le bleu et l'occlusion "
"ambiante dans le vert, vous pourriez réduire le nombre de textures que vous "
"utilisez."

msgid "The width of the shape outline."
msgstr "La largeur du contour de la forme."

msgid ""
"The width of the range around the shape between the minimum and maximum "
"representable signed distance."
msgstr ""
"La largeur de la plage autour de la forme entre la distance signée "
"représentable minimale et maximale."

msgid ""
"If [code]true[/code], depth testing is disabled and the object will be drawn "
"in render order."
msgstr ""
"Si [code]true[/code], les tests de profondeur sont désactivés et l'objet sera "
"dessiné suivant son ordre de rendu et non suivant sa distance."

msgid ""
"If [code]true[/code], normal mapping is enabled. This has a slight "
"performance cost, especially on mobile GPUs."
msgstr ""
"Si [code]true[/code], la cartographie normale est activée. Cela a un léger "
"coût de performance, en particulier sur les GPU mobiles."

msgid "The strength of the normal map's effect."
msgstr "L'intensité de l'effet de la carte normale."

msgid ""
"Texture used to specify the normal at a given pixel. The [member "
"normal_texture] only uses the red and green channels; the blue and alpha "
"channels are ignored. The normal read from [member normal_texture] is "
"oriented around the surface normal provided by the [Mesh].\n"
"[b]Note:[/b] The mesh must have both normals and tangents defined in its "
"vertex data. Otherwise, the normal map won't render correctly and will only "
"appear to darken the whole surface. If creating geometry with [SurfaceTool], "
"you can use [method SurfaceTool.generate_normals] and [method "
"SurfaceTool.generate_tangents] to automatically generate normals and tangents "
"respectively.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. "
"See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines.\n"
"[b]Note:[/b] If [member detail_enabled] is [code]true[/code], the [member "
"detail_albedo] texture is drawn [i]below[/i] the [member normal_texture]. To "
"display a normal map [i]above[/i] the [member detail_albedo] texture, use "
"[member detail_normal] instead."
msgstr ""
"Texture utilisée pour spécifier la normale en un pixel donné. La [member "
"normal_texture] utilise seulement les canaux rouges et verts, les canaux bleu "
"et alpha sont ignorés. La lecture des normales de [member normal_texture] est "
"orientée autour de la normale de la surface fournie par le [Mesh].\n"
"[b]Note :[/b] Le maillage doit avoir à la fois des normales et des tangentes "
"définis dans ses données de sommets. Sinon, la normal map ne rendra pas "
"correctement et ne semblera qu'obscurcir toute la surface. Si vous créez une "
"géométrie avec [SurfaceTool], vous pouvez utiliser [method "
"SurfaceTool.generate_normals] et [method SurfaceTool.generate_tangents] pour "
"générer automatiquement des normales et des tangentes respectivement.\n"
"[b]Note :[/b] Godot s'attend à ce que la normal map utilise des coordonnées "
"X+, Y+ et Z+. Voir [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]cette page[/url] pour "
"une comparaison des coordonnées de normal map attendues par les moteurs "
"populaires.\n"
"[b]Note :[/b] Si [member detail_enabled] vaut [code]true[/code], la texture "
"[member detail_albedo] est dessinée [i]au-dessous[/i] de la [member "
"normal_texture]. Pour afficher une carte normale [i]au-dessus[/i]de la "
"texture [member detail_albedo], utilisez [member detail_normal] à la place."

msgid ""
"The number of horizontal frames in the particle sprite sheet. Only enabled "
"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
"Le nombre de trames horizontales dans la feuille de sprite de particules. "
"Seulement activé lors de l'utilisation [constant BILLBOARD_PARTICLES]. Voir "
"[member billboard_mode]."

msgid ""
"If [code]true[/code], particle animations are looped. Only enabled when using "
"[constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
"Si [code]true[/code], les animations de particules bouclent. Seulement activé "
"lors de l'utilisation de [constant BILLBOARD_PARTICLES]. Voir [member "
"billboard_mode]."

msgid ""
"The number of vertical frames in the particle sprite sheet. Only enabled when "
"using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
"Le nombre de trames verticales dans la feuille de sprite de particules. "
"Seulement activé lors de l'utilisation de [constant BILLBOARD_PARTICLES]. "
"Voir [member billboard_mode]."

msgid "The point size in pixels. See [member use_point_size]."
msgstr "La taille de point en pixels. Voir [member use_point_size]."

msgid ""
"Distance over which the fade effect takes place. The larger the distance the "
"longer it takes for an object to fade."
msgstr ""
"Distance sur laquelle l'effet de disparition se produit. Plus la distance est "
"grande, plus l'objet disparait progressivement."

msgid ""
"If [code]true[/code], the proximity fade effect is enabled. The proximity "
"fade effect fades out each pixel based on its distance to another object."
msgstr ""
"Si [code]true[/code], l'effet de fondu de proximité est activé. Le fondu de "
"proximité affecte chaque pixel basé sur sa distance par rapport à un autre "
"objet."

msgid ""
"If [code]true[/code], the refraction effect is enabled. Distorts transparency "
"based on light from behind the object.\n"
"[b]Note:[/b] Refraction is implemented using the screen texture. Only opaque "
"materials will appear in the refraction, since transparent materials do not "
"appear in the screen texture."
msgstr ""
"Si [code]true[/code], l'effet de réfraction est activé. Distord la "
"transparence selon la lumière de derrière l'objet.\n"
"[b]Note :[/b] La réfraction est implémentée en utilisant la texture de "
"l'écran. Seuls les matériaux opaques apparaîtront dans la réfraction, puisque "
"les matériaux transparents ne figurent pas dans la texture de l'écran."

msgid "The strength of the refraction effect."
msgstr "L'intensité de l'effet de réfraction."

msgid ""
"Texture that controls the strength of the refraction per-pixel. Multiplied by "
"[member refraction_scale]."
msgstr ""
"La texture qui contrôle l'intensité de la réfraction par pixel. Elle est "
"multipliée par [member refraction_scale]."

msgid ""
"Specifies the channel of the [member refraction_texture] in which the "
"refraction information is stored. This is useful when you store the "
"information for multiple effects in a single texture. For example if you "
"stored refraction in the red channel, roughness in the blue, and ambient "
"occlusion in the green you could reduce the number of textures you use."
msgstr ""
"Spécifie le canal de [member refraction_texture] dans lequel les informations "
"de réfraction sont stockées. Ceci est utile lorsque vous stockez "
"l'information pour plusieurs effets dans une seule texture. Par exemple si "
"vous avez stocké la réfraction dans le canal rouge, la rugosité dans le bleu "
"et l'occlusion ambiante dans le vert, vous pourriez réduire le nombre de "
"textures que vous utilisez."

msgid "Sets the strength of the rim lighting effect."
msgstr "Définit la force de l'effet d'éclairage du contour (rim lightning)."

msgid ""
"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
"brightness at glancing angles on an object.\n"
"[b]Note:[/b] Rim lighting is not visible if the material's [member "
"shading_mode] is [constant SHADING_MODE_UNSHADED]."
msgstr ""
"Si [code]true[/code], l'effet de contour est activé. L'éclairage du contour "
"(rim lightning) augmente la luminosité aux angles rasants sur un objet.\n"
"[b]Note :[/b] L'éclairage du contour n'est pas visible si le [member "
"shading_mode] du matériau vaut [constant SHADING_MODE_UNSHADED]."

msgid ""
"Texture used to set the strength of the rim lighting effect per-pixel. "
"Multiplied by [member rim]."
msgstr ""
"Texture utilisée pour définir la force de l'effet d'éclairage du contour (rim "
"lightning) par pixel. Multipliée par [member rim]."

msgid ""
"The amount of to blend light and albedo color when rendering rim effect. If "
"[code]0[/code] the light color is used, while [code]1[/code] means albedo "
"color is used. An intermediate value generally works best."
msgstr ""
"La quantité pour mélanger la lumière et la couleur albédo lors du rendu de "
"l'effet de contour. Si [code]0[/code], la couleur de la lumière est utilisée, "
"alors que [code]1[/code] signifie que la couleur de l'albédo est utilisée. "
"Une valeur intermédiaire fonctionne généralement le mieux."

msgid ""
"Surface reflection. A value of [code]0[/code] represents a perfect mirror "
"while a value of [code]1[/code] completely blurs the reflection. See also "
"[member metallic]."
msgstr ""
"La réflexion de surface. Une valeur de [code]0[/code] représente un miroir "
"parfait alors qu'une valeur de [code]1[/code] rend le reflet complètement "
"flou. Voir aussi [member metallic]."

msgid ""
"Texture used to control the roughness per-pixel. Multiplied by [member "
"roughness]."
msgstr ""
"La texture utilisée pour contrôler la rugosité par pixel. Multipliée par "
"[member roughness]."

msgid ""
"Specifies the channel of the [member roughness_texture] in which the "
"roughness information is stored. This is useful when you store the "
"information for multiple effects in a single texture. For example if you "
"stored metallic in the red channel, roughness in the blue, and ambient "
"occlusion in the green you could reduce the number of textures you use."
msgstr ""
"Spécifie le canal de [member roughness_texture] dans lequel les informations "
"de rugosité sont stockées. Ceci est utile lorsque vous stockez l'information "
"pour plusieurs effets dans une seule texture. Par exemple, si vous stockeriez "
"le métallique dans le canal rouge, la rugosité dans le bleu et l'occlusion "
"ambiante dans le vert, vous pourriez réduire le nombre de textures que vous "
"utilisez."

msgid ""
"Sets whether the shading takes place, per-pixel, per-vertex or unshaded. Per-"
"vertex lighting is faster, making it the best choice for mobile applications, "
"however it looks considerably worse than per-pixel. Unshaded rendering is the "
"fastest, but disables all interactions with lights."
msgstr ""
"Définit si l'ombrage a lieu, par pixel, par sommet ou pas du tout. "
"L'éclairage par sommet est plus rapide, ce qui en fait le meilleur choix pour "
"les applications mobiles, mais il a un aspect considérablement moins bien que "
"l'ombrage par pixel. Le rendu sans ombrage est le plus rapide, mais désactive "
"toutes les interactions avec les lumières."

msgid ""
"The method for rendering the specular blob.\n"
"[b]Note:[/b] [member specular_mode] only applies to the specular blob. It "
"does not affect specular reflections from the sky, screen-space reflections, "
"[VoxelGI], SDFGI or [ReflectionProbe]s. To disable reflections from these "
"sources as well, set [member metallic_specular] to [code]0.0[/code] instead."
msgstr ""
"La méthode pour rendre le blob spéculaire.\n"
"[b]Note :[/b] [member specular_mode] s'applique seulement au blob spéculaire. "
"Il n'affecte pas les réflexions spéculaires du ciel, les reflets de l'espace-"
"écran, [VoxelGI], SDFGI ou les [ReflectionProbe]s. Pour désactiver les "
"réflexions de ces sources, définissez [member metallic_specular] à [code]0.0[/"
"code] à la place."

msgid "The outline thickness for [constant STENCIL_MODE_OUTLINE]."
msgstr "L'épaisseur du contour pour [constant STENCIL_MODE_OUTLINE]."

msgid ""
"If [code]true[/code], subsurface scattering is enabled. Emulates light that "
"penetrates an object's surface, is scattered, and then emerges. Subsurface "
"scattering quality is controlled by [member ProjectSettings.rendering/"
"environment/subsurface_scattering/subsurface_scattering_quality]."
msgstr ""
"Si [code]true[/code], la transluminescence est activée. Émule la lumière qui "
"pénètre la surface d'un objet, est dispersée, puis émerge. La qualité de la "
"transluminescence est contrôlée par [member ProjectSettings.rendering/"
"environment/subsurface_scattering/subsurface_scattering_quality]."

msgid ""
"If [code]true[/code], subsurface scattering will use a special mode optimized "
"for the color and density of human skin, such as boosting the intensity of "
"the red channel in subsurface scattering."
msgstr ""
"Si [code]true[/code], la transluminescence utilisera un mode spécial optimisé "
"pour la couleur et la densité de la peau humaine, comme stimuler l'intensité "
"du canal rouge dans la transluminescence."

msgid ""
"The strength of the subsurface scattering effect. The depth of the effect is "
"also controlled by [member ProjectSettings.rendering/environment/"
"subsurface_scattering/subsurface_scattering_scale], which is set globally."
msgstr ""
"La force de l'effet de transluminescence. La profondeur de l'effet est "
"également contrôlée par [member ProjectSettings.rendering/environment/"
"subsurface_scattering/subsurface_scattering_scale], qui est défini "
"globalement."

msgid ""
"Texture used to control the subsurface scattering strength. Stored in the red "
"texture channel. Multiplied by [member subsurf_scatter_strength]."
msgstr ""
"Texture utilisée pour contrôler la force transluminescence. Stocké dans le "
"canal de texture rouge. Multiplié par [member subsurf_scatter_strength]."

msgid "The intensity of the subsurface scattering transmittance effect."
msgstr "L'intensité de l'effet de transmittance de la transluminescence."

msgid ""
"The color to multiply the subsurface scattering transmittance effect with. "
"Ignored if [member subsurf_scatter_skin_mode] is [code]true[/code]."
msgstr ""
"La couleur avec laquelle multiplier l'effet de transmittance de la "
"transluminescence. Ignorée si [member subsurf_scatter_skin_mode] vaut "
"[code]true[/code]."

msgid "The depth of the subsurface scattering transmittance effect."
msgstr "La profondeur de l'effet de transmission de la transluminescence."

msgid ""
"If [code]true[/code], enables subsurface scattering transmittance. Only "
"effective if [member subsurf_scatter_enabled] is [code]true[/code]. See also "
"[member backlight_enabled]."
msgstr ""
"Si [code]true[/code], active la transmittance de la transluminescence. "
"Seulement effectif si [member subsurf_scatter_enabled] vaut [code]true[/"
"code]. Voir aussi [member backlight_enabled]."

msgid ""
"Filter flags for the texture.\n"
"[b]Note:[/b] [member heightmap_texture] is always sampled with linear "
"filtering, even if nearest-neighbor filtering is selected here. This is to "
"ensure the heightmap effect looks as intended. If you need sharper height "
"transitions between pixels, resize the heightmap texture in an image editor "
"with nearest-neighbor filtering."
msgstr ""
"Drapeaux de filtre pour la texture.\n"
"[b]Note :[/b] [member heightmap_texture] est toujours échantillonnée avec un "
"filtrage linéaire, même si le filtrage par plus proche voisin est sélectionné "
"ici. Cela est fait pour assurer que l'effet de heightmap apparaît comme "
"prévu. Si vous avez besoin de transitions de hauteur plus nettes entre les "
"pixels, redimensionnez la texture de la heightmap dans un éditeur d'image "
"avec un filtrage par plus proche voisin."

msgid ""
"If [code]true[/code], the texture repeats when exceeding the texture's size. "
"See [constant FLAG_USE_TEXTURE_REPEAT]."
msgstr ""
"Si [code]true[/code], la texture se répète lors du dépassement de la taille "
"de la texture. Voir [constant FLAG_USE_TEXTURE_REPEAT]."

msgid ""
"The material's transparency mode. Some transparency modes will disable shadow "
"casting. Any transparency mode other than [constant TRANSPARENCY_DISABLED] "
"has a greater performance impact compared to opaque rendering. See also "
"[member blend_mode]."
msgstr ""
"Le mode de transparence du matériau. Certains modes de transparence "
"désactiveront la projection d'ombres. Tout mode de transparence autre que "
"[constant TRANSPARENCY_DISABLED] a un plus grand impact sur la performance "
"comparé au rendu opaque. Voir aussi [member blend_mode]."

msgid ""
"If [code]true[/code] use [member fov_override] to override the [Camera3D]'s "
"field of view angle."
msgstr ""
"Si [code]true[/code], utilise [member fov_override] pour redéfinir l'angle du "
"champ de vision de la [Camera3D]."

msgid ""
"If [code]true[/code], enables parts of the shader required for "
"[GPUParticles3D] trails to function. This also requires using a mesh with "
"appropriate skinning, such as [RibbonTrailMesh] or [TubeTrailMesh]. Enabling "
"this feature outside of materials used in [GPUParticles3D] meshes will break "
"material rendering."
msgstr ""
"Si [code]true[/code], active les parties du shader nécessaires pour que les "
"traînées de [GPUParticles3D] fonctionnent. Cela nécessite également "
"l'utilisation d'un maillage avec un skinning approprié, comme "
"[RibbonTrailMesh] ou [TubeTrailMesh]. L'activation de cette fonctionnalité en "
"dehors des matériaux utilisés dans des maillages de [GPUParticles3D] cassera "
"le rendu du matériau."

msgid ""
"If [code]true[/code], render point size can be changed.\n"
"[b]Note:[/b] This is only effective for objects whose geometry is point-based "
"rather than triangle-based. See also [member point_size]."
msgstr ""
"Si [code]true[/code], la taille du point de rendu peut être modifiée.\n"
"[b]Note :[/b] Ce n'est effectif que pour les objets dont la géométrie est "
"basée sur des points plutôt que sur des triangles. Voir aussi [member "
"point_size]."

msgid ""
"How much to offset the [code]UV[/code] coordinates. This amount will be added "
"to [code]UV[/code] in the vertex function. This can be used to offset a "
"texture. The Z component is used when [member uv1_triplanar] is enabled, but "
"it is not used anywhere else."
msgstr ""
"De combien décaler les coordonnées [code]UV[/code]. Cette quantité sera "
"ajoutée à [code]UV[/code] dans la fonction vertex. Cela peut être utilisé "
"pour décaler une texture. La composante Z est utilisée lorsque [member "
"uv1_triplanar] est activé, mais n'est utilisée nulle part ailleurs."

msgid ""
"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
"[code]UV[/code] in the vertex function. The Z component is used when [member "
"uv1_triplanar] is enabled, but it is not used anywhere else."
msgstr ""
"De combien redimensionner les coordonnées [code]UV[/code]. Ceci est multiplié "
"par [code]UV[/code] dans la fonction vertex. La composante Z est utilisée "
"lorsque [member uv1_triplanar] est activé, mais n'est utilisée nulle part "
"ailleurs."

msgid ""
"A lower number blends the texture more softly while a higher number blends "
"the texture more sharply.\n"
"[b]Note:[/b] [member uv1_triplanar_sharpness] is clamped between [code]0.0[/"
"code] and [code]150.0[/code] (inclusive) as values outside that range can "
"look broken depending on the mesh."
msgstr ""
"Un nombre plus faible mélange la texture de manière plus douce alors qu'un "
"nombre plus élevé mélange la texture de manière plus nette.\n"
"[b]Note :[/b] [member uv1_triplanar_sharpness] est borné entre [code]0.0[/"
"code] et [code]150.0[/code] (inclusifs) car les valeurs hors de cette plage "
"peuvent avoir l'air cassées selon le maillage."

msgid ""
"If [code]true[/code], triplanar mapping for [code]UV[/code] is calculated in "
"world space rather than object local space. See also [member uv1_triplanar]."
msgstr ""
"Si [code]true[/code], le mapping triplanaire pour [code]UV[/code] est calculé "
"dans l'espace global plutôt que dans l'espace local de l'objet. Voir aussi "
"[member uv1_triplanar]."

msgid ""
"How much to offset the [code]UV2[/code] coordinates. This amount will be "
"added to [code]UV2[/code] in the vertex function. This can be used to offset "
"a texture. The Z component is used when [member uv2_triplanar] is enabled, "
"but it is not used anywhere else."
msgstr ""
"De combien décaler les coordonnées [code]UV2[/code]. Cette quantité sera "
"ajoutée à [code]UV2[/code] dans la fonction vertex. Cela peut être utilisé "
"pour décaler une texture. La composante Z est utilisée lorsque [member "
"uv2_triplanar] est activé, mais n'est utilisée nulle part ailleurs."

msgid ""
"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
"[code]UV2[/code] in the vertex function. The Z component is used when [member "
"uv2_triplanar] is enabled, but it is not used anywhere else."
msgstr ""
"De combien redimensionner les coordonnées [code]UV2[/code]. Ceci est "
"multiplié par [code]UV2[/code] dans la fonction vertex. La composante Z est "
"utilisée lorsque [member uv2_triplanar] est activé, mais n'est utilisée nulle "
"part ailleurs."

msgid ""
"If [code]true[/code], instead of using [code]UV2[/code] textures will use a "
"triplanar texture lookup to determine how to apply textures. Triplanar uses "
"the orientation of the object's surface to blend between texture coordinates. "
"It reads from the source texture 3 times, once for each axis and then blends "
"between the results based on how closely the pixel aligns with each axis. "
"This is often used for natural features to get a realistic blend of "
"materials. Because triplanar texturing requires many more texture reads per-"
"pixel it is much slower than normal UV texturing. Additionally, because it is "
"blending the texture between the three axes, it is unsuitable when you are "
"trying to achieve crisp texturing."
msgstr ""
"Si [code]true[/code], au lieu d’utiliser [code]UV2[/code] les textures "
"utiliseront une recherche de texture triplanaire pour déterminer comment "
"appliquer des textures. Le triplanaire utilise l’orientation de la surface de "
"l’objet pour mélanger les coordonnées de texture. Il lit à partir de la "
"texture source 3 fois, une fois pour chaque axe, puis mélange les résultats "
"en fonction de la façon dont le pixel s’aligne étroitement avec chaque axe. "
"Ceci est souvent utilisé pour les caractéristiques naturelles pour obtenir un "
"mélange réaliste de matériaux. Parce que la texturation triplanaire nécessite "
"beaucoup plus de lectures de texture par pixel, il est beaucoup plus lent que "
"la texturation UV normale. En outre, parce qu’il est le mélange de la texture "
"entre les trois axes, il est inapproprié lorsque vous essayez d’atteindre "
"texture croustillante."

msgid ""
"A lower number blends the texture more softly while a higher number blends "
"the texture more sharply.\n"
"[b]Note:[/b] [member uv2_triplanar_sharpness] is clamped between [code]0.0[/"
"code] and [code]150.0[/code] (inclusive) as values outside that range can "
"look broken depending on the mesh."
msgstr ""
"Un nombre plus faible mélange la texture de manière plus douce alors qu'un "
"nombre plus élevé mélange la texture de manière plus nette.\n"
"[b]Note :[/b] [member uv2_triplanar_sharpness] est borné entre [code]0.0[/"
"code] et [code]150.0[/code] (inclusifs) car les valeurs hors de cette plage "
"peuvent avoir l'air cassées selon le maillage."

msgid ""
"If [code]true[/code], triplanar mapping for [code]UV2[/code] is calculated in "
"world space rather than object local space. See also [member uv2_triplanar]."
msgstr ""
"Si [code]true[/code], le mapping triplanaire pour [code]UV2[/code] est "
"calculé dans l'espace global plutôt que dans l'espace local de l'objet. Voir "
"aussi [member uv2_triplanar]."

msgid ""
"If [code]true[/code], vertex colors are considered to be stored in sRGB color "
"space and are converted to linear color space during rendering. If "
"[code]false[/code], vertex colors are considered to be stored in linear color "
"space and are rendered as-is. See also [member albedo_texture_force_srgb].\n"
"[b]Note:[/b] Only effective when using the Forward+ and Mobile rendering "
"methods, not Compatibility."
msgstr ""
"Si [code]true[/code], les couleurs des sommets sont considérées comme "
"stockées dans l'espace de couleur sRGB et sont converties en espace de "
"couleur linéaire pendant le rendu. Si [code]false[/code], les couleurs des "
"sommets sont considérées comme stockées dans l'espace de couleur linéaire et "
"sont rendues telles quelles. Voir aussi [member albedo_texture_force_srgb].\n"
"[b]Note :[/b] Seulement effectif lors de l'utilisation des moteurs de rendu "
"Forward+ et Mobile, mais pas Compatibilité."

msgid "If [code]true[/code], the vertex color is used as albedo color."
msgstr ""
"Si [code]true[/code], la couleur du sommet est utilisé pour la couleur de "
"l'albedo."

msgid "Texture specifying per-pixel color."
msgstr "La texture spécifiant la couleur par pixel."

msgid "Texture specifying per-pixel metallic value."
msgstr "La texture spécifiant la valeur métallique par pixel."

msgid "Texture specifying per-pixel roughness value."
msgstr "La texture spécifiant la valeur de rugosité par pixel."

msgid "Texture specifying per-pixel emission color."
msgstr "La texture spécifiant la couleur d’émission par pixel."

msgid "Texture specifying per-pixel normal vector."
msgstr "La texture spécifiant le vecteur de normale par pixel."

msgid "Texture specifying per-pixel bent normal vector."
msgstr "La texture spécifiant le vecteur de normale de courbure par pixel."

msgid "Texture specifying per-pixel rim value."
msgstr "La texture spécifiant la valeur du bord par pixel."

msgid "Texture specifying per-pixel clearcoat value."
msgstr "La texture spécifiant la valeur du vernis par pixel."

msgid ""
"Texture specifying per-pixel flowmap direction for use with [member "
"anisotropy]."
msgstr ""
"Texture spécifiant la direction de la flowmap par pixel à utiliser avec "
"[member anisotropy]."

msgid "Texture specifying per-pixel ambient occlusion value."
msgstr "La texture spécifiant la valeur de l'occlusion ambiante par pixel."

msgid "Texture specifying per-pixel height."
msgstr "La texture spécifiant la hauteur par pixel."

msgid "Texture specifying per-pixel subsurface scattering."
msgstr "La texture spécifiant la transluminescence par pixel."

msgid "Texture specifying per-pixel transmittance for subsurface scattering."
msgstr ""
"Texture spécifiant par pixel la transmittance pour la transluminescence."

msgid "Texture specifying per-pixel backlight color."
msgstr "Texture spécifiant la couleur du rétroéclairage par pixel."

msgid "Texture specifying per-pixel refraction strength."
msgstr "La texture spécifiant la force de réfraction par pixel."

msgid "Texture specifying per-pixel detail mask blending value."
msgstr ""
"La texture spécifiant la valeur de mélange des masques de détail par pixel."

msgid "Texture specifying per-pixel detail color."
msgstr "La texture spécifiant la couleur des détails par pixel."

msgid "Texture specifying per-pixel detail normal."
msgstr "La texture spécifiant le détail de la normale par pixel."

msgid "Texture holding ambient occlusion, roughness, and metallic."
msgstr "Texture contenant l'occlusion ambiante, la rugosité, et le métalisme."

msgid "Represents the size of the [enum TextureParam] enum."
msgstr "Représente la taille de l’enum [enum TextureParam]."

msgid ""
"The texture filter reads from the nearest pixel only. This makes the texture "
"look pixelated from up close, and grainy from a distance (due to mipmaps not "
"being sampled)."
msgstr ""
"Le filtrage de texture lit le pixel le plus proche seulement. Cela rend la "
"texture pixelisée de loin, et granuleuse à une certaine distance (à cause des "
"mipmaps qui ne sont pas échantillonnées)."

msgid ""
"The texture filter blends between the nearest 4 pixels. This makes the "
"texture look smooth from up close, and grainy from a distance (due to mipmaps "
"not being sampled)."
msgstr ""
"Le filtrage de texture mélange les 4 pixels les plus proches. Cela rend la "
"texture lisse de près, et granuleuse à une certaine distance (à cause des "
"mipmaps qui ne sont pas échantillonnées)."

msgid "Represents the size of the [enum TextureFilter] enum."
msgstr "Représente la taille de l’énumération [enum TextureFilter]."

msgid "Use [code]UV[/code] with the detail texture."
msgstr "Utilise [code]UV[/code] pour la texture des détails."

msgid "Use [code]UV2[/code] with the detail texture."
msgstr "Utilise [code]UV2[/code] pour la texture des détails."

msgid "The material will not use transparency. This is the fastest to render."
msgstr ""
"Le matériau n'utilisera pas la transparence. C'est le plus rapide à rendre."

msgid ""
"The material will use the texture's alpha values for transparency. This is "
"the slowest to render, and disables shadow casting."
msgstr ""
"Le matériau utilisera les valeurs alpha de la texture pour la transparence. "
"C'est le plus lent à rendre, et désactive la projection d'ombres."

msgid ""
"The material will cut off all values below a threshold, the rest will remain "
"opaque. The opaque portions will be rendered in the depth prepass. This is "
"faster to render than alpha blending, but slower than opaque rendering. This "
"also supports casting shadows."
msgstr ""
"Le matériau coupera toutes les valeurs en dessous d'un seuil, le reste "
"restera opaque. Les parties opaques seront rendues dans la pré-passe de "
"profondeur. Ceci est plus rapide à rendre que le mélange alpha, mais plus "
"lent que le rendu opaque. Cela supporte aussi la projection d'ombres."

msgid "Represents the size of the [enum Transparency] enum."
msgstr "Représente la taille de l'énumération [enum Transparency]."

msgid ""
"The object will not receive shadows. This is the fastest to render, but it "
"disables all interactions with lights."
msgstr ""
"L'objet ne recevra pas d'ombres. C'est le plus rapide à rendre, mais cela "
"désactive toutes les interactions avec les lumières."

msgid ""
"The object will be shaded per pixel. Useful for realistic shading effects."
msgstr ""
"L'objet sera ombré par pixel. Utile pour des effets d'ombrage réalistes."

msgid ""
"The object will be shaded per vertex. Useful when you want cheaper shaders "
"and do not care about visual quality."
msgstr ""
"L'objet sera ombré par sommet. Utile lorsque vous voulez des ombres moins "
"chères et ne vous souciez pas de la qualité visuelle."

msgid "Represents the size of the [enum ShadingMode] enum."
msgstr "Représente la taille de l’énumération [enum ShadingMode]."

msgid "Constant for setting [member emission_enabled]."
msgstr "Constante pour définir [member emission_enabled]."

msgid "Constant for setting [member normal_enabled]."
msgstr "Constante pour définir [member normal_enabled]."

msgid "Constant for setting [member rim_enabled]."
msgstr "Constante pour définir [member rim_enabled]."

msgid "Constant for setting [member clearcoat_enabled]."
msgstr "Constante pour définir [member clearcoat_enabled]."

msgid "Constant for setting [member anisotropy_enabled]."
msgstr "Constante pour définir [member anisotropy_enabled]."

msgid "Constant for setting [member ao_enabled]."
msgstr "Constante pour définir [member ao_enabled]."

msgid "Constant for setting [member heightmap_enabled]."
msgstr "Constante pour définir [member heightmap_enabled]."

msgid "Constant for setting [member subsurf_scatter_enabled]."
msgstr "Constante pour définir [member subsurf_scatter_enabled]."

msgid "Constant for setting [member subsurf_scatter_transmittance_enabled]."
msgstr "Constante pour définir [member subsurf_scatter_transmittance_enabled]."

msgid "Constant for setting [member backlight_enabled]."
msgstr "Constante pour définir [member backlight_enabled]."

msgid "Constant for setting [member refraction_enabled]."
msgstr "Constante pour définir [member refraction_enabled]."

msgid "Constant for setting [member detail_enabled]."
msgstr "Constante pour définir [member detail_enabled]."

msgid "Constant for setting [member bent_normal_enabled]."
msgstr "Constante pour définir [member bent_normal_enabled]."

msgid "Represents the size of the [enum Feature] enum."
msgstr "Représente la taille de l'énumération [enum Feature]."

msgid ""
"Default blend mode. The color of the object is blended over the background "
"based on the object's alpha value."
msgstr ""
"Le mode de mélange par défaut. La couleur de l'objet est mélangée sur "
"l'arrière-plan en fonction de l'opacité de l'objet."

msgid "The color of the object is added to the background."
msgstr "La couleur de l'objet est ajoutée à l'arrière-plan."

msgid "The color of the object is subtracted from the background."
msgstr "La couleur de l'objet est soustraite à l'arrière-plan."

msgid "The color of the object is multiplied by the background."
msgstr "La couleur de l'objet est multipliée par l'arrière-plan."

msgid ""
"The color of the object is added to the background and the alpha channel is "
"used to mask out the background. This is effectively a hybrid of the blend "
"mix and add modes, useful for effects like fire where you want the flame to "
"add but the smoke to mix. By default, this works with unshaded materials "
"using premultiplied textures. For shaded materials, use the "
"[code]PREMUL_ALPHA_FACTOR[/code] built-in so that lighting can be modulated "
"as well."
msgstr ""
"La couleur de l'objet est ajoutée à l'arrière-plan et le canal alpha est "
"utilisé pour masquer l'arrière-plan. Il s'agit d'un hybride des modes de "
"mélange mix et add, utiles pour les effets comme le feu où vous voulez que la "
"flamme s'ajoute mais la fumée se mixe. Par défaut, cela fonctionne avec des "
"matériaux non ombragés utilisant des textures prémultipliées. Pour les "
"matériaux ombragés, utilisez la constante intégrée [code]PREMUL_ALPHA_FACTOR[/"
"code] pour que l'éclairage puisse être aussi modulé."

msgid "Disables Alpha AntiAliasing for the material."
msgstr "Désactive l'anti-crénelage de l'alpha pour ce matériau."

msgid ""
"Enables AlphaToCoverage. Alpha values in the material are passed to the "
"AntiAliasing sample mask."
msgstr ""
"Active l'AlphaToCoverage (litt. alpha vers couverture). Les valeurs alpha "
"dans le matériau sont transmises au masque d'échantillonnage d'anti-crénelage."

msgid ""
"Enables AlphaToCoverage and forces all non-zero alpha values to [code]1[/"
"code]. Alpha values in the material are passed to the AntiAliasing sample "
"mask."
msgstr ""
"Active AlphaToCoverage et force toutes les valeurs alpha non nulles à "
"[code]1[/code]. Les valeurs alpha dans le matériau sont transmises au masque "
"d'échantillonnage d'anti-crénelage."

msgid ""
"Default depth draw mode. Depth is drawn only for opaque objects during the "
"opaque prepass (if any) and during the opaque pass."
msgstr ""
"Mode de dessin de profondeur par défaut. La profondeur n'est dessinée que "
"pour les objets opaques pendant la pré-passe opaque (si présente) et pendant "
"la passe opaque."

msgid ""
"Objects will write to depth during the opaque and the transparent passes. "
"Transparent objects that are close to the camera may obscure other "
"transparent objects behind them.\n"
"[b]Note:[/b] This does not influence whether transparent objects are included "
"in the depth prepass or not. For that, see [enum Transparency]."
msgstr ""
"Les objets écriront leur profondeur pendant les passes opaque et "
"transparente. Les objets transparents proches de la caméra peuvent masquer "
"d'autres objets transparents derrière eux.\n"
"[b]Note :[/b] Cela n'influence pas si des objets transparents sont inclus "
"dans la pré-passe de profondeur ou non. Pour cela, voir [enum Transparency]."

msgid ""
"Objects will not write their depth to the depth buffer, even during the depth "
"prepass (if enabled)."
msgstr ""
"Les objets n'écriront pas leur profondeur dans le buffer de profondeur, même "
"pendant la pré-passe de profondeur (si activée)."

msgid "Depth test will discard the pixel if it is behind other pixels."
msgstr ""
"Le test de profondeur va défausser le pixel s'il est derrière d'autres pixels."

msgid ""
"Default cull mode. The back of the object is culled when not visible. Back "
"face triangles will be culled when facing the camera. This results in only "
"the front side of triangles being drawn. For closed-surface meshes, this "
"means that only the exterior of the mesh will be visible."
msgstr ""
"Mode de culling par défaut. L'arrière de l'objet est défaussé (culled) "
"lorsqu'il n'est pas visible. Les triangles des faces arrières seront "
"défaussés lorsqu'ils font face à la caméra. Cela fait que seuls les triangles "
"des faces avant seront dessinés. Pour les maillages avec une surface fermée, "
"cela signifie que seul l'extérieur du maillage sera visible."

msgid ""
"Front face triangles will be culled when facing the camera. This results in "
"only the back side of triangles being drawn. For closed-surface meshes, this "
"means that the interior of the mesh will be drawn instead of the exterior."
msgstr ""
"Les triangles des faces avant seront défaussés lorsqu'ils font face à la "
"caméra. Cela fait que seuls les triangles des faces arrières seront dessinés. "
"Pour les maillages avec une surface fermée, cela signifie que seul "
"l'intérieur du maillage sera dessiné au lieu de l'extérieur."

msgid ""
"No face culling is performed; both the front face and back face will be "
"visible."
msgstr ""
"Aucun culling de face n'est effectué, la face avant et arrière seront toutes "
"deux visibles."

msgid ""
"Disables the depth test, so this object is drawn on top of all others drawn "
"before it. This puts the object in the transparent draw pass where it is "
"sorted based on distance to camera. Objects drawn after it in the draw order "
"may cover it. This also disables writing to depth."
msgstr ""
"Désactive le test de profondeur, de sorte que cet objet sera dessiné au "
"dessus de tous les objets dessinés avant lui. Cela place l'objet dans la "
"passe de dessin transparente où il est trié selon sa distance à la caméra. "
"Les objets dessinés après lui dans l'ordre de dessin peuvent le recouvrir. "
"Cela désactive aussi l'écriture de sa profondeur."

msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
msgstr ""
"Définit [code]ALBEDO[/code] par la couleur définie pour chaque sommet du "
"maillage."

msgid ""
"Vertex colors are considered to be stored in sRGB color space and are "
"converted to linear color space during rendering. See also [member "
"vertex_color_is_srgb].\n"
"[b]Note:[/b] Only effective when using the Forward+ and Mobile rendering "
"methods."
msgstr ""
"Les couleurs de sommet sont considérées comme stockées dans l'espace de "
"couleur sRGB et sont converties en l'espace de couleur linéaire durant le "
"rendu. Voir aussi [member vertex_color_is_srgb].\n"
"[b]Note :[/b] Seulement effectif lors de l'utilisation des méthodes de rendu "
"Forward+ et Mobile."

msgid ""
"Uses point size to alter the size of primitive points. Also changes the "
"albedo texture lookup to use [code]POINT_COORD[/code] instead of [code]UV[/"
"code]."
msgstr ""
"Utilise la taille d'affichage des points pour modifier pour les primitives de "
"points. Change également la projection des textures albedo en utilisant "
"[code]POINT_COORD[/code] au lieu de [code]UV[/code]."

msgid ""
"Object is scaled by depth so that it always appears the same size on screen."
msgstr ""
"L'objet est mise à l'échelle suivant sa profondeur pour qu'il apparaisse "
"toujours la même taille à l'écran."

msgid ""
"Shader will keep the scale set for the mesh. Otherwise the scale is lost when "
"billboarding. Only applies when [member billboard_mode] is [constant "
"BILLBOARD_ENABLED]."
msgstr ""
"Le shader gardera l'échelle du maillage. Sinon, la mise à l'échelle sera "
"ignorée lors de l'affichage en billboard. Ne s'applique que quand [member "
"billboard_mode] vaut [constant BILLBOARD_ENABLED]."

msgid ""
"Use triplanar texture lookup for all texture lookups that would normally use "
"[code]UV[/code]."
msgstr ""
"Utiliser la projection triplanaire pour les textures qui normalement "
"utilisent [code]UV[/code]."

msgid ""
"Use triplanar texture lookup for all texture lookups that would normally use "
"[code]UV2[/code]."
msgstr ""
"Utiliser la projection triplanaire pour les textures qui normalement "
"utilisent [code]UV2[/code]."

msgid ""
"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
msgstr ""
"Utiliser les coordonnées [code]UV2[/code] pour la projection de la [member "
"ao_texture]."

msgid ""
"Use [code]UV2[/code] coordinates to look up from the [member "
"emission_texture]."
msgstr ""
"Utiliser les coordonnées [code]UV2[/code] pour la projection de la [member "
"emission_texture]."

msgid ""
"Forces the shader to convert albedo from sRGB space to linear space. See also "
"[member albedo_texture_force_srgb]."
msgstr ""
"Force le shader à convertir l'albedo de l'espace sRGB en l'espace linéaire. "
"Voir aussi [member albedo_texture_force_srgb]."

msgid "Disables receiving shadows from other objects."
msgstr "Désactive la réception des ombres venant des autres objets."

msgid "Disables receiving ambient light."
msgstr "Désactive la réception de la lumière ambiante."

msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
"the edges of a texture when the sampler filters across the edges of the "
"texture."
msgstr ""
"Permet à la texture de se répéter lorsque les coordonnées UV sont à "
"l'extérieur de l'intervalle 0-1. Si vous utilisez l'un des modes de filtrage "
"linéaire, cela peut entraîner des artéfacts aux bords d'une texture lorsque "
"l'échantillonneur filtre à travers les bords de la texture."

msgid ""
"Invert values read from a depth texture to convert them to height values "
"(heightmap)."
msgstr ""
"Inverse les valeurs lues d'une texture de profondeur pour les convertir en "
"valeurs de hauteur (heightmap)."

msgid ""
"Enables the skin mode for subsurface scattering which is used to improve the "
"look of subsurface scattering when used for human skin."
msgstr ""
"Active le mode de peau pour la transluminescence, qui est utilisé pour "
"améliorer l'aspect de la transluminescence lorsqu'elle est utilisée pour de "
"la peau humaine."

msgid ""
"Enables parts of the shader required for [GPUParticles3D] trails to function. "
"This also requires using a mesh with appropriate skinning, such as "
"[RibbonTrailMesh] or [TubeTrailMesh]. Enabling this feature outside of "
"materials used in [GPUParticles3D] meshes will break material rendering."
msgstr ""
"Active les parties du shader nécessaires pour que les traînées de "
"[GPUParticles3D] fonctionnent. Cela nécessite également l'utilisation d'un "
"maillage avec un skinning approprié, comme [RibbonTrailMesh] ou "
"[TubeTrailMesh]. L'activation de cette fonctionnalité en dehors des matériaux "
"utilisés dans des maillages de [GPUParticles3D] cassera le rendu du matériau."

msgid "Enables multichannel signed distance field rendering shader."
msgstr "Active le shader de rendu de champ de distance signée multicanal."

msgid "Disables receiving depth-based or volumetric fog."
msgstr ""
"Désactive la réception de brouillard basé sur la profondeur ou volumétrique."

msgid "Disables specular occlusion."
msgstr "Désactive l'occlusion spéculaire."

msgid "Enables using [member z_clip_scale]."
msgstr "Active l'utilisation de [member z_clip_scale]."

msgid "Enables using [member fov_override]."
msgstr "Active l'utilisation de [member fov_override]."

msgid "Represents the size of the [enum Flags] enum."
msgstr "Représente la taille de l'énumération [enum Flags]."

msgid "Default diffuse scattering algorithm."
msgstr "Algorithme de diffusion diffuse par défaut."

msgid "Diffuse scattering ignores roughness."
msgstr "La diffusion diffuse ignore la rugosité."

msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
msgstr ""
"Étend le calcul Lambert pour couvrir plus de 90 degrés quand la rugosité "
"augmente."

msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
msgstr ""
"Utilise une transition abrupte pour les lumières, la rugosité permet "
"d'ajuster cette transition."

msgid ""
"Default specular blob.\n"
"[b]Note:[/b] Forward+ uses multiscattering for more accurate reflections, "
"although the impact of multiscattering is more noticeable on rough metallic "
"surfaces than on smooth, non-metallic surfaces.\n"
"[b]Note:[/b] Mobile and Compatibility don't perform multiscattering for "
"performance reasons. Instead, they perform single scattering, which means "
"rough metallic surfaces may look slightly darker than intended."
msgstr ""
"Blob spéculaire par défaut.\n"
"[b]Note :[/b] Forward+ utilise de la multi-diffusion pour des réflexions plus "
"précises, bien que l'impact de la multi-diffusion soit mieux visible sur des "
"surfaces métalliques rugueuses que sur des surfaces lisses et non "
"métalliques.\n"
"[b]Note :[/b] Mobile et Compatibilité ne font pas de multi-diffusion pour des "
"raisons de performance. Au lieu de cela, ils effectuent une diffusion unique, "
"ce qui signifie que les surfaces métalliques rugueuses peuvent sembler "
"légèrement plus foncées que prévu."

msgid "Toon blob which changes size based on roughness."
msgstr "Le reflet en mode cartoon change de taille suivant la rugosité."

msgid ""
"No specular blob. This is slightly faster to render than other specular modes."
msgstr ""
"Pas de blob spéculaire. Ceci est légèrement plus rapide à rendre que les "
"autres modes spéculaires."

msgid "Billboard mode is disabled."
msgstr "Le mode d'affichage est désactivé."

msgid "The object's Z axis will always face the camera."
msgstr "L'axe Z de l'objet fera toujours face à la caméra."

msgid "The object's X axis will always face the camera."
msgstr "L'axe X de l'objet fera toujours face à la caméra."

msgid ""
"Used for particle systems when assigned to [GPUParticles3D] and "
"[CPUParticles3D] nodes (flipbook animation). Enables [code]particles_anim_*[/"
"code] properties.\n"
"The [member ParticleProcessMaterial.anim_speed_min] or [member "
"CPUParticles3D.anim_speed_min] should also be set to a value bigger than zero "
"for the animation to play."
msgstr ""
"Utilisé pour les systèmes de particules lorsqu'ils sont affectés aux nœuds "
"[GPUParticles3D] et [CPUParticles3D] (animation flipbook). Active les "
"propriétés [code]particles_anim_*[/code].\n"
"[member ParticleProcessMaterial.anim_speed_min] ou [member "
"CPUParticles3D.anim_speed_min] devrait également être défini à une valeur "
"supérieure à zéro pour que l'animation joue."

msgid "Used to read from the red channel of a texture."
msgstr "Utilisé pour lire la texture depuis le canal du rouge."

msgid "Used to read from the green channel of a texture."
msgstr "Utilisé pour lire la texture depuis le canal du vert."

msgid "Used to read from the blue channel of a texture."
msgstr "Utilisé pour lire la texture depuis le canal du bleu."

msgid "Used to read from the alpha channel of a texture."
msgstr "Utilisé pour lire la texture depuis le canal de l'alpha."

msgid ""
"Used to read from the linear (non-perceptual) average of the red, green and "
"blue channels of a texture."
msgstr ""
"Utilisé pour lire la moyenne linéaire (non-perceptuelle) des canaux rouge, "
"verts et bleus d'une texture."

msgid "Adds the emission color to the color from the emission texture."
msgstr "Ajouter la couleur d'émission à la texture d'émission."

msgid "Multiplies the emission color by the color from the emission texture."
msgstr "Multiplie la couleur d'émission par la texture d'émission."

msgid "Do not use distance fade."
msgstr "Ne pas utiliser de fondu de distance."

msgid ""
"Smoothly fades the object out based on each pixel's distance from the camera "
"using the alpha channel."
msgstr ""
"Fait disparaitre doucement l'objet en fonction de la distance de chaque pixel "
"par rapport à la caméra en utilisant l'opacité."

msgid ""
"Smoothly fades the object out based on each pixel's distance from the camera "
"using a dithering approach. Dithering discards pixels based on a set pattern "
"to smoothly fade without enabling transparency. On certain hardware, this can "
"be faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
msgstr ""
"Fait disparaître l'objet par fondu de manière lisse selon la distance de "
"chaque pixel par rapport à la caméra en utilisant une approche par dithering. "
"Le dithering défausse des pixels selon sur un motif défini pour faire un "
"fondu en douceur sans permettre la transparence. Sur certaines machines, cela "
"peut être plus rapide que [constant DISTANCE_FADE_PIXEL_ALPHA]."

msgid ""
"Smoothly fades the object out based on the object's distance from the camera "
"using a dithering approach. Dithering discards pixels based on a set pattern "
"to smoothly fade without enabling transparency. On certain hardware, this can "
"be faster than [constant DISTANCE_FADE_PIXEL_ALPHA] and [constant "
"DISTANCE_FADE_PIXEL_DITHER]."
msgstr ""
"Fait disparaître l'objet par fondu de manière lisse selon la distance de "
"l'objet par rapport à la caméra en utilisant une approche par dithering. Le "
"dithering défausse des pixels selon sur un motif défini pour faire un fondu "
"en douceur sans permettre la transparence. Sur certaines machines, cela peut "
"être plus rapide que [constant DISTANCE_FADE_PIXEL_ALPHA] et [constant "
"DISTANCE_FADE_PIXEL_DITHER]."

msgid "A 3×3 matrix for representing 3D rotation and scale."
msgstr "Une matrice 3×3 pour représenter une rotation et une échelle 3D."

msgid ""
"The [Basis] built-in [Variant] type is a 3×3 [url=https://en.wikipedia.org/"
"wiki/Matrix_(mathematics)]matrix[/url] used to represent 3D rotation, scale, "
"and shear. It is frequently used within a [Transform3D].\n"
"A [Basis] is composed by 3 axis vectors, each representing a column of the "
"matrix: [member x], [member y], and [member z]. The length of each axis "
"([method Vector3.length]) influences the basis's scale, while the direction "
"of all axes influence the rotation. Usually, these axes are perpendicular to "
"one another. However, when you rotate any axis individually, the basis "
"becomes sheared. Applying a sheared basis to a 3D model will make the model "
"appear distorted.\n"
"A [Basis] is:\n"
"- [b]Orthogonal[/b] if its axes are perpendicular to each other.\n"
"- [b]Normalized[/b] if the length of every axis is [code]1.0[/code].\n"
"- [b]Uniform[/b] if all axes share the same length (see [method get_scale]).\n"
"- [b]Orthonormal[/b] if it is both orthogonal and normalized, which allows it "
"to only represent rotations (see [method orthonormalized]).\n"
"- [b]Conformal[/b] if it is both orthogonal and uniform, which ensures it is "
"not distorted.\n"
"For a general introduction, see the [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Matrices and transforms[/url] tutorial.\n"
"[b]Note:[/b] Godot uses a [url=https://en.wikipedia.org/wiki/Right-"
"hand_rule]right-handed coordinate system[/url], which is a common standard. "
"For directions, the convention for built-in types like [Camera3D] is for -Z "
"to point forward (+X is right, +Y is up, and +Z is back). Other objects may "
"use different direction conventions. For more information, see the "
"[url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]3D asset "
"direction conventions[/url] tutorial.\n"
"[b]Note:[/b] The basis matrices are exposed as [url=https://"
"www.mindcontrol.org/~hplus/graphics/matrix-layout.html]column-major[/url] "
"order, which is the same as OpenGL. However, they are stored internally in "
"row-major order, which is the same as DirectX."
msgstr ""
"Le type [Variant] intégré [Basis] (litt. Base) est une [url=https://"
"fr.wikipedia.org/wiki/Matrice_(math%C3%A9matiques)]matrice[/url] 3×3 utilisée "
"pour représenter une rotation, échelle et cisaillement 3D. Il est fréquemment "
"utilisé dans un [Transform3D].\n"
"Une [Basis] est composé de 3 axes vectoriels, chacun représentant une colonne "
"de la matrice : [member x], [member y], et [member z]. La longueur de chaque "
"axe ([method Vector3.length]) influence l'échelle de base, tandis que la "
"direction de tous les axes influence la rotation. Habituellement, ces axes "
"sont perpendiculaires les uns aux autres. Cependant, lorsque vous tournez "
"n'importe quel axe individuellement, la base devient cisaillée. L'application "
"d'une base cisaillée à un modèle 3D fera apparaître le modèle comme déformé.\n"
"Une [Basis] est :\n"
"- [b]Orthogonale[/b] si ses axes sont perpendiculaires les uns aux autres.\n"
"- [b]Normalisée[/b] si la longueur de chaque axe vaut [code]1.0[/code].\n"
"- [b]Uniforme[/b] si tous les axes partagent la même longueur (voir [method "
"get_scale]).\n"
"- [b]Orthonormael[/b] si elle est à la fois orthogonale et normalisée, ce qui "
"lui permet de ne représenter que des rotations (voir [method "
"orthonormalized]).\n"
"- [b]Conforme[/b] si elle est à la fois orthogonale et uniforme, ce qui "
"assure qu'elle n'est pas déformée.\n"
"Pour une introduction générale, voir le tutoriel [url=$DOCS_URL/tutorials/"
"math/matrices_and_transforms.html]Matrices et transformations[/url].\n"
"[b]Note :[/b] Godot utilise un [url=https://fr.wikipedia.org/wiki/"
"R%C3%A8gle_de_la_main_droite]système de coordonnées main-droite[/url], qui "
"est une norme habituelle. Pour les directions, la convention pour les types "
"intégrés comme [Camera3D] est que -Z pointe vers l'avant (+X vers la droite, "
"+Y vers le haut, et +Z vers l'arrière). D'autres objets peuvent utiliser des "
"conventions de direction différentes. Pour plus d'informations, voir le "
"tutoriel [url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]Conventions de "
"direction de ressource 3D[/url].\n"
"[b]Note :[/b] Les matrices de base sont exposées dans l'ordre [url=https://"
"www.mindcontrol.org/~hplus/graphics/matrix-layout.html]column-major[/url] "
"(par colonnes), qui est le même qu'OpenGL. Cependant, elles sont stockées en "
"interne dans l'ordre row-major (par lignes), qui est le même que DirectX."

msgid "Matrices and transforms"
msgstr "Matrices et transformations"

msgid "Using 3D transforms"
msgstr "Utiliser les transformations 3D"

msgid "Matrix Transform Demo"
msgstr "Démo de transformation matricielle"

msgid "2.5D Game Demo"
msgstr "Démo de jeu 2,5D"

msgid ""
"Constructs a [Basis] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Basis] with all of its components set "
"to [constant Vector3.ZERO]."
msgstr ""
"Construit une [Basis] identique à [constant IDENTITY].\n"
"[b]Note :[/b] En C#, cela construit une [Basis] avec tous ses composantes "
"définies à [constant Vector3.ZERO]."

msgid "Constructs a [Basis] as a copy of the given [Basis]."
msgstr "Construit une [Basis] en tant que copie de la [Basis] donnée."

msgid ""
"Constructs a [Basis] that only represents rotation, rotated around the [param "
"axis] by the given [param angle], in radians. The axis must be a normalized "
"vector.\n"
"[b]Note:[/b] This is the same as using [method rotated] on the [constant "
"IDENTITY] basis. With more than one angle consider using [method from_euler], "
"instead."
msgstr ""
"Construit une [Basis] qui ne représente qu'une rotation, tournant autour de "
"l'axe [param axis] d'un angle [param angle] donné, en radians. L'axe doit "
"être un vecteur normalisé.\n"
"[b]Note :[/b] C'est identique à l'utilisation de [method rotated] sur la base "
"[constant IDENTITY]. Avec plus d'un angle, considérez à la place d'utiliser "
"[method from_euler]."

msgid ""
"Constructs a [Basis] that only represents rotation from the given "
"[Quaternion].\n"
"[b]Note:[/b] Quaternions [i]only[/i] store rotation, not scale. Because of "
"this, conversions from [Basis] to [Quaternion] cannot always be reversed."
msgstr ""
"Construit une [Basis] qui ne représente seulement qu'une rotation d'un "
"[Quaternion] donné.\n"
"[b]Note:[/b] Les quaternions ne stockent [i]seulement[/i] que des rotations, "
"pas d'échelle. À cause de cela, les conversions de [Basis] vers [Quaternion] "
"ne peuvent pas toujours être inversées."

msgid ""
"Constructs a [Basis] from 3 axis vectors. These are the columns of the basis "
"matrix."
msgstr ""
"Construit une [Basis] à partir de 3 vecteurs d'axe. Ce sont les colonnes de "
"la matrice de la base."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Determinant]determinant[/url] "
"of this basis's matrix. For advanced math, this number can be used to "
"determine a few attributes:\n"
"- If the determinant is exactly [code]0.0[/code], the basis is not invertible "
"(see [method inverse]).\n"
"- If the determinant is a negative number, the basis represents a negative "
"scale.\n"
"[b]Note:[/b] If the basis's scale is the same for every axis, its determinant "
"is always that scale by the power of 3."
msgstr ""
"Renvoie le [url=https://fr.wikipedia.org/wiki/"
"D%C3%A9terminant_(math%C3%A9matiques)]déterminant[/url] de la matrice de "
"cette base. Pour les mathématiques avancées, ce nombre peut être utilisé pour "
"déterminer quelques attributs :\n"
"- Si le déterminant vaut exactement [code]0.0[/code], la base n'est pas "
"inversible (voir [method inverse]).\n"
"- Si le déterminant est un nombre négatif, la base représente une échelle "
"négative.\n"
"[b]Note :[/b] Si l'échelle de la base est la même pour chaque axe, son "
"déterminant vaut toujours cette échelle à la puissance 3."

msgid ""
"Constructs a new [Basis] that only represents rotation from the given "
"[Vector3] of [url=https://en.wikipedia.org/wiki/Euler_angles]Euler angles[/"
"url], in radians.\n"
"- The [member Vector3.x] should contain the angle around the [member x] axis "
"(pitch);\n"
"- The [member Vector3.y] should contain the angle around the [member y] axis "
"(yaw);\n"
"- The [member Vector3.z] should contain the angle around the [member z] axis "
"(roll).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Creates a Basis whose z axis points down.\n"
"var my_basis = Basis.from_euler(Vector3(TAU / 4, 0, 0))\n"
"\n"
"print(my_basis.z) # Prints (0.0, -1.0, 0.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Creates a Basis whose z axis points down.\n"
"var myBasis = Basis.FromEuler(new Vector3(Mathf.Tau / 4.0f, 0.0f, 0.0f));\n"
"\n"
"GD.Print(myBasis.Z); // Prints (0, -1, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The order of each consecutive rotation can be changed with [param order] (see "
"[enum EulerOrder] constants). By default, the YXZ convention is used "
"([constant EULER_ORDER_YXZ]): the basis rotates first around the Y axis "
"(yaw), then X (pitch), and lastly Z (roll). When using the opposite method "
"[method get_euler], this order is reversed."
msgstr ""
"Construit une nouvelle [Basis] qui ne représente que la rotation du [Vector3] "
"d'[url=https://fr.wikipedia.org/wiki/Angles_d%27Euler]angles d'Euler[/url] "
"donnés, en radians.\n"
"- Le [member Vector3.x] devrait contenir l'angle autour de l'axe [member x] "
"(roulis);\n"
"- Le [member Vector3.y] devrait contenir l'angle autour de l'axe [member y] "
"(tangage);\n"
"- Le [member Vector3.z] devrait contenir l'angle autour de l'axe [member z] "
"(lacet).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Crée une Basis dont l'axe z pointe vers le bas.\n"
"var ma_base = Basis.from_euler(Vector3(TAU / 4, 0, 0))\n"
"\n"
"print(ma_base.z) # Affiche (0.0, -1.0, 0.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Crée une Basis dont l'axe z pointe vers le bas.\n"
"var maBase = Basis.FromEuler(new Vector3(Mathf.Tau / 4.0f, 0.0f, 0.0f));\n"
"\n"
"GD.Print(maBase.Z); // Affiche (0, -1, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"L'ordre de chaque rotation consécutive peut être modifié avec le paramètre "
"[param order] (voir les constantes [enum EulerOrder]). Par défaut, la "
"convention YXZ est utilisée ([constant EULER_ORDER_YXZ]) : la base tourne "
"d'abord autour de l'axe Y (tangage), puis X (roulis) et enfin Z (lacet). En "
"utilisant la méthode opposée [method get_euler], cet ordre est inversé."

msgid ""
"Constructs a new [Basis] that only represents scale, with no rotation or "
"shear, from the given [param scale] vector.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis.from_scale(Vector3(2, 4, 8))\n"
"\n"
"print(my_basis.x) # Prints (2.0, 0.0, 0.0)\n"
"print(my_basis.y) # Prints (0.0, 4.0, 0.0)\n"
"print(my_basis.z) # Prints (0.0, 0.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = Basis.FromScale(new Vector3(2.0f, 4.0f, 8.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (2, 0, 0)\n"
"GD.Print(myBasis.Y); // Prints (0, 4, 0)\n"
"GD.Print(myBasis.Z); // Prints (0, 0, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In linear algebra, the matrix of this basis is also known as a "
"[url=https://en.wikipedia.org/wiki/Diagonal_matrix]diagonal matrix[/url]."
msgstr ""
"Construit une nouvelle [Basis] qui ne représente qu'une échelle, sans "
"rotation ni cisaillement, depuis le vecteur [param scale] donné.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ma_base = Basis.from_scale(Vector3(2, 4, 8))\n"
"\n"
"print(ma_base.x) # Affiche (2.0, 0.0, 0.0)\n"
"print(ma_base.y) # Affiche (0.0, 4.0, 0.0)\n"
"print(ma_base.z) # Affiche (0.0, 0.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var maBase = Basis.FromScale(new Vector3(2.0f, 4.0f, 8.0f));\n"
"\n"
"GD.Print(maBase.X); // Affiche (2, 0, 0)\n"
"GD.Print(maBase.Y); // Affiche (0, 4, 0)\n"
"GD.Print(maBase.Z); // Affiche (0, 0, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En algèbre linéaire, la matrice de cette base est également "
"connue sous le nom de [url=https://fr.wikipedia.org/wiki/"
"Matrice_diagonale]matrice diagonale[/url]."

msgid ""
"Returns this basis's rotation as a [Vector3] of [url=https://en.wikipedia.org/"
"wiki/Euler_angles]Euler angles[/url], in radians. For the returned value:\n"
"- The [member Vector3.x] contains the angle around the [member x] axis "
"(pitch);\n"
"- The [member Vector3.y] contains the angle around the [member y] axis "
"(yaw);\n"
"- The [member Vector3.z] contains the angle around the [member z] axis "
"(roll).\n"
"The order of each consecutive rotation can be changed with [param order] (see "
"[enum EulerOrder] constants). By default, the YXZ convention is used "
"([constant EULER_ORDER_YXZ]): Z (roll) is calculated first, then X (pitch), "
"and lastly Y (yaw). When using the opposite method [method from_euler], this "
"order is reversed.\n"
"[b]Note:[/b] For this method to return correctly, the basis needs to be "
"[i]orthonormal[/i] (see [method orthonormalized]).\n"
"[b]Note:[/b] Euler angles are much more intuitive but are not suitable for 3D "
"math. Because of this, consider using the [method get_rotation_quaternion] "
"method instead, which returns a [Quaternion].\n"
"[b]Note:[/b] In the Inspector dock, a basis's rotation is often displayed in "
"Euler angles (in degrees), as is the case with the [member Node3D.rotation] "
"property."
msgstr ""
"Renvoie la rotation de cette base en tant que [Vector3] d'[url=https://"
"fr.wikipedia.org/wiki/Angles_d%27Euler]angles d'Euler[/url], en radians. Pour "
"la valeur renvoyée :\n"
"- Le [member Vector3.x] contient l'angle autour de l'axe [member x] "
"(roulis);\n"
"- Le [member Vector3.y] contient l'angle autour de l'axe [member y] "
"(tangage);\n"
"- Le [member Vector3.z] contient l'angle autour de l'axe [member z] (lacet).\n"
"L'ordre de chaque rotation consécutive peut être modifié avec le paramètre "
"[param order] (voir les constantes [enum EulerOrder]). Par défaut, la "
"convention YXZ est utilisée ([constant EULER_ORDER_YXZ]) : la base tourne "
"d'abord autour de l'axe Y (tangage), puis X (roulis) et enfin Z (lacet). En "
"utilisant la méthode opposée [method get_euler], cet ordre est inversé.\n"
"[b]Note :[/b] Pour que cette méthode puisse renvoyer correctement, la base "
"doit être [i]orthonormale[/i] (voir [method orthonormalized]).\n"
"[b]Note :[/b] Les angles d'Euler sont beaucoup plus intuitifs mais ne "
"conviennent pas aux maths en 3D. Pour cette raison, envisagez d'utiliser la "
"méthode [method get_rotation_quaternion] qui renvoie un [Quaternion].\n"
"[b]Note :[/b] Dans le dock de l'inspecteur, la rotation d'une base est "
"souvent affichée en angles d'Euler (en degrés), comme c'est le cas avec la "
"propriété [member Node3D.rotation]."

msgid ""
"Returns this basis's rotation as a [Quaternion].\n"
"[b]Note:[/b] Quaternions are much more suitable for 3D math but are less "
"intuitive. For user interfaces, consider using the [method get_euler] method, "
"which returns Euler angles."
msgstr ""
"Renvoie la rotation de cette base en tant que [Quaternion].\n"
"[b]Note :[/b] Les quaternions sont beaucoup plus adaptés aux maths en 3D mais "
"sont moins intuitifs. Pour les interfaces utilisateur, envisagez d'utiliser "
"la méthode [method get_euler] qui renvoie des angles d'Euler."

msgid ""
"Returns the length of each axis of this basis, as a [Vector3]. If the basis "
"is not sheared, this value is the scaling factor. It is not affected by "
"rotation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(2, 0, 0),\n"
"\tVector3(0, 4, 0),\n"
"\tVector3(0, 0, 8)\n"
")\n"
"# Rotating the Basis in any way preserves its scale.\n"
"my_basis = my_basis.rotated(Vector3.UP, TAU / 2)\n"
"my_basis = my_basis.rotated(Vector3.RIGHT, TAU / 4)\n"
"\n"
"print(my_basis.get_scale()) # Prints (2.0, 4.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tVector3(2.0f, 0.0f, 0.0f),\n"
"\tVector3(0.0f, 4.0f, 0.0f),\n"
"\tVector3(0.0f, 0.0f, 8.0f)\n"
");\n"
"// Rotating the Basis in any way preserves its scale.\n"
"myBasis = myBasis.Rotated(Vector3.Up, Mathf.Tau / 2.0f);\n"
"myBasis = myBasis.Rotated(Vector3.Right, Mathf.Tau / 4.0f);\n"
"\n"
"GD.Print(myBasis.Scale); // Prints (2, 4, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If the value returned by [method determinant] is negative, the "
"scale is also negative."
msgstr ""
"Renvoie la longueur de chaque axe de cette base, en tant que [Vector3]. Si la "
"base n'est pas cisaillée, cette valeur est le facteur d'échelle. Il n'est pas "
"affecté par la rotation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ma_base = Basis(\n"
"Vector3(2, 0, 0),\n"
"Vector3(0, 4, 0),\n"
"Vector3(0, 0, 8)\n"
")\n"
"# Tourner la Basis de n'importe quelle façon conserve son échelle.\n"
"ma_base = ma_base.rotated(Vector3.UP, TAU / 2)\n"
"ma_base = ma_base.rotated(Vector3.RIGHT, TAU / 4)\n"
"\n"
"print(my_basis.get_scale()) # Affiche (2.0, 4.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var maBase = new Basis(\n"
"Vector3(2.0f, 0.0f, 0.0f),\n"
"Vector3(0.0f, 4.0f, 0.0f),\n"
"Vector3(0.0f, 0.0f, 8.0f)\n"
");\n"
"//Tourner la Basis de n'importe quelle façon conserve son échelle.\n"
"maBase = maBase.Rotated(Vector3.Up, Mathf.Tau / 2.0f);\n"
"maBase = maBase.Rotated(Vector3.Right, Mathf.Tau / 4.0f);\n"
"\n"
"GD.Print(maBase.Scale); // Affiche (2, 4, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Si la valeur renvoyée par [method determinant] est négative, "
"l'échelle est également négative."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Invertible_matrix]inverse of "
"this basis's matrix[/url]."
msgstr ""
"Renvoie [url=https://fr.wikipedia.org/wiki/Matrice_inversible]l'inverse de la "
"matrice[/url] de cette base."

msgid ""
"Returns [code]true[/code] if this basis is conformal. A conformal basis is "
"both [i]orthogonal[/i] (the axes are perpendicular to each other) and "
"[i]uniform[/i] (the axes share the same length). This method can be "
"especially useful during physics calculations."
msgstr ""
"Renvoie [code]true[/code] si cette base est conforme. Une base conforme est à "
"la fois [i]orthogonale[/i] (les axes sont perpendiculaires les uns aux "
"autres) et [i]uniforme[/i] (les axes partagent la même longueur). Cette "
"méthode peut être particulièrement utile lors des calculs de physique."

msgid ""
"Returns [code]true[/code] if this basis and [param b] are approximately "
"equal, by calling [method @GlobalScope.is_equal_approx] on all vector "
"components."
msgstr ""
"Renvoie [code]true[/code] si cette base et [param b] sont approximativement "
"égales, en appelant [method @GlobalScope.is_equal_approx] sur toutes les "
"composantes vectorielles."

msgid ""
"Returns [code]true[/code] if this basis is finite, by calling [method "
"@GlobalScope.is_finite] on all vector components."
msgstr ""
"Renvoie [code]true[/code] si cette base est finie, en appelant [method "
"@GlobalScope.is_finite] sur toutes les composantes vectorielles."

msgid ""
"Creates a new [Basis] with a rotation such that the forward axis (-Z) points "
"towards the [param target] position.\n"
"By default, the -Z axis (camera forward) is treated as forward (implies +X is "
"right). If [param use_model_front] is [code]true[/code], the +Z axis (asset "
"front) is treated as forward (implies +X is left) and points toward the "
"[param target] position.\n"
"The up axis (+Y) points as close to the [param up] vector as possible while "
"staying perpendicular to the forward axis. The returned basis is "
"orthonormalized (see [method orthonormalized]).\n"
"The [param target] and the [param up] cannot be [constant Vector3.ZERO], and "
"shouldn't be colinear to avoid unintended rotation around local Z axis."
msgstr ""
"Crée une nouvelle [Basis] avec une rotation telle que l'axe avant (-Z) pointe "
"vers la position [param target].\n"
"Par défaut, l'axe -Z (avant de la caméra) est traité comme l'avant (implique "
"+X est la droite). Si [param use_model_front] vaut [code]true[/code], l'axe "
"+Z (axe avant des ressources) est traité comme l'avant (implique +X est la "
"gauche) et pointe vers la position [param target].\n"
"L'axe vers le haut (+Y) pointe aussi près du vecteur [param up] que possible "
"tout en restant perpendiculaire à l'axe avant. La base renvoyée est "
"orthonormalisée (voir [method orthonormalized]).\n"
"La cible [param target] et le vecteur haut [param up] ne peuvent être "
"[constant Vector3.ZERO], et ne devraient pas être colinéaires afin d'éviter "
"une rotation inattendue autour de l'axe Z local."

msgid ""
"Returns the orthonormalized version of this basis. An orthonormal basis is "
"both [i]orthogonal[/i] (the axes are perpendicular to each other) and "
"[i]normalized[/i] (the axes have a length of [code]1.0[/code]), which also "
"means it can only represent a rotation.\n"
"It is often useful to call this method to avoid rounding errors on a rotating "
"basis:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Rotate this Node3D every frame.\n"
"func _process(delta):\n"
"\tbasis = basis.rotated(Vector3.UP, TAU * delta)\n"
"\tbasis = basis.rotated(Vector3.RIGHT, TAU * delta)\n"
"\tbasis = basis.orthonormalized()\n"
"[/gdscript]\n"
"[csharp]\n"
"// Rotate this Node3D every frame.\n"
"public override void _Process(double delta)\n"
"{\n"
"\tBasis = Basis.Rotated(Vector3.Up, Mathf.Tau * (float)delta)\n"
"\t\t\t.Rotated(Vector3.Right, Mathf.Tau * (float)delta)\n"
"\t\t\t.Orthonormalized();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la version orthonormalisée de cette base. Une base orthonormale est à "
"la fois [i]orthogonale[/i] (les axes sont perpendiculaires les uns aux "
"autres) et [i]normalisée[/i] (les axes ont une longueur de [code]1.0[/code]), "
"ce qui signifie également qu'elle ne peut représenter qu'une rotation.\n"
"Il est souvent utile d'appeler cette méthode pour éviter les erreurs "
"d'arrondissement sur une base tournante :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Tourner ce Node3D à chaque trame.\n"
"func _process(delta):\n"
"\tbase = base.rotated(Vector3.UP, TAU * delta)\n"
"\tbase = base.rotated(Vector3.RIGHT, TAU * delta)\n"
"\tbase = base.orthonormalized()\n"
"[/gdscript]\n"
"[csharp]\n"
"// Tourner ce Node3D à chaque trame.\n"
"public override void _Process(double delta)\n"
"{\n"
"\tBase = Base.Rotated(Vector3.Up, Mathf.Tau * (float)delta)\n"
"\t\t\t.Rotated(Vector3.Right, Mathf.Tau * (float)delta)\n"
"\t\t\t.Orthonormalized();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of this basis rotated around the given [param axis] by the "
"given [param angle] (in radians).\n"
"The [param axis] must be a normalized vector (see [method "
"Vector3.normalized]). If [param angle] is positive, the basis is rotated "
"counter-clockwise around the axis.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis.IDENTITY\n"
"var angle = TAU / 2\n"
"\n"
"my_basis = my_basis.rotated(Vector3.UP, angle)    # Rotate around the up axis "
"(yaw).\n"
"my_basis = my_basis.rotated(Vector3.RIGHT, angle) # Rotate around the right "
"axis (pitch).\n"
"my_basis = my_basis.rotated(Vector3.BACK, angle)  # Rotate around the back "
"axis (roll).\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = Basis.Identity;\n"
"var angle = Mathf.Tau / 2.0f;\n"
"\n"
"myBasis = myBasis.Rotated(Vector3.Up, angle);    // Rotate around the up axis "
"(yaw).\n"
"myBasis = myBasis.Rotated(Vector3.Right, angle); // Rotate around the right "
"axis (pitch).\n"
"myBasis = myBasis.Rotated(Vector3.Back, angle);  // Rotate around the back "
"axis (roll).\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une copie de cette base tournée autour de l'axe [param axis] donné de "
"l'angle [param angle] donné (en radians).\n"
"L'axe [param axis] doit être un vecteur normalisé (voir [method "
"Vector3.normalized]). Si [param angle] est positif, la base est orientée dans "
"le sens horaire inverse autour de l'axe.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ma_base = Basis.IDENTITY\n"
"var angle = TAU / 2\n"
"\n"
"ma_base = ma_base.rotated(Vector3.UP, angle) # Tourner autour de l'axe du "
"haut (Roulis).\n"
"ma_base = ma_base.rotated(Vector3.RIGHT, angle) # Tourner autour de l'axe de "
"droite (Tangage).\n"
"ma_base = ma_base.rotated(Vector3.BACK, angle) # Tourner autour de l'axe "
"arrière (Lacet).\n"
"[/gdscript]\n"
"[csharp]\n"
"var maBase = Basis.Identity;\n"
"var angle = Mathf.Tau / 2.0f;\n"
"\n"
"maBase = maBase.Rotated(Vector3.Up, angle); // Tourner autour de l'axe du "
"haut (Roulis).\n"
"maBase = maBase.Rotated(Vector3.Droit, angle); // Tourner autour de l'axe de "
"droite (Tangage).\n"
"maBase = maBase.Rotated(Vector3.Back, angle); // Tourner autour de l'axe "
"arrière (Lacet).\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns this basis with each axis's components scaled by the given [param "
"scale]'s components.\n"
"The basis matrix's rows are multiplied by [param scale]'s components. This "
"operation is a global scale (relative to the parent).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(1, 1, 1),\n"
"\tVector3(2, 2, 2),\n"
"\tVector3(3, 3, 3)\n"
")\n"
"my_basis = my_basis.scaled(Vector3(0, 2, -2))\n"
"\n"
"print(my_basis.x) # Prints (0.0, 2.0, -2.0)\n"
"print(my_basis.y) # Prints (0.0, 4.0, -4.0)\n"
"print(my_basis.z) # Prints (0.0, 6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tnew Vector3(1.0f, 1.0f, 1.0f),\n"
"\tnew Vector3(2.0f, 2.0f, 2.0f),\n"
"\tnew Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"myBasis = myBasis.Scaled(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (0, 2, -2)\n"
"GD.Print(myBasis.Y); // Prints (0, 4, -4)\n"
"GD.Print(myBasis.Z); // Prints (0, 6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie cette base avec les composantes de chaque axe redimensionnés par les "
"composantes de [param scale].\n"
"Les lignes de la matrice de la base sont multipliées par les composants de "
"[param scale]. Cette opération est une échelle globale (relative au parent).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ma_base = Basis(\n"
"Vector3(1, 1, 1),\n"
"Vector3(2, 2, 2),\n"
"Vector3(3, 3, 3)\n"
")\n"
"ma_base = ma_base.scaled(Vector3(0, 2, -2))\n"
"\n"
"print(ma_base.x) # Affiche (0.0, 2.0, -2.0)\n"
"print(ma_base.y) # Affiche (0.0, 4.0, -4.0)\n"
"print(ma_base.z) # Affiche (0.0, 6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var maBase = new Basis(\n"
"new Vector3(1.0f, 1.0f, 1.0f),\n"
"new Vector3(2.0f, 2.0f, 2.0f),\n"
"new Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"maBase = maBase.Scaled(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(maBase.X); // Affiche (0, 2, -2)\n"
"GD.Print(maBase.Y); // Affiche (0, 4, -4)\n"
"GD.Print(maBase.Z); // Affiche (0, 6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns this basis with each axis scaled by the corresponding component in "
"the given [param scale].\n"
"The basis matrix's columns are multiplied by [param scale]'s components. This "
"operation is a local scale (relative to self).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"    Vector3(1, 1, 1),\n"
"    Vector3(2, 2, 2),\n"
"    Vector3(3, 3, 3)\n"
")\n"
"my_basis = my_basis.scaled_local(Vector3(0, 2, -2))\n"
"\n"
"print(my_basis.x) # Prints (0.0, 0.0, 0.0)\n"
"print(my_basis.y) # Prints (4.0, 4.0, 4.0)\n"
"print(my_basis.z) # Prints (-6.0, -6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"    new Vector3(1.0f, 1.0f, 1.0f),\n"
"    new Vector3(2.0f, 2.0f, 2.0f),\n"
"    new Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"myBasis = myBasis.ScaledLocal(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (0, 0, 0)\n"
"GD.Print(myBasis.Y); // Prints (4, 4, 4)\n"
"GD.Print(myBasis.Z); // Prints (-6, -6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie cette base avec les composantes de chaque axe redimensionnées par les "
"composantes correspondantes de l'échelle [param scale] donnée.\n"
"Les colonnes de la matrice de la base sont multipliées par les composantes de "
"[param scale]. Cette opération est une échelle locale (relative à elle "
"même).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ma_base = Basis(\n"
"    Vector3(1, 1, 1),\n"
"    Vector3(2, 2, 2),\n"
"    Vector3(3, 3, 3)\n"
")\n"
"ma_base = ma_base.scaled_local(Vector3(0, 2, -2))\n"
"\n"
"print(ma_base.x) # Affiche (0.0, 0.0, 0.0)\n"
"print(ma_base.y) # Affiche (4.0, 4.0, 4.0)\n"
"print(ma_base.z) # Affiche (-6.0, -6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var maBase = new Basis(\n"
"    new Vector3(1.0f, 1.0f, 1.0f),\n"
"    new Vector3(2.0f, 2.0f, 2.0f),\n"
"    new Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"maBase = maBase.ScaledLocal(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(maBase.X); // Affiche (0, 0, 0)\n"
"GD.Print(maBase.Y); // Affiche (4, 4, 4)\n"
"GD.Print(maBase.Z); // Affiche (-6, -6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Performs a spherical-linear interpolation with the [param to] basis, given a "
"[param weight]. Both this basis and [param to] should represent a rotation.\n"
"[b]Example:[/b] Smoothly rotate a [Node3D] to the target basis over time, "
"with a [Tween]:\n"
"[codeblock]\n"
"var start_basis = Basis.IDENTITY\n"
"var target_basis = Basis.IDENTITY.rotated(Vector3.UP, TAU / 2)\n"
"\n"
"func _ready():\n"
"\tcreate_tween().tween_method(interpolate, 0.0, 1.0, "
"5.0).set_trans(Tween.TRANS_EXPO)\n"
"\n"
"func interpolate(weight):\n"
"\tbasis = start_basis.slerp(target_basis, weight)\n"
"[/codeblock]"
msgstr ""
"Effectue une interpolation sphérique-linéaire avec la base [param to], selon "
"un poids [param weight] donné. Cette base et [param to] devraient tous deux "
"représenter une rotation.\n"
"[b]Exemple :[/b] Tourner de manière lisse un [Node3D] vers la base cible au "
"fil du temps, avec un [Tween] :\n"
"[codeblock]\n"
"var base_depart = Basis.IDENTITY\n"
"var base_cible = Basis.IDENTITY.rotated(Vector3.UP, TAU / 2)\n"
"\n"
"func _ready():\n"
"\tcreate_tween().tween_method(interpoler, 0.0, 1.0, "
"5.0).set_trans(Tween.TRANS_EXPO)\n"
"\n"
"func interpoler(poids):\n"
"\tbase = base_depart.slerp(base_cible, poids)\n"
"[/codeblock]"

msgid ""
"Returns the transposed dot product between [param with] and the [member x] "
"axis (see [method transposed]).\n"
"This is equivalent to [code]basis.x.dot(vector)[/code]."
msgstr ""
"Renvoie le produit scalaire transposé entre [param with] et l'axe [member x] "
"(voir [method transposed]).\n"
"Ceci est équivalent à [code]base.x.dot(vecteur)[/code]."

msgid ""
"Returns the transposed dot product between [param with] and the [member y] "
"axis (see [method transposed]).\n"
"This is equivalent to [code]basis.y.dot(vector)[/code]."
msgstr ""
"Renvoie le produit scalaire transposé entre [param with] et l'axe [member y] "
"(voir [method transposed]).\n"
"Ceci est équivalent à [code]base.y.dot(vecteur)[/code]."

msgid ""
"Returns the transposed dot product between [param with] and the [member z] "
"axis (see [method transposed]).\n"
"This is equivalent to [code]basis.z.dot(vector)[/code]."
msgstr ""
"Renvoie le produit scalaire transposé entre [param with] et l'axe [member z] "
"(voir [method transposed]).\n"
"Ceci est équivalent à [code]base.z.dot(vecteur)[/code]."

msgid ""
"Returns the transposed version of this basis. This turns the basis matrix's "
"columns into rows, and its rows into columns.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(1, 2, 3),\n"
"\tVector3(4, 5, 6),\n"
"\tVector3(7, 8, 9)\n"
")\n"
"my_basis = my_basis.transposed()\n"
"\n"
"print(my_basis.x) # Prints (1.0, 4.0, 7.0)\n"
"print(my_basis.y) # Prints (2.0, 5.0, 8.0)\n"
"print(my_basis.z) # Prints (3.0, 6.0, 9.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tnew Vector3(1.0f, 2.0f, 3.0f),\n"
"\tnew Vector3(4.0f, 5.0f, 6.0f),\n"
"\tnew Vector3(7.0f, 8.0f, 9.0f)\n"
");\n"
"myBasis = myBasis.Transposed();\n"
"\n"
"GD.Print(myBasis.X); // Prints (1, 4, 7)\n"
"GD.Print(myBasis.Y); // Prints (2, 5, 8)\n"
"GD.Print(myBasis.Z); // Prints (3, 6, 9)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la version transposée de cette base. Cela transforme les colonnes de "
"la matrice de base en lignes, et ses lignes en colonnes.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ma_base = Basis(\n"
"\tVector3(1, 2, 3),\n"
"\tVector3(4, 5, 6),\n"
"\tVector3(7, 8, 9)\n"
")\n"
"ma_base = ma_base.transposed()\n"
"\n"
"print(ma_base.x) # Affiche (1.0, 4.0, 7.0)\n"
"print(ma_base.y) # Affiche (2.0, 5.0, 8.0)\n"
"print(ma_base.z) # Affiche (3.0, 6.0, 9.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var maBase = new Basis(\n"
"\tnew Vector3(1.0f, 2.0f, 3.0f),\n"
"\tnew Vector3(4.0f, 5.0f, 6.0f),\n"
"\tnew Vector3(7.0f, 8.0f, 9.0f)\n"
");\n"
"maBase = maBase.Transposed();\n"
"\n"
"GD.Print(maBase.X); // Affiche (1, 4, 7)\n"
"GD.Print(maBase.Y); // Affiche (2, 5, 8)\n"
"GD.Print(maBase.Z); // Affiche (3, 6, 9)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The basis's X axis, and the column [code]0[/code] of the matrix.\n"
"On the identity basis, this vector points right ([constant Vector3.RIGHT])."
msgstr ""
"L'axe X de la base et la colonne [code]0[/code] de la matrice.\n"
"Sur la base identité, ce vecteur pointe vers la droite ([constant "
"Vector3.RIGHT])."

msgid ""
"The basis's Y axis, and the column [code]1[/code] of the matrix.\n"
"On the identity basis, this vector points up ([constant Vector3.UP])."
msgstr ""
"L'axe Y de la base et la colonne [code]1[/code] de la matrice.\n"
"Sur la base identité, ce vecteur pointe vers le haut ([constant Vector3.UP])."

msgid ""
"The basis's Z axis, and the column [code]2[/code] of the matrix.\n"
"On the identity basis, this vector points back ([constant Vector3.BACK])."
msgstr ""
"L'axe Z de la base et la colonne [code]2[/code] de la matrice.\n"
"Sur la base identité, ce vecteur pointe vers l'arrière ([constant "
"Vector3.BACK])."

msgid ""
"The identity [Basis]. This is an orthonormal basis with no rotation, no "
"shear, and a scale of [constant Vector3.ONE]. This also means that:\n"
"- The [member x] points right ([constant Vector3.RIGHT]);\n"
"- The [member y] points up ([constant Vector3.UP]);\n"
"- The [member z] points back ([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var basis = Basis.IDENTITY\n"
"print(\"| X | Y | Z\")\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.x, basis.y.x, basis.z.x])\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.y, basis.y.y, basis.z.y])\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.z, basis.y.z, basis.z.z])\n"
"# Prints:\n"
"# | X | Y | Z\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"# | 0 | 0 | 1\n"
"[/codeblock]\n"
"If a [Vector3] or another [Basis] is transformed (multiplied) by this "
"constant, no transformation occurs.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Basis] without any arguments. It can be used to make your code "
"clearer, and for consistency with C#."
msgstr ""
"La [Basis] identité. Il s'agit d'une base orthonormée sans rotation, sans "
"cisaillement, et d'une échelle de [constant Vector3.ONE]. Cela signifie "
"également que :\n"
"- Le [member x] pointe vers la droite ([constant Vector3.RIGHT]);\n"
"- Le [member y] pointe vers le haut ([constant Vector3.UP]);\n"
"- Le [member z] pointe vers l'arrière ([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var base = Basis.IDENTITY\n"
"print(\"| X | Y | Z\")\n"
"print(\"| %.f | %.f | %.f\" % [base.x.x, base.y.x, base.z.x])\n"
"print(\"| %.f | %.f | %.f\" % [base.x.y, base.y.y, base.z.y])\n"
"print(\"| %.f | %.f | %.f\" % [base.x.z, base.y.z, base.z.z])\n"
"# Affiche :\n"
"# | X | Y | Z\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"# | 0 | 0 | 1\n"
"[/codeblock]\n"
"Si un [Vector3] ou une autre [Basis] est transformé (multiplié) par cette "
"constante, aucune transformation ne se produit.\n"
"[b]Note :[/b] En GDScript, cette constante est équivalente à la création d'un "
"[constructor Basis] sans aucun argument. Elle peut être utilisée pour rendre "
"votre code plus clair, et pour la cohérence avec le C#."

msgid ""
"When any basis is multiplied by [constant FLIP_X], it negates all components "
"of the [member x] axis (the X column).\n"
"When [constant FLIP_X] is multiplied by any basis, it negates the [member "
"Vector3.x] component of all axes (the X row)."
msgstr ""
"Lorsqu'une base est multipliée par [constant FLIP_X], cela inverse le signe "
"toutes les composantes de l'axe [member x] (la colonne X).\n"
"Lorsque [constant FLIP_X] est multiplié par n'importe quelle base, cela "
"inverse le signe de la composante [member Vector3.x] de tous les axes (la "
"ligne X)."

msgid ""
"When any basis is multiplied by [constant FLIP_Y], it negates all components "
"of the [member y] axis (the Y column).\n"
"When [constant FLIP_Y] is multiplied by any basis, it negates the [member "
"Vector3.y] component of all axes (the Y row)."
msgstr ""
"Lorsqu'une base est multipliée par [constant FLIP_Y], cela inverse le signe "
"toutes les composantes de l'axe [member y] (la colonne Y).\n"
"Lorsque [constant FLIP_Y] est multiplié par n'importe quelle base, cela "
"inverse le signe de la composante [member Vector3.y] de tous les axes (la "
"ligne Y)."

msgid ""
"When any basis is multiplied by [constant FLIP_Z], it negates all components "
"of the [member z] axis (the Z column).\n"
"When [constant FLIP_Z] is multiplied by any basis, it negates the [member "
"Vector3.z] component of all axes (the Z row)."
msgstr ""
"Lorsqu'une base est multipliée par [constant FLIP_Z], cela inverse le signe "
"toutes les composantes de l'axe [member z] (la colonne Z).\n"
"Lorsque [constant FLIP_Z] est multiplié par n'importe quelle base, cela "
"inverse le signe de la composante [member Vector3.z] de tous les axes (la "
"ligne Z)."

msgid ""
"Returns [code]true[/code] if the components of both [Basis] matrices are not "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les composantes des deux matrices [Basis] ne "
"sont pas égales.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid ""
"Transforms (multiplies) the [param right] basis by this basis.\n"
"This is the operation performed between parent and child [Node3D]s."
msgstr ""
"Transforme (multiplie) la base [param right] par cette base.\n"
"C'est l'opération effectuée entre les [Node3D] parent et enfant."

msgid ""
"Transforms (multiplies) the [param right] vector by this basis, returning a "
"[Vector3].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Basis that swaps the X/Z axes and doubles the scale.\n"
"var my_basis = Basis(Vector3(0, 2, 0), Vector3(2, 0, 0), Vector3(0, 0, 2))\n"
"print(my_basis * Vector3(1, 2, 3)) # Prints (4.0, 2.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Basis that swaps the X/Z axes and doubles the scale.\n"
"var myBasis = new Basis(new Vector3(0, 2, 0), new Vector3(2, 0, 0), new "
"Vector3(0, 0, 2));\n"
"GD.Print(myBasis * new Vector3(1, 2, 3)); // Prints (4, 2, 6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Transforme (multiplie) le vecteur [param right] par cette base, renvoyant un "
"[Vector3].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Basis qui échange les axes X/Z et double l'échelle.\n"
"var ma_base = Basis(Vector3(0, 2, 0), Vector3(2, 0, 0), Vector3(0, 0, 2))\n"
"print(ma_base * Vector3(1, 2, 3)) # Affiche (4.0, 2.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Basis qui échange les axes X/Z et double l'échelle.\n"
"var maBase = new Basis(new Vector3(0, 2, 0), new Vector3(2, 0, 0), new "
"Vector3(0, 0, 2));\n"
"GD.Print(maBase * new Vector3(1, 2, 3)); // Affiche (4, 2, 6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Multiplies all components of the [Basis] by the given [float]. This affects "
"the basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Multiplie toutes les composantes de la [Basis] par le [float] donné. Cela "
"affecte uniformément l'échelle de la base, redimensionnant les 3 axes par la "
"valeur [param right]."

msgid ""
"Multiplies all components of the [Basis] by the given [int]. This affects the "
"basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Multiplie toutes les composantes de la [Basis] par le [int] donné. Cela "
"affecte uniformément l'échelle de la base, redimensionnant les 3 axes par la "
"valeur [param right]."

msgid ""
"Divides all components of the [Basis] by the given [float]. This affects the "
"basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Divise toutes les composantes de la [Basis] par le [float] donné. Cela "
"affecte uniformément l'échelle de la base, redimensionnant les 3 axes par la "
"valeur [param right]."

msgid ""
"Divides all components of the [Basis] by the given [int]. This affects the "
"basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Divise toutes les composantes de la [Basis] par le [int] donné. Cela affecte "
"uniformément l'échelle de la base, redimensionnant les 3 axes par la valeur "
"[param right]."

msgid ""
"Returns [code]true[/code] if the components of both [Basis] matrices are "
"exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les composantes des deux matrices [Basis] sont "
"exactement égales.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid ""
"Accesses each axis (column) of this basis by their index. Index [code]0[/"
"code] is the same as [member x], index [code]1[/code] is the same as [member "
"y], and index [code]2[/code] is the same as [member z].\n"
"[b]Note:[/b] In C++, this operator accesses the rows of the basis matrix, "
"[i]not[/i] the columns. For the same behavior as scripting languages, use the "
"[code]set_column[/code] and [code]get_column[/code] methods."
msgstr ""
"Accède à chaque axe (colonne) de cette base par leur index. L'index [code]0[/"
"code] est comme [member x], l'index [code]1[/code] est comme [member y], et "
"l'index [code]2[/code] est le même que [member z].\n"
"[b]Note :[/b] En C++, cet opérateur accède aux lignes de la matrice de la "
"base, [i]pas[/i] les colonnes. Pour le même comportement que les languages de "
"script, utilisez les méthodes [code]set_column[/code] et [code]get_column[/"
"code]."

msgid "Boolean matrix."
msgstr "Matrice booléenne."

msgid ""
"A two-dimensional array of boolean values, can be used to efficiently store a "
"binary matrix (every matrix element takes only one bit) and query the values "
"using natural cartesian coordinates."
msgstr ""
"Un tableau bidimensionnel de valeurs booléennes, peut être utilisé pour "
"stocker efficacement une matrice binaire (chaque élément matrice ne contient "
"qu'un bit) et faire des requêtes sur ces valeurs à l'aide de coordonnées "
"naturelles cartésiennes."

msgid ""
"Returns an image of the same size as the bitmap and with an [enum "
"Image.Format] of type [constant Image.FORMAT_L8]. [code]true[/code] bits of "
"the bitmap are being converted into white pixels, and [code]false[/code] bits "
"into black."
msgstr ""
"Renvoie une image de la même taille que la bitmap et avec le format [enum "
"Image.Format] de type [constant Image.FORMAT_L8]. Les bits [code]true[/code] "
"de la bitmap seront converties en pixels blancs, et les bits [code]false[/"
"code] en noir."

msgid ""
"Creates a bitmap with the specified size, filled with [code]false[/code]."
msgstr ""
"Crée un bitmap de la taille spécifiée, rempli avec la valeur [code]false[/"
"code]."

msgid ""
"Creates a bitmap that matches the given image dimensions, every element of "
"the bitmap is set to [code]false[/code] if the alpha value of the image at "
"that position is equal to [param threshold] or less, and [code]true[/code] in "
"other case."
msgstr ""
"Crée une bitmap qui correspond aux dimensions de l'image donnée, chaque "
"élément de la bitmap sera défini à [code]false[/code] si la valeur alpha de "
"l'image à cette position est inférieure ou égale à [param threshold], et "
"[code]true[/code] sinon."

msgid "Returns bitmap's value at the specified position."
msgstr "Renvoie la valeur du bitmap à la position spécifiée."

msgid "Returns bitmap's dimensions."
msgstr "Renvoie les dimensions de bitmap."

msgid "Returns the number of bitmap elements that are set to [code]true[/code]."
msgstr ""
"Renvoie le nombre d'éléments de la bitmap qui sont définis à [code]true[/"
"code]."

msgid ""
"Applies morphological dilation or erosion to the bitmap. If [param pixels] is "
"positive, dilation is applied to the bitmap. If [param pixels] is negative, "
"erosion is applied to the bitmap. [param rect] defines the area where the "
"morphological operation is applied. Pixels located outside the [param rect] "
"are unaffected by [method grow_mask]."
msgstr ""
"Applique une dilatation ou une érosion morphologique à la bitmap. Si [param "
"pixels] est positif, une dilatation est appliquée à la bitmap. Si [param "
"pixels] est négatif, une érosion est appliquée à la bitmap. [param rect] "
"définit la zone où l'opération morphologique est appliquée. Les pixels situés "
"à l'extérieur du [param rect] ne sont pas affectés par [method grow_mask]."

msgid ""
"Creates an [Array] of polygons covering a rectangular portion of the bitmap. "
"It uses a marching squares algorithm, followed by Ramer-Douglas-Peucker (RDP) "
"reduction of the number of vertices. Each polygon is described as a "
"[PackedVector2Array] of its vertices.\n"
"To get polygons covering the whole bitmap, pass:\n"
"[codeblock]\n"
"Rect2(Vector2(), get_size())\n"
"[/codeblock]\n"
"[param epsilon] is passed to RDP to control how accurately the polygons cover "
"the bitmap: a lower [param epsilon] corresponds to more points in the "
"polygons."
msgstr ""
"Crée un [Array] de polygones couvrant une partie rectangulaire de la bitmap. "
"Utilise un algorithme Marching Square, suivi de la réduction du nombre de "
"sommets de Ramer-Douglas-Peucker (RDP). Chaque polygone est décrit en tant "
"que [PackedVector2Array] de ses sommets.\n"
"Pour obtenir des polygones couvrant toute la bitmap, utilisez comme "
"argument :\n"
"[codeblock]\n"
"Rect2(Vector2(), get_size())\n"
"[/codeblock]\n"
"[param epsilon] est passé à RDP pour contrôler la précision des polygones "
"recouvrant la bitmap : un [param epsilon] inférieur correspond à plus de "
"points dans les polygones."

msgid "Resizes the image to [param new_size]."
msgstr "Redimensionne l'image à la nouvelle taille [param new_size]."

msgid ""
"Sets the bitmap's element at the specified position, to the specified value."
msgstr ""
"Définit l'élément du bitmap à la position donnée, avec la valeur spécifiée."

msgid "Sets a rectangular portion of the bitmap to the specified value."
msgstr "Définit une valeur spécifique pour une portion rectangulaire du bitmap."

msgid "A joint used with [Skeleton2D] to control and animate other nodes."
msgstr ""
"Une liaison utilisée avec un [Skeleton2D] pour contrôler et animer d'autres "
"nœuds."

msgid ""
"A hierarchy of [Bone2D]s can be bound to a [Skeleton2D] to control and "
"animate other [Node2D] nodes.\n"
"You can use [Bone2D] and [Skeleton2D] nodes to animate 2D meshes created with "
"the [Polygon2D] UV editor.\n"
"Each bone has a [member rest] transform that you can reset to with [method "
"apply_rest]. These rest poses are relative to the bone's parent.\n"
"If in the editor, you can set the rest pose of an entire skeleton using a "
"menu option, from the code, you need to iterate over the bones to set their "
"individual rest poses."
msgstr ""
"Une hiérarchie de [Bone2D]s peut être liée à un [Skeleton2D] pour contrôler "
"et animer d'autres nœuds [Node2D].\n"
"Vous pouvez utiliser les nœuds [Bone2D] et [Skeleton2D] pour animer les "
"maillages 2D créées avec l'éditeur UV de [Polygon2D].\n"
"Chaque os a une transformation de repos [member rest] que vous pouvez "
"réinitialiser avec [method apply_rest]. Ces poses de repos sont par rapport "
"au parent de l'os.\n"
"Si dans l'éditeur, vous pouvez définir la pose de repos d'un squelette entier "
"en utilisant une option de menu, à partir du code, vous devez itérer sur les "
"os pour définir leurs poses de repos individuelles."

msgid ""
"Resets the bone to the rest pose. This is equivalent to setting [member "
"Node2D.transform] to [member rest]."
msgstr ""
"Réinitialise l'os à la pose du repos. Cela équivaut à définir [member "
"Node2D.transform] à [member rest]."

msgid ""
"Returns whether this [Bone2D] is going to autocalculate its length and bone "
"angle using its first [Bone2D] child node, if one exists. If there are no "
"[Bone2D] children, then it cannot autocalculate these values and will print a "
"warning."
msgstr ""
"Renvoie si ce [Bone2D] va calculer automatiquement sa longueur et son angle "
"d'os en utilisant son premier nœud [Bone2D] enfant, s'il existe. S'il n'y a "
"pas d'enfants [Bone2D], il ne peut pas calculer automatiquement ces valeurs "
"et affichera un avertissement."

msgid ""
"Returns the angle of the bone in the [Bone2D].\n"
"[b]Note:[/b] This is different from the [Bone2D]'s rotation. The bone's angle "
"is the rotation of the bone shown by the gizmo, which is unaffected by the "
"[Bone2D]'s [member Node2D.transform]."
msgstr ""
"Renvoie l'angle de l'os dans le [Bone2D].\n"
"[b]Note :[/b] C'est différent de la rotation du [Bone2D]. L'angle de l'os est "
"la rotation de l'os affichée par le manipulateur, qui n'est pas affectée par "
"la [member Node2D.transform] du [Bone2D]."

msgid ""
"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
msgstr "Renvoie l'index du nœud dans le squelette entier. Voir [Skeleton2D]."

msgid "Returns the length of the bone in the [Bone2D] node."
msgstr "Renvoie la longueur de l'os dans le nœud [Bone2D]."

msgid ""
"Returns the node's [member rest] [Transform2D] if it doesn't have a parent, "
"or its rest pose relative to its parent."
msgstr ""
"Renvoie la [Transform2D] au repos ([member rest]) s'il n'a pas de parent, ou "
"si sa pose de repos relative à son parent."

msgid ""
"When set to [code]true[/code], the [Bone2D] node will attempt to "
"automatically calculate the bone angle and length using the first child "
"[Bone2D] node, if one exists. If none exist, the [Bone2D] cannot "
"automatically calculate these values and will print a warning."
msgstr ""
"Lorsque défini à [code]true[/code], le nœud [Bone2D] tentera de calculer "
"automatiquement l'angle de l'os et la longueur en utilisant le premier noeud "
"[Bone2D] enfant, s'il existe. Si aucun n'existe, le [Bone2D] ne peut pas "
"calculer automatiquement ces valeurs et affichera un avertissement."

msgid ""
"Sets the bone angle for the [Bone2D]. This is typically set to the rotation "
"from the [Bone2D] to a child [Bone2D] node.\n"
"[b]Note:[/b] This is different from the [Bone2D]'s rotation. The bone's angle "
"is the rotation of the bone shown by the gizmo, which is unaffected by the "
"[Bone2D]'s [member Node2D.transform]."
msgstr ""
"Définit l'angle de l'os pour le [Bone2D]. Il s'agit généralement de la "
"rotation du [Bone2D] vers un nœud [Bone2D] enfant.\n"
"[b]Note :[/b] C'est différent de la rotation du [Bone2D]. L'angle de l'os est "
"la rotation de l'os affichée par le manipulateur, qui n'est pas affectée par "
"la [member Node2D.transform] du [Bone2D]."

msgid "Sets the length of the bone in the [Bone2D]."
msgstr "Définit la longueur de l'os dans le [Bone2D]."

msgid ""
"Rest transform of the bone. You can reset the node's transforms to this value "
"using [method apply_rest]."
msgstr ""
"Le transformation de repos de l'os. Vous pouvez rétablir la transformation du "
"nœud à cette valeur avec [method apply_rest]."

msgid ""
"А node that dynamically copies or overrides the 3D transform of a bone in its "
"parent [Skeleton3D]."
msgstr ""
"Un nœud qui copie ou redéfinit dynamiquement la transformation 3D d'un os de "
"son [Skeleton3D] parent."

msgid ""
"This node selects a bone in a [Skeleton3D] and attaches to it. This means "
"that the [BoneAttachment3D] node will either dynamically copy or override the "
"3D transform of the selected bone."
msgstr ""
"Ce nœud sélectionne un os dans un [Skeleton3D] et s'y attache. Cela signifie "
"que le nœud [BoneAttachment3D] copiera dynamiquement ou redéfinira la "
"transformation 3D de l'os sélectionné."

msgid ""
"Returns the parent or external [Skeleton3D] node if it exists, otherwise "
"returns [code]null[/code]."
msgstr ""
"Renvoie le nœud [Skeleton3D] parent ou externe s'il existe, sinon, renvoie "
"[code]null[/code]."

msgid ""
"A function that is called automatically when the [Skeleton3D] is updated. "
"This function is where the [BoneAttachment3D] node updates its position so it "
"is correctly bound when it is [i]not[/i] set to override the bone pose."
msgstr ""
"Une fonction qui est appelée automatiquement lorsque le [Skeleton3D] est mis "
"à jour. Cette fonction est l'endroit où le nœud [BoneAttachment3D] met à jour "
"sa position de sorte à ce qu'il soit correctement lié quand il n'est [i]pas[/"
"i] réglé pour redéfinir la pose de l'os."

msgid "The index of the attached bone."
msgstr "L'index de l’os attaché."

msgid "The name of the attached bone."
msgstr "Le nom de l’os attaché."

msgid "The [NodePath] to the external [Skeleton3D] node."
msgstr "Le [NodePath] vers le nœud [Skeleton3D] externe."

msgid ""
"Whether the [BoneAttachment3D] node will override the bone pose of the bone "
"it is attached to. When set to [code]true[/code], the [BoneAttachment3D] node "
"can change the pose of the bone. When set to [code]false[/code], the "
"[BoneAttachment3D] will always be set to the bone's transform.\n"
"[b]Note:[/b] This override performs interruptively in the skeleton update "
"process using signals due to the old design. It may cause unintended behavior "
"when used at the same time with [SkeletonModifier3D]."
msgstr ""
"Définit si le nœud [BoneAttachment3D] va redéfinir la pose d'os de l'os "
"auquel il est attaché. Lorsque défini à [code]true[/code], le nœud "
"[BoneAttachment3D] peut modifier la pose de l'os. Lorsque défini à "
"[code]false[/code], le [BoneAttachment3D] sera toujours défini à la "
"transformation de l'os.\n"
"[b]Note :[/b] Cette redéfinition fonctionne de façon interruptive dans le "
"processus de mise à jour du squelette utilisant des signaux en raison de "
"l'ancien design. Cela peut causer un comportement indésirable lorsqu'elle est "
"utilisée en même temps que [SkeletonModifier3D]."

msgid ""
"Whether the [BoneAttachment3D] node will use an external [Skeleton3D] node "
"rather than attempting to use its parent node as the [Skeleton3D]. When set "
"to [code]true[/code], the [BoneAttachment3D] node will use the external "
"[Skeleton3D] node set in [member external_skeleton]."
msgstr ""
"Définit si le nœud [BoneAttachment3D] utilise un nœud [Skeleton3D] externe "
"plutôt que de tenter d'utiliser son nœud parent comme le [Skeleton3D]. "
"Lorsque défini à [code]true[/code], le nœud [BoneAttachment3D] utilisera le "
"nœud [Skeleton3D] externe défini dans [member external_skeleton]."

msgid "A node that may modify Skeleton3D's bone with associating the two bones."
msgstr "Un nœud qui peut modifier un os d'un Skeleton3D en associant deux os."

msgid ""
"Base class of [SkeletonModifier3D] that modifies the bone set in [method "
"set_apply_bone] based on the transform of the bone retrieved by [method "
"get_reference_bone]."
msgstr ""
"Classe de base de [SkeletonModifier3D] qui modifie l'os défini dans [method "
"set_apply_bone] selon la transformation de l'os récupéré par [method "
"get_reference_bone]."

msgid "Clear all settings."
msgstr "Efface tous les paramètres."

msgid "Returns the apply amount of the setting at [param index]."
msgstr "Renvoie le montant d'application du paramètre à l'index [param index]."

msgid ""
"Returns the apply bone of the setting at [param index]. This bone will be "
"modified."
msgstr ""
"Renvoie l'os d'application du paramètre à l'index [param index]. Cet os sera "
"modifié."

msgid ""
"Returns the apply bone name of the setting at [param index]. This bone will "
"be modified."
msgstr ""
"Renvoie le nom de l'os d'application du paramètre à l'index [param index]. "
"Cet os sera modifié."

msgid ""
"Returns the reference bone of the setting at [param index].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Renvoie l'os de référence du paramètre à l'index[param index].\n"
"Cet os sera uniquement référencé et non modifié par ce modificateur."

msgid ""
"Returns the reference bone name of the setting at [param index].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Renvoie le nom de l'os de référence du paramètre à l'index [param index].\n"
"Cet os sera uniquement référencé et non modifié par ce modificateur."

msgid "Returns the number of settings in the modifier."
msgstr "Renvoie le nombre de paramètres dans le modificateur."

msgid "Sets the apply amount of the setting at [param index] to [param amount]."
msgstr ""
"Définit le montant d'application du paramètre à l'index [param index] au "
"montant [param amount]."

msgid ""
"Sets the apply bone of the setting at [param index] to [param bone]. This "
"bone will be modified."
msgstr ""
"Définit l'os d'application du paramètre à l'index [param index] à l'os [param "
"bone]. Cet os sera modifié."

msgid ""
"Sets the apply bone of the setting at [param index] to [param bone_name]. "
"This bone will be modified."
msgstr ""
"Définit l'os d'application du paramètre à l'index [param index] à l'os ayant "
"pour nom [param bone_name]. Cet os sera modifié."

msgid ""
"Sets the reference bone of the setting at [param index] to [param bone].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Définit l'os de référence du paramètre à l'index [param index] à l'os [param "
"bone].\n"
"Cet os sera uniquement référencé et non modifié par ce modificateur."

msgid ""
"Sets the reference bone of the setting at [param index] to [param "
"bone_name].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Définit l'os de référence du paramètre à l'index [param index] à l'os ayant "
"pour nom [param bone_name].\n"
"Cet os sera uniquement référencé et non modifié par ce modificateur."

msgid "Sets the number of settings in the modifier."
msgstr "Définit le nombre de paramètres dans le modificateur."

msgid ""
"Describes a mapping of bone names for retargeting [Skeleton3D] into common "
"names defined by a [SkeletonProfile]."
msgstr ""
"Décrit une association de noms d'os pour un [Skeleton3D] re-ciblé en noms "
"communs définis par un [SkeletonProfile]."

msgid ""
"This class contains a dictionary that uses a list of bone names in "
"[SkeletonProfile] as key names.\n"
"By assigning the actual [Skeleton3D] bone name as the key value, it maps the "
"[Skeleton3D] to the [SkeletonProfile]."
msgstr ""
"Cette classe contient un dictionnaire qui utilise une liste de noms d'os dans "
"un [SkeletonProfile] comme nom de clé.\n"
"En assignant le nom d'os du [Skeleton3D] réel comme valeur de clé, il associe "
"le [Skeleton3D] au [SkeletonProfile]."

msgid "Retargeting 3D Skeletons"
msgstr "Re-ciblage des squelettes 3D"

msgid ""
"Returns a profile bone name having [param skeleton_bone_name]. If not found, "
"an empty [StringName] will be returned.\n"
"In the retargeting process, the returned bone name is the bone name of the "
"target skeleton."
msgstr ""
"Renvoie un nom d'os du profil ayant comme nom de squelette [param "
"skeleton_bone_name]. S'il n'est pas trouvé, un [StringName] vide sera "
"renvoyé.\n"
"Dans le processus de re-ciblage, le nom de l'os renvoyé est le nom de l'os du "
"squelette cible."

msgid ""
"Returns a skeleton bone name is mapped to [param profile_bone_name].\n"
"In the retargeting process, the returned bone name is the bone name of the "
"source skeleton."
msgstr ""
"Renvoie un nom d'os de squelette associé au nom d'os de profil [param "
"profile_bone_name].\n"
"Dans le processus de re-ciblage, le nom de l'os renvoyé est le nom de l'os du "
"squelette source."

msgid ""
"Maps a skeleton bone name to [param profile_bone_name].\n"
"In the retargeting process, the setting bone name is the bone name of the "
"source skeleton."
msgstr ""
"Associe un nom d'os de squelette au nom d'os de profil [param "
"profile_bone_name].\n"
"Dans le processus de re-ciblage, le nom de l'os défini est le nom de l'os du "
"squelette source."

msgid ""
"A [SkeletonProfile] of the mapping target. Key names in the [BoneMap] are "
"synchronized with it."
msgstr ""
"Un [SkeletonProfile] de la cible d'association. Les noms de clés dans le "
"[BoneMap] sont synchronisés avec lui."

msgid ""
"This signal is emitted when change the key value in the [BoneMap]. This is "
"used to validate mapping and to update [BoneMap] editor."
msgstr ""
"Ce signal est émis lorsque vous modifiez la valeur de clé dans la [BoneMap]. "
"Ceci est utilisé pour valider l'association et pour mettre à jour l'éditeur "
"[BoneMap]."

msgid ""
"This signal is emitted when change the value in profile or change the "
"reference of profile. This is used to update key names in the [BoneMap] and "
"to redraw the [BoneMap] editor."
msgstr ""
"Ce signal est émis lorsque la valeur du profil ou la référence du profil sont "
"modifiés. Ceci est utilisé pour mettre à jour les noms de clés dans la "
"[BoneMap] et pour redessiner l'éditeur [BoneMap]."

msgid "A built-in boolean type."
msgstr "Un type booléen intégré."

msgid ""
"The [bool] is a built-in [Variant] type that may only store one of two "
"values: [code]true[/code] or [code]false[/code]. You can imagine it as a "
"switch that can be either turned on or off, or as a binary digit that can "
"either be 1 or 0.\n"
"Booleans can be directly used in [code]if[/code], and other conditional "
"statements:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var can_shoot = true\n"
"if can_shoot:\n"
"\tlaunch_bullet()\n"
"[/gdscript]\n"
"[csharp]\n"
"bool canShoot = true;\n"
"if (canShoot)\n"
"{\n"
"\tLaunchBullet();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"All comparison operators return booleans ([code]==[/code], [code]>[/code], "
"[code]<=[/code], etc.). As such, it is not necessary to compare booleans "
"themselves. You do not need to add [code]== true[/code] or [code]== false[/"
"code].\n"
"Booleans can be combined with the logical operators [code]and[/code], "
"[code]or[/code], [code]not[/code] to create complex conditions:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if bullets > 0 and not is_reloading():\n"
"\tlaunch_bullet()\n"
"\n"
"if bullets == 0 or is_reloading():\n"
"\tplay_clack_sound()\n"
"[/gdscript]\n"
"[csharp]\n"
"if (bullets > 0 && !IsReloading())\n"
"{\n"
"\tLaunchBullet();\n"
"}\n"
"\n"
"if (bullets == 0 || IsReloading())\n"
"{\n"
"\tPlayClackSound();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In modern programming languages, logical operators are evaluated "
"in order. All remaining conditions are skipped if their result would have no "
"effect on the final value. This concept is known as [url=https://"
"en.wikipedia.org/wiki/Short-circuit_evaluation]short-circuit evaluation[/url] "
"and can be useful to avoid evaluating expensive conditions in some "
"performance-critical cases.\n"
"[b]Note:[/b] By convention, built-in methods and properties that return "
"booleans are usually defined as yes-no questions, single adjectives, or "
"similar ([method String.is_empty], [method Node.can_process], [member "
"Camera2D.enabled], etc.)."
msgstr ""
"Le booléen [bool] est un type [Variant] intégré qui ne peut stocker qu'une de "
"deux valeurs : [code]true[/code] ou [code]false[/code]. Vous pouvez "
"l'imaginer comme un interrupteur qui peut être allumé ou éteint, ou comme un "
"chiffre binaire qui peut être soit 1 ou 0.\n"
"Les booléens peuvent être utilisés directement dans [code]if[/code], et "
"d'autres instructions conditionnelles :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var peut_tirer= true\n"
"if peut_tirer:\n"
"\tlaunch_bullet()\n"
"[/gdscript]\n"
"[csharp]\n"
"bool peutTirer = true;\n"
"si (peutTirer)\n"
"{\n"
"TirerBalle();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Tous les opérateurs de comparaison renvoient des booléens ([code]===[/code], "
"[code])[/code], [code]<=[/code], etc.) Ainsi, il n'est pas nécessaire de "
"comparer les booléens eux-mêmes. Vous n'avez pas besoin d'ajouter [code]== "
"true[/code] ou [code]== false[/code].\n"
"Les booléens peuvent être combinés avec les opérateurs logiques [code]and[/"
"code], [code]or[/code], [code]not[/code] pour créer des conditions "
"complexes :\n"
"[codeblocks]\n"
"[gdscript]\n"
"if balles > 0 and not est_en_recharge():\n"
"\ttirer_balle()\n"
"\n"
"si balles == 0 ou est_en_recharge():\n"
"\tjouer_bruit_clac()\n"
"[/gdscript]\n"
"[csharp]\n"
"if (balles > 0 && !EstEnRecharge())\n"
"{\n"
"TirerBalle();\n"
"}\n"
"\n"
"if (balles == 0 || EstEnRecharge())\n"
"{\n"
"\tJouerBruitClac();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Dans les langues de programmation modernes, les opérateurs "
"logiques sont évalués dans l'ordre. Toutes les conditions restantes sont "
"ignorées si leur résultat n'aurait aucun effet sur la valeur finale. Ce "
"concept est connu sous le nom de [url=https://en.wikipedia.org/wiki/Short-"
"circuit_evaluation]évaluation de court-circuit[/url] et peut être utile pour "
"éviter d'évaluer des conditions coûteuses dans certains cas critiques pour la "
"performance.\n"
"[b]Note :[/b] Par convention, les méthodes et les propriétés intégrées qui "
"renvoient les booléens sont généralement définies comme des questions "
"fermées, des adjectifs simples, etc... ([method String.is_empty], [method "
"Node.can_process], [member Camera2D.enabled], etc...)."

msgid "Constructs a [bool] set to [code]false[/code]."
msgstr "Construit un [bool] défini à [code]false[/code]."

msgid "Constructs a [bool] as a copy of the given [bool]."
msgstr "Construit un [bool] comme copie du [bool] donné."

msgid ""
"Cast a [float] value to a boolean value. Returns [code]false[/code] if [param "
"from] is equal to [code]0.0[/code] (including [code]-0.0[/code]), and "
"[code]true[/code] for all other values (including [constant @GDScript.INF] "
"and [constant @GDScript.NAN])."
msgstr ""
"Cast une valeur [float] en valeur booléenne. Renvoie [code]false[/code] si "
"[param from] est égal à [code]0.0[/code] (y compris [code]-0.0[/code]), et "
"[code]true[/code] pour toutes les autres valeurs (y compris [constant "
"@GDScript.INF] et [constant @GDScript.NAN])."

msgid ""
"Cast an [int] value to a boolean value. Returns [code]false[/code] if [param "
"from] is equal to [code]0[/code], and [code]true[/code] for all other values."
msgstr ""
"Cast une valeur [int] en valeur booléenne. Renvoie [code]false[/code] si "
"[param from] est égal à [code]0.0[/code], et [code]true[/code] pour toutes "
"les autres valeurs."

msgid ""
"Returns [code]true[/code] if the two booleans are not equal. That is, one is "
"[code]true[/code] and the other is [code]false[/code]. This operation can be "
"seen as a logical XOR."
msgstr ""
"Renvoie [code]true[/code] si les booléens ne sont pas égaux. C'est à dire, "
"l'un vaut [code]true[/code] et l'autre vaut [code]false[/code]. Cette "
"opération peut être vue comme un XOR logique."

msgid ""
"Returns [code]true[/code] if the left operand is [code]false[/code] and the "
"right operand is [code]true[/code]."
msgstr ""
"Renvoie [code]true[/code] si l'opérande de gauche vaut [code]false[/code] et "
"l'opérande de droite vaut [code]true[/code]."

msgid ""
"Returns [code]true[/code] if the two booleans are equal. That is, both are "
"[code]true[/code] or both are [code]false[/code]. This operation can be seen "
"as a logical EQ or XNOR."
msgstr ""
"Renvoie [code]true[/code] si les booléens sont égaux. C'est à dire, les deux "
"valent [code]true[/code] et les deux valent [code]false[/code]. Cette "
"opération peut être vue comme un EQ ou XNOR logique."

msgid ""
"Returns [code]true[/code] if the left operand is [code]true[/code] and the "
"right operand is [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si l'opérande de gauche vaut [code]true[/code] et "
"l'opérande de droite vaut [code]false[/code]."

msgid "A container that arranges its child controls horizontally or vertically."
msgstr ""
"Un conteneur qui arrange ses contrôles enfants horizontalement ou "
"verticalement."

msgid ""
"A container that arranges its child controls horizontally or vertically, "
"rearranging them automatically when their minimum size changes."
msgstr ""
"Un conteneur qui arrange ses contrôles enfants horizontalement ou "
"verticalement, et les ré-arrange automatiquement lorsque leur taille minimale "
"change."

msgid ""
"Adds a [Control] node to the box as a spacer. If [param begin] is [code]true[/"
"code], it will insert the [Control] node in front of all other children."
msgstr ""
"Ajoute un nœud [Control] à la boîte comme espaceur. Si [param begin] vaut "
"[code]true[/code], insérera le nœud [Control] devant tous les autres enfants."

msgid ""
"The alignment of the container's children (must be one of [constant "
"ALIGNMENT_BEGIN], [constant ALIGNMENT_CENTER], or [constant ALIGNMENT_END])."
msgstr ""
"L'alignement des enfants du conteneur (doit être l'une des constantes "
"[constant ALIGNMENT_BEGIN], [constant ALIGNMENT_CENTER], ou [constant "
"ALIGNMENT_END])."

msgid ""
"If [code]true[/code], the [BoxContainer] will arrange its children "
"vertically, rather than horizontally.\n"
"Can't be changed when using [HBoxContainer] and [VBoxContainer]."
msgstr ""
"Si [code]true[/code], [BoxContainer] arrangera ses enfants verticalement, "
"plutôt que horizontalement.\n"
"Ne peut être changé lors de l'utilisation de [HBoxContainer] et "
"[VBoxContainer]."

msgid ""
"The child controls will be arranged at the beginning of the container, i.e. "
"top if orientation is vertical, left if orientation is horizontal (right for "
"RTL layout)."
msgstr ""
"Les contrôles enfants seront arrangés au début du conteneur, c'est-à-dire en "
"haut si l'orientation est verticale, à gauche si l'orientation est "
"horizontale (à droite pour la mise en page droite-à-gauche)."

msgid "The child controls will be centered in the container."
msgstr "Les contrôles enfants seront centrés dans le conteneur."

msgid ""
"The child controls will be arranged at the end of the container, i.e. bottom "
"if orientation is vertical, right if orientation is horizontal (left for RTL "
"layout)."
msgstr ""
"Les contrôles enfants seront arrangés à la fin du conteneur, c'est-à-dire en "
"bas si l'orientation est verticale, à droite si l'orientation est horizontale "
"(à gauche pour la mise en page droite-à-gauche)."

msgid "The space between the [BoxContainer]'s elements, in pixels."
msgstr "L'espace entre les éléments du [BoxContainer], en pixels."

msgid "Generate an axis-aligned box [PrimitiveMesh]."
msgstr "Génère un [PrimitiveMesh] de boîte alignée sur les axes."

msgid ""
"Generate an axis-aligned box [PrimitiveMesh].\n"
"The box's UV layout is arranged in a 3×2 layout that allows texturing each "
"face individually. To apply the same texture on all faces, change the "
"material's UV property to [code]Vector3(3, 2, 1)[/code]. This is equivalent "
"to adding [code]UV *= vec2(3.0, 2.0)[/code] in a vertex shader.\n"
"[b]Note:[/b] When using a large textured [BoxMesh] (e.g. as a floor), you may "
"stumble upon UV jittering issues depending on the camera angle. To solve "
"this, increase [member subdivide_depth], [member subdivide_height] and "
"[member subdivide_width] until you no longer notice UV jittering."
msgstr ""
"Générer un [PrimitiveMesh] en forme de boîte alignée sur les axes.\n"
"La disposition des UV du cube est arrangée selon une disposition de 3×2 qui "
"permet de placer une texture sur chaque face individuellement. Pour appliquer "
"la même texture sur toutes les faces, modifiez la propriété UV du matériau à "
"[code]Vector3(3, 2, 1)[/code]. Cela équivaut à ajouter [code]UV *= vec2(3.0, "
"2.0)[/code] dans un vertex shader.\n"
"[b]Note :[/b] Lors de l'utilisation d'un grand [BoxMesh] texturé (par exemple "
"pour le sol), vous pouvez tomber sur des problèmes de jittering de l'UV "
"suivant l'angle de la caméra. Pour résoudre cela, augmentez [member "
"subdivide_depth], [member subdivide_height] et [member subdivide_width] "
"jusqu'à ce que vous ne remarquez plus de jittering de l'UV."

msgid "The box's width, height and depth."
msgstr "La largeur, la hauteur et la profondeur de la boîte."

msgid "Number of extra edge loops inserted along the Z axis."
msgstr ""
"Le nombre de boucles de bord supplémentaires insérées le long de l'axe Z."

msgid "Number of extra edge loops inserted along the Y axis."
msgstr ""
"Le nombre de boucles de bord supplémentaires insérées le long de l'axe Y."

msgid "Number of extra edge loops inserted along the X axis."
msgstr ""
"Le nombre de boucles de bord supplémentaires insérées le long de l'axe X."

msgid "Cuboid shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Forme de cuboïde à utiliser avec l'occlusion culling dans "
"[OccluderInstance3D]."

msgid ""
"[BoxOccluder3D] stores a cuboid shape that can be used by the engine's "
"occlusion culling system.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[BoxOccluder3D] stocke une forme de cuboïde qui peut être utilisée par le "
"système d'occlusion culling du moteur.\n"
"Voir la documentation d'[OccluderInstance3D] pour les instructions sur la "
"mise en place de l'occlusion culling."

msgid "The box's size in 3D units."
msgstr "La taille de la boîte en unités 3D."

msgid "A 3D box shape used for physics collision."
msgstr "Une forme de boîte 3D utilisée pour les collisions physiques."

msgid ""
"A 3D box shape, intended for use in physics. Usually used to provide a shape "
"for a [CollisionShape3D].\n"
"[b]Performance:[/b] [BoxShape3D] is fast to check collisions against. It is "
"faster than [CapsuleShape3D] and [CylinderShape3D], but slower than "
"[SphereShape3D]."
msgstr ""
"Une forme de boîte 3D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape3D].\n"
"[b]Performance :[/b] [BoxShape3D] est rapide pour vérifier les collisions. "
"Elle est plus rapide que [CapsuleShape3D] et [CylinderShape3D], mais plus "
"lente que [SphereShape3D]."

msgid "3D Kinematic Character Demo"
msgstr "Démo de personnage cinématique en 3D"

msgid "A themed button that can contain text and an icon."
msgstr "Un bouton à thème qui peut contenir du texte et une icône."

msgid ""
"[Button] is the standard themed button. It can contain text and an icon, and "
"it will display them according to the current [Theme].\n"
"[b]Example:[/b] Create a button and connect a method that will be called when "
"the button is pressed:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\tbutton.text = \"Click me\"\n"
"\tbutton.pressed.connect(_button_pressed)\n"
"\tadd_child(button)\n"
"\n"
"func _button_pressed():\n"
"\tprint(\"Hello world!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\tbutton.Text = \"Click me\";\n"
"\tbutton.Pressed += ButtonPressed;\n"
"\tAddChild(button);\n"
"}\n"
"\n"
"private void ButtonPressed()\n"
"{\n"
"\tGD.Print(\"Hello world!\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] Buttons do not detect touch input and therefore don't support "
"multitouch, since mouse emulation can only press one button at a given time. "
"Use [TouchScreenButton] for buttons that trigger gameplay movement or actions."
msgstr ""
"[Button] est le bouton à thème standard. Il peut contenir du texte et une "
"icône, et les affichera suivant le [Theme] actuellement défini.\n"
"[b]Exemple :[/b] Créer un bouton et lui connecter une méthode qui sera "
"appelée quand le bouton est appuyé :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar bouton = Button.new()\n"
"\tbouton.text = \"Cliquez moi\"\n"
"\tbouton.pressed.connect(_bouton_appuye)\n"
"\tadd_child(bouton)\n"
"\n"
"func _bouton_appuye():\n"
"\tprint(\"On m'a cliqué !\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar bouton = new Button();\n"
"\tbouton.Text = \"Cliquez moi\"\n"
"\tbouton.Pressed += BoutonAppuye;\n"
"\tAddChild(bouton);\n"
"}\n"
"\n"
"private void BoutonAppuye()\n"
"{\n"
"\tGD.Print(\"On m'a cliqué !\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Voir aussi [BaseButton] qui contient les propriétés et méthodes communes "
"associées à ce nœud.\n"
"[b]Note :[/b] Les boutons n'interceptent pas les entrées tactiles et ne "
"supporte donc pas le multi appui tactile, puisque l'émulation de la souris ne "
"peut presser qu'un seul bouton à la fois. Utilisez [TouchScreenButton] pour "
"les boutons qui déclenchent des actions ou des mouvements du gameplay."

msgid "Operating System Testing Demo"
msgstr "Démo de test de système d'exploitation"

msgid "Text alignment policy for the button's text."
msgstr "Politique d'alignement du texte pour le texte du bouton."

msgid ""
"If set to something other than [constant TextServer.AUTOWRAP_OFF], the text "
"gets wrapped inside the node's bounding rectangle."
msgstr ""
"Si défini à autre chose que [constant TextServer.AUTOWRAP_OFF], le texte fait "
"automatiquement des retours à la ligne dans le rectangle délimitant du nœud."

msgid ""
"If [code]true[/code], text that is too large to fit the button is clipped "
"horizontally. If [code]false[/code], the button will always be wide enough to "
"hold the text. The text is not vertically clipped, and the button's height is "
"not affected by this property."
msgstr ""
"Si [code]true[/code], le texte trop grand pour correspondre au bouton est "
"coupé horizontalement. Si [code]false[/code], le bouton sera toujours assez "
"large pour contenir le texte. Le texte n'est pas coupé verticalement, et la "
"hauteur du bouton n'est pas affectée par cette propriété."

msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect. See also [theme_item icon_max_width]."
msgstr ""
"Lors qu’activé, l'icône du bouton s'étendra/rétrécira pour correspondre à la "
"taille du bouton tout en gardant son aspect. Voir aussi [theme_item "
"icon_max_width]."

msgid "Flat buttons don't display decoration."
msgstr "Les boutons plats n’affichent pas de décoration."

msgid ""
"Button's icon, if text is present the icon will be placed before the text.\n"
"To edit margin and spacing of the icon, use [theme_item h_separation] theme "
"property and [code]content_margin_*[/code] properties of the used "
"[StyleBox]es."
msgstr ""
"L'icône du bouton, si du texte est présent, l'icône sera placée avant le "
"texte.\n"
"Pour modifier la marge et l'espacement de l'icône, utilisez la propriété de "
"thème [theme_item h_separation] pour le [Button] et les propriétés "
"[code]content_margin_*[/code] des [StyleBox]s utilisées."

msgid ""
"Specifies if the icon should be aligned horizontally to the left, right, or "
"center of a button. Uses the same [enum HorizontalAlignment] constants as the "
"text alignment. If centered horizontally and vertically, text will draw on "
"top of the icon."
msgstr ""
"Spécifie si l'icône doit être alignée horizontalement sur la gauche, la "
"droite ou au centre d'un bouton. Utilisez les mêmes constantes [enum "
"HorizontalAlignment] que pour l'alignement du texte. Si centré "
"horizontalement et verticalement, le texte sera dessiné sur l'icône."

msgid ""
"Language code used for line-breaking and text shaping algorithms, if left "
"empty current locale is used instead."
msgstr ""
"Code de langue utilisé pour les algorithmes de retour à la ligne et de \"text "
"shaping\". Si vide, la langue locale actuelle est utilisée à la place."

msgid "The button's text that will be displayed inside the button's area."
msgstr "Le texte du bouton qui sera affiché à l'intérieur de l'aire du bouton."

msgid "Base text writing direction."
msgstr "Direction d'écriture du texte de base."

msgid ""
"Sets the clipping behavior when the text exceeds the node's bounding "
"rectangle."
msgstr ""
"Définit le comportement de coupure lorsque le texte dépasse le rectangle "
"délimitant du nœud."

msgid ""
"Specifies if the icon should be aligned vertically to the top, bottom, or "
"center of a button. Uses the same [enum VerticalAlignment] constants as the "
"text alignment. If centered horizontally and vertically, text will draw on "
"top of the icon."
msgstr ""
"Spécifie si l'icône doit être alignée verticalement sur le haut, le bas ou le "
"centre d'un bouton. Utilise les mêmes constantes [enum VerticalAlignment] que "
"pour l'alignement du texte. Si l'icône est centrée horizontalement et "
"verticalement, elle sera affichée sur le texte."

msgid "Default text [Color] of the [Button]."
msgstr "La [Color] du texte par défaut du [Button]."

msgid "Text [Color] used when the [Button] is disabled."
msgstr "La [Color] du texte utilisée quand le [Button] est désactivé."

msgid ""
"Text [Color] used when the [Button] is focused. Only replaces the normal text "
"color of the button. Disabled, hovered, and pressed states take precedence "
"over this color."
msgstr ""
"La [Color] du texte utilisée lorsque le [Button] a le focus. Ne fait que "
"remplacer la couleur normale du texte du bouton. Les couleurs définies pour "
"les états désactivé, survolé et pressé sont prioritaires sur cette couleur."

msgid "Text [Color] used when the [Button] is being hovered."
msgstr "La [Color] du texte utilisée quand le [Button] est survolé."

msgid "Text [Color] used when the [Button] is being hovered and pressed."
msgstr "La [Color] du texte utilisée quand le [Button] est survolé et appuyé."

msgid "The tint of text outline of the [Button]."
msgstr "La [Color] du contour du texte du [Button]."

msgid "Text [Color] used when the [Button] is being pressed."
msgstr "La [Color] du texte utilisée quand le [Button] est appuyé."

msgid "Icon modulate [Color] used when the [Button] is disabled."
msgstr ""
"[Color] de modulation de l'icône utilisée quand le [Button] est désactivé."

msgid ""
"Icon modulate [Color] used when the [Button] is focused. Only replaces the "
"normal modulate color of the button. Disabled, hovered, and pressed states "
"take precedence over this color."
msgstr ""
"[Color] de modulation de l'icône utilisée quand le [Button] a le focus. Ne "
"fait que remplacer la couleur de modulation normale du bouton. Les couleurs "
"définies pour les états désactivé, survolé et appuyé sont prioritaires sur "
"cette couleur."

msgid "Icon modulate [Color] used when the [Button] is being hovered."
msgstr ""
"[Color] de modulation de l'icône utilisée quand le [Button] est survolé."

msgid ""
"Icon modulate [Color] used when the [Button] is being hovered and pressed."
msgstr ""
"[Color] de modulation de l'icône utilisée quand le [Button] est survolé et "
"appuyé."

msgid "Default icon modulate [Color] of the [Button]."
msgstr "[Color] de modulation de l'icône du [Button] par défaut."

msgid "Icon modulate [Color] used when the [Button] is being pressed."
msgstr "[Color] de modulation de l'icône utilisée quand le [Button] est appuyé."

msgid ""
"This constant acts as a boolean. If [code]true[/code], the minimum size of "
"the button and text/icon alignment is always based on the largest stylebox "
"margins, otherwise it's based on the current button state stylebox margins."
msgstr ""
"Cette constante agit comme un booléen. Si [code]true[/code], la taille "
"minimale du bouton et l'alignement du texte/icône sont toujours basés sur les "
"marges de la Stylebox la plus grande, sinon ils sont basés sur les marges de "
"la Stylebox de l'état du bouton actuel."

msgid ""
"The horizontal space between [Button]'s icon and text. Negative values will "
"be treated as [code]0[/code] when used."
msgstr ""
"L'espacement horizontal entre l'icône et le texte du [Button]. Les valeurs "
"négatives seront traitées comme [code]0[/code] lorsque utilisées."

msgid ""
"The maximum allowed width of the [Button]'s icon. This limit is applied on "
"top of the default size of the icon, or its expanded size if [member "
"expand_icon] is [code]true[/code]. The height is adjusted according to the "
"icon's ratio. If the button has additional icons (e.g. [CheckBox]), they will "
"also be limited."
msgstr ""
"La largeur maximale autorisée de l'icône du [Button]. Cette limite est "
"appliquée en plus de la taille par défaut de l'icône, ou sa taille élargie si "
"[member expand_icon] vaut [code]true[/code]. La hauteur est ajustée selon le "
"rapport d'aspect de l'icône. Si le bouton a des icônes supplémentaires (par "
"exemple [CheckBox]), elles seront également limitées."

msgid ""
"The size of the text outline.\n"
"[b]Note:[/b] If using a font with [member "
"FontFile.multichannel_signed_distance_field] enabled, its [member "
"FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of "
"[theme_item outline_size] for outline rendering to look correct. Otherwise, "
"the outline may appear to be cut off earlier than intended."
msgstr ""
"La taille du contour du texte.\n"
"[b]Note :[/b] Si vous utilisez une police avec [member "
"FontFile.multichannel_signed_distance_field] activé, sa propriété [member "
"FontFile.msdf_pixel_range] doit être définie à au moins [i]deux fois[/i] la "
"valeur de [theme_item outline_size] pour que le rendu des contours soit "
"correct. Sinon, le contour peut sembler coupé plus tôt que prévu."

msgid "[Font] of the [Button]'s text."
msgstr "[Font] du texte du [Button]."

msgid "Font size of the [Button]'s text."
msgstr "La taille de police du texte du [Button]."

msgid ""
"Default icon for the [Button]. Appears only if [member icon] is not assigned."
msgstr ""
"Icône par défaut pour le [Button]. N'apparaît que si [member icon] n'est pas "
"affectée."

msgid "[StyleBox] used when the [Button] is disabled."
msgstr "La [StyleBox] utilisée quand le [Button] est désactivé."

msgid ""
"[StyleBox] used when the [Button] is disabled (for right-to-left layouts)."
msgstr ""
"[StyleBox] utilisée lorsque le [Button] est désactivé (pour les dispositions "
"de droite à gauche)."

msgid ""
"[StyleBox] used when the [Button] is focused. The [theme_item focus] "
"[StyleBox] is displayed [i]over[/i] the base [StyleBox], so a partially "
"transparent [StyleBox] should be used to ensure the base [StyleBox] remains "
"visible. A [StyleBox] that represents an outline or an underline works well "
"for this purpose. To disable the focus visual effect, assign a "
"[StyleBoxEmpty] resource. Note that disabling the focus visual effect will "
"harm keyboard/controller navigation usability, so this is not recommended for "
"accessibility reasons."
msgstr ""
"[StyleBox] utilisée lorsque le [Button] a le focus. La [StyleBox] du "
"[theme_item focus] est affichée [i]sur[/i] la [StyleBox] de base, donc une "
"[StyleBox] partiellement transparente devrait être utilisée pour s'assurer "
"que la [StyleBox] de base reste visible. Une [StyleBox] qui représente un "
"contour ou un sous-lignage fonctionne bien à cette fin. Pour désactiver "
"l'effet visuel du focus, assignez une ressource [StyleBoxEmpty]. Notez que la "
"désactivation de l'effet visuel du focus va nuire à l'utilisabilité de la "
"navigation avec clavier/contrôleur, ce qui n'est donc pas recommandé pour des "
"raisons d'accessibilité."

msgid "[StyleBox] used when the [Button] is being hovered."
msgstr "Le [StyleBox] utilisé quand le [Button] est survolé."

msgid ""
"[StyleBox] used when the [Button] is being hovered (for right-to-left "
"layouts)."
msgstr ""
"[StyleBox] utilisée lorsque le [Button] est survolé (pour les dispositions de "
"droite à gauche)."

msgid ""
"[StyleBox] used when the [Button] is being pressed and hovered at the same "
"time."
msgstr ""
"[StyleBox] utilisée quand le [Button] est appuyé et survolé en même temps."

msgid ""
"[StyleBox] used when the [Button] is being pressed and hovered at the same "
"time (for right-to-left layouts)."
msgstr ""
"[StyleBox] utilisée quand le [Button] est appuyé et survolé en même temps "
"(pour les mises en pages droite à gauche)."

msgid "Default [StyleBox] for the [Button]."
msgstr "[StyleBox] par défaut pour le [Button]."

msgid "Default [StyleBox] for the [Button] (for right-to-left layouts)."
msgstr ""
"La [StyleBox] par défaut pour le [Button] (pour les mises en page de droite à "
"gauche)."

msgid "[StyleBox] used when the [Button] is being pressed."
msgstr "Le [StyleBox] utilisé quand le [Button] est appuyé."

msgid ""
"[StyleBox] used when the [Button] is being pressed (for right-to-left "
"layouts)."
msgstr ""
"[StyleBox] utilisée quand le [Button] est appuyé en même temps (pour les "
"mises en page droite à gauche)."

msgid ""
"A group of buttons that doesn't allow more than one button to be pressed at a "
"time."
msgstr ""
"Un groupe de boutons qui n'autorise pas que plus d'un bouton soit appuyé en "
"même temps."

msgid ""
"A group of [BaseButton]-derived buttons. The buttons in a [ButtonGroup] are "
"treated like radio buttons: No more than one button can be pressed at a time. "
"Some types of buttons (such as [CheckBox]) may have a special appearance in "
"this state.\n"
"Every member of a [ButtonGroup] should have [member BaseButton.toggle_mode] "
"set to [code]true[/code]."
msgstr ""
"Un groupe de boutons dérivés de [BaseButton]. Les boutons dans un "
"[ButtonGroup] sont traités comme des boutons radio : Pas plus d'un bouton ne "
"peut être appuyé à la fois. Certains types de boutons (comme [CheckBox]) "
"peuvent avoir une apparence particulière dans cet état.\n"
"Chaque membre d'un [ButtonGroup] devrait avoir [member "
"BaseButton.toggle_mode] défini à [code]true[/code]."

msgid ""
"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
"[member BaseButton.button_group])."
msgstr ""
"Renvoie un [Array] de [Button] qui sont dans ce [ButtonGroup] (voir [member "
"BaseButton.button_group])."

msgid "Returns the current pressed button."
msgstr "Renvoie le bouton actuellement enfoncé."

msgid ""
"If [code]true[/code], it is possible to unpress all buttons in this "
"[ButtonGroup]."
msgstr ""
"Si [code]true[/code], il est possible de relâcher tous les boutons dans ce "
"[ButtonGroup]."

msgid "Emitted when one of the buttons of the group is pressed."
msgstr "Émis lorsqu’un des boutons de ce groupe est appuyé."

msgid "A built-in type representing a method or a standalone function."
msgstr "Un type intégré représentant une méthode ou une fonction autonome."

msgid ""
"[Callable] is a built-in [Variant] type that represents a function. It can "
"either be a method within an [Object] instance, or a custom callable used for "
"different purposes (see [method is_custom]). Like all [Variant] types, it can "
"be stored in variables and passed to other functions. It is most commonly "
"used for signal callbacks.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func print_args(arg1, arg2, arg3 = \"\"):\n"
"\tprints(arg1, arg2, arg3)\n"
"\n"
"func test():\n"
"\tvar callable = Callable(self, \"print_args\")\n"
"\tcallable.call(\"hello\", \"world\")  # Prints \"hello world \".\n"
"\tcallable.call(Vector2.UP, 42, callable)  # Prints \"(0.0, -1.0) 42 "
"Node(node.gd)::print_args\"\n"
"\tcallable.call(\"invalid\")  # Invalid call, should have at least 2 "
"arguments.\n"
"[/gdscript]\n"
"[csharp]\n"
"// Default parameter values are not supported.\n"
"public void PrintArgs(Variant arg1, Variant arg2, Variant arg3 = default)\n"
"{\n"
"\tGD.PrintS(arg1, arg2, arg3);\n"
"}\n"
"\n"
"public void Test()\n"
"{\n"
"\t// Invalid calls fail silently.\n"
"\tCallable callable = new Callable(this, MethodName.PrintArgs);\n"
"\tcallable.Call(\"hello\", \"world\"); // Default parameter values are not "
"supported, should have 3 arguments.\n"
"\tcallable.Call(Vector2.Up, 42, callable); // Prints \"(0, -1) 42 "
"Node(Node.cs)::PrintArgs\"\n"
"\tcallable.Call(\"invalid\"); // Invalid call, should have 3 arguments.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In GDScript, it's possible to create lambda functions within a method. Lambda "
"functions are custom callables that are not associated with an [Object] "
"instance. Optionally, lambda functions can also be named. The name will be "
"displayed in the debugger, or when calling [method get_method].\n"
"[codeblock]\n"
"func _init():\n"
"\tvar my_lambda = func (message):\n"
"\t\tprint(message)\n"
"\n"
"\t# Prints \"Hello everyone!\"\n"
"\tmy_lambda.call(\"Hello everyone!\")\n"
"\n"
"\t# Prints \"Attack!\", when the button_pressed signal is emitted.\n"
"\tbutton_pressed.connect(func(): print(\"Attack!\"))\n"
"[/codeblock]\n"
"In GDScript, you can access methods and global functions as [Callable]s:\n"
"[codeblock]\n"
"tween.tween_callback(node.queue_free)  # Object methods.\n"
"tween.tween_callback(array.clear)  # Methods of built-in types.\n"
"tween.tween_callback(print.bind(\"Test\"))  # Global functions.\n"
"[/codeblock]\n"
"[b]Note:[/b] [Dictionary] does not support the above due to ambiguity with "
"keys.\n"
"[codeblock]\n"
"var dictionary = { \"hello\": \"world\" }\n"
"\n"
"# This will not work, `clear` is treated as a key.\n"
"tween.tween_callback(dictionary.clear)\n"
"\n"
"# This will work.\n"
"tween.tween_callback(Callable.create(dictionary, \"clear\"))\n"
"[/codeblock]"
msgstr ""
"[Callable] (litt. Appelable) est un type [Variant] intégré qui représente une "
"fonction. Il peut soit être une méthode dans une instance d'[Object], soit un "
"callable personnalisé utilisé à des fins différentes (voir [method "
"is_custom]). Comme tous les types [Variant], il peut être stocké dans des "
"variables et transmis à d'autres fonctions. Il est le plus souvent utilisé "
"pour les callbacks de signaux.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func afficher_args(arg1, arg2, arg3 = \"\"):\n"
"\tprints(arg1, arg2, arg3)\n"
"\n"
"func test():\n"
"\tvar callable = Callable(self, \"afficher_args\")\n"
"\tcallable.call(\"bonjour\", \"monde\")  # Affiche \"bonjour monde\".\n"
"\tcallable.call(Vector2.UP, 42, callable)  # Affiche \"(0.0, -1.0) 42 "
"Node(node.gd)::print_args\"\n"
"\tcallable.call(\"invalide\")  # Appel invalide, devrait avoir au moins deux "
"arguments.\n"
"[/gdscript]\n"
"[csharp]\n"
"// Les valeurs de paramètre par défaut ne sont pas supportées.\n"
"public void AfficherArgs(Variant arg1, Variant arg2, Variant arg3 = default)\n"
"{\n"
"\tGD.PrintS(arg1, arg2, arg3);\n"
"}\n"
"\n"
"public void Test()\n"
"{\n"
"\t// Les appels invalides échouent silencieusement.\n"
"\tCallable callable = new Callable(this, MethodName.AfficherArgs);\n"
"\tcallable.Call(\"bonjour\", \"monde\"); // Les valeurs de paramètre par "
"défaut ne sont pas supportées, il devrait y avoir trois arguments.\n"
"\tcallable.Call(Vector2.Up, 42, callable); // Affiche \"(0, -1) 42 "
"Node(Node.cs)::PrintArgs\"\n"
"\tcallable.Call(\"invalid\"); //  Appel invalide, devrait avoir trois "
"arguments.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"En GDScript, il est possible de créer des fonctions lambda dans une méthode. "
"Les fonctions lambda sont des callables personnalisés qui ne sont pas "
"associés à une instance [Object]. Optionnellement, les fonctions lambda "
"peuvent également être nommées. Le nom sera affiché dans le débogueur, ou "
"lors de l'appel à [method get_method].\n"
"[codeblock]\n"
"func _init():\n"
"\tvar mon_lambda = func (message):\n"
"\t\tprint(message)\n"
"\n"
"\t# Affiche \"Bonjour tout le monde !\"\n"
"\tmon_lambda.call(\"Bonjour tout le monde !\")\n"
"\n"
"\t# Affiche \"Attaque !\", quand le signal bouton_appuye est émis.\n"
"\tbouton_appuye.connect(func(): print(\"Attaque !\"))\n"
"[/codeblock]\n"
"En GDScript, vous pouvez accéder aux méthodes et fonctions globales comme des "
"[Callable]s\n"
"[codeblock]\n"
"tween.tween_callback(noeud.queue_free)  # Méthodes d'objet.\n"
"tween.tween_callback(tableau.clear)  # Méthodes de types intégrés.\n"
"tween.tween_callback(print.bind(\"Test\"))  # Fonctions globales.\n"
"[/codeblock]\n"
"[b]Note :[/b] [Dictionary] ne supporte pas le code ci-dessus du à une "
"ambiguïté avec les clés.\n"
"[codeblock]\n"
"var dictionnaire = {\"bonjour\": \"monde\"}\n"
"\n"
"# Cela ne fonctionnera pas, `clear` est traité comme une clé.\n"
"tween.tween_callback(dictionnaire.clear)\n"
"\n"
"# Cela fonctionnera.\n"
"tween.tween_callback(Callable.create(dictionnaire, \"clear\"))\n"
"[/codeblock]"

msgid "Constructs an empty [Callable], with no object nor method bound."
msgstr "Construit un [Callable] vide, sans objet ni méthode lié."

msgid "Constructs a [Callable] as a copy of the given [Callable]."
msgstr "Construit un [Callable] en tant que copie du [Callable] donné."

msgid ""
"Creates a new [Callable] for the method named [param method] in the specified "
"[param object].\n"
"[b]Note:[/b] For methods of built-in [Variant] types, use [method create] "
"instead."
msgstr ""
"Crée un nouveau [Callable] pour la méthode nommée [param method] dans l'objet "
"[param object] spécifié.\n"
"[b]Note :[/b] Pour les méthodes de types [Variant] intégrés, utilisez plutôt "
"[method create]."

msgid ""
"Returns a copy of this [Callable] with one or more arguments bound. When "
"called, the bound arguments are passed [i]after[/i] the arguments supplied by "
"[method call]. See also [method unbind].\n"
"[b]Note:[/b] When this method is chained with other similar methods, the "
"order in which the argument list is modified is read from right to left."
msgstr ""
"Renvoie une copie de ce [Callable] avec un ou plusieurs arguments liés. "
"Lorsqu'appelée, les arguments liés sont passés [i]après[/i] les arguments "
"fournis par [method call]. Voir aussi [method unbind].\n"
"[b]Note :[/b] Lorsque cette méthode est enchaînée avec d'autres méthodes "
"similaires, l'ordre dans lequel la liste des arguments est modifiée est lu de "
"droite à gauche."

msgid ""
"Returns a copy of this [Callable] with one or more arguments bound, reading "
"them from an array. When called, the bound arguments are passed [i]after[/i] "
"the arguments supplied by [method call]. See also [method unbind].\n"
"[b]Note:[/b] When this method is chained with other similar methods, the "
"order in which the argument list is modified is read from right to left."
msgstr ""
"Renvoie une copie de ce [Callable] avec un ou plusieurs arguments liés, en "
"les lisant d'un tableau. Lorsqu'appelée, les arguments liés sont passés "
"[i]après[/i] les arguments fournis par [method call]. Voir aussi [method "
"unbind].\n"
"[b]Note :[/b] Lorsque cette méthode est enchaînée avec d'autres méthodes "
"similaires, l'ordre dans lequel la liste des arguments est modifiée est lu de "
"droite à gauche."

msgid ""
"Calls the method represented by this [Callable]. Arguments can be passed and "
"should match the method's signature."
msgstr ""
"Appelle la méthode représentée par ce [Callable]. Les arguments peuvent être "
"passés et devraient correspondre à la signature de la méthode."

msgid ""
"Calls the method represented by this [Callable] in deferred mode, i.e. at the "
"end of the current frame. Arguments can be passed and should match the "
"method's signature.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tgrab_focus.call_deferred()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCallable.From(GrabFocus).CallDeferred();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Deferred calls are processed at idle time. Idle time happens "
"mainly at the end of process and physics frames. In it, deferred calls will "
"be run until there are none left, which means you can defer calls from other "
"deferred calls and they'll still be run in the current idle time cycle. This "
"means you should not call a method deferred from itself (or from a method "
"called by it), as this causes infinite recursion the same way as if you had "
"called the method directly.\n"
"See also [method Object.call_deferred]."
msgstr ""
"Appelle la méthode représentée par ce [Callable] en mode différé, c.-à-d. à "
"la fin de la trame courante. Des arguments peuvent être passés et doivent "
"correspondre à la signature de la méthode.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tgrab_focus.call_deferred()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCallable.From(GrabFocus).CallDeferred();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Les appels différés sont traités lors des moments d'inaction. "
"Les moments d'inaction se produisent principalement à la fin des trames de "
"traitement et de physique. Dans ce cas, les appels différés seront lancés "
"jusqu'à ce qu'il n'y en ait plus, ce qui signifie que vous pouvez différer "
"des appels depuis des appels différés et qu'ils seront toujours exécutés dans "
"le cycle de temps d'inaction actuel. Cela signifie que vous ne devriez pas "
"appeler une méthode différée depuis elle-même (ou d'une méthode qu'elle "
"appelle), car cela provoque une récursion infinie de la même manière que si "
"vous aviez appelé la méthode directement.\n"
"Voir aussi [method Object.call_deferred]."

msgid ""
"Calls the method represented by this [Callable]. Unlike [method call], this "
"method expects all arguments to be contained inside the [param arguments] "
"[Array]."
msgstr ""
"Appelle la méthode représentée par ce [Callable]. Contrairement à [method "
"call], cette méthode s'attend à ce que tous les arguments soient contenus "
"dans l'[Array] [param arguments]."

msgid ""
"Creates a new [Callable] for the method named [param method] in the specified "
"[param variant]. To represent a method of a built-in [Variant] type, a custom "
"callable is used (see [method is_custom]). If [param variant] is [Object], "
"then a standard callable will be created instead.\n"
"[b]Note:[/b] This method is always necessary for the [Dictionary] type, as "
"property syntax is used to access its entries. You may also use this method "
"when [param variant]'s type is not known in advance (for polymorphism)."
msgstr ""
"Crée un nouveau [Callable] pour la méthode nommée [param method] dans le "
"[param variant] spécifié. Pour représenter une méthode d'un type intégré "
"[Variant], un callable personnalisé est utilisé (voir [method is_custom]). Si "
"[param variant] est [Object], alors un callable standard sera créé à la "
"place.\n"
"[b]Note :[/b] Cette méthode est toujours nécessaire pour le type "
"[Dictionary], car la syntaxe de propriété est utilisée pour accéder à ses "
"entrées. Vous pouvez également utiliser cette méthode lorsque le type de "
"[param variant] n'est pas connu à l'avance (pour le polymorphisme)."

msgid ""
"Returns the total number of arguments this [Callable] should take, including "
"optional arguments. This means that any arguments bound with [method bind] "
"are [i]subtracted[/i] from the result, and any arguments unbound with [method "
"unbind] are [i]added[/i] to the result."
msgstr ""
"Renvoie le nombre total d'arguments que ce [Callable] devrait prendre, y "
"compris les arguments optionnels. Cela signifie que tous les arguments liés "
"avec [method bind] sont [i]soustraits[/i] du résultat, et tous les arguments "
"déliés avec [method unbind] sont [i]ajoutés[/i] au résultat."

msgid ""
"Returns the array of arguments bound via successive [method bind] or [method "
"unbind] calls. These arguments will be added [i]after[/i] the arguments "
"passed to the call, from which [method get_unbound_arguments_count] arguments "
"on the right have been previously excluded.\n"
"[codeblock]\n"
"func get_effective_arguments(callable, call_args):\n"
"\tassert(call_args.size() - callable.get_unbound_arguments_count() >= 0)\n"
"\tvar result = call_args.slice(0, call_args.size() - "
"callable.get_unbound_arguments_count())\n"
"\tresult.append_array(callable.get_bound_arguments())\n"
"\treturn result\n"
"[/codeblock]"
msgstr ""
"Renvoie le tableau des arguments liés par des appels successifs à [method "
"bind] ou [method unbind]. Ces arguments seront ajoutés [i]après[/i] les "
"arguments passés à l'appel, desquels [method get_unbound_arguments_count] "
"arguments sur la droite ont été précédemment exclus.\n"
"[codeblock]\n"
"func obtenir_arguments_effectifs(callable, call_args):\n"
"\tassert(call_args.size() - callable.get_unbound_arguments_count() >= 0)\n"
"\tvar resultat = call_args.slice(0, call_args.size() - "
"callable.get_unbound_arguments_count())\n"
"\tresultat.append_array(callable.get_bound_arguments())\n"
"\treturn result\n"
"[/codeblock]"

msgid ""
"Returns the total amount of arguments bound via successive [method bind] or "
"[method unbind] calls. This is the same as the size of the array returned by "
"[method get_bound_arguments]. See [method get_bound_arguments] for details.\n"
"[b]Note:[/b] The [method get_bound_arguments_count] and [method "
"get_unbound_arguments_count] methods can both return positive values."
msgstr ""
"Renvoie le montant total d'arguments liés par des appels successifs à [method "
"bind] ou [method unbind]. Ceci est identique à la taille du tableau renvoyé "
"par [method get_bound_arguments]. Voir [method get_bound_arguments] pour plus "
"de détails.\n"
"[b]Note :[/b] Les méthodes [method get_bound_arguments_count] et [method "
"get_unbound_arguments_count] peuvent toutes les deux renvoyer des valeurs "
"positives."

msgid ""
"Returns the name of the method represented by this [Callable]. If the "
"callable is a GDScript lambda function, returns the function's name or [code]"
"\"<anonymous lambda>\"[/code]."
msgstr ""
"Renvoie le nom de la méthode représentée par ce [Callable]. Si le callable "
"est une fonction lambda GDScript, renvoie le nom de la fonction ou [code]"
"\"<anonymous lambda>\"[/code]."

msgid "Returns the object on which this [Callable] is called."
msgstr "Renvoie l'objet sur lequel ce [Callable] est appelé."

msgid ""
"Returns the ID of this [Callable]'s object (see [method "
"Object.get_instance_id])."
msgstr ""
"Renvoie l'ID de l'objet de ce [Callable] (voir [method "
"Object.get_instance_id])."

msgid ""
"Returns the total amount of arguments unbound via successive [method bind] or "
"[method unbind] calls. See [method get_bound_arguments] for details.\n"
"[b]Note:[/b] The [method get_bound_arguments_count] and [method "
"get_unbound_arguments_count] methods can both return positive values."
msgstr ""
"Renvoie la quantité totale d'arguments non liés par des appels successifs à "
"[method bind] ou [method unbind]. Voir [method get_bound_arguments] pour plus "
"de détails.\n"
"[b]Note :[/b] Les méthodes [method get_bound_arguments_count] et [method "
"get_unbound_arguments_count] peuvent toutes les deux renvoyer des valeurs "
"positives."

msgid ""
"Returns the 32-bit hash value of this [Callable]'s object.\n"
"[b]Note:[/b] [Callable]s with equal content will always produce identical "
"hash values. However, the reverse is not true. Returning identical hash "
"values does [i]not[/i] imply the callables are equal, because different "
"callables can have identical hash values due to hash collisions. The engine "
"uses a 32-bit hash algorithm for [method hash]."
msgstr ""
"Renvoie la valeur de hachage sur 32 bits de l'objet de ce [Callable]\n"
"[b]Note :[/b] Des [Callable]s avec un contenu égal produiront toujours des "
"valeurs de hachage identiques. Cependant, l'inverse n'est pas vrai. Renvoyer "
"des valeurs de hachage identiques n'implique [i]pas[/i] que les callables "
"sont égaux, car différents callables peuvent avoir des valeurs de hachage "
"identiques en raison de collisions de hachage. Le moteur utilise un "
"algorithme de hachage sur 32 bits pour [method hash]."

msgid ""
"Returns [code]true[/code] if this [Callable] is a custom callable. Custom "
"callables are used:\n"
"- for binding/unbinding arguments (see [method bind] and [method unbind]);\n"
"- for representing methods of built-in [Variant] types (see [method "
"create]);\n"
"- for representing global, lambda, and RPC functions in GDScript;\n"
"- for other purposes in the core, GDExtension, and C#."
msgstr ""
"Renvoie [code]true[/code] si ce [Callable] est un callable personnalisé. Les "
"callables personnalisés sont utilisés :\n"
"- pour lier/délier des arguments (voir [method bind] et [method unbind]);\n"
"- pour représenter les méthodes de types [Variant] intégrés (voir [method "
"create]);\n"
"- pour représenter les fonctions globales, lambda et RPC en GDScript;\n"
"- à d'autres fins dans le noyau, les GDExtension, et le C#."

msgid ""
"Returns [code]true[/code] if this [Callable] has no target to call the method "
"on. Equivalent to [code]callable == Callable()[/code].\n"
"[b]Note:[/b] This is [i]not[/i] the same as [code]not is_valid()[/code] and "
"using [code]not is_null()[/code] will [i]not[/i] guarantee that this callable "
"can be called. Use [method is_valid] instead."
msgstr ""
"Renvoie [code]true[/code] si ce [Callable] n'a pas de cible sur laquelle "
"appeler la méthode. Équivalent à [code]callable == Callable()[/code].\n"
"[b]Note :[/b] Ce n'est [i]pas[/i] identique à [code]not is_valid()[/code] et "
"l'utilisation de [code]not is_null()[/code] ne garantira [i]pas[/i] que ce "
"callable puisse être appelé. Utilisez [method is_valid] à la place."

msgid ""
"Returns [code]true[/code] if this [Callable] is a standard callable. This "
"method is the opposite of [method is_custom]. Returns [code]false[/code] if "
"this callable is a lambda function."
msgstr ""
"Renvoie [code]true[/code] si ce [Callable] est un callable standard. Cette "
"méthode est le contraire de [method is_custom]. Renvoie [code]false[/code] si "
"ce callable est une fonction lambda."

msgid ""
"Returns [code]true[/code] if the callable's object exists and has a valid "
"method name assigned, or is a custom callable."
msgstr ""
"Renvoie [code]true[/code] si l'objet du callable existe et a un nom de "
"méthode valide assigné, ou est un callable personnalisé."

msgid ""
"Perform an RPC (Remote Procedure Call) on all connected peers. This is used "
"for multiplayer and is normally not available, unless the function being "
"called has been marked as [i]RPC[/i] (using [annotation @GDScript.@rpc] or "
"[method Node.rpc_config]). Calling this method on unsupported functions will "
"result in an error. See [method Node.rpc]."
msgstr ""
"Effectue une RPC (Remote Procedure Call, litt. Appel de procédure à distance) "
"sur tous les pairs connectés. Ceci est utilisé pour le multijoueur et n'est "
"normalement pas disponible, sauf si la fonction appelée a été marquée comme "
"[i]RPC[/i] (en utilisant [annotation @GDScript.@rpc] ou [method "
"Node.rpc_config]). Appeler cette méthode sur des fonctions non supportées "
"entraînera une erreur. Voir [method Node.rpc]."

msgid ""
"Perform an RPC (Remote Procedure Call) on a specific peer ID (see multiplayer "
"documentation for reference). This is used for multiplayer and is normally "
"not available unless the function being called has been marked as [i]RPC[/i] "
"(using [annotation @GDScript.@rpc] or [method Node.rpc_config]). Calling this "
"method on unsupported functions will result in an error. See [method "
"Node.rpc_id]."
msgstr ""
"Effectue une RPC (Remote Procedure Call, litt. Appel de procédure à distance) "
"sur un ID de pair spécifique (voir la documentation du multijoueur comme "
"référence). Ceci est utilisé pour le multijoueur et n'est normalement pas "
"disponible, sauf si la fonction appelée a été marquée comme [i]RPC[/i] (en "
"utilisant [annotation @GDScript.@rpc] ou [method Node.rpc_config]). Appeler "
"cette méthode sur des fonctions non supportées entraînera une erreur. Voir "
"[method Node.rpc]."

msgid ""
"Returns a copy of this [Callable] with a number of arguments unbound. In "
"other words, when the new callable is called the last few arguments supplied "
"by the user are ignored, according to [param argcount]. The remaining "
"arguments are passed to the callable. This allows to use the original "
"callable in a context that attempts to pass more arguments than this callable "
"can handle, e.g. a signal with a fixed number of arguments. See also [method "
"bind].\n"
"[b]Note:[/b] When this method is chained with other similar methods, the "
"order in which the argument list is modified is read from right to left.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo.unbind(1).call(1, 2) # Calls foo(1).\n"
"\tfoo.bind(3, 4).unbind(1).call(1, 2) # Calls foo(1, 3, 4), note that it does "
"not change the arguments from bind.\n"
"[/codeblock]"
msgstr ""
"Renvoie une copie de ce [Callable] avec un certain nombre d'arguments déliés. "
"En d'autres termes, lorsque le nouveau callable est appelé, les derniers "
"arguments fournis par l'utilisateur sont ignorés, selon [param argcount]. Les "
"arguments restants sont transmis au callable. Cela permet d'utiliser le "
"callable original dans un contexte qui tente de passer plus d'arguments que "
"cet appelable peut gérer, par exemple un signal avec un nombre fixe "
"d'arguments. Voir aussi [method bind].\n"
"[b]Note :[/b] Lorsque cette méthode est enchaînée avec d'autres méthodes "
"similaires, l'ordre dans lequel la liste des arguments est modifiée est lu de "
"droite à gauche.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo.unbind(1).call(1, 2) # Appelle foo(1).\n"
"\tfoo.bind(3, 4).unbind(1).call(1, 2) # Appelle foo(1, 3, 4), notez que cela "
"ne change pas les arguments de bind.\n"
"[/codeblock]"

msgid "Returns [code]true[/code] if both [Callable]s invoke different targets."
msgstr ""
"Renvoie [code]true[/code] si les deux [Callable] invoquent des cibles "
"différentes."

msgid ""
"Returns [code]true[/code] if both [Callable]s invoke the same custom target."
msgstr ""
"Renvoie [code]true[/code] si les deux [Callable]s invoquent la même cible "
"personnalisée."

msgid "Calls the specified method after optional delay."
msgstr "Appelle la méthode spécifiée après un délai optionnel."

msgid ""
"[CallbackTweener] is used to call a method in a tweening sequence. See "
"[method Tween.tween_callback] for more usage information.\n"
"The tweener will finish automatically if the callback's target object is "
"freed.\n"
"[b]Note:[/b] [method Tween.tween_callback] is the only correct way to create "
"[CallbackTweener]. Any [CallbackTweener] created manually will not function "
"correctly."
msgstr ""
"[CallbackTweener] est utilisé pour appeler une méthode dans une séquence de "
"tweening. Voir [method Tween.tween_callback] pour plus d'informations sur son "
"utilisation.\n"
"Le tweener se terminera automatiquement si l'objet cible du callback est "
"libéré.\n"
"[b]Note :[/b] [method Tween.tween_callback] est le seul moyen correct de "
"créer un [CallbackTweener]. Tout [CallbackTweener] créé manuellement ne "
"fonctionnera pas correctement."

msgid ""
"Makes the callback call delayed by given time in seconds.\n"
"[b]Example:[/b] Call [method Node.queue_free] after 2 seconds:\n"
"[codeblock]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback(queue_free).set_delay(2)\n"
"[/codeblock]"
msgstr ""
"Retarde l'appel du callback par le temps donné en secondes.\n"
"[b]Exemple :[/b]Appeler [method Node.queue_free] après 2 secondes :\n"
"[codeblock]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback(queue_free).set_delay(2)\n"
"[/codeblock]"

msgid "Camera node for 2D scenes."
msgstr "Nœud de caméra pour les scènes en 2D."

msgid ""
"Camera node for 2D scenes. It forces the screen (current layer) to scroll "
"following this node. This makes it easier (and faster) to program scrollable "
"scenes than manually changing the position of [CanvasItem]-based nodes.\n"
"Cameras register themselves in the nearest [Viewport] node (when ascending "
"the tree). Only one camera can be active per viewport. If no viewport is "
"available ascending the tree, the camera will register in the global "
"viewport.\n"
"This node is intended to be a simple helper to get things going quickly, but "
"more functionality may be desired to change how the camera works. To make "
"your own custom camera node, inherit it from [Node2D] and change the "
"transform of the canvas by setting [member Viewport.canvas_transform] in "
"[Viewport] (you can obtain the current [Viewport] by using [method "
"Node.get_viewport]).\n"
"Note that the [Camera2D] node's [member Node2D.global_position] doesn't "
"represent the actual position of the screen, which may differ due to applied "
"smoothing or limits. You can use [method get_screen_center_position] to get "
"the real position. Same for the node's [member Node2D.global_rotation] which "
"may be different due to applied rotation smoothing. You can use [method "
"get_screen_rotation] to get the current rotation of the screen."
msgstr ""
"Nœud de caméra pour des scènes 2D. Il force l'écran (couche actuelle) à "
"défiler en suivant ce nœud. Cela rend plus facile (et plus rapide) de "
"programmer des scènes défilantes que de changer manuellement la position des "
"nœuds basés sur [CanvasItem].\n"
"Les caméras s'auto-enregistrent dans le nœud [Viewport] le plus proche (en "
"montant dans l'arbre). Une seule caméra peut être active par fenêtre "
"d'affichage. Si aucune fenêtre n'est disponible en montant de l'arbre, la "
"caméra s'enregistrera dans la fenêtre globale.\n"
"Ce nœud est destiné à être un simple assistant pour commencer à développer "
"rapidement, mais plus de fonctionnalités peuvent être désirées pour changer "
"la façon dont la caméra fonctionne. Pour faire votre propre nœud de caméra "
"personnalisé, héritez-le de [Node2D] et modifiez la transformation du canevas "
"en définissant [member Viewport.canvas_transform] dans [Viewport] (vous "
"pouvez obtenir le [Viewport] actuel en utilisant [method "
"Node.get_viewport]).\n"
"Notez que la position globale ([member Node2D.global_position]) du nœud "
"[Camera2D] ne représente pas la position actuelle de l'écran, qui peut "
"différer en raison du lissage appliqué ou des limites. Vous pouvez utiliser "
"[method get_screen_center_position] pour obtenir la position réelle. Même "
"chose pour la rotation globale ([member Node2D.global_rotation]) qui peut "
"être différente en raison du lissage de rotation appliqué. Vous pouvez "
"utiliser [method get_screen_rotation] pour obtenir la rotation actuelle de "
"l'écran."

msgid "2D Isometric Demo"
msgstr "Démo 2D isométrique"

msgid "Aligns the camera to the tracked node."
msgstr "Aligne la caméra sur le nœud suivi."

msgid "Forces the camera to update scroll immediately."
msgstr "Force la caméra à mettre à jour le défilement immédiatement."

msgid ""
"Returns the specified [enum Side]'s margin. See also [member "
"drag_bottom_margin], [member drag_top_margin], [member drag_left_margin], and "
"[member drag_right_margin]."
msgstr ""
"Renvoie la marge du côté [enum Side] spécifié. Voir aussi [member "
"drag_bottom_margin], [member drag_top_margin], [member drag_left_margin], et "
"[member drag_right_margin]."

msgid ""
"Returns the camera limit for the specified [enum Side]. See also [member "
"limit_bottom], [member limit_top], [member limit_left], and [member "
"limit_right]."
msgstr ""
"Renvoie la limite de la caméra pour le côté [enum Side] spécifié. Voir aussi "
"[member limit_bottom], [member limit_top], [member limit_left], et [member "
"limit_right]."

msgid ""
"Returns the center of the screen from this camera's point of view, in global "
"coordinates.\n"
"[b]Note:[/b] The exact targeted position of the camera may be different. See "
"[method get_target_position]."
msgstr ""
"Renvoie le centre de l'écran du point de vue de cette caméra, dans les "
"coordonnées globales.\n"
"[b]Note :[/b] La position ciblée exacte de la caméra peut être différente. "
"Voir [method get_target_position]."

msgid ""
"Returns the current screen rotation from this camera's point of view.\n"
"[b]Note:[/b] The screen rotation can be different from [member "
"Node2D.global_rotation] if the camera is rotating smoothly due to [member "
"rotation_smoothing_enabled]."
msgstr ""
"Renvoie la rotation actuelle de l'écran du point de vue de cette caméra.\n"
"[b]Note :[/b] La rotation de l'écran peut être différente de [member "
"Node2D.global_rotation] si la caméra tourne de manière lisse à cause de "
"[member rotation_smoothing_enabled]."

msgid ""
"Returns [code]true[/code] if this [Camera2D] is the active camera (see "
"[method Viewport.get_camera_2d])."
msgstr ""
"Renvoie [code]true[/code] si cette [Camera2D] est la caméra active (voir "
"[method Viewport.get_camera_2d])."

msgid ""
"Forces this [Camera2D] to become the current active one. [member enabled] "
"must be [code]true[/code]."
msgstr ""
"Force cette [Camera2D] à devenir la caméra active courante. [member enabled] "
"doit valoir [code]true[/code]."

msgid ""
"Sets the camera's position immediately to its current smoothing destination.\n"
"This method has no effect if [member position_smoothing_enabled] is "
"[code]false[/code]."
msgstr ""
"Définit la position de la caméra immédiatement à sa destination de lissage "
"actuelle.\n"
"Cette méthode n'a aucun effet si [member position_smoothing_enabled] vaut "
"[code]false[/code]."

msgid ""
"Sets the specified [enum Side]'s margin. See also [member "
"drag_bottom_margin], [member drag_top_margin], [member drag_left_margin], and "
"[member drag_right_margin]."
msgstr ""
"Définit la marge du côté [enum Side] spécifié. Voir aussi [member "
"drag_bottom_margin], [member drag_top_margin], [member drag_left_margin], et "
"[member drag_right_margin]."

msgid ""
"Sets the camera limit for the specified [enum Side]. See also [member "
"limit_bottom], [member limit_top], [member limit_left], and [member "
"limit_right]."
msgstr ""
"Définit la limite de la caméra pour le côté [enum Side] spécifié. Voir aussi "
"[member limit_bottom], [member limit_top], [member limit_left], et [member "
"limit_right]."

msgid "The Camera2D's anchor point."
msgstr "Le point d'ancrage de la caméra2D."

msgid ""
"The custom [Viewport] node attached to the [Camera2D]. If [code]null[/code] "
"or not a [Viewport], uses the default viewport instead."
msgstr ""
"Le nœud [Viewport] personnalisé attaché à la [Camera2D]. Si [code]null[/code] "
"ou que ça n'est pas un [Viewport], ça utilise la fenêtre d'affichage par "
"défaut à la place."

msgid ""
"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
msgstr ""
"Si [code]true[/code], dessine le rectangle de la marge de glissage de la "
"caméra activée dans l'éditeur."

msgid "If [code]true[/code], draws the camera's limits rectangle in the editor."
msgstr ""
"Si [code]true[/code], dessine le rectangle des limites de la caméra activée "
"dans l'éditeur."

msgid "If [code]true[/code], draws the camera's screen rectangle in the editor."
msgstr "Si [code]true[/code], affiche le rectangle de la caméra dans l'éditeur."

msgid ""
"Controls whether the camera can be active or not. If [code]true[/code], the "
"[Camera2D] will become the main camera when it enters the scene tree and "
"there is no active camera currently (see [method Viewport.get_camera_2d]).\n"
"When the camera is currently active and [member enabled] is set to "
"[code]false[/code], the next enabled [Camera2D] in the scene tree will become "
"active."
msgstr ""
"Contrôle si la caméra peut être active ou non. Si [code]true[/code], la "
"[Camera2D] deviendra la caméra principale lorsqu'elle entre dans "
"l’arborescence de scène et il n'y a pas de caméra active actuellement (voir "
"[method Viewport.get_camera_2d]).\n"
"Lorsque la caméra est actuellement active et [member enabled] est défini à "
"[code]false[/code], la [Camera2D] suivante avec cette propriété activée dans "
"l'arbre de scène deviendra la caméra principale."

msgid ""
"If [code]true[/code], the camera's rendered view is not affected by its "
"[member Node2D.rotation] and [member Node2D.global_rotation]."
msgstr ""
"Si [code]true[/code], la vue rendue de la caméra n'est pas affectée par "
"[member Node2D.rotation] et [member Node2D.global_rotation]."

msgid ""
"Bottom scroll limit in pixels. The camera stops moving when reaching this "
"value, but [member offset] can push the view past the limit."
msgstr ""
"La limite basse de défilement en pixels. La caméra s'arrête quand elle "
"atteint cette valeur, mais [member offset] peut pousser la vue au-delà de "
"cette limite."

msgid ""
"If [code]true[/code], the limits will be enabled. Disabling this will allow "
"the camera to focus anywhere, when the four [code]limit_*[/code] properties "
"will not work."
msgstr ""
"Si [code]true[/code], les limites seront activées. Désactiver ceci permettra "
"à la caméra de se focaliser n'importe où, car les quatre propriétés "
"[code]limit_*[/code] ne fonctionneront pas."

msgid ""
"Left scroll limit in pixels. The camera stops moving when reaching this "
"value, but [member offset] can push the view past the limit."
msgstr ""
"La limite gauche de défilement en pixels. La caméra s'arrête quand elle "
"atteint cette valeur, mais [member offset] peut pousser la vue au-delà de "
"cette limite."

msgid ""
"Right scroll limit in pixels. The camera stops moving when reaching this "
"value, but [member offset] can push the view past the limit."
msgstr ""
"La limite droite de défilement en pixels. La caméra s'arrête quand elle "
"atteint cette valeur, mais [member offset] peut pousser la vue au-delà de "
"cette limite."

msgid ""
"If [code]true[/code], the camera smoothly stops when reaches its limits.\n"
"This property has no effect if [member position_smoothing_enabled] is "
"[code]false[/code].\n"
"[b]Note:[/b] To immediately update the camera's position to be within limits "
"without smoothing, even with this setting enabled, invoke [method "
"reset_smoothing]."
msgstr ""
"Si [code]true[/code], la caméra s'arrête en douceur quand elle atteint ses "
"limites.\n"
"Cette propriété n'a aucun effet si [member position_smoothing_enabled] vaut "
"[code]false[/code].\n"
"[b]Note :[/b] Pour mettre immédiatement à jour la position de la caméra pour "
"être dans les limites sans ralenti, même avec ce réglage activé, appelez "
"[method reset_smoothing]."

msgid ""
"Top scroll limit in pixels. The camera stops moving when reaching this value, "
"but [member offset] can push the view past the limit."
msgstr ""
"La limite haute de défilement en pixels. La caméra s'arrête quand elle "
"atteint cette valeur, mais [member offset] peut pousser la vue au-delà de "
"cette limite."

msgid ""
"The camera's relative offset. Useful for looking around or camera shake "
"animations. The offsetted camera can go past the limits defined in [member "
"limit_top], [member limit_bottom], [member limit_left] and [member "
"limit_right]."
msgstr ""
"Le décalage relatif de la caméra. Utile pour regarder autour ou des "
"animations de vibrations de la caméra. Le décalage de la caméra peut dépasser "
"les limites définies dans [member limit_top], [member limit_bottom], [member "
"limit_left] et [member limit_right]."

msgid ""
"If [code]true[/code], the camera's view smoothly moves towards its target "
"position at [member position_smoothing_speed]."
msgstr ""
"Si [code]true[/code], la vue de la caméra se déplace de manière lisse vers sa "
"position cible à la vitesse [member position_smoothing_speed]."

msgid ""
"Speed in pixels per second of the camera's smoothing effect when [member "
"position_smoothing_enabled] is [code]true[/code]."
msgstr ""
"La vitesse en pixels par seconde de l'effet de lissage de la caméra quand "
"[member position_smoothing_enabled] vaut [code]true[/code]."

msgid "The camera's process callback."
msgstr "Le callback de traitement de la caméra."

msgid ""
"If [code]true[/code], the camera's view smoothly rotates, via asymptotic "
"smoothing, to align with its target rotation at [member "
"rotation_smoothing_speed].\n"
"[b]Note:[/b] This property has no effect if [member ignore_rotation] is "
"[code]true[/code]."
msgstr ""
"Si [code]true[/code], la vue de la caméra tourne de manière lisse, via un "
"lissage asymptotique, pour s'aligner avec sa rotation cible à la vitesse "
"[member rotation_smoothing_speed].\n"
"[b]Note :[/b] Cette propriété n'a aucun effet si [member ignore_rotation] "
"vaut [code]true[/code]."

msgid ""
"The angular, asymptotic speed of the camera's rotation smoothing effect when "
"[member rotation_smoothing_enabled] is [code]true[/code]."
msgstr ""
"La vitesse angulaire et asymptotique de l'effet de lissage de rotation de la "
"caméra lorsque [member rotation_smoothing_enabled] vaut [code]true[/code]."

msgid ""
"The camera's zoom. Higher values are more zoomed in. For example, a zoom of "
"[code]Vector2(2.0, 2.0)[/code] will be twice as zoomed in on each axis (the "
"view covers an area four times smaller). In contrast, a zoom of "
"[code]Vector2(0.5, 0.5)[/code] will be twice as zoomed out on each axis (the "
"view covers an area four times larger). The X and Y components should "
"generally always be set to the same value, unless you wish to stretch the "
"camera view.\n"
"[b]Note:[/b] [member FontFile.oversampling] does [i]not[/i] take [Camera2D] "
"zoom into account. This means that zooming in/out will cause bitmap fonts and "
"rasterized (non-MSDF) dynamic fonts to appear blurry or pixelated unless the "
"font is part of a [CanvasLayer] that makes it ignore camera zoom. To ensure "
"text remains crisp regardless of zoom, you can enable MSDF font rendering by "
"enabling [member ProjectSettings.gui/theme/"
"default_font_multichannel_signed_distance_field] (applies to the default "
"project font only), or enabling [b]Multichannel Signed Distance Field[/b] in "
"the import options of a DynamicFont for custom fonts. On system fonts, "
"[member SystemFont.multichannel_signed_distance_field] can be enabled in the "
"inspector."
msgstr ""
"Le zoom de la caméra. Les valeurs plus élevées sont plus zoomées. Par "
"exemple, un zoom de [code]Vector2(2.0, 2.0)[/code] sera deux fois plus zoomé "
"sur chaque axe (la vue couvre une zone quatre fois plus petite). Par contre, "
"un zoom de [code]Vector2(0.5, 0.5)[/code] sera deux fois moins zoomé sur "
"chaque axe (la vue couvre une zone quatre fois plus grande). Les composantes "
"X et Y doivent généralement être définies à la même valeur, sauf si vous "
"souhaitez étirer la vue de la caméra.\n"
"[b]Note :[/b] [member FontFile.oversampling] ne prend [i]pas[/i] le zoom de "
"[Camera2D] en compte. Cela signifie que zoomer/dézoomer causera les polices "
"bitmap et les polices dynamiques rasterisées (non CDSM) d'apparaître floues "
"ou pixelisées à moins que la police fasse partie d'un [CanvasLayer] qui la "
"fait ignorer le zoom de la caméra. Pour garantir que le texte reste net peu "
"importe le zoom, vous pouvez activer le rendu de police CDSM en activant "
"[member ProjectSettings.gui/theme/"
"default_font_multichannel_signed_distance_field] (s'applique uniquement à la "
"police du projet par défaut), ou en activant [b]Champ de Distance Signé "
"Multicanal[/b] dans les options d'importation d'une DynamicFont pour les "
"polices personnalisées. Sur les polices système, [member "
"SystemFont.multichannel_signed_distance_field] peut être activé dans "
"l'inspecteur."

msgid ""
"The camera's position is fixed so that the top-left corner is always at the "
"origin."
msgstr ""
"La position de la caméra est fixe de telle sorte que le coin supérieur gauche "
"soit toujours à l'origine."

msgid ""
"The camera's position takes into account vertical/horizontal offsets and the "
"screen size."
msgstr ""
"La position de la caméra prend en compte le décalage vertical et horizontal, "
"et la taille de l'écran."

msgid ""
"The camera updates during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"La caméra se met à jour pendant les trames de physique (voir [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"The camera updates during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"La caméra se met à jour pendant les trames de traitement (voir [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid "Camera node, displays from a point of view."
msgstr "Un nœud de caméra ; affichage d'un point de vue."

msgid ""
"[Camera3D] is a special node that displays what is visible from its current "
"location. Cameras register themselves in the nearest [Viewport] node (when "
"ascending the tree). Only one camera can be active per viewport. If no "
"viewport is available ascending the tree, the camera will register in the "
"global viewport. In other words, a camera just provides 3D display "
"capabilities to a [Viewport], and, without one, a scene registered in that "
"[Viewport] (or higher viewports) can't be displayed."
msgstr ""
"[Camera3D] est un nœud spécial qui affiche ce qui est visible depuis son "
"emplacement actuel. Les caméras s'enregistrent dans le nœud [Viewport] le "
"plus proche (en remontant l'arborescence). Une seule caméra peut être active "
"par viewport. Si aucun viewport n'est disponible dans l'arborescence, la "
"caméra s'enregistrera dans la viewport racine. En d'autres termes, une caméra "
"permet l'affichage en 3D dans un [Viewport] et, sans caméra, une scène "
"enregistrée dans ce [Viewport] (où les viewports plus hauts) ne peut être "
"affichée."

msgid ""
"If this is the current camera, remove it from being current. If [param "
"enable_next] is [code]true[/code], request to make the next camera current, "
"if any."
msgstr ""
"Si c'est la caméra actuelle, la retire d'être l'actuelle. Si [param "
"enable_next] vaut [code]true[/code], demande de rendre la prochaine caméra "
"l'actuelle, s'il y en a une."

msgid ""
"Returns the projection matrix that this camera uses to render to its "
"associated viewport. The camera must be part of the scene tree to function."
msgstr ""
"Renvoie la matrice de projection que cette caméra utilise pour rendre dans "
"son viewport associé. La caméra doit faire partie de l’arborescence de scène "
"pour fonctionner."

msgid "Returns the camera's RID from the [RenderingServer]."
msgstr "Renvoie le RID de la caméra depuis le [RenderingServer]."

msgid ""
"Returns the transform of the camera plus the vertical ([member v_offset]) and "
"horizontal ([member h_offset]) offsets; and any other adjustments made to the "
"position and orientation of the camera by subclassed cameras such as "
"[XRCamera3D]."
msgstr ""
"Renvoie la transformation de la caméra plus les décalages verticaux ([member "
"v_offset]) et horizontaux ([member h_offset]) et tout autre ajustement "
"apporté à la position et à l'orientation de la caméra par des caméras sous-"
"classées telles que [XRCamera3D]."

msgid ""
"Returns whether or not the specified layer of the [member cull_mask] is "
"enabled, given a [param layer_number] between 1 and 20."
msgstr ""
"Renvoie si la couche spécifiée du [member cull_mask] est activée, selon un "
"[param layer_number] entre 1 et 20."

msgid ""
"Returns the camera's frustum planes in world space units as an array of "
"[Plane]s in the following order: near, far, left, top, right, bottom. Not to "
"be confused with [member frustum_offset]."
msgstr ""
"Renvoie les plans du frustum de la caméra en unités de l'espace global en "
"tant que tableau de [Plane]s dans l'ordre suivant : près (near plane), "
"lointain (far plane), gauche, haut, droite, bas. Ne pas être confondu avec "
"[member frustum_offset]."

msgid ""
"Returns the RID of a pyramid shape encompassing the camera's view frustum, "
"ignoring the camera's near plane. The tip of the pyramid represents the "
"position of the camera."
msgstr ""
"Renvoie le RID d'une forme pyramidale englobant le frustum de vue de la "
"caméra, ignorant le plan proche (near plane) de la caméra. La pointe de la "
"pyramide représente la position de la caméra."

msgid ""
"Returns [code]true[/code] if the given position is behind the camera (the "
"blue part of the linked diagram). [url=https://raw.githubusercontent.com/"
"godotengine/godot-docs/master/img/camera3d_position_frustum.png]See this "
"diagram[/url] for an overview of position query methods.\n"
"[b]Note:[/b] A position which returns [code]false[/code] may still be outside "
"the camera's field of view."
msgstr ""
"Renvoie [code]true[/code] si la position donnée est derrière la caméra (la "
"partie bleue du diagramme lié). [url=https://raw.githubusercontent.com/"
"godotengine/godot-docs/master/img/camera3d_position_frustum.png] Voir ce "
"diagramme[/url] pour un aperçu des méthodes de requête de position.\n"
"[b]Note :[/b] Une position qui renvoie [code]false[/code] peut quand même "
"être hors du champ de vision de la caméra."

msgid ""
"Returns [code]true[/code] if the given position is inside the camera's "
"frustum (the green part of the linked diagram). [url=https://"
"raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"camera3d_position_frustum.png]See this diagram[/url] for an overview of "
"position query methods."
msgstr ""
"Renvoie [code]true[/code] si la position donnée est à l'intérieur du frustum "
"de la caméra (la partie verte du diagramme lié). [url=https://"
"raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"camera3d_position_frustum.png] Voir ce diagramme[/url] pour un aperçu des "
"méthodes de requête de position."

msgid ""
"Makes this camera the current camera for the [Viewport] (see class "
"description). If the camera node is outside the scene tree, it will attempt "
"to become current once it's added."
msgstr ""
"Fait que cette caméra devient l'actuelle pour le [Viewport] (voir la "
"description de la classe). Si le nœud de la caméra est en dehors de "
"l'arborescence de la scène, il tentera de devenir l'actuel dès qu'il sera "
"ajouté."

msgid ""
"Returns the 3D point in world space that maps to the given 2D coordinate in "
"the [Viewport] rectangle on a plane that is the given [param z_depth] "
"distance into the scene away from the camera."
msgstr ""
"Renvoie le point 3D dans l'espace global qui est associé aux coordonnées 2D "
"données dans le rectangle du [Viewport] et qui est sur un plan qui est à une "
"distance [param z_depth] donnée de la caméra dans la scène."

msgid ""
"Returns a normal vector in world space, that is the result of projecting a "
"point on the [Viewport] rectangle by the inverse camera projection. This is "
"useful for casting rays in the form of (origin, normal) for object "
"intersection or picking."
msgstr ""
"Renvoie un vecteur normal dans le repère global, qui est le résultat de la "
"projection d'un point sur le rectangle [Viewport] par la projection inverse "
"de la caméra. Ceci est utile pour lancer des rayons sous la forme (origine, "
"normale) pour l'intersection ou la sélection d'objets."

msgid ""
"Returns a 3D position in world space, that is the result of projecting a "
"point on the [Viewport] rectangle by the inverse camera projection. This is "
"useful for casting rays in the form of (origin, normal) for object "
"intersection or picking."
msgstr ""
"Renvoie une position 3D dans le repère global, qui est le résultat de la "
"projection d'un point sur le rectangle [Viewport] par la projection inverse "
"de la caméra. Ceci est utile pour lancer des rayons sous la forme (origine, "
"normale) pour l'intersection ou la sélection d'objets."

msgid ""
"Sets the camera projection to frustum mode (see [constant "
"PROJECTION_FRUSTUM]), by specifying a [param size], an [param offset], and "
"the [param z_near] and [param z_far] clip planes in world space units. See "
"also [member frustum_offset]."
msgstr ""
"Définit la projection de la caméra en mode frustum (voir [constant "
"PROJECTION_FRUSTUM]), en spécifiant une taille [param size], un décalage "
"[param offset] et les plans de coupe proches et lointains [param z_near] et "
"[param z_far] en unités de l'espace global. Voir aussi [member "
"frustum_offset]."

msgid ""
"Sets the camera projection to orthogonal mode (see [constant "
"PROJECTION_ORTHOGONAL]), by specifying a [param size], and the [param z_near] "
"and [param z_far] clip planes in world space units.\n"
"As a hint, 3D games that look 2D often use this projection, with [param size] "
"specified in pixels."
msgstr ""
"Définit la projection de la caméra en mode orthogonal (voir [constant "
"PROJECTION_ORTHOGONAL]), en spécifiant une taille [param size], et les plans "
"de coupe proches et lointains [param z_near] et [param z_far] en unités de "
"l'espace global.\n"
"Comme conseil, les jeux 3D qui ont un aspect 2D utilisent souvent cette "
"projection, avec [param size] spécifié en pixels."

msgid ""
"Sets the camera projection to perspective mode (see [constant "
"PROJECTION_PERSPECTIVE]), by specifying a [param fov] (field of view) angle "
"in degrees, and the [param z_near] and [param z_far] clip planes in world "
"space units."
msgstr ""
"Définit la projection de la caméra en mode perspective (voir [constant "
"PROJECTION_PERSPECTIVE]), en spécifiant un angle de champ de vision [param "
"fov] en degrés, et les plans de coupe proches et lointains [param z_near] et "
"[param z_far] en unités de l'espace global."

msgid ""
"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
"3D point in world space.\n"
"[b]Note:[/b] When using this to position GUI elements over a 3D viewport, use "
"[method is_position_behind] to prevent them from appearing if the 3D point is "
"behind the camera:\n"
"[codeblock]\n"
"# This code block is part of a script that inherits from Node3D.\n"
"# `control` is a reference to a node inheriting from Control.\n"
"control.visible = not "
"get_viewport().get_camera_3d().is_position_behind(global_transform.origin)\n"
"control.position = "
"get_viewport().get_camera_3d().unproject_position(global_transform.origin)\n"
"[/codeblock]"
msgstr ""
"Renvoie les coordonnées 2D dans le rectangle du [Viewport] qui correspondent "
"à un point 3D donné dans le repère global.\n"
"[b]Note :[/b] Lorsque vous utilisez cette méthode pour positionner des "
"éléments graphiques sur un [Viewport] en 3D, pensez à utiliser [method "
"is_position_behind] pour les empêcher d'apparaître tant que le point 3D se "
"trouve derrière la caméra :\n"
"[codeblock]\n"
"# Cet extrait de code fait partie d'un script qui hérite de Node3D.\n"
"# `control` fait référence à un nœud qui hérite de Control.\n"
"control.visible = not "
"get_viewport().get_camera_3d().is_position_behind(global_transform.origin)\n"
"control.position = "
"get_viewport().get_camera_3d().unproject_position(global_transform.origin)\n"
"[/codeblock]"

msgid "The [CameraAttributes] to use for this camera."
msgstr "Le [CameraAttributes] à utiliser pour cette caméra."

msgid "The [Compositor] to use for this camera."
msgstr "Le [Compositor] à utiliser pour cette caméra."

msgid ""
"The culling mask that describes which [member VisualInstance3D.layers] are "
"rendered by this camera. By default, all 20 user-visible layers are "
"rendered.\n"
"[b]Note:[/b] Since the [member cull_mask] allows for 32 layers to be stored "
"in total, there are an additional 12 layers that are only used internally by "
"the engine and aren't exposed in the editor. Setting [member cull_mask] using "
"a script allows you to toggle those reserved layers, which can be useful for "
"editor plugins.\n"
"To adjust [member cull_mask] more easily using a script, use [method "
"get_cull_mask_value] and [method set_cull_mask_value].\n"
"[b]Note:[/b] [VoxelGI], SDFGI and [LightmapGI] will always take all layers "
"into account to determine what contributes to global illumination. If this is "
"an issue, set [member GeometryInstance3D.gi_mode] to [constant "
"GeometryInstance3D.GI_MODE_DISABLED] for meshes and [member "
"Light3D.light_bake_mode] to [constant Light3D.BAKE_DISABLED] for lights to "
"exclude them from global illumination."
msgstr ""
"Le culling mask qui décrit quelles couches [member VisualInstance3D.layers] "
"sont rendues par cette caméra. Par défaut, les 20 couches visibles par "
"l'utilisateur sont rendues.\n"
"[b]Note :[/b] Comme le [member cull_mask] permet de stocker 32 couches au "
"total, il y a 12 couches supplémentaires qui ne sont utilisées que par le "
"moteur et ne sont pas exposées dans l'éditeur. Définir [member cull_mask] en "
"utilisant un script vous permet d'utiliser ces couches réservées, ce qui peut "
"être utile pour les plugins d'éditeur.\n"
"Pour définir [member cull_mask] plus facilement en utilisant un script, "
"utilisez [method get_cull_mask_value] et [method set_cull_mask_value].\n"
"[b]Note :[/b] [VoxelGI], SDFGI et [LightmapGI] prendront toujours en compte "
"toutes les couches pour déterminer ce qui contribue à l'éclairage global. Si "
"c'est un problème, définissez [member GeometryInstance3D.gi_mode] à [constant "
"GeometryInstance3D.GI_MODE_DISABLED] pour les maillages et [member "
"Light3D.light_bake_mode] à [constant Light3D.BAKE_DISABLED] pour les lumières "
"pour les exclure de l'illumination globale."

msgid ""
"If [code]true[/code], the ancestor [Viewport] is currently using this "
"camera.\n"
"If multiple cameras are in the scene, one will always be made current. For "
"example, if two [Camera3D] nodes are present in the scene and only one is "
"current, setting one camera's [member current] to [code]false[/code] will "
"cause the other camera to be made current."
msgstr ""
"Si [code]true[/code], le [Viewport] ancêtre utilise actuellement cette "
"caméra.\n"
"Si plusieurs caméras sont dans la scène, une sera toujours rendu actuelle. "
"Par exemple, si deux nœuds [Camera3D] sont présents dans la scène et qu'une "
"seule est actuelle, définir le [member current] d'une caméra à [code]false[/"
"code] fera que l'autre caméra soit rendue actuelle."

msgid ""
"If not [constant DOPPLER_TRACKING_DISABLED], this camera will simulate the "
"[url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for "
"objects changed in particular [code]_process[/code] methods.\n"
"[b]Note:[/b] The Doppler effect will only be heard on [AudioStreamPlayer3D]s "
"if [member AudioStreamPlayer3D.doppler_tracking] is not set to [constant "
"AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED]."
msgstr ""
"Si non défini à [constant DOPPLER_TRACKING_DISABLED], cette caméra simulera "
"l'effet [url=https://fr.wikipedia.org/wiki/Effet_Doppler]Doppler[/url] pour "
"les objets modifiés dans des méthodes [code]_process[/code] particulières.\n"
"[b]Note :[/b] L'effet Doppler ne sera entendu sur des [AudioStreamPlayer3D]s "
"que si leur [member AudioStreamPlayer3D.doppler_tracking] n'est pas défini "
"sur [constant AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED]."

msgid "The [Environment] to use for this camera."
msgstr "L'[Environment] à utiliser pour cette caméra."

msgid ""
"The camera's field of view angle (in degrees). Only applicable in perspective "
"mode. Since [member keep_aspect] locks one axis, [member fov] sets the other "
"axis' field of view angle.\n"
"For reference, the default vertical field of view value ([code]75.0[/code]) "
"is equivalent to a horizontal FOV of:\n"
"- ~91.31 degrees in a 4:3 viewport\n"
"- ~101.67 degrees in a 16:10 viewport\n"
"- ~107.51 degrees in a 16:9 viewport\n"
"- ~121.63 degrees in a 21:9 viewport"
msgstr ""
"L'angle du champ de vision de la caméra (en degrés). Seulement disponible en "
"mode perspective. Comme [member keep_aspect] verrouille un axe, [member fov] "
"définit l'angle du champ de vision de l'autre axe.\n"
"Pour référence, l'angle de champ de vision par défaut ([code]75.0[/code]) est "
"équivalent à un champ de vision horizontal de :\n"
"- ~91.31 degrés pour une fenêtre avec un ratio de 4:3\n"
"- ~101.67 degrés pour une fenêtre avec un ratio de 6:10\n"
"- ~107.51 degrés pour une fenêtre avec un ratio de 16:9\n"
"- ~121.63 degrés pour une fenêtre avec un ratio de 21:9"

msgid ""
"The camera's frustum offset. This can be changed from the default to create "
"\"tilted frustum\" effects such as [url=https://zdoom.org/wiki/Y-shearing]Y-"
"shearing[/url].\n"
"[b]Note:[/b] Only effective if [member projection] is [constant "
"PROJECTION_FRUSTUM]."
msgstr ""
"Le décalage du frustum de la caméra. Cela peut être modifié depuis la valeur "
"par défaut pour créer des effets de « frustrum penché » tel que le "
"[url=https://zdoom.org/wiki/Y-shearing]Y-shearing[/url].\n"
"[b]Note :[/b] Seulement effectif si [member projection] vaut [constant "
"PROJECTION_FRUSTUM]."

msgid "The horizontal (X) offset of the camera viewport."
msgstr "Le décalage horizontal (X) de la fenêtre de la caméra."

msgid ""
"The axis to lock during [member fov]/[member size] adjustments. Can be either "
"[constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
msgstr ""
"L'axe à verrouiller pendant les réglages [member fov] ou [member size]. Peut "
"être soit [constant KEEP_WIDTH] ou [constant KEEP_HEIGHT]."

msgid ""
"The camera's projection mode. In [constant PROJECTION_PERSPECTIVE] mode, "
"objects' Z distance from the camera's local space scales their perceived size."
msgstr ""
"Le mode de projection de la caméra. Dans le mode [constant "
"PROJECTION_PERSPECTIVE], la distance des objets dans l'espace local de la "
"caméra détermine la taille apparante de ces objets."

msgid ""
"The camera's size in meters measured as the diameter of the width or height, "
"depending on [member keep_aspect]. Only applicable in orthogonal and frustum "
"modes."
msgstr ""
"La taille de la caméra en mètres mesuré comme le diamètre de la largeur ou de "
"la hauteur, selon [member keep_aspect]. Seulement applicable en mode "
"orthogonal et frustum."

msgid "The vertical (Y) offset of the camera viewport."
msgstr "Le décalage vertical (Y) de la fenêtre de la caméra."

msgid ""
"Perspective projection. Objects on the screen becomes smaller when they are "
"far away."
msgstr ""
"Projection en perspective. Les objets sur l'écran deviennent plus petits "
"lorsqu'ils sont éloignés."

msgid ""
"Orthogonal projection, also known as orthographic projection. Objects remain "
"the same size on the screen no matter how far away they are."
msgstr ""
"La projection orthogonale, également connue sous le nom de projection "
"orthographique. Les objets gardent la même taille à l'écran, indépendamment "
"de leur distance."

msgid ""
"Frustum projection. This mode allows adjusting [member frustum_offset] to "
"create \"tilted frustum\" effects."
msgstr ""
"Projection du frustum. Ce mode permet d'ajuster [member frustum_offset] pour "
"créer des effets « frustrum penché »."

msgid ""
"Preserves the horizontal aspect ratio; also known as Vert- scaling. This is "
"usually the best option for projects running in portrait mode, as taller "
"aspect ratios will benefit from a wider vertical FOV."
msgstr ""
"Préserve le rapport d'aspect horizontal, aussi connu comme vertical scaling. "
"C'est généralement la meilleure option pour les projets qui utilisent le mode "
"portrait, étant donné que les rapports plus hauts bénéficient plus des champs "
"de vision plus larges."

msgid ""
"Preserves the vertical aspect ratio; also known as Hor+ scaling. This is "
"usually the best option for projects running in landscape mode, as wider "
"aspect ratios will automatically benefit from a wider horizontal FOV."
msgstr ""
"Préserve le rapport d'aspect vertical ; également connu sous le nom d'échelle "
"Hor+. C'est généralement la meilleure option pour les projets en mode "
"paysage, car les ratios d'aspect plus larges bénéficieront automatiquement "
"d'un champ de vision horizontal plus large."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in [code]_process[/"
"code]. Changes in the relative velocity of this camera compared to those "
"objects affect how audio is perceived (changing the audio's [member "
"AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Simule [url=https://fr.wikipedia.org/wiki/Effet_Doppler]l'effet Doppler[/url] "
"en suivant la position des objets qui ont changé lors de [code]_process[/"
"code]. Les changements dans la vitesse relative de cette caméra par rapport à "
"ces objets affectent la façon dont l'audio est perçu (changement de la "
"hauteur [member AudioStreamPlayer3D.pitch_scale] de l'audio)."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in "
"[code]_physics_process[/code]. Changes in the relative velocity of this "
"camera compared to those objects affect how audio is perceived (changing the "
"audio's [member AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Simule [url=https://fr.wikipedia.org/wiki/Effet_Doppler]l'effet Doppler[/url] "
"en suivant la position des objets qui ont changé lors de "
"[code]_physics_process[/code]. Les changements dans la vitesse relative de "
"cette caméra par rapport à ces objets affectent la façon dont l'audio est "
"perçu (changement de la hauteur [member AudioStreamPlayer3D.pitch_scale] de "
"l'audio)."

msgid "Parent class for camera settings."
msgstr "Classe parente pour les réglages de caméra."

msgid ""
"Controls camera-specific attributes such as depth of field and exposure "
"override.\n"
"When used in a [WorldEnvironment] it provides default settings for exposure, "
"auto-exposure, and depth of field that will be used by all cameras without "
"their own [CameraAttributes], including the editor camera. When used in a "
"[Camera3D] it will override any [CameraAttributes] set in the "
"[WorldEnvironment]. When used in [VoxelGI] or [LightmapGI], only the exposure "
"settings will be used.\n"
"See also [Environment] for general 3D environment settings.\n"
"This is a pure virtual class that is inherited by [CameraAttributesPhysical] "
"and [CameraAttributesPractical]."
msgstr ""
"Contrôle des attributs spécifiques à la caméra tels que la profondeur de "
"champ et la redéfinition de l'exposition.\n"
"Lorsqu'elle est utilisée dans un [WorldEnvironment], elle fournit des "
"paramètres par défaut pour l'exposition, l'exposition automatique et la "
"profondeur de champ qui seront utilisés par toutes les caméras sans leurs "
"propres [CameraAttributes], y compris la caméra de l'éditeur. Lorsqu'elle est "
"utilisée dans une [Camera3D], elle remplacera tout [CameraAttributes] défini "
"dans le [WorldEnvironment]. Lorsqu'elle est utilisée dans [VoxelGI] ou "
"[LightmapGI], seuls les paramètres d'exposition seront utilisés.\n"
"Voir aussi [Environment] pour les paramètres généraux de l'environnement 3D.\n"
"Il s'agit d'une classe virtuelle pure héritée par [CameraAttributesPhysical] "
"et [CameraAttributesPractical]."

msgid ""
"If [code]true[/code], enables the tonemapping auto exposure mode of the scene "
"renderer. If [code]true[/code], the renderer will automatically determine the "
"exposure setting to adapt to the scene's illumination and the observed light."
msgstr ""
"Si [code]true[/code], active le mode d'exposition automatique du tonemapping "
"du rendu de scène. Si [code]true[/code], le moteur de rendu déterminera "
"automatiquement le réglage d'exposition pour s'adapter à l'éclairage de la "
"scène et à la lumière observée."

msgid ""
"The scale of the auto exposure effect. Affects the intensity of auto exposure."
msgstr ""
"L'échelle de l'effet d'exposition automatique. Affecte l'intensité de "
"l'exposition automatique."

msgid ""
"The speed of the auto exposure effect. Affects the time needed for the camera "
"to perform auto exposure."
msgstr ""
"La vitesse de l'effet d'exposition automatique. Affecte le temps nécessaire "
"pour que la caméra effectue l'exposition automatique."

msgid ""
"Multiplier for the exposure amount. A higher value results in a brighter "
"image."
msgstr ""
"Multiplicateur pour la quantité d'exposition. Une valeur plus élevée conduit "
"à une image plus brillante."

msgid ""
"Sensitivity of camera sensors, measured in ISO. A higher sensitivity results "
"in a brighter image.\n"
"If [member auto_exposure_enabled] is [code]true[/code], this can be used as a "
"method of exposure compensation, doubling the value will increase the "
"exposure value (measured in EV100) by 1 stop.\n"
"[b]Note:[/b] Only available when [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] is enabled."
msgstr ""
"Sensibilité des capteurs de caméra, mesurée en ISO. Une sensibilité plus "
"élevée conduit à une image plus brillante.\n"
"Si [member auto_exposure_enabled] vaut [code]true[/code], cela peut être "
"utilisé comme méthode de compensation de l'exposition, doubler la valeur "
"augmentera la valeur d'exposition (mesurée en EV100) d'un IL (Indice de "
"lumination).\n"
"[b]Note :[/b] Seulement disponible lorsque [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] est activé."

msgid "Physically-based camera settings."
msgstr "Paramètres de caméra basés sur la physique."

msgid ""
"[CameraAttributesPhysical] is used to set rendering settings based on a "
"physically-based camera's settings. It is responsible for exposure, auto-"
"exposure, and depth of field.\n"
"When used in a [WorldEnvironment] it provides default settings for exposure, "
"auto-exposure, and depth of field that will be used by all cameras without "
"their own [CameraAttributes], including the editor camera. When used in a "
"[Camera3D] it will override any [CameraAttributes] set in the "
"[WorldEnvironment] and will override the [Camera3D]s [member Camera3D.far], "
"[member Camera3D.near], [member Camera3D.fov], and [member "
"Camera3D.keep_aspect] properties. When used in [VoxelGI] or [LightmapGI], "
"only the exposure settings will be used.\n"
"The default settings are intended for use in an outdoor environment, tips for "
"settings for use in an indoor environment can be found in each setting's "
"documentation.\n"
"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and Mobile "
"rendering methods, not Compatibility."
msgstr ""
"[CameraAttributesPhysical] est utilisé pour définir des paramètres de rendu "
"basés sur les paramètres d'une caméra physique. Il est responsable de "
"l'exposition, de l'exposition automatique et de la profondeur de champ.\n"
"Lorsqu'il est utilisé dans un [WorldEnvironment], il fournit des paramètres "
"par défaut pour l'exposition, l'exposition automatique et la profondeur de "
"champ qui seront utilisés par toutes les caméras sans leurs propres "
"[CameraAttributes], y compris la caméra de l'éditeur. Lorsqu'il est utilisé "
"dans un [Camera3D], il redéfinira tout [CameraAttributes] défini dans le "
"[WorldEnvironment] et remplacera les propriétés [member Camera3D.far], "
"[member Camera3D.near], [member Camera3D.fov], et [member "
"Camera3D.keep_aspect] des [Camera3D]s. Lors qu’utilisé dans [VoxelGI] ou "
"[LightmapGI], seuls les paramètres d'exposition seront utilisés.\n"
"Les paramètres par défaut sont destinés à être utilisés dans un environnement "
"extérieur, des conseils pour les paramètres à utiliser dans un environnement "
"intérieur peuvent être trouvés dans la documentation de chaque paramètre.\n"
"[b]Note :[/b] Le flou de la profondeur de champ n'est supporté que dans les "
"moteurs de rendu Forward+ et Mobile, pas Compatibilité."

msgid "Physical light and camera units"
msgstr "Unités physiques de caméra et de lumière"

msgid ""
"Returns the vertical field of view that corresponds to the [member "
"frustum_focal_length]. This value is calculated internally whenever [member "
"frustum_focal_length] is changed."
msgstr ""
"Renvoie le champ de vision vertical qui correspond à la distance focale du "
"frustum [member frustum_focal_length]. Cette valeur est calculée en interne "
"lorsque [member frustum_focal_length] est changé."

msgid ""
"The maximum luminance (in EV100) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing below a certain "
"brightness, resulting in a cut off point where the scene will remain bright."
msgstr ""
"La luminance maximale (en EV100) utilisée pour calculer l'exposition "
"automatique. Lors du calcul de la luminosité moyenne de la scène, les valeurs "
"de couleur seront bornées à au moins cette valeur. Cela empêche l'exposition "
"automatique à une exposition en dessous d'une certaine luminosité, résultant "
"en un point limite où la scène restera lumineuse."

msgid ""
"The minimum luminance (in EV100) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing above a certain "
"brightness, resulting in a cut off point where the scene will remain dark."
msgstr ""
"La luminance minimale (en EV100) utilisée pour calculer l'exposition "
"automatique. Lors du calcul de la luminosité moyenne de la scène, les valeurs "
"de couleur seront bornées à au moins cette valeur. Cela empêche l'exposition "
"automatique à une exposition au dessus d'une certaine luminosité, résultant "
"en un point limite où la scène restera sombre."

msgid ""
"Size of the aperture of the camera, measured in f-stops. An f-stop is a "
"unitless ratio between the focal length of the camera and the diameter of the "
"aperture. A high aperture setting will result in a smaller aperture which "
"leads to a dimmer image and sharper focus. A low aperture results in a wide "
"aperture which lets in more light resulting in a brighter, less-focused "
"image. Default is appropriate for outdoors at daytime (i.e. for use with a "
"default [DirectionalLight3D]), for indoor lighting, a value between 2 and 4 "
"is more appropriate.\n"
"Only available when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled."
msgstr ""
"Taille de l'ouverture de la caméra, mesurée en f-stops. Un f-stop est un "
"rapport sans unité entre la longueur focale de la caméra et le diamètre de "
"l'ouverture. Un haut réglage de l'ouverture résultera en une ouverture plus "
"petite qui mène à une image plus sombre et à un focus plus net. Une faible "
"ouverture résulte en une ouverture large qui permet d'obtenir plus de lumière "
"résultant en une image plus lumineuse et moins nette. Le défaut est approprié "
"pour l'extérieur en journée (c.-à-d. pour une utilisation avec une "
"[DirectionalLight3D] par défaut), pour l'éclairage d'intérieur, une valeur "
"entre 2 et 4 est plus appropriée.\n"
"Seulement disponible lorsque [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] est activé."

msgid ""
"Time for shutter to open and close, evaluated as [code]1 / shutter_speed[/"
"code] seconds. A higher value will allow less light (leading to a darker "
"image), while a lower value will allow more light (leading to a brighter "
"image).\n"
"Only available when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled."
msgstr ""
"Temps d'ouverture et de fermeture de l'obturateur, valant [code]1 / "
"shutter_speed[/code] secondes. Une valeur plus élevée fera rentrer moins de "
"lumière (résultant en une image plus foncée), tandis qu'une valeur plus basse "
"fera rentrer plus de lumière (résultant en une image plus lumineuse).\n"
"Seulement disponible lorsque [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] est activé."

msgid ""
"Override value for [member Camera3D.far]. Used internally when calculating "
"depth of field. When attached to a [Camera3D] as its [member "
"Camera3D.attributes], it will override the [member Camera3D.far] property."
msgstr ""
"Valeur de redéfinition pour [member Camera3D.far]. Utilisé en interne pour "
"calculer la profondeur de champ. Lors qu’attaché à une [Camera3D] dans sa "
"propriété [member Camera3D.attributes], elle remplacera la propriété [member "
"Camera3D.far]."

msgid ""
"Distance between camera lens and camera aperture, measured in millimeters. "
"Controls field of view and depth of field. A larger focal length will result "
"in a smaller field of view and a narrower depth of field meaning fewer "
"objects will be in focus. A smaller focal length will result in a wider field "
"of view and a larger depth of field meaning more objects will be in focus. "
"When attached to a [Camera3D] as its [member Camera3D.attributes], it will "
"override the [member Camera3D.fov] property and the [member "
"Camera3D.keep_aspect] property."
msgstr ""
"Distance entre l'objectif de la caméra et l'ouverture de la caméra, mesurée "
"en millimètres. Contrôle le champ de vision et la profondeur de champ. Une "
"longueur focale plus grande entraînera un champ de vision plus petit et une "
"profondeur de champ plus étrointe, ce qui signifie que moins d'objets seront "
"mis au point. Une plus petite longueur focale se traduira par un champ de "
"vision plus large et une plus grande profondeur de champ signifiant plus "
"d'objets seront mis au point. Lors qu'attaché à une [Camera3D] comme son "
"attribut [member Camera3D.attributes], elle redéfinira la propriété [member "
"Camera3D.fov] et la propriété [member Camera3D.keep_aspect]."

msgid ""
"Distance from camera of object that will be in focus, measured in meters. "
"Internally this will be clamped to be at least 1 millimeter larger than "
"[member frustum_focal_length]."
msgstr ""
"Distance à la caméra de l'objet qui aura le focus, mesurée en mètres. En "
"interne, cela sera borné à au moins 1 millimètre de plus que la focale du "
"frustum [member frustum_focal_length]."

msgid ""
"Override value for [member Camera3D.near]. Used internally when calculating "
"depth of field. When attached to a [Camera3D] as its [member "
"Camera3D.attributes], it will override the [member Camera3D.near] property."
msgstr ""
"Valeur de redéfinition pour [member Camera3D.near]. Utilisé en interne pour "
"calculer la profondeur de champ. Lors qu’attaché à une [Camera3D] dans sa "
"propriété [member Camera3D.attributes], elle remplacera la propriété [member "
"Camera3D.near]."

msgid "Camera settings in an easy to use format."
msgstr "Paramètres de caméra en un format facile à utiliser."

msgid ""
"Controls camera-specific attributes such as auto-exposure, depth of field, "
"and exposure override.\n"
"When used in a [WorldEnvironment] it provides default settings for exposure, "
"auto-exposure, and depth of field that will be used by all cameras without "
"their own [CameraAttributes], including the editor camera. When used in a "
"[Camera3D] it will override any [CameraAttributes] set in the "
"[WorldEnvironment]. When used in [VoxelGI] or [LightmapGI], only the exposure "
"settings will be used."
msgstr ""
"Contrôle des attributs spécifiques à la caméra tels que l'exposition "
"automatique, la profondeur de champ et la redéfinition de l'exposition.\n"
"Lors qu’utilisée dans un [WorldEnvironment], elle fournit des paramètres par "
"défaut pour l'exposition, l'exposition automatique et la profondeur de champ "
"qui seront utilisés par toutes les caméras sans leurs propres "
"[CameraAttributes], y compris la caméra de l'éditeur. Lors qu'utilisée dans "
"une [Camera3D], elle redéfinira tout [CameraAttributes] défini dans le "
"[WorldEnvironment]. Lors qu'utilisée dans [VoxelGI] ou [LightmapGI], seuls "
"les paramètres d'exposition seront utilisés."

msgid ""
"The maximum sensitivity (in ISO) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing below a certain "
"brightness, resulting in a cut off point where the scene will remain bright."
msgstr ""
"La sensibilité maximale (en ISO) utilisée pour calculer l'exposition "
"automatique. Lors du calcul de la luminosité moyenne de la scène, les valeurs "
"de couleur seront bornées à au moins cette valeur. Cela limite l'exposition "
"automatique d'exposer en dessous d'une certaine luminosité, ce qui résulte en "
"un point limite où la scène restera lumineuse."

msgid ""
"The minimum sensitivity (in ISO) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing above a certain "
"brightness, resulting in a cut off point where the scene will remain dark."
msgstr ""
"La sensibilité minimale (en ISO) utilisée pour calculer l'exposition "
"automatique. Lors du calcul de la luminosité moyenne de la scène, les valeurs "
"de couleur seront bornées à au moins cette valeur. Cela limite l'exposition "
"automatique d'exposer au dessus d'une certaine luminosité, ce qui résulte en "
"un point limite où la scène restera sombre."

msgid ""
"Sets the maximum amount of blur. When using physically-based blur amounts, "
"will instead act as a multiplier. High values lead to an increased amount of "
"blurriness, but can be much more expensive to calculate. It is best to keep "
"this as low as possible for a given art style."
msgstr ""
"Définit la quantité maximale de flou. Lors de l'utilisation des montants de "
"flou basés sur le physique, agira plutôt comme un multiplicateur. Des valeurs "
"élevées mènent à une quantité accrue de flou, mais peuvent être beaucoup plus "
"chères à calculer. Il est préférable de garder cela aussi bas que possible "
"pour un style graphique donné."

msgid ""
"Objects further from the [Camera3D] by this amount will be blurred by the "
"depth of field effect. Measured in meters."
msgstr ""
"Les objets plus loin de la [Camera3D] que cette quantité seront floués par "
"l'effet de profondeur de champ. Mesuré en mètres."

msgid ""
"Enables depth of field blur for objects further than [member "
"dof_blur_far_distance]. Strength of blur is controlled by [member "
"dof_blur_amount] and modulated by [member dof_blur_far_transition].\n"
"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and Mobile "
"rendering methods, not Compatibility."
msgstr ""
"Active le flou de profondeur de champ pour les objets plus loins que la "
"distance [member dof_blur_far_distance]. La force du flou est contrôlée par "
"[member dof_blur_amount] et modulée par [member dof_blur_far_transition].\n"
"[b]Note :[/b] Le flou de profondeur de champ n'est supporté que dans les "
"moteur de rendu Forward+ et Mobile, pas Compatibilité."

msgid ""
"When positive, distance over which (starting from [member "
"dof_blur_far_distance]) blur effect will scale from 0 to [member "
"dof_blur_amount]. When negative, uses physically-based scaling so depth of "
"field effect will scale from 0 at [member dof_blur_far_distance] and will "
"increase in a physically accurate way as objects get further from the "
"[Camera3D]."
msgstr ""
"Lorsque positive, la distance sur laquelle (à partir de [member "
"dof_blur_far_distance]) l'effet de flou va passer de 0 à [member "
"dof_blur_amount]. Lorsqu'elle est négative, utilise une échelle basée sur la "
"physique pour que l'effet de profondeur de champ aille de 0 à [member "
"dof_blur_far_distance] et augmente d'une manière physiquement exacte lorsque "
"les objets s'éloignent de la [Camera3D]."

msgid ""
"Objects closer from the [Camera3D] by this amount will be blurred by the "
"depth of field effect. Measured in meters."
msgstr ""
"Les objets à cette distance de cette [Camera3D] seront floués par l'effet de "
"profondeur de champ. Mesuré en mètres."

msgid ""
"Enables depth of field blur for objects closer than [member "
"dof_blur_near_distance]. Strength of blur is controlled by [member "
"dof_blur_amount] and modulated by [member dof_blur_near_transition].\n"
"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and Mobile "
"rendering methods, not Compatibility."
msgstr ""
"Active le flou de profondeur de champ pour les objets plus proches que la "
"distance [member dof_blur_near_distance]. La force du flou est contrôlée par "
"[member dof_blur_amount] et modulée par [member dof_blur_near_transition].\n"
"[b]Note :[/b] Le flou de profondeur de champ n'est supporté que dans les "
"moteur de rendu Forward+ et Mobile, pas Compatibilité."

msgid ""
"When positive, distance over which blur effect will scale from 0 to [member "
"dof_blur_amount], ending at [member dof_blur_near_distance]. When negative, "
"uses physically-based scaling so depth of field effect will scale from 0 at "
"[member dof_blur_near_distance] and will increase in a physically accurate "
"way as objects get closer to the [Camera3D]."
msgstr ""
"Lorsque positive, la distance sur laquelle l'effet de flou va passer de 0 à "
"[member dof_blur_amount], finissant à [member dof_blur_near_distance]. "
"Lorsqu'elle est négative, utilise une échelle basée sur la physique pour que "
"l'effet de profondeur de champ aille de 0 à [member dof_blur_near_distance] "
"et augmente d'une manière physiquement exacte lorsque les objets s'approchent "
"de la [Camera3D]."

msgid ""
"A camera feed gives you access to a single physical camera attached to your "
"device."
msgstr ""
"Un flux de caméra vous donne accès à une caméra physique qui est connectée à "
"votre appareil."

msgid ""
"A camera feed gives you access to a single physical camera attached to your "
"device. When enabled, Godot will start capturing frames from the camera which "
"can then be used. See also [CameraServer].\n"
"[b]Note:[/b] Many cameras will return YCbCr images which are split into two "
"textures and need to be combined in a shader. Godot does this automatically "
"for you if you set the environment to show the camera image in the "
"background.\n"
"[b]Note:[/b] This class is currently only implemented on Linux, Android, "
"macOS, and iOS. On other platforms no [CameraFeed]s will be available. To get "
"a [CameraFeed] on iOS, the camera plugin from [url=https://github.com/"
"godotengine/godot-ios-plugins]godot-ios-plugins[/url] is required."
msgstr ""
"Un flux de caméra vous donne accès à une seule caméra physique attachée à "
"votre appareil. Lorsque activé, Godot commencera à capturer des trames de la "
"caméra qui peut alors être utilisées. Voir aussi [CameraServer].\n"
"[b]Note :[/b] Beaucoup de caméras renverront des images YCbCr qui sont "
"divisées en deux textures et doivent être combinées dans un shader. Godot "
"fait cela automatiquement pour vous si vous configurez l'environnement pour "
"montrer l'image de la caméra en arrière-plan.\n"
"[b]Note :[/b] Cette classe est actuellement seulement implémentée sur Linux, "
"Android, macOS et iOS. Sur d'autres plates-formes, aucune [CameraFeed] ne "
"sera disponible. Pour obtenir un [CameraFeed] sur iOS, le plugin de caméra de "
"[url=https://github.com/godotengine/godot-ios-plugins]godot-ios-plugins[/url] "
"est nécessaire."

msgid "Called when the camera feed is activated."
msgstr "Appelée lorsque le flux de la caméra est activé."

msgid "Called when the camera feed is deactivated."
msgstr "Appelée lorsque le flux de la caméra est désactivé."

msgid "Returns feed image data type."
msgstr "Renvoie le type de données d'images du flux."

msgid "Returns the unique ID for this feed."
msgstr "Renvoie l'identifiant unique de ce flux."

msgid "Returns the camera's name."
msgstr "Renvoie le nom de la caméra."

msgid "Returns the position of camera on the device."
msgstr "Renvoie la position de la caméra sur cet appareil."

msgid ""
"Returns the texture backend ID (usable by some external libraries that need a "
"handle to a texture to write data)."
msgstr ""
"Renvoie l'ID de backend de la texture (utilisable par certaines bibliothèques "
"externes qui ont besoin d'une handle vers une texture pour écrire des "
"données)."

msgid "Sets the feed as external feed provided by another library."
msgstr "Définit le flux avec un flux externe fourni par une autre bibliothèque."

msgid ""
"Sets the feed format parameters for the given [param index] in the [member "
"formats] array. Returns [code]true[/code] on success. By default, the YUYV "
"encoded stream is transformed to [constant FEED_RGB]. The YUYV encoded stream "
"output format can be changed by setting [param parameters]'s [code]output[/"
"code] entry to one of the following:\n"
"- [code]\"separate\"[/code] will result in [constant FEED_YCBCR_SEP];\n"
"- [code]\"grayscale\"[/code] will result in desaturated [constant FEED_RGB];\n"
"- [code]\"copy\"[/code] will result in [constant FEED_YCBCR]."
msgstr ""
"Définit les paramètres du format du flux pour l'index [param index] donné "
"dans le tableau [member formats]. Renvoie [code]true[/code] lors du succès. "
"Par défaut, le flux encodé YUYV est transformé en [constant FEED_RGB]. Le "
"format de sortie du flux encodé YUYV peut être modifié en définissant "
"l'entrée [code]output[/code] de [param parameters] à l'un des éléments "
"suivants :\n"
"- [code]\"separate\"[/code] résultera en [constant FEED_YCBCR_SEP];\n"
"- [code]\"grayscale\"[/code] résultera en un [constant FEED_RGB] dé-saturé;\n"
"- [code]\"copy\"[/code] résultera en [constant FEED_YCBCR]."

msgid "Sets the camera's name."
msgstr "Définit le nom de la caméra."

msgid "Sets the position of this camera."
msgstr "Définit la position de cette caméra."

msgid "Sets RGB image for this feed."
msgstr "Définit l'image RGB pour ce flux."

msgid "Sets YCbCr image for this feed."
msgstr "Définit l'image YCbCr pour ce flux."

msgid "If [code]true[/code], the feed is active."
msgstr "Si [code]true[/code], le flux est actif."

msgid "The transform applied to the camera's image."
msgstr "La transformation appliquée à l'image de la camera."

msgid ""
"Formats supported by the feed. Each entry is a [Dictionary] describing format "
"parameters."
msgstr ""
"Formats supportés par le flux. Chaque entrée est un [Dictionary] décrivant "
"les paramètres du format."

msgid "Emitted when the format has changed."
msgstr "Émis lorsque le format a changé."

msgid "Emitted when a new frame is available."
msgstr "Émis lorsqu'un nouvelle trame est disponible."

msgid "No image set for the feed."
msgstr "Aucune image définie pour le flux."

msgid "Feed supplies RGB images."
msgstr "Le flux fournis des images au format RGB."

msgid "Feed supplies YCbCr images that need to be converted to RGB."
msgstr ""
"Le flux fournis des images au format YCbCr qui doivent être converties en RGB."

msgid ""
"Feed supplies separate Y and CbCr images that need to be combined and "
"converted to RGB."
msgstr ""
"Fournis des images Y et CbCr séparées qui doivent être combinées puis "
"converties en RGB."

msgid "Feed supplies external image."
msgstr "Le flux fournit une image externe."

msgid "Unspecified position."
msgstr "Position non renseignée."

msgid "Camera is mounted at the front of the device."
msgstr "La caméra est placée à l'avant de l'appareil."

msgid "Camera is mounted at the back of the device."
msgstr "La caméra est placée à l'arrière de l'appareil."

msgid "Server keeping track of different cameras accessible in Godot."
msgstr ""
"Le serveur garde la liste des différentes caméras accessibles dans Godot."

msgid ""
"The [CameraServer] keeps track of different cameras accessible in Godot. "
"These are external cameras such as webcams or the cameras on your phone.\n"
"It is notably used to provide AR modules with a video feed from the camera.\n"
"[b]Note:[/b] This class is currently only implemented on Linux, Android, "
"macOS, and iOS. On other platforms no [CameraFeed]s will be available. To get "
"a [CameraFeed] on iOS, the camera plugin from [url=https://github.com/"
"godotengine/godot-ios-plugins]godot-ios-plugins[/url] is required."
msgstr ""
"Le [CameraServer] garde en mémoire les différentes caméras accessibles dans "
"Godot. Ce sont des caméras externes telles que des webcams ou les caméras sur "
"votre téléphone.\n"
"Ce serveur est notamment utilisé pour fournir des flux vidéo venant de la "
"caméra aux modules AR.\n"
"[b]Note :[/b] Cette classe n'est actuellement implémentée que sur Linux, "
"Android, macOS et iOS. Sur les autres plates-formes, aucun [CameraFeed] ne "
"sera disponible. Pour obtenir un [CameraFeed] sur iOS, le plugin de caméra de "
"[url=https://github.com/godotengine/godot-ios-plugins]godot-ios-plugins[/url] "
"est nécessaire."

msgid "Adds the camera [param feed] to the camera server."
msgstr "Ajoute le flux de caméra [param feed] au serveur de caméra."

msgid "Returns an array of [CameraFeed]s."
msgstr "Renvoie un tableau de [CameraFeed]s."

msgid ""
"Returns the [CameraFeed] corresponding to the camera with the given [param "
"index]."
msgstr ""
"Renvoie le [CameraFeed] correspondant à la caméra avec l'[param index] donné."

msgid "Returns the number of [CameraFeed]s registered."
msgstr "Renvoie le nombre de [CameraFeed]s enregistrés."

msgid "Removes the specified camera [param feed]."
msgstr "Supprime le flux de caméra [param feed] spécifié."

msgid "Emitted when a [CameraFeed] is added (e.g. a webcam is plugged in)."
msgstr ""
"Émis lorsqu'un [CameraFeed] est ajouté (par ex. une webcam est branchée)."

msgid "Emitted when a [CameraFeed] is removed (e.g. a webcam is unplugged)."
msgstr ""
"Émis lorsqu'un [CameraFeed] est retiré (par ex. une webcam est débranchée)."

msgid "Emitted when camera feeds are updated."
msgstr "Émis lorsque les flux de caméra sont mis à jour."

msgid "The RGBA camera image."
msgstr "L’image de la caméra RGBA."

msgid "The [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url] camera image."
msgstr ""
"L'image de la caméra au format [url=https://fr.wikipedia.org/wiki/"
"YCbCr]YCbCr[/url]."

msgid "The Y component camera image."
msgstr "L’image de la caméra du composant Y."

msgid "The CbCr component camera image."
msgstr "L'image de la caméra du composant CbCr."

msgid "Texture provided by a [CameraFeed]."
msgstr "Texture fournie par un [CameraFeed]."

msgid ""
"This texture gives access to the camera texture provided by a [CameraFeed].\n"
"[b]Note:[/b] Many cameras supply YCbCr images which need to be converted in a "
"shader."
msgstr ""
"Cette texture donne accès à la texture de la caméra fournie par "
"[CameraFeed].\n"
"[b]Note :[/b] Beaucoup de caméras fournissent des images au format YCbCr qui "
"doivent être converties dans un shader."

msgid "The ID of the [CameraFeed] for which we want to display the image."
msgstr "L'identifiant du [CameraFeed] pour lequel la caméra doit être affichée."

msgid ""
"Convenience property that gives access to the active property of the "
"[CameraFeed]."
msgstr "Propriété utile qui donne accès à la propriété active du [CameraFeed]."

msgid ""
"Which image within the [CameraFeed] we want access to, important if the "
"camera image is split in a Y and CbCr component."
msgstr ""
"L'image du [CameraFeed] pour laquelle nous voulons accéder, important si "
"l'image de la caméra est divisée en composants Y et CbCr."

msgid "Merges several 2D nodes into a single draw operation."
msgstr "Fusionne plusieurs nœuds 2D en une seule opération de dessin."

msgid ""
"Sets the size of a margin used to expand the drawable rect of this "
"[CanvasGroup]. The size of the [CanvasGroup] is determined by fitting a rect "
"around its children then expanding that rect by [member fit_margin]. This "
"increases both the backbuffer area used and the area covered by the "
"[CanvasGroup] both of which can reduce performance. This should be kept as "
"small as possible and should only be expanded when an increased size is "
"needed (e.g. for custom shader effects)."
msgstr ""
"Définit la taille d'une marge utilisée pour élargir le rectangle dessinable "
"de ce [CanvasGroup]. La taille du [CanvasGroup] est déterminée en faisant "
"correspondre un rectangle autour de ses enfants puis en élargissant ce "
"rectangle par [member fit_margin]. Cela augmente à la fois la taille du "
"backbuffer utilisée et la zone couverte par le [CanvasGroup], ce qui peut "
"réduire les performances. Cela devrait être maintenu aussi petit que possible "
"et ne devrait être élargi que si une taille accrue est nécessaire (p. ex. "
"pour des effets de shaders personnalisés)."

msgid ""
"If [code]true[/code], calculates mipmaps for the backbuffer before drawing "
"the [CanvasGroup] so that mipmaps can be used in a custom [ShaderMaterial] "
"attached to the [CanvasGroup]. Generating mipmaps has a performance cost so "
"this should not be enabled unless required."
msgstr ""
"Si [code]true[/code], calcule les mipmaps pour le backbuffer avant de "
"dessiner le [CanvasGroup] afin que les mipmaps puissent être utilisées dans "
"un [ShaderMaterial] personnalisé attaché au [CanvasGroup]. Générer des "
"mipmaps a un coût sur les performances, cela ne devrait donc pas être activé "
"sauf si nécessaire."

msgid "Abstract base class for everything in 2D space."
msgstr "Classe de base abstraite pour tout ce qui est dans l'espace 2D."

msgid ""
"Abstract base class for everything in 2D space. Canvas items are laid out in "
"a tree; children inherit and extend their parent's transform. [CanvasItem] is "
"extended by [Control] for GUI-related nodes, and by [Node2D] for 2D game "
"objects.\n"
"Any [CanvasItem] can draw. For this, [method queue_redraw] is called by the "
"engine, then [constant NOTIFICATION_DRAW] will be received on idle time to "
"request a redraw. Because of this, canvas items don't need to be redrawn on "
"every frame, improving the performance significantly. Several functions for "
"drawing on the [CanvasItem] are provided (see [code]draw_*[/code] functions). "
"However, they can only be used inside [method _draw], its corresponding "
"[method Object._notification] or methods connected to the [signal draw] "
"signal.\n"
"Canvas items are drawn in tree order on their canvas layer. By default, "
"children are on top of their parents, so a root [CanvasItem] will be drawn "
"behind everything. This behavior can be changed on a per-item basis.\n"
"A [CanvasItem] can be hidden, which will also hide its children. By adjusting "
"various other properties of a [CanvasItem], you can also modulate its color "
"(via [member modulate] or [member self_modulate]), change its Z-index, blend "
"mode, and more.\n"
"Note that properties like transform, modulation, and visibility are only "
"propagated to [i]direct[/i] [CanvasItem] child nodes. If there is a non-"
"[CanvasItem] node in between, like [Node] or [AnimationPlayer], the "
"[CanvasItem] nodes below will have an independent position and [member "
"modulate] chain. See also [member top_level]."
msgstr ""
"Classe de base abstraite pour tout dans l'espace 2D. Les objets de canevas "
"sont disposés en un arbre, les enfants héritent et étendent la transformation "
"de leurs parents. [CanvasItem] est étendu par [Control] pour les nœuds liés à "
"l'interface graphique, et par [Node2D] pour les objets de jeu 2D.\n"
"Tout [CanvasItem] peut dessiner. Pour cela, [method queue_redraw] est appelé "
"par le moteur, puis [constant NOTIFICATION_DRAW] sera reçu pendant le temps "
"d'inactivité pour demander un redessin. Grâce à cela, les objets de canveas "
"n'ont pas besoin d'être redessinés à chaque trame, améliorant "
"considérablement la performance. Plusieurs fonctions pour dessiner sur le "
"[CanvasItem] sont fournies (voir les fonctions [code]draw_*[/code]). "
"Cependant, elles ne peuvent être utilisés qu'à l'intérieur de [method _draw], "
"sa [method Object._notification] correspondante ou les méthodes reliées au "
"signal de dessin [signal draw].\n"
"Les objets de canevas sont dessinés dans l'ordre de l'arbre sur leur calque "
"de toile. Par défaut, les enfants sont au-dessus de leurs parents, donc une "
"racine [CanvasItem] sera dessinée derrière tout. Ce comportement peut être "
"modifié par objet.\n"
"Un [CanvasItem] peut être caché, ce qui cachera également ses enfants. En "
"ajustant diverses autres propriétés d'un [CanvasItem], vous pouvez également "
"moduler sa couleur (via [member modulate] ou [member self_modulate]), changer "
"son Z-index, le mode de mélange, et plus encore.\n"
"Notez que les propriétés comme la transformation, la modulation et la "
"visibilité sont uniquement propagées à nœuds enfants [CanvasItem] [i]directs[/"
"i] . S'il y a un nœud non-[CanvasItem] entre, comme [Node] ou "
"[AnimationPlayer], les nœuds [CanvasItem] ci-dessous auront une position et "
"une chaîne [member modulate] indépendantes. Voir aussi [member top_level]."

msgid "Viewport and canvas transforms"
msgstr "Transformations du canevas et de la fenêtre d'affichage"

msgid "Custom drawing in 2D"
msgstr "Dessin personnalisé en 2D"

msgid ""
"Draws a [MultiMesh] in 2D with the provided texture. See "
"[MultiMeshInstance2D] for related documentation."
msgstr ""
"Dessine un [MultiMesh] en 2D avec la texture spécifiée. Voir "
"[MultiMeshInstance2D] pour la documentation en rapport."

msgid ""
"Returns the [RID] of the [World2D] canvas where this node is registered to, "
"used by the [RenderingServer]."
msgstr ""
"Renvoie le [RID] du canevas [World2D] où ce nœud est enregistré, utilisé par "
"le [RenderingServer]."

msgid ""
"Returns the internal canvas item [RID] used by the [RenderingServer] for this "
"node."
msgstr ""
"Renvoie le [RID] de l'élément de canevas interne utilisé par le "
"[RenderingServer] pour ce nœud."

msgid ""
"Returns the [CanvasLayer] that contains this node, or [code]null[/code] if "
"the node is not in any [CanvasLayer]."
msgstr ""
"Renvoie le [CanvasLayer] qui contient ce nœud, ou [code]null[/code] si le "
"nœud n'est pas dans un [CanvasLayer]."

msgid ""
"Returns the transform of this node, converted from its registered canvas's "
"coordinate system to its viewport's coordinate system. See also [method "
"Node.get_viewport]."
msgstr ""
"Renvoie la transformation de ce nœud, convertie du système de coordonnées de "
"son canevas enregistré au système de coordonnées de son viewport. Voir aussi "
"[method Node.get_viewport]."

msgid ""
"Returns mouse cursor's global position relative to the [CanvasLayer] that "
"contains this node.\n"
"[b]Note:[/b] For screen-space coordinates (e.g. when using a non-embedded "
"[Popup]), you can use [method DisplayServer.mouse_get_position]."
msgstr ""
"Renvoie la position globale du curseur de la souris par rapport au "
"[CanvasLayer] qui contient ce nœud.\n"
"[b]Note :[/b] Pour les coordonnées de l'espace-écran (p. ex. lors de "
"l'utilisation d'une [Popup] non intégrée), vous pouvez utiliser [method "
"DisplayServer.mouse_get_position]."

msgid ""
"Returns the global transform matrix of this item, i.e. the combined transform "
"up to the topmost [CanvasItem] node. The topmost item is a [CanvasItem] that "
"either has no parent, has non-[CanvasItem] parent or it has [member "
"top_level] enabled."
msgstr ""
"Renvoie la matrice de transformation globale de cet élément, c'est-à-dire la "
"transformation combinée jusqu'au nœud [CanvasItem] le plus haut. L'élément le "
"plus haut est un [CanvasItem] qui soit n'a pas de parent, a un parent non-"
"[CanvasItem] ou a [member top_level] activé."

msgid "Get the value of a shader parameter as set on this instance."
msgstr "Obtient la valeur d'un paramètre de shader défini sur cette instance."

msgid ""
"Returns the mouse's position in this [CanvasItem] using the local coordinate "
"system of this [CanvasItem]."
msgstr ""
"Renvoie la position de la souris dans le [CanvasItem] en utilisant le système "
"de coordonnées local à ce [CanvasItem]."

msgid ""
"Returns the transform of this [CanvasItem] in global screen coordinates (i.e. "
"taking window position into account). Mostly useful for editor plugins.\n"
"Equals to [method get_global_transform] if the window is embedded (see "
"[member Viewport.gui_embed_subwindows])."
msgstr ""
"Renvoie la transformation de ce [CanvasItem] dans les coordonnées d'écran "
"globales (c.-à-d. en tenant compte de la position de fenêtre). Généralement "
"utile pour les plugins d'éditeur.\n"
"Égal à [method get_global_transform] si la fenêtre est intégrée (voir [member "
"Viewport.gui_embed_subwindows])."

msgid "Returns the transform matrix of this [CanvasItem]."
msgstr "Renvoie la matrice de transformation de ce [CanvasItem]."

msgid ""
"Returns this node's viewport boundaries as a [Rect2]. See also [method "
"Node.get_viewport]."
msgstr ""
"Renvoie les limites du viewport de ce nœud en tant que [Rect2]. Voir aussi "
"[method Node.get_viewport]."

msgid ""
"Hide the [CanvasItem] if it's currently visible. This is equivalent to "
"setting [member visible] to [code]false[/code]."
msgstr ""
"Cacher les [CanvasItem] s'ils sont actuellement visibles. C'est équivalent à "
"[member visible] à [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
"[member visible] property is [code]true[/code] and all its ancestors are also "
"visible. If any ancestor is hidden, this node will not be visible in the "
"scene tree, and is therefore not drawn (see [method _draw]).\n"
"Visibility is checked only in parent nodes that inherit from [CanvasItem], "
"[CanvasLayer], and [Window]. If the parent is of any other type (such as "
"[Node], [AnimationPlayer], or [Node3D]), it is assumed to be visible.\n"
"[b]Note:[/b] This method does not take [member visibility_layer] into "
"account, so even if this method returns [code]true[/code], the node might end "
"up not being rendered."
msgstr ""
"Renvoie [code]true[/code] si le nœud est présent dans le [SceneTree], que sa "
"propriété [member visible] vaut [code]true[/code] et que tous ses parents "
"sont également visibles. Si au moins un parent est caché, ce nœud ne sera pas "
"visible dans l'arborescence de la scène, et n'est donc pas dessiné (voir "
"[method _draw]).\n"
"La visibilité n'est vérifiée que dans les nœuds parents héritant de "
"[CanvasItem], [CanvasLayer] et [Window]. Si le parent est d'un autre type "
"(comme [Node], [AnimationPlayer], ou [Node3D]), il est supposé être visible.\n"
"[b]Note :[/b] Cette méthode ne prend pas en compte [member visibility_layer], "
"donc même si cette méthode renvoie [code]true[/code], le nœud pourrait finir "
"par ne pas être rendu."

msgid ""
"Returns a copy of the given [param event] with its coordinates converted from "
"global space to this [CanvasItem]'s local space. If not possible, returns the "
"same [InputEvent] unchanged."
msgstr ""
"Renvoie une copie de l'événement [param event] donné avec ses coordonnées "
"converties de l'espace global à l'espace local du [CanvasItem]. Si cela n'est "
"pas possible, renvoie le même [InputEvent] inchangé."

msgid ""
"Set/clear individual bits on the rendering visibility layer. This simplifies "
"editing this [CanvasItem]'s visibility layer."
msgstr ""
"Définit ou efface des bits individuels sur la couche de visibilité de rendu. "
"Cela facilite l'édition de la couche de visibilité de ce [CanvasItem]."

msgid ""
"Show the [CanvasItem] if it's currently hidden. This is equivalent to setting "
"[member visible] to [code]true[/code].\n"
"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
"visible is to call one of the multiple [code]popup*()[/code] functions "
"instead."
msgstr ""
"Affiche le [CanvasItem] s'il est actuellement caché. Ceci est équivalent à "
"definir [member visible] à [code]true[/code].\n"
"[b]Note :[/b] Pour les contrôles hérités de [Popup], la manière correcte de "
"les rendre visible est plutôt d'appeler l'une des fonctions [code]popup*()[/"
"code]."

msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
"Les calques de rendu où le [CanvasItem] est affecté par les nœuds [Light2D]."

msgid "The material applied to this [CanvasItem]."
msgstr "Le matériau appliqué à ce [CanvasItem]."

msgid ""
"The color applied to this [CanvasItem]. This property does affect child "
"[CanvasItem]s, unlike [member self_modulate] which only affects the node "
"itself."
msgstr ""
"La couleur appliquée à ce [CanvasItem]. Cette propriété affecte les "
"[CanvasItem]s enfants, contrairement à [member self_modulate] qui n'affecte "
"que le nœud lui-même."

msgid ""
"The color applied to this [CanvasItem]. This property does [b]not[/b] affect "
"child [CanvasItem]s, unlike [member modulate] which affects both the node "
"itself and its children.\n"
"[b]Note:[/b] Internal children are also not affected by this property (see "
"the [code]include_internal[/code] parameter in [method Node.add_child]). For "
"built-in nodes this includes sliders in [ColorPicker], and the tab bar in "
"[TabContainer]."
msgstr ""
"La couleur appliquée à ce [CanvasItem]. Cette propriété n'affecte [b]pas[/b] "
"les [CanvasItem]s enfants, contrairement à [member modulate] qui affecte à la "
"fois le nœud lui-même et ses enfants.\n"
"[b]Note :[/b] Les enfants internes ne sont pas affectés par cette propriété "
"(voir le paramètre [code]include_internal[/code] de [method Node.add_child]). "
"Pour les nœuds intégrés, cela inclut les sliders dans [ColorPicker], et la "
"barre d'onglets dans [TabContainer]."

msgid "If [code]true[/code], this node draws behind its parent."
msgstr "Si [code]true[/code], ce nœud dessine derrière son parent."

msgid "The filtering mode used to render this [CanvasItem]'s texture(s)."
msgstr ""
"Le mode de filtrage utilisé pour rendre la ou les textures de ce [CanvasItem]."

msgid ""
"If [code]true[/code], this [CanvasItem] will [i]not[/i] inherit its transform "
"from parent [CanvasItem]s. Its draw order will also be changed to make it "
"draw on top of other [CanvasItem]s that do not have [member top_level] set to "
"[code]true[/code]. The [CanvasItem] will effectively act as if it was placed "
"as a child of a bare [Node]."
msgstr ""
"Si [code]true[/code], ce [CanvasItem] n'héritera [i]pas[/i] sa transformation "
"de son [CanvasItem] parent. Son ordre d'affichage sera également modifié pour "
"qu'il dessine sur les autres [CanvasItem] qui n'ont pas [member top_level] à "
"[code]true[/code]. Le [CanvasItem] se comportera effectivement comme s'il "
"était placé comme un enfant d'un [Node] vide."

msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] is used as "
"this node's material."
msgstr ""
"Si [code]true[/code], le matériau [member material] du [CanvasItem] parent "
"est utilisé comme matériau de ce nœud."

msgid ""
"The rendering layer in which this [CanvasItem] is rendered by [Viewport] "
"nodes. A [Viewport] will render a [CanvasItem] if it and all its parents "
"share a layer with the [Viewport]'s canvas cull mask."
msgstr ""
"La couche de rendu dans laquelle ce [CanvasItem] est rendu par les nœuds "
"[Viewport]. Un [Viewport] rendra un [CanvasItem] s'il et tous ses parents "
"partagent une couche avec le masque de cull du canevas du [Viewport]."

msgid ""
"Emitted when the [CanvasItem]'s boundaries (position or size) change, or when "
"an action took place that may have affected these boundaries (e.g. changing "
"[member Sprite2D.texture])."
msgstr ""
"Émis lorsque les limites (position ou taille) du [CanvasItem] changent, ou "
"lorsqu'une action a eu lieu qui pourrait avoir affecté ces limites (p. ex. "
"modifier [member Sprite2D.texture])."

msgid ""
"Notification received when this node's global transform changes, if [method "
"is_transform_notification_enabled] is [code]true[/code]. See also [method "
"set_notify_transform] and [method get_transform].\n"
"[b]Note:[/b] Many canvas items such as [Camera2D] or [CollisionObject2D] "
"automatically enable this in order to function correctly."
msgstr ""
"Notification reçue lorsque la transformation globale de ce nœud change, si "
"[method is_transform_notification_enabled] vaut [code]true[/code]. Voir aussi "
"[method set_notify_transform] et [method get_transform].\n"
"[b]Note :[/b] Plusieurs éléments de canevas tels que [Camera2D] ou "
"[CollisionShape2D] activent automatiquement cela afin de fonctionner "
"correctement."

msgid ""
"Notification received when this node's transform changes, if [method "
"is_local_transform_notification_enabled] is [code]true[/code]. This is not "
"received when a parent [Node2D]'s transform changes. See also [method "
"set_notify_local_transform].\n"
"[b]Note:[/b] Many canvas items such as [Camera2D] or [CollisionShape2D] "
"automatically enable this in order to function correctly."
msgstr ""
"Notification reçue lorsque la transformation de ce nœud change, si [method "
"is_local_transform_notification_enabled] vaut [code]true[/code]. Ceci n'est "
"pas reçu lorsque la transformation d'un [Node2D] parent change. Voir aussi "
"[method set_notify_local_transform].\n"
"[b]Note :[/b] Plusieurs éléments de canevas tels que [Camera2D] ou "
"[CollisionShape2D] activent automatiquement cela afin de fonctionner "
"correctement."

msgid "The [CanvasItem] is requested to draw (see [method _draw])."
msgstr "Il a été demandé au [CanvasItem] de dessiner (voir [method _draw])."

msgid ""
"Notification received when this node's visibility changes (see [member "
"visible] and [method is_visible_in_tree]).\n"
"This notification is received [i]before[/i] the related [signal "
"visibility_changed] signal."
msgstr ""
"Notification reçue lorsque la visibilité de ce noeud change (voir [member "
"visible] et [method is_visible_in_tree]).\n"
"Cette notification est reçue [i]avant[/i] le signal [signal "
"visibility_changed] correspondant."

msgid "The [CanvasItem] has entered the canvas."
msgstr "Le [CanvasItem] est entré dans le canevas."

msgid "The [CanvasItem] has exited the canvas."
msgstr "Le [CanvasItem] a quitté le canevas."

msgid ""
"Notification received when this [CanvasItem] is registered to a new [World2D] "
"(see [method get_world_2d])."
msgstr ""
"Notification reçue lorsque ce [CanvasItem] est enregistré dans un nouveau "
"[World2D] (voir [method get_world_2d])."

msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr "Le [CanvasItem] héritera le filtre de son parent."

msgid "The texture repeats when exceeding the texture's size."
msgstr "La texture se répète lorsque sa taille est dépassée."

msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr "Représente la taille de l’énumération [enum TextureRepeat]."

msgid "Children are drawn over this node and are not clipped."
msgstr "Les enfants sont dessinés par dessus ce nœud et ne sont pas coupés."

msgid "Represents the size of the [enum ClipChildrenMode] enum."
msgstr "Représente la taille de l'énumération [enum ClipChildrenMode]."

msgid "A material for [CanvasItem]s."
msgstr "Un matériel pour les [CanvasItem]s."

msgid ""
"[CanvasItemMaterial]s provide a means of modifying the textures associated "
"with a CanvasItem. They specialize in describing blend and lighting behaviors "
"for textures. Use a [ShaderMaterial] to more fully customize a material's "
"interactions with a [CanvasItem]."
msgstr ""
"Les [CanvasItemMaterial]s fournissent un moyen de modifier les textures "
"associées à un CanvasItem. Ils se spécialisent dans la description des "
"comportements de mélange et d'éclairage pour les textures. Utilisez un "
"[ShaderMaterial] pour personnaliser les interactions d'un matériau avec un "
"[CanvasItem]."

msgid ""
"The manner in which a material's rendering is applied to underlying textures."
msgstr ""
"La manière dont le rendu du matériau est appliqué aux textures en-dessous."

msgid "The manner in which material reacts to lighting."
msgstr "La façon dont le matériau réagit à la lumière."

msgid ""
"The number of columns in the spritesheet assigned as [Texture2D] for a "
"[GPUParticles2D] or [CPUParticles2D].\n"
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
"Le nombre de colonnes dans la feuille de sprite assignée comme [Texture2D] "
"pour un [GPUParticles2D] ou un [CPUParticles2D].\n"
"[b]Note :[/b] Cette propriété est uniquement utilisée et visible dans "
"l'éditeur si [member particles_animation] vaut [code]true[/code]."

msgid ""
"If [code]true[/code], the particles animation will loop.\n"
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
"Si [code]true[/code], l'animation des particules boucle.\n"
"[b]Note :[/b] Cette propriété est uniquement utilisée et visible dans "
"l'éditeur si [member particles_animation] est [code]true[/code]."

msgid ""
"The number of rows in the spritesheet assigned as [Texture2D] for a "
"[GPUParticles2D] or [CPUParticles2D].\n"
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
"Le nombre de lignes dans la feuille de sprite assignée comme [Texture2D] pour "
"un [GPUParticles2D] ou un [CPUParticles2D].\n"
"[b]Note :[/b] Cette propriété est uniquement utilisée et visible dans "
"l'éditeur si [member particles_animation] vaut [code]true[/code]."

msgid ""
"If [code]true[/code], enable spritesheet-based animation features when "
"assigned to [GPUParticles2D] and [CPUParticles2D] nodes. The [member "
"ParticleProcessMaterial.anim_speed_max] or [member "
"CPUParticles2D.anim_speed_max] should also be set to a positive value for the "
"animation to play.\n"
"This property (and other [code]particles_anim_*[/code] properties that depend "
"on it) has no effect on other types of nodes."
msgstr ""
"Si [code]true[/code], cela active les fonctionnalités d'animation basées sur "
"des feuilles de sprite lorsqu'elles sont affectées aux nœuds [GPUParticles2D] "
"et [CPUParticles2D]. [member ParticleProcessMaterial.anim_speed_max] ou "
"[member CPUParticles2D.anim_speed_max] doit être une valeur positive pour que "
"l'animation joue.\n"
"Cette propriété (et les autres propriétés [code]particles_anim_*[/code] qui "
"en dépendent) n'a aucun effet sur d'autres types de nœuds."

msgid ""
"Mix blending mode. Colors are assumed to be independent of the alpha "
"(opacity) value."
msgstr ""
"Le mode de mélange. Les couleurs sont supposées être indépendantes de "
"l'opacité."

msgid "Additive blending mode."
msgstr "Mode de fusion additif."

msgid "Subtractive blending mode."
msgstr "Mode de fusion soustractif."

msgid "Multiplicative blending mode."
msgstr "Mode de fusion multiplicatif."

msgid ""
"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
"(opacity) value."
msgstr ""
"Le mode de mélange. Les couleurs sont supposées être prémultipliées par leur "
"opacité."

msgid ""
"Render the material using both light and non-light sensitive material "
"properties."
msgstr ""
"Fait le rendu du matériau avec et sans lumière des propriétés matérielles."

msgid "Render the material as if there were no light."
msgstr "Rend du matériau comme s'il n'y avait pas de lumière."

msgid "Render the material as if there were only light."
msgstr "Rend du matériau comme s'il n'y avait que de la lumière."

msgid "Canvas layers"
msgstr "Calques du canevas"

msgid "Returns the RID of the canvas used by this layer."
msgstr "Renvoie le RID du canevas utilisé par ce calque."

msgid ""
"Returns the transform from the [CanvasLayer]s coordinate system to the "
"[Viewport]s coordinate system."
msgstr ""
"Renvoie la transformation du système de coordonnées du [CanvasLayer] vers le "
"système de coordonnées du [Viewport]."

msgid ""
"Hides any [CanvasItem] under this [CanvasLayer]. This is equivalent to "
"setting [member visible] to [code]false[/code]."
msgstr ""
"Masque tous les [CanvasItem] dans ce [CanvasLayer]. Ceci est équivalent à "
"définir [member visible] à [code]false[/code]."

msgid ""
"Shows any [CanvasItem] under this [CanvasLayer]. This is equivalent to "
"setting [member visible] to [code]true[/code]."
msgstr ""
"Affiche tous les [CanvasItem] dans ce [CanvasLayer]. Ceci est équivalent à "
"définir [member visible] à [code]true[/code]."

msgid ""
"The custom [Viewport] node assigned to the [CanvasLayer]. If [code]null[/"
"code], uses the default viewport instead."
msgstr ""
"Le nœud [Viewport] personnalisé assigné au [CanvasLayer]. Si [code]null[/"
"code], ça utilise la fenêtre d'affichage par défaut à la place."

msgid ""
"Scales the layer when using [member follow_viewport_enabled]. Layers moving "
"into the foreground should have increasing scales, while layers moving into "
"the background should have decreasing scales."
msgstr ""
"Redimensionne la couche en utilisant [member follow_viewport_enabled]. Les "
"couches se déplaçant au premier plan devraient avoir des échelles "
"croissantes, tandis que les couches se déplaçant dans le fond devraient avoir "
"des couches décroissantes."

msgid "The layer's base offset."
msgstr "Le décalage de base du calque."

msgid "The layer's rotation in radians."
msgstr "La rotation du calque en radians."

msgid "The layer's scale."
msgstr "L'échelle du calque."

msgid "The layer's transform."
msgstr "Le transform du calque."

msgid ""
"If [code]false[/code], any [CanvasItem] under this [CanvasLayer] will be "
"hidden.\n"
"Unlike [member CanvasItem.visible], visibility of a [CanvasLayer] isn't "
"propagated to underlying layers."
msgstr ""
"Si [code]false[/code], tous les [CanvasItem] dans ce [CanvasLayer] sont "
"cachés.\n"
"Contrairement à [member CanvasItem.visible], la visibilité d'un [CanvasLayer] "
"n'est pas propagée aux calques enfants."

msgid "Emitted when visibility of the layer is changed. See [member visible]."
msgstr ""
"Émis lorsque la visibilité de la couche est changée. Voir [member visible]."

msgid "A node that applies a color tint to a canvas."
msgstr "Un nœud qui applique une teinte de couleur à un canevas."

msgid ""
"[CanvasModulate] applies a color tint to all nodes on a canvas. Only one can "
"be used to tint a canvas, but [CanvasLayer]s can be used to render things "
"independently."
msgstr ""
"[CanvasModulate] applique une teinte de couleur à tous les nœuds sur un "
"canevas. Un seul peut être utilisé pour teinter un canevas, mais des "
"[CanvasLayer]s peuvent être utilisés pour rendre les choses indépendamment."

msgid "2D lights and shadows"
msgstr "Les lumières et ombres 2D"

msgid "The tint color to apply."
msgstr "La couleur de la teinte à appliquer."

msgid "Texture with optional normal and specular maps for use in 2D rendering."
msgstr ""
"Texture avec des normal maps et specular maps optionnelles à utiliser pour le "
"rendu 2D."

msgid "2D Lights and Shadows"
msgstr "Lumières et ombres 2D"

msgid ""
"The diffuse (color) texture to use. This is the main texture you want to set "
"in most cases."
msgstr ""
"La texture de diffusion (couleur) à utiliser. C'est la texture principale que "
"vous voulez définir dans la plupart des cas."

msgid ""
"The normal map texture to use. Only has a visible effect if [Light2D]s are "
"affecting this [CanvasTexture].\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. "
"See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines."
msgstr ""
"La normal map à utiliser. A seulement un effet visible si des [Light2D]s "
"affectent cette [CanvasTexture].\n"
"[b]Note :[/b] Godot s'attend à ce que la normal map utilise des coordonnées "
"X+, Y+ et Z+. Voir [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]cette page[/url] pour "
"une comparaison des coordonnées de normal map attendues par les moteurs "
"populaires."

msgid ""
"The multiplier for specular reflection colors. The [Light2D]'s color is also "
"taken into account when determining the reflection color. Only has a visible "
"effect if [Light2D]s are affecting this [CanvasTexture]."
msgstr ""
"Le multiplicateur pour les couleurs de réflexion spéculaire. La couleur de la "
"[Light2D] est également prise en compte lors de la détermination de la "
"couleur de réflexion. A seulement un effet visible si des [Light2D]s "
"affectent cette [CanvasTexture]."

msgid "The texture repeat mode to use when drawing this [CanvasTexture]."
msgstr ""
"Le mode de répétition de texture à utiliser lors du dessin de cette "
"[CanvasTexture]."

msgid "Class representing a capsule-shaped [PrimitiveMesh]."
msgstr "Classe représentant une capsule en forme de [PrimitiveMesh]."

msgid ""
"Total height of the capsule mesh (including the hemispherical ends).\n"
"[b]Note:[/b] The [member height] of a capsule must be at least twice its "
"[member radius]. Otherwise, the capsule becomes a circle. If the [member "
"height] is less than twice the [member radius], the properties adjust to a "
"valid value."
msgstr ""
"Hauteur totale du maillage de capsule (y compris les extrémités "
"hémisphériques).\n"
"[b]Note :[/b] La hauteur [member height] d'un maillage de capsule doit valoir "
"au moins deux fois son rayon [member radius]. Sinon, la capsule devient un "
"cercle. Si la hauteur [member height] est inférieure à deux fois le rayon "
"[member radius], les propriétés s'ajustent à une valeur valide."

msgid "Number of radial segments on the capsule mesh."
msgstr "Le nombre de segments radiaux du maillage de la capsule."

msgid ""
"Radius of the capsule mesh.\n"
"[b]Note:[/b] The [member radius] of a capsule cannot be greater than half of "
"its [member height]. Otherwise, the capsule becomes a circle. If the [member "
"radius] is greater than half of the [member height], the properties adjust to "
"a valid value."
msgstr ""
"Rayon du maillage en capsule.\n"
"[b]Note :[/b] Le rayon [member radius] d'une capsule ne peut pas être "
"supérieur à la moitié de sa hauteur [member height]. Sinon, la capsule "
"devient un cercle. Si le rayon [member radius] est supérieur à la moitié de "
"la hauteur [member height], les propriétés s'ajustent à une valeur valide."

msgid "Number of rings along the height of the capsule."
msgstr "Le nombre d'anneau le long de la hauteur de la capsule."

msgid "A 2D capsule shape used for physics collision."
msgstr "Une forme de capsule 2D utilisée pour les collisions physiques."

msgid ""
"A 2D capsule shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape2D].\n"
"[b]Performance:[/b] [CapsuleShape2D] is fast to check collisions against, but "
"it is slower than [RectangleShape2D] and [CircleShape2D]."
msgstr ""
"Une forme de capsule 2D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape2D].\n"
"[b]Performance :[/b] [CapsuleShape2D] est rapide pour vérifier les "
"collisions, mais plus lente que [RectangleShape2D] et [CircleShape2D]."

msgid ""
"The capsule's full height, including the semicircles.\n"
"[b]Note:[/b] The [member height] of a capsule must be at least twice its "
"[member radius]. Otherwise, the capsule becomes a circle. If the [member "
"height] is less than twice the [member radius], the properties adjust to a "
"valid value."
msgstr ""
"La hauteur complète de la capsule, y compris les demi-cercles.\n"
"[b]Note :[/b] La hauteur [member height] d'une capsule doit être au moins "
"deux fois son rayon [member radius]. Sinon, la capsule devient un cercle. Si "
"[member height] est inférieure à deux fois [member radius], les propriétés "
"s'adaptent à une valeur valide."

msgid ""
"The capsule's height, excluding the semicircles. This is the height of the "
"central rectangular part in the middle of the capsule, and is the distance "
"between the centers of the two semicircles. This is a wrapper for [member "
"height]."
msgstr ""
"La hauteur de la capsule, en excluant les demi-cercles. C'est la hauteur de "
"la partie rectangulaire centrale au milieu de la capsule, et est la distance "
"entre les centres des deux demi-cercles. Il s'agit d'un wrapper pour [member "
"height]."

msgid ""
"The capsule's radius.\n"
"[b]Note:[/b] The [member radius] of a capsule cannot be greater than half of "
"its [member height]. Otherwise, the capsule becomes a circle. If the [member "
"radius] is greater than half of the [member height], the properties adjust to "
"a valid value."
msgstr ""
"Le rayon de la capsule.\n"
"[b]Note :[/b] La hauteur [member height] d'une capsule doit être au moins "
"deux fois son rayon [member radius]. Sinon, la capsule devient un cercle. Si "
"[member height] est inférieure à deux fois [member radius], les propriétés "
"s'adaptent à une valeur valide."

msgid "A 3D capsule shape used for physics collision."
msgstr "Une forme de capsule 3D utilisée pour les collisions physiques."

msgid ""
"A 3D capsule shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"[b]Performance:[/b] [CapsuleShape3D] is fast to check collisions against. It "
"is faster than [CylinderShape3D], but slower than [SphereShape3D] and "
"[BoxShape3D]."
msgstr ""
"Une forme de capsule 3D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape3D].\n"
"[b]Performance :[/b] [CapsuleShape3D] est rapide pour vérifier les "
"collisions. Elle est plus rapide que [CylinderShape3D], mais plus lente que "
"[SphereShape3D] et [BoxShape3D]."

msgid ""
"The capsule's full height, including the hemispheres.\n"
"[b]Note:[/b] The [member height] of a capsule must be at least twice its "
"[member radius]. Otherwise, the capsule becomes a sphere. If the [member "
"height] is less than twice the [member radius], the properties adjust to a "
"valid value."
msgstr ""
"La hauteur complète de la capsule, y compris les hémisphères.\n"
"[b]Note :[/b] La hauteur [member height] d'une capsule doit être au moins "
"deux fois son rayon [member radius]. Sinon, la capsule devient un cercle. Si "
"[member height] est inférieure à deux fois [member radius], les propriétés "
"s'adaptent à une valeur valide."

msgid ""
"The capsule's height, excluding the hemispheres. This is the height of the "
"central cylindrical part in the middle of the capsule, and is the distance "
"between the centers of the two hemispheres. This is a wrapper for [member "
"height]."
msgstr ""
"La hauteur de la capsule, en excluant les hémisphères. C'est la hauteur de la "
"partie cylindrique centrale au milieu de la capsule, et est la distance entre "
"les centres des deux hémisphères. Il s'agit d'un wrapper pour [member height]."

msgid ""
"The capsule's radius.\n"
"[b]Note:[/b] The [member radius] of a capsule cannot be greater than half of "
"its [member height]. Otherwise, the capsule becomes a sphere. If the [member "
"radius] is greater than half of the [member height], the properties adjust to "
"a valid value."
msgstr ""
"Le rayon de la capsule.\n"
"[b]Note :[/b] La hauteur [member height] d'une capsule doit être au moins "
"deux fois son rayon [member radius]. Sinon, la capsule devient un cercle. Si "
"[member height] est inférieure à deux fois [member radius], les propriétés "
"s'adaptent à une valeur valide."

msgid "A container that keeps child controls in its center."
msgstr "Un conteneur qui maintient les contrôles enfants en son centre."

msgid ""
"[CenterContainer] is a container that keeps all of its child controls in its "
"center at their minimum size."
msgstr ""
"[CenterContainer] est un conteneur qui garde tous ses contrôles enfants en "
"son centre à leur taille minimale."

msgid ""
"If [code]true[/code], centers children relative to the [CenterContainer]'s "
"top left corner."
msgstr ""
"Si [code]true[/code], centre les enfants par rapport au coin supérieur gauche "
"du [CenterContainer])."

msgid "A 2D physics body specialized for characters moved by script."
msgstr ""
"Un corps physique 2D spécialisé pour les personnages déplacés par script."

msgid ""
"[CharacterBody2D] is a specialized class for physics bodies that are meant to "
"be user-controlled. They are not affected by physics at all, but they affect "
"other physics bodies in their path. They are mainly used to provide high-"
"level API to move objects with wall and slope detection ([method "
"move_and_slide] method) in addition to the general collision detection "
"provided by [method PhysicsBody2D.move_and_collide]. This makes it useful for "
"highly configurable physics bodies that must move in specific ways and "
"collide with the world, as is often the case with user-controlled "
"characters.\n"
"For game objects that don't require complex movement or collision detection, "
"such as moving platforms, [AnimatableBody2D] is simpler to configure."
msgstr ""
"[CharacterBody2D] est une classe spécialisée pour les corps physiques qui "
"sont destinés à être contrôlés par l'utilisateur. Ils ne sont pas affectés "
"par la physique du tout, mais ils affectent les autres corps physiques sur "
"leur chemin. Ils sont principalement utilisés pour fournir à l'API de haut "
"niveau un moyen de déplacer des objets avec de la détection de mur et de "
"pente (la méthode [method move_and_slide]) en plus de la détection générale "
"de collisions fournie par [method PhysicsBody2D.move_and_collide]. Cela la "
"rend utile pour les corps physiques hautement configurables qui doivent se "
"déplacer de manière spécifique et se entrer en collision avec le monde, comme "
"c'est souvent le cas avec des personnages contrôlés par l'utilisateur.\n"
"Pour les objets de jeu qui ne nécessitent pas de détection de mouvement ou de "
"collision complexe, comme des plates-formes mobiles, [AnimatableBody2D] est "
"plus simple à configurer."

msgid "Kinematic character (2D)"
msgstr "Caractère cinématique (2D)"

msgid "Using CharacterBody2D"
msgstr "Utiliser CharacterBody2D"

msgid "2D Kinematic Character Demo"
msgstr "Démo de personnage cinématique en 2D"

msgid ""
"Allows to manually apply a snap to the floor regardless of the body's "
"velocity. This function does nothing when [method is_on_floor] returns "
"[code]true[/code]."
msgstr ""
"Permet d'appliquer manuellement une aimantation au sol indépendamment de la "
"vélocité du corps. Cette fonction ne fait rien lorsque [method is_on_floor] "
"renvoie [code]true[/code]."

msgid ""
"Returns the floor's collision angle at the last collision point according to "
"[param up_direction], which is [constant Vector2.UP] by default. This value "
"is always positive and only valid after calling [method move_and_slide] and "
"when [method is_on_floor] returns [code]true[/code]."
msgstr ""
"Renvoie l'angle de collision du sol au dernier point de collision selon la "
"direction du haut [param up_direction], qui est par défaut [constant "
"Vector2.UP]. Cette valeur est toujours positive et seulement valide après "
"avoir appelé [method move_and_slide] et lorsque [method is_on_floor] renvoie "
"[code]true[/code]."

msgid ""
"Returns the collision normal of the floor at the last collision point. Only "
"valid after calling [method move_and_slide] and when [method is_on_floor] "
"returns [code]true[/code].\n"
"[b]Warning:[/b] The collision normal is not always the same as the surface "
"normal."
msgstr ""
"Renvoie la normale de la collision du sol au dernier point de collision. "
"Cette valeur est seulement valide après avoir appelé [method move_and_slide] "
"et lorsque [method is_on_floor] renvoie [code]true[/code].\n"
"[b]Attention :[/b] La normale de la collision n'est pas toujours identique à "
"la normale de la surface."

msgid ""
"Returns the last motion applied to the [CharacterBody2D] during the last call "
"to [method move_and_slide]. The movement can be split into multiple motions "
"when sliding occurs, and this method return the last one, which is useful to "
"retrieve the current direction of the movement."
msgstr ""
"Renvoie le dernier mouvement appliqué au [CharacterBody2D] lors du dernier "
"appel à [method move_and_slide]. Le mouvement peut être divisé en plusieurs "
"sous-mouvements lorsqu'un glissement se produit, et cette méthode renvoie le "
"dernier, ce qui est utile pour récupérer la direction actuelle du mouvement."

msgid ""
"Returns a [KinematicCollision2D], which contains information about the latest "
"collision that occurred during the last call to [method move_and_slide]."
msgstr ""
"Renvoie un [KinematicCollision2D], qui contient les information sur la "
"dernière collision qui est arrivée lors du dernier appel de [method "
"move_and_slide]."

msgid ""
"Returns the linear velocity of the platform at the last collision point. Only "
"valid after calling [method move_and_slide]."
msgstr ""
"Renvoie la vitesse linéaire de la plate-forme au dernier point de collision. "
"Seulement valide après avoir appelé [method move_and_slide]."

msgid ""
"Returns the travel (position delta) that occurred during the last call to "
"[method move_and_slide]."
msgstr ""
"Renvoie le déplacement (le différentiel de position) qui s'est produit lors "
"du dernier appel à [method move_and_slide]."

msgid ""
"Returns the current real velocity since the last call to [method "
"move_and_slide]. For example, when you climb a slope, you will move "
"diagonally even though the velocity is horizontal. This method returns the "
"diagonal movement, as opposed to [member velocity] which returns the "
"requested velocity."
msgstr ""
"Retourne la vitesse réelle actuelle depuis le dernier appel à [method "
"move_and_slide]. Par exemple, lorsque vous grimpez sur une pente, vous vous "
"déplacerez en diagonale même si la vitesse est horizontale. Cette méthode "
"renvoie le mouvement diagonal, par opposition à [member velocity] qui renvoie "
"la vitesse demandée."

msgid ""
"Returns a [KinematicCollision2D], which contains information about a "
"collision that occurred during the last call to [method move_and_slide]. "
"Since the body can collide several times in a single call to [method "
"move_and_slide], you must specify the index of the collision in the range 0 "
"to ([method get_slide_collision_count] - 1).\n"
"[b]Example:[/b] Iterate through the collisions with a [code]for[/code] loop:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in get_slide_collision_count():\n"
"\tvar collision = get_slide_collision(i)\n"
"\tprint(\"Collided with: \", collision.get_collider().name)\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < GetSlideCollisionCount(); i++)\n"
"{\n"
"\tKinematicCollision2D collision = GetSlideCollision(i);\n"
"\tGD.Print(\"Collided with: \", (collision.GetCollider() as Node).Name);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une [KinematicCollision2D] qui contient des informations sur une "
"collision qui s'est produite lors du dernier appel à [method move_and_slide]. "
"Comme le corps peut entrer en collisions plusieurs fois dans un seul appel à "
"[method move_and_slide], vous devez spécifier l'index de la collision dans "
"une plage de 0 à ([method get_slide_collision_count] - 1).\n"
"[b]Exemple :[/b] Itérer sur les collisions avec une boucle [code]for[/"
"code] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in get_slide_collision_count():\n"
"\tvar collision = get_slide_collision(i)\n"
"\tprint(\"Entré en collision avec : \", collision.get_collider().name)\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < GetSlideCollisionCount(); i++)\n"
"{\n"
"\tKinematicCollision2D collision = GetSlideCollision(i);\n"
"\tGD.Print(\"Entré en collision avec : \", (collision.GetCollider() as "
"Node).Name);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of times the body collided and changed direction during "
"the last call to [method move_and_slide]."
msgstr ""
"Renvoie le nombre de fois où le corps est entré en collision et a changé de "
"direction durant le dernier appel à [method move_and_slide]."

msgid ""
"Returns the collision normal of the wall at the last collision point. Only "
"valid after calling [method move_and_slide] and when [method is_on_wall] "
"returns [code]true[/code].\n"
"[b]Warning:[/b] The collision normal is not always the same as the surface "
"normal."
msgstr ""
"Renvoie la normale de collision du mur au dernier point de collision. "
"Seulement valable après avoir appelé [method move_and_slide] et lorsque "
"[method is_on_wall] renvoie [code]true[/code].\n"
"[b]Attention :[/b] La normale de la collision n'est pas toujours identique à "
"la normale de la surface."

msgid ""
"Returns [code]true[/code] if the body collided with the ceiling on the last "
"call of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"ceiling\" or not."
msgstr ""
"Renvoie [code]true[/code] si le corps était entré en collision avec le "
"plafond lors du dernier appel à [method move_and_slide]. Sinon, renvoie "
"[code]false[/code]. Le vecteur haut [member up_direction] et l'angle maximal "
"[member floor_max_angle] sont utilisés pour déterminer si une surface est un "
"\"plafond\" ou non."

msgid ""
"Returns [code]true[/code] if the body collided only with the ceiling on the "
"last call of [method move_and_slide]. Otherwise, returns [code]false[/code]. "
"The [member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"ceiling\" or not."
msgstr ""
"Renvoie [code]true[/code] si le corps était entré en collision avec seulement "
"le plafond lors du dernier appel à [method move_and_slide]. Sinon, renvoie "
"[code]false[/code]. Le vecteur haut [member up_direction] et l'angle maximal "
"[member floor_max_angle] sont utilisés pour déterminer si une surface est un "
"\"plafond\" ou non."

msgid ""
"Returns [code]true[/code] if the body collided with the floor on the last "
"call of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"floor\" or not."
msgstr ""
"Renvoie [code]true[/code] si le corps est entré en collision avec le sol lors "
"du dernier appel à [method move_and_slide]. Sinon, renvoie [code]false[/"
"code]. La direction du haut [member up_direction] et l'angle maximal [member "
"floor_max_angle] sont utilisés pour déterminer si une surface est un \"sol\" "
"ou non."

msgid ""
"Returns [code]true[/code] if the body collided only with the floor on the "
"last call of [method move_and_slide]. Otherwise, returns [code]false[/code]. "
"The [member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"floor\" or not."
msgstr ""
"Renvoie [code]true[/code] si le corps est entré en collision seulement avec "
"le sol lors du dernier appel à [method move_and_slide]. Sinon, renvoie "
"[code]false[/code]. La direction du haut [member up_direction] et l'angle "
"maximal [member floor_max_angle] sont utilisés pour déterminer si une surface "
"est un \"sol\" ou non."

msgid ""
"Returns [code]true[/code] if the body collided with a wall on the last call "
"of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"wall\" or not."
msgstr ""
"Renvoie [code]true[/code] si le corps était entré en collision avec un mur "
"lors du dernier appel à [method move_and_slide]. Renvoie [code]false[/code] "
"sinon. La direction haut [member up_direction] et l'angle maximal [member "
"floor_max_angle] sont utilisés pour déterminer si une surface est un « mur » "
"ou non."

msgid ""
"Returns [code]true[/code] if the body collided only with a wall on the last "
"call of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"wall\" or not."
msgstr ""
"Renvoie [code]true[/code] si le corps était entré seulement en collision avec "
"un mur lors du dernier appel à [method move_and_slide]. Renvoie [code]false[/"
"code] sinon. La direction haut [member up_direction] et l'angle maximal "
"[member floor_max_angle] sont utilisés pour déterminer si une surface est un "
"« mur » ou non."

msgid ""
"Moves the body based on [member velocity]. If the body collides with another, "
"it will slide along the other body (by default only on floor) rather than "
"stop immediately. If the other body is a [CharacterBody2D] or [RigidBody2D], "
"it will also be affected by the motion of the other body. You can use this to "
"make moving and rotating platforms, or to make nodes push other nodes.\n"
"This method should be used in [method Node._physics_process] (or in a method "
"called by [method Node._physics_process]), as it uses the physics step's "
"[code]delta[/code] value automatically in calculations. Otherwise, the "
"simulation will run at an incorrect speed.\n"
"Modifies [member velocity] if a slide collision occurred. To get the latest "
"collision call [method get_last_slide_collision], for detailed information "
"about collisions that occurred, use [method get_slide_collision].\n"
"When the body touches a moving platform, the platform's velocity is "
"automatically added to the body motion. If a collision occurs due to the "
"platform's motion, it will always be first in the slide collisions.\n"
"The general behavior and available properties change according to the [member "
"motion_mode].\n"
"Returns [code]true[/code] if the body collided, otherwise, returns "
"[code]false[/code]."
msgstr ""
"Déplace le corps selon la vitesse [member velocity]. Si le corps entre en "
"collision avec un autre, il glisse sur l'autre corps (par défaut seulement "
"sur le sol) plutôt que de s'arrêter immédiatement. Si l'autre corps est un "
"[CharacterBody2D] ou un [RigidBody2D], il sera également affecté par le "
"mouvement de l'autre corps. Vous pouvez utiliser ceci pour faire des plates-"
"formes mobiles et tournantes, ou pour faire que des nœuds poussent d'autres "
"nœuds.\n"
"Cette méthode doit être utilisée dans [method Node._physics_process] (ou dans "
"une méthode appelée par [method Node._physics_process]), car elle utilise "
"automatique la valeur [code]delta[/code] de l'étape de physique dans son "
"calcul. Dans le cas contraire, la simulation avancera à une vitesse "
"incorrecte.\n"
"Modifie [member velocity] si une collision de glissement s'est produite. Pour "
"obtenir la dernière collision, appelez [method get_last_slide_collision], "
"pour des informations plus détaillées sur les collisions qui se sont "
"produites, utilisez [method get_slide_collision].\n"
"Lorsque le corps touche une plate-forme mobile, la vitesse de la plateforme "
"est automatiquement ajoutée au mouvement du corps. Si une collision survient "
"en raison du mouvement de la plate-forme, elle sera toujours la première dans "
"les collisions de glissement.\n"
"Le comportement général et les propriétés disponibles changent selon le mode "
"de mouvement [member motion_mode].\n"
"Renvoie [code]true[/code] si le corps est entré en collision, sinon, renvoie "
"[code]false[/code]."

msgid ""
"If [code]true[/code], the body will be able to move on the floor only. This "
"option avoids to be able to walk on walls, it will however allow to slide "
"down along them."
msgstr ""
"Si [code]true[/code], le corps ne pourra se déplacer que sur le sol. Cette "
"option évite d'être en mesure de marcher sur les murs, elle permettra "
"cependant de descendre en glissant sur eux."

msgid ""
"If [code]false[/code] (by default), the body will move faster on downward "
"slopes and slower on upward slopes.\n"
"If [code]true[/code], the body will always move at the same speed on the "
"ground no matter the slope. Note that you need to use [member "
"floor_snap_length] to stick along a downward slope at constant speed."
msgstr ""
"Si [code]false[/code] (par défaut), le corps se déplace plus rapidement sur "
"les pentes descendantes et ralentit sur les pentes ascendantes.\n"
"Si [code]true[/code], le corps se déplace toujours à la même vitesse sur le "
"sol, peu importe la pente. Notez que vous devez utiliser [member "
"floor_snap_length] pour rester sur une pente descendante à vitesse constante."

msgid ""
"Maximum angle (in radians) where a slope is still considered a floor (or a "
"ceiling), rather than a wall, when calling [method move_and_slide]. The "
"default value equals 45 degrees."
msgstr ""
"Angle maximal (en radians) où une pente est toujours considérée comme un sol "
"(ou un plafond), plutôt qu'un mur, lorsqu'on appelle [method move_and_slide]. "
"La valeur par défaut est de 45 degrés."

msgid ""
"Sets a snapping distance. When set to a value different from [code]0.0[/"
"code], the body is kept attached to slopes when calling [method "
"move_and_slide]. The snapping vector is determined by the given distance "
"along the opposite direction of the [member up_direction].\n"
"As long as the snapping vector is in contact with the ground and the body "
"moves against [member up_direction], the body will remain attached to the "
"surface. Snapping is not applied if the body moves along [member "
"up_direction], meaning it contains vertical rising velocity, so it will be "
"able to detach from the ground when jumping or when the body is pushed up by "
"something. If you want to apply a snap without taking into account the "
"velocity, use [method apply_floor_snap]."
msgstr ""
"Définit une distance de aimantation. Lorsque défini à une valeur différente "
"de [code]0.0[/code], le corps est maintenu attaché aux pentes lors de l'appel "
"à [method move_and_slide]. Le vecteur d'aimantation est déterminé par la "
"distance donnée le long de la direction opposée au vecteur [member "
"up_direction].\n"
"Tant que le vecteur d'aimantation est en contact avec le sol et que le corps "
"se déplace contre [member up_direction], le corps restera attaché à la "
"surface. L'aimantation n'est pas appliquée si le corps se déplace le long de "
"[member up_direction], ce qui signifie qu'il contient la vitesse de montée "
"verticale, de sorte qu'il sera en mesure de se détacher du sol lors d'un saut "
"ou lorsque le corps est poussé par quelque chose. Si vous voulez appliquer "
"une aimantation sans tenir compte de la vitesse, utilisez [method "
"apply_floor_snap]."

msgid ""
"If [code]true[/code], the body will not slide on slopes when calling [method "
"move_and_slide] when the body is standing still.\n"
"If [code]false[/code], the body will slide on floor's slopes when [member "
"velocity] applies a downward force."
msgstr ""
"Si [code]true[/code], le corps ne glissera pas sur les pentes lors de l'appel "
"à [method move_and_slide] lorsque le corps est debout et immobile.\n"
"Si [code]false[/code], le corps glissera sur les pentes du sol lorsque "
"[member velocity] applique une force descendante."

msgid ""
"Maximum number of times the body can change direction before it stops when "
"calling [method move_and_slide]. Must be greater than zero."
msgstr ""
"Nombre de fois maximal où le corps peut changer de direction avant qu'il "
"s'arrête lors de l'appel à [method move_and_slide]. Doit être supérieur à "
"zéro."

msgid ""
"Sets the motion mode which defines the behavior of [method move_and_slide]."
msgstr ""
"Définit le mode de mouvement qui définit le comportement de [method "
"move_and_slide]."

msgid ""
"Collision layers that will be included for detecting floor bodies that will "
"act as moving platforms to be followed by the [CharacterBody2D]. By default, "
"all floor bodies are detected and propagate their velocity."
msgstr ""
"Les couches de collision qui seront incluses pour détecter les corps de sol "
"qui agiront comme des plates-formes mobiles à être suivies par le "
"[CharacterBody2D]. Par défaut, les corps du sol sont détectées et propagent "
"leur vitesse."

msgid ""
"Sets the behavior to apply when you leave a moving platform. By default, to "
"be physically accurate, when you leave the last platform velocity is applied."
msgstr ""
"Définit le comportement à appliquer lorsque vous quittez une plate-forme "
"mobile. Par défaut, pour être physiquement correct, lorsque vous quittez la "
"plateforme, sa vitesse est appliquée."

msgid ""
"Collision layers that will be included for detecting wall bodies that will "
"act as moving platforms to be followed by the [CharacterBody2D]. By default, "
"all wall bodies are ignored."
msgstr ""
"Les couches de collision qui seront incluses pour détecter les corps de mur "
"qui agiront comme des plates-formes mobiles à être suivies par le "
"[CharacterBody2D]. Par défaut, tous les corps de murs sont ignorés."

msgid ""
"Extra margin used for collision recovery when calling [method "
"move_and_slide].\n"
"If the body is at least this close to another body, it will consider them to "
"be colliding and will be pushed away before performing the actual motion.\n"
"A higher value means it's more flexible for detecting collision, which helps "
"with consistently detecting walls and floors.\n"
"A lower value forces the collision algorithm to use more exact detection, so "
"it can be used in cases that specifically require precision, e.g at very low "
"scale to avoid visible jittering, or for stability with a stack of character "
"bodies."
msgstr ""
"Marge supplémentaire utilisée pour la récupération de collision lors de "
"l'appel à [method move_and_slide].\n"
"Si le corps est au plus à cette distance d'un autre corps, elle les "
"considérera comme en collision et seront repoussés avant d'exécuter le "
"mouvement réel.\n"
"Une valeur plus élevée signifie qu'elle est plus flexible pour détecter la "
"collision, ce qui aide à détecter constamment les murs et les sols.\n"
"Une valeur inférieure force l'algorithme de collision à utiliser une "
"détection plus exacte, de sorte qu'il peut être utilisé dans les cas qui "
"nécessitent spécifiquement une précision, p.ex. à très basse échelle pour "
"éviter le jittering visible, ou pour la stabilité avec une pile de corps de "
"personnages."

msgid ""
"If [code]true[/code], during a jump against the ceiling, the body will slide, "
"if [code]false[/code] it will be stopped and will fall vertically."
msgstr ""
"Si [code]true[/code], lors d'un saut contre le plafond, le corps glissera, si "
"[code]false[/code], il sera arrêté et tombera verticalement."

msgid ""
"Vector pointing upwards, used to determine what is a wall and what is a floor "
"(or a ceiling) when calling [method move_and_slide]. Defaults to [constant "
"Vector2.UP]. As the vector will be normalized it can't be equal to [constant "
"Vector2.ZERO], if you want all collisions to be reported as walls, consider "
"using [constant MOTION_MODE_FLOATING] as [member motion_mode]."
msgstr ""
"Vecteur pointant vers le haut, utilisé pour déterminer ce qui est un mur et "
"ce qui est un sol (ou un plafond) lors de l'appel à [method move_and_slide]. "
"Vaut par défaut [constant Vector2.UP]. Comme le vecteur sera normalisé, il ne "
"peut pas être égal à [constant Vector2.ZERO], si vous voulez que toutes les "
"collisions soient signalées comme des murs, envisagez d'utiliser [constant "
"MOTION_MODE_FLOATING] comme [member motion_mode]."

msgid ""
"Current velocity vector in pixels per second, used and modified during calls "
"to [method move_and_slide].\n"
"This property should not be set to a value multiplied by [code]delta[/code], "
"because this happens internally in [method move_and_slide]. Otherwise, the "
"simulation will run at an incorrect speed."
msgstr ""
"Vecteur de vitesse actuel en pixels par seconde, utilisé et modifié pendant "
"les appels à [method move_and_slide].\n"
"Cette propriété ne doit pas être assignée une valeur multipliée par "
"[code]delta[/code], car cela est appliqué en interne dans [method "
"move_and_slide]. Dans le cas contraire, la simulation avancera à une vitesse "
"incorrecte."

msgid ""
"Minimum angle (in radians) where the body is allowed to slide when it "
"encounters a wall. The default value equals 15 degrees. This property only "
"affects movement when [member motion_mode] is [constant MOTION_MODE_FLOATING]."
msgstr ""
"Angle minimum (en radians) auquel le corps est autorisé à glisser lorsqu'il "
"rencontre un mur. La valeur par défaut est égale à 15 degrés. Cette propriété "
"n'affecte le mouvement que lorsque [member motion_mode] vaut [constant "
"MOTION_MODE_FLOATING]."

msgid ""
"Apply when notions of walls, ceiling and floor are relevant. In this mode the "
"body motion will react to slopes (acceleration/slowdown). This mode is "
"suitable for sided games like platformers."
msgstr ""
"À appliquer lorsque les notions de murs, de plafond et de sol sont "
"pertinentes. Dans ce mode, le mouvement du corps réagira aux pentes "
"(accélération/ralentissement). Ce mode est adapté aux jeux qui vont de gauche "
"à droite comme les jeux de plate-formes."

msgid ""
"Apply when there is no notion of floor or ceiling. All collisions will be "
"reported as [code]on_wall[/code]. In this mode, when you slide, the speed "
"will always be constant. This mode is suitable for top-down games."
msgstr ""
"À appliquer lorsqu'il n'y a pas de notion de sol ou de plafond. Toutes les "
"collisions seront signalées comme [code]on_wall[/code]. Dans ce mode, lorsque "
"vous glissez, la vitesse sera toujours constante. Ce mode est adapté aux jeux "
"qui vont de bas en haut."

msgid ""
"Add the last platform velocity to the [member velocity] when you leave a "
"moving platform."
msgstr ""
"Ajoute la vitesse de la dernière plateforme à la vitesse [member velocity] "
"lorsque vous quittez une plateforme mobile."

msgid ""
"Add the last platform velocity to the [member velocity] when you leave a "
"moving platform, but any downward motion is ignored. It's useful to keep full "
"jump height even when the platform is moving down."
msgstr ""
"Ajoute la vitesse de la dernière plateforme à la vitesse [member velocity] "
"lorsque vous quittez une plateforme mobile, mais les mouvements descendants "
"sont ignorés. Cela est utile pour garder la hauteur de saut complète même "
"lorsque la plateforme descend."

msgid "Do nothing when leaving a platform."
msgstr "Ne fait rien quand quitte la plateforme."

msgid "A 3D physics body specialized for characters moved by script."
msgstr ""
"Un corps physique 3D spécialisé pour les personnages déplacés par script."

msgid ""
"[CharacterBody3D] is a specialized class for physics bodies that are meant to "
"be user-controlled. They are not affected by physics at all, but they affect "
"other physics bodies in their path. They are mainly used to provide high-"
"level API to move objects with wall and slope detection ([method "
"move_and_slide] method) in addition to the general collision detection "
"provided by [method PhysicsBody3D.move_and_collide]. This makes it useful for "
"highly configurable physics bodies that must move in specific ways and "
"collide with the world, as is often the case with user-controlled "
"characters.\n"
"For game objects that don't require complex movement or collision detection, "
"such as moving platforms, [AnimatableBody3D] is simpler to configure."
msgstr ""
"[CharacterBody3D] est une classe spécialisée pour les corps physiques qui "
"sont destinés à être contrôlés par l'utilisateur. Ils ne sont pas affectés "
"par la physique du tout, mais ils affectent les autres corps physiques sur "
"leur chemin. Ils sont principalement utilisés pour fournir à l'API de haut "
"niveau un moyen de déplacer des objets avec de la détection de mur et de "
"pente (la méthode [method move_and_slide]) en plus de la détection générale "
"de collisions fournie par [method PhysicsBody3D.move_and_collide]. Cela la "
"rend utile pour les corps physiques hautement configurables qui doivent se "
"déplacer de manière spécifique et se entrer en collision avec le monde, comme "
"c'est souvent le cas avec des personnages contrôlés par l'utilisateur.\n"
"Pour les objets de jeu qui ne nécessitent pas de détection de mouvement ou de "
"collision complexe, comme des plates-formes mobiles, [AnimatableBody3D] est "
"plus simple à configurer."

msgid ""
"Returns the floor's collision angle at the last collision point according to "
"[param up_direction], which is [constant Vector3.UP] by default. This value "
"is always positive and only valid after calling [method move_and_slide] and "
"when [method is_on_floor] returns [code]true[/code]."
msgstr ""
"Renvoie l'angle de collision du sol au dernier point de collision selon la "
"direction du haut [param up_direction], qui est par défaut [constant "
"Vector3.UP]. Cette valeur est toujours positive et seulement valide après "
"avoir appelé [method move_and_slide] et lorsque [method is_on_floor] renvoie "
"[code]true[/code]."

msgid ""
"Returns the last motion applied to the [CharacterBody3D] during the last call "
"to [method move_and_slide]. The movement can be split into multiple motions "
"when sliding occurs, and this method return the last one, which is useful to "
"retrieve the current direction of the movement."
msgstr ""
"Renvoie le dernier mouvement appliqué au [CharacterBody3D] lors du dernier "
"appel à [method move_and_slide]. Le mouvement peut être divisé en plusieurs "
"sous-mouvements lorsqu'un glissement se produit, et cette méthode renvoie le "
"dernier, ce qui est utile pour récupérer la direction actuelle du mouvement."

msgid ""
"Returns a [KinematicCollision3D], which contains information about the latest "
"collision that occurred during the last call to [method move_and_slide]."
msgstr ""
"Renvoie un [KinematicCollision3D], qui contient des informations sur la "
"dernière collision qui est arrivée lors du dernier appel de [method "
"move_and_slide]."

msgid ""
"Returns the angular velocity of the platform at the last collision point. "
"Only valid after calling [method move_and_slide]."
msgstr ""
"Renvoie la vitesse angulaire de la plate-forme au dernier point de collision. "
"Seulement valide après avoir appelé [method move_and_slide]."

msgid ""
"Returns a [KinematicCollision3D], which contains information about a "
"collision that occurred during the last call to [method move_and_slide]. "
"Since the body can collide several times in a single call to [method "
"move_and_slide], you must specify the index of the collision in the range 0 "
"to ([method get_slide_collision_count] - 1)."
msgstr ""
"Renvoie un [KinematicCollision3D] qui contient des informations sur une "
"collision qui s'est produite au cours du dernier appel à [method "
"move_and_slide]. Comme le corps peut entrer en collision plusieurs fois dans "
"un seul appel à [method move_and_slide], vous devez spécifier l'index de la "
"collision dans une plage de 0 à ([method get_slide_collision_count] - 1)."

msgid ""
"Moves the body based on [member velocity]. If the body collides with another, "
"it will slide along the other body rather than stop immediately. If the other "
"body is a [CharacterBody3D] or [RigidBody3D], it will also be affected by the "
"motion of the other body. You can use this to make moving and rotating "
"platforms, or to make nodes push other nodes.\n"
"This method should be used in [method Node._physics_process] (or in a method "
"called by [method Node._physics_process]), as it uses the physics step's "
"[code]delta[/code] value automatically in calculations. Otherwise, the "
"simulation will run at an incorrect speed.\n"
"Modifies [member velocity] if a slide collision occurred. To get the latest "
"collision call [method get_last_slide_collision], for more detailed "
"information about collisions that occurred, use [method "
"get_slide_collision].\n"
"When the body touches a moving platform, the platform's velocity is "
"automatically added to the body motion. If a collision occurs due to the "
"platform's motion, it will always be first in the slide collisions.\n"
"Returns [code]true[/code] if the body collided, otherwise, returns "
"[code]false[/code]."
msgstr ""
"Déplace le corps selon la vitesse [member velocity]. Si le corps entre en "
"collision avec un autre, il glisse sur l'autre corps plutôt que de s'arrêter "
"immédiatement. Si l'autre corps est un [CharacterBody3D] ou un [RigidBody3D], "
"il sera également affecté par le mouvement de l'autre corps. Vous pouvez "
"utiliser ceci pour faire des plates-formes mobiles et tournantes, ou pour "
"faire que des nœuds poussent d'autres nœuds.\n"
"Cette méthode doit être utilisée dans [method Node._physics_process] (ou dans "
"une méthode appelée par [method Node._physics_process]), car elle utilise "
"automatique la valeur [code]delta[/code] de l'étape de physique dans son "
"calcul. Dans le cas contraire, la simulation avancera à une vitesse "
"incorrecte.\n"
"Modifie [member velocity] si une collision de glissement s'est produite. Pour "
"obtenir la dernière collision, appelez [method get_last_slide_collision], "
"pour des informations plus détaillées sur les collisions qui se sont "
"produites, utilisez [method get_slide_collision].\n"
"Lorsque le corps touche une plate-forme mobile, la vitesse de la plateforme "
"est automatiquement ajoutée au mouvement du corps. Si une collision survient "
"en raison du mouvement de la plate-forme, elle sera toujours la première dans "
"les collisions de glissement.\n"
"Renvoie [code]true[/code] si le corps est entré en collision, sinon, renvoie "
"[code]false[/code]."

msgid ""
"Collision layers that will be included for detecting floor bodies that will "
"act as moving platforms to be followed by the [CharacterBody3D]. By default, "
"all floor bodies are detected and propagate their velocity."
msgstr ""
"Les couches de collision qui seront incluses pour détecter les corps de sol "
"qui agiront comme des plates-formes mobiles à être suivies par le "
"[CharacterBody3D]. Par défaut, les corps du sol sont détectées et propagent "
"leur vitesse."

msgid ""
"Collision layers that will be included for detecting wall bodies that will "
"act as moving platforms to be followed by the [CharacterBody3D]. By default, "
"all wall bodies are ignored."
msgstr ""
"Les couches de collision qui seront incluses pour détecter les corps de mur "
"qui agiront comme des plates-formes mobiles à être suivies par le "
"[CharacterBody3D]. Par défaut, tous les corps de murs sont ignorés."

msgid ""
"Vector pointing upwards, used to determine what is a wall and what is a floor "
"(or a ceiling) when calling [method move_and_slide]. Defaults to [constant "
"Vector3.UP]. As the vector will be normalized it can't be equal to [constant "
"Vector3.ZERO], if you want all collisions to be reported as walls, consider "
"using [constant MOTION_MODE_FLOATING] as [member motion_mode]."
msgstr ""
"Vecteur pointant vers le haut, utilisé pour déterminer ce qui est un mur et "
"ce qui est un sol (ou un plafond) lors de l'appel à [method move_and_slide]. "
"Vaut [constant Vector3.UP] par défaut. Comme le vecteur sera normalisé, il ne "
"peut pas être égal à [constant Vector3.ZERO], si vous voulez que toutes les "
"collisions soient signalées comme des murs, envisagez d'utiliser [constant "
"MOTION_MODE_FLOATING] pour [member motion_mode]."

msgid ""
"Current velocity vector (typically meters per second), used and modified "
"during calls to [method move_and_slide].\n"
"This property should not be set to a value multiplied by [code]delta[/code], "
"because this happens internally in [method move_and_slide]. Otherwise, the "
"simulation will run at an incorrect speed."
msgstr ""
"Vecteur de vitesse actuel (typiquement en mètres par seconde), utilisé et "
"modifié pendant les appels à [method move_and_slide].\n"
"Cette propriété ne doit pas être assignée une valeur multipliée par "
"[code]delta[/code], car cela est appliqué en interne dans [method "
"move_and_slide]. Dans le cas contraire, la simulation avancera à une vitesse "
"incorrecte."

msgid ""
"Minimum angle (in radians) where the body is allowed to slide when it "
"encounters a wall. The default value equals 15 degrees. When [member "
"motion_mode] is [constant MOTION_MODE_GROUNDED], it only affects movement if "
"[member floor_block_on_wall] is [code]true[/code]."
msgstr ""
"Angle minimum (en radians) où le corps est autorisé à glisser lorsqu'il "
"rencontre un mur. La valeur par défaut est égale à 15 degrés. Lorsque [member "
"motion_mode] vaut [constant MOTION_MODE_GROUNDED], il affecte uniquement le "
"mouvement si [member floor_block_on_wall] vaut [code]true[/code]."

msgid ""
"Apply when notions of walls, ceiling and floor are relevant. In this mode the "
"body motion will react to slopes (acceleration/slowdown). This mode is "
"suitable for grounded games like platformers."
msgstr ""
"À appliquer lorsque les notions de murs, de plafond et de sol sont "
"pertinentes. Dans ce mode, le mouvement du corps réagira aux pentes "
"(accélération/ralentissement). Ce mode est adapté pour les jeux au sol comme "
"les jeux de plate-forme."

msgid ""
"Apply when there is no notion of floor or ceiling. All collisions will be "
"reported as [code]on_wall[/code]. In this mode, when you slide, the speed "
"will always be constant. This mode is suitable for games without ground like "
"space games."
msgstr ""
"À appliquer quand il n'y a pas de notion de sol ou de plafond. Toutes les "
"collisions seront rapportées comme [code]on_wall[/code]. Dans ce mode, "
"lorsque vous glissez, la vitesse sera toujours constante. Ce mode est adapté "
"pour les jeux sans sol comme les jeux dans l'espace."

msgid ""
"Controls how an individual character will be displayed in a [RichTextEffect]."
msgstr "Contrôle le rendu d'un caractère individuel dans un [RichTextEffect]."

msgid ""
"By setting various properties on this object, you can control how individual "
"characters will be displayed in a [RichTextEffect]."
msgstr ""
"En réglant les diverses propriétés de cet objet, il est possible de contrôler "
"le rendu de caractères individuels dans un [RichTextEffect]."

msgid "BBCode in RichTextLabel"
msgstr "BBCode dans RichTextLabel"

msgid "The color the character will be drawn with."
msgstr "La couleur utilisée pour afficher le caractère."

msgid ""
"Contains the arguments passed in the opening BBCode tag. By default, "
"arguments are strings; if their contents match a type such as [bool], [int] "
"or [float], they will be converted automatically. Color codes in the form "
"[code]#rrggbb[/code] or [code]#rgb[/code] will be converted to an opaque "
"[Color]. String arguments may not contain spaces, even if they're quoted. If "
"present, quotes will also be present in the final string.\n"
"For example, the opening BBCode tag [code][example foo=hello bar=true baz=42 "
"color=#ffffff][/code] will map to the following [Dictionary]:\n"
"[codeblock]\n"
"{\"foo\": \"hello\", \"bar\": true, \"baz\": 42, \"color\": Color(1, 1, 1, "
"1)}\n"
"[/codeblock]"
msgstr ""
"Contient les arguments passés à la balise BBCode d'ouverture. Par défaut, les "
"arguments sont des chaînes de caractères ; si leur contenu correspond à un "
"type tel que [bool], [int] ou [float], ils sont automatiquement convertis. "
"Les codes couleur de la forme [code]#rrvvbb[/code] ou [code]#rvb[/code] sont "
"convertis en une couleur ([Color]) opaque. Les arguments ne doivent pas "
"contenir d'espaces, même s'ils sont entre guillemets. Si il y en a, les "
"guillemets seront également présents dans la chaîne de caractères finale.\n"
"Par exemple, la balise BBCode d'ouverture [code][exemple foo=bonjour bar=true "
"baz=42 color=#ffffff][/code] va correspondre au dictionnaire ([Dictionary]) "
"suivant :\n"
"[codeblock]\n"
"{\"foo\": \"bonjour\", \"bar\": true, \"baz\": 42, \"color\": Color(1, 1, 1, "
"1)}\n"
"[/codeblock]"

msgid "The position offset the character will be drawn with (in pixels)."
msgstr ""
"Le décalage dans la position avec laquelle le caractère va être affiché (en "
"pixels)."

msgid ""
"The character offset of the glyph, relative to the current [RichTextEffect] "
"custom block.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"Le décalage de caractère du glyphe, relatif au bloc personnalisé "
"[RichTextEffect] actuel.\n"
"[b]Note :[/b] En lecture seule. Définir cette propriété n'affectera pas le "
"dessin."

msgid ""
"The current transform of the current glyph. It can be overridden (for "
"example, by driving the position and rotation from a curve). You can also "
"alter the existing value to apply transforms on top of other effects."
msgstr ""
"La transformation actuelle du glyphe actuel. Elle peut être redéfinie (par "
"exemple, en dirigeant la position et la rotation à partir d'une courbe). Vous "
"pouvez également modifier la valeur existante pour appliquer des "
"transformations par dessus d'autres effets."

msgid ""
"If [code]true[/code], the character will be drawn. If [code]false[/code], the "
"character will be hidden. Characters around hidden characters will reflow to "
"take the space of hidden characters. If this is not desired, set their "
"[member color] to [code]Color(1, 1, 1, 0)[/code] instead."
msgstr ""
"Si [code]true[/code], le caractère sera affiché. Si [code]false[/code], le "
"caractère sera caché. Les caractères autour des caractères cachés seront "
"réorganisés pour prendre leur place. Si ce n'est pas ce qui est voulu, réglez "
"leur couleur ([member color]) sur [code]Color(1, 1, 1, 0)[/code] à la place."

msgid "A button that represents a binary choice."
msgstr "Un bouton qui représente un choix binaire."

msgid ""
"[CheckBox] allows the user to choose one of only two possible options. It's "
"similar to [CheckButton] in functionality, but it has a different appearance. "
"To follow established UX patterns, it's recommended to use [CheckBox] when "
"toggling it has [b]no[/b] immediate effect on something. For example, it "
"could be used when toggling it will only do something once a confirmation "
"button is pressed.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"When [member BaseButton.button_group] specifies a [ButtonGroup], [CheckBox] "
"changes its appearance to that of a radio button and uses the various "
"[code]radio_*[/code] theme properties."
msgstr ""
"[CheckBox] permet à l'utilisateur de choisir l'une des deux options "
"possibles. C'est similaire à [CheckButton] dans la fonctionnalité, mais elle "
"a une apparence différente. Pour suivre les modèles UX établis, il est "
"recommandé d'utiliser [CheckBox] lorsqu'elle n'a [b]pas[/b] d'effet immédiat "
"sur quelque chose. Par exemple, elle pourrait être utilisée quand la cocher "
"ne fera quelque chose qu'une fois un bouton de confirmation pressé.\n"
"Voir aussi [BaseButton] qui contient des propriétés et des méthodes communes "
"associées à ce nœud.\n"
"Lorsque [member BaseButton.button_group] spécifie un [ButtonGroup], "
"[CheckBox] modifie son apparence à celle d'un bouton radio et utilise les "
"différentes propriétés [code]radio_*[/code] du thème."

msgid "The color of the checked icon when the checkbox is pressed."
msgstr "La couleur de l'icône de coche lorsque la case à cocher est cochée."

msgid "The color of the unchecked icon when the checkbox is not pressed."
msgstr ""
"La couleur de l'icône de coche lorsque la case à cocher n'est pas cochée."

msgid "The vertical offset used when rendering the check icons (in pixels)."
msgstr ""
"Le décalage vertical utilisé pour le rendu des icônes des coches (en pixels)."

msgid "The check icon to display when the [CheckBox] is checked."
msgstr "L'icône de coche à afficher quand la [CheckBox] est cochée."

msgid ""
"The check icon to display when the [CheckBox] is checked and is disabled."
msgstr ""
"L'icône de coche à afficher quand la [CheckBox] est cochée et désactivé."

msgid ""
"The check icon to display when the [CheckBox] is configured as a radio button "
"and is checked."
msgstr ""
"L'icône de coche à afficher quand la [CheckBox] est configurée comme un "
"bouton radio et est cochée."

msgid ""
"The check icon to display when the [CheckBox] is configured as a radio "
"button, is disabled, and is unchecked."
msgstr ""
"L'icône de coche à afficher quand la [CheckBox] est configurée comme un "
"bouton radio, désactivée, et décochée."

msgid ""
"The check icon to display when the [CheckBox] is configured as a radio button "
"and is unchecked."
msgstr ""
"L'icône de la coche à afficher quand la [CheckBox] est configurée comme un "
"bouton radio et est décochée."

msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr "L'icône de la coche à afficher quand la [CheckBox] est décochée."

msgid ""
"The check icon to display when the [CheckBox] is unchecked and is disabled."
msgstr ""
"L'icône de coche à afficher quand la [CheckBox] est décochée et désactivée."

msgid ""
"[CheckButton] is a toggle button displayed as a check field. It's similar to "
"[CheckBox] in functionality, but it has a different appearance. To follow "
"established UX patterns, it's recommended to use [CheckButton] when toggling "
"it has an [b]immediate[/b] effect on something. For example, it can be used "
"when pressing it shows or hides advanced settings, without asking the user to "
"confirm this action.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node."
msgstr ""
"[CheckButton] est un bouton à bascule affiché avec une case à cocher. Il est "
"semblable à [CheckBox] dans ses fonctionnalités, mais son apparence est "
"différente. Pour suivre les modèles UX établis, il est recommandé d'utiliser "
"[CheckButton] quand l'activer a un effet [b]immédiat[/b] sur quelque chose. "
"Par exemple, il devrait être utilisé si le basculement affiche ou cache des "
"paramètres avancés, sans demander à ce que l'utilisateur confirme cette "
"action.\n"
"Voir aussi [BaseButton] qui contient des propriétés et des méthodes communes "
"associées à ce nœud."

msgid "The vertical offset used when rendering the toggle icons (in pixels)."
msgstr ""
"Le décalage vertical utilisé lors du rendu des icônes de basculement (en "
"pixels)."

msgid ""
"The icon to display when the [CheckButton] is checked (for left-to-right "
"layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est coché (pour les mises en page "
"gauche vers droite)."

msgid ""
"The icon to display when the [CheckButton] is checked and disabled (for left-"
"to-right layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est coché et désactivé (pour les "
"mises en page gauche vers droite)."

msgid ""
"The icon to display when the [CheckButton] is checked and disabled (for right-"
"to-left layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est coché et désactivé (pour les "
"mises en page droite vers gauche)."

msgid ""
"The icon to display when the [CheckButton] is checked (for right-to-left "
"layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est coché (pour les mises en page "
"droite vers gauche)."

msgid ""
"The icon to display when the [CheckButton] is unchecked (for left-to-right "
"layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est décoché (pour les mises en page "
"gauche vers droite)."

msgid ""
"The icon to display when the [CheckButton] is unchecked and disabled (for "
"left-to-right layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est décoché et désactivé (pour les "
"mises en page gauche vers droite)."

msgid ""
"The icon to display when the [CheckButton] is unchecked and disabled (for "
"right-to-left layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est décoché et désactivé (pour les "
"mises en page droite vers gauche)."

msgid ""
"The icon to display when the [CheckButton] is unchecked (for right-to-left "
"layouts)."
msgstr ""
"L'icône à afficher quand le [CheckButton] est décoché (pour les mises en page "
"droite vers gauche)."

msgid "A 2D circle shape used for physics collision."
msgstr "Une forme de cercle 2D utilisée pour les collisions physiques."

msgid ""
"A 2D circle shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape2D].\n"
"[b]Performance:[/b] [CircleShape2D] is fast to check collisions against. It "
"is faster than [RectangleShape2D] and [CapsuleShape2D]."
msgstr ""
"Une forme de cercle 2D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape2D].\n"
"[b]Performance :[/b] [CircleShape2D] est rapide pour vérifier les collisions. "
"Elle est plus rapide que [RectangleShape2D] et [CapsuleShape2D]."

msgid "The circle's radius."
msgstr "Le rayon du cercle."

msgid "A class information repository."
msgstr "Un dépôt d'informations de classes."

msgid ""
"Returns [code]true[/code] if objects can be instantiated from the specified "
"[param class], otherwise returns [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si des objets peuvent être instanciés à partir de "
"la classe [param class] spécifiée, sinon renvoie [code]false[/code]."

msgid "Calls a static method on a class."
msgstr "Appelle une méthode statique sur une classe."

msgid "Returns whether the specified [param class] is available or not."
msgstr "Renvoie si la classe [param class] spécifiée est disponible ou non."

msgid "Returns the API type of the specified [param class]."
msgstr "Renvoie le type d'API de la classe [param class] spécifiée."

msgid ""
"Returns an array with all the keys in [param enum] of [param class] or its "
"ancestry."
msgstr ""
"Renvoie un tableau avec toutes les clés dans l’énumération [param enum] de la "
"classe [param class] ou de ses parents."

msgid "Returns an array with all the enums of [param class] or its ancestry."
msgstr ""
"Renvoie un tableau avec toutes les énumérations de la classe [param class] ou "
"de ses parents."

msgid ""
"Returns the value of the integer constant [param name] of [param class] or "
"its ancestry. Always returns 0 when the constant could not be found."
msgstr ""
"Renvoie la valeur de la constante entière [param name] de la classe [param "
"class] ou ses parents. Renvoie toujours 0 si la constante n'a pas été trouvée."

msgid ""
"Returns which enum the integer constant [param name] of [param class] or its "
"ancestry belongs to."
msgstr ""
"Renvoie à quelle énumération la constante entière nommée [param name] dans "
"[param class] ou un de ses parents appartient."

msgid ""
"Returns an array with the names all the integer constants of [param class] or "
"its ancestry."
msgstr ""
"Renvoie un tableau avec le nom de toutes les constantes entières de la classe "
"[param class] ou de ses parents."

msgid ""
"Returns the number of arguments of the method [param method] of [param class] "
"or its ancestry if [param no_inheritance] is [code]false[/code]."
msgstr ""
"Renvoie un tableau avec tous les arguments de la méthode [param method] de la "
"classe [param class] ou ses parents si [param no_inheritance] vaut "
"[code]false[/code]."

msgid ""
"Returns an array with all the methods of [param class] or its ancestry if "
"[param no_inheritance] is [code]false[/code]. Every element of the array is a "
"[Dictionary] with the following keys: [code]args[/code], [code]default_args[/"
"code], [code]flags[/code], [code]id[/code], [code]name[/code], [code]return: "
"(class_name, hint, hint_string, name, type, usage)[/code].\n"
"[b]Note:[/b] In exported release builds the debug info is not available, so "
"the returned dictionaries will contain only method names."
msgstr ""
"Renvoie un tableau avec toutes les méthodes de la classe [param class] ou ses "
"parents si [param no_inheritance] vaut [code]false[/code]. Chaque élément du "
"tableau est un [Dictionary] avec les clés suivantes : [code]args[/code], "
"[code]default_args[/code], [code]flags[/code], [code]id[/code], [code]name[/"
"code] et [code]return: (class_name, hint, hint_string, name, type, usage)[/"
"code].\n"
"[b]Note :[/b] Dans les version exportés de release, les informations de "
"débogage ne sont pas disponibles, les dictionnaires renvoyés ne contiendront "
"donc que le nom des méthodes."

msgid "Returns the value of [param property] of [param object] or its ancestry."
msgstr ""
"Renvoie la valeur de la propriété [param property] de l'objet [param object] "
"ou de ses parents."

msgid ""
"Returns the default value of [param property] of [param class] or its "
"ancestor classes."
msgstr ""
"Renvoie la valeur par défaut de la propriété [param property] de la classe "
"[param class] ou de ses parents."

msgid "Returns the getter method name of [param property] of [param class]."
msgstr ""
"Renvoie le nom de méthode getter de la propriété [param property] de la "
"classe [param class]."

msgid ""
"Returns an array with all the properties of [param class] or its ancestry if "
"[param no_inheritance] is [code]false[/code]."
msgstr ""
"Renvoie un tableau avec toutes les propriétés de la classe [param class] ou "
"son ascendance si [param no_inheritance] vaut [code]false[/code]."

msgid "Returns the setter method name of [param property] of [param class]."
msgstr ""
"Renvoie le nom de méthode setter de la propriété [param property] de la "
"classe [param class]."

msgid ""
"Returns the [param signal] data of [param class] or its ancestry. The "
"returned value is a [Dictionary] with the following keys: [code]args[/code], "
"[code]default_args[/code], [code]flags[/code], [code]id[/code], [code]name[/"
"code], [code]return: (class_name, hint, hint_string, name, type, usage)[/"
"code]."
msgstr ""
"Renvoie les données du signal [param signal] de la classe [param class] ou de "
"ses parents. La valeur renvoyée est un [Dictionary] avec les clés suivantes : "
"[code]args[/code], [code]default_args[/code], [code]flags[/code], [code]id[/"
"code], [code]name[/code] et [code]return: (class_name, hint, hint_string, "
"name, type, usage)[/code]."

msgid ""
"Returns an array with all the signals of [param class] or its ancestry if "
"[param no_inheritance] is [code]false[/code]. Every element of the array is a "
"[Dictionary] as described in [method class_get_signal]."
msgstr ""
"Renvoie un tableau avec tous les signaux de la classe [param class] ou ses "
"parents si [param no_inheritance] vaut [code]false[/code]. Chaque élément du "
"tableau est un [Dictionary] comme décrit dans [method class_get_signal]."

msgid ""
"Returns whether [param class] or its ancestry has an enum called [param name] "
"or not."
msgstr ""
"Renvoie si la classe [param class] ou ses parents ont une énumération nommée "
"[param name] ou non."

msgid ""
"Returns whether [param class] or its ancestry has an integer constant called "
"[param name] or not."
msgstr ""
"Renvoie si la classe [param class] ou ses parents a une constante entière "
"appelée [param name] ou non."

msgid ""
"Returns whether [param class] (or its ancestry if [param no_inheritance] is "
"[code]false[/code]) has a method called [param method] or not."
msgstr ""
"Renvoie si la classe [param class] (ou un de ses parents si [param "
"no_inheritance] vaut [code]false[/code]) a une méthode nommée [param method] "
"ou non."

msgid ""
"Returns whether [param class] or its ancestry has a signal called [param "
"signal] or not."
msgstr ""
"Renvoie si [param class] ou ses parents ont un signal nommé [param signal] ou "
"non."

msgid "Sets [param property] value of [param object] to [param value]."
msgstr ""
"Définit la valeur de la propriété [param property] de l'objet [param object] "
"à [param value]."

msgid "Returns the parent class of [param class]."
msgstr "Renvoie la classe parente de [param class]."

msgid "Creates an instance of [param class]."
msgstr "Crée une instance de [param class]."

msgid "Returns whether this [param class] is enabled or not."
msgstr "Renvoie si cette [param class] est active ou non."

msgid ""
"Returns whether [param class] (or its ancestor classes if [param "
"no_inheritance] is [code]false[/code]) has an enum called [param enum] that "
"is a bitfield."
msgstr ""
"Renvoie si [param class] (ou un de ses parents si [param no_inheritance] vaut "
"[code]false[/code]) a une énumération nommée [param enum] qui est un champ de "
"bits."

msgid "Returns whether [param inherits] is an ancestor of [param class] or not."
msgstr "Renvoie si [param class] hérite de la classe [param inherits] ou non."

msgid "Native Core class type."
msgstr "Type de classe Native Core (code principal natif)."

msgid "Native Editor class type."
msgstr "Type de classe Native Editor (code de l'éditeur natif)."

msgid "GDExtension class type."
msgstr "Type de classe GDExtension."

msgid "GDExtension Editor class type."
msgstr "Type de classe GDExtension Editor (GDExtension pour l'éditeur)."

msgid "Unknown class type."
msgstr "Type de classe inconnu."

msgid ""
"Override this method to define how the selected entry should be inserted. If "
"[param replace] is [code]true[/code], any existing text should be replaced."
msgstr ""
"Redéfinissez cette méthode pour définir comment l'entrée sélectionnée devrait "
"être insérée. Si [param replace] vaut [code]true[/code], tout texte existant "
"devrait être remplacé."

msgid ""
"Override this method to define what items in [param candidates] should be "
"displayed.\n"
"Both [param candidates] and the return is an [Array] of [Dictionary], see "
"[method get_code_completion_option] for [Dictionary] content."
msgstr ""
"Redéfinissez cette méthode pour définir quels éléments dans [param "
"candidates] devraient être affichés.\n"
"[param candidates] et le valeur renvoyée sont un [Array] de [Dictionary], "
"voir [method get_code_completion_option] pour le contenu du [Dictionary]."

msgid ""
"Override this method to define what happens when the user requests code "
"completion. If [param force] is [code]true[/code], any checks should be "
"bypassed."
msgstr ""
"Redéfinissez cette méthode pour définir ce qui se passe lorsque l'utilisateur "
"demande la complétion du code. Si [param force] vaut [code]true[/code], toute "
"vérification devrait être contournée."

msgid ""
"Adds a brace pair.\n"
"Both the start and end keys must be symbols. Only the start key has to be "
"unique."
msgstr ""
"Ajoute une paire d'accolades.\n"
"Les clés de démarrage et de fin doivent être des symboles. Seule la clé de "
"départ doit être unique."

msgid ""
"Returns [code]true[/code] if the given line is foldable. A line is foldable "
"if it is the start of a valid code region (see [method "
"get_code_region_start_tag]), if it is the start of a comment or string block, "
"or if the next non-empty line is more indented (see [method "
"TextEdit.get_indent_level])."
msgstr ""
"Renvoie [code]true[/code] si la ligne donnée est repliable. Une ligne est "
"repliable si elle est le début d'une région de code valide (voir [method "
"get_code_region_start_tag]), si elle est le début d'un bloc de commentaire ou "
"de chaîne, ou si la prochaine ligne non-vide est plus indentée (voir [method "
"TextEdit.get_indent_level])."

msgid "Cancels the autocomplete menu."
msgstr "Annule le menu d'autocomplétion."

msgid "Clears all bookmarked lines."
msgstr "Efface toutes les lignes marquées."

msgid "Clears all breakpointed lines."
msgstr "Efface toute les lignes avec un point d'arrêt."

msgid "Removes all comment delimiters."
msgstr "Supprime tous les délimiteurs de commentaires."

msgid "Clears all executed lines."
msgstr "Efface toutes les lignes exécutées."

msgid "Removes all string delimiters."
msgstr "Supprime tous les délimiteurs de chaîne."

msgid ""
"Inserts the selected entry into the text. If [param replace] is [code]true[/"
"code], any existing text is replaced rather than merged."
msgstr ""
"Insère l'entrée sélectionnée dans le texte. Si [param replace] vaut "
"[code]true[/code], tout texte existant est remplacé plutôt que fusionné."

msgid ""
"Converts the indents of lines between [param from_line] and [param to_line] "
"to tabs or spaces as set by [member indent_use_spaces].\n"
"Values of [code]-1[/code] convert the entire text."
msgstr ""
"Convertit les indentations des lignes entre la ligne [param from_line] et la "
"ligne [param to_line] en tabulations ou espaces tels que définis par [member "
"indent_use_spaces].\n"
"Des valeurs de [code]-1[/code] convertissent le texte entier."

msgid "Deletes all lines that are selected or have a caret on them."
msgstr ""
"Supprime toutes les lignes qui sont sélectionnées ou qui ont un curseur sur "
"elles."

msgid ""
"If there is no selection, indentation is inserted at the caret. Otherwise, "
"the selected lines are indented like [method indent_lines]. Equivalent to the "
"[member ProjectSettings.input/ui_text_indent] action. The indentation "
"characters used depend on [member indent_use_spaces] and [member indent_size]."
msgstr ""
"S'il n'y a pas de sélection, de l'indentation est insérée au curseur. Sinon, "
"les lignes sélectionnées sont indentées comme avec [method indent_lines]. "
"Équivalent à l'action [member ProjectSettings.input/ui_text_indent]. Les "
"caractères d'indentation utilisés dépendent de [member indent_use_spaces] et "
"[member indent_size]."

msgid ""
"Duplicates all lines currently selected with any caret. Duplicates the entire "
"line beneath the current one no matter where the caret is within the line."
msgstr ""
"Duplique toutes les lignes actuellement sélectionnées avec n'importe quel "
"curseur. Duplique la ligne entière sous le curseur actuel, peu importe où le "
"curseur se trouve dans la ligne."

msgid ""
"Duplicates all selected text and duplicates all lines with a caret on them."
msgstr ""
"Duplique tous le texte sélectionné et duplique toutes les lignes avec un "
"curseur sur elles."

msgid ""
"Folds all lines that are possible to be folded (see [method can_fold_line])."
msgstr ""
"Réduit toutes les lignes qui peuvent être réduites (voir [method "
"can_fold_line])."

msgid "Folds the given line, if possible (see [method can_fold_line])."
msgstr "Réduit la ligne donnée, si possible (voir [method can_fold_line])."

msgid "Gets all breakpointed lines."
msgstr "Obtient toutes les lignes avec un point d'arrêt."

msgid ""
"Gets the completion option at [param index]. The return [Dictionary] has the "
"following key-values:\n"
"[code]kind[/code]: [enum CodeCompletionKind]\n"
"[code]display_text[/code]: Text that is shown on the autocomplete menu.\n"
"[code]insert_text[/code]: Text that is to be inserted when this item is "
"selected.\n"
"[code]font_color[/code]: Color of the text on the autocomplete menu.\n"
"[code]icon[/code]: Icon to draw on the autocomplete menu.\n"
"[code]default_value[/code]: Value of the symbol."
msgstr ""
"Obtient l'option de complétion à l'index [param index]. Le [Dictionary] "
"renvoyé a les clés-valeurs suivantes :\n"
"[code]kind[/code] : [enum CodeCompletionKind]\n"
"[code]display_text[/code] : Texte qui est affiché dans le menu "
"d'autocomplétion.\n"
"[code]insert_text[/code] : Texte à insérer lors de la sélection de cet "
"élément.\n"
"[code]font_color[/code] : Couleur du texte dans le menu d'autocomplétion.\n"
"[code]icon[/code] : Icône à dessiner dans le menu d'autocomplétion.\n"
"[code]default_value[/code] : Valeur du symbole."

msgid ""
"Gets all completion options, see [method get_code_completion_option] for "
"return content."
msgstr ""
"Obtient toutes les options de complétion, voir [method "
"get_code_completion_option] pour le contenu du résultat."

msgid "Gets the index of the current selected completion option."
msgstr "Obtient l'index de l'option de complétion sélectionnée actuelle."

msgid "Returns the code region end tag (without comment delimiter)."
msgstr ""
"Renvoie la balise de fin de région de code (sans délimiteur de commentaire)."

msgid "Returns the code region start tag (without comment delimiter)."
msgstr ""
"Renvoie la balise de début de région de code (sans délimiteur de commentaire)."

msgid "Gets the end key for a string or comment region index."
msgstr "Obtient la clé de fin pour un index de chaîne ou région de commentaire."

msgid "Gets the start key for a string or comment region index."
msgstr ""
"Obtient la clé de départ pour un index de chaîne ou de région de commentaire."

msgid "Returns all lines that are currently folded."
msgstr "Renvoie toutes les lignes qui sont actuellement repliées."

msgid "Returns [code]true[/code] if open key [param open_key] exists."
msgstr ""
"Renvoie [code]true[/code] si la clé d'ouverture [param open_key] existe."

msgid "Returns [code]true[/code] if comment [param start_key] exists."
msgstr "Renvoie [code]true[/code] si le commentaire [param start_key] existe."

msgid "Returns [code]true[/code] if string [param start_key] exists."
msgstr ""
"Renvoie [code]true[/code] si la chaîne de caractères [param start_key] existe."

msgid ""
"Returns [code]true[/code] if the given line is bookmarked. See [method "
"set_line_as_bookmarked]."
msgstr ""
"Renvoie [code]true[/code] si la ligne donnée est marquée. Voir [method "
"set_line_as_bookmarked]."

msgid ""
"Returns [code]true[/code] if the given line is breakpointed. See [method "
"set_line_as_breakpoint]."
msgstr ""
"Renvoie [code]true[/code] si la ligne donnée a un point d'arrêt. Voir [method "
"set_line_as_breakpoint]."

msgid ""
"Returns [code]true[/code] if the given line is a code region end. See [method "
"set_code_region_tags]."
msgstr ""
"Renvoie [code]true[/code] si la ligne donnée est une fin de région de code. "
"Voir [method set_code_region_tags]."

msgid ""
"Returns [code]true[/code] if the given line is a code region start. See "
"[method set_code_region_tags]."
msgstr ""
"Renvoie [code]true[/code] si la ligne donnée est un début de région de code. "
"Voir [method set_code_region_tags]."

msgid ""
"Returns [code]true[/code] if the given line is marked as executing. See "
"[method set_line_as_executing]."
msgstr ""
"Renvoie [code]true[/code] si la ligne donnée est marquée comme en cours "
"d'exécution. Voir [method set_line_as_executing]."

msgid ""
"Returns [code]true[/code] if the given line is folded. See [method fold_line]."
msgstr ""
"Renvoie [code]true[/code] si la ligne donnée est repliée. Voir [method "
"fold_line]."

msgid "Removes the comment delimiter with [param start_key]."
msgstr "Retire le délimiteur de commentaire avec la clé [param start_key]."

msgid "Removes the string delimiter with [param start_key]."
msgstr "Retire le délimiteur de chaîne avec la clé [param start_key]."

msgid "Sets the symbol emitted by [signal symbol_validate] as a valid lookup."
msgstr ""
"Définit le symbole émis par [signal symbol_validate] comme un symbole de "
"recherche valide."

msgid "Toggle the folding of the code block at the given line."
msgstr "Réduit le bloc de code à la ligne donnée."

msgid ""
"If [code]true[/code], the [member ProjectSettings.input/"
"ui_text_completion_query] action requests code completion. To handle it, see "
"[method _request_code_completion] or [signal code_completion_requested]."
msgstr ""
"Si [code]true[/code], l'action [member ProjectSettings.input/"
"ui_text_completion_query] demande la complétion du code. Pour la gérer, voir "
"[method _request_code_completion] ou [signal code_completion_requested]."

msgid "Sets prefixes that will trigger code completion."
msgstr "Définit les préfixes qui déclencheront la complétion du code."

msgid ""
"Sets the comment delimiters. All existing comment delimiters will be removed."
msgstr ""
"Définit les délimiteurs de commentaire. Tous les délimiteurs de commentaire "
"existants seront supprimés."

msgid ""
"Sets the string delimiters. All existing string delimiters will be removed."
msgstr ""
"Définit les délimiteurs de chaîne. Tous les délimiteurs de chaîne existants "
"seront supprimés."

msgid "Use spaces instead of tabs for indentation."
msgstr "Utiliser des espaces au lieu des tabulations pour l'indentation."

msgid ""
"If [code]true[/code], lines can be folded. Otherwise, line folding methods "
"like [method fold_line] will not work and [method can_fold_line] will always "
"return [code]false[/code]. See [member gutters_draw_fold_gutter]."
msgstr ""
"Si [code]true[/code], les lignes peuvent être repliées. Sinon, les méthodes "
"de repli de ligne comme [method fold_line] ne fonctionneront pas et [method "
"can_fold_line] renverra toujours [code]false[/code]. Voir [member "
"gutters_draw_fold_gutter]."

msgid "Emitted when the user has clicked on a valid symbol."
msgstr "Émis lorsque l'utilisateur a cliqué sur un symbole valide."

msgid ""
"Emitted when the user hovers over a symbol. The symbol should be validated "
"and responded to, by calling [method set_symbol_lookup_word_as_valid].\n"
"[b]Note:[/b] [member symbol_lookup_on_click] must be [code]true[/code] for "
"this signal to be emitted."
msgstr ""
"Émis lorsque l'utilisateur survole un symbole. Le symbole doit être valide et "
"avoir reçu une réponse, en appelant [method "
"set_symbol_lookup_word_as_valid].\n"
"[b]Note : [/b] [member symbol_lookup_on_click] doit valoir [code]true[/code] "
"pour que ce signal soit émis."

msgid "Marks the option as a class."
msgstr "Marque l'option comme une classe."

msgid "Marks the option as a function."
msgstr "Marque l'option comme une fonction."

msgid "Marks the option as a Godot signal."
msgstr "Marque l'option comme un signal Godot."

msgid "Marks the option as a variable."
msgstr "Marque l'option comme une variable."

msgid "Marks the option as a member."
msgstr "Marque l'option comme un membre."

msgid "Marks the option as an enum entry."
msgstr "Marque l'option comme entrée d'énum."

msgid "Marks the option as a constant."
msgstr "Marque l'option comme une constante."

msgid "Marks the option as a Godot node path."
msgstr "Marque l'option comme un chemin de nœud Godot."

msgid "Marks the option as a file path."
msgstr "Marque l'option comme un chemin de fichier."

msgid "Marks the option as unclassified or plain text."
msgstr "Marque l'option comme du texte brut ou non classifié."

msgid ""
"The option is local to the location of the code completion query - e.g. a "
"local variable. Subsequent value of location represent options from the outer "
"class, the exact value represent how far they are (in terms of inner classes)."
msgstr ""
"L'option est locale à l'emplacement de la requête de complétion de code - "
"p.ex. une variable locale. La valeur subséquente de l'emplacement représente "
"les options de la classe externe, la valeur exacte représente la distance (en "
"termes de classes intérieures)."

msgid "[Color] of the bookmark icon for bookmarked lines."
msgstr "[Color] de l'icône de marquage pour les lignes marquées."

msgid "[Color] of the breakpoint icon for bookmarked lines."
msgstr "[Color] de l'icône de point d'arrêt pour les lignes marquées."

msgid "Sets the background [Color] for the code completion popup."
msgstr "Définit la [Color] d'arrière-plan pour la popup de complétion du code."

msgid "Sets the [Color] of line numbers."
msgstr "Définit la [Color] des numéros de ligne."

msgid ""
"Max width of options in the code completion popup. Options longer than this "
"will be cut off."
msgstr ""
"Largeur maximale des options dans le popup de complétion de code. Les options "
"plus longues que cela seront coupées."

msgid "Width of the scrollbar in the code completion popup."
msgstr "Largeur de la barre de défilement dans le popup de complétion de code."

msgid ""
"Sets a custom [Texture2D] to draw in the bookmark gutter for bookmarked lines."
msgstr ""
"Définit une [Texture2D] personnalisée pour dessiner le bandeau de marquage "
"pour les lignes marquées."

msgid "[StyleBox] for the code completion popup."
msgstr "[StyleBox] pour la popup de complétion de code."

msgid ""
"Sets the color for a keyword.\n"
"The keyword cannot contain any symbols except '_'."
msgstr ""
"Définit la couleur pour un mot-clé.\n"
"Le mot-clé ne peut contenir aucun symbole sauf '_'."

msgid "Removes all color regions."
msgstr "Supprime toutes les régions de couleur."

msgid "Removes all keywords."
msgstr "Supprime tout les mots-clés."

msgid "Returns the color for a keyword."
msgstr "Renvoie la couleur d'un mot-clé."

msgid ""
"Returns [code]true[/code] if the start key exists, else [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si la clé de départ [param start_key] existe, sinon "
"[code]false[/code]."

msgid ""
"Returns [code]true[/code] if the keyword exists, else [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si le mot-clé [param keyword] existe, sinon "
"[code]false[/code]."

msgid "Removes the color region that uses that start key."
msgstr "Retire la région de couleur qui utilise cette clé de départ."

msgid "Removes the keyword."
msgstr "Supprime le mot-clé."

msgid ""
"Sets the color regions. All existing regions will be removed. The "
"[Dictionary] key is the region start and end key, separated by a space. The "
"value is the region color."
msgstr ""
"Définit les régions de couleur. Toutes les régions existantes seront "
"supprimées. La clé du [Dictionary] est la clé de départ et de fin de la "
"région, séparés par un espace. La valeur est la couleur de région."

msgid ""
"Sets color for functions. A function is a non-keyword string followed by a "
"'('."
msgstr ""
"Définit la couleur pour les fonctions. Une fonction est une chaîne de mots "
"non-clé suivis d'un '('."

msgid ""
"Sets the keyword colors. All existing keywords will be removed. The "
"[Dictionary] key is the keyword. The value is the keyword color."
msgstr ""
"Définit les couleurs des mot-clés. Tous les mots-clés existants seront "
"supprimés. La clé du [Dictionary] est le mot-clé. La valeur est la couleur du "
"mot-clé."

msgid "Sets the color for numbers."
msgstr "Définit la couleur pour les nombres."

msgid "Sets the color for symbols."
msgstr "Définit la couleur pour les symboles."

msgid "Abstract base class for 2D physics objects."
msgstr "Classe de base abstraite pour les objets physiques 2D."

msgid ""
"Abstract base class for 2D physics objects. [CollisionObject2D] can hold any "
"number of [Shape2D]s for collision. Each shape must be assigned to a [i]shape "
"owner[/i]. Shape owners are not nodes and do not appear in the editor, but "
"are accessible through code using the [code]shape_owner_*[/code] methods.\n"
"[b]Note:[/b] Only collisions between objects within the same canvas "
"([Viewport] canvas or [CanvasLayer]) are supported. The behavior of "
"collisions between objects in different canvases is undefined."
msgstr ""
"Classe de base abstraite pour les objets physiques 2D. [CollisionObject2D] "
"peut contenir n'importe quel nombre de [Shape2D] pour les collisions. Chaque "
"forme doit être attribuée à un [i]propriétaire de forme[/i]. Les "
"propriétaires de forme ne sont pas des nœuds et ne figurent pas dans "
"l'éditeur, mais sont accessibles via le code en utilisant les méthodes "
"[code]shape_owner_*[/code].\n"
"[b]Note :[/b] Seules les collisions entre des objets dans le même caneveas "
"([Viewport] ou [CanvasLayer]) sont supportées. Le comportement des collisions "
"entre des objets dans différents canevas est indéfini."

msgid ""
"Accepts unhandled [InputEvent]s. [param shape_idx] is the child index of the "
"clicked [Shape2D]. Connect to [signal input_event] to easily pick up these "
"events.\n"
"[b]Note:[/b] [method _input_event] requires [member input_pickable] to be "
"[code]true[/code] and at least one [member collision_layer] bit to be set."
msgstr ""
"Accepte les [InputEvent]s non gérés. [param shape_idx] est l'index de "
"l'enfant du [Shape2D] cliqué. Connectez-vous à [signal input_event] pour "
"récupérer facilement ces événements.\n"
"[b]Note :[/b] [method _input_event] nécessite [member input_pickable] de "
"valoir [code]true[/code] et au moins un bit de [member collision_layer] "
"d'être défini."

msgid ""
"Called when the mouse pointer enters any of this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this function to be called."
msgstr ""
"Appelée lorsque le pointeur de la souris entre dans l'une des formes de cet "
"objet. Nécessite [member input_pickable] de valoir [code]true[/code] et au "
"moins un bit de [member collision_layer] de défini. Notez que le déplacement "
"entre différentes formes dans un seul [CollisionObject2D] ne causera pas "
"l'appel de cette fonction."

msgid ""
"Called when the mouse pointer exits all this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this function to be called."
msgstr ""
"Appelée quand le pointeur de la souris sort toutes les formes de cet objet. "
"Nécessite [member input_pickable] de valoir [code]true[/code] et au moins un "
"bit de [member collision_layer] de defini. Notez que le déplacement entre "
"différentes formes dans un seul [CollisionObject2D] ne causera pas l'appel de "
"cette fonction."

msgid ""
"Called when the mouse pointer enters any of this object's shapes or moves "
"from one shape to another. [param shape_idx] is the child index of the newly "
"entered [Shape2D]. Requires [member input_pickable] to be [code]true[/code] "
"and at least one [member collision_layer] bit to be called."
msgstr ""
"Appelée lorsque le pointeur de la souris entre dans l'une des formes de cet "
"objet ou se déplace d'une forme à une autre. [param shape_idx] est l'index de "
"l'enfant de la [Shape2D] nouvellement entrée. Nécessite [member "
"input_pickable] de valoir [code]true[/code] et au moins un bit de [member "
"collision_layer] d'être défini."

msgid ""
"Called when the mouse pointer exits any of this object's shapes. [param "
"shape_idx] is the child index of the exited [Shape2D]. Requires [member "
"input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be called."
msgstr ""
"Appelée quand le pointeur de la souris sort de l'une des formes de cet objet. "
"[param shape_idx] est l'index de l'enfant du [Shape2D] sorti. Nécessite "
"[member input_pickable] de valoir [code]true[/code] et au moins un bit de "
"[member collision_layer] d'être défini."

msgid ""
"Creates a new shape owner for the given object. Returns [code]owner_id[/code] "
"of the new owner for future reference."
msgstr ""
"Crée un nouveau propriétaire de forme pour l'objet donné. Renvoie "
"l’[code]owner_id[/code] du nouveau propriétaire pour une prochaine référence."

msgid ""
"Returns whether or not the specified layer of the [member collision_layer] is "
"enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Renvoie si la couche spécifiée du [member collision_layer] est activée, selon "
"un numéro de couche [param layer_number] entre 1 et 32 donné."

msgid ""
"Returns whether or not the specified layer of the [member collision_mask] is "
"enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Renvoie si la couche spécifiée du [member collision_mask] est activée, étant "
"donné un numéro de couche [param layer_number] entre 1 et 32."

msgid "Returns the object's [RID]."
msgstr "Renvoie le [RID] de l'objet."

msgid ""
"Returns the [code]one_way_collision_margin[/code] of the shape owner "
"identified by given [param owner_id]."
msgstr ""
"Renvoie la [code]one_way_collision_margin[/code] du propriétaire de la forme "
"identifié par le [param owner_id] donné."

msgid ""
"Returns an [Array] of [code]owner_id[/code] identifiers. You can use these "
"ids in other methods that take [code]owner_id[/code] as an argument."
msgstr ""
"Renvoie un [Array] d'identifiants [code]owner_id[/code]. Vous pouvez utiliser "
"ces identifiants dans les méthodes prenant [code]owner_id[/code] comme "
"argument."

msgid "If [code]true[/code], the shape owner and its shapes are disabled."
msgstr ""
"Si [code]true[/code], le propriétaire de forme et ses formes sont désactivés."

msgid ""
"Returns [code]true[/code] if collisions for the shape owner originating from "
"this [CollisionObject2D] will not be reported to collided with "
"[CollisionObject2D]s."
msgstr ""
"Renvoie [code]true[/code] si les collisions pour le propriétaire de forme "
"venant de ce [CollisionObject2D] ne seront pas signalées aux "
"[CollisionObject2D] entrants en collision."

msgid "Removes the given shape owner."
msgstr "Supprime le propriétaire de forme donné."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member collision_layer], given a [param layer_number] between 1 and 32."
msgstr ""
"Selon [param value], active ou désactive la couche spécifiée dans le [member "
"collision_layer], étant donné un numéro de couche [param layer_number] entre "
"1 et 32."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member collision_mask], given a [param layer_number] between 1 and 32."
msgstr ""
"Selon [param value], active ou désactive la couche spécifiée dans le [member "
"collision_mask], étant donné un numéro de couche [param layer_number] entre 1 "
"et 32."

msgid "Returns the [code]owner_id[/code] of the given shape."
msgstr "Renvoie le [code]owner_id[/code] de la forme spécifiée."

msgid "Adds a [Shape2D] to the shape owner."
msgstr "Ajoute un [Shape2D] au propriétaire de forme."

msgid "Removes all shapes from the shape owner."
msgstr "Enlève toutes les formes au propriétaire de forme."

msgid "Returns the parent object of the given shape owner."
msgstr "Renvoie l'objet parent du propriétaire de forme spécifié."

msgid "Returns the [Shape2D] with the given ID from the given shape owner."
msgstr ""
"Renvoie la [Shape2D] avec l'identifiant donné du propriétaire de forme donné."

msgid "Returns the number of shapes the given shape owner contains."
msgstr "Renvoie le nombre de formes que le propriétaire de forme contient."

msgid ""
"Returns the child index of the [Shape2D] with the given ID from the given "
"shape owner."
msgstr ""
"Renvoie l'index de l'enfant de la [Shape2D] avec l'identifiant donné du "
"propriétaire de forme donné."

msgid "Returns the shape owner's [Transform2D]."
msgstr "Renvoie le [Transform2D] du propriétaire de la forme."

msgid "Removes a shape from the given shape owner."
msgstr "Retire la forme du propriétaire de forme donné."

msgid "If [code]true[/code], disables the given shape owner."
msgstr "Si [code]true[/code], désactive le propriétaire spécifié de la forme."

msgid ""
"If [param enable] is [code]true[/code], collisions for the shape owner "
"originating from this [CollisionObject2D] will not be reported to collided "
"with [CollisionObject2D]s."
msgstr ""
"Si [param enable] vaut [code]true[/code], les collisions pour le propriétaire "
"de forme originant de ce [CollisionObject2D] ne seront pas rapportées aux "
"[CollisionObject2D] entrant en collision."

msgid ""
"Sets the [code]one_way_collision_margin[/code] of the shape owner identified "
"by given [param owner_id] to [param margin] pixels."
msgstr ""
"Définit la marge [code]one_way_collision_margin[/code] du propriétaire de la "
"forme identifié par le [param owner_id] donné à [param margin] pixels."

msgid "Sets the [Transform2D] of the given shape owner."
msgstr "Définit la [Transform2D] du propriétaire de forme spécifié."

msgid ""
"The physics layers this CollisionObject2D is in. Collision objects can exist "
"in one or more of 32 different layers. See also [member collision_mask].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"La couche physique où est ce CollisionObject2D. Les objets de collision "
"peuvent exister dans un ou plusieurs des 32 couches différentes. Voir aussi "
"[member collision_mask].\n"
"[b]Note :[/b] Un objet A peut détecter un contact avec l'objet B seulement si "
"l'objet B est dans l'une des couches que l'objet A scanne. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Niveaux et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"The physics layers this CollisionObject2D scans. Collision objects can scan "
"one or more of 32 different layers. See also [member collision_layer].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"La couche physique que ce CollisionObject2D scanne. Les objets de collision "
"peuvent exister dans une ou plusieurs des 32 couches différentes. Voir aussi "
"[member collision_mask].\n"
"[b]Note :[/b] Un objet A peut détecter un contact avec l'objet B seulement si "
"l'objet B est dans l'une des couches que l'objet A scanne. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Niveaux et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"The priority used to solve colliding when occurring penetration. The higher "
"the priority is, the lower the penetration into the object will be. This can "
"for example be used to prevent the player from breaking through the "
"boundaries of a level."
msgstr ""
"La priorité utilisée pour résoudre la collision lors de la pénétration. Plus "
"la priorité est élevée, plus la pénétration dans l'objet sera faible. Cela "
"peut par exemple être utilisé pour empêcher le joueur de franchir les limites "
"d'un niveau."

msgid ""
"Defines the behavior in physics when [member Node.process_mode] is set to "
"[constant Node.PROCESS_MODE_DISABLED]."
msgstr ""
"Définit le comportement physique lorsque [member Node.process_mode] est "
"défini à [constant Node.PROCESS_MODE_DISABLED]."

msgid ""
"If [code]true[/code], this object is pickable. A pickable object can detect "
"the mouse pointer entering/leaving, and if the mouse is inside it, report "
"input events. Requires at least one [member collision_layer] bit to be set."
msgstr ""
"Si [code]true[/code], cet objet peut être sélectionné. Ces objets peuvent "
"détecter l'entrée/la sortie du pointeur de la souris sur eux, et si la souris "
"pointe sur l'objet, signaler par des événements d'entrée. Nécessite au moins "
"un bit de [member collision_layer] d'être réglé."

msgid ""
"Emitted when an input event occurs. Requires [member input_pickable] to be "
"[code]true[/code] and at least one [member collision_layer] bit to be set. "
"See [method _input_event] for details."
msgstr ""
"Émis lorsqu'un événement d'entrée se produit. Nécessite [member "
"input_pickable] de valoir [code]true[/code] et au moins un des bits de "
"[member collision_layer] d'être défini. Voir [method _input_event] pour plus "
"de détails."

msgid ""
"Emitted when the mouse pointer enters any of this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this signal to be emitted.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject2D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject2D] is overlapping the [CollisionObject2D] in "
"question."
msgstr ""
"Émis lorsque le pointeur de la souris entre dans l'une des formes de cet "
"objet. Nécessite que [member input_pickable] vaille [code]true[/code] et au "
"moins un bit de [member collision_layer] de défini. Notez que le déplacement "
"entre différentes formes dans un seul [CollisionObject2D] ne fera pas émettre "
"ce signal.\n"
"[b]Note :[/b] En raison du manque de détection de collision continue, ce "
"signal peut ne pas être émis dans l'ordre prévu si la souris se déplace assez "
"rapidement et que la zone du [CollisionObject2D] est petite. Ce signal peut "
"aussi ne pas être émis si un autre [CollisionObject2D] recouvre le "
"[CollisionObject2D] en question."

msgid ""
"Emitted when the mouse pointer exits all this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this signal to be emitted.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject2D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject2D] is overlapping the [CollisionObject2D] in "
"question."
msgstr ""
"Émis lorsque le pointeur de la souris sort de toutes les formes de cet objet. "
"Nécessite que [member input_pickable] vaille [code]true[/code] et au moins "
"qu'un bit de [member collision_layer] soit défini. Notez que se déplacer "
"entre deux formes différentes dans un unique [CollisionObject2D] ne causera "
"pas à ce signal d'être émis.\n"
"[b]Note :[/b] En raison de l'absence de détection de collision continue, ce "
"signal peut ne pas être émis dans l'ordre prévu si la souris se déplace assez "
"vite et que la zone du [CollisionObject2D] est petite. Ce signal peut aussi "
"ne pas être émis si un autre [CollisionObject2D] chevauche le "
"[CollisionObject2D] en question."

msgid ""
"Emitted when the mouse pointer enters any of this object's shapes or moves "
"from one shape to another. [param shape_idx] is the child index of the newly "
"entered [Shape2D]. Requires [member input_pickable] to be [code]true[/code] "
"and at least one [member collision_layer] bit to be set."
msgstr ""
"Émis lorsque le curseur de la souris entre dans l'une des formes de cet objet "
"ou se déplace d'une forme à l'autre. [param shape_idx] est l'index d'enfant "
"de la [Shape2D] nouvellement entrée. Nécessite que [member input_pickable] "
"vaille [code]true[/code] et au moins un des bits de [member collision_layer] "
"d'être défini."

msgid ""
"Emitted when the mouse pointer exits any of this object's shapes. [param "
"shape_idx] is the child index of the exited [Shape2D]. Requires [member "
"input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set."
msgstr ""
"Émis lorsque le curseur de la souris entre dans l'une des formes de l'objet. "
"[param shape_idx] est l'index de l'enfant du [Shape2D] sorti. Nécessite que "
"[member input_pickable] vaille [code]true[/code] et au moins un des bits de "
"[member collision_layer] d'être défini."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], remove from the physics simulation to stop all "
"physics interactions with this [CollisionObject2D].\n"
"Automatically re-added to the physics simulation when the [Node] is processed "
"again."
msgstr ""
"Quand [member Node.process_mode] est défini à [constant "
"Node.PROCESS_MODE_DISABLED], le retirer de la simulation physique pour "
"arrêter toutes les interactions physiques avec ce [CollisionObject2D].\n"
"Ré-ajouté automatiquement à la simulation physique lorsque le [Node] est de "
"nouveau traité."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], make the body static. Doesn't affect [Area2D]. "
"[PhysicsBody2D] can't be affected by forces or other bodies while static.\n"
"Automatically set [PhysicsBody2D] back to its original mode when the [Node] "
"is processed again."
msgstr ""
"Quand [member Node.process_mode] est défini à [constant "
"Node.PROCESS_MODE_DISABLED], rend le corps statique. N'affecte pas les "
"[Area2D]. Les [PhysicsBody2D] ne peuvent être affectés par des forces ou "
"d'autres corps lorsqu'ils sont statiques.\n"
"Rend automatiquement au [PhysicsBody2D] son mode original lorsque le [Node] "
"est de nouveau traité."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], do not affect the physics simulation."
msgstr ""
"Quand [member Node.process_mode] est défini à [constant "
"Node.PROCESS_MODE_DISABLED], ne pas affecter la simulation physique."

msgid "Abstract base class for 3D physics objects."
msgstr "Classe de base abstraite pour les objets physiques 3D."

msgid ""
"Abstract base class for 3D physics objects. [CollisionObject3D] can hold any "
"number of [Shape3D]s for collision. Each shape must be assigned to a [i]shape "
"owner[/i]. Shape owners are not nodes and do not appear in the editor, but "
"are accessible through code using the [code]shape_owner_*[/code] methods.\n"
"[b]Warning:[/b] With a non-uniform scale, this node will likely not behave as "
"expected. It is advised to keep its scale the same on all axes and adjust its "
"collision shape(s) instead."
msgstr ""
"Classe de base abstraite pour les objets physiques 3D. [CollisionObject3D] "
"peut contenir tout nombre de [Shape3D] pour des collisions. Chaque forme doit "
"être attribuée à un [i]propriétaire de forme[/i]. Les propriétaires de forme "
"ne sont pas des nœuds et ne figurent pas dans l'éditeur, mais sont "
"accessibles via le code en utilisant les méthodes [code]shape_owner_*[/"
"code].\n"
"[b]Attention :[/b] Avec une échelle non uniforme, ce nœud ne se comportera "
"probablement pas comme prévu. Il est conseillé de garder la même échelle sur "
"tous les axes et d'ajuster sa ou ses formes de collision à la place."

msgid ""
"Receives unhandled [InputEvent]s. [param event_position] is the location in "
"world space of the mouse pointer on the surface of the shape with index "
"[param shape_idx] and [param normal] is the normal vector of the surface at "
"that point. Connect to the [signal input_event] signal to easily pick up "
"these events.\n"
"[b]Note:[/b] [method _input_event] requires [member input_ray_pickable] to be "
"[code]true[/code] and at least one [member collision_layer] bit to be set."
msgstr ""
"Reçoit les [InputEvent] non traités. [param event_position] est la position "
"dans l'espace global du curseur de la souris sur la surface de la forme avec "
"index [param shape_idx] et [param normal] est le vecteur de normale de la "
"surface à ce point. Connectez-vous au signal [signal input_event] pour "
"récupérer facilement ces événements.\n"
"[b]Note :[/b] [method _input_event] nécessite [member input_ray_pickable] "
"d'être [code]true[/code] et au moins un bit de [member collision_layer] "
"d'actif."

msgid ""
"Called when the mouse pointer enters any of this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject3D] won't cause this function to be called."
msgstr ""
"Émis lorsque le curseur de la souris entre dans l'une des formes de cet "
"objet. Nécessite que [member input_ray_pickable] vaille [code]true[/code] et "
"au moins un des bits de [member collision_layer] d'être défini. Notez que se "
"déplacer entre plusieurs formes d'un unique [CollisionObject3D] ne causera "
"pas l'appel de cette fonction."

msgid ""
"Called when the mouse pointer exits all this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject3D] won't cause this function to be called."
msgstr ""
"Émis lorsque le curseur de la souris sort de toutes les formes de cet objet. "
"Nécessite que [member input_ray_pickable] vaille [code]true[/code] et au "
"moins un des bits de [member collision_layer] d'être défini. Notez que se "
"déplacer entre plusieurs formes d'un unique [CollisionObject3D] ne causera "
"pas l'appel de cette fonction."

msgid "Adds a [Shape3D] to the shape owner."
msgstr "Ajoute un [Shape3D] au propriétaire de forme."

msgid "Returns the [Shape3D] with the given ID from the given shape owner."
msgstr ""
"Renvoie la [Shape3D] avec l'identifiant donné du propriétaire de forme donné."

msgid ""
"Returns the child index of the [Shape3D] with the given ID from the given "
"shape owner."
msgstr ""
"Renvoie l'indice de l'enfant du [Shape3D] avec l'identifiant donné du "
"propriétaire de forme donné."

msgid "Returns the shape owner's [Transform3D]."
msgstr "Renvoie la [Transform3D] du propriétaire de forme."

msgid "Sets the [Transform3D] of the given shape owner."
msgstr "Définit la [Transform3D] du propriétaire de forme donné."

msgid ""
"The physics layers this CollisionObject3D [b]is in[/b]. Collision objects can "
"exist in one or more of 32 different layers. See also [member "
"collision_mask].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Les couche physiques où [b]se trouve[/b] ce CollisionObject3D. Les objets de "
"collision peuvent exister dans une ou plusieurs des 32 couches existantes. "
"Voir aussi [member collision_mask].\n"
"[b]Note :[/b] Un objet A peut détecter un contact avec un object B seulement "
"si l'objet A est dans l'une des couches que l'objet B observe. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Couches et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"The physics layers this CollisionObject3D [b]scans[/b]. Collision objects can "
"scan one or more of 32 different layers. See also [member collision_layer].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"La couche physique que ce CollisionObject3D [b]observe[/b]. Les objets de "
"collision peuvent observer une ou plusieurs des 32 couches existantes. Voir "
"aussi [member collision_layer].\n"
"[b]Note :[/b] Un objet A peut détecter un contact avec un object B seulement "
"si l'objet A est dans l'une des couches que l'objet B observe. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Couches et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"If [code]true[/code], the [CollisionObject3D] will continue to receive input "
"events as the mouse is dragged across its shapes."
msgstr ""
"Si [code]true[/code], le [CollisionObject3D] continuera de recevoir des "
"événements d'entrée quand la souris sera déplacée au-dessus de ses formes."

msgid ""
"Emitted when the object receives an unhandled [InputEvent]. [param "
"event_position] is the location in world space of the mouse pointer on the "
"surface of the shape with index [param shape_idx] and [param normal] is the "
"normal vector of the surface at that point."
msgstr ""
"Émis lorsque l'objet reçoit un [InputEvent] non traité. [param "
"event_position] est l'emplacement dans les coordonnées globales de la souris "
"sur la surface de la forme à l'index [param shape_idx], et [param normal] est "
"la normale à la surface en ce point."

msgid ""
"Emitted when the mouse pointer enters any of this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject3D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject3D] is overlapping the [CollisionObject3D] in "
"question."
msgstr ""
"Émis lorsque le pointeur de la souris entre dans l'une des formes de cet "
"objet. Nécessite que [member input_ray_pickable] vaille [code]true[/code] et "
"au moins qu'un bit de [member collision_layer] soit défini.\n"
"[b]Note :[/b] En raison de l'absence de détection de collision continue, ce "
"signal peut ne pas être émis dans l'ordre prévu si la souris se déplace assez "
"vite et que la zone du [CollisionObject3D] est petite. Ce signal peut aussi "
"ne pas être émis si un autre [CollisionObject3D] chevauche le "
"[CollisionObject3D] en question."

msgid ""
"Emitted when the mouse pointer exits all this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject3D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject3D] is overlapping the [CollisionObject3D] in "
"question."
msgstr ""
"Émis lorsque le pointeur de la souris sort de toutes les formes de cet objet. "
"Nécessite que [member input_ray_pickable] vaille [code]true[/code] et au "
"moins qu'un bit de [member collision_layer] soit défini.\n"
"[b]Note :[/b] En raison de l'absence de détection de collision continue, ce "
"signal peut ne pas être émis dans l'ordre prévu si la souris se déplace assez "
"vite et que la zone du [CollisionObject3D] est petite. Ce signal peut aussi "
"ne pas être émis si un autre [CollisionObject3D] chevauche le "
"[CollisionObject3D] en question."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], remove from the physics simulation to stop all "
"physics interactions with this [CollisionObject3D].\n"
"Automatically re-added to the physics simulation when the [Node] is processed "
"again."
msgstr ""
"Quand [member Node.process_mode] est défini à [constant "
"Node.PROCESS_MODE_DISABLED], le retirer de la simulation physique pour "
"arrêter toutes les interactions physiques avec ce [CollisionObject3D].\n"
"Ré-ajouté automatiquement à la simulation physique lorsque le [Node] est de "
"nouveau traité."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], make the body static. Doesn't affect [Area3D]. "
"[PhysicsBody3D] can't be affected by forces or other bodies while static.\n"
"Automatically set [PhysicsBody3D] back to its original mode when the [Node] "
"is processed again."
msgstr ""
"Quand [member Node.process_mode] est défini à [constant "
"Node.PROCESS_MODE_DISABLED], rend le corps statique. N'affecte pas [Area3D]. "
"[PhysicsBody3D] ne peut être affecté par des forces ou d'autres corps alors "
"qu'il est statique.\n"
"Définit automatiquement [PhysicsBody3D] à son mode d'origine lorsque le "
"[Node] est de nouveau traité."

msgid "A node that provides a polygon shape to a [CollisionObject2D] parent."
msgstr ""
"Un nœud qui fournit une forme de polygone à un [CollisionObject2D] parent."

msgid ""
"A node that provides a polygon shape to a [CollisionObject2D] parent and "
"allows to edit it. The polygon can be concave or convex. This can give a "
"detection shape to an [Area2D], turn [PhysicsBody2D] into a solid object, or "
"give a hollow shape to a [StaticBody2D].\n"
"[b]Warning:[/b] A non-uniformly scaled [CollisionPolygon2D] will likely not "
"behave as expected. Make sure to keep its scale the same on all axes and "
"adjust its polygon instead."
msgstr ""
"Un nœud qui fournit une forme de polygone à un [CollisionObject2D] parent et "
"permet de l'éditer. Le polygone peut être concave ou convexe. Cela peut "
"donner une forme de détection à une [Area2D], transformer un [PhysicsBody2D] "
"en un objet solide, ou donner une forme creuse à un [StaticBody2D].\n"
"[b]Attention :[/b] Un[CollisionPolygon2D] avec une échelle non uniforme ne se "
"comportera probablement pas comme prévu. Assurez-vous de garder la même "
"échelle sur tous les axes et ajustez son polygone à la place."

msgid "Collision build mode."
msgstr "Mode de construction de la collision."

msgid ""
"If [code]true[/code], no collisions will be detected. This property should be "
"changed with [method Object.set_deferred]."
msgstr ""
"Si [code]true[/code], aucune collision ne sera détectée. Cette propriété "
"devrait être modifiée avec [method Object.set_deferred]."

msgid ""
"If [code]true[/code], only edges that face up, relative to "
"[CollisionPolygon2D]'s rotation, will collide with other objects.\n"
"[b]Note:[/b] This property has no effect if this [CollisionPolygon2D] is a "
"child of an [Area2D] node."
msgstr ""
"Si [code]true[/code], seuls les bords qui font face, par rapport à la "
"rotation du [CollisionPolygon2D], entreront en collision avec d'autres "
"objets.\n"
"[b]Note :[/b] Cette propriété n'a aucun effet si cette [CollisionPolygon2D] "
"est un enfant d'un nœud [Area2D]."

msgid ""
"The margin used for one-way collision (in pixels). Higher values will make "
"the shape thicker, and work better for colliders that enter the polygon at a "
"high velocity."
msgstr ""
"La marge (en pixels) utilisée pour une collision à sens unique. Des valeurs "
"plus élevées rendront la forme plus épaisse, et fonctionneront mieux pour les "
"objets entrant en collision avec le polygone quand ils vont à une vitesse "
"élevée."

msgid ""
"The polygon's list of vertices. Each point will be connected to the next, and "
"the final point will be connected to the first.\n"
"[b]Note:[/b] The returned vertices are in the local coordinate space of the "
"given [CollisionPolygon2D]."
msgstr ""
"La liste des sommets du polygone. Chaque point sera connecté au suivant, et "
"le dernier point sera connecté au premier.\n"
"[b]Note :[/b] Les sommets renvoyés sont dans l'espace de coordonnées locales "
"du [CollisionPolygon2D] donné."

msgid ""
"Collisions will include the polygon and its contained area. In this mode the "
"node has the same effect as several [ConvexPolygonShape2D] nodes, one for "
"each convex shape in the convex decomposition of the polygon (but without the "
"overhead of multiple nodes)."
msgstr ""
"Les collisions incluront le polygone et sa zone contenue. Dans ce mode, le "
"nœud a le même effet que plusieurs nœuds [ConvexPolygonShape2D], un pour "
"chaque forme convexe dans la décomposition convexe du polygone (mais sans le "
"surcoût de plusieurs nœuds)."

msgid ""
"Collisions will only include the polygon edges. In this mode the node has the "
"same effect as a single [ConcavePolygonShape2D] made of segments, with the "
"restriction that each segment (after the first one) starts where the previous "
"one ends, and the last one ends where the first one starts (forming a closed "
"but hollow polygon)."
msgstr ""
"Les collisions incluront seulement les arrêtes du polygone. Dans ce mode, le "
"nœud a le même effet que plusieurs nœuds [ConcavePolygonShape2D] faits de "
"segments, avec la restriction que chaque segment (après le premier) commence "
"la où le précédent se termine, et le dernier se termine là où le premier "
"commence (formant un polygone fermé mais creux)."

msgid ""
"A node that provides a thickened polygon shape (a prism) to a "
"[CollisionObject3D] parent."
msgstr ""
"Un nœud qui fournit une forme de polygone épaissie (un prisme) à un "
"[CollisionObject3D] parent."

msgid ""
"A node that provides a thickened polygon shape (a prism) to a "
"[CollisionObject3D] parent and allows to edit it. The polygon can be concave "
"or convex. This can give a detection shape to an [Area3D] or turn "
"[PhysicsBody3D] into a solid object.\n"
"[b]Warning:[/b] A non-uniformly scaled [CollisionShape3D] will likely not "
"behave as expected. Make sure to keep its scale the same on all axes and "
"adjust its shape resource instead."
msgstr ""
"Un nœud qui fournit une forme de polygone épaissie (un prisme) à un "
"[CollisionObject3D] parent et permet de l'éditer. Le polygone peut être "
"concave ou convexe. Cela peut donner une forme de détection à une [Area3D] ou "
"transformer [PhysicsBody3D] en un objet solide.\n"
"[b]Attention :[/b] Un [CollisionShape3D] avec une échelle non uniforme ne se "
"comportera probablement pas comme prévu. Assurez-vous de garder la même "
"échelle sur tous les axes et d'ajuster sa ressource de forme à la place."

msgid ""
"The collision shape color that is displayed in the editor, or in the running "
"project if [b]Debug > Visible Collision Shapes[/b] is checked at the top of "
"the editor.\n"
"[b]Note:[/b] The default value is [member ProjectSettings.debug/shapes/"
"collision/shape_color]. The [code]Color(0, 0, 0, 0)[/code] value documented "
"here is a placeholder, and not the actual default debug color."
msgstr ""
"La couleur de la forme de collision qui est affichée dans l'éditeur, ou dans "
"le projet en cours d'exécution si [b]Débogage > Formes de collision visibles[/"
"b] est coché en haut de l'éditeur.\n"
"[b]Note :[/b] La valeur par défaut est [member ProjectSettings.debug/shapes/"
"collision/shape_color]. La valeur [code]Color(0, 0, 0, 0)[/code] documentée "
"ici est une valeur générique, et pas la couleur de débogage par défaut réelle."

msgid ""
"If [code]true[/code], when the shape is displayed, it will show a solid fill "
"color in addition to its wireframe."
msgstr ""
"Si [code]true[/code], lorsque la forme est affichée, elle affichera une "
"couleur de remplissage solide en plus de son fil de fer."

msgid ""
"Length that the resulting collision extends in either direction perpendicular "
"to its 2D polygon."
msgstr ""
"Longueur à laquelle la collision résultante s'étend dans une direction "
"perpendiculaire à son polygone 2D."

msgid ""
"If [code]true[/code], no collision will be produced. This property should be "
"changed with [method Object.set_deferred]."
msgstr ""
"Si [code]true[/code], aucune collision ne sera produite. Cette propriété "
"devrait être modifiée avec [method Object.set_deferred]."

msgid ""
"The collision margin for the generated [Shape3D]. See [member Shape3D.margin] "
"for more details."
msgstr ""
"La marge de collision pour la [Shape3D] générée. Voir [member Shape3D.margin] "
"pour plus d'informations."

msgid "Array of vertices which define the 2D polygon in the local XY plane."
msgstr ""
"Tableau de sommets qui définissent le polygone 2D dans le plan XY local."

msgid "A node that provides a [Shape2D] to a [CollisionObject2D] parent."
msgstr "Un nœud qui fournit une [Shape2D] à un parent [CollisionObject2D]."

msgid ""
"A node that provides a [Shape2D] to a [CollisionObject2D] parent and allows "
"to edit it. This can give a detection shape to an [Area2D] or turn a "
"[PhysicsBody2D] into a solid object."
msgstr ""
"Un nœud qui fournit une [Shape2D] à un parent [CollisionObject2D] et permet "
"de la modifier. Cela peut donner une forme de détection à une [Area2D] ou "
"transformer un [PhysicsBody2D] en un objet solide."

msgid ""
"A disabled collision shape has no effect in the world. This property should "
"be changed with [method Object.set_deferred]."
msgstr ""
"Une forme de collision désactivée n’a aucun effet dans le monde. Cette "
"propriété devrait être modifiée avec [method Object.set_deferred]."

msgid ""
"Sets whether this collision shape should only detect collision on one side "
"(top or bottom).\n"
"[b]Note:[/b] This property has no effect if this [CollisionShape2D] is a "
"child of an [Area2D] node."
msgstr ""
"Définit si cette forme de collision doit uniquement détecter la collision sur "
"un côté (en haut ou en bas).\n"
"[b]Note :[/b] Cette propriété n'a aucun effet si cette [CollisionShape2D] est "
"un enfant d'un nœud [Area2D]."

msgid ""
"The margin used for one-way collision (in pixels). Higher values will make "
"the shape thicker, and work better for colliders that enter the shape at a "
"high velocity."
msgstr ""
"La marge utilisée pour une collision à sens unique (en pixels). Des valeurs "
"plus élevées rendent la forme plus épaisse et fonctionnent mieux pour les "
"collisionneurs qui entrent dans la forme à grande vitesse."

msgid "The actual shape owned by this collision shape."
msgstr "La forme réelle appartenant à cette forme de collision."

msgid "A node that provides a [Shape3D] to a [CollisionObject3D] parent."
msgstr "Un nœud qui fournit une [Shape3D] à un parent [CollisionObject3D]."

msgid ""
"A node that provides a [Shape3D] to a [CollisionObject3D] parent and allows "
"to edit it. This can give a detection shape to an [Area3D] or turn a "
"[PhysicsBody3D] into a solid object.\n"
"[b]Warning:[/b] A non-uniformly scaled [CollisionShape3D] will likely not "
"behave as expected. Make sure to keep its scale the same on all axes and "
"adjust its [member shape] resource instead."
msgstr ""
"Un nœud qui fournit une [Shape3D] à un parent [CollisionObject3D] et permet "
"de la modifier. Cela peut donner une forme de détection à une [Area3D] ou "
"transformer un [PhysicsBody3D] en un objet solide.\n"
"[b]Attention :[/b] : Un [CollisionShape3D] non-uniformémement dimensionné ne "
"se comportera probablement pas comme prévu. Assurez-vous de garder la même "
"échelle sur tous les axes et d'ajuster sa ressource [member shape] à la place."

msgid ""
"Sets the collision shape's shape to the addition of all its convexed "
"[MeshInstance3D] siblings geometry."
msgstr ""
"Définit la forme de la forme de collision à l'union rendue convexe de toutes "
"les géométries de ses frères et sœurs [MeshInstance3D]."

msgid "Use [signal Resource.changed] instead."
msgstr "Utilisez [signal Resource.changed] à la place."

msgid "This method does nothing."
msgstr "Cette méthode ne fait rien."

msgid "A color represented in RGBA format."
msgstr ""
"Une couleur représentée au format RGBA (Red Green Blue Alpha, ou Rouge Vert "
"Bleu Alpha en français)."

msgid ""
"A color represented in RGBA format by a red ([member r]), green ([member g]), "
"blue ([member b]), and alpha ([member a]) component. Each component is a 32-"
"bit floating-point value, usually ranging from [code]0.0[/code] to [code]1.0[/"
"code]. Some properties (such as [member CanvasItem.modulate]) may support "
"values greater than [code]1.0[/code], for overbright or HDR (High Dynamic "
"Range) colors.\n"
"Colors can be created in various ways: By the various [Color] constructors, "
"by static methods such as [method from_hsv], and by using a name from the set "
"of standardized colors based on [url=https://en.wikipedia.org/wiki/"
"X11_color_names]X11 color names[/url] with the addition of [constant "
"TRANSPARENT]. GDScript also provides [method @GDScript.Color8], which uses "
"integers from [code]0[/code] to [code]255[/code] and doesn't support "
"overbright colors.\n"
"Color data may be stored in many color spaces and encodings. The [method "
"srgb_to_linear] and [method linear_to_srgb] methods can convert between "
"nonlinear sRGB encoding and linear RGB encoding.\n"
"[b]Note:[/b] In a boolean context, a Color will evaluate to [code]false[/"
"code] if it is equal to [code]Color(0, 0, 0, 1)[/code] (opaque black). "
"Otherwise, a Color will always evaluate to [code]true[/code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"color_constants.png]Color constants cheatsheet[/url]"
msgstr ""
"Une couleur représentée au format RGBA par une composante rouge ([member r]), "
"verte ([member g]), bleue ([member b]), et alpha ([member a]). Chaque "
"composante est une valeur flottante sur 32 bits, variant habituellement de "
"[code]0.0[/code] à [code]1.0[/code]. Certaines propriétés (comme [member "
"CanvasItem.modulate]) peuvent supporter des valeurs supérieures à [code]1.0[/"
"code], pour les couleurs overbright (litt. \"surlumineuse\") ou HDR (High "
"Dynamic Range, \"Grande plage dynamique\").\n"
"Les couleurs peuvent être créées de différentes manières : Par les différents "
"constructeurs [Color], par des méthodes statiques telles que [method "
"from_hsv], et en utilisant un nom de l'ensemble des couleurs normalisées "
"basées sur les [url=https://fr.wikipedia.org/wiki/Noms_de_couleur_X11]noms de "
"couleur X11[/url] avec l'ajout de [constant TRANSPARENT]. GDScript fournit "
"également [method @GDScript.Color8], qui utilise des entiers de [code]0[/"
"code] à [code]255[/code] et ne supporte pas les couleurs overbright.\n"
"Les données de couleur peuvent être stockées dans de nombreux espaces de "
"couleurs et encodages. Les méthodes [method srgb_to_linear] et [method "
"linear_to_srgb] peuvent convertir entre l'encodage non linéaire sRGB et "
"l'encodage linéaire RGB.\n"
"[b]Note :[/b] Dans un contexte booléen, une couleur évaluera à [code]false[/"
"code] si elle est égale à [code]Color(0, 0, 0, 1)[/code] (noir opaque). "
"Sinon, une couleur évaluera toujours à [code]true[/code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"color_constants.png]Aide-mémoire des constantes de couleur[/url]"

msgid "2D GD Paint Demo"
msgstr "Démo 2D « GD Paint »"

msgid "Tween Interpolation Demo"
msgstr "Démo d'interpolation tween"

msgid "GUI Drag And Drop Demo"
msgstr "Démo de glisser-déplacer dans une interface graphique"

msgid ""
"Constructs a default [Color] from opaque black. This is the same as [constant "
"BLACK].\n"
"[b]Note:[/b] In C#, this constructs a [Color] with all of its components set "
"to [code]0.0[/code] (transparent black)."
msgstr ""
"Construit une [Color] par défaut depuis un noir opaque. Identique à [constant "
"BLACK].\n"
"[b]Note :[/b] En C#, cela construit une [Color] avec toutes ses composantes "
"définies à [code]0.0[/code] (noir transparent)."

msgid ""
"Constructs a [Color] from the existing color, with [member a] set to the "
"given [param alpha] value.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color(Color.RED, 0.2) # 20% opaque red.\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(Colors.Red, 0.2f); // 20% opaque red.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Construit une [Color] depuis une couleur existante avec [member a] défini à "
"la valeur d'[param alpha] donnée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rouge = Color(Color.RED, 0.2) # Rouge 20% opaque.\n"
"[/gdscript]\n"
"[csharp]\n"
"var rouge = new Color(Colors.Red, 0.2f); // Rouge 20% opaque.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Constructs a [Color] as a copy of the given [Color]."
msgstr "Construit une [Color] comme copie d'une [Color] donnée."

msgid ""
"Constructs a [Color] either from an HTML color code or from a standardized "
"color name. The supported color names are the same as the constants."
msgstr ""
"Construit une [Color] soit depuis un code de couleur HTML, soit depuis un nom "
"standardisé de couleur. Les noms de couleur supportés sont les mêmes que les "
"constantes."

msgid ""
"Constructs a [Color] either from an HTML color code or from a standardized "
"color name, with [param alpha] on the range of 0.0 to 1.0. The supported "
"color names are the same as the constants."
msgstr ""
"Construit une [Color] soit depuis un code de couleur HTML, soit depuis un nom "
"standardisé de couleur, avec un [param alpha] entre 0.0 et 1.0. Les noms de "
"couleur supportés sont les mêmes que les constantes."

msgid ""
"Constructs a [Color] from RGB values, typically between 0.0 and 1.0. [member "
"a] is set to 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(0.2, 1.0, 0.7) # Similar to `Color8(51, 255, 178, 255)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(0.2f, 1.0f, 0.7f); // Similar to `Color.Color8(51, 255, "
"178, 255)`\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Construit une [Color] depuis des valeurs Rouge Vertes Bleues, typiquement "
"entre 0.0 et 1.0. [member a] est défini à 1.0\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(0.2, 1.0, 0.7) # Similaire à `Color8(51, 255, 178, 255)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = Color(0.2f, 1.0f, 0.7f); # Similaire à `Color.Color8(51, 255, "
"178, 255)`\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Constructs a [Color] from RGBA values, typically between 0.0 and 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to `Color8(51, 255, 178, "
"204)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(0.2f, 1.0f, 0.7f, 0.8f); // Similar to "
"`Color.Color8(51, 255, 178, 255, 204)`\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Construit une [Color] depuis des valeurs Rouge Vertes Bleues Alpha, "
"typiquement entre 0.0 et 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(0.2, 1.0, 0.7, 0.8) # Similaire à `Color8(51, 255, 178, "
"204)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = Color(0.2f, 1.0f, 0.7f, 0.8f); # Similaire à `Color.Color8(51, "
"255, 178, 204)`\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a new color resulting from overlaying this color over the given "
"color. In a painting program, you can imagine it as the [param over] color "
"painted over this color (including alpha).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var bg = Color(0.0, 1.0, 0.0, 0.5) # Green with alpha of 50%\n"
"var fg = Color(1.0, 0.0, 0.0, 0.5) # Red with alpha of 50%\n"
"var blended_color = bg.blend(fg) # Brown with alpha of 75%\n"
"[/gdscript]\n"
"[csharp]\n"
"var bg = new Color(0.0f, 1.0f, 0.0f, 0.5f); // Green with alpha of 50%\n"
"var fg = new Color(1.0f, 0.0f, 0.0f, 0.5f); // Red with alpha of 50%\n"
"Color blendedColor = bg.Blend(fg); // Brown with alpha of 75%\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une nouvelle couleur résultant de la superposition de cette couleur "
"sur la couleur donnée. Dans un logiciel de peinture, vous pouvez imaginer "
"cela comme la couleur [param over] peinte sur cette couleur (y compris "
"l'alpha).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur_derriere = Color(0.0, 1.0, 0.0, 0.5) # Vert avec un alpha de 50%\n"
"var couleur_devant = Color(1.0, 0.0, 0.0, 0.5) # Rouge avec un alpha de 50%\n"
"var couleur_melangee = couleur_derriere .blend(couleur_devant) # Brun avec un "
"alpha de 75%\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleurDerriere = new Color(0.0f, 1.0f, 0.0f, 0.5f); // Vert avec un "
"alpha de 50%\n"
"var couleurDevant = new Color(1.0f, 0.0f, 0.0f, 0.5f); // Rouge avec un alpha "
"de 50%\n"
"Color couleurMelangee = couleurDerriere.Blend(couleurDevant); // Brun avec un "
"alpha de 75%\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a new color with all components clamped between the components of "
"[param min] and [param max], by running [method @GlobalScope.clamp] on each "
"component."
msgstr ""
"Renvoie une nouvelle couleur avec toutes les composantes bornées entre les "
"composantes de [param min] et [param max], en exécutant [method "
"@GlobalScope.clamp] sur chaque composante."

msgid ""
"Returns a new color resulting from making this color darker by the specified "
"[param amount] (ratio from 0.0 to 1.0). See also [method lightened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var green = Color(0.0, 1.0, 0.0)\n"
"var darkgreen = green.darkened(0.2) # 20% darker than regular green\n"
"[/gdscript]\n"
"[csharp]\n"
"var green = new Color(0.0f, 1.0f, 0.0f);\n"
"Color darkgreen = green.Darkened(0.2f); // 20% darker than regular green\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une nouvelle couleur résultant du fait de rendre cette couleur plus "
"foncée par la quantité [param amount] spécifiée (ratio de 0.0 à 1.0). Voir "
"aussi [method lightened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var vert = Couleur(0.0, 1.0, 0.0)\n"
"var vertfonce= vert.darkened(0.2) # 20% plus foncé que le vert habituel\n"
"[/gdscript]\n"
"[csharp]\n"
"var vert = new Color(0.0f, 1.0f, 0.0f);\n"
"Color vertfonce = vert.Darkened(0,2f); // 20% plus foncé que le vert "
"habituel\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Constructs a color from an [url=https://en.wikipedia.org/wiki/HSL_and_HSV]HSV "
"profile[/url]. The hue ([param h]), saturation ([param s]), and value ([param "
"v]) are typically between 0.0 and 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color.from_hsv(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = Color.FromHsv(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Construit une couleur depuis un [url=https://fr.m.wikipedia.org/wiki/"
"Teinte_saturation_lumi%C3%A8re]profil HSV (Hue Saturation Value, litt. Teinte "
"Saturation Lumière)[/url]. La teinte ([param h]), la saturation ([param s]) "
"et la lumière ([param v]) sont typiquement entre 0.0 et 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color.from_hsv(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = Color.FromHsv(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Constructs a color from an [url=https://bottosson.github.io/posts/"
"colorpicker/]OK HSL profile[/url]. The hue ([param h]), saturation ([param "
"s]), and lightness ([param l]) are typically between 0.0 and 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color.from_ok_hsl(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = Color.FromOkHsl(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Construit une couleur depuis un [url=https://bottosson.github.io/posts/"
"colorpicker/]profil OK HSL[/url]. La teinte ([param h]), la saturation "
"([param s]) et la lumière ([param l]) sont typiquement entre 0.0 et 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color.from_ok_hsl(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = Color.FromOkHsl(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a [Color] constructed from red ([param r8]), green ([param g8]), blue "
"([param b8]), and optionally alpha ([param a8]) integer channels, each "
"divided by [code]255.0[/code] for their final value.\n"
"[codeblock]\n"
"var red = Color.from_rgba8(255, 0, 0)             # Same as Color(1, 0, 0).\n"
"var dark_blue = Color.from_rgba8(0, 0, 51)        # Same as Color(0, 0, "
"0.2).\n"
"var my_color = Color.from_rgba8(306, 255, 0, 102) # Same as Color(1.2, 1, 0, "
"0.4).\n"
"[/codeblock]\n"
"[b]Note:[/b] Due to the lower precision of [method from_rgba8] compared to "
"the standard [Color] constructor, a color created with [method from_rgba8] "
"will generally not be equal to the same color created with the standard "
"[Color] constructor. Use [method is_equal_approx] for comparisons to avoid "
"issues with floating-point precision error."
msgstr ""
"Renvoie une [Color] construite à partir de canaux entiers de rouge ([param "
"r8]), de vert ([param g8]), de bleu ([param b8]) et éventuellement de "
"transparence (ou alpha : [param a8]), chacun divisé par [code]255.0[/code] "
"pour obtenir sa valeur finale.\n"
"[codeblock]\n"
"var rouge = Color.from_rgba8(255, 0, 0)             # Identique à Color(1, 0, "
"0).\n"
"var bleu_fonce = Color.from_rgba8(0, 0, 51)        # Identique à Color(0, 0, "
"0.2).\n"
"var ma_couleur = Color.from_rgba8(306, 255, 0, 102) # Identique à Color(1.2, "
"1, 0, 0.4).\n"
"[/codeblock]\n"
"[b]Note :[/b] En raison de la précision inférieure de [method from_rgba8] par "
"rapport au constructeur [Color] standard, une couleur créée avec [method "
"from_rgba8] ne sera généralement pas égale à la même couleur créée avec le "
"constructeur [Color] standard. Utilisez [method is_equal_approx] pour les "
"comparaisons afin d'éviter les problèmes d'erreur de précision de virgule "
"flottante."

msgid ""
"Decodes a [Color] from an RGBE9995 format integer. See [constant "
"Image.FORMAT_RGBE9995]."
msgstr ""
"Décode une [Color] depuis un format RGBE9995 entier. Voir [constant "
"Image.FORMAT_RGBE9995]."

msgid ""
"Creates a [Color] from the given string, which can be either an HTML color "
"code or a named color (case-insensitive). Returns [param default] if the "
"color cannot be inferred from the string.\n"
"If you want to create a color from String in a constant expression, use the "
"equivalent constructor instead (i.e. [code]Color(\"color string\")[/code])."
msgstr ""
"Crée un [Color] depuis la chaîne donnée, qui peut être soit un code de "
"couleur HTML ou une couleur nommée (insensible à la casse). Renvoie [param "
"default] si la couleur ne peut pas être déduite de la chaîne.\n"
"Si vous voulez créer une couleur depuis une chaîne dans une expression "
"constante, utilisez plutôt le constructeur équivalent (c.-à-d. "
"[code]Color(\"chaîne de la couleur\")[/code])."

msgid ""
"Returns the light intensity of the color, as a value between 0.0 and 1.0 "
"(inclusive). This is useful when determining light or dark color. Colors with "
"a luminance smaller than 0.5 can be generally considered dark.\n"
"[b]Note:[/b] [method get_luminance] relies on the color being in the linear "
"color space to return an accurate relative luminance value. If the color is "
"in the sRGB color space, use [method srgb_to_linear] to convert it to the "
"linear color space first."
msgstr ""
"Renvoie l'intensité lumineuse de la couleur, en tant que valeur entre 0.0 et "
"1.0 (inclusive). Ceci est utile pour déterminer si la couleur est claire ou "
"foncée. Les couleurs avec une luminance inférieure à 0,5 peuvent généralement "
"être considérées comme foncées.\n"
"[b]Note :[/b] [method get_luminance] s'appuie sur la couleur étant dans "
"l'espace de couleur linéaire pour renvoyer une valeur de luminosité relative "
"exacte. Si la couleur est dans l'espace de couleur sRGB, utilisez [method "
"srgb_to_linear] pour la convertir en l'espace de couleur linéaire d'abord."

msgid ""
"Returns the [Color] associated with the provided [param hex] integer in 32-"
"bit RGBA format (8 bits per channel). This method is the inverse of [method "
"to_rgba32].\n"
"In GDScript and C#, the [int] is best visualized with hexadecimal notation "
"([code]\"0x\"[/code] prefix, making it [code]\"0xRRGGBBAA\"[/code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color.hex(0xff0000ff)\n"
"var dark_cyan = Color.hex(0x008b8bff)\n"
"var my_color = Color.hex(0xbbefd2a4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(0xff0000ff);\n"
"var dark_cyan = new Color(0x008b8bff);\n"
"var my_color = new Color(0xbbefd2a4);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you want to use hex notation in a constant expression, use the equivalent "
"constructor instead (i.e. [code]Color(0xRRGGBBAA)[/code])."
msgstr ""
"Renvoie la [Color] associée à l'entier [param hex] fourni en format RGBA 32 "
"bits (8 bits par canal). Cette méthode est l'inverse de [method to_rgba32].\n"
"En GDScript et C#, la meilleure façon de visualiser l'[int] est avec la "
"notation hexadécimale ([code]\"0x\"[/code], ce qui fait [code]\"0xRRGGBBAA\"[/"
"code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rouge = Color.hex(0xff0000ff)\n"
"var cyan_fonce = Color.hex(0x008b8bff)\n"
"var ma_couleur = Color.hex(0xbbefd2a4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rouge = new Color(0xff0000ff);\n"
"var cyan_fonce = new Color(0x008b8bff);\n"
"var ma_couleur = new Color(0xbbefd2a4);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Si vous voulez utiliser la notation hexadécimale dans une expression "
"constante, utilisez plutôt le constructeur équivalent (c.-à-d. "
"[code]Color(0xRRGGBBAA)[/code])."

msgid ""
"Returns the [Color] associated with the provided [param hex] integer in 64-"
"bit RGBA format (16 bits per channel). This method is the inverse of [method "
"to_rgba64].\n"
"In GDScript and C#, the [int] is best visualized with hexadecimal notation "
"([code]\"0x\"[/code] prefix, making it [code]\"0xRRRRGGGGBBBBAAAA\"[/code])."
msgstr ""
"Renvoie la [Color] associée avec l’entier [param hex] en format 64 bits RGBA "
"spécifié (16 bits par canal). Cette méthode est l’inverse de [method "
"to_rgba64].\n"
"En GDScript et en C#, l’entier [int] est mieux visualisé avec la notation "
"hexadécimale (préfixe [code]\"0x\"[/code], ce qui donne [code]"
"\"0xRRRRGGGGBBBBAAAA\"[/code])."

msgid ""
"Returns a new color from [param rgba], an HTML hexadecimal color string. "
"[param rgba] is not case-sensitive, and may be prefixed by a hash sign "
"([code]#[/code]).\n"
"[param rgba] must be a valid three-digit or six-digit hexadecimal color "
"string, and may contain an alpha channel value. If [param rgba] does not "
"contain an alpha channel value, an alpha channel value of 1.0 is applied. If "
"[param rgba] is invalid, returns an empty color.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var blue = Color.html(\"#0000ff\") # blue is Color(0.0, 0.0, 1.0, 1.0)\n"
"var green = Color.html(\"#0F0\")   # green is Color(0.0, 1.0, 0.0, 1.0)\n"
"var col = Color.html(\"663399cc\") # col is Color(0.4, 0.2, 0.6, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var blue = Color.FromHtml(\"#0000ff\"); // blue is Color(0.0, 0.0, 1.0, 1.0)\n"
"var green = Color.FromHtml(\"#0F0\");   // green is Color(0.0, 1.0, 0.0, "
"1.0)\n"
"var col = Color.FromHtml(\"663399cc\"); // col is Color(0.4, 0.2, 0.6, 0.8)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une nouvelle couleur depuis [param rgba], une chaîne de couleur "
"hexadécimale HTML. [param rgba] n'est pas sensible à la casse et peut être "
"préfixée par un signe de croisillon ([code]#[/code]).\n"
"[param rgba] doit être une chaîne de couleur hexadécimale à trois ou six "
"chiffres valide, et peut contenir une valeur de canal alpha. Si [param rgba] "
"ne contient pas de valeur de canal alpha, une valeur de canal alpha de 1,0 "
"est appliquée. Si [param rgba] est invalide, renvoie une couleur vide.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var bleu = Color.html(\"#0000ff\") # bleu vaut Color(0.0, 0.0, 1.0, 1.0)\n"
"var vert = Color.html(\"#0F0\") # vert vaut Color(0.0, 1.0, 0.0, 1.0)\n"
"var col = Color.html(\"663399cc\") # col vaut Color(0.4, 0.2, 0.6, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var bleu = Color.FromHtml(\"#0000ff\"); // bleu vaut Color(0.0, 0.0, 1.0, "
"1.0)\n"
"var vert = Color.FromHtml(\"#0F0\"); // vert vaut Color(0.0, 1.0, 0.0, 1.0)\n"
"var col = Couleur.FromHtml(\"663399cc\"); // col vaut Color(0.4, 0.2, 0.6, "
"0.8)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if [param color] is a valid HTML hexadecimal color "
"string. The string must be a hexadecimal value (case-insensitive) of either "
"3, 4, 6 or 8 digits, and may be prefixed by a hash sign ([code]#[/code]). "
"This method is identical to [method String.is_valid_html_color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"Color.html_is_valid(\"#55aaFF\")   # Returns true\n"
"Color.html_is_valid(\"#55AAFF20\") # Returns true\n"
"Color.html_is_valid(\"55AAFF\")    # Returns true\n"
"Color.html_is_valid(\"#F2C\")      # Returns true\n"
"\n"
"Color.html_is_valid(\"#AABBC\")    # Returns false\n"
"Color.html_is_valid(\"#55aaFF5\")  # Returns false\n"
"[/gdscript]\n"
"[csharp]\n"
"Color.HtmlIsValid(\"#55AAFF\");   // Returns true\n"
"Color.HtmlIsValid(\"#55AAFF20\"); // Returns true\n"
"Color.HtmlIsValid(\"55AAFF\");    // Returns true\n"
"Color.HtmlIsValid(\"#F2C\");      // Returns true\n"
"\n"
"Color.HtmlIsValid(\"#AABBC\");    // Returns false\n"
"Color.HtmlIsValid(\"#55aaFF5\");  // Returns false\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie [code]true[/code] si [param color] est une chaîne de couleur "
"hexadécimale HTML valide. La chaîne doit être une valeur hexadécimale "
"(insensible à la casse) de 3, 4, 6 ou 8 chiffres, et peut être préfixée par "
"un signe de croisillon ([code]#[/code]). Cette méthode est identique à "
"[method String.is_valid_html_color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"Color.html_is_valid(\"#55aaFF\")   # Renvoie true\n"
"Color.html_is_valid(\"#55AAFF20\") # Renvoie true\n"
"Color.html_is_valid(\"55AAFF\")    # Renvoie true\n"
"Color.html_is_valid(\"#F2C\")      # Renvoie true\n"
"\n"
"Color.html_is_valid(\"#AABBC\")    # Renvoie false\n"
"Color.html_is_valid(\"#55aaFF5\")  # Renvoie false\n"
"[/gdscript]\n"
"[csharp]\n"
"Color.HtmlIsValid(\"#55AAFF\");   // Renvoie true\n"
"Color.HtmlIsValid(\"#55AAFF20\"); // Renvoie true\n"
"Color.HtmlIsValid(\"55AAFF\");    // Renvoie true\n"
"Color.HtmlIsValid(\"#F2C\");      // Renvoie true\n"
"\n"
"Color.HtmlIsValid(\"#AABBC\");    // Renvoie false\n"
"Color.HtmlIsValid(\"#55aaFF5\");  // Renvoie false\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color with its [member r], [member g], and [member b] components "
"inverted ([code](1 - r, 1 - g, 1 - b, a)[/code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var black = Color.WHITE.inverted()\n"
"var color = Color(0.3, 0.4, 0.9)\n"
"var inverted_color = color.inverted() # Equivalent to `Color(0.7, 0.6, 0.1)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var black = Colors.White.Inverted();\n"
"var color = new Color(0.3f, 0.4f, 0.9f);\n"
"Color invertedColor = color.Inverted(); // Equivalent to `new Color(0.7f, "
"0.6f, 0.1f)`\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur avec ses composantes [member r], [member g] et [member b] "
"inversées ([code](1 - r, 1 - g, 1 - b, a)[/code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noir = Color.WHITE.inverted()\n"
"var couleur = Color(0.3, 0.4, 0.9)\n"
"var couleur_inversee = couleur.inverted() # Équivalent à `Color(0.7, 0.6, "
"0.1)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var noir = Colors.White.Inverted();\n"
"var couleur = new Color(0.3f, 0.4f, 0.9f);\n"
"Color couleurInversee = couleur.Inverted(); // Équivalent à `new Color(0.7f, "
"0.6f, 0.1f)`\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if this color and [param to] are approximately "
"equal, by running [method @GlobalScope.is_equal_approx] on each component."
msgstr ""
"Renvoie [code]true[/code] si cette couleur et [param to] sont "
"approximativement égales, en exécutant [method @GlobalScope.is_equal_approx] "
"sur chaque composante."

msgid ""
"Returns the linear interpolation between this color's components and [param "
"to]'s components. The interpolation factor [param weight] should be between "
"0.0 and 1.0 (inclusive). See also [method @GlobalScope.lerp].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color(1.0, 0.0, 0.0)\n"
"var aqua = Color(0.0, 1.0, 0.8)\n"
"\n"
"red.lerp(aqua, 0.2) # Returns Color(0.8, 0.2, 0.16)\n"
"red.lerp(aqua, 0.5) # Returns Color(0.5, 0.5, 0.4)\n"
"red.lerp(aqua, 1.0) # Returns Color(0.0, 1.0, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(1.0f, 0.0f, 0.0f);\n"
"var aqua = new Color(0.0f, 1.0f, 0.8f);\n"
"\n"
"red.Lerp(aqua, 0.2f); // Returns Color(0.8f, 0.2f, 0.16f)\n"
"red.Lerp(aqua, 0.5f); // Returns Color(0.5f, 0.5f, 0.4f)\n"
"red.Lerp(aqua, 1.0f); // Returns Color(0.0f, 1.0f, 0.8f)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie l'interpolation linéaire entre les composantes de cette couleur et "
"les composantes de [param to]. Le facteur d'interpolation [param weight] "
"devrait être compris entre 0,0 et 1,0 (inclusifs). Voir aussi [method "
"@GlobalScope.lerp].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rouge = Color(1.0, 0.0, 0.0)\n"
"var bleu_vert = Color(0.0, 1.0, 0.8)\n"
"\n"
"rouge.lerp(bleu_vert, 0.2) # Renvoie Color(0.8, 0.2, 0.16)\n"
"rouge.lerp(bleu_vert, 0.5) # Renvoie Color(0.5, 0.5, 0.4)\n"
"rouge.lerp(bleu_vert, 1.0) # Renvoie Color(0.0, 1.0, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rouge = new Color(1.0f, 0.0f, 0.0f);\n"
"var bleuVert = new Color(0.0f, 1.0f, 0.8f);\n"
"\n"
"rouge.Lerp(bleuVert, 0.2f); // Renvoie Color(0.8f, 0.2f, 0.16f)\n"
"rouge.Lerp(bleuVert, 0.5f); // Renvoie Color(0.5f, 0.5f, 0.4f)\n"
"rouge.Lerp(bleuVert, 1.0f); // Renvoie Color(0.0f, 1.0f, 0.8f)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a new color resulting from making this color lighter by the specified "
"[param amount], which should be a ratio from 0.0 to 1.0. See also [method "
"darkened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var green = Color(0.0, 1.0, 0.0)\n"
"var light_green = green.lightened(0.2) # 20% lighter than regular green\n"
"[/gdscript]\n"
"[csharp]\n"
"var green = new Color(0.0f, 1.0f, 0.0f);\n"
"Color lightGreen = green.Lightened(0.2f); // 20% lighter than regular green\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une nouvelle couleur résultant du fait de rendre cette couleur plus "
"claire par la quantité [param amount] spécifiée (ratio de 0.0 à 1.0). Voir "
"aussi [method darkened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var vert = Couleur(0.0, 1.0, 0.0)\n"
"var vert_clair = vert.lightened(0.2) # 20% plus clair que le vert habituel\n"
"[/gdscript]\n"
"[csharp]\n"
"var vert = new Color(0.0f, 1.0f, 0.0f);\n"
"Color vertClair= vert.Lightened(0,2f); // 20% plus clair que le vert "
"habituel\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to the [url=https://en.wikipedia.org/wiki/"
"SRGB]sRGB[/url] color space. This method assumes the original color is in the "
"linear color space. See also [method srgb_to_linear] which performs the "
"opposite operation.\n"
"[b]Note:[/b] The color's [member a]lpha channel is not affected. The alpha "
"channel is always stored with linear encoding, regardless of the color space "
"of the other color channels."
msgstr ""
"Renvoie la couleur convertie dans l'espace de couleur [url=https://"
"fr.m.wikipedia.org/wiki/SRGB]sRGB[/url]. Cette méthode suppose que la couleur "
"originale est dans l'espace de couleur linéaire. Voir aussi [method "
"srgb_to_linear] qui effectue l'opération inverse.\n"
"[b]Note :[/b] La couleur du canal [member a]lpha n'est pas affectée. Le canal "
"alpha est toujours stocké dans un encodage linéaire, peu importe l'espace de "
"couleur des autres canaux de couleur."

msgid ""
"Returns the color converted to the linear color space. This method assumes "
"the original color already is in the sRGB color space. See also [method "
"linear_to_srgb] which performs the opposite operation.\n"
"[b]Note:[/b] The color's [member a]lpha channel is not affected. The alpha "
"channel is always stored with linear encoding, regardless of the color space "
"of the other color channels."
msgstr ""
"Renvoie la couleur convertie dans l'espace de couleur linéaire. Cette méthode "
"suppose que la couleur originale soit déjà dans l'espace de couleur sRGB. "
"Voir aussi [method linear_to_srgb] qui effectue l'opération inverse.\n"
"[b]Note :[/b] La couleur du canal [member a]lpha n'est pas affectée. Le canal "
"alpha est toujours stocké dans un encodage linéaire, peu importe l'espace de "
"couleur des autres canaux de couleur."

msgid ""
"Returns the color converted to a 32-bit integer in ABGR format (each "
"component is 8 bits). ABGR is the reversed version of the default RGBA "
"format.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_abgr32()) # Prints 4281565439\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToAbgr32()); // Prints 4281565439\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur convertie en entier 32 bits en format ABGR (chaque "
"composante est sur 8 bits). ABGR est la version inversée du format RGBA par "
"défaut.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(1, 0.5, 0.2)\n"
"print(couleur.to_abgr32()) # Affiche 4281565439\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(couleur.ToAbgr32()); // Affiche 4281565439\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 64-bit integer in ABGR format (each "
"component is 16 bits). ABGR is the reversed version of the default RGBA "
"format.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_abgr64()) # Prints -225178692812801\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToAbgr64()); // Prints -225178692812801\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur convertie en entier 64 bits en format ABGR (chaque "
"composante est sur 16 bits). ABGR est la version inversée du format RGBA par "
"défaut.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(1, 0.5, 0.2)\n"
"print(couleur.to_abgr64()) # Affiche -225178692812801\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(couleur.ToAbgr64()); // Affiche -225178692812801\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 32-bit integer in ARGB format (each "
"component is 8 bits). ARGB is more compatible with DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_argb32()) # Prints 4294934323\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToArgb32()); // Prints 4294934323\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur convertie en entier 32 bits en format ABGR (chaque "
"composante est sur 8 bits). ABGR est plus compatible avec DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(1, 0.5, 0.2)\n"
"print(couleur.to_argb32()) # Affiche 4294934323\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(couleur.ToArgb32()); // Affiche 4294934323\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 64-bit integer in ARGB format (each "
"component is 16 bits). ARGB is more compatible with DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_argb64()) # Prints -2147470541\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToArgb64()); // Prints -2147470541\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur convertie en entier 64 bits en format ABGR (chaque "
"composante est sur 16 bits). ABGR est plus compatible avec DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(1, 0.5, 0.2)\n"
"print(couleur.to_argb64()) # Affiche -2147470541\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(couleur.ToArgb64()); // Affiche -2147470541\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to an HTML hexadecimal color [String] in RGBA "
"format, without the hash ([code]#[/code]) prefix.\n"
"Setting [param with_alpha] to [code]false[/code], excludes alpha from the "
"hexadecimal string, using RGB format instead of RGBA format.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var white = Color(1, 1, 1, 0.5)\n"
"var with_alpha = white.to_html() # Returns \"ffffff7f\"\n"
"var without_alpha = white.to_html(false) # Returns \"ffffff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var white = new Color(1, 1, 1, 0.5f);\n"
"string withAlpha = white.ToHtml(); // Returns \"ffffff7f\"\n"
"string withoutAlpha = white.ToHtml(false); // Returns \"ffffff\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur convertie en une [String] de couleur hexadécimale HTML en "
"format RGBA, sans le préfixe croisillon ([code]#[/code]).\n"
"Définir [param with_alpha] à [code]false[/code] exclut l’alpha de la chaîne "
"hexadécimale, en utilisant un format RGB, au lieu de RGBA.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var blanc = Color(1, 1, 1, 0,5)\n"
"var avec_alpha = blanc.to_html() # Renvoie \"ffff7f\"\n"
"var sans_alpha = blanc.to_html(false) # Renvoie \"ffffff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var blanc = new Color(1, 1, 1, 0,5f);\n"
"string avecAlpha = blanc.ToHtml(); // Renvoie \"ffff7f\"\n"
"string sansAlpha = blanc.ToHtml(false); // Renvoie \"ffffff\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 32-bit integer in RGBA format (each "
"component is 8 bits). RGBA is Godot's default format. This method is the "
"inverse of [method hex].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_rgba32()) # Prints 4286526463\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1, 0.5f, 0.2f);\n"
"GD.Print(color.ToRgba32()); // Prints 4286526463\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur convertie en un entier de 32 bits au format RGBA (chaque "
"composante est sur 8 bits). RGBA est le format par défaut de Godot. Cette "
"méthode est l'inverse de [method hex].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(1, 0,5, 0,2)\n"
"print(couleur.to_rgba32()) # Affiche 4286526463\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = new Color(1, 0,5f, 0,2f);\n"
"GD.Print(couleur.ToRgba32()); // Affiche 4286526463\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 64-bit integer in RGBA format (each "
"component is 16 bits). RGBA is Godot's default format. This method is the "
"inverse of [method hex64].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_rgba64()) # Prints -140736629309441\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1, 0.5f, 0.2f);\n"
"GD.Print(color.ToRgba64()); // Prints -140736629309441\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la couleur convertie en un entier de 64 bits au format RGBA (chaque "
"composante est sur 16 bits). RGBA est le format par défaut de Godot. Cette "
"méthode est l'inverse de [method hex64].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var couleur = Color(1, 0,5, 0,2)\n"
"print(couleur.to_rgba64()) # Affiche -140736629309441\n"
"[/gdscript]\n"
"[csharp]\n"
"var couleur = new Color(1, 0,5f, 0,2f);\n"
"GD.Print(couleur.ToRgba64()); // Affiche -140736629309441\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The color's alpha component, typically on the range of 0 to 1. A value of 0 "
"means that the color is fully transparent. A value of 1 means that the color "
"is fully opaque.\n"
"[b]Note:[/b] The alpha channel is always stored with linear encoding, "
"regardless of the color space of the other color channels. The [method "
"linear_to_srgb] and [method srgb_to_linear] methods do not affect the alpha "
"channel."
msgstr ""
"La composante alpha de la couleur, généralement dans l’intervalle allant de 0 "
"à 1. Une valeur de 0 signifie que la couleur est entièrement transparente. "
"Une valeur de 1 signifie que la couleur est entièrement opaque.\n"
"[b]Note :[/b] Le canal alpha est toujours stocké avec un encodage linéaire, "
"peu importe l'espace de couleur des autres canaux de couleur. Les méthodes "
"[method linear_to_srgb] et [method srgb_to_linear] n'affectent pas le canal "
"alpha."

msgid "Wrapper for [member a] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Wrapper pour le [member a] qui utilise l'intervalle de 0 à 255 plutôt que de "
"0 à 1."

msgid "The color's blue component, typically on the range of 0 to 1."
msgstr "Le composant bleu de la couleur, généralement de 0 à 1."

msgid "Wrapper for [member b] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Wrapper pour le [member b] qui utilise l'intervalle de 0 à 255 plutôt que de "
"0 à 1."

msgid "The color's green component, typically on the range of 0 to 1."
msgstr "Le composant vert de la couleur, généralement de 0 à 1."

msgid "Wrapper for [member g] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Wrapper pour le [member g] qui utilise l'intervalle de 0 à 255 plutôt que de "
"0 à 1."

msgid "The HSV hue of this color, on the range 0 to 1."
msgstr "La teinte HSV de cette couleur, dans l'intervalle de 0 à 1."

msgid "The OKHSL hue of this color, on the range 0 to 1."
msgstr "La teinte OKHSL de cette couleur, dans l'intervalle de 0 à 1."

msgid "The OKHSL lightness of this color, on the range 0 to 1."
msgstr "La luminosité OKHSL de cette couleur, dans l'intervalle de 0 à 1."

msgid "The OKHSL saturation of this color, on the range 0 to 1."
msgstr "La saturation OKHSL de cette couleur, dans l'intervalle de 0 à 1."

msgid "The color's red component, typically on the range of 0 to 1."
msgstr "Le composant rouge de la couleur, généralement de 0 à 1."

msgid "Wrapper for [member r] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Wrapper pour le [member r] qui utilise l'intervalle de 0 à 255 plutôt que de "
"0 à 1."

msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr "La saturation HSV de cette couleur, dans l'intervalle de 0 à 1."

msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr ""
"La valeur HSV (luminosité) de cette couleur, dans l'intervalle de 0 à 1."

msgid "Alice blue color."
msgstr "Couleur bleu Alice."

msgid "Antique white color."
msgstr "Couleur blanc antique."

msgid "Aqua color."
msgstr "Couleur aqua."

msgid "Aquamarine color."
msgstr "Couleur aigue-marine."

msgid "Azure color."
msgstr "Couleur azur."

msgid "Beige color."
msgstr "Couleur beige."

msgid "Bisque color."
msgstr "Couleur bisque."

msgid "Black color. In GDScript, this is the default value of any color."
msgstr ""
"Couleur noire. Dans GDScript, c'est la valeur par défaut de chaque couleur."

msgid "Blanched almond color."
msgstr "Couleur amande blanchie."

msgid "Blue color."
msgstr "Couleur bleue."

msgid "Blue violet color."
msgstr "Couleur bleu violet."

msgid "Brown color."
msgstr "Couleur marron."

msgid "Burlywood color."
msgstr "Couleur bois dur."

msgid "Cadet blue color."
msgstr "Couleur bleu cadet."

msgid "Chartreuse color."
msgstr "Couleur chartreuse."

msgid "Chocolate color."
msgstr "Couleur chocolat."

msgid "Coral color."
msgstr "Couleur corail."

msgid "Cornflower blue color."
msgstr "Couleur bleu bleuet."

msgid "Cornsilk color."
msgstr "Couleur de la soie de maïs."

msgid "Crimson color."
msgstr "Couleur cramoisie."

msgid "Cyan color."
msgstr "Couleur cyan."

msgid "Dark blue color."
msgstr "Couleur bleu foncé."

msgid "Dark cyan color."
msgstr "Couleur cyan foncé."

msgid "Dark goldenrod color."
msgstr "Couleur verge d'or foncé."

msgid "Dark gray color."
msgstr "Couleur gris foncé."

msgid "Dark green color."
msgstr "Couleur vert foncé."

msgid "Dark khaki color."
msgstr "Couleur kaki foncé."

msgid "Dark magenta color."
msgstr "Couleur magenta foncé."

msgid "Dark olive green color."
msgstr "Couleur vert olive foncé."

msgid "Dark orange color."
msgstr "Couleur orange foncé."

msgid "Dark orchid color."
msgstr "Couleur orchidée foncée."

msgid "Dark red color."
msgstr "Couleur rouge foncé."

msgid "Dark salmon color."
msgstr "Couleur saumon foncé."

msgid "Dark sea green color."
msgstr "Couleur vert mer foncé."

msgid "Dark slate blue color."
msgstr "Couleur bleu ardoise foncé."

msgid "Dark slate gray color."
msgstr "Couleur gris ardoise foncé."

msgid "Dark turquoise color."
msgstr "Couleur turquoise foncé."

msgid "Dark violet color."
msgstr "Couleur violet foncé."

msgid "Deep pink color."
msgstr "Couleur rose foncé."

msgid "Deep sky blue color."
msgstr "Couleur bleu ciel profond."

msgid "Dim gray color."
msgstr "Couleur gris pâle."

msgid "Dodger blue color."
msgstr "Couleur bleue Dodger."

msgid "Firebrick color."
msgstr "Couleur de brique feu."

msgid "Floral white color."
msgstr "Couleur blanche florale."

msgid "Forest green color."
msgstr "Couleur vert forêt."

msgid "Fuchsia color."
msgstr "Couleur fuchsia."

msgid "Gainsboro color."
msgstr "Couleur Gainsboro."

msgid "Ghost white color."
msgstr "Couleur blanc fantôme."

msgid "Gold color."
msgstr "Couleur or."

msgid "Goldenrod color."
msgstr "Couleur verge d'or."

msgid "Gray color."
msgstr "Couleur grise."

msgid "Green color."
msgstr "Couleur verte."

msgid "Green yellow color."
msgstr "Couleur jaune verte."

msgid "Honeydew color."
msgstr "Couleur miel."

msgid "Hot pink color."
msgstr "Couleur rose vif."

msgid "Indian red color."
msgstr "Couleur rouge indienne."

msgid "Indigo color."
msgstr "Couleur indigo."

msgid "Ivory color."
msgstr "Couleur ivoire."

msgid "Khaki color."
msgstr "Couleur kaki."

msgid "Lavender color."
msgstr "Couleur lavande."

msgid "Lavender blush color."
msgstr "Couleur blush lavande."

msgid "Lawn green color."
msgstr "Couleur vert pelouse."

msgid "Lemon chiffon color."
msgstr "Couleur mousseline citron."

msgid "Light blue color."
msgstr "Couleur bleu clair."

msgid "Light coral color."
msgstr "Couleur corail clair."

msgid "Light cyan color."
msgstr "Couleur cyan clair."

msgid "Light goldenrod color."
msgstr "Couleur verge d'or clair."

msgid "Light gray color."
msgstr "Couleur gris clair."

msgid "Light green color."
msgstr "Couleur vert clair."

msgid "Light pink color."
msgstr "Couleur rose clair."

msgid "Light salmon color."
msgstr "Couleur saumon clair."

msgid "Light sea green color."
msgstr "Couleur vert mer clair."

msgid "Light sky blue color."
msgstr "Couleur bleu ciel clair."

msgid "Light slate gray color."
msgstr "Couleur gris ardoise clair."

msgid "Light steel blue color."
msgstr "Couleur bleu acier clair."

msgid "Light yellow color."
msgstr "Couleur jaune clair."

msgid "Lime color."
msgstr "Couleur citron vert."

msgid "Lime green color."
msgstr "Couleur vert citron."

msgid "Linen color."
msgstr "Couleur lin."

msgid "Magenta color."
msgstr "Couleur magenta."

msgid "Maroon color."
msgstr "Couleur marron."

msgid "Medium aquamarine color."
msgstr "Couleur bleu-marine moyenne."

msgid "Medium blue color."
msgstr "Couleur bleu moyen."

msgid "Medium orchid color."
msgstr "Couleur orchidée moyenne."

msgid "Medium purple color."
msgstr "Couleur violette moyenne."

msgid "Medium sea green color."
msgstr "Couleur vert mer moyen."

msgid "Medium slate blue color."
msgstr "Couleur bleu ardoise moyen."

msgid "Medium spring green color."
msgstr "Couleur vert printemps moyen."

msgid "Medium turquoise color."
msgstr "Couleur turquoise moyenne."

msgid "Medium violet red color."
msgstr "Couleur rouge violet moyen."

msgid "Midnight blue color."
msgstr "Couleur bleu nuit."

msgid "Mint cream color."
msgstr "Couleur crème menthe."

msgid "Misty rose color."
msgstr "Couleur rose brumeuse."

msgid "Moccasin color."
msgstr "Couleur mocassin."

msgid "Navajo white color."
msgstr "Couleur blanche Navajo."

msgid "Navy blue color."
msgstr "Couleur bleu marine."

msgid "Old lace color."
msgstr "Couleur vieille dentelle."

msgid "Olive color."
msgstr "Couleur olive."

msgid "Olive drab color."
msgstr "Couleur olive terne."

msgid "Orange color."
msgstr "Couleur orange."

msgid "Orange red color."
msgstr "Couleur rouge orangé."

msgid "Orchid color."
msgstr "Couleur d’orchidée."

msgid "Pale goldenrod color."
msgstr "Couleur verge d'or pâle."

msgid "Pale green color."
msgstr "Couleur vert pâle."

msgid "Pale turquoise color."
msgstr "Couleur turquoise pâle."

msgid "Pale violet red color."
msgstr "Couleur rouge violet pâle."

msgid "Papaya whip color."
msgstr "Couleur de fouet de papaye."

msgid "Peach puff color."
msgstr "Couleur pêche bouffie."

msgid "Peru color."
msgstr "Couleur du Pérou."

msgid "Pink color."
msgstr "Couleur rose."

msgid "Plum color."
msgstr "Couleur prune."

msgid "Powder blue color."
msgstr "Couleur bleu poudre."

msgid "Purple color."
msgstr "Couleur violette."

msgid "Rebecca purple color."
msgstr "Couleur violette Rebecca."

msgid "Red color."
msgstr "Couleur rouge."

msgid "Rosy brown color."
msgstr "Couleur brun rosé."

msgid "Royal blue color."
msgstr "Couleur bleu royal."

msgid "Saddle brown color."
msgstr "Couleur marron selle."

msgid "Salmon color."
msgstr "Couleur saumon."

msgid "Sandy brown color."
msgstr "Couleur brun sable."

msgid "Sea green color."
msgstr "Couleur vert mer."

msgid "Seashell color."
msgstr "Couleur coquillage."

msgid "Sienna color."
msgstr "Couleur Sienne."

msgid "Silver color."
msgstr "Couleur argent."

msgid "Sky blue color."
msgstr "Couleur bleu ciel."

msgid "Slate blue color."
msgstr "Couleur bleu ardoise."

msgid "Slate gray color."
msgstr "Couleur gris ardoise."

msgid "Snow color."
msgstr "Couleur neige."

msgid "Spring green color."
msgstr "Couleur vert printanier."

msgid "Steel blue color."
msgstr "Couleur bleu acier."

msgid "Tan color."
msgstr "Couleur fauve."

msgid "Teal color."
msgstr "Couleur sarcelle."

msgid "Thistle color."
msgstr "Couleur chardon."

msgid "Tomato color."
msgstr "Couleur tomate."

msgid "Transparent color (white with zero alpha)."
msgstr "Couleur transparente (blanc avec alpha nul)."

msgid "Turquoise color."
msgstr "Couleur turquoise."

msgid "Violet color."
msgstr "Couleur violette."

msgid "Web gray color."
msgstr "Couleur gris Web."

msgid "Web green color."
msgstr "Couleur vert Web."

msgid "Web maroon color."
msgstr "Couleur marron Web."

msgid "Web purple color."
msgstr "Couleur violet Web."

msgid "Wheat color."
msgstr "Couleur blé."

msgid "White color."
msgstr "Couleur blanche."

msgid "White smoke color."
msgstr "Couleur fumée blanche."

msgid "Yellow color."
msgstr "Couleur jaune."

msgid "Yellow green color."
msgstr "Couleur vert jaune."

msgid ""
"Returns [code]true[/code] if the colors are not exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les couleurs ne sont pas exactement égales.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid ""
"Multiplies each component of the [Color] by the components of the given "
"[Color]."
msgstr ""
"Multiplie chaque composante de la couleur [Color] par les composantes de la "
"couleur [Color] donnée."

msgid "Multiplies each component of the [Color] by the given [float]."
msgstr ""
"Multiplie chaque composante de la couleur [Color] par le flottant [float] "
"donné."

msgid "Multiplies each component of the [Color] by the given [int]."
msgstr ""
"Multiplie chaque composante de la couleur [Color] par l'entier [int] donné."

msgid ""
"Adds each component of the [Color] with the components of the given [Color]."
msgstr ""
"Ajoute chaque composante de cette [Color] avec les composantes de la [Color] "
"donnée."

msgid ""
"Subtracts each component of the [Color] by the components of the given "
"[Color]."
msgstr ""
"Soustrait chaque composante de cette [Color] par les composantes de la "
"[Color] donnée."

msgid ""
"Divides each component of the [Color] by the components of the given [Color]."
msgstr ""
"Divise chaque composante de cette [Color] par les composantes de la [Color] "
"donnée."

msgid "Divides each component of the [Color] by the given [float]."
msgstr "Divise chaque composante de la [Color] par le flottant [float] donné."

msgid "Divides each component of the [Color] by the given [int]."
msgstr "Divise chaque composante de la [Color] par l'entier [int] donné."

msgid ""
"Returns [code]true[/code] if the colors are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les couleurs sont exactement égales.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid ""
"Access color components using their index. [code][0][/code] is equivalent to "
"[member r], [code][1][/code] is equivalent to [member g], [code][2][/code] is "
"equivalent to [member b], and [code][3][/code] is equivalent to [member a]."
msgstr ""
"Accède aux composantes de la couleur en utilisant leur index. [code][0][/"
"code] est équivalent à [member r], [code][1][/code] est équivalent à [member "
"g], [code][2][/code] est équivalent à [member b], et [code][3][/code] est "
"équivalent à [member a]."

msgid ""
"Returns the same value as if the [code]+[/code] was not there. Unary [code]+[/"
"code] does nothing, but sometimes it can make your code more readable."
msgstr ""
"Renvoie la même valeur comme si [code]+[/code] n'était pas là. Le [code]+[/"
"code] unaire ne fait rien, mais peut parfois rendre votre code plus lisible."

msgid ""
"Inverts the given color. This is equivalent to [code]Color.WHITE - c[/code] "
"or [code]Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a)[/code]. Unlike with "
"[method inverted], the [member a] component is inverted, too."
msgstr ""
"Inverse la couleur donnée. Ceci est équivalent à [code]Color.WHITE - c[/code] "
"ou [code]Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a)[/code]. Contrairement a "
"[method inverted], la composante [member a] est aussi inversée."

msgid ""
"A resource class for managing a palette of colors, which can be loaded and "
"saved using [ColorPicker]."
msgstr ""
"Une classe de ressource pour gérer une palette de couleurs, qui peut être "
"chargée et sauvegardée en utilisant [ColorPicker]."

msgid ""
"The [ColorPalette] resource is designed to store and manage a collection of "
"colors. This resource is useful in scenarios where a predefined set of colors "
"is required, such as for creating themes, designing user interfaces, or "
"managing game assets. The built-in [ColorPicker] control can also make use of "
"[ColorPalette] without additional code."
msgstr ""
"La ressource [ColorPalette] est conçue pour stocker et gérer une collection "
"de couleurs. Cette ressource est utile dans les scénarios où un ensemble "
"prédéfini de couleurs est nécessaire, comme pour créer des thèmes, concevoir "
"des interfaces utilisateur ou gérer des ressources de jeu. Le contrôle "
"intégré [ColorPicker] peut également utiliser [ColorPalette] sans code "
"supplémentaire."

msgid "A [PackedColorArray] containing the colors in the palette."
msgstr "Un [PackedColorArray] contenant les couleurs dans la palette."

msgid "A widget that provides an interface for selecting or modifying a color."
msgstr ""
"Un widget qui fournit une interface pour sélectionner ou modifier une couleur."

msgid ""
"A widget that provides an interface for selecting or modifying a color. It "
"can optionally provide functionalities like a color sampler (eyedropper), "
"color modes, and presets.\n"
"[b]Note:[/b] This control is the color picker widget itself. You can use a "
"[ColorPickerButton] instead if you need a button that brings up a "
"[ColorPicker] in a popup."
msgstr ""
"Un widget qui fournit une interface pour sélectionner ou modifier une "
"couleur. Il peut en option fournir des fonctionnalités comme un "
"échantillonneur de couleur (pipette), des modes de couleur et des pré-"
"réglages.\n"
"[b]Note :[/b] Ce contrôle est le widget du sélectionneur de couleur lui-même. "
"Vous pouvez utiliser un [ColorPickerButton] au lieu de cela si vous avez "
"besoin d'un bouton qui ouvre un [ColorPicker] dans une popup."

msgid ""
"Adds the given color to a list of color presets. The presets are displayed in "
"the color picker and the user will be able to select them.\n"
"[b]Note:[/b] The presets list is only for [i]this[/i] color picker."
msgstr ""
"Ajoute la couleur donnée à une liste de pré-réglages de couleur. Les pré-"
"réglages sont affichés dans le sélectionneur de couleurs que l'utilisateur "
"pourra sélectionner.\n"
"[b]Note :[/b] La liste des pré-réglages est seulement pour [i]ce[/i] "
"sélectionneur de couleur."

msgid ""
"Adds the given color to a list of color recent presets so that it can be "
"picked later. Recent presets are the colors that were picked recently, a new "
"preset is automatically created and added to recent presets when you pick a "
"new color.\n"
"[b]Note:[/b] The recent presets list is only for [i]this[/i] color picker."
msgstr ""
"Ajoute la couleur donnée à une liste de pré-réglages de couleur récents qui "
"peuvent être re-sélectionnés plus tard. Les pré-réglages récents sont les "
"couleurs qui ont été choisies récemment, un nouveau pré-réglage est "
"automatiquement créé et ajouté aux pré-réglages récents quand vous choisissez "
"une nouvelle couleur.\n"
"[b]Note :[/b] La liste des pré-réglages récents est seulement pour [i]ce[/i] "
"sélectionneur de couleur."

msgid ""
"Removes the given color from the list of color presets of this color picker."
msgstr ""
"Retire la couleur donnée de la liste des pré-réglages de couleur de ce "
"sélectionneur de couleur."

msgid ""
"Removes the given color from the list of color recent presets of this color "
"picker."
msgstr ""
"Retire la couleur donnée de la liste des pré-réglages de couleur récents de "
"ce sélectionneur de couleur."

msgid "Returns the list of colors in the presets of the color picker."
msgstr ""
"Renvoie la liste des couleurs dans la palette du sélectionneur de couleur."

msgid "Returns the list of colors in the recent presets of the color picker."
msgstr ""
"Renvoie la liste des couleurs dans les pré-réglages récents de ce "
"sélectionneur de couleur."

msgid "The currently selected color."
msgstr "La couleur actuellement sélectionnée."

msgid "The currently selected color mode."
msgstr "Le mode de couleur actuellement sélectionné."

msgid ""
"If [code]true[/code], the color will apply only after the user releases the "
"mouse button, otherwise it will apply immediately even in mouse motion event "
"(which can cause performance issues)."
msgstr ""
"Si [code]true[/code], la couleur ne s'appliquera que quand l'utilisateur "
"relâche le bouton de la souris, sinon elle s'appliquera immédiatement en "
"suivant le déplacement de la souris (ce qui peut causer des problèmes de "
"performance)."

msgid "If [code]true[/code], shows an alpha channel slider (opacity)."
msgstr "Si [code]true[/code], affiche un slider de canal alpha (opacité)."

msgid "Emitted when the color is changed."
msgstr "Émis lorsque la couleur est changée."

msgid "Emitted when a preset is added."
msgstr "Émis lors de l'ajout d'un préréglage."

msgid "Emitted when a preset is removed."
msgstr "Émis lorsqu’un préréglage est supprimé."

msgid "Allows editing the color with Hue/Saturation/Value sliders."
msgstr ""
"Permet d'éditer la couleur avec des sliders Teinte/Saturation/Luminosité "
"(Hue, Saturation, Lightness)."

msgid "This is replaced by [constant MODE_LINEAR]."
msgstr "Ceci est remplacé par [constant MODE_LINEAR]."

msgid "The width of the hue selection slider."
msgstr "La largeur de glisseur de la teinte."

msgid "The margin around the [ColorPicker]."
msgstr "La marge autour du [ColorPicker]."

msgid "The height of the saturation-value selection box."
msgstr "La hauteur de la boite de sélection de la saturation."

msgid "The width of the saturation-value selection box."
msgstr "La largeur de la boite de sélection de la saturation."

msgid "The icon for the \"Add Preset\" button."
msgstr "L'icône du bouton pour ajouter un préréglage."

msgid "Custom texture for the hue selection slider on the right."
msgstr ""
"La texture personnalisée pour le glisseur de sélection de la teinte sur la "
"droite."

msgid ""
"The indicator used to signalize that the color value is outside the 0-1 range."
msgstr ""
"L'indicateur utilisé pour signaler que la valeur de couleur est en dehors de "
"l'intervalle 0-1."

msgid ""
"Background panel for the color preview box (visible when the color is "
"translucent)."
msgstr ""
"Panneau d'arrière-plan pour la boîte de prévisualisation des couleurs "
"(visible lorsque la couleur est translucide)."

msgid "The icon for the screen color picker button."
msgstr "L'icône pour le bouton de sélecteur de couleurs."

msgid "A button that brings up a [ColorPicker] when pressed."
msgstr "Un bouton qui affiche un [ColorPicker] lors qu’appuyé."

msgid ""
"Encapsulates a [ColorPicker], making it accessible by pressing a button. "
"Pressing the button will toggle the [ColorPicker]'s visibility.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] By default, the button may not be wide enough for the color "
"preview swatch to be visible. Make sure to set [member "
"Control.custom_minimum_size] to a big enough value to give the button enough "
"space."
msgstr ""
"Encapsule un [ColorPicker], le rendant accessible en appuyant sur un bouton. "
"En appuyant sur le bouton, le [ColorPicker] deviendra visible ou invisible.\n"
"Voir aussi [BaseButton] qui contient des propriétés et des méthodes communes "
"associées à ce nœud.\n"
"[b]Note :[/b] Par défaut, le bouton peut ne pas être assez large pour que les "
"nuanciers de prévisualisation des couleurs soient visibles. Assurez-vous de "
"définir [member Control.custom_minimum_size] à une taille suffisante grande "
"pour donner au bouton assez de place."

msgid ""
"Returns the [ColorPicker] that this node toggles.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie le [ColorPicker] que ce nœud active/désactive.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne requis, le retirer et le "
"supprimer peut causer un plantage. Si vous voulez le cacher ou l'un de ses "
"enfants, utilisez la propriété [member CanvasItem.visible]."

msgid ""
"Returns the control's [PopupPanel] which allows you to connect to popup "
"signals. This allows you to handle events when the ColorPicker is shown or "
"hidden.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Renvoie le contrôle du [PopupPanel] qui vous permet de vous connecter aux "
"signaux de la pop-up. Cela vous permet de gérer les événements lorsque le "
"ColorPicker est affiché ou caché.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne nécessaire, le retirer et "
"le libérer peut causer un plantage. Si vous voulez le cacher lui ou l'un de "
"ses enfants, utilisez plutôt [member Window.visible]."

msgid ""
"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
"be visible."
msgstr ""
"Si [code]true[/code], le canal alpha sera affiché dans le [ColorPicker]."

msgid ""
"If [code]true[/code], the intensity slider in the displayed [ColorPicker] "
"will be visible."
msgstr ""
"Si [code]true[/code], le slider d'intensité dans le [ColorPicker] affiché "
"sera visible."

msgid "Emitted when the color changes."
msgstr "Émis lorsque la couleur change."

msgid ""
"Emitted when the [ColorPicker] is created (the button is pressed for the "
"first time)."
msgstr ""
"Émis lorsque le [ColorPicker] est créé (le bouton est pressé pour la première "
"fois)."

msgid "Emitted when the [ColorPicker] is closed."
msgstr "Émis lorsque le [ColorPicker] est fermé."

msgid "The background of the color preview rect on the button."
msgstr "L'arrière-plan du rectangle d'aperçu de couleur sur le bouton."

msgid "The Compositor"
msgstr "Le compositeur"

msgid ""
"The custom [CompositorEffect]s that are applied during rendering of viewports "
"using this compositor."
msgstr ""
"Les [CompositorEffect]s personnalisés qui sont appliqués lors du rendu des "
"viewports utilisant ce compositeur."

msgid ""
"The implementation may change as more of the rendering internals are exposed "
"over time."
msgstr ""
"L'implémentation peut changer à mesure que plus d'internes de rendu sont "
"exposés au fil du temps."

msgid "This resource allows for creating a custom rendering effect."
msgstr "Cette ressource permet de créer un effet de rendu personnalisé."

msgid ""
"The type of effect that is implemented, determines at what stage of rendering "
"the callback is called."
msgstr ""
"Le type d'effet qui est implémenté, détermine à quel stade du rendu le "
"callback est appelé."

msgid ""
"If [code]true[/code] this rendering effect is applied to any viewport it is "
"added to."
msgstr ""
"Si [code]true[/code], cet effet de rendu est appliqué à tout viewport auquel "
"il est ajouté."

msgid ""
"The callback is called after our sky is rendered, but before our back buffers "
"are created (and if enabled, before subsurface scattering and/or screen space "
"reflections)."
msgstr ""
"Le callback est appelé après que notre ciel soit rendu, mais avant que nos "
"buffers arrières soient créés (et si activés, avant la transluminescence et/"
"ou les réflexions de l'espace-écran)."

msgid "Represents the size of the [enum EffectCallbackType] enum."
msgstr "Représente la taille de l'énumération [enum EffectCallbackType]."

msgid "An optionally compressed [Cubemap]."
msgstr "Une [Cubemap] optionnellement compressée."

msgid "An optionally compressed [CubemapArray]."
msgstr "Un [CubemapArray] optionnellement compressé."

msgid "Texture with 2 dimensions, optionally compressed."
msgstr "Texture à deux dimensions, potentiellement compressée."

msgid "Array of 2-dimensional textures, optionally compressed."
msgstr "Tableau de textures à 2 dimensions, potentiellement compressées."

msgid "Texture with 3 dimensions, optionally compressed."
msgstr "Texture à trois dimensions, potentiellement compressée."

msgid "Loads the texture at [param path]."
msgstr "Charge la texture au chemin [param path]."

msgid "A 2D polyline shape used for physics collision."
msgstr "Une forme polyligne 2D utilisée pour les collisions physiques."

msgid ""
"A 2D polyline shape, intended for use in physics. Used internally in "
"[CollisionPolygon2D] when it's in [constant "
"CollisionPolygon2D.BUILD_SEGMENTS] mode.\n"
"Being just a collection of interconnected line segments, "
"[ConcavePolygonShape2D] is the most freely configurable single 2D shape. It "
"can be used to form polygons of any nature, or even shapes that don't enclose "
"an area. However, [ConcavePolygonShape2D] is [i]hollow[/i] even if the "
"interconnected line segments do enclose an area, which often makes it "
"unsuitable for physics or detection.\n"
"[b]Note:[/b] When used for collision, [ConcavePolygonShape2D] is intended to "
"work with static [CollisionShape2D] nodes like [StaticBody2D] and will likely "
"not behave well for [CharacterBody2D]s or [RigidBody2D]s in a mode other than "
"Static.\n"
"[b]Warning:[/b] Physics bodies that are small have a chance to clip through "
"this shape when moving fast. This happens because on one frame, the physics "
"body may be on the \"outside\" of the shape, and on the next frame it may be "
"\"inside\" it. [ConcavePolygonShape2D] is hollow, so it won't detect a "
"collision.\n"
"[b]Performance:[/b] Due to its complexity, [ConcavePolygonShape2D] is the "
"slowest 2D collision shape to check collisions against. Its use should "
"generally be limited to level geometry. If the polyline is closed, "
"[CollisionPolygon2D]'s [constant CollisionPolygon2D.BUILD_SOLIDS] mode can be "
"used, which decomposes the polygon into convex ones; see "
"[ConvexPolygonShape2D]'s documentation for instructions."
msgstr ""
"Une forme de polyligne 2D, destinée à être utilisée pour la physique. "
"Utilisée en interne dans [CollisionPolygon2D] quand il est en mode [constant "
"CollisionPolygon2D.BUILD_SEGMENTS].\n"
"Étant seulement une collection de segments interconnectés, "
"[ConcavePolygonShape2D] est la forme 2D la plus librement configurable. Elle "
"peut être utilisée pour former des polygones de toute nature, ou même des "
"formes qui n'entourent pas de zone. Cependant, [ConcavePolygonShape2D] est "
"[i]creuse[/i] même si les segments interconnectés entourent effectivement une "
"zone, ce qui la rend souvent inappropriée pour la physique ou la détection.\n"
"[b]Note :[/b] Lorsqu'elle est utilisée pour la collision, "
"[ConcavePolygonShape2D] est destinée à travailler avec des nœuds "
"[CollisionShape2D] statiques comme [StaticBody2D] et ne se comportera "
"probablement pas bien pour des [CharacterBody2D] ou des [RigidBody2D] dans un "
"mode autre que Statique.\n"
"[b]Attention :[/b] Les corps physiques qui sont petits ont la chance de "
"traverser cette forme en se déplaçant rapidement. Cela se produit parce que "
"sur une trame, le corps physique peut être \"en dehors\" de la forme, et sur "
"le prochaine trame il peut être \"dans\" celle-ci. [ConcavePolygonShape2D] "
"est creuse, donc elle ne détectera pas de collision.\n"
"[b]Performance :[/b] En raison de sa complexité, [ConcavePolygonShape2D] est "
"la forme de collision 2D la plus lente pour vérifier les collisions. Son "
"utilisation devrait généralement être limitée à la géométrie de niveau. Si la "
"polyline est fermée, le mode [constant CollisionPolygon2D.BUILD_SOLIDS] de "
"[CollisionPolygon2D] peut être utilisé, ce qui décompose le polygone en "
"polygones convexes, voir la documentation de [ConvexPolygonShape2D] pour les "
"instructions."

msgid ""
"The array of points that make up the [ConcavePolygonShape2D]'s line segments. "
"The array (of length divisible by two) is naturally divided into pairs (one "
"pair for each segment); each pair consists of the starting point of a segment "
"and the endpoint of a segment."
msgstr ""
"Le tableau des points qui composent les segments du [ConcavePolygonShape2D]. "
"Le tableau (de longueur divisible par deux) est naturellement divisé en "
"paires (une paire pour chaque segment). Chaque paire se compose du point de "
"départ d'un segment et du point de fin d'un segment."

msgid "A 3D trimesh shape used for physics collision."
msgstr ""
"Une forme de maillage triangulaire 3D utilisée pour les collisions physiques."

msgid ""
"A 3D trimesh shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"Being just a collection of interconnected triangles, [ConcavePolygonShape3D] "
"is the most freely configurable single 3D shape. It can be used to form "
"polyhedra of any nature, or even shapes that don't enclose a volume. However, "
"[ConcavePolygonShape3D] is [i]hollow[/i] even if the interconnected triangles "
"do enclose a volume, which often makes it unsuitable for physics or "
"detection.\n"
"[b]Note:[/b] When used for collision, [ConcavePolygonShape3D] is intended to "
"work with static [CollisionShape3D] nodes like [StaticBody3D] and will likely "
"not behave well for [CharacterBody3D]s or [RigidBody3D]s in a mode other than "
"Static.\n"
"[b]Warning:[/b] Physics bodies that are small have a chance to clip through "
"this shape when moving fast. This happens because on one frame, the physics "
"body may be on the \"outside\" of the shape, and on the next frame it may be "
"\"inside\" it. [ConcavePolygonShape3D] is hollow, so it won't detect a "
"collision.\n"
"[b]Performance:[/b] Due to its complexity, [ConcavePolygonShape3D] is the "
"slowest 3D collision shape to check collisions against. Its use should "
"generally be limited to level geometry. For convex geometry, "
"[ConvexPolygonShape3D] should be used. For dynamic physics bodies that need "
"concave collision, several [ConvexPolygonShape3D]s can be used to represent "
"its collision by using convex decomposition; see [ConvexPolygonShape3D]'s "
"documentation for instructions."
msgstr ""
"Une forme de maillage triangulaire 3D, destinée à être utilisée pour la "
"physique. Habituellement utilisée pour fournir une forme à un "
"[CollisionShape3D].\n"
"Étant seulement une collection de triangles interconnectés, "
"[ConcavePolygonShape3D] est la forme 3D la plus librement configurable. Elle "
"peut être utilisée pour former des polyèdres de toute nature, ou même des "
"formes qui n'entourent pas de volume. Cependant, [ConcavePolygonShape3D] est "
"[i]creuse[/i] même si les triangles interconnectés entourent effectivement "
"une zone, ce qui la rend souvent inappropriée pour la physique ou la "
"détection.\n"
"[b]Note :[/b] Lorsqu'elle est utilisée pour la collision, "
"[ConcavePolygonShape3D] est destinée à travailler avec des nœuds "
"[CollisionShape3D] statiques comme [StaticBody3D] et ne se comportera "
"probablement pas bien pour des [CharacterBody3D] ou des [RigidBody3D] dans un "
"mode autre que Statique.\n"
"[b]Attention :[/b] Les corps physiques qui sont petits ont la chance de "
"traverser cette forme en se déplaçant rapidement. Cela se produit parce que "
"sur une trame, le corps physique peut être \"en dehors\" de la forme, et sur "
"le prochaine trame il peut être \"dans\" celle-ci. [ConcavePolygonShape3D] "
"est creuse, donc elle ne détectera pas de collision.\n"
"[b]Performance :[/b] En raison de sa complexité, [ConcavePolygonShape3D] est "
"la forme de collision 3D la plus lente pour vérifier les collisions. Son "
"utilisation devrait généralement être limitée à la géométrie de niveau. Pour "
"de la géométrie convexe, [ConvexPolygonShape3D] devrait être utilisée. Pour "
"les objets physiques dynamiques qui nécessite des collisions concaves, "
"plusieurs [ConvexPolygonShape3D]s peuvent être utilisés pour représenter sa "
"collision en utilisant une décomposition convexe. Voir la documentation de "
"[ConvexPolygonShape3D] pour les instructions."

msgid ""
"Returns the faces of the trimesh shape as an array of vertices. The array (of "
"length divisible by three) is naturally divided into triples; each triple of "
"vertices defines a triangle."
msgstr ""
"Renvoie les faces de la forme de maillage triangulaire en tant que tableau de "
"sommets. Le tableau (de longueur divisible par trois) est naturellement "
"divisé en triplets. Chaque triplet de sommets définit un triangle."

msgid ""
"Sets the faces of the trimesh shape from an array of vertices. The [param "
"faces] array should be composed of triples such that each triple of vertices "
"defines a triangle."
msgstr ""
"Définit les faces de la forme de maillage triangulaire depuis un tableau de "
"sommets. Le tableau [param faces] devrait être composé de triplets de sorte "
"que chaque triplet de sommets définit un triangle."

msgid ""
"If set to [code]true[/code], collisions occur on both sides of the concave "
"shape faces. Otherwise they occur only along the face normals."
msgstr ""
"Si défini à [code]true[/code], les collisions se produisent des deux côtés "
"des faces de forme concave. Sinon elles ne se produisent que le long de la "
"normale de la face."

msgid ""
"A physics joint that connects two 3D physics bodies in a way that simulates a "
"ball-and-socket joint."
msgstr ""
"Un liaison physique qui connecte deux corps physiques 3D d'une manière qui "
"simule une liaison sphérique."

msgid ""
"A physics joint that connects two 3D physics bodies in a way that simulates a "
"ball-and-socket joint. The twist axis is initiated as the X axis of the "
"[ConeTwistJoint3D]. Once the physics bodies swing, the twist axis is "
"calculated as the middle of the X axes of the joint in the local space of the "
"two physics bodies. Useful for limbs like shoulders and hips, lamps hanging "
"off a ceiling, etc."
msgstr ""
"Un liaison physique qui connecte deux corps physiques 3D d'une manière qui "
"simule une liaison sphérique. L'axe de torsion est initialisé comme l'axe X "
"du [ConeTwistJoint3D]. Une fois que les corps physiques se balancent, l'axe "
"de torsion est calculé comme le milieu des axes X de la liaison dans l'espace "
"local des deux corps physiques. Utile pour des membres comme les épaules et "
"les hanches, les lampes accrochées au plafond, etc."

msgid "Returns the value of the specified parameter."
msgstr "Renvoie la valeur du paramètre spécifié."

msgid "Sets the value of the specified parameter."
msgstr "Définit la valeur du paramètre spécifié."

msgid ""
"The speed with which the swing or twist will take place.\n"
"The higher, the faster."
msgstr ""
"La vitesse à laquelle l'oscillation ou la torsion aura lieu.\n"
"Plus c'est haut, plus c'est rapide."

msgid ""
"Defines, how fast the swing- and twist-speed-difference on both sides gets "
"synced."
msgstr ""
"Définit à quelle vitesse la différence d'oscillation et de torsion-vitesse "
"des deux côtés est synchronisée."

msgid ""
"The ease with which the joint starts to twist. If it's too low, it takes more "
"force to start twisting the joint."
msgstr ""
"La facilité avec laquelle la liaison commence tourner. S'il est trop bas, il "
"faut plus de force pour commencer faire tourner la liaison."

msgid ""
"Twist is the rotation around the twist axis, this value defined how far the "
"joint can twist.\n"
"Twist is locked if below 0.05."
msgstr ""
"La torsion est la rotation autour de l'axe de torsion, cette valeur définit "
"jusqu’à quel point cette liaison peut se tordre.\n"
"La torsion est verrouillée si elle est inférieure à 0,05."

msgid "Represents the size of the [enum Param] enum."
msgstr "Représente la taille de l'énumération [enum Param]."

msgid "Helper class to handle INI-style files."
msgstr "Classe d’aide pour gérer des fichiers de style INI."

msgid "Removes the entire contents of the config."
msgstr "Supprime tout le contenu de la configuration."

msgid ""
"Obtain the text version of this config file (the same text that would be "
"written to a file)."
msgstr ""
"Obtient la version texte de ce fichier de configuration (le même texte qui "
"serait écrit dans un fichier)."

msgid ""
"Deletes the specified section along with all the key-value pairs inside. "
"Raises an error if the section does not exist."
msgstr ""
"Supprime la section spécifiée ainsi que toutes ses paires valeur-clé avec. "
"Affiche une erreur si la section n'existe pas."

msgid ""
"Deletes the specified key in a section. Raises an error if either the section "
"or the key do not exist."
msgstr ""
"Supprime la clé spécifiée dans une section. Affiche une erreur si la section "
"ou la clé n'existe pas."

msgid ""
"Returns an array of all defined key identifiers in the specified section. "
"Raises an error and returns an empty array if the section does not exist."
msgstr ""
"Renvoie un tableau de tous les identifiants des clés définis dans la section "
"spécifiée. Affiche une erreur et renvoie un tableau vide si la section "
"n'existe pas."

msgid "Returns an array of all defined section identifiers."
msgstr "Renvoie un tableau de tous les identifiants de sections définis."

msgid ""
"Returns the current value for the specified section and key. If either the "
"section or the key do not exist, the method returns the fallback [param "
"default] value. If [param default] is not specified or set to [code]null[/"
"code], an error is also raised."
msgstr ""
"Renvoie l'actuelle valeur pour la section et la clé spécifiées. Si la section "
"ou la clé n'existent pas, la méthode renvoie la valeur du paramètre de repli "
"[param default]. Si [param default] n'est pas spécifié ou défini à "
"[code]null[/code], une erreur est levée."

msgid "Returns [code]true[/code] if the specified section exists."
msgstr "Renvoie [code]true[/code] si la section spécifiée existe."

msgid "Returns [code]true[/code] if the specified section-key pair exists."
msgstr "Renvoie [code]true[/code] si la paire section et clé spécifiée existe."

msgid ""
"Loads the config file specified as a parameter. The file's contents are "
"parsed and loaded in the [ConfigFile] object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Charge le fichier de configuration spécifié en paramètre. Le contenu du "
"fichier est interprété et chargé dans l'objet [ConfigFile] sur lequel la "
"méthode a été appelée.\n"
"Renvoie [constant OK] lors du succès, ou une des valeurs [enum Error] si "
"l'opération a échoué."

msgid ""
"Loads the encrypted config file specified as a parameter, using the provided "
"[param key] to decrypt it. The file's contents are parsed and loaded in the "
"[ConfigFile] object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Charge le fichier de configuration encrypté spécifié en paramètre, en "
"utilisant la clé [param key] fournie pour le décrypter. Le contenu du fichier "
"est interprété et chargé dans l'objet [ConfigFile] sur lequel la méthode a "
"été appelée.\n"
"Renvoie [constant OK] lors du succès, ou une des valeurs [enum Error] si "
"l'opération a échoué."

msgid ""
"Loads the encrypted config file specified as a parameter, using the provided "
"[param password] to decrypt it. The file's contents are parsed and loaded in "
"the [ConfigFile] object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Charge le fichier de configuration crypté spécifié comme paramètre, en "
"utilisant le mode de passe [param password] donné pour le décrypter. Le "
"contenu du fichier est interprété puis chargé dans l'objet [ConfigFile] sur "
"lequel la méthode a été appelée.\n"
"Renvoie [constant OK] lors d'un succès, ou une des autres valeurs [enum "
"Error] si l'opération a échoué."

msgid ""
"Parses the passed string as the contents of a config file. The string is "
"parsed and loaded in the ConfigFile object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Interprète la chaîne passée comme étant le contenu d'un fichier de "
"configuration. La chaîne est interprétée puis chargée dans l'objet ConfigFile "
"sur lequel la méthode a été appelée.\n"
"Renvoie [constant OK] lors d'un succès, ou une des autres valeurs [enum "
"Error] si l'opération a échoué."

msgid ""
"Saves the contents of the [ConfigFile] object to the file specified as a "
"parameter. The output file uses an INI-style structure.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Enregistre le contenu de l'objet [ConfigFile] dans le fichier spécifié en "
"paramètre. Le fichier de sortie utilise une structure de type INI.\n"
"Renvoie [constant OK] lors d'un succès, ou une des autres valeurs [enum "
"Error] si l'opération a échoué."

msgid ""
"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
"specified as a parameter, using the provided [param key] to encrypt it. The "
"output file uses an INI-style structure.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Enregistre le contenu de l'objet [ConfigFile] vers le fichier chiffré AES-256 "
"donné en paramètre, en utilisant la clé [param key] fournie pour le crypter. "
"Le fichier de sortie utilise une structure de type INI.\n"
"Renvoie [constant OK] lors d'un succès, ou une des autres valeurs [enum "
"Error] si l'opération a échoué."

msgid ""
"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
"specified as a parameter, using the provided [param password] to encrypt it. "
"The output file uses an INI-style structure.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Enregistre le contenu de l'objet [ConfigFile] vers le fichier chiffré AES-256 "
"donné en paramètre, en utilisant le mot de passe [param password] fourni pour "
"le crypter. Le fichier de sortie utilise une structure de type INI.\n"
"Renvoie [constant OK] lors d'un succès, ou une des autres valeurs [enum "
"Error] si l'opération a échoué."

msgid ""
"Assigns a value to the specified key of the specified section. If either the "
"section or the key do not exist, they are created. Passing a [code]null[/"
"code] value deletes the specified key if it exists, and deletes the section "
"if it ends up empty once the key has been removed."
msgstr ""
"Attribue une valeur à la clé spécifiée de la section spécifiée. Si la section "
"ou la clé n'existe pas, elles sont créées. Passer une valeur [code]null[/"
"code] supprime la clé spécifiée si elle existe, et supprime la section si "
"elle est vide une fois que la clé a été supprimée."

msgid "A dialog used for confirmation of actions."
msgstr "Une boîte de dialogue pour la confirmation des actions."

msgid ""
"A dialog used for confirmation of actions. This window is similar to "
"[AcceptDialog], but pressing its Cancel button can have a different outcome "
"from pressing the OK button. The order of the two buttons varies depending on "
"the host OS.\n"
"To get cancel action, you can use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_cancel_button().pressed.connect(_on_canceled)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetCancelButton().Pressed += OnCanceled;\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Une fenêtre utilisée pour la confirmation des actions. Cette fenêtre est "
"similaire à [AcceptDialog], mais appuyer sur son bouton Annuler peut avoir un "
"résultat différent de l'appui sur le bouton OK. L'ordre des deux boutons "
"varie selon le système d'exploitation hôte.\n"
"Pour annuler l'action, vous pouvez utiliser :\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_cancel_button().pressed.connect(_lorsque_annulation)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetCancelButton().Pressed += LorsqueAnnulation;\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the cancel button.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie le bouton annuler.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne requis, le retirer et le "
"libérer peut causer un plantage. Si vous voulez le cacher lui ou un de ses "
"enfants, utilisez la propriété [member CanvasItem.visible]."

msgid ""
"The text displayed by the cancel button (see [method get_cancel_button])."
msgstr ""
"Le texte affiché par le bouton d'annulation (voir [method get_cancel_button])."

msgid "Base class for all GUI containers."
msgstr "Classe de base pour tous les conteneurs de GUI."

msgid ""
"Base class for all GUI containers. A [Container] automatically arranges its "
"child controls in a certain way. This class can be inherited to make custom "
"container types."
msgstr ""
"Classe de base pour tous les conteneurs GUI. Un [Container] arrange "
"automatiquement ses contrôles enfants d'une certaine manière. Cette classe "
"peut être héritée pour faire des types de conteneurs personnalisés."

msgid ""
"Implement to return a list of allowed horizontal [enum Control.SizeFlags] for "
"child nodes. This doesn't technically prevent the usages of any other size "
"flags, if your implementation requires that. This only limits the options "
"available to the user in the Inspector dock.\n"
"[b]Note:[/b] Having no size flags is equal to having [constant "
"Control.SIZE_SHRINK_BEGIN]. As such, this value is always implicitly allowed."
msgstr ""
"Implémentez pour renvoyer une liste des [enum Control.SizeFlags] horizontaux "
"autorisés pour les nœuds enfants. Cela n'empêche pas techniquement "
"l'utilisation d'autres drapeaux de taille, si votre implémentation l'exige. "
"Cela limite uniquement les options offertes à l'utilisateur dans le dock "
"Inspecteur.\n"
"[b]Note :[/b] N'avoir aucun drapeau de taille est égal à avoir [constant "
"Control.SIZE_SHRINK_BEGIN]. Ainsi, cette valeur est toujours implicitement "
"autorisée."

msgid ""
"Implement to return a list of allowed vertical [enum Control.SizeFlags] for "
"child nodes. This doesn't technically prevent the usages of any other size "
"flags, if your implementation requires that. This only limits the options "
"available to the user in the Inspector dock.\n"
"[b]Note:[/b] Having no size flags is equal to having [constant "
"Control.SIZE_SHRINK_BEGIN]. As such, this value is always implicitly allowed."
msgstr ""
"Implémentez pour renvoyer une liste des [enum Control.SizeFlags] verticaux "
"autorisés pour les nœuds enfants. Cela n'empêche pas techniquement "
"l'utilisation d'autres drapeaux de taille, si votre implémentation l'exige. "
"Cela limite uniquement les options offertes à l'utilisateur dans le dock "
"Inspecteur.\n"
"[b]Note :[/b] N'avoir aucun drapeau de taille est égal à avoir [constant "
"Control.SIZE_SHRINK_BEGIN]. Ainsi, cette valeur est toujours implicitement "
"autorisée."

msgid ""
"Fit a child control in a given rect. This is mainly a helper for creating "
"custom container classes."
msgstr ""
"Ajuste un contrôle enfant dans un rectangle donné. Il s'agit principalement "
"d'une aide pour créer des classes de conteneurs personnalisées."

msgid ""
"Queue resort of the contained children. This is called automatically anyway, "
"but can be called upon request."
msgstr ""
"Ajoute un commande de tri pour les enfants contenus. Ceci est appelé "
"automatiquement dans tous les cas, mais peut être appelé sur demande."

msgid "Emitted when children are going to be sorted."
msgstr "Émis lorsque les enfants vont être triés."

msgid "Emitted when sorting the children is needed."
msgstr "Émis quand le tri des enfants est nécessaire."

msgid ""
"Notification just before children are going to be sorted, in case there's "
"something to process beforehand."
msgstr ""
"Notification juste avant que les enfants ne soient triés, au cas où il y a "
"quelque chose à traiter avant."

msgid ""
"Notification for when sorting the children, it must be obeyed immediately."
msgstr ""
"Notification lors du tri des enfants, à laquelle il faut obéir immédiatement."

msgid ""
"Base class for all GUI controls. Adapts its position and size based on its "
"parent control."
msgstr ""
"Classe de base pour tous les contrôles GUI. Adapte sa position et sa taille "
"en fonction de son contrôle parent."

msgid "GUI documentation index"
msgstr "Index de la documentation sur les GUI"

msgid "Control node gallery"
msgstr "Galerie des nœuds de contrôle"

msgid "Multiple resolutions"
msgstr "Résolutions multiples"

msgid "All GUI Demos"
msgstr "Toutes les démos d'interface graphique"

msgid ""
"Virtual method to be implemented by the user. Returns the minimum size for "
"this control. Alternative to [member custom_minimum_size] for controlling "
"minimum size via code. The actual minimum size will be the max value of these "
"two (in each axis separately).\n"
"If not overridden, defaults to [constant Vector2.ZERO].\n"
"[b]Note:[/b] This method will not be called when the script is attached to a "
"[Control] node that already overrides its minimum size (e.g. [Label], "
"[Button], [PanelContainer] etc.). It can only be used with most basic GUI "
"nodes, like [Control], [Container], [Panel] etc."
msgstr ""
"Méthode virtuelle à implémenter par l'utilisateur. Renvoie la taille minimale "
"de ce contrôle. Cette taille peut aussi être contrôlée avec [member "
"custom_minimum_size] via le code. L'actuelle taille minimale sera le maximum "
"de ces deux valeurs (sur chaque axe séparément).\n"
"Si non redéfinie, la valeur par défaut est [constant Vector2.ZERO].\n"
"[b]Note :[/b] Cette méthode n'est pas appelée quand le script est attaché à "
"un nœud [Control] qui définit depuis lui-même sa taille minimale (ex. "
"[Label], [Button], [PanelContainer], etc.). Elle ne peut être utilisée "
"qu'avec les éléments d'interface les plus basiques, comme les [Control], "
"[Container], [Panel], etc."

msgid ""
"Creates a local override for a theme constant with the specified [param "
"name]. Local overrides always take precedence when fetching theme items for "
"the control. An override can be removed with [method "
"remove_theme_constant_override].\n"
"See also [method get_theme_constant]."
msgstr ""
"Crée une redéfinition locale pour une constante de thème nommée [param name]. "
"Les redéfinitions locales ont toujours la priorité lors de la récupération "
"des éléments de thème pour le contrôle. Une surcharge peut être supprimée "
"avec la méthode [method remove_theme_constant_override].\n"
"Voir aussi [method get_theme_constant]."

msgid ""
"Creates a local override for a theme [Font] with the specified [param name]. "
"Local overrides always take precedence when fetching theme items for the "
"control. An override can be removed with [method "
"remove_theme_font_override].\n"
"See also [method get_theme_font]."
msgstr ""
"Crée une redéfinition locale pour une [Font] de thème nommée [param name]. "
"Les redéfinitions locales ont toujours la priorité lors de la récupération "
"des éléments de thème pour le contrôle. Une redéfinition peut être supprimée "
"avec la valeur [method remove_theme_font_override].\n"
"Voir aussi [method get_theme_font]."

msgid ""
"Creates a local override for a theme font size with the specified [param "
"name]. Local overrides always take precedence when fetching theme items for "
"the control. An override can be removed with [method "
"remove_theme_font_size_override].\n"
"See also [method get_theme_font_size]."
msgstr ""
"Crée une redéfinition locale pour une taille de police de thème nommée [param "
"name]. Les redéfinitions locales ont toujours la priorité lors de la "
"récupération des éléments de thème pour le contrôle. Une redéfinition peut "
"être supprimée avec la valeur [method remove_theme_font_size_override].\n"
"Voir aussi [method get_theme_font_size]."

msgid ""
"Creates a local override for a theme icon with the specified [param name]. "
"Local overrides always take precedence when fetching theme items for the "
"control. An override can be removed with [method "
"remove_theme_icon_override].\n"
"See also [method get_theme_icon]."
msgstr ""
"Crée une redéfinition locale pour une icône de thème nommée [param name]. Les "
"redéfinitions locales ont toujours la priorité lors de la récupération des "
"éléments de thème pour le contrôle. Une redéfinition peut être supprimée avec "
"la valeur [method remove_theme_icon_override].\n"
"Voir aussi [method get_theme_icon]."

msgid ""
"Prevents [code]*_theme_*_override[/code] methods from emitting [constant "
"NOTIFICATION_THEME_CHANGED] until [method end_bulk_theme_override] is called."
msgstr ""
"Empêche les méthodes [code]*_theme_*_override[/code] d'émettre [constant "
"NOTIFICATION_THEME_CHANGED] jusqu'à ce que [method end_bulk_theme_override] "
"soit appelée."

msgid ""
"Ends a bulk theme override update. See [method begin_bulk_theme_override]."
msgstr ""
"Termine une mise à jour de masse de redéfinition du thème. Voir [method "
"begin_bulk_theme_override]."

msgid "Finds the next (below in the tree) [Control] that can receive the focus."
msgstr ""
"Cherche le prochain (en-dessous dans l'arborescence) [Control] qui peut "
"prendre le focus."

msgid ""
"Finds the previous (above in the tree) [Control] that can receive the focus."
msgstr ""
"Trouve (et renvoie) le [Control] précédent (au-dessus dans l'arbre) qui peut "
"recevoir le focus."

msgid ""
"Returns combined minimum size from [member custom_minimum_size] and [method "
"get_minimum_size]."
msgstr ""
"Renvoie la taille minimale combinée de [member custom_minimum_size] et "
"[method get_minimum_size]."

msgid "Returns [member offset_right] and [member offset_bottom]."
msgstr "Renvoie [member offset_right] et [member offset_bottom]."

msgid ""
"Returns the minimum size for this control. See [member custom_minimum_size]."
msgstr ""
"Renvoie la taille minimale pour ce contrôle. Voir [member "
"custom_minimum_size]."

msgid "Returns the width/height occupied in the parent control."
msgstr "Renvoie la largeur / hauteur occupée dans le contrôle parent."

msgid "Returns the parent control node."
msgstr "Renvoie le nœud de contrôle parent."

msgid ""
"Returns a constant from the first matching [Theme] in the tree if that "
"[Theme] has a constant item with the specified [param name] and [param "
"theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie une constante du premier [Theme] correspondant dans l'arborescence si "
"ce [Theme] a un élément constant avec le nom [param name] et le type [param "
"theme_type] spécifiés.\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Returns a [Font] from the first matching [Theme] in the tree if that [Theme] "
"has a font item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie une [Font] du premier [Theme] correspondant dans l'arborescence si ce "
"[Theme] a un élément de police nommé [param name] et du type de thème [param "
"theme_type].\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Returns a font size from the first matching [Theme] in the tree if that "
"[Theme] has a font size item with the specified [param name] and [param "
"theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie une [Font] du premier [Theme] correspondant dans l'arborescence si ce "
"[Theme] a un élément de taille de police nommé [param name] et du type de "
"thème [param theme_type].\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Returns an icon from the first matching [Theme] in the tree if that [Theme] "
"has an icon item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie une icône du premier [Theme] correspondant dans l'arborescence si ce "
"[Theme] a une propriété d'icône nommée [param name] et du type de thème "
"[param theme_type].\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Returns a [StyleBox] from the first matching [Theme] in the tree if that "
"[Theme] has a stylebox item with the specified [param name] and [param "
"theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie une [StyleBox] du premier [Theme] correspondant dans l'arborescence "
"si ce [Theme] a une propriété de boîte de style nommée [param name] et du "
"type de thème [param theme_type].\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Creates an [InputEventMouseButton] that attempts to click the control. If the "
"event is received, the control gains focus.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tgrab_click_focus() # When clicking another Control node, this node will be "
"clicked instead.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tGrabClickFocus(); // When clicking another Control node, this node will be "
"clicked instead.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Crée un [InputEventMouseButton] qui tente de cliquer sur le contrôle. Si "
"l'événement est reçu, le contrôle reçoit le focus.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tgrab_click_focus() # Lorsque vous cliquez sur un autre contrôle, ce nœud "
"sera cliqué à la place.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tGrabClickFocus(); // Lorsque vous cliquez sur un autre contrôle, ce nœud "
"sera cliqué à la place.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if this is the current focused control. See [member "
"focus_mode]."
msgstr ""
"Renvoie [code]true[/code] s'il s'agit du contrôle qui a le focus. Voir "
"[member focus_mode]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a color item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a une propriété de couleur nommée [param name] et du type "
"de thème [param theme_type].\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme [Color] "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_color_override]."
msgstr ""
"Renvoie [code]true[/code] s'il y a une redéfinition locale pour une [Color] "
"de thème nommée [param name] dans ce nœud [Control].\n"
"Voir [method add_theme_color_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a constant item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a un élément constant avec le nom [param name] et type de "
"thème [param theme_type] spécifiés.\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme constant "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_constant_override]."
msgstr ""
"Renvoie [code]true[/code] s'il y a une redéfinition locale pour une constante "
"de thème nommée [param name] dans ce nœud [Control].\n"
"Voir [method add_theme_constant_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il existe un [Theme] correspondant dans "
"l’arborescence qui a un élément de police nommé [param name] et de type de "
"thème [param theme_type] spécifiés.\n"
"Voir [method get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme [Font] "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_font_override]."
msgstr ""
"Renvoie [code]true[/code] s'il y a une redéfinition pour une [Font] de thème "
"nommée [param name] dans ce nœud [Control].\n"
"Voir [method add_theme_font_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font size item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il existe un [Theme] correspondant dans "
"l’arborescence qui a un élément de taille de police avec le nom [param name] "
"et le type de thème [param theme_type] spécifiés.\n"
"Voir [method get_theme_color] pour les détails."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme font size "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_font_size_override]."
msgstr ""
"Renvoie [code]true[/code] s'il y a une redéfinition locale pour une taille de "
"police de thème nommée [param name] dans ce nœud [Control].\n"
"Voir [method add_theme_font_size_override]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme icon with "
"the specified [param name] in this [Control] node.\n"
"See [method add_theme_icon_override]."
msgstr ""
"Renvoie [code]true[/code] s'il y a une redéfinition locale pour une icône de "
"thème nommée [param name] dans ce nœud [Control].\n"
"Voir [method add_theme_icon_override]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme [StyleBox] "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_stylebox_override]."
msgstr ""
"Renvoie [code]true[/code] s'il y a une redéfinition locale pour une "
"[StyleBox] de thème nommée [param name] dans ce nœud [Control].\n"
"Voir [method add_theme_stylebox_override]."

msgid ""
"Returns [code]true[/code] if a drag operation is successful. Alternative to "
"[method Viewport.gui_is_drag_successful].\n"
"Best used with [constant Node.NOTIFICATION_DRAG_END]."
msgstr ""
"Renvoie [code]true[/code] si l'opération de glisser-deposer a réussi. "
"Alternative à [method Viewport.gui_is_drag_successful].\n"
"Généralement utilisé avec [constant Node.NOTIFICATION_DRAG_END]."

msgid ""
"Removes a local override for a theme [Color] with the specified [param name] "
"previously added by [method add_theme_color_override] or via the Inspector "
"dock."
msgstr ""
"Retire une redéfinition locale pour une [Color] de thème nommée [param name] "
"ajoutée précédemment par [method add_theme_color_override] ou via le dock "
"Inspecteur."

msgid ""
"Removes a local override for a theme constant with the specified [param name] "
"previously added by [method add_theme_constant_override] or via the Inspector "
"dock."
msgstr ""
"Supprime une redéfinition locale pour une constante de thème nommée [param "
"name] ajoutée précédemment par [method add_theme_constant_override] ou via le "
"dock Inspecteur."

msgid ""
"Removes a local override for a theme [Font] with the specified [param name] "
"previously added by [method add_theme_font_override] or via the Inspector "
"dock."
msgstr ""
"Retire une redéfinition locale pour une [Font] de thème nommée [param name] "
"ajoutée précédemment par [method add_theme_font_override] ou via le dock "
"Inspecteur."

msgid ""
"Removes a local override for a theme font size with the specified [param "
"name] previously added by [method add_theme_font_size_override] or via the "
"Inspector dock."
msgstr ""
"Retire une redéfinition locale pour une taille de police de thème nommée "
"[param name] ajoutée précédemment par [method add_theme_font_size_override] "
"ou via le dock Inspecteur."

msgid ""
"Removes a local override for a theme icon with the specified [param name] "
"previously added by [method add_theme_icon_override] or via the Inspector "
"dock."
msgstr ""
"Retire une redéfinition locale pour une icône de thème nommée [param name] "
"ajoutée précédemment par [method add_theme_icon_override] ou via le dock "
"Inspecteur."

msgid ""
"Removes a local override for a theme [StyleBox] with the specified [param "
"name] previously added by [method add_theme_stylebox_override] or via the "
"Inspector dock."
msgstr ""
"Retire une redéfinition locale pour une [StyleBox] de thème nommée [param "
"name] ajoutée précédemment par [method add_theme_stylebox_override] ou via le "
"dock Inspecteur."

msgid ""
"Resets the size to [method get_combined_minimum_size]. This is equivalent to "
"calling [code]set_size(Vector2())[/code] (or any size below the minimum)."
msgstr ""
"Réinitialise la taille à [method get_combined_minimum_size]. Ceci équivaut à "
"appeler [code]set_size(Vector2())[/code] (ou toute taille inférieure au "
"minimum)."

msgid ""
"Sets both anchor preset and offset preset. See [method set_anchors_preset] "
"and [method set_offsets_preset]."
msgstr ""
"Définit à la fois le préréglage de l'ancre et le préréglage du décalage. Voir "
"[method set_anchors_preset] et [method set_offsets_preset]."

msgid ""
"Sets the anchors to a [param preset] from [enum Control.LayoutPreset] enum. "
"This is the code equivalent to using the Layout menu in the 2D editor.\n"
"If [param keep_offsets] is [code]true[/code], control's position will also be "
"updated."
msgstr ""
"Définit les ancres à un préréglage [param preset] de l'énumeration [enum "
"Control.LayoutPreset]. C'est le code équivalent à l'utilisation du menu "
"Disposition dans l'éditeur 2D.\n"
"Si [param keep_offsets] vaut [code]true[/code], la position du contrôle sera "
"également mise à jour."

msgid ""
"Sets [member offset_left] and [member offset_top] at the same time. "
"Equivalent of changing [member position]."
msgstr ""
"Définit à la fois [member offset_left] et [member offset_top]. Équivalent à "
"changer [member position]."

msgid "Sets [member offset_right] and [member offset_bottom] at the same time."
msgstr "Définit à la fois [member offset_right] et [member offset_bottom]."

msgid ""
"Sets the [member global_position] to given [param position].\n"
"If [param keep_offsets] is [code]true[/code], control's anchors will be "
"updated instead of offsets."
msgstr ""
"Définit le [member global_position] à la [param position] spécifiée.\n"
"Si [param keep_offsets] vaut [code]true[/code], les ancrages de contrôle "
"seront changés à la place des marges."

msgid ""
"Sets the [member position] to given [param position].\n"
"If [param keep_offsets] is [code]true[/code], control's anchors will be "
"updated instead of offsets."
msgstr ""
"Défini la [member position] à la [param position] donnée.\n"
"Si [param keep_offsets] vaut [code]true[/code], les ancres du contrôle sont "
"mis à jour au lieu des décalages."

msgid ""
"Sets the size (see [member size]).\n"
"If [param keep_offsets] is [code]true[/code], control's anchors will be "
"updated instead of offsets."
msgstr ""
"Définit la taille (voir [member size]).\n"
"Si [param keep_offsets] vaut [code]true[/code], les ancres du contrôle sont "
"mis à jour au lieu des décalages."

msgid ""
"Invalidates the size cache in this node and in parent nodes up to top level. "
"Intended to be used with [method get_minimum_size] when the return value is "
"changed. Setting [member custom_minimum_size] directly calls this method "
"automatically."
msgstr ""
"Invalide le cache de taille de ce nœud et des nœuds parents jusqu'au niveau "
"du haut (top level). Prévu pour être utilisé avec [method get_minimum_size] "
"quand la valeur de renvoi est changée. Définir [member custom_minimum_size] "
"appelle directement cette méthode automatiquement."

msgid "The human-readable node description that is reported to assistive apps."
msgstr ""
"La description facilement lisible du nœud qui est rapportée aux applications "
"d'assistance."

msgid "The human-readable node name that is reported to assistive apps."
msgstr ""
"Le nom facilement lisible du nœud qui est rapporté aux applications "
"d'assistance."

msgid ""
"Use [member Node.auto_translate_mode] and [method Node.can_auto_translate] "
"instead."
msgstr ""
"Utilisez [member Node.auto_translate_mode] et [method "
"Node.can_auto_translate] à la place."

msgid ""
"Toggles if any text should automatically change to its translated version "
"depending on the current locale."
msgstr ""
"Active/désactive si du texte devrait automatiquement changer en sa version "
"traduite selon la langue actuelle."

msgid ""
"Enables whether rendering of [CanvasItem] based children should be clipped to "
"this control's rectangle. If [code]true[/code], parts of a child which would "
"be visibly outside of this control's rectangle will not be rendered and won't "
"receive input."
msgstr ""
"Active si le rendu des nœuds basés sur [CanvasItem] enfants doit être limité "
"au rectangle de ce contrôle. Si [code]true[/code], les parties des enfants "
"qui seraient normalement visibles en-dehors du rectangle de ce contrôle ne "
"seront pas rendues et ne recevront pas d'entrées."

msgid ""
"Tells Godot which node it should give focus to if the user presses [kbd]Shift "
"+ Tab[/kbd] on a keyboard by default. You can change the key by editing the "
"[member ProjectSettings.input/ui_focus_prev] input action.\n"
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
"Signale à Godot à quel nœud il devrait donner le focus si l'utilisateur "
"appuie sur [kbd]Shift+Tab[/kbd] sur un clavier par défaut. Vous pouvez "
"modifier la clé en éditant l'action d'entrée [member ProjectSettings.input/"
"ui_focus_prev].\n"
"Si cette propriété n'est pas définie, Godot choisira la « meilleure "
"solution » basée sur les nœuds environnants dans l'arborescence."

msgid ""
"The node's global position, relative to the world (usually to the "
"[CanvasLayer])."
msgstr ""
"La position globale du nœud, par rapport au monde (généralement par rapport "
"au [CanvasLayer])."

msgid ""
"Controls the direction on the horizontal axis in which the control should "
"grow if its horizontal minimum size is changed to be greater than its current "
"size, as the control always has to be at least the minimum size."
msgstr ""
"Control la direction sur l'axe horizontal selon lequel le contrôle doit "
"croître si sa taille minimale horizontale est modifiée pour être supérieure à "
"sa taille actuelle, car le contrôle doit toujours avoir au moins sa taille "
"minimale."

msgid ""
"Controls the direction on the vertical axis in which the control should grow "
"if its vertical minimum size is changed to be greater than its current size, "
"as the control always has to be at least the minimum size."
msgstr ""
"Control la direction sur l'axe vertical selon lequel le contrôle doit croître "
"si sa taille minimale verticale est changée pour être supérieure à sa taille "
"actuelle, car le contrôle doit toujours avoir au moins sa taille minimale."

msgid ""
"The default cursor shape for this control. Useful for Godot plugins and "
"applications or games that use the system's mouse cursors.\n"
"[b]Note:[/b] On Linux, shapes may vary depending on the cursor theme of the "
"system."
msgstr ""
"La forme par défaut du curseur pour ce contrôle. Utile pour les greffons de "
"Godot et applications ou jeux qui utilisent les curseurs de souris du "
"système.\n"
"[b]Note :[/b] Sur Linux, les formes peuvent varier selon le thème du curseur "
"du système."

msgid ""
"Distance between the node's bottom edge and its parent control, based on "
"[member anchor_bottom].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Distance entre le bord du bas du nœud et son contrôle parent, basé sur "
"[member anchor_bottom].\n"
"Les décalages sont souvent contrôlés par un ou plusieurs nœuds [Container] "
"parents, de sorte que vous ne devriez pas les modifier manuellement si votre "
"nœud est un enfant direct d'un [Container]. Les décalages se mettent à jour "
"automatiquement lorsque vous déplacez ou redimensionnez le nœud."

msgid ""
"Distance between the node's left edge and its parent control, based on "
"[member anchor_left].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Distance entre le bord gauche du nœud et son contrôle parent, basé sur "
"[member anchor_left].\n"
"Les décalages sont souvent contrôlés par un ou plusieurs nœuds [Container] "
"parents, de sorte que vous ne devriez pas les modifier manuellement si votre "
"nœud est un enfant direct d'un [Container]. Les décalages se mettent à jour "
"automatiquement lorsque vous déplacez ou redimensionnez le nœud."

msgid ""
"Distance between the node's right edge and its parent control, based on "
"[member anchor_right].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Distance entre le bord droit du nœud et son contrôle parent, basé sur [member "
"anchor_right].\n"
"Les décalages sont souvent contrôlés par un ou plusieurs nœuds [Container] "
"parents, de sorte que vous ne devriez pas les modifier manuellement si votre "
"nœud est un enfant direct d'un [Container]. Les décalages se mettent à jour "
"automatiquement lorsque vous déplacez ou redimensionnez le nœud."

msgid ""
"Distance between the node's top edge and its parent control, based on [member "
"anchor_top].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Distance entre le bord du haut du nœud et son contrôle parent, basé sur "
"[member anchor_top].\n"
"Les décalages sont souvent contrôlés par un ou plusieurs nœuds [Container] "
"parents, de sorte que vous ne devriez pas les modifier manuellement si votre "
"nœud est un enfant direct d'un [Container]. Les décalages se mettent à jour "
"automatiquement lorsque vous déplacez ou redimensionnez le nœud."

msgid ""
"By default, the node's pivot is its top-left corner. When you change its "
"[member rotation] or [member scale], it will rotate or scale around this "
"pivot. Set this property to [member size] / 2 to pivot around the Control's "
"center."
msgstr ""
"Par défaut, le pivot du nœud est son coin supérieur gauche. Lorsque vous "
"modifiez sa [member rotation] ou son échelle [member scale], il tournera ou "
"se redimensionnera autour de ce pivot. Définir cette propriété à [member "
"size] / 2 permet de pivoter autour du centre du contrôle."

msgid ""
"Helper property to access [member rotation] in degrees instead of radians."
msgstr ""
"Propriété d'aide pour accéder à la [member rotation] en degrés au lieu de "
"radians."

msgid ""
"The [Node] which must be a parent of the focused [Control] for the shortcut "
"to be activated. If [code]null[/code], the shortcut can be activated when any "
"control is focused (a global shortcut). This allows shortcuts to be accepted "
"only when the user has a certain area of the GUI focused."
msgstr ""
"Le [Node] qui doit être un parent du [Control] ayant le focus pour que le "
"raccourci soit activé. Si [code]null[/code], le raccourci peut être activé "
"lorsque n'importe quel contrôle a le focus (un raccourci global). Cela permet "
"aux raccourcis d'être acceptés seulement lorsque l'utilisateur a le focus sur "
"une zone précise de l'interface."

msgid ""
"The size of the node's bounding rectangle, in the node's coordinate system. "
"[Container] nodes update this property automatically."
msgstr ""
"La taille du rectangle délimitant du nœud, dans le système de coordonnées du "
"nœud. Les nœuds [Container] mettent à jour cette propriété automatiquement."

msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use a combination of the [enum SizeFlags] constants to change "
"the flags. See the constants to learn what each does."
msgstr ""
"Signale au [Container] parent qu'il devrait redimensionner et placer le nœud "
"sur l'axe X. Utilisez une combinaison des constantes [enum SizeFlags] pour "
"changer les drapeaux. Regardez les constantes pour apprendre ce que chacune "
"fait."

msgid ""
"If the node and at least one of its neighbors uses the [constant SIZE_EXPAND] "
"size flag, the parent [Container] will let it take more or less space "
"depending on this property. If this node has a stretch ratio of 2 and its "
"neighbor a ratio of 1, this node will take two thirds of the available space."
msgstr ""
"Si le nœud et au moins un de ses voisins utilisent le drapeau de taille "
"[constant SIZE_EXPAND], le [Container] parent le laissera prendre plus ou "
"moins d'espace selon cette propriété. Si ce nœud a un rapport d'étirement de "
"2 et son voisin un rapport de 1, ce nœud prendra les deux tiers de l'espace "
"disponible."

msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use a combination of the [enum SizeFlags] constants to change "
"the flags. See the constants to learn what each does."
msgstr ""
"Signale au [Container] parent qu'il devrait redimensionner et placer le nœud "
"sur l'axe Y. Utilisez une combinaison des constantes [enum SizeFlags] pour "
"changer les drapeaux. Regardez les constantes pour apprendre ce que chacune "
"fait."

msgid ""
"The [Theme] resource this node and all its [Control] and [Window] children "
"use. If a child node has its own [Theme] resource set, theme items are merged "
"with child's definitions having higher priority.\n"
"[b]Note:[/b] [Window] styles will have no effect unless the window is "
"embedded."
msgstr ""
"La ressource [Theme] que ce nœud et tous ses enfants [Control] et [Window] "
"utilisent. Si un nœud enfant a son propre ensemble de ressources [Theme], les "
"éléments de thème sont fusionnés avec les définitions de l'enfant ayant une "
"priorité plus élevée.\n"
"[b]Note :[/b] Les styles de [Window] n'auront aucun effet à moins que la "
"fenêtre ne soit intégrée."

msgid "Emitted when the node gains focus."
msgstr "Émis lorsque le nœud gagne le focus."

msgid "Emitted when the node loses focus."
msgstr "Émis lorsque le nœud perd le focus."

msgid "Emitted when the node receives an [InputEvent]."
msgstr "Émis quand le nœud reçoit un [InputEvent]."

msgid "Emitted when the node's minimum size changes."
msgstr "Émis quand la taille minimale du nœud change."

msgid ""
"Emitted when the mouse cursor enters the control's (or any child control's) "
"visible area, that is not occluded behind other Controls or Windows, provided "
"its [member mouse_filter] lets the event reach it and regardless if it's "
"currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect, which Control "
"receives the signal."
msgstr ""
"Émis quand le curseur de la souris entre dans la zone visible du contrôle (ou "
"un de ses enfants), qui n'est pas masqué derrière d'autres Contrôles ou "
"Fenêtres, fourni son [member mouse_filter], laisse l’événement l'atteindre, "
"et peu importe s’il est actuellement ciblé ou non.\n"
"[b]Note:[/b] [member CanvasItem.z_index] n'affecte pas quel Contrôle reçoit "
"le signal."

msgid "Emitted when the control changes size."
msgstr "Émis lorsque le contrôle change de taille."

msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
"Émis lorsque l'un des drapeaux de taille change. Voir [member "
"size_flags_horizontal] et [member size_flags_vertical]."

msgid ""
"Emitted when the [constant NOTIFICATION_THEME_CHANGED] notification is sent."
msgstr ""
"Émis lorsque la notification [constant NOTIFICATION_THEME_CHANGED] est "
"envoyée."

msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr ""
"Le nœud ne peut récupérer le focus. À utiliser avec [member focus_mode]."

msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
"Le nœud ne reçoit le focus que pour les clics de la souris. À utiliser avec "
"[member focus_mode]."

msgid ""
"The node can grab focus only when screen reader is active. Use with [member "
"focus_mode]."
msgstr ""
"Le nœud ne reçoit le focus que lorsqu'un lecteur d'écran est actif. À "
"utiliser avec [member focus_mode]."

msgid ""
"Inherits the [member focus_behavior_recursive] from the parent control. If "
"there is no parent control, this is the same as [constant "
"FOCUS_BEHAVIOR_ENABLED]."
msgstr ""
"Hérite du [member focus_behavior_recursive] du contrôle parent. S'il n'y a "
"pas de contrôle parent, cela revient à [constant FOCUS_BEHAVIOR_ENABLED]."

msgid ""
"Prevents the control from getting focused. [method "
"get_focus_mode_with_override] will return [constant FOCUS_NONE]."
msgstr ""
"Empêche au contrôle d'obtenir le focus. [method get_focus_mode_with_override] "
"renverra [constant FOCUS_NONE]."

msgid ""
"Allows the control to be focused, depending on the [member focus_mode]. This "
"can be used to ignore the parent's [member focus_behavior_recursive]. [method "
"get_focus_mode_with_override] will return the [member focus_mode]."
msgstr ""
"Permet au contrôle d'obtenir le focus, en fonction de [member focus_mode]. "
"Cela peut être utilisé pour ignorer le [member focus_behavior_recursive] du "
"parent. [method get_focus_mode_with_override] renverra le [member focus_mode]."

msgid ""
"Sent when the mouse cursor enters the control's (or any child control's) "
"visible area, that is not occluded behind other Controls or Windows, provided "
"its [member mouse_filter] lets the event reach it and regardless if it's "
"currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_ENTER_SELF]."
msgstr ""
"Envoyé quand le curseur de la souris entre dans la zone visible du contrôle "
"(ou un de ses enfants), qui n'est pas masqué derrière d'autres Contrôles ou "
"Fenêtres, fourni son [member mouse_filter], laisse l’événement l'atteindre, "
"et peu importe s’il est actuellement ciblé ou non.\n"
"[b]Note:[/b] [member CanvasItem.z_index] n'affecte pas quel Contrôle reçoit "
"la notification.\n"
"Voir aussi [constant NOTIFICATION_MOUSE_ENTER_SELF]."

msgid ""
"Sent when the mouse cursor leaves the control's (and all child control's) "
"visible area, that is not occluded behind other Controls or Windows, provided "
"its [member mouse_filter] lets the event reach it and regardless if it's "
"currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_EXIT_SELF]."
msgstr ""
"Envoyé quand le curseur de la souris sort de la zone visible du contrôle (ou "
"un de ses enfants), qui n'est pas masqué derrière d'autres Contrôles ou "
"Fenêtres, fourni son [member mouse_filter], laisse l’événement l'atteindre, "
"et peu importe s’il est actuellement ciblé ou non.\n"
"[b]Note:[/b] [member CanvasItem.z_index] n'affecte pas quel Contrôle reçoit "
"la notification.\n"
"Voir aussi [constant NOTIFICATION_MOUSE_EXIT_SELF]."

msgid "The reason this notification is sent may change in the future."
msgstr ""
"La raison pour laquelle cette notification est envoyée peut changer à "
"l'avenir."

msgid ""
"Sent when the mouse cursor enters the control's visible area, that is not "
"occluded behind other Controls or Windows, provided its [member mouse_filter] "
"lets the event reach it and regardless if it's currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_ENTER]."
msgstr ""
"Envoyé quand le curseur de la souris entre dans la zone visible du contrôle, "
"qui n'est pas masqué derrière d'autres Contrôles ou Fenêtres, fourni son "
"[member mouse_filter], laisse l’événement l'atteindre, et peu importe s’il "
"est actuellement ciblé ou non.\n"
"[b]Note:[/b] [member CanvasItem.z_index] n'affecte pas quel Contrôle reçoit "
"la notification.\n"
"Voir aussi [constant NOTIFICATION_MOUSE_ENTER]."

msgid ""
"Sent when the mouse cursor leaves the control's visible area, that is not "
"occluded behind other Controls or Windows, provided its [member mouse_filter] "
"lets the event reach it and regardless if it's currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_EXIT]."
msgstr ""
"Envoyé quand le curseur de la souris sort de la zone visible du contrôle, qui "
"n'est pas masqué derrière d'autres Contrôles ou Fenêtres, fourni son [member "
"mouse_filter], laisse l’événement l'atteindre, et peu importe s’il est "
"actuellement ciblé ou non.\n"
"[b]Note:[/b] [member CanvasItem.z_index] n'affecte pas quel Contrôle reçoit "
"la notification.\n"
"Voir aussi [constant NOTIFICATION_MOUSE_EXIT]."

msgid "Sent when the node grabs focus."
msgstr "Envoyé lorsque le nœud reçoit le focus."

msgid "Sent when the node loses focus."
msgstr "Envoyé lorsque le nœud perd le focus."

msgid ""
"Sent when the node needs to refresh its theme items. This happens in one of "
"the following cases:\n"
"- The [member theme] property is changed on this node or any of its "
"ancestors.\n"
"- The [member theme_type_variation] property is changed on this node.\n"
"- One of the node's theme property overrides is changed.\n"
"- The node enters the scene tree.\n"
"[b]Note:[/b] As an optimization, this notification won't be sent from changes "
"that occur while this node is outside of the scene tree. Instead, all of the "
"theme item updates can be applied at once when the node enters the scene "
"tree.\n"
"[b]Note:[/b] This notification is received alongside [constant "
"Node.NOTIFICATION_ENTER_TREE], so if you are instantiating a scene, the child "
"nodes will not be initialized yet. You can use it to setup theming for this "
"node, child nodes created from script, or if you want to access child nodes "
"added in the editor, make sure the node is ready using [method "
"Node.is_node_ready].\n"
"[codeblock]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_THEME_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Wait until ready signal.\n"
"\t\t$Label.add_theme_color_override(\"font_color\", Color.YELLOW)\n"
"[/codeblock]"
msgstr ""
"Envoyé si le nœud a besoin de rafraîchir ses éléments de thème. Cela arrive "
"dans l'un des cas suivants :\n"
"- La propriété [member theme] est changée sur ce nœud ou sur un de ses "
"ancêtres.\n"
"- La propriété [member theme_type_variation] est changée sur ce nœud.\n"
"- Une des redéfinitions d'une des propriétés du thème du nœud est changée.\n"
"- Le nœud entre dans l'arborescence de la scène.\n"
"[b]Note :[/b] Pour plus d'optimisation, cette notification ne sera pas "
"envoyée pour les changements qui se passent pendant que ce nœud est en dehors "
"de l'arborescence de la scène. À la place, toues les mises à jour d'éléments "
"de thème peuvent être appliqués en une fois dès que le nœud entre dans la "
"hiérarchie de la scène.\n"
"[b]Note :[/b] Cette notification est reçue aux côtés de [constant "
"Node.NOTIFICATION_ENTER_TREE], donc si vous instanciez une scène, les nœuds "
"enfants ne seront pas encore initialisés. Vous pouvez l'utiliser pour "
"configurer les thèmes pour ce nœud, les nœuds d'enfants créés à partir de "
"script, ou si vous voulez accéder aux nœuds enfants ajoutés dans l'éditeur, "
"assurez-vous que le nœud est prêt en utilisant [method Node.is_node_ready].\n"
"[codeblock]\n"
"func _notification(quoi):\n"
"\tif quoi == NOTIFICATION_THEME_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Attendre jusqu'au signal ready (prêt)\n"
"\t\t$Label.add_theme_color_override(\"font_color\", Color.YELLOW)\n"
"[/codeblock]"

msgid ""
"Sent when the control layout direction is changed from LTR or RTL or vice "
"versa. This notification is propagated to child Control nodes as result of a "
"change to [member layout_direction]."
msgstr ""
"Envoyée lorsque la direction de mise en page du contrôle est changée de LTR "
"ou RTL ou vice versa. Cette notification est propagée aux nœuds Control "
"enfants suite à une modification de [member layout_direction]."

msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
"Affiche le curseur système de la souris quand l'utilisateur survole le nœud. "
"À utiliser avec [member mouse_default_cursor_shape]."

msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
"Affiche le curseur de la souris en forme de I lorsque l'utilisateur survole "
"le nœud. Le pointeur en I a une forme semblable à un \"I\". Il signale à "
"l'utilisateur qu'il peut insérer ou surligner du texte."

msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr "Afficher le curseur de la main qui pointe quand il passe sur ce nœud."

msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
"Affiche le curseur en croix du système quand l'utilisateur survole ce nœud."

msgid ""
"Show the system's wait mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
"Affiche le curseur d'attente du système quand l'utilisateur survole ce nœud. "
"Souvent un sablier."

msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"arrow with a small hourglass."
msgstr ""
"Affiche le curseur d'occupation du système quand l'utilisateur survole ce "
"nœud. Souvent une flèche avec un petit sablier."

msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
"Affiche le curseur de la souris de déposé-glissé, souvent un poing fermé ou "
"un symbole de croix, lorsque l'utilisateur survole le nœud. Ça précise à "
"l'utilisateur qu'il déplace actuellement un objet, comme un nœud dans le dock "
"de Scene."

msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
"Affiche le curseur de la souris lorsque l'utilisateur survole le nœud. Ça "
"peut être une main ouverte. Ça précise à l'utilisateur qu'il peut déposer un "
"élément qu'il était en traint de déplacer, comme un nœud dans le dock de "
"Scene."

msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. Often "
"a crossed circle."
msgstr ""
"Affiche le curseur de souris d'interdition système lorsque l'utilisateur "
"survole le nœud. C'est souvent un cercle barré."

msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the node. "
"A double-headed vertical arrow. It tells the user they can resize the window "
"or the panel vertically."
msgstr ""
"Afficher le curseur de souris de redimensionnement vertical lorsque "
"l'utilisateur survole le nœud. Une flèche verticale à double tête. Ça précise "
"à l'utilisateur qu'il peut redimensionner la fenêtre ou le panneau "
"verticalement."

msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize the "
"window or the panel horizontally."
msgstr ""
"Affiche le curseur de la souris de redimensionnement horizontal lorsque "
"l'utilisateur survole le nœud. Une flèche horizontale à double tête. Ça "
"précise à l'utilisateur qu'il peut redimensionner la fenêtre ou le panneau "
"horizontalement."

msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the top "
"right. It tells the user they can resize the window or the panel both "
"horizontally and vertically."
msgstr ""
"Affiche le curseur de la souris de redimensionnement de la fenêtre lorsque "
"l'utilisateur survole le nœud. Le curseur est une flèche à double tête qui va "
"du bas à gauche au sommet à droite. Ça précise à l'utilisateur qu'il peut "
"redimensionner la fenêtre ou le panneau à la fois horizontalement et "
"verticalement."

msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the bottom "
"right, the opposite of [constant CURSOR_BDIAGSIZE]. It tells the user they "
"can resize the window or the panel both horizontally and vertically."
msgstr ""
"Affiche le curseur de la souris de redimensionnement de la fenêtre lorsque "
"l'utilisateur survole le nœud. Le curseur est une flèche à double tête qui va "
"du haut à gauche au bas à droite, le contraire de [constant "
"CURSOR_BDIAGSIZE]. Ça précise à l'utilisateur qu'il peut redimensionner la "
"fenêtre ou le panneau à la fois horizontalement et verticalement."

msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows 2 "
"double-headed arrows at a 90 degree angle. It tells the user they can move a "
"UI element freely."
msgstr ""
"Affiche le curseur de la souris de déplacement lorsque l'utilisateur survole "
"le nœud. Il montre 2 flèches doubles à un angle de 90 degrés. Ça précise à "
"l'utilisateur qu'il peut déplacer un élément d'interface librement."

msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
"Affiche le curseur système de la souris avec un séparateur vertical lorsque "
"l'utilisateur survole le nœud. Sur Windows, il est identique à [constant "
"CURSOR_VSIZE]."

msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
"Affiche le curseur système de la souris avec un séparateur horizontal lorsque "
"l'utilisateur survole le nœud. Sur Windows, il est identique à [constant "
"CURSOR_HSIZE]."

msgid ""
"Show the system's help mouse cursor when the user hovers the node, a question "
"mark."
msgstr ""
"Affiche le curseur système de la souris pour l'aide lorsque l'utilisateur "
"survole le nœud, avec un point d'interrogation."

msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres jusqu'au coin gauche supérieur du rectangle "
"délimitant du contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres au coin droit du rectangle délimitant du "
"contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres au coin bas-gauche du rectangle délimitant du "
"contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres au coin bas-droit du rectangle délimitant du "
"contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres au centre du bord gauche du rectangle "
"délimitant du contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres au centre du bord supérieur du rectangle "
"délimitant du contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres au centre du bord droit du rectangle délimitant "
"du contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres au centre du bord du bas du rectangle "
"délimitant du contrôle parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
"Magnétise les 4 ancres au centre du rectangle délimitant du contrôle parent. "
"À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left offset "
"becomes relative to the bottom left corner, the bottom offset relative to the "
"bottom edge, and the right offset relative to the bottom right corner of the "
"node's parent. Use with [method set_anchors_preset]."
msgstr ""
"Magnétise les 4 ancres au bord inférieur du contrôle parent. La marge gauche "
"devient alors relative au coin inférieur gauche, à la marge inférieure "
"relative au bord inférieur, et à la marge droite relative au coin inférieur "
"droit du nœud parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
"Magnétise les 4 ancres sur une ligne verticale qui coupe le contrôle parent "
"en deux. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
"Magnétise les 4 ancres sur une ligne horizontale qui coupe le contrôle parent "
"en deux. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all 4 "
"offsets to 0 after you applied this preset and the [Control] will fit its "
"parent control. Use with [method set_anchors_preset]."
msgstr ""
"Magnétise toutes les 4 ancres aux angles respectifs du contrôle parent. "
"Définissez les 4 marges à 0 après avoir appliqué ce préréglage et le "
"[Control] s'adaptera à son contrôle parent. Utilisez avec [method "
"set_anchors_preset]."

msgid "The control will be resized to its minimum size."
msgstr "Le contrôle sera redimensionné à sa taille minimale."

msgid "The control's width will not change."
msgstr "La largeur du contrôle ne changera pas."

msgid "The control's height will not change."
msgstr "La hauteur du contrôle ne changera pas."

msgid "The control's size will not change."
msgstr "La taille du contrôle ne changera pas."

msgid ""
"Tells the parent [Container] to let this node take all the available space on "
"the axis you flag. If multiple neighboring nodes are set to expand, they'll "
"share the space based on their stretch ratio. See [member "
"size_flags_stretch_ratio]. Use with [member size_flags_horizontal] and "
"[member size_flags_vertical]."
msgstr ""
"Signale au [Container] parent de laisser ce nœud prendre tout l'espace "
"disponible sur l'axe spécifié. Si plusieurs nœuds voisins sont prêts à "
"s'étendre, ils partagent l'espace en fonction de leur rapport d'étirement. "
"Voir [member size_flags_stretch_ratio]. À utiliser avec [member "
"size_flags_horizontal] et [member size_flags_vertical]."

msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
"Le contrôle va croître à gauche ou en haut pour compenser si sa taille "
"minimale est plus grande que sa taille actuelle selon l'axe correspondant."

msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
"Le contrôle va croître à droite ou en bas pour compenser si sa taille "
"minimale est plus grande que sa taille actuelle selon l'axe correspondant."

msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
"Le contrôle va croître dans les deux directions de façon égale pour compenser "
"si sa taille minimale est plus grande que sa taille actuelle."

msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
"variables, like [member anchor_left]. To change all 4 anchors at once, use "
"[method set_anchors_preset]."
msgstr ""
"Magnétise l'un des 4 côtés d'ancrage à l'origine de l'ancrage [code]Rect[/"
"code], en haut à gauche. Utilisez-le avec l'une des variables membres "
"[code]anchor_*[/code], comme [member anchor_left]. Pour modifier les 4 ancres "
"à la fois, utilisez [method set_anchors_preset]."

msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/code], "
"in the bottom right. Use it with one of the [code]anchor_*[/code] member "
"variables, like [member anchor_left]. To change all 4 anchors at once, use "
"[method set_anchors_preset]."
msgstr ""
"Magnétise l'un des 4 côtés d'ancrage à l'extrémité de l'extrémité [code]Rect[/"
"code], en bas à droite. Utilisez-le avec l'une des variables membres "
"[code]anchor_*[/code], comme [member anchor_left]. Pour modifier les 4 ancres "
"à la fois, utilisez [method set_anchors_preset]."

msgid "Left-to-right layout direction."
msgstr "Direction de disposition de gauche à droite."

msgid "Right-to-left layout direction."
msgstr "Disposition de direction de droite à gauche."

msgid "Represents the size of the [enum LayoutDirection] enum."
msgstr "Représente la taille de l'énumération [enum LayoutDirection]."

msgid "Use [constant LAYOUT_DIRECTION_APPLICATION_LOCALE] instead."
msgstr "Utilisez [constant LAYOUT_DIRECTION_APPLICATION_LOCALE] à la place."

msgid "Text writing direction is the same as layout direction."
msgstr ""
"La direction d'écriture du texte est la même que la direction de mise en page."

msgid ""
"Automatic text writing direction, determined from the current locale and text "
"content."
msgstr ""
"Direction d'écriture de texte automatique, déterminée à partir de la langue "
"actuelle et du contenu du texte."

msgid "Left-to-right text writing direction."
msgstr "Direction d'écriture de texte de gauche à droite."

msgid "Right-to-left text writing direction."
msgstr "Direction d'écriture de texte de droite à gauche."

msgid ""
"Returns [code]true[/code] if the additive option is enabled in the setting at "
"[param index]."
msgstr ""
"Renvoie [code]true[/code] si l'option Additive est activée dans le paramètre "
"à l'index [param index]."

msgid ""
"Returns [code]true[/code] if the relative option is enabled in the setting at "
"[param index]."
msgstr ""
"Renvoie [code]true[/code] si l'option Relative est activée dans le paramètre "
"à l'index [param index]."

msgid ""
"Sets additive option in the setting at [param index] to [param enabled]. This "
"mainly affects the process of applying transform to the [method "
"BoneConstraint3D.set_apply_bone].\n"
"If sets [param enabled] to [code]true[/code], the processed transform is "
"added to the pose of the current apply bone.\n"
"If sets [param enabled] to [code]false[/code], the pose of the current apply "
"bone is replaced with the processed transform. However, if set [method "
"set_relative] to [code]true[/code], the transform is relative to rest."
msgstr ""
"Définit l'option Additive dans le paramètre à l'index [param index] à la "
"valeur [param enabled]. Cela affecte principalement le processus "
"d'application de la transformation à l'os de [method "
"BoneConstraint3D.set_apply_bone].\n"
"Si [param enabled] est défini à [code]true[/code], la transformation traitée "
"est ajoutée à la pose de l'os appliqué actuel.\n"
"Si [param enabled] est défini à [code]false[/code], la pose de l'os appliqué "
"actuel est remplacée par la transformation traitée. Toutefois, si [method "
"set_relative] est défini à [code]true[/code], la transformation est relative "
"au repos."

msgid "Sets the axis of the remapping source transform."
msgstr "Définit l'axe de la transformation source de la ré-association."

msgid "Sets the maximum value of the remapping source range."
msgstr "Définit la valeur maximale de l'intervalle source de la ré-association."

msgid "Sets the minimum value of the remapping source range."
msgstr "Définit la valeur minimale de l'intervalle source de la ré-association."

msgid "Sets the operation of the remapping source transform."
msgstr "Définit l'opération de la transformation source de la ré-association."

msgid "Convert with position. Transfer the difference."
msgstr "Convertir avec la position. Transférer la différence."

msgid "Convert with rotation. The angle is the roll for the specified axis."
msgstr "Convertir avec la rotation. L'angle est le roulis de l'axe spécifié."

msgid "Convert with scale. Transfers the ratio, not the difference."
msgstr "Convertir avec l'échelle. Transférer le facteur, pas la différence."

msgid "A 2D convex polygon shape used for physics collision."
msgstr ""
"Une forme de polygone convexe 2D utilisée pour les collisions physiques."

msgid ""
"A 2D convex polygon shape, intended for use in physics. Used internally in "
"[CollisionPolygon2D] when it's in [constant CollisionPolygon2D.BUILD_SOLIDS] "
"mode.\n"
"[ConvexPolygonShape2D] is [i]solid[/i], which means it detects collisions "
"from objects that are fully inside it, unlike [ConcavePolygonShape2D] which "
"is hollow. This makes it more suitable for both detection and physics.\n"
"[b]Convex decomposition:[/b] A concave polygon can be split up into several "
"convex polygons. This allows dynamic physics bodies to have complex concave "
"collisions (at a performance cost) and can be achieved by using several "
"[ConvexPolygonShape2D] nodes or by using the [CollisionPolygon2D] node in "
"[constant CollisionPolygon2D.BUILD_SOLIDS] mode. To generate a collision "
"polygon from a sprite, select the [Sprite2D] node, go to the [b]Sprite2D[/b] "
"menu that appears above the viewport, and choose [b]Create Polygon2D Sibling[/"
"b].\n"
"[b]Performance:[/b] [ConvexPolygonShape2D] is faster to check collisions "
"against compared to [ConcavePolygonShape2D], but it is slower than primitive "
"collision shapes such as [CircleShape2D] and [RectangleShape2D]. Its use "
"should generally be limited to medium-sized objects that cannot have their "
"collision accurately represented by primitive shapes."
msgstr ""
"Une forme de polygone convexe 2D, destinée à être utilisée en physique. "
"Utilisé en interne dans [CollisionPolygon2D] lorsque il est en mode [constant "
"CollisionPolygon2D.BUILD_SOLIDS].\n"
"[ConvexPolygonShape2D] est [i]solide[/i], ce qui signifie qu'elle détecte les "
"collisions d’objets qui sont entièrement dans celle-ci, contrairement à "
"[ConcavePolygonShape2D] qui est creuse. Cela la rend plus approprié pour la "
"détection et la physique.\n"
"[b]Décomposition convexe :[/b] Un polygone concave peut être divisé en "
"plusieurs polygones convexes. Cela permet aux corps physiques dynamiques "
"d'avoir des collisions concaves complexes (à un coût de performance) et peut "
"être réalisé en utilisant plusieurs nœuds [ConvexPolygonShape2D] ou en "
"utilisant le nœud [CollisionPolygon2D] en mode [constant "
"CollisionPolygon2D.BUILD_SOLIDS]. Pour générer un polygone de collision à "
"partir d'un sprite, sélectionnez le nœud [Sprite2D], allez dans le menu "
"[b]Sprite2D[/b] qui apparaît au-dessus de la fenêtre, et choisissez [b]Créer "
"Polygon2D frère[/b].\n"
"[b]Performance :[/b] [ConvexPolygonShape2D] est plus rapide pour vérifier les "
"collisions comparé à [ConcavePolygonShape2D], mais il est plus lent que les "
"formes de collision primitives telles que [CircleShape2D] et "
"[RectangleShape2D]. Son utilisation devrait généralement être limitée à des "
"objets de taille moyenne qui ne peuvent pas avoir leur collision correctement "
"représentée par des formes primitives."

msgid ""
"Based on the set of points provided, this assigns the [member points] "
"property using the convex hull algorithm, removing all unneeded points. See "
"[method Geometry2D.convex_hull] for details."
msgstr ""
"Selon l'ensemble des points fournis, cela assigne la propriété [member "
"points] en utilisant l'algorithme d'enveloppe convexe, enlevant tous les "
"points inutiles. Voir [method Geometry2D.convex_hull] pour plus de détails."

msgid ""
"The polygon's list of vertices that form a convex hull. Can be in either "
"clockwise or counterclockwise order.\n"
"[b]Warning:[/b] Only set this property to a list of points that actually form "
"a convex hull. Use [method set_point_cloud] to generate the convex hull of an "
"arbitrary set of points."
msgstr ""
"La liste des sommets du polygone qui forment une enveloppe convexe. Peut être "
"dans le sens horaire ou dans le sens anti-horaire.\n"
"[b]Attention :[/b] Définissez seulement cette propriété à une liste de points "
"qui forment une enveloppe convexe. Utilisez [method set_point_cloud] pour "
"générer l'enveloppe convexe d'un ensemble arbitraire de points."

msgid "A 3D convex polyhedron shape used for physics collision."
msgstr ""
"Une forme de polyèdre convexe 3D utilisée pour les collisions physiques."

msgid "The list of 3D points forming the convex polygon shape."
msgstr "La liste des points 3D formant le polygone convexe."

msgid ""
"A [SkeletonModifier3D] that apply transform to the bone which copied from "
"reference."
msgstr ""
"Un [SkeletonModifier3D] qui applique une transformation à l'os, copiée de la "
"référence."

msgid ""
"Returns [code]true[/code] if the enable flags has the flag for the X-axis in "
"the setting at [param index]. See also [method set_axis_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux d'activation ont le drapeau de "
"l'axe X dans le paramètre à l'index [param index]. Voir aussi [method "
"set_axis_flags]."

msgid ""
"Returns [code]true[/code] if the invert flags has the flag for the X-axis in "
"the setting at [param index]. See also [method set_invert_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux d'inversion ont le drapeau pour "
"l'axe X dans le paramètre à l'index [param index]. Voir aussi [method "
"set_invert_flags]."

msgid ""
"Returns [code]true[/code] if the enable flags has the flag for the Y-axis in "
"the setting at [param index]. See also [method set_axis_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux d'activation ont le drapeau de "
"l'axe Y dans le paramètre à l'index [param index]. Voir aussi [method "
"set_axis_flags]."

msgid ""
"Returns [code]true[/code] if the invert flags has the flag for the Y-axis in "
"the setting at [param index]. See also [method set_invert_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux d'inversion ont le drapeau pour "
"l'axe Y dans le paramètre à l'index [param index]. Voir aussi [method "
"set_invert_flags]."

msgid ""
"Returns [code]true[/code] if the enable flags has the flag for the Z-axis in "
"the setting at [param index]. See also [method set_axis_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux d'activation ont le drapeau de "
"l'axe Z dans le paramètre à l'index [param index]. Voir aussi [method "
"set_axis_flags]."

msgid ""
"Returns [code]true[/code] if the invert flags has the flag for the Z-axis in "
"the setting at [param index]. See also [method set_invert_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux d'inversion ont le drapeau pour "
"l'axe Z dans le paramètre à l'index [param index]. Voir aussi [method "
"set_invert_flags]."

msgid ""
"Returns [code]true[/code] if the copy flags has the flag for the position in "
"the setting at [param index]. See also [method set_copy_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux de copie ont le drapeau pour la "
"position dans le paramètre à l'index [param index]. Voir aussi [method "
"set_copy_flags]."

msgid ""
"Returns [code]true[/code] if the copy flags has the flag for the rotation in "
"the setting at [param index]. See also [method set_copy_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux de copie ont le drapeau pour la "
"rotation dans le paramètre à l'index [param index]. Voir aussi [method "
"set_copy_flags]."

msgid ""
"Returns [code]true[/code] if the copy flags has the flag for the scale in the "
"setting at [param index]. See also [method set_copy_flags]."
msgstr ""
"Renvoie [code]true[/code] si les drapeaux de copie ont le drapeau pour "
"l'échelle dans le paramètre à l'index [param index]. Voir aussi [method "
"set_copy_flags]."

msgid "Sets the flags to copy axes. If the flag is valid, the axis is copied."
msgstr ""
"Définit les drapeaux pour copier les axes. Si le drapeau est valide, l'axe "
"est copié."

msgid "If sets [param enabled] to [code]true[/code], the X-axis will be copied."
msgstr "Si [param enabled] vaut [code]true[/code], l'axe X sera copié."

msgid ""
"If sets [param enabled] to [code]true[/code], the X-axis will be inverted."
msgstr "Si [param enabled] vaut [code]true[/code], l'axe X sera inversé."

msgid "If sets [param enabled] to [code]true[/code], the Y-axis will be copied."
msgstr "Si [param enabled] vaut [code]true[/code], l'axe Y sera copié."

msgid ""
"If sets [param enabled] to [code]true[/code], the Y-axis will be inverted."
msgstr "Si [param enabled] vaut [code]true[/code], l'axe Y sera inversé."

msgid "If sets [param enabled] to [code]true[/code], the Z-axis will be copied."
msgstr "Si [param enabled] vaut [code]true[/code], l'axe Z sera copié."

msgid ""
"If sets [param enabled] to [code]true[/code], the Z-axis will be inverted."
msgstr "Si [param enabled] vaut [code]true[/code], l'axe Z sera inversé."

msgid ""
"Sets the flags to process the transform operations. If the flag is valid, the "
"transform operation is processed.\n"
"[b]Note:[/b] If the rotation is valid for only one axis, it respects the roll "
"of the valid axis. If the rotation is valid for two axes, it discards the "
"roll of the invalid axis."
msgstr ""
"Définit les drapeaux pour traiter les opérations de transformation. Si le "
"drapeau est valide, l'opération de transformation est traitée.\n"
"[b]Note :[/b] Si la rotation est valable pour seulement un axe, elle respecte "
"le roulis de l'axe valide. Si la rotation est valable pour deux axes, elle "
"écarte le roulis de l'axe invalide."

msgid ""
"If sets [param enabled] to [code]true[/code], the position will be copied."
msgstr ""
"Si [param enabled] est défini à [code]true[/code], la position sera copiée."

msgid ""
"If sets [param enabled] to [code]true[/code], the rotation will be copied."
msgstr ""
"Si [param enabled] est défini à [code]true[/code], la rotation sera copiée."

msgid "If sets [param enabled] to [code]true[/code], the scale will be copied."
msgstr ""
"Si [param enabled] est défini à [code]true[/code], l'échelle sera copiée."

msgid ""
"Sets the flags to inverte axes. If the flag is valid, the axis is copied.\n"
"[b]Note:[/b] An inverted scale means an inverse number, not a negative scale. "
"For example, inverting [code]2.0[/code] means [code]0.5[/code].\n"
"[b]Note:[/b] An inverted rotation flips the elements of the quaternion. For "
"example, a two-axis inversion will flip the roll of each axis, and a three-"
"axis inversion will flip the final orientation. However, be aware that "
"flipping only one axis may cause unintended rotation by the unflipped axes, "
"due to the characteristics of the quaternion."
msgstr ""
"Définit les drapeaux pour inverser les axes. Si le drapeau est valide, l'axe "
"est copié.\n"
"[b]Note :[/b] Une échelle inversée signifie un nombre inverse, pas une "
"échelle négative. Par exemple, inverser [code]2.0[/code] signifie [code]0.5[/"
"code].\n"
"[b]Note :[/b] Une rotation inversée retourne les éléments du quaternion. Par "
"exemple, une inversion à deux axes renversera le roulis de chaque axe, et une "
"inversion à trois axes renversera l'orientation finale. Cependant, soyez "
"conscients que l'inversion d'un seul axe peut provoquer une rotation non "
"désirée sur les axes non inversés, en raison des caractéristiques du "
"quaternion."

msgid "If set, allows to copy the position."
msgstr "Si défini, permet de copier la position."

msgid "If set, allows to copy the rotation."
msgstr "Si défini, permet de copier la rotation."

msgid "If set, allows to copy the scale."
msgstr "Si défini, permet de copier l'échelle."

msgid "If set, allows to copy the position/rotation/scale."
msgstr "Si défini, permet de copier la position/rotation/échelle."

msgid "If set, allows to process the X-axis."
msgstr "Si défini, permet de traiter l'axe X."

msgid "If set, allows to process the Y-axis."
msgstr "Si défini, permet de traiter l'axe Y."

msgid "If set, allows to process the Z-axis."
msgstr "Si défini, permet de traiter l'axe Z."

msgid "If set, allows to process the all axes."
msgstr "Si défini, permet de traiter tous les axes."

msgid "A CPU-based 2D particle emitter."
msgstr "Un émetteur de particules 2D basé sur le CPU."

msgid ""
"CPU-based 2D particle node used to create a variety of particle systems and "
"effects.\n"
"See also [GPUParticles2D], which provides the same functionality with "
"hardware acceleration, but may not run on older devices."
msgstr ""
"Nœud de particules 2D calculées par le CPU pour créer une variété de systèmes "
"et d'effets de particules.\n"
"Voir aussi [GPUParticles2D], qui fournit la même fonctionnalité en utilisant "
"l'accélération matérielle, mais peut ne pas fonctionner sur des appareils "
"plus anciens."

msgid "Particle systems (2D)"
msgstr "Système de particules (2D)"

msgid ""
"Sets this node's properties to match a given [GPUParticles2D] node with an "
"assigned [ParticleProcessMaterial]."
msgstr ""
"Définit les propriétés de ce nœud pour correspondre au nœud [GPUParticles2D] "
"donné avec un [ParticleProcessMaterial] assigné."

msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
msgstr "Renvoie la [Curve] du paramètre spécifié par [enum Parameter]."

msgid "Returns the maximum value range for the given parameter."
msgstr "Renvoie la plage de valeur maximale pour le paramètre donné."

msgid "Returns the minimum value range for the given parameter."
msgstr "Renvoie la plage de valeur minimale pour le paramètre donné."

msgid "Returns the enabled state of the given particle flag."
msgstr "Renvoie l'état activé du drapeau de particules donné."

msgid ""
"Requests the particles to process for extra process time during a single "
"frame.\n"
"Useful for particle playback, if used in combination with [member "
"use_fixed_seed] or by calling [method restart] with parameter "
"[code]keep_seed[/code] set to [code]true[/code]."
msgstr ""
"Demande aux particules de traiter pour un temps de processus supplémentaire "
"pendant une seule trame.\n"
"Utile pour la lecture de particules, si utilisé en combinaison avec [member "
"use_fixed_seed] ou en appelant [method restart] avec le paramètre "
"[code]keep_seed[/code] défini à [code]true[/code]."

msgid ""
"Restarts the particle emitter.\n"
"If [param keep_seed] is [code]true[/code], the current random seed will be "
"preserved. Useful for seeking and playback."
msgstr ""
"Redémarre l'émetteur de particules.\n"
"Si [param keep_seed] vaut [code]true[/code], la graine aléatoire actuelle "
"sera conservée. Utile pour l'avancement et la lecture."

msgid ""
"Sets the [Curve] of the parameter specified by [enum Parameter]. Should be a "
"unit [Curve]."
msgstr ""
"Définit la [Curve] du paramètre spécifié par [enum Parameter]. Devrait être "
"une [Curve] unitaire."

msgid "Sets the maximum value for the given parameter."
msgstr "Définit la valeur maximale pour le paramètre donné."

msgid "Sets the minimum value for the given parameter."
msgstr "Définit la valeur minimale pour le paramètre donné."

msgid "Enables or disables the given particle flag."
msgstr "Active ou désactive le drapeau de particule donné."

msgid "Number of particles emitted in one emission cycle."
msgstr "Nombre de particules émises dans un cycle d'émission."

msgid ""
"Each particle's rotation will be animated along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"La rotation de chaque particule sera animée le long de cette [Curve]. Devrait "
"être une [Curve] unitaire."

msgid "Maximum initial rotation applied to each particle, in degrees."
msgstr "Rotation initiale maximale appliquée à chaque particule, en degrés."

msgid "Minimum equivalent of [member angle_max]."
msgstr "Équivalent pour le minimum de [member angle_max]."

msgid ""
"Each particle's angular velocity will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"La vélocité angulaire de chaque particule variera le long de cette [Curve]. "
"Devrait être une [Curve] unitaire."

msgid ""
"Maximum initial angular velocity (rotation speed) applied to each particle in "
"[i]degrees[/i] per second."
msgstr ""
"Vélocité maximale angulaire initiale (vitesse de rotation) appliquée à chaque "
"particule en [i]degrés[/i] par seconde."

msgid "Minimum equivalent of [member angular_velocity_max]."
msgstr "Équivalent pour le minimum de [member angular_velocity_max]."

msgid ""
"Each particle's animation offset will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Le décalage d'animation de chaque particule variera le long de cette [Curve]. "
"Devrait être une [Curve] unitaire."

msgid ""
"Maximum animation offset that corresponds to frame index in the texture. "
"[code]0[/code] is the first frame, [code]1[/code] is the last one. See "
"[member CanvasItemMaterial.particles_animation]."
msgstr ""
"Décalage d'animation maximum qui correspond à l'index de trame dans la "
"texture. [code]0[/code] est la première trame, [code]1[/code] est la "
"dernière. Voir [member CanvasItemMaterial.particles_animation]."

msgid "Minimum equivalent of [member anim_offset_max]."
msgstr "Équivalent pour le minimum de [member anim_offset_max]."

msgid ""
"Each particle's animation speed will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"La vitesse d'animation de chaque particule variera le long de cette [Curve]. "
"Devrait être une [Curve] unitaire."

msgid ""
"Maximum particle animation speed. Animation speed of [code]1[/code] means "
"that the particles will make full [code]0[/code] to [code]1[/code] offset "
"cycle during lifetime, [code]2[/code] means [code]2[/code] cycles etc.\n"
"With animation speed greater than [code]1[/code], remember to enable [member "
"CanvasItemMaterial.particles_anim_loop] property if you want the animation to "
"repeat."
msgstr ""
"Vitesse maximale d'animation des particules. Une vitesse d'animation de "
"[code]1[/code] signifie que les particules feront un cycle complet de "
"[code]0[/code] à [code]1[/code] pendant leur durée de vie, [code]2[/code] "
"signifie [code] 2[/code] cycles, etc...\n"
"Avec une vitesse d'animation supérieure à [code]1[/code], rappelez-vous pour "
"activer la propriété [member CanvasItemMaterial.particles_anim_loop] si vous "
"voulez que l'animation se répète."

msgid "Minimum equivalent of [member anim_speed_max]."
msgstr "Équivalent pour le minimum de [member anim_speed_max]."

msgid ""
"Each particle's initial color. If [member texture] is defined, it will be "
"multiplied by this color."
msgstr ""
"La couleur initiale de chaque particule. Si [member texture] est défini, les "
"particules sont multipliées par cette couleur."

msgid ""
"Each particle's initial color will vary along this [Gradient] (multiplied "
"with [member color])."
msgstr ""
"Chaque couleur initiale de particule variera selon ce [Gradient] (multiplié "
"avec [member color])."

msgid ""
"Each particle's color will vary along this [Gradient] over its lifetime "
"(multiplied with [member color])."
msgstr ""
"Chaque couleur de particule variera selon ce [Gradient] sur sa durée de vie "
"(multiplié avec [member color])."

msgid "Damping will vary along this [Curve]. Should be a unit [Curve]."
msgstr ""
"L'amortissement variera le long de cette [Curve]. Devrait être une [Curve] "
"unitaire."

msgid ""
"The maximum rate at which particles lose velocity. For example value of "
"[code]100[/code] means that the particle will go from [code]100[/code] "
"velocity to [code]0[/code] in [code]1[/code] second."
msgstr ""
"La vitesse maximale à laquelle les particules perdent leur vitesse. Par "
"exemple, une valeur de [code]100[/code] signifie que la particule va de la "
"vitesse [code]100[/code] à [code]0[/code] en [code]1[/code] seconde."

msgid "Minimum equivalent of [member damping_max]."
msgstr "Équivalent pour le minimum de [member damping_max]."

msgid "Unit vector specifying the particles' emission direction."
msgstr "Le vecteur unitaire définissant la direction d'émission des particules."

msgid "Particle draw order."
msgstr "Ordre de dessin des particules."

msgid ""
"Sets the [Color]s to modulate particles by when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Définit les [Color] pour moduler les particules en utilisant [constant "
"EMISSION_SHAPE_POINTS] ou [constant EMISSION_SHAPE_DIRECTED_POINTS]."

msgid ""
"Sets the direction the particles will be emitted in when using [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Définit la direction des particules qui seront émises quand [constant "
"EMISSION_SHAPE_DIRECTED_POINTS] est utilisé."

msgid ""
"Sets the initial positions to spawn particles when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Définit les positions initiales pour les particules créées en utilisant "
"[constant EMISSION_SHAPE_POINTS] ou [constant EMISSION_SHAPE_DIRECTED_POINTS]."

msgid ""
"The rectangle's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_RECTANGLE]."
msgstr ""
"Le rectangle d'émission si [member emission_shape] est [constant "
"EMISSION_SHAPE_RECTANGLE]."

msgid "Particles will be emitted inside this region."
msgstr "Les particules seront émises dans cette région."

msgid ""
"The sphere's radius if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_SPHERE]."
msgstr ""
"Le rayon de la sphère si [member emission_shape] est [constant "
"EMISSION_SHAPE_SPHERE]."

msgid ""
"If [code]true[/code], particles are being emitted. [member emitting] can be "
"used to start and stop particles from emitting. However, if [member one_shot] "
"is [code]true[/code] setting [member emitting] to [code]true[/code] will not "
"restart the emission cycle until after all active particles finish "
"processing. You can use the [signal finished] signal to be notified once all "
"active particles finish processing."
msgstr ""
"Si [code]true[/code], des particules sont émises. [member emitting] peut être "
"utilisé pour démarrer et arrêter l'émission des particules. Toutefois, si "
"[member one_shot] vaut [code]true[/code], définir [member emitting] à "
"[code]true[/code] ne redémarrera pas le cycle d'émission jusqu'à ce que "
"toutes les particules actives soient traitées. Vous pouvez utiliser le signal "
"[signal finished] pour être notifié une fois que toutes les particules "
"actives ont été traitées."

msgid ""
"How rapidly particles in an emission cycle are emitted. If greater than "
"[code]0[/code], there will be a gap in emissions before the next cycle begins."
msgstr ""
"La rapidité avec laquelle les particules d’un cycle d’émission sont émises. "
"Si elle est supérieure à [code]0[/code], il y aura un écart dans les "
"émissions avant le début du prochain cycle."

msgid ""
"The particle system's frame rate is fixed to a value. For example, changing "
"the value to 2 will make the particles render at 2 frames per second. Note "
"this does not slow down the simulation of the particle system itself."
msgstr ""
"Le taux de rafraîchissement du système de particules est fixé à une valeur. "
"Par exemple, changer la valeur à 2 rendra les particules à 2 trames par "
"seconde. Notez que cela ne ralentit pas la simulation du système de "
"particules lui-même."

msgid ""
"If [code]true[/code], results in fractional delta calculation which has a "
"smoother particles display effect."
msgstr ""
"Si [code]true[/code], utilise un calcul d'étape fractionnelle qui permet "
"affichage plus lisse des particules."

msgid "Gravity applied to every particle."
msgstr "Gravité appliquée à chaque particule."

msgid ""
"Each particle's hue will vary along this [Curve]. Should be a unit [Curve]."
msgstr ""
"La teinte de chaque particule variera suivant cette [Curve]. Devrait être une "
"[Curve] unitaire."

msgid ""
"Maximum initial hue variation applied to each particle. It will shift the "
"particle color's hue."
msgstr ""
"Variation de teinte initiale maximale appliquée à chaque particule. Cela va "
"changer la teinte de la couleur de la particule."

msgid "Minimum equivalent of [member hue_variation_max]."
msgstr "Équivalent pour le minimum de [member hue_variation_max]."

msgid ""
"Maximum initial velocity magnitude for each particle. Direction comes from "
"[member direction] and [member spread]."
msgstr ""
"Magnitude de la vélocité maximale appliquée à chaque particule. La direction "
"provient de [member direction] et [member spread]."

msgid "Minimum equivalent of [member initial_velocity_max]."
msgstr "Équivalent pour le minimum de [member initial_velocity_max]."

msgid "Amount of time each particle will exist."
msgstr "La durée pendant laquelle chaque particule existera."

msgid "Particle lifetime randomness ratio."
msgstr "Facteur d'aléatoire de la durée de vie d'une particule."

msgid ""
"Each particle's linear acceleration will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"L'accélération linéaire de chaque particule variera suivant cette [Curve]. "
"Devrait être une [Curve] unitaire."

msgid ""
"Maximum linear acceleration applied to each particle in the direction of "
"motion."
msgstr ""
"Accélération linéaire maximale appliquée à chaque particule dans la direction "
"du mouvement."

msgid "Minimum equivalent of [member linear_accel_max]."
msgstr "Équivalent pour le minimum de [member linear_accel_max]."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[CPUParticles2D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [CPUParticles2D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Si [code]true[/code], les particules utilisent l'espace de coordonnées du "
"nœud parent (aussi appelées coordonnées locales). Cela causera les particules "
"de se déplacer et tourner avec le nœud [CPUParticles2D] (et ses parents) "
"lorsqu'il est déplacé ou tourné. Si [code]false[/code], les particules "
"utilisent des coordonnées globales, cela ne causera pas les particules de se "
"déplacer et tourner avec le nœud [CPUParticles2D] (et ses parents) lorsqu'il "
"est déplacé ou en tourné."

msgid ""
"If [code]true[/code], only one emission cycle occurs. If set [code]true[/"
"code] during a cycle, emission will stop at the cycle's end."
msgstr ""
"Si [code]true[/code], un seul cycle d'émission se produit. Si définit à "
"[code]true[/code] pendant un cycle, l'émission s'arrêtera à la fin de ce "
"cycle."

msgid ""
"Each particle's orbital velocity will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"La vitesse orbitale de chaque particule variera suivant cette [Curve]. "
"Devrait être une [Curve] unitaire."

msgid ""
"Maximum orbital velocity applied to each particle. Makes the particles circle "
"around origin. Specified in number of full rotations around origin per second."
msgstr ""
"La vitesse orbitale maximale appliquée à chaque particule. Fait tourner les "
"particules en cercle autour de l'origine. Spécifié en nombre de rotations "
"complètes autour de l'origine par seconde."

msgid "Minimum equivalent of [member orbit_velocity_max]."
msgstr "Équivalent pour le minimum de [member orbit_velocity_max]."

msgid "Align Y axis of particle with the direction of its velocity."
msgstr "Aligner l’axe Y de la particule avec la direction de sa vélocité."

msgid "Particle system starts as if it had already run for this many seconds."
msgstr ""
"Le système de particules démarre comme s'il avait déjà commencé depuis "
"plusieurs secondes."

msgid ""
"Each particle's radial acceleration will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"L'accélération radiale de chaque particule variera le long cette [Curve]. "
"Devrait être une [Curve] unitaire."

msgid ""
"Maximum radial acceleration applied to each particle. Makes particle "
"accelerate away from the origin or towards it if negative."
msgstr ""
"Accélération radiale maximale appliquée à chaque particule. Fait accélérer "
"les particules hors de l'origine, ou vers l'origine si elle est négative."

msgid "Minimum equivalent of [member radial_accel_max]."
msgstr "Équivalent pour le minimum de [member radial_accel_max]."

msgid "Emission lifetime randomness ratio."
msgstr "Facteur d'aléatoire de durée de vie de l'émission."

msgid ""
"Each particle's scale will vary along this [Curve]. Should be a unit [Curve]."
msgstr ""
"L'échelle de chaque particule variera suivant cette [Curve]. Devrait être une "
"[Curve] unitaire."

msgid "Maximum initial scale applied to each particle."
msgstr "Échelle initiale maximale appliquée à chaque particule."

msgid "Minimum equivalent of [member scale_amount_max]."
msgstr "Équivalent pour le minimum de [member scale_amount_max]."

msgid ""
"Each particle's horizontal scale will vary along this [Curve]. Should be a "
"unit [Curve].\n"
"[member split_scale] must be enabled."
msgstr ""
"L'échelle horizontale de chaque particule variera suivant cette [Curve]. "
"Devrait être une [Curve] unitaire.\n"
"[member split_scale] doit être activé."

msgid ""
"Each particle's vertical scale will vary along this [Curve]. Should be a unit "
"[Curve].\n"
"[member split_scale] must be enabled."
msgstr ""
"L'échelle verticale de chaque particule variera suivant cette [Curve]. "
"Devrait être une [Curve] unitaire.\n"
"[member split_scale] doit être activé."

msgid ""
"Sets the random seed used by the particle system. Only effective if [member "
"use_fixed_seed] is [code]true[/code]."
msgstr ""
"Définit la graine de l'aléatoire utilisée par le système de particules. "
"Seulement effectif si [member use_fixed_seed] vaut [code]true[/code]."

msgid ""
"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
"be used to pause the particles."
msgstr ""
"Le facteur de vitesse du système de particules. Une valeur de [code]0[/code] "
"peut être utilisée pour arrêter les particules."

msgid ""
"If [code]true[/code], the scale curve will be split into x and y components. "
"See [member scale_curve_x] and [member scale_curve_y]."
msgstr ""
"Si [code]true[/code], la courbe de l'échelle sera divisée en composantes x et "
"y. Voir [member scale_curve_x] et [member scale_curve_y]."

msgid ""
"Each particle's initial direction range from [code]+spread[/code] to [code]-"
"spread[/code] degrees."
msgstr ""
"La direction initiale de chaque particules sera comprise entre [code]+spread[/"
"code] et [code]-spread[/code] degrés."

msgid ""
"Each particle's tangential acceleration will vary along this [Curve]. Should "
"be a unit [Curve]."
msgstr ""
"L'accélération tangentielle de chaque particule variera le long de cette "
"[Curve]. Devrait être une [Curve] unitaire."

msgid ""
"Maximum tangential acceleration applied to each particle. Tangential "
"acceleration is perpendicular to the particle's velocity giving the particles "
"a swirling motion."
msgstr ""
"L'accélération tangentielle maximale appliquée à chaque particule. "
"L'accélération tangentielle est perpendiculaire à la vitesse de la particule, "
"ce qui donne aux particules un mouvement de tourbillion."

msgid "Minimum equivalent of [member tangential_accel_max]."
msgstr "Équivalent pour le minimum de [member tangential_accel_max]."

msgid "Particle texture. If [code]null[/code], particles will be squares."
msgstr ""
"La texture des particules. Si [code]null[/code], les particules seront "
"carrées."

msgid ""
"If [code]true[/code], particles will use the same seed for every simulation "
"using the seed defined in [member seed]. This is useful for situations where "
"the visual outcome should be consistent across replays, for example when "
"using Movie Maker mode."
msgstr ""
"Si [code]true[/code], les particules utiliseront la même graine pour chaque "
"simulation en utilisant la graine définie dans [member seed]. Ceci est utile "
"pour les situations où le résultat visuel devrait être consistant entre les "
"replays, par exemple en utilisant le mode Création de film."

msgid ""
"Emitted when all active particles have finished processing. When [member "
"one_shot] is disabled, particles will process continuously, so this is never "
"emitted."
msgstr ""
"Émis lorsque toutes les particules actives ont terminé le traitement. Lorsque "
"[member one_shot] est désactivé, les particules traiteront continuellement, "
"il ne sera donc jamais émis."

msgid "Particles are drawn in the order emitted."
msgstr ""
"Les particules sont affichées dans l'ordre dans lequel elles ont été émises."

msgid ""
"Particles are drawn in order of remaining lifetime. In other words, the "
"particle with the highest lifetime is drawn at the front."
msgstr ""
"Les particules sont dessinées dans l'ordre de leur durée de vie restante. En "
"d'autres termes, la particule avec la durée de vie la plus grande est "
"dessinée à l'avant."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set initial velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés de vélocité initiale."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set angular velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés de vitesse angulaire."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set orbital velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés de vitesse orbitale."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set linear acceleration properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés d'accélération linéaire."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set radial acceleration properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés d'accélération radiale."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set tangential acceleration properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés d'accélération tangentielle."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set damping properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés d'amortissement."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set angle properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés d'angle."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set scale properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés d'échelle."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set hue variation properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés de variation de teinte."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set animation speed properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés de vitesse d'animation."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set animation offset properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_curve] pour définir les propriétés de décalage d'animation."

msgid "Represents the size of the [enum Parameter] enum."
msgstr "Représente la taille de l'énumération [enum Parameter]."

msgid ""
"Use with [method set_particle_flag] to set [member particle_flag_align_y]."
msgstr ""
"Utilisez avec [method set_particle_flag] pour définir [member "
"particle_flag_align_y]."

msgid "Present for consistency with 3D particle nodes, not used in 2D."
msgstr ""
"Présent pour des raisons de cohérence avec les nœuds de particules 3D, mais "
"non utilisé en 2D."

msgid "Represents the size of the [enum ParticleFlags] enum."
msgstr "Représente la taille de l'énumération [enum ParticleFlags]."

msgid "All particles will be emitted from a single point."
msgstr "Toutes les particules seront émises depuis un seul point."

msgid ""
"Particles will be emitted in the volume of a sphere flattened to two "
"dimensions."
msgstr ""
"Les particules seront émises dans le volume d'une sphère aplatie en deux "
"dimensions."

msgid ""
"Particles will be emitted on the surface of a sphere flattened to two "
"dimensions."
msgstr ""
"Les particules seront émises à la surface d'une sphère aplatie en deux "
"dimensions."

msgid "Particles will be emitted in the area of a rectangle."
msgstr "Toutes les particules seront émises depuis l'aire d'un rectangle."

msgid ""
"Particles will be emitted at a position chosen randomly among [member "
"emission_points]. Particle color will be modulated by [member "
"emission_colors]."
msgstr ""
"Les particules seront émises à une position choisie au hasard parmi les "
"points [member emission_points]. La couleur des particules sera modulée par "
"[member emission_colors]."

msgid ""
"Particles will be emitted at a position chosen randomly among [member "
"emission_points]. Particle velocity and rotation will be set based on [member "
"emission_normals]. Particle color will be modulated by [member "
"emission_colors]."
msgstr ""
"Les particules seront émises à une position choisie au hasard parmi [member "
"emission_points]. La vitesse et la rotation des particules seront déterminées "
"en fonction de [member emission_normals]. La couleur des particules sera "
"modulée par [member emission_colors]."

msgid "Represents the size of the [enum EmissionShape] enum."
msgstr "Représente la taille de l'énumération [enum EmissionShape]."

msgid "A CPU-based 3D particle emitter."
msgstr "Un émetteur de particules 3D basé sur le CPU."

msgid ""
"CPU-based 3D particle node used to create a variety of particle systems and "
"effects.\n"
"See also [GPUParticles3D], which provides the same functionality with "
"hardware acceleration, but may not run on older devices."
msgstr ""
"Nœud de particules 3D basé sur le CPU utilisé pour créer de nombreux systèmes "
"et effets de particules.\n"
"Voir aussi [GPUParticles3D], qui fournit la même fonctionnalité avec "
"l'accélération matérielle, mais peut ne pas fonctionner sur d'anciens "
"appareils."

msgid "Particle systems (3D)"
msgstr "Systèmes de particule (3D)"

msgid ""
"Returns the axis-aligned bounding box that contains all the particles that "
"are active in the current frame."
msgstr ""
"Renvoie la boîte délimitante alignée sur les axes qui contient toutes les "
"particules qui sont actives dans la trame actuelle."

msgid ""
"Sets this node's properties to match a given [GPUParticles3D] node with an "
"assigned [ParticleProcessMaterial]."
msgstr ""
"Définit les propriétés de ce nœud pour correspondre au nœud [GPUParticles3D] "
"avec un [ParticleProcessMaterial] assigné donné."

msgid "Maximum angle."
msgstr "Angle maximum."

msgid "Minimum angle."
msgstr "Angle minimum."

msgid ""
"Each particle's angular velocity (rotation speed) will vary along this "
"[Curve] over its lifetime. Should be a unit [Curve]."
msgstr ""
"La vitesse angulaire de chaque particule (vitesse de rotation) variera le "
"long de cette [Curve] au cours de sa vie. Devrait être une [Curve] unitaire."

msgid ""
"Minimum initial angular velocity (rotation speed) applied to each particle in "
"[i]degrees[/i] per second."
msgstr ""
"La vitesse angulaire minimale (vitesse de rotation) appliquée à chaque "
"particule en [i]degrés[/i] par seconde."

msgid "Maximum animation offset."
msgstr "Décalage maximum de l'animation."

msgid "Minimum animation offset."
msgstr "Décalage minimum de l'animation."

msgid "Maximum particle animation speed."
msgstr "Vitesse d’animation maximale des particules."

msgid "Minimum particle animation speed."
msgstr "Vitesse d’animation minimale des particules."

msgid ""
"Each particle's initial color.\n"
"[b]Note:[/b] [member color] multiplies the particle mesh's vertex colors. To "
"have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member color] will "
"have no visible effect."
msgstr ""
"La couleur initiale de chaque particule.\n"
"[b]Note :[/b] [member color] multiplie les couleurs des sommets du maillage "
"de la particule. Pour avoir un effet visible sur un [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]doit[/i] valoir [code]true[/"
"code]. Pour un [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] doit être "
"inséré dans la fonction [code]fragment()[/code] du shader. Sinon, [member "
"color] n'aura pas d'effet visible."

msgid ""
"Each particle's initial color will vary along this [Gradient] (multiplied "
"with [member color]).\n"
"[b]Note:[/b] [member color_initial_ramp] multiplies the particle mesh's "
"vertex colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"color_initial_ramp] will have no visible effect."
msgstr ""
"La couleur initiale de chaque particule variera suivant ce [Gradient] "
"(multiplié avec [member color]).\n"
"[b]Note :[/b] [member color_initial_ramp] multiplie les couleurs des sommets "
"du maillage de la particule. Pour avoir un effet visible sur un "
"[BaseMaterial3D], [member BaseMaterial3D.vertex_color_use_as_albedo] [i]doit[/"
"i] valoir [code]true[/code]. Pour un [ShaderMaterial], [code]ALBEDO *= "
"COLOR.rgb;[/code] doit être inséré dans la fonction [code]fragment()[/code] "
"du shader. Sinon, [member color_initial_ramp] n'aura pas d'effet visible."

msgid ""
"Each particle's color will vary along this [Gradient] over its lifetime "
"(multiplied with [member color]).\n"
"[b]Note:[/b] [member color_ramp] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member color_ramp] "
"will have no visible effect."
msgstr ""
"La couleur initiale de chaque particule variera suivant ce [Gradient] sur sa "
"durée de vie (multiplié avec [member color]).\n"
"[b]Note :[/b] [member color_ramp] multiplie les couleurs des sommets du "
"maillage de la particule. Pour avoir un effet visible sur un "
"[BaseMaterial3D], [member BaseMaterial3D.vertex_color_use_as_albedo] [i]doit[/"
"i] valoir [code]true[/code]. Pour un [ShaderMaterial], [code]ALBEDO *= "
"COLOR.rgb;[/code] doit être inséré dans la fonction [code]fragment()[/code] "
"du shader. Sinon, [member color_ramp] n'aura pas d'effet visible."

msgid "Maximum damping."
msgstr "Amortissement maximum."

msgid "Minimum damping."
msgstr "Amortissement minimum."

msgid ""
"The rectangle's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_BOX]."
msgstr ""
"La taille de rectangle si [member emission_shape] est [constant "
"EMISSION_SHAPE_BOX]."

msgid ""
"Sets the [Color]s to modulate particles by when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS].\n"
"[b]Note:[/b] [member emission_colors] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"emission_colors] will have no visible effect."
msgstr ""
"Définit les [Color]s avec lesquelles moduler les particules lors de "
"l'utilisation de [constant EMISSION_SHAPE_POINTS] ou [constant "
"EMISSION_SHAPE_DIRECTED_POINTS].\n"
"[b]Note :[/b] [member emission_colors] multiplie les couleurs des sommets du "
"maillage de la particule. Pour avoir un effet visible sur un "
"[BaseMaterial3D], [member BaseMaterial3D.vertex_color_use_as_albedo] [i]doit[/"
"i] valoir [code]true[/code]. Pour un [ShaderMaterial], [code]ALBEDO *= "
"COLOR.rgb;[/code] doit être inséré dans la fonction [code]fragment()[/code] "
"du shader. Sinon, [member emission_colors] n'aura pas d'effet visible."

msgid ""
"The axis of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
msgstr "L'axe de l'anneau pour l'émetteur [constant EMISSION_SHAPE_RING]."

msgid ""
"The angle of the cone when using the emitter [constant EMISSION_SHAPE_RING]. "
"The default angle of 90 degrees results in a ring, while an angle of 0 "
"degrees results in a cone. Intermediate values will result in a ring where "
"one end is larger than the other.\n"
"[b]Note:[/b] Depending on [member emission_ring_height], the angle may be "
"clamped if the ring's end is reached to form a perfect cone."
msgstr ""
"L'angle du cône lors de l'utilisation de l'émetteur [constant "
"EMISSION_SHAPE_RING]. L'angle par défaut de 90 degrés résulte en un anneau, "
"tandis qu'un angle de 0 degré résulte en un cône. Les valeurs intermédiaires "
"se traduiront par une anneau où une extrémité est plus grande que l'autre.\n"
"[b]Note :[/b] Selon [member emission_ring_height], l'angle peut être borné si "
"l'extrémité de l'anneau est atteinte pour former un cône parfait."

msgid ""
"The height of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
msgstr "La hauteur de l'anneau pour l'émetteur [constant EMISSION_SHAPE_RING]."

msgid ""
"The inner radius of the ring when using the emitter [constant "
"EMISSION_SHAPE_RING]."
msgstr ""
"Le rayon intérieur de l'anneau pour l'émetteur [constant EMISSION_SHAPE_RING]."

msgid ""
"The radius of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
msgstr "Le rayon de l'anneau pour l'émetteur [constant EMISSION_SHAPE_RING]."

msgid ""
"The sphere's radius if [enum EmissionShape] is set to [constant "
"EMISSION_SHAPE_SPHERE]."
msgstr ""
"Le rayon de la sphere si [enum EmissionShape] est [constant "
"EMISSION_SHAPE_SPHERE]."

msgid ""
"The particle system's frame rate is fixed to a value. For example, changing "
"the value to 2 will make the particles render at 2 frames per second. Note "
"this does not slow down the particle system itself."
msgstr ""
"Le taux de rafraîchissement du système de particules est fixé à une valeur. "
"Par exemple, changer la valeur à 2 rendra les particules à 2 trames par "
"seconde. Notez que cela ne ralentit pas le système de particules lui-même."

msgid ""
"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
"particles to X/Z plane."
msgstr ""
"La quantité d'éparpillement [member spread] dans le plan Y/Z. Une valeur de "
"[code]1[/code] limite les particules au plan X/Z."

msgid "Maximum hue variation."
msgstr "Variation de teinte maximum."

msgid "Minimum hue variation."
msgstr "Variation de teinte minimum."

msgid "Maximum value of the initial velocity."
msgstr "Valeur maximale pour la vitesse initiale."

msgid "Minimum value of the initial velocity."
msgstr "Valeur minimale pour la vitesse initiale."

msgid "Maximum linear acceleration."
msgstr "Accélération linéaire maximale."

msgid "Minimum linear acceleration."
msgstr "Accélération linéaire minimum."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[CPUParticles3D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [CPUParticles3D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Si [code]true[/code], les particules utilisent l'espace de coordonnées du "
"nœud parent (aussi appelées coordonnées locales). Cela causera les particules "
"de se déplacer et tourner avec le nœud [CPUParticles3D] (et ses parents) "
"lorsqu'il est déplacé ou tourné. Si [code]false[/code], les particules "
"utilisent des coordonnées globales, cela ne causera pas les particules de se "
"déplacer et tourner avec le nœud [CPUParticles3D] (et ses parents) lorsqu'il "
"est déplacé ou en tourné."

msgid ""
"The [Mesh] used for each particle. If [code]null[/code], particles will be "
"spheres."
msgstr ""
"Le [Mesh] utilisé pour chaque particule. Si [code]null[/code], les particules "
"seront des sphères."

msgid "Maximum orbit velocity."
msgstr "Vélocité d'orbite maximum."

msgid "Minimum orbit velocity."
msgstr "Vélocité d'orbite minimum."

msgid "If [code]true[/code], particles will not move on the Z axis."
msgstr ""
"Si [code]true[/code], les particules ne se déplaceront pas le long de l'axe Z."

msgid ""
"If [code]true[/code], particles rotate around Y axis by [member angle_min]."
msgstr ""
"Si [code]true[/code], les particules pivoteront autour de l'axe Y de [member "
"angle_min]."

msgid "Maximum radial acceleration."
msgstr "Accélération radiale maximale."

msgid "Minimum radial acceleration."
msgstr "Accélération radiale minimal."

msgid "Maximum scale."
msgstr "Échelle maximale."

msgid "Minimum scale."
msgstr "Échelle minimale."

msgid "Curve for the scale over life, along the x axis."
msgstr "Courbe pour l'échelle au cours de la vie, le long de l'axe x."

msgid "Curve for the scale over life, along the y axis."
msgstr "Courbe pour l'échelle au cours de la vie, le long de l'axe y."

msgid "Curve for the scale over life, along the z axis."
msgstr "Courbe pour l'échelle au cours de la vie, le long de l'axe z."

msgid ""
"If set to [code]true[/code], three different scale curves can be specified, "
"one per scale axis."
msgstr ""
"Si [code]true[/code], trois courbes d'échelle différentes peuvent être "
"spécifiés, une par axe."

msgid ""
"Each particle's initial direction range from [code]+spread[/code] to [code]-"
"spread[/code] degrees. Applied to X/Z plane and Y/Z planes."
msgstr ""
"La direction initiale de chaque particule dans l'intervalle de [code]+spread[/"
"code] à [code]-spread[/code] degrés. Appliquée aux plans sur X/Z et aux plans "
"sur Y/Z."

msgid "Maximum tangent acceleration."
msgstr "Accélération tangentielle maximale."

msgid "Minimum tangent acceleration."
msgstr "Accélération tangentielle minimale."

msgid ""
"The [AABB] that determines the node's region which needs to be visible on "
"screen for the particle system to be active.\n"
"Grow the box if particles suddenly appear/disappear when the node enters/"
"exits the screen. The [AABB] can be grown via code or with the [b]Particles → "
"Generate AABB[/b] editor tool."
msgstr ""
"La [AABB] qui détermine la région du nœud qui doit être visible à l'écran "
"pour que le système de particules soit actif.\n"
"Agrandissez la boîte si les particules apparaissent/disparaissent "
"soudainement lorsque le noeud entre/sort de l'écran. La [AABB] peut être "
"agrandie par code ou avec l'outil de l'éditeur [b]Particules → Générer AABB[/"
"b]."

msgid "Particles are drawn in order of depth."
msgstr "Les particules sont affichées suivant leur profondeur à l'écran."

msgid ""
"Use with [method set_particle_flag] to set [member particle_flag_rotate_y]."
msgstr ""
"Utilisez avec [method set_particle_flag] pour définir [member "
"particle_flag_rotate_y]."

msgid ""
"Use with [method set_particle_flag] to set [member particle_flag_disable_z]."
msgstr ""
"Utilisez avec [method set_particle_flag] pour définir [member "
"particle_flag_disable_z]."

msgid "Particles will be emitted in the volume of a sphere."
msgstr "Toutes les particules seront émises depuis l'intérieur d'une sphère."

msgid "Particles will be emitted on the surface of a sphere."
msgstr "Les particules seront émises à la surface d'une sphère."

msgid "Particles will be emitted in the volume of a box."
msgstr "Toutes les particules seront émises depuis l'intérieur d'une boite."

msgid "Particles will be emitted in a ring or cylinder."
msgstr "Toutes les particules seront émises depuis un anneau ou un cylindre."

msgid "Provides access to advanced cryptographic functionalities."
msgstr "Fournit un accès à des fonctionnalités cryptographiques avancées."

msgid ""
"The Crypto class provides access to advanced cryptographic functionalities.\n"
"Currently, this includes asymmetric key encryption/decryption, signing/"
"verification, and generating cryptographically secure random bytes, RSA keys, "
"HMAC digests, and self-signed [X509Certificate]s.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"\n"
"# Generate new RSA key.\n"
"var key = crypto.generate_rsa(4096)\n"
"\n"
"# Generate new self-signed certificate with the given key.\n"
"var cert = crypto.generate_self_signed_certificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\")\n"
"\n"
"# Save key and certificate in the user folder.\n"
"key.save(\"user://generated.key\")\n"
"cert.save(\"user://generated.crt\")\n"
"\n"
"# Encryption\n"
"var data = \"Some data\"\n"
"var encrypted = crypto.encrypt(key, data.to_utf8_buffer())\n"
"\n"
"# Decryption\n"
"var decrypted = crypto.decrypt(key, encrypted)\n"
"\n"
"# Signing\n"
"var signature = crypto.sign(HashingContext.HASH_SHA256, data.sha256_buffer(), "
"key)\n"
"\n"
"# Verifying\n"
"var verified = crypto.verify(HashingContext.HASH_SHA256, "
"data.sha256_buffer(), signature, key)\n"
"\n"
"# Checks\n"
"assert(verified)\n"
"assert(data.to_utf8_buffer() == decrypted)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"Crypto crypto = new Crypto();\n"
"\n"
"// Generate new RSA key.\n"
"CryptoKey key = crypto.GenerateRsa(4096);\n"
"\n"
"// Generate new self-signed certificate with the given key.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\");\n"
"\n"
"// Save key and certificate in the user folder.\n"
"key.Save(\"user://generated.key\");\n"
"cert.Save(\"user://generated.crt\");\n"
"\n"
"// Encryption\n"
"string data = \"Some data\";\n"
"byte[] encrypted = crypto.Encrypt(key, data.ToUtf8Buffer());\n"
"\n"
"// Decryption\n"
"byte[] decrypted = crypto.Decrypt(key, encrypted);\n"
"\n"
"// Signing\n"
"byte[] signature = crypto.Sign(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), key);\n"
"\n"
"// Verifying\n"
"bool verified = crypto.Verify(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), signature, key);\n"
"\n"
"// Checks\n"
"Debug.Assert(verified);\n"
"Debug.Assert(data.ToUtf8Buffer() == decrypted);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La classe Crypto permet d'accéder à des fonctionnalités cryptographiques plus "
"avancées.\n"
"Pour l'instant, cela inclut l'encryptage/décryptage de clé asymétrique, la "
"signature/vérification, et la génération cryptographique sécurisée de bytes "
"aléatoires, de clés RSA, de HMAC et de [X509Certificate]s auto-signés.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"\n"
"# Générer une nouvelle clé RSA.\n"
"var key = crypto.generate_rsa(4096)\n"
"\n"
"# Générer un nouveau certificat auto-signé avec le clé.\n"
"var cert = crypto.generate_self_signed_certificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\")\n"
"\n"
"# Enregistrer la clé et le certificat dans le dossier utilisateur.\n"
"key.save(\"user://generated.key\")\n"
"cert.save(\"user://generated.crt\")\n"
"\n"
"# Cryptage\n"
"var data = \"Some data\"\n"
"var encrypted = crypto.encrypt(key, data.to_utf8_buffer())\n"
"\n"
"# Décryptage\n"
"var decrypted = crypto.decrypt(key, encrypted)\n"
"\n"
"# Signature\n"
"var signature = crypto.sign(HashingContext.HASH_SHA256, data.sha256_buffer(), "
"key)\n"
"\n"
"# Vérification\n"
"var verified = crypto.verify(HashingContext.HASH_SHA256, "
"data.sha256_buffer(), signature, key)\n"
"\n"
"# Tests\n"
"assert(verified)\n"
"assert(data.to_utf8_buffer() == decrypted)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"Crypto crypto = new Crypto();\n"
"\n"
"// Générer une nouvelle clé RSA.\n"
"CryptoKey key = crypto.GenerateRsa(4096);\n"
"\n"
"// Générer un nouveau certificat auto-signé avec le clé.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\");\n"
"\n"
"// Enregistrer la clé et le certificat dans le dossier utilisateur.\n"
"key.Save(\"user://generated.key\");\n"
"cert.Save(\"user://generated.crt\");\n"
"\n"
"// Cryptage\n"
"string data = \"Some data\";\n"
"byte[] encrypted = crypto.Encrypt(key, data.ToUtf8Buffer());\n"
"\n"
"// Décryptage\n"
"byte[] decrypted = crypto.Decrypt(key, encrypted);\n"
"\n"
"// Signature\n"
"byte[] signature = crypto.Sign(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), key);\n"
"\n"
"// Vérification\n"
"bool verified = crypto.Verify(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), signature, key);\n"
"\n"
"// Tests\n"
"Debug.Assert(verified);\n"
"Debug.Assert(data.ToUtf8Buffer() == decrypted);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Compares two [PackedByteArray]s for equality without leaking timing "
"information in order to prevent timing attacks.\n"
"See [url=https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-"
"string-comparison-with-double-hmac-strategy]this blog post[/url] for more "
"information."
msgstr ""
"Compare deux [PackedByteArray]s pour l'égalité sans fuite temporelle "
"d'informations afin de prévenir les attaques temporelles.\n"
"Voir [url=https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-"
"string-comparison-with-double-hmac-strategy]ce post de blog[/url] pour plus "
"d'informations."

msgid ""
"Decrypt the given [param ciphertext] with the provided private [param key].\n"
"[b]Note:[/b] The maximum size of accepted ciphertext is limited by the key "
"size."
msgstr ""
"Déchiffre le texte crypté [param ciphertext] donné avec le clé privée [param "
"key] fournie.\n"
"[b]Note :[/b] La taille maximale pour le texte crypté est limitée par la "
"taille de la clé."

msgid ""
"Encrypt the given [param plaintext] with the provided public [param key].\n"
"[b]Note:[/b] The maximum size of accepted plaintext is limited by the key "
"size."
msgstr ""
"Encrypte le texte brut [param plaintext] donné avec le clé publique [param "
"key] fournie.\n"
"[b]Note :[/b] La taille maximale pour le texte brut est limitée par la taille "
"de la clé."

msgid ""
"Generates a [PackedByteArray] of cryptographically secure random bytes with "
"given [param size]."
msgstr ""
"Génère un [PackedByteArray] d'octets aléatoires de manière "
"cryptographiquement sécurisée avec la taille [param size] donnée."

msgid ""
"Generates an RSA [CryptoKey] that can be used for creating self-signed "
"certificates and passed to [method StreamPeerTLS.accept_stream]."
msgstr ""
"Génère une [CryptoKey] RSA qui peut être utilisé pour créer des certificats "
"autosignés et transmis à [method StreamPeerTLS.accept_stream]."

msgid ""
"Generates a self-signed [X509Certificate] from the given [CryptoKey] and "
"[param issuer_name]. The certificate validity will be defined by [param "
"not_before] and [param not_after] (first valid date and last valid date). The "
"[param issuer_name] must contain at least \"CN=\" (common name, i.e. the "
"domain name), \"O=\" (organization, i.e. your company name), \"C=\" (country, "
"i.e. 2 lettered ISO-3166 code of the country the organization is based in).\n"
"A small example to generate an RSA key and an X509 self-signed certificate.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"# Generate 4096 bits RSA key.\n"
"var key = crypto.generate_rsa(4096)\n"
"# Generate self-signed certificate using the given key.\n"
"var cert = crypto.generate_self_signed_certificate(key, \"CN=example.com,O=A "
"Game Company,C=IT\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var crypto = new Crypto();\n"
"// Generate 4096 bits RSA key.\n"
"CryptoKey key = crypto.GenerateRsa(4096);\n"
"// Generate self-signed certificate using the given key.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Génère un [X509Certificate] auto-signé avec la clé [CryptoKey] et le nom "
"d'émetteur [param issuer_name] donnés. La date de validité du certificat est "
"définie par [param not_before] et [param not_after] (la date de début et de "
"fin de validité). Le nom [param issuer_name] doit contenir au moins \"CN=\" "
"(le nom commun, c.à.d. le nom de domaine), \"O=\" (l'organisation, c.à.d. le "
"nom de votre entreprise) et \"C=\" (le pays, c.à.d. un code ISO-3166 à deux "
"lettres du pays où l'entreprise est située).\n"
"Un court exemple pour générer une clé RSA et un certificat X509 auto-signé.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"# Générer un clé RSA 4096 bits.\n"
"var cle = crypto.generate_rsa(4096)\n"
"# Générer un certificat auto-signé à partir de la clé donnée.\n"
"var cert = crypto.generate_self_signed_certificate(cle, "
"\"CN=example.com,O=Mon Studio de Jeux,C=FR\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var crypto = new Crypto();\n"
"// Générer un clé RSA 4096 bits.\n"
"CryptoKey cle = crypto.GenerateRsa(4096);\n"
"// Générer un certificat auto-signé à partir de la clé donnée.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(cle, "
"\"CN=example.com,O=Mon Studio de Jeux, C=FR\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Generates an [url=https://en.wikipedia.org/wiki/HMAC]HMAC[/url] digest of "
"[param msg] using [param key]. The [param hash_type] parameter is the hashing "
"algorithm that is used for the inner and outer hashes.\n"
"Currently, only [constant HashingContext.HASH_SHA256] and [constant "
"HashingContext.HASH_SHA1] are supported."
msgstr ""
"Génère un résumé [url=https://fr.wikipedia.org/wiki/HMAC]HMAC[/url] du "
"message [param msg] à partir de la clé [param key]. Le paramètre [param "
"hash_type] est l'algorithme de hachage utilisé pour les hachages intérieurs "
"et extérieurs.\n"
"Actuellement, seuls les algorithmes [constant HashingContext.HASH_SHA256] et "
"[constant HashingContext.HASH_SHA1] sont supportés."

msgid ""
"Sign a given [param hash] of type [param hash_type] with the provided private "
"[param key]."
msgstr ""
"Signe le hachage [param hash] donné de type [param hash_type] avec la clé "
"privée [param key] fournie."

msgid ""
"Verify that a given [param signature] for [param hash] of type [param "
"hash_type] against the provided public [param key]."
msgstr ""
"Vérifie la [param signature] donnée pour le hachage [param hash] du type "
"[param hash_type] avec la clé publique [param key] fournie."

msgid "A cryptographic key (RSA or elliptic-curve)."
msgstr "Une clé cryptographique (RSA ou courbe elliptique)."

msgid ""
"The CryptoKey class represents a cryptographic key. Keys can be loaded and "
"saved like any other [Resource].\n"
"They can be used to generate a self-signed [X509Certificate] via [method "
"Crypto.generate_self_signed_certificate] and as private key in [method "
"StreamPeerTLS.accept_stream] along with the appropriate certificate."
msgstr ""
"La classe CryptoKey représente une clé cryptographique. Les clés peuvent être "
"chargées et sauvegardées comme toute autre [Resource].\n"
"Elles peuvent être utilisées pour générer un certicat [X509Certificate] "
"autosigné avec [method Crypto.generate_self_signed_certificate] et comme clé "
"privée dans [method StreamPeerTLS.accept_stream] avec le certificat approprié."

msgid "SSL certificates"
msgstr "Certificats SSL"

msgid ""
"Returns [code]true[/code] if this CryptoKey only has the public part, and not "
"the private one."
msgstr ""
"Renvoie [code]true[/code] si cette CryptoKey ne contient que la partie "
"publique, et non la partie privée."

msgid ""
"Loads a key from [param path]. If [param public_only] is [code]true[/code], "
"only the public key will be loaded.\n"
"[b]Note:[/b] [param path] should be a \"*.pub\" file if [param public_only] "
"is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
"Charge une clé se trouvant au chemin [param path]. Si [param public_only] "
"vaut [code]true[/code], seule la clé publique sera chargée.\n"
"[b]Note :[/b] [param path] doit être un fichier \"*.pub\" si [param "
"public_only] vaut [code]true[/code], et un fichier \"*.key\" sinon."

msgid ""
"Loads a key from the given [param string_key]. If [param public_only] is "
"[code]true[/code], only the public key will be loaded."
msgstr ""
"Charge une clé depuis la chaîne de caractères [param string_key] donnée. Si "
"[param public_only] vaut [code]true[/code], seule la clé publique sera "
"chargée."

msgid ""
"Saves a key to the given [param path]. If [param public_only] is [code]true[/"
"code], only the public key will be saved.\n"
"[b]Note:[/b] [param path] should be a \"*.pub\" file if [param public_only] "
"is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
"Enregistre une clé au chemin [param path] spécifié. Si [param public_only] "
"vaut [code]true[/code], seule la clé publique sera enregistrée.\n"
"[b]Note :[/b] [param path] doit être un fichier avec l'extension \".pub\" si "
"[param public_only] vaut [code]true[/code], et avec l'extension \".key\" "
"sinon."

msgid ""
"Returns a string containing the key in PEM format. If [param public_only] is "
"[code]true[/code], only the public key will be included."
msgstr ""
"Renvoie une chaîne de caractères contenant la clé en format PEM. Si [param "
"public_only] vaut [code]true[/code], seule la clé publique sera incluse."

msgid "A CSG Box shape."
msgstr "Une forme CSG en boite."

msgid ""
"This node allows you to create a box for use with the CSG system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Ce nœud vous permet de créer une boîte à utiliser avec le système CSG.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid "Prototyping levels with CSG"
msgstr "Prototyper des niveaux avec CSG"

msgid "The material used to render the box."
msgstr "Le matériau utilisé pour rendre la boite."

msgid "A CSG node that allows you to combine other CSG modifiers."
msgstr "Un nœud CSG qui permet de combiner plusieurs modificateurs CSG."

msgid ""
"For complex arrangements of shapes, it is sometimes needed to add structure "
"to your CSG nodes. The CSGCombiner3D node allows you to create this "
"structure. The node encapsulates the result of the CSG operations of its "
"children. In this way, it is possible to do operations on one set of shapes "
"that are children of one CSGCombiner3D node, and a set of separate operations "
"on a second set of shapes that are children of a second CSGCombiner3D node, "
"and then do an operation that takes the two end results as its input to "
"create the final shape.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Pour des arrangements complexes de formes, il est parfois nécessaire "
"d'ajouter une structure à vos nœuds CSG. Le nœud CSGCombiner3D vous permet de "
"créer cette structure. Le nœud encapsule le résultat des opérations CSG de "
"ses enfants. De cette façon, il est possible de faire des opérations sur un "
"ensemble de formes qui sont enfants d'un nœud CSGCombiner3D, et un ensemble "
"d'opérations séparées sur un deuxième ensemble de formes qui sont enfants "
"d'un deuxième noeud CSGCombiner3D, et ensuite faire une opération qui prend "
"les deux résultats finaux comme entrée pour créer la forme finale.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid "A CSG Cylinder shape."
msgstr "Une forme de cylindre CSG."

msgid ""
"This node allows you to create a cylinder (or cone) for use with the CSG "
"system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Ce nœud vous permet de créer un cylindre (ou un cône) pour utiliser avec le "
"système CSG.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid ""
"If [code]true[/code] a cone is created, the [member radius] will only apply "
"to one side."
msgstr ""
"Si [code]true[/code] un cône est créé, le [member radius] ne s'appliquera "
"qu'à un seul côté."

msgid "The height of the cylinder."
msgstr "La hauteur du cylindre."

msgid "The material used to render the cylinder."
msgstr "Le matériau utilisé pour rendre le cylindre."

msgid "The radius of the cylinder."
msgstr "Le rayon du cylindre."

msgid ""
"The number of sides of the cylinder, the higher this number the more detail "
"there will be in the cylinder."
msgstr ""
"Le nombre de côtés du cylindre, plus ce nombre est élevé, plus il y aura de "
"détail dans le cylindre."

msgid ""
"If [code]true[/code] the normals of the cylinder are set to give a smooth "
"effect making the cylinder seem rounded. If [code]false[/code] the cylinder "
"will have a flat shaded look."
msgstr ""
"SI [code]true[/code], les normales du cylindre sont positionnées pour donner "
"un effet lise faisaint paraître le cylindre comme arrondi. Si [code]false[/"
"code], le cylindre aura un ombrage plat."

msgid "A CSG Mesh shape that uses a mesh resource."
msgstr "Une forme de maillage CSG qui utilise une ressource de maillage."

msgid ""
"This CSG node allows you to use any mesh resource as a CSG shape, provided it "
"is [i]manifold[/i]. A manifold shape is closed, does not self-intersect, does "
"not contain internal faces and has no edges that connect to more than two "
"faces. See also [CSGPolygon3D] for drawing 2D extruded polygons to be used as "
"CSG nodes.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Ce nœud CSG vous permet d'utiliser toute ressource de maillage comme forme "
"CSG, à condition qu'il soit [i]manifold[/i]. Une forme manifold est fermée, "
"ne s'auto-intersecte pas, ne contient pas de faces internes et n'a aucune "
"arête qui se connecte à plus de deux faces. Voir aussi [CSGPolygon3D] pour "
"dessiner des polygones extrudés 2D pour être utilisés comme nœuds CSG.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid "The [Material] used in drawing the CSG shape."
msgstr "Le [Material] utilisé pour dessiner la forme de la CSG."

msgid ""
"The [Mesh] resource to use as a CSG shape.\n"
"[b]Note:[/b] Some [Mesh] types such as [PlaneMesh], [PointMesh], [QuadMesh], "
"and [RibbonTrailMesh] are excluded from the type hint for this property, as "
"these primitives are non-[i]manifold[/i] and thus not compatible with the CSG "
"algorithm.\n"
"[b]Note:[/b] When using an [ArrayMesh], all vertex attributes except "
"[constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL] and [constant "
"Mesh.ARRAY_TEX_UV] are left unused. Only [constant Mesh.ARRAY_VERTEX] and "
"[constant Mesh.ARRAY_TEX_UV] will be passed to the GPU.\n"
"[constant Mesh.ARRAY_NORMAL] is only used to determine which faces require "
"the use of flat shading. By default, CSGMesh will ignore the mesh's vertex "
"normals, recalculate them for each vertex and use a smooth shader. If a flat "
"shader is required for a face, ensure that all vertex normals of the face are "
"approximately equal."
msgstr ""
"La ressource [Mesh] à utiliser comme forme CSG.\n"
"[b]Note :[/b] Certains types de [Mesh] tels que [PlaneMesh], [PointMesh], "
"[QuadMesh], et [RibbonTrailMesh] sont exclus de l'indice de type pour cette "
"propriété, car ces primitives sont non [i]manifold[/i] et donc non "
"compatibles avec l'algorithme CSG.\n"
"[b]Note :[/b] Lors de l'utilisation d'un [ArrayMesh], tous les attributs de "
"sommet sauf [constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL] et "
"[constant Mesh.ARRAY_TEX_UV] sont laissés inutilisés. Seuls [constant "
"Mesh.ARRAY_VERTEX] et [constant Mesh.ARRAY_TEX_UV] seront transmis au GPU.\n"
"[constant Mesh.ARRAY_NORMAL] n'est utilisé que pour déterminer quelles faces "
"nécessitent l'utilisation d'un ombrage plat. Par défaut, CSGMesh ignorera les "
"normales des sommets du maillage, les recalculera pour chaque sommet et "
"utilisera un shader lisse. Si un shader plat est nécessaire pour une face, "
"assurez-vous que toutes les normales de la face sont approximativement égales."

msgid "Extrudes a 2D polygon shape to create a 3D mesh."
msgstr "Extrude une forme de polygone 2D pour créer un maillage 3D."

msgid ""
"An array of 2D points is extruded to quickly and easily create a variety of "
"3D meshes. See also [CSGMesh3D] for using 3D meshes as CSG nodes.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Un tableau de points 2D est extrudé pour créer rapidement et facilement une "
"variété de maillages 3D. Voir aussi [CSGMesh3D] pour l'utilisation des "
"maillages 3D comme nœuds CSG.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid "When [member mode] is [constant MODE_DEPTH], the depth of the extrusion."
msgstr ""
"Quand [member mode] est [constant MODE_DEPTH], la profondeur de l'extrusion."

msgid ""
"Material to use for the resulting mesh. The UV maps the top half of the "
"material to the extruded shape (U along the length of the extrusions and V "
"around the outline of the [member polygon]), the bottom-left quarter to the "
"front end face, and the bottom-right quarter to the back end face."
msgstr ""
"Matériau à utiliser pour le maillage résultant. Les UV associent la partie "
"supérieure du matériau à la forme extrudée (U le long de la longueur des "
"extrusions et V autour du contour du [member polygon]), le quart inférieur "
"gauche à la face de fin avant, et le quart inférieur droit à la face de fin "
"arrière."

msgid "The [member mode] used to extrude the [member polygon]."
msgstr "Le [member mode] utilisé pour extruder le [member polygon]."

msgid ""
"When [member mode] is [constant MODE_PATH], by default, the top half of the "
"[member material] is stretched along the entire length of the extruded shape. "
"If [code]false[/code] the top half of the material is repeated every step of "
"the extrusion."
msgstr ""
"Lorsque [member mode] est [constant MODE_PATH], par défaut, la moitié "
"supérieure du [member material] est étirée sur toute la longueur de la forme "
"extrudée. Si [code]false[/code] la partie supérieure du matériau est répétée "
"à chaque étape de l'extrusion."

msgid ""
"When [member mode] is [constant MODE_PATH], the path interval or ratio of "
"path points to extrusions."
msgstr ""
"Lorsque [member mode] est [constant MODE_PATH], l'intervalle de chemin ou le "
"rapport de chemin pointe vers les extrusions."

msgid ""
"When [member mode] is [constant MODE_PATH], this will determine if the "
"interval should be by distance ([constant PATH_INTERVAL_DISTANCE]) or "
"subdivision fractions ([constant PATH_INTERVAL_SUBDIVIDE])."
msgstr ""
"Lorsque [member mode] est [constant MODE_PATH], cela déterminera si "
"l'intervalle doit être suivant la distance ([constant "
"PATH_INTERVAL_DISTANCE]) ou suivant une fraction des sous-divisions "
"([constant PATH_INTERVAL_SUBDIVIDE])."

msgid ""
"When [member mode] is [constant MODE_PATH], if [code]true[/code] the ends of "
"the path are joined, by adding an extrusion between the last and first points "
"of the path."
msgstr ""
"Lorsque [member mode] est [constant MODE_PATH], si [code]true[/code] les "
"extrémités du chemin sont jointes, en ajoutant une extrusion entre le dernier "
"et le premier points du chemin."

msgid ""
"When [member mode] is [constant MODE_PATH], if [code]true[/code] the "
"[Transform3D] of the [CSGPolygon3D] is used as the starting point for the "
"extrusions, not the [Transform3D] of the [member path_node]."
msgstr ""
"Lorsque [member mode] vaut [constant MODE_PATH], si [code]true[/code] la "
"[Transform3D] du [CSGPolygon3D] est utilisée comme point de départ pour les "
"extrusions, et non pas la [Transform3D] du [member path_node]."

msgid ""
"When [member mode] is [constant MODE_PATH], the location of the [Path3D] "
"object used to extrude the [member polygon]."
msgstr ""
"Lorsque [member mode] vaut [constant MODE_PATH], l'emplacement de l'objet "
"[Path3D] est utilisé pour extruder le [member polygon]."

msgid ""
"When [member mode] is [constant MODE_PATH], the path rotation method used to "
"rotate the [member polygon] as it is extruded."
msgstr ""
"Lorsque [member mode] vaut [constant MODE_PATH], la méthode de rotation du "
"chemin est utilisée pour faire pivoter le [member polygon] durant son "
"extrusion."

msgid ""
"When [member mode] is [constant MODE_PATH], if [code]true[/code] the polygon "
"will be rotated according to the proper tangent of the path at the sampled "
"points. If [code]false[/code] an approximation is used, which decreases in "
"accuracy as the number of subdivisions decreases."
msgstr ""
"Lorsque [member mode] vaut [constant MODE_PATH], si [code]true[/code], le "
"polygone sera tourné selon la tangente au chemin exacte aux points "
"échantillonnés. Si [code]false[/code] une approximation est utilisée, ce qui "
"diminue en précision lorsque le nombre de sous-divisions diminue."

msgid ""
"When [member mode] is [constant MODE_PATH], extrusions that are less than "
"this angle, will be merged together to reduce polygon count."
msgstr ""
"Lorsque [member mode] est [constant MODE_PATH], les extrusions qui sont "
"inférieures à cet angle seront fusionnés pour réduire le nombre de polygones."

msgid ""
"When [member mode] is [constant MODE_PATH], this is the distance along the "
"path, in meters, the texture coordinates will tile. When set to 0, texture "
"coordinates will match geometry exactly with no tiling."
msgstr ""
"Lorsque [member mode] est [constant MODE_PATH], c'est la distance le long du "
"chemin, en mètres, que les coordonnées de texture seront répétées. Quand à 0, "
"les coordonnées de texture correspondront exactement à la géométrie sans "
"répétition."

msgid ""
"The point array that defines the 2D polygon that is extruded. This can be a "
"convex or concave polygon with 3 or more points. The polygon must [i]not[/i] "
"have any intersecting edges. Otherwise, triangulation will fail and no mesh "
"will be generated.\n"
"[b]Note:[/b] If only 1 or 2 points are defined in [member polygon], no mesh "
"will be generated."
msgstr ""
"Le tableau de points qui définit le polygone 2D extrudé. Cela peut être un "
"polygone convexe ou concave avec 3 points ou plus. Le polygone ne doit "
"[i]pas[/i] avoir de bords qui sont des intersections. Sinon, la triangulation "
"échouera et aucun maillage ne sera généré.\n"
"[b]Note :[/b] Si seulement 1 ou 2 points sont définis dans [member polygon], "
"aucun maillage ne sera généré."

msgid "If [code]true[/code], applies smooth shading to the extrusions."
msgstr "Si [code]true[/code], applique un ombrage lisse aux extrusions."

msgid ""
"When [member mode] is [constant MODE_SPIN], the total number of degrees the "
"[member polygon] is rotated when extruding."
msgstr ""
"Quand [member mode] vaut [constant MODE_SPIN], le nombre total de degrés dont "
"le polygone [member polygon] est tourné lors de l'extrusion."

msgid ""
"When [member mode] is [constant MODE_SPIN], the number of extrusions made."
msgstr ""
"Quand [member mode] est [constant MODE_SPIN], le nombre d'extrusions faites."

msgid "The [member polygon] shape is extruded along the negative Z axis."
msgstr "La forme [member polygon] est extrudée le long de l'axe Z négatif."

msgid "The [member polygon] shape is extruded by rotating it around the Y axis."
msgstr ""
"La forme [member polygon] est extrudée en la faisant pivoter autour de l'axe "
"Y."

msgid ""
"The [member polygon] shape is extruded along the [Path3D] specified in "
"[member path_node]."
msgstr ""
"La forme [member polygon] est extrudée le long du [Path3D] spécifié par "
"[member path_node]."

msgid ""
"The [member polygon] shape is not rotated.\n"
"[b]Note:[/b] Requires the path Z coordinates to continually decrease to "
"ensure viable shapes."
msgstr ""
"La forme [member polygon] n'est pas tournée.\n"
"[b]Note :[/b] Nécessite que les coordonnées Z du chemin diminuent en continu "
"pour assurer des formes viables."

msgid ""
"The [member polygon] shape is rotated along the path, but it is not rotated "
"around the path axis.\n"
"[b]Note:[/b] Requires the path Z coordinates to continually decrease to "
"ensure viable shapes."
msgstr ""
"La forme [member polygon] est tournée le long du chemin, mais elle n'est pas "
"tournée autour de l'axe du chemin.\n"
"[b]Note :[/b] Nécessite que les coordonnées Z du chemin diminuent en continu "
"pour assurer des formes viables."

msgid ""
"The [member polygon] shape follows the path and its rotations around the path "
"axis."
msgstr ""
"La forme [member polygon] suit le chemin et pivote autour de l'axe du chemin."

msgid ""
"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
"will determine the distance, in meters, each interval of the path will "
"extrude."
msgstr ""
"Lorsque [member mode] est défini à [constant MODE_PATH], [member "
"path_interval] déterminera la distance, en mètres, entre chaque intervalle où "
"le chemin s'extrudera."

msgid ""
"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
"will subdivide the polygons along the path."
msgstr ""
"Lorsque [member mode] est défini [constant MODE_PATH], [member path_interval] "
"divisera les polygones le long du chemin."

msgid "Base class for CSG primitives."
msgstr "Classe de base pour les primitives CSG."

msgid ""
"Parent class for various CSG primitives. It contains code and functionality "
"that is common between them. It cannot be used directly. Instead use one of "
"the various classes that inherit from it.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Classe parente pour les primitives CSG. Elle contient du code et des "
"fonctionnalités communes entre elles. Elle ne peut pas être utilisée "
"directement. Utilisez plutôt l'une des différentes classes qui en héritent.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn."
msgstr ""
"Si défini, l'ordre des sommets dans chaque triangle est inversé, ce qui "
"résulte en le dessin des faces arrière du maillage."

msgid "The CSG base class."
msgstr "La classe de base CSG."

msgid ""
"This is the CSG base class that provides CSG operation support to the various "
"CSG nodes in Godot.\n"
"[b]Performance:[/b] CSG nodes are only intended for prototyping as they have "
"a significant CPU performance cost. Consider baking final CSG operation "
"results into static geometry that replaces the CSG nodes.\n"
"Individual CSG root node results can be baked to nodes with static resources "
"with the editor menu that appears when a CSG root node is selected.\n"
"Individual CSG root nodes can also be baked to static resources with scripts "
"by calling [method bake_static_mesh] for the visual mesh or [method "
"bake_collision_shape] for the physics collision.\n"
"Entire scenes of CSG nodes can be baked to static geometry and exported with "
"the editor glTF scene exporter: [b]Scene > Export As... > glTF 2.0 Scene...[/"
"b]"
msgstr ""
"C'est la classe de base CSG qui fournit le support des opérations CSG aux "
"différents nœuds CSG dans Godot.\n"
"[b]Performance :[/b] Les nœuds CSG ne sont destinés qu'au prototypage car ils "
"ont un coût de performance CPU important. Envisagez de pré-calculer les "
"résultats de l'opération CSG finale en géométrie statique qui remplace les "
"nœuds CSG.\n"
"Les résultats de nœud racine CSG individuels peuvent être pré-calculés vers "
"des nœuds avec des ressources statiques avec le menu de l'éditeur qui "
"apparaît quand un nœud racine CSG est sélectionné.\n"
"Les nœuds racine CSG individuels peuvent également être pré-calculés vers des "
"ressources statiques avec des scripts en appelant [method bake_static_mesh] "
"pour le maillage visuel ou [method bake_collision_shape] pour la collision "
"physique.\n"
"Des scènes entières de nœuds CSG peuvent être pré-calculées vers de la "
"géométrie statique et exportées avec l'exporteur de scène glTF de l'éditeur : "
"[b]Scène > Exporter en tant que.. > Scène glTF 2.0[/b]"

msgid ""
"Returns a baked physics [ConcavePolygonShape3D] of this node's CSG operation "
"result. Returns an empty shape if the node is not a CSG root node or has no "
"valid geometry.\n"
"[b]Performance:[/b] If the CSG operation results in a very detailed geometry "
"with many faces physics performance will be very slow. Concave shapes should "
"in general only be used for static level geometry and not with dynamic "
"objects that are moving.\n"
"[b]Note:[/b] CSG mesh data updates are deferred, which means they are updated "
"with a delay of one rendered frame. To avoid getting an empty shape or "
"outdated mesh data, make sure to call [code]await get_tree().process_frame[/"
"code] before using [method bake_collision_shape] in [method Node._ready] or "
"after changing properties on the [CSGShape3D]."
msgstr ""
"Renvoie une [ConcavePolygonShape3D] physique calculée du résultat de "
"l'opération CSG de ce nœud. Renvoie une forme vide si le nœud n'est pas un "
"nœud racine CSG ou n'a pas de géométrie valide.\n"
"[b]Performance :[/b] Si l'opération CSG aboutit à une géométrie très "
"détaillée avec de nombreuses faces, les performances de la physique seront "
"très faibles. Les formes concaves ne devraient en général être utilisées que "
"pour la géométrie de niveau statique et non avec des objets dynamiques qui se "
"déplacent.\n"
"[b]Note :[/b] Les mises à jour des données de maillage CSG sont différées, ce "
"qui signifie qu'elles sont mises à jour avec un délai d'un trame rendue. Pour "
"éviter d'obtenir une forme vide ou des données de maillage périmées, assurez-"
"vous d'appeler [code]await get_tree().process_frame[/code] avant d'utiliser "
"[method bake_collision_shape] dans [method Node._ready] ou après avoir "
"modifié des propriétés du [CSGShape3D]."

msgid ""
"Returns a baked static [ArrayMesh] of this node's CSG operation result. "
"Materials from involved CSG nodes are added as extra mesh surfaces. Returns "
"an empty mesh if the node is not a CSG root node or has no valid geometry.\n"
"[b]Note:[/b] CSG mesh data updates are deferred, which means they are updated "
"with a delay of one rendered frame. To avoid getting an empty mesh or "
"outdated mesh data, make sure to call [code]await get_tree().process_frame[/"
"code] before using [method bake_static_mesh] in [method Node._ready] or after "
"changing properties on the [CSGShape3D]."
msgstr ""
"Renvoie un [ArrayMesh] statique calculé du résultat de l'opération CSG de ce "
"nœud. Les matériaux des nœuds CSG impliqués sont ajoutés en tant que surfaces "
"de maillage supplémentaires. Renvoie un maillage vide si le nœud n'est pas un "
"nœud racine CSG ou n'a pas de géométrie valide.\n"
"[b]Note :[/b] Les mises à jour des données de maillage CSG sont différées, ce "
"qui signifie qu'elles sont mises à jour avec un délai d'un trame rendue. Pour "
"éviter d'obtenir un maillage vide ou des données de maillage périmées, "
"assurez-vous d'appeler [code]await get_tree().process_frame[/code] avant "
"d'utiliser [method bake_static_mesh] dans [method Node._ready] ou après avoir "
"modifié des propriétés du [CSGShape3D]."

msgid ""
"Returns an [Array] with two elements, the first is the [Transform3D] of this "
"node and the second is the root [Mesh] of this node. Only works when this "
"node is the root shape.\n"
"[b]Note:[/b] CSG mesh data updates are deferred, which means they are updated "
"with a delay of one rendered frame. To avoid getting an empty shape or "
"outdated mesh data, make sure to call [code]await get_tree().process_frame[/"
"code] before using [method get_meshes] in [method Node._ready] or after "
"changing properties on the [CSGShape3D]."
msgstr ""
"Renvoie un [Array] avec deux éléments, le premier est la [Transform3D] de ce "
"nœud et le second est le [Mesh] racine de ce nœud. Fonctionne seulement "
"lorsque ce nœud est la forme racine.\n"
"[b]Note :[/b] Les mises à jour des données de maillage CSG sont différées, ce "
"qui signifie qu'elles sont mises à jour avec un délai d'une trame rendue. "
"Pour éviter d'obtenir une forme vide ou des données de maillage périmées, "
"assurez-vous d'appeler [code]await get_tree().process_frame[/code] avant "
"d'utiliser [method get_meshes] dans [method Node._ready] ou après avoir "
"modifié des propriétés du [CSGShape3D]."

msgid ""
"Returns [code]true[/code] if this is a root shape and is thus the object that "
"is rendered."
msgstr ""
"Renvoie [code]true[/code] s’il s’agit d’une forme racine et est donc l’objet "
"rendu."

msgid ""
"The physics layers this area is in.\n"
"Collidable objects can exist in any of 32 different layers. These layers work "
"like a tagging system, and are not visual. A collidable can use these layers "
"to select with which objects it can collide, using the collision_mask "
"property.\n"
"A contact is detected if object A is in any of the layers that object B "
"scans, or object B is in any layer scanned by object A. See [url=$DOCS_URL/"
"tutorials/physics/physics_introduction.html#collision-layers-and-"
"masks]Collision layers and masks[/url] in the documentation for more "
"information."
msgstr ""
"Le calque physique de cette zone.\n"
"Les objets de collision peuvent exister dans l'un des 32 calques différentes. "
"Ces calques fonctionnent comme un système de marquage, et ne sont pas "
"visuels. Un objet de collision peut utiliser ces calques pour sélectionner "
"avec quels objets il peut entrer en collision, en utilisant la propriété "
"[member collision_mask].\n"
"Un contact est détecté si l'objet A est dans l'un des calques que l'objet B "
"observe, ou si l'objet B est dans tous les calques observés par l'objet A. "
"Voir [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-"
"layers-and-masks]Calques et masques de collision[/url] dans la documentation "
"pour plus d'informations."

msgid ""
"The physics layers this CSG shape scans for collisions. Only effective if "
"[member use_collision] is [code]true[/code]. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Les couche de physique que cette forme CSG scanne pour les collisions. "
"Seulement effectif si [member use_collision] vaut [code]true[/code]. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Niveaux et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"The priority used to solve colliding when occurring penetration. Only "
"effective if [member use_collision] is [code]true[/code]. The higher the "
"priority is, the lower the penetration into the object will be. This can for "
"example be used to prevent the player from breaking through the boundaries of "
"a level."
msgstr ""
"La priorité utilisée pour résoudre la collision lors de la pénétration. "
"Seulement effectif si [member use_collision] vaut [code]true[/code]. Plus la "
"priorité est élevée, plus la pénétration dans l'objet sera faible. Cela peut "
"par exemple être utilisé pour empêcher le joueur de franchir les limites d'un "
"niveau."

msgid ""
"The operation that is performed on this shape. This is ignored for the first "
"CSG child node as the operation is between this node and the previous child "
"of this nodes parent."
msgstr ""
"L'opération effectuée sur cette forme. Ceci est ignoré pour le premier nœud "
"enfant CSG puisque l'opération est entre ce nœud et l'enfant précédent de ce "
"nœud parent."

msgid "The CSG library no longer uses snapping."
msgstr "La bibliothèque CSG n'utilise dorénavant plus la magnétisation."

msgid "This property does nothing."
msgstr "Cette propriété ne fait rien."

msgid ""
"Adds a collision shape to the physics engine for our CSG shape. This will "
"always act like a static body. Note that the collision shape is still active "
"even if the CSG shape itself is hidden. See also [member collision_mask] and "
"[member collision_priority]."
msgstr ""
"Ajoute une forme de collision au moteur de physique pour notre forme CSG. "
"Cela agira toujours comme un corps statique. Notez que la forme de collision "
"est encore active même si la forme CSG elle-même est cachée. Voir aussi "
"[member collision_mask] et [member collision_priority]."

msgid "Geometry of both primitives is merged, intersecting geometry is removed."
msgstr ""
"La géométrie des deux primitives est fusionnée, la géométrie croisée est "
"supprimée."

msgid "Only intersecting geometry remains, the rest is removed."
msgstr "Il ne reste que la géométrie d'intersection, le reste est supprimé."

msgid ""
"The second shape is subtracted from the first, leaving a dent with its shape."
msgstr ""
"La deuxième forme est soustraite à la première, laissant une bosse avec sa "
"forme."

msgid "A CSG Sphere shape."
msgstr "Une forme de Sphère CSG."

msgid ""
"This node allows you to create a sphere for use with the CSG system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Ce nœud vous permet de créer une sphère à utiliser avec le système CSG.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid "The material used to render the sphere."
msgstr "Le matériau utilisé pour rendre la sphère."

msgid "Number of vertical slices for the sphere."
msgstr "Nombre de tranches verticales pour la sphère."

msgid "Radius of the sphere."
msgstr "Rayon de la sphère."

msgid "Number of horizontal slices for the sphere."
msgstr "Nombre de tranches horizontales pour la sphère."

msgid ""
"If [code]true[/code] the normals of the sphere are set to give a smooth "
"effect making the sphere seem rounded. If [code]false[/code] the sphere will "
"have a flat shaded look."
msgstr ""
"Si [code]true[/code], les normales de la sphère seront positionnées pour "
"donner un effet lisse faisant paraitre la sphère comme arrondie. Si "
"[code]false[/code], la sphère aura un ombrage plat."

msgid "A CSG Torus shape."
msgstr "Une forme de Tore CSG."

msgid ""
"This node allows you to create a torus for use with the CSG system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Ce nœud vous permet de créer un tore à utiliser avec le système CSG.\n"
"[b]Note : [/b] Les nœuds CSG sont destinés à être utilisés pour le "
"prototypage de niveau. Créer des nœuds CSG a un coût CPU important comparé à "
"la création d'un [MeshInstance3D] avec un [PrimitiveMesh]. Déplacer un nœud "
"CSG dans un autre nœud CSG a également un coût CPU important, ceci devrait "
"donc être évité pendant le gameplay."

msgid "The inner radius of the torus."
msgstr "Le rayon intérieur du tore."

msgid "The material used to render the torus."
msgstr "Le matériau utilisé pour rendre le tore."

msgid "The outer radius of the torus."
msgstr "Le rayon extérieur du tore."

msgid "The number of edges each ring of the torus is constructed of."
msgstr "Le nombre de bords dont chaque anneau du tore est constitué."

msgid "The number of slices the torus is constructed of."
msgstr "Le nombre de tranches dont le tore est constitué."

msgid ""
"If [code]true[/code] the normals of the torus are set to give a smooth effect "
"making the torus seem rounded. If [code]false[/code] the torus will have a "
"flat shaded look."
msgstr ""
"Si [code]true[/code] les normales du tore sont définies pour donner un effet "
"lisse donnant l'impression que le tore est arrondis. Si [code]false[/code] le "
"tore aura un aspect de rendu plat."

msgid "C# documentation index"
msgstr "Index de la documentation C#"

msgid "Returns a new instance of the script."
msgstr "Renvoie une nouvelle instance du script."

msgid "Creates a placeholder version of this resource ([PlaceholderCubemap])."
msgstr "Crée une version placeholder de cette ressource ([PlaceholderCubemap])."

msgid ""
"Creates a placeholder version of this resource ([PlaceholderCubemapArray])."
msgstr ""
"Crée une version placeholder de cette ressource ([PlaceholderCubemapArray])."

msgid "A mathematical curve."
msgstr "Une courbe mathématique."

msgid ""
"This resource describes a mathematical curve by defining a set of points and "
"tangents at each point. By default, it ranges between [code]0[/code] and "
"[code]1[/code] on the X and Y axes, but these ranges can be changed.\n"
"Please note that many resources and nodes assume they are given [i]unit "
"curves[/i]. A unit curve is a curve whose domain (the X axis) is between "
"[code]0[/code] and [code]1[/code]. Some examples of unit curve usage are "
"[member CPUParticles2D.angle_curve] and [member Line2D.width_curve]."
msgstr ""
"Cette ressource décrit une courbe mathématique en définissant un ensemble de "
"points et de tangentes à chaque point. Par défaut, elle s'étend entre "
"[code]0[/code] et [code]1[/code] sur les axes X et Y, mais ces plages peuvent "
"être modifiées.\n"
"Veuillez noter que de nombreuses ressources et nœuds supposent qu'ils "
"reçoivent des [i]courbes unitaires[/i]. Une courbe unitaire est une courbe "
"dont le domaine (l'axe X) est compris entre [code]0[/code] et [code]1[/code]. "
"Certains exemples d'utilisation de courbes unitaires sont [member "
"CPUParticles2D.angle_curve] et [member Line2D.width_curve]."

msgid ""
"Adds a point to the curve. For each side, if the [code]*_mode[/code] is "
"[constant TANGENT_LINEAR], the [code]*_tangent[/code] angle (in degrees) uses "
"the slope of the curve halfway to the adjacent point. Allows custom "
"assignments to the [code]*_tangent[/code] angle if [code]*_mode[/code] is set "
"to [constant TANGENT_FREE]."
msgstr ""
"Ajoute un point à la courbe. Pour chaque côté, si le [code]*_mode[/code] est "
"[constant TANGENT_LINEAR], l'angle [code]*_tangent[/code] (en degrés) utilise "
"la pente de la courbe définie par rapport à la demi-distance du point "
"adjacent. Permet des spécifier des tangentes personnalisées avec "
"[code]*_tangent[/code] si [code]*_mode[/code] est défini à [constant "
"TANGENT_FREE]."

msgid "Recomputes the baked cache of points for the curve."
msgstr "Recalcule le cache des points de la courbe."

msgid ""
"Removes duplicate points, i.e. points that are less than 0.00001 units "
"(engine epsilon value) away from their neighbor on the curve."
msgstr ""
"Retire les points dupliqués, c'est-à-dire les points qui sont moins de "
"0,00001 unités (valeur epsilon du moteur) de leur voisin sur la courbe."

msgid "Removes all points from the curve."
msgstr "Supprime tous les points de la courbe."

msgid ""
"Returns the difference between [member min_domain] and [member max_domain]."
msgstr "Renvoie la différence entre [member min_domain] et [member max_domain]."

msgid "Returns the left [enum TangentMode] for the point at [param index]."
msgstr ""
"Renvoie le [enum TangentMode] de gauche pour le point à l'index [param index]."

msgid ""
"Returns the left tangent angle (in degrees) for the point at [param index]."
msgstr ""
"Renvoie l'angle de la tangente gauche (en degrés) pour le point à l'index "
"[param index]."

msgid "Returns the curve coordinates for the point at [param index]."
msgstr "Renvoie les coordonnées de la courbe au point à l'index [param index]."

msgid "Returns the right [enum TangentMode] for the point at [param index]."
msgstr ""
"Renvoie le [enum TangentMode] à droite du point à l'index [param index]."

msgid ""
"Returns the right tangent angle (in degrees) for the point at [param index]."
msgstr ""
"Renvoie l'angle de la tangente droite (en degrés) pour le point à l'index "
"[param index]."

msgid ""
"Returns the difference between [member min_value] and [member max_value]."
msgstr "Renvoie la différence entre [member min_value] et [member max_value]."

msgid "Removes the point at [param index] from the curve."
msgstr "Supprime le point à l'index [param index] de la courbe."

msgid ""
"Returns the Y value for the point that would exist at the X position [param "
"offset] along the curve."
msgstr ""
"Renvoie la valeur Y pour un point qui existerait à la position X [param "
"offset] le long de la courbe."

msgid ""
"Returns the Y value for the point that would exist at the X position [param "
"offset] along the curve using the baked cache. Bakes the curve's points if "
"not already baked."
msgstr ""
"Renvoie la valeur Y pour un point qui existerait à la position X [param "
"offset] le long de la courbe en utilisant le cache pré-calculé. Pré-calcule "
"les points de la courbe si cela n'a pas déjà été fait."

msgid ""
"Sets the left [enum TangentMode] for the point at [param index] to [param "
"mode]."
msgstr ""
"Définit la [enum TangentMode] à gauche du point d'index [param index] à "
"[param mode]."

msgid ""
"Sets the left tangent angle for the point at [param index] to [param tangent]."
msgstr ""
"Définit l'angle de la tangente gauche pour le point d'index [param index] à "
"[param tangent]."

msgid "Sets the offset from [code]0.5[/code]."
msgstr "Définit le décalage à partir de [code]0.5[/code]."

msgid ""
"Sets the right [enum TangentMode] for the point at [param index] to [param "
"mode]."
msgstr ""
"Définit la [enum TangentMode] à droite du point d'index [param index] à "
"[param mode]."

msgid ""
"Sets the right tangent angle for the point at [param index] to [param "
"tangent]."
msgstr ""
"Définit l'angle de la tangente droite pour le point d'index [param index] à "
"[param tangent]."

msgid "Assigns the vertical position [param y] to the point at [param index]."
msgstr ""
"Assigne la position verticale [param y] au point à l'index [param index]."

msgid "The number of points to include in the baked (i.e. cached) curve data."
msgstr "Le nombre de points à inclure dans les données de cache de la courbe."

msgid "The maximum domain (x-coordinate) that points can have."
msgstr "Le domaine maximum (coordonnée en X) que les points peuvent avoir."

msgid ""
"The maximum value (y-coordinate) that points can have. Tangents can cause "
"higher values between points."
msgstr ""
"La valeur maximale (coordonnée en Y) que les points peuvent avoir. Les "
"tangentes peuvent causer des valeurs plus élevées entre les points."

msgid "The minimum domain (x-coordinate) that points can have."
msgstr "Le domaine minimum (coordonnée en X) que les points peuvent avoir."

msgid ""
"The minimum value (y-coordinate) that points can have. Tangents can cause "
"lower values between points."
msgstr ""
"La valeur minimale (en coordonnée y) que les points peuvent avoir. Les "
"tangentes peuvent causer des valeurs inférieures entre les points."

msgid "The number of points describing the curve."
msgstr "Le nombre de points décrivant la courbe."

msgid "Emitted when [member max_domain] or [member min_domain] is changed."
msgstr "Émis quand [member max_domain] ou [member min_domain] est changé."

msgid "Emitted when [member max_value] or [member min_value] is changed."
msgstr "Émis quand [member max_value] ou [member min_value] est changé."

msgid "The tangent on this side of the point is user-defined."
msgstr "La tangente de ce côté du point est personnalisée."

msgid ""
"The curve calculates the tangent on this side of the point as the slope "
"halfway towards the adjacent point."
msgstr ""
"La courbe calcule la tangente de ce côté du point comme la pente avec la demi-"
"distance du point adjacent."

msgid "The total number of available tangent modes."
msgstr "Le nombre total de modes de tangentes disponibles."

msgid "Describes a Bézier curve in 2D space."
msgstr "Décrit une courbe de Bézier dans l'espace 2D."

msgid ""
"This class describes a Bézier curve in 2D space. It is mainly used to give a "
"shape to a [Path2D], but can be manually sampled for other purposes.\n"
"It keeps a cache of precalculated points along the curve, to speed up further "
"calculations."
msgstr ""
"Cette classe décrit une courbe de Bézier en 2D. C'est principalement utilisé "
"pour définir un chemin [Path2D], mais ça peut être utilisé manuellement pour "
"d'autres usages.\n"
"Ça garde un cache des points calculés le long de la courbe, pour accélérer "
"les calculs ultérieurs."

msgid ""
"Adds a point with the specified [param position] relative to the curve's own "
"position, with control points [param in] and [param out]. Appends the new "
"point at the end of the point list.\n"
"If [param index] is given, the new point is inserted before the existing "
"point identified by index [param index]. Every existing point starting from "
"[param index] is shifted further down the list of points. The index must be "
"greater than or equal to [code]0[/code] and must not exceed the number of "
"existing points in the line. See [member point_count]."
msgstr ""
"Ajoute un point avec la [param position] spécifiée relative à la propre "
"position de la courbe, avec des points de contrôle d'entrée [param in] et de "
"sortie [param out]. Ajoute le nouveau point à la fin de la liste des points.\n"
"Si [param index] est spécifié, le point est inséré juste avant le point "
"existant à l'index identifié par [param index]. Chaque point existant "
"commençant à l'index [param index] est décalé d'un vers le fond vers la liste "
"des points. L'index doit être supérieur ou égal à [code]0[/code] et ne doit "
"pas dépasser le nombre de points existants dans la ligne. Voir [member "
"point_count]."

msgid ""
"Returns the total length of the curve, based on the cached points. Given "
"enough density (see [member bake_interval]), it should be approximate enough."
msgstr ""
"Renvoie la longueur totale de la courbe, à partir de la distance entre les "
"points mis en cache. Si la densité est suffisante (voir [member "
"bake_interval]), cette longeur devrait être une approximation suffisante."

msgid "Returns the cache of points as a [PackedVector2Array]."
msgstr "Renvoie le cache de points sous forme de [PackedVector2Array]."

msgid ""
"Returns the closest offset to [param to_point]. This offset is meant to be "
"used in [method sample_baked].\n"
"[param to_point] must be in this curve's local space."
msgstr ""
"Renvoie le décalage le plus proche de [param to_point]. Ce décalage est "
"destiné à être utilisé dans [method sample_baked].\n"
"[param to_point] doit être dans l'espace local de la courbe."

msgid ""
"Returns the closest point on baked segments (in curve's local space) to "
"[param to_point].\n"
"[param to_point] must be in this curve's local space."
msgstr ""
"Renvoie le point en cache le plus proche (dans l'espace local de la courbe) "
"de [param to_point].\n"
"[param to_point] doit être dans l'espace local de la courbe."

msgid ""
"Returns the position of the control point leading to the vertex [param idx]. "
"The returned position is relative to the vertex [param idx]. If the index is "
"out of bounds, the function sends an error to the console, and returns [code]"
"(0, 0)[/code]."
msgstr ""
"Renvoie la position du point de contrôle menant vers le sommet d'index [param "
"idx]. La position renvoyée est relative au sommet d'index [param idx]. Si "
"l'index est hors limites, la fonction affiche une erreur dans la console, et "
"renvoie [code](0, 0)[/code]."

msgid ""
"Returns the position of the control point leading out of the vertex [param "
"idx]. The returned position is relative to the vertex [param idx]. If the "
"index is out of bounds, the function sends an error to the console, and "
"returns [code](0, 0)[/code]."
msgstr ""
"Renvoie la position du point de contrôle en partant du sommet d'index [param "
"idx]. La position renvoyée est relative au sommet d'index [param idx]. Si "
"l'index est hors limites, la fonction affiche une erreur dans la console, et "
"renvoie [code](0, 0)[/code]."

msgid ""
"Returns the position of the vertex [param idx]. If the index is out of "
"bounds, the function sends an error to the console, and returns [code](0, 0)[/"
"code]."
msgstr ""
"Renvoie la position du sommet d'index [param idx]. Si l'index est hors "
"limites, la fonction affiche une erreur dans la console, et renvoie [code](0, "
"0)[/code]."

msgid ""
"Deletes the point [param idx] from the curve. Sends an error to the console "
"if [param idx] is out of bounds."
msgstr ""
"Supprime le point d'index [param idx] de la courbe. Affiche une erreur dans "
"la console si [param idx] est hors limites."

msgid ""
"Returns the position between the vertex [param idx] and the vertex [code]idx "
"+ 1[/code], where [param t] controls if the point is the first vertex "
"([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), or in "
"between. Values of [param t] outside the range ([code]0.0 <= t <= 1.0[/code]) "
"give strange, but predictable results.\n"
"If [param idx] is out of bounds it is truncated to the first or last vertex, "
"and [param t] is ignored. If the curve has no points, the function sends an "
"error to the console, and returns [code](0, 0)[/code]."
msgstr ""
"Renvoie la position entre le sommet d'index [param idx] et le sommet d'index "
"[code]idx + 1[/code], où [param t] contrôle si le point est le premier sommet "
"([code]t = 0,0[/code]), le dernier sommet ([code]t = 1.0[/code]), ou entre "
"les deux. Les valeurs de [param t] en dehors de l'intervalle ([code]0.0 >= t "
"<=1[/code]) donnent des résultats inattendus, mais prévisibles.\n"
"Si [param idx] est hors limites, il est tronqué au premier ou au dernier "
"sommet, et [param t] est ignoré. Si la courbe n'a pas de points, la fonction "
"affiche une erreur dans la console, et renvoie [code](0, 0)[/code]."

msgid ""
"Returns a point within the curve at position [param offset], where [param "
"offset] is measured as a pixel distance along the curve.\n"
"To do that, it finds the two cached points where the [param offset] lies "
"between, then interpolates the values. This interpolation is cubic if [param "
"cubic] is set to [code]true[/code], or linear if set to [code]false[/code].\n"
"Cubic interpolation tends to follow the curves better, but linear is faster "
"(and often, precise enough)."
msgstr ""
"Renvoie un point dans la courbe à la position [param offset], où [param "
"offset] est mesuré en pixels le long de la courbe.\n"
"Pour cela, elle trouve les deux points dans le cache où [param offset] se "
"situe entre, puis interpole les valeurs. Cette interpolation est cubique si "
"[param cubic] vaut [code]true[/code], ou linéaire s'il vaut [code]false[/"
"code].\n"
"L'interpolation cubique tend à mieux suivre les courbes, mais l'interpolation "
"linéaire est plus rapide (et souvent bien assez précise)."

msgid ""
"Similar to [method sample_baked], but returns [Transform2D] that includes a "
"rotation along the curve, with [member Transform2D.origin] as the point "
"position and the [member Transform2D.x] vector pointing in the direction of "
"the path at that point. Returns an empty transform if the length of the curve "
"is [code]0[/code].\n"
"[codeblock]\n"
"var baked = curve.sample_baked_with_rotation(offset)\n"
"# The returned Transform2D can be set directly.\n"
"transform = baked\n"
"# You can also read the origin and rotation separately from the returned "
"Transform2D.\n"
"position = baked.get_origin()\n"
"rotation = baked.get_rotation()\n"
"[/codeblock]"
msgstr ""
"Similaire à [method sample_baked], mais renvoie une [Transform2D] qui inclut "
"une rotation le long de la courbe, avec [member Transform2D.origin] comme "
"position du point et le vecteur [member Transform2D.x] pointant dans la "
"direction du chemin à ce point. Renvoie une transformation vide si la "
"longueur de la courbe est de [code]0[/code].\n"
"[codeblock]\n"
"var baked = curve.sample_baked_with_rotation(offset)\n"
"# La Transform2D renvoyée peut être définie directement.\n"
"transform = four\n"
"# Vous pouvez également lire l'origine et la rotation séparément depuis la "
"Transform2D renvoyée.\n"
"position = baked.get_origin()\n"
"rotation = baked.get_rotation()\n"
"[/codeblock]"

msgid ""
"Returns the position at the vertex [param fofs]. It calls [method sample] "
"using the integer part of [param fofs] as [code]idx[/code], and its "
"fractional part as [code]t[/code]."
msgstr ""
"Renvoie la position au sommet [param fofs]. Cela appelle [method sample] en "
"utilisant la partie entière de [param fofs] pour [code]idx[/code], et sa "
"partie décimale pour [code]t[/code]."

msgid ""
"Sets the position of the control point leading to the vertex [param idx]. If "
"the index is out of bounds, the function sends an error to the console. The "
"position is relative to the vertex."
msgstr ""
"Définit la position du point de contrôle menant au sommet d'index [param "
"idx]. Si l'index est hors des limites, la fonction affiche une erreur dans la "
"console. La position est relative au sommet."

msgid ""
"Sets the position of the control point leading out of the vertex [param idx]. "
"If the index is out of bounds, the function sends an error to the console. "
"The position is relative to the vertex."
msgstr ""
"Définit la position du point de contrôle partant du sommet d'index [param "
"idx]. Si l'index est hors des limites, la fonction affiche une erreur dans la "
"console. La position est relative au sommet."

msgid ""
"Sets the position for the vertex [param idx]. If the index is out of bounds, "
"the function sends an error to the console."
msgstr ""
"Définit la position pour le sommet d'index [param idx]. Si l'index est hors "
"des limites, la fonction affiche une erreur dans la console."

msgid ""
"Returns a list of points along the curve, with a curvature controlled point "
"density. That is, the curvier parts will have more points than the straighter "
"parts.\n"
"This approximation makes straight segments between each point, then "
"subdivides those segments until the resulting shape is similar enough.\n"
"[param max_stages] controls how many subdivisions a curve segment may face "
"before it is considered approximate enough. Each subdivision splits the "
"segment in half, so the default 5 stages may mean up to 32 subdivisions per "
"curve segment. Increase with care!\n"
"[param tolerance_degrees] controls how many degrees the midpoint of a segment "
"may deviate from the real curve, before the segment has to be subdivided."
msgstr ""
"Renvoie une liste de points le long de la courbe, avec une densité de point "
"contrôlée par sa courbure. C'est-à-dire que les virages de la courbe auront "
"plus de points que les segments bien droits.\n"
"Cette approximation génère des segments droits entre chaque point, puis "
"divise ces segments jusqu'à ce que la nouvelle forme soit assez proche.\n"
"L'argument [param max_stages] contrôle le nombre de divisions qu'un segment "
"de courbe peut avoir avant qu'il soit considéré comme assez proche. Chaque "
"division découpe le segment en deux, de sorte que les 5 étapes par défaut "
"peuvent atteindre 32 divisions par segment de la courbe. Soyez donc prudent "
"si vous augmentez cette valeur !\n"
"L'argument [param tolerance_degrees] contrôle de quel angle, en degrés, le "
"point du milieu d'un segment peut s'éloigner de la vraie courbe avant que le "
"segment ne soit divisé."

msgid ""
"Returns a list of points along the curve, with almost uniform density. [param "
"max_stages] controls how many subdivisions a curve segment may face before it "
"is considered approximate enough. Each subdivision splits the segment in "
"half, so the default 5 stages may mean up to 32 subdivisions per curve "
"segment. Increase with care!\n"
"[param tolerance_length] controls the maximal distance between two "
"neighboring points, before the segment has to be subdivided."
msgstr ""
"Renvoie une liste de points le long de la courbe, avec une densité presque "
"uniforme. [param max_stages] contrôle le nombre de subdivisions qu'un segment "
"de courbe peut avoir avant qu'il ne soit considéré comme assez approximé. "
"Chaque subdivision divise le segment en deux, de sorte que les 5 étapes par "
"défaut peuvent atteindre jusqu'à 32 subdivisions par segment de courbe. À "
"accroître avec soin !\n"
"[param tolerance_length] contrôle la distance maximale entre deux points "
"voisins, avant que le segment ne soit subdivisé."

msgid ""
"The distance in pixels between two adjacent cached points. Changing it forces "
"the cache to be recomputed the next time the [method get_baked_points] or "
"[method get_baked_length] function is called. The smaller the distance, the "
"more points in the cache and the more memory it will consume, so use with "
"care."
msgstr ""
"La distance en pixels entre deux points du cache qui sont voisins. Le "
"changement recalcule le cache des points la fois suivante où [method "
"get_baked_points] ou [method get_baked_length] sera appelée. Plus la distance "
"est petite, plus il y a de points dans ce cache, et donc plus il consommera "
"de mémoire, à utiliser donc avec soin."

msgid "Describes a Bézier curve in 3D space."
msgstr "Décrit une courbe de Bézier dans l’espace 3D."

msgid ""
"This class describes a Bézier curve in 3D space. It is mainly used to give a "
"shape to a [Path3D], but can be manually sampled for other purposes.\n"
"It keeps a cache of precalculated points along the curve, to speed up further "
"calculations."
msgstr ""
"Cette classe décrit une courbe de Bézier dans l'espace 3D. Elle est "
"principalement utilisée pour donner une forme à un [Path3D], mais peut être "
"échantillonnée manuellement à d'autres fins.\n"
"Elle conserve un cache des points précalculés le long de la courbe, pour "
"accélérer les calculs suivants."

msgid "Returns the cache of points as a [PackedVector3Array]."
msgstr "Renvoie le cache des points en tant que [PackedVector3Array]."

msgid "Returns the cache of tilts as a [PackedFloat32Array]."
msgstr "Renvoie le cache des inclinaisons en tant que [PackedFloat32Array]."

msgid ""
"Returns the cache of up vectors as a [PackedVector3Array].\n"
"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
msgstr ""
"Renvoie le cache des vecteurs haut dans un [PackedVector3Array].\n"
"Si [member up_vector_enabled] vaut [code]false[/code], le cache sera vide."

msgid ""
"Returns the closest offset to [param to_point]. This offset is meant to be "
"used in [method sample_baked] or [method sample_baked_up_vector].\n"
"[param to_point] must be in this curve's local space."
msgstr ""
"Renvoie le décalage le plus proche de [param to_point]. Ce décalage est "
"destiné à être utilisé dans [method sample_baked] ou [method "
"sample_baked_up_vector].\n"
"[param to_point] doit être dans l'espace local de cette courbe."

msgid ""
"Returns the position of the control point leading to the vertex [param idx]. "
"The returned position is relative to the vertex [param idx]. If the index is "
"out of bounds, the function sends an error to the console, and returns [code]"
"(0, 0, 0)[/code]."
msgstr ""
"Renvoie la position du point de contrôle menant au sommet d'index [param "
"idx]. La position renvoyée est relative au sommet d'index [param idx]. Si "
"l'index est hors limites, la fonction affiche une erreur dans la console, et "
"renvoie [code](0, 0, 0)[/code]."

msgid ""
"Returns the position of the control point leading out of the vertex [param "
"idx]. The returned position is relative to the vertex [param idx]. If the "
"index is out of bounds, the function sends an error to the console, and "
"returns [code](0, 0, 0)[/code]."
msgstr ""
"Renvoie la position du point de contrôle partant du sommet d'index [param "
"idx]. La position renvoyée est relative au sommet d'index [param idx]. Si "
"l'index est hors limites, la fonction affiche une erreur dans la console, et "
"renvoie [code](0, 0, 0)[/code]."

msgid ""
"Returns the position of the vertex [param idx]. If the index is out of "
"bounds, the function sends an error to the console, and returns [code](0, 0, "
"0)[/code]."
msgstr ""
"Renvoie la position du sommet d'index [param idx]. Si l'index est hors des "
"limites, la fonction affiche une erreur dans la console, et renvoie [code](0, "
"0, 0)[/code]."

msgid ""
"Returns the tilt angle in radians for the point [param idx]. If the index is "
"out of bounds, the function sends an error to the console, and returns "
"[code]0[/code]."
msgstr ""
"Renvoie l'angle d'inclinaison en radians pour le point à l'index [param idx]. "
"Si l'index est hors des limites, la fonction affiche une erreur dans la "
"console, et renvoie [code]0[/code]."

msgid ""
"Returns the position between the vertex [param idx] and the vertex [code]idx "
"+ 1[/code], where [param t] controls if the point is the first vertex "
"([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), or in "
"between. Values of [param t] outside the range ([code]0.0 >= t <=1[/code]) "
"give strange, but predictable results.\n"
"If [param idx] is out of bounds it is truncated to the first or last vertex, "
"and [param t] is ignored. If the curve has no points, the function sends an "
"error to the console, and returns [code](0, 0, 0)[/code]."
msgstr ""
"Renvoie la position entre le sommet d'index [param idx] et le sommet d'index "
"[code]idx + 1[/code], où [param t] contrôle si le point est le premier sommet "
"([code]t = 0,0[/code]), le dernier sommet ([code]t = 1.0[/code]), ou entre "
"ces deux valeurs. Les valeurs de [param t] en dehors de l'intervalle "
"([code]0.0 >= t <=1[/code]) donnent des résultats inattendus, mais "
"prévisibles.\n"
"Si [param idx] est hors limites, il est tronqué au premier ou au dernier "
"sommet, et [param t] est ignoré. Si la courbe n'a pas de points, la fonction "
"affiche une erreur dans la console, et renvoie [code](0, 0, 0)[/code]."

msgid ""
"Returns a point within the curve at position [param offset], where [param "
"offset] is measured as a distance in 3D units along the curve. To do that, it "
"finds the two cached points where the [param offset] lies between, then "
"interpolates the values. This interpolation is cubic if [param cubic] is set "
"to [code]true[/code], or linear if set to [code]false[/code].\n"
"Cubic interpolation tends to follow the curves better, but linear is faster "
"(and often, precise enough)."
msgstr ""
"Renvoie un point dans la courbe à la position [param offset], où [param "
"offset] est mesuré en unités 3D le long de la courbe. Pour cela, elle trouve "
"les deux points dans le cache où le [param offset] se situe entre, puis "
"interpole les valeurs. Cette interpolation est cubique si [param cubic] vaut "
"[code]true[/code], ou linéaire s'il vaut [code]false[/code].\n"
"L'interpolation cubique tend à mieux suivre les courbes, mais l'interpolation "
"linéaire est plus rapide (et souvent bien assez précise)."

msgid ""
"Returns an up vector within the curve at position [param offset], where "
"[param offset] is measured as a distance in 3D units along the curve. To do "
"that, it finds the two cached up vectors where the [param offset] lies "
"between, then interpolates the values. If [param apply_tilt] is [code]true[/"
"code], an interpolated tilt is applied to the interpolated up vector.\n"
"If the curve has no up vectors, the function sends an error to the console, "
"and returns [code](0, 1, 0)[/code]."
msgstr ""
"Renvoie un vecteur haut dans la courbe à la position [param offset], où "
"[param offset] est mesuré en unités 3D le long de la courbe. Pour cela, il "
"trouve les deux vecteurs haut dans le cache où le [param offset] se situe "
"entre, puis interpole les valeurs. Si [param apply_tilt] vaut [code]true[/"
"code], une inclinaison interpolée est aussi appliquée au vecteur haut "
"interpolé.\n"
"Si la courbe n'a pas de vecteurs, la fonction affiche une erreur dans la "
"console, et renvoie [code](0, 1, 0)[/code]."

msgid ""
"Returns a [Transform3D] with [code]origin[/code] as point position, "
"[code]basis.x[/code] as sideway vector, [code]basis.y[/code] as up vector, "
"[code]basis.z[/code] as forward vector. When the curve length is 0, there is "
"no reasonable way to calculate the rotation, all vectors aligned with global "
"space axes. See also [method sample_baked]."
msgstr ""
"Renvoie une [Transform3D] avec [code]origin[/code] comme position du point, "
"[code]basis.x[/code] comme vecteur de côté, [code]basis.y[/code] comme "
"vecteur haut, [code]basis.z[/code] comme vecteur avant. Lorsque la longueur "
"de la courbe est de 0, il n'y a aucun moyen raisonnable de calculer la "
"rotation, tous les vecteurs étant alignés sur les axes spatiaux globaux. Voir "
"aussi [method sample_baked]."

msgid ""
"Sets the tilt angle in radians for the point [param idx]. If the index is out "
"of bounds, the function sends an error to the console.\n"
"The tilt controls the rotation along the look-at axis an object traveling the "
"path would have. In the case of a curve controlling a [PathFollow3D], this "
"tilt is an offset over the natural tilt the [PathFollow3D] calculates."
msgstr ""
"Définit l'angle d'inclinaison en radians pour le point d'index [param idx]. "
"Si l'index est hors limites, la fonction affiche une erreur dans la console.\n"
"L'inclinaison contrôle la rotation le long de l'axe avant qu'un objet "
"parcourant la courbe aurait. Dans le cas d'une courbe contrôlant un "
"[PathFollow3D], cette inclinaison est un décalage sur l'inclinaison naturelle "
"que calcule le [PathFollow3D]."

msgid ""
"The distance in meters between two adjacent cached points. Changing it forces "
"the cache to be recomputed the next time the [method get_baked_points] or "
"[method get_baked_length] function is called. The smaller the distance, the "
"more points in the cache and the more memory it will consume, so use with "
"care."
msgstr ""
"La distance en unités entre deux points de cache adjacents. Le changement "
"force le cache à être recalculé la prochaine fois que la fonction [method "
"get_baked_points] ou [method get_baked_length] sera appelée. Plus la distance "
"est petite, plus il y aura de points dans le cache, et plus ça utilisera de "
"mémoire, à utiliser donc avec soin."

msgid ""
"If [code]true[/code], and the curve has more than 2 control points, the last "
"point and the first one will be connected in a loop."
msgstr ""
"Si [code]true[/code] et que la courbe a plus de 2 points de contrôle, le "
"dernier et le premier point seront connectés en une boucle."

msgid ""
"If [code]true[/code], the curve will bake up vectors used for orientation. "
"This is used when [member PathFollow3D.rotation_mode] is set to [constant "
"PathFollow3D.ROTATION_ORIENTED]. Changing it forces the cache to be "
"recomputed."
msgstr ""
"Si [code]true[/code], la courbe pré-calcule les vecteurs utilisés pour "
"l'orientation. Ceci est utilisé lorsque [member PathFollow3D.rotation_mode] "
"est défini à [constant PathFollow3D.ROTATION_ORIENTED]. Le changer force le "
"cache à être recalculé."

msgid "A 1D texture where pixel brightness corresponds to points on a curve."
msgstr ""
"Une texture 1D où la luminosité des pixels correspond à des points sur une "
"courbe."

msgid ""
"A 1D texture where pixel brightness corresponds to points on a unit [Curve] "
"resource, either in grayscale or in red. This visual representation "
"simplifies the task of saving curves as image files.\n"
"If you need to store up to 3 curves within a single texture, use "
"[CurveXYZTexture] instead. See also [GradientTexture1D] and "
"[GradientTexture2D]."
msgstr ""
"Une texture 1D où la luminosité des pixels correspond à des points sur une "
"ressource [Curve] unitaire, soit en gris ou en rouge. Cette représentation "
"visuelle simplifie la tâche de sauvegarder les courbes en tant que fichiers "
"image.\n"
"Si vous devez stocker jusqu'à 3 courbes dans une seule texture, utilisez "
"[CurveXYZTexture] à la place. Voir aussi [GradientTexture1D] et "
"[GradientTexture2D]."

msgid "The [Curve] that is rendered onto the texture. Should be a unit [Curve]."
msgstr ""
"La [Curve] qui est rendue sur la texture. Devrait être une [Curve] unitaire."

msgid ""
"The format the texture should be generated with. When passing a CurveTexture "
"as an input to a [Shader], this may need to be adjusted."
msgstr ""
"Le format avec lequel devrait être générée la texture. Lors du passage d'une "
"CurveTexture comme entrée à un [Shader], il peut être nécessaire d'ajuster "
"cela."

msgid ""
"The width of the texture (in pixels). Higher values make it possible to "
"represent high-frequency data better (such as sudden direction changes), at "
"the cost of increased generation time and memory usage."
msgstr ""
"La largeur de la texture (en pixels). Des valeurs plus élevées permettent de "
"mieux représenter les données à haute fréquence (comme les changements "
"soudains de direction) au coût de l'utilisation accrue du temps de génération "
"et de la mémoire."

msgid ""
"Store the curve equally across the red, green and blue channels. This uses "
"more video memory, but is more compatible with shaders that only read the "
"green and blue values."
msgstr ""
"Stocke la courbe de manière égale sur les canaux rouges, verts et bleus. Cela "
"utilise plus de mémoire vidéo, mais est plus compatible avec les shaders qui "
"ne lisent que les valeurs vertes et bleues."

msgid ""
"Store the curve only in the red channel. This saves video memory, but some "
"custom shaders may not be able to work with this."
msgstr ""
"Stocke la courbe seulement dans le canal rouge. Cela économise de la mémoire "
"vidéo, mais certains shaders personnalisés peuvent ne pas être en mesure de "
"travailler avec cela."

msgid ""
"A 1D texture where the red, green, and blue color channels correspond to "
"points on 3 curves."
msgstr ""
"Une texture 1D où les canaux rouge, vert, bleu correspondent à des points sur "
"3 courbes."

msgid ""
"A 1D texture where the red, green, and blue color channels correspond to "
"points on 3 unit [Curve] resources. Compared to using separate "
"[CurveTexture]s, this further simplifies the task of saving curves as image "
"files.\n"
"If you only need to store one curve within a single texture, use "
"[CurveTexture] instead. See also [GradientTexture1D] and [GradientTexture2D]."
msgstr ""
"Une texture 1D où les canaux de couleur rouge, vert, bleu correspondent à des "
"points sur 3 ressources [Curve] unitaires. Comparé à l'utilisation de "
"[CurveTexture]s séparées, cela simplifie encore plus la tâche de sauvegarder "
"les courbes en tant que fichiers image.\n"
"Si vous ne devez stocker qu'une seule courbe dans une texture, utilisez "
"[CurveTexture] à la place. Voir aussi [GradientTexture1D] et "
"[GradientTexture2D]."

msgid ""
"The [Curve] that is rendered onto the texture's red channel. Should be a unit "
"[Curve]."
msgstr ""
"La [Curve] qui est rendue sur le canal rouge de la texture. Devrait être une "
"[Curve] unitaire."

msgid ""
"The [Curve] that is rendered onto the texture's green channel. Should be a "
"unit [Curve]."
msgstr ""
"La [Curve] qui est rendue sur le canal vert de la texture. Devrait être une "
"[Curve] unitaire."

msgid ""
"The [Curve] that is rendered onto the texture's blue channel. Should be a "
"unit [Curve]."
msgstr ""
"La [Curve] qui est rendue sur le canal bleu de la texture. Devrait être une "
"[Curve] unitaire."

msgid "Class representing a cylindrical [PrimitiveMesh]."
msgstr "Classe représentant un cylindrique [PrimitiveMesh]."

msgid ""
"Class representing a cylindrical [PrimitiveMesh]. This class can be used to "
"create cones by setting either the [member top_radius] or [member "
"bottom_radius] properties to [code]0.0[/code]."
msgstr ""
"La classe représentant un [PrimitiveMesh] cylindrique. Cette classe peut être "
"utilisée pour créer des cônes en définissant la propriété [member top_radius] "
"ou [member bottom_radius] à [code]0.0[/code]."

msgid ""
"Bottom radius of the cylinder. If set to [code]0.0[/code], the bottom faces "
"will not be generated, resulting in a conic shape. See also [member "
"cap_bottom]."
msgstr ""
"Rayon inférieur du cylindre. Si défini à [code]0.0[/code], les faces "
"inférieures ne seront pas générées, ce qui résulte en une forme conique. Voir "
"aussi [member cap_bottom]."

msgid ""
"If [code]true[/code], generates a cap at the bottom of the cylinder. This can "
"be set to [code]false[/code] to speed up generation and rendering when the "
"cap is never seen by the camera. See also [member bottom_radius].\n"
"[b]Note:[/b] If [member bottom_radius] is [code]0.0[/code], cap generation is "
"always skipped even if [member cap_bottom] is [code]true[/code]."
msgstr ""
"Si [code]true[/code], génère un bouchon en bas du cylindre. Cela peut être "
"défini à [code]false[/code] pour accélérer la génération et le rendu lorsque "
"le bouchon n'est jamais vu par la caméra. Voir aussi [member bottom_radius].\n"
"[b]Note :[/b] Si [member bottom_radius] vaut [code]0.0[/code], la génération "
"du bouchon est toujours ignorée même si [member cap_bottom] vaut [code]true[/"
"code]."

msgid ""
"If [code]true[/code], generates a cap at the top of the cylinder. This can be "
"set to [code]false[/code] to speed up generation and rendering when the cap "
"is never seen by the camera. See also [member top_radius].\n"
"[b]Note:[/b] If [member top_radius] is [code]0.0[/code], cap generation is "
"always skipped even if [member cap_top] is [code]true[/code]."
msgstr ""
"Si [code]true[/code], génère un bouchon en haut du cylindre. Cela peut être "
"défini à [code]false[/code] pour accélérer la génération et le rendu lorsque "
"le bouchon n'est jamais vu par la caméra. Voir aussi [member top_radius].\n"
"[b]Note :[/b] Si [member top_radius] vaut [code]0.0[/code], la génération du "
"bouchon est toujours ignorée même si [member cap_top] vaut [code]true[/code]."

msgid "Full height of the cylinder."
msgstr "Pleine hauteur du cylindre."

msgid ""
"Number of radial segments on the cylinder. Higher values result in a more "
"detailed cylinder/cone at the cost of performance."
msgstr ""
"Le nombre de segments radiaux sur le cylindre. Des valeurs plus élevées "
"génèrent des cylindres/cônes plus détaillés mais peuvent réduire les "
"performances."

msgid ""
"Number of edge rings along the height of the cylinder. Changing [member "
"rings] does not have any visual impact unless a shader or procedural mesh "
"tool is used to alter the vertex data. Higher values result in more "
"subdivisions, which can be used to create smoother-looking effects with "
"shaders or procedural mesh tools (at the cost of performance). When not "
"altering the vertex data using a shader or procedural mesh tool, [member "
"rings] should be kept to its default value."
msgstr ""
"Nombre d'anneaux d’arêtes le long de la hauteur du cylindre. Changer [member "
"rings] n'a pas d'impact visuel à moins qu'un shader ou un outil de maillage "
"procédural soit utilisé pour modifier les données de sommet. Des valeurs plus "
"élevées résultent en davantage de sous-divisions, qui peuvent être utilisées "
"pour créer des effets de lissage avec des shaders ou des outils de maillage "
"procédural (au coût de la performance). Lorsque vous ne modifiez pas les "
"données de sommet à l'aide d'un outil de maillage procédural ou d'un shader, "
"[member rings] doit être gardé à sa valeur par défaut."

msgid ""
"Top radius of the cylinder. If set to [code]0.0[/code], the top faces will "
"not be generated, resulting in a conic shape. See also [member cap_top]."
msgstr ""
"Rayon supérieur du cylindre. Si défini à [code]0.0[/code], les faces "
"supérieures ne seront pas générées, ce qui résulte en une forme conique. Voir "
"aussi [member cap_top]."

msgid "A 3D cylinder shape used for physics collision."
msgstr "Une forme de cylindre 3D utilisée pour les collisions physiques."

msgid ""
"A 3D cylinder shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"[b]Note:[/b] There are several known bugs with cylinder collision shapes. "
"Using [CapsuleShape3D] or [BoxShape3D] instead is recommended.\n"
"[b]Performance:[/b] [CylinderShape3D] is fast to check collisions against, "
"but it is slower than [CapsuleShape3D], [BoxShape3D], and [SphereShape3D]."
msgstr ""
"Une forme de cylindre 3D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape3D].\n"
"[b]Note :[/b] Il y a plusieurs bogues connus avec les formes de collision "
"cylindriques. Il est recommandé d'utiliser [CapsuleShape3D] ou [BoxShape3D] à "
"la place.\n"
"[b]Performance :[/b] [CylinderShape3D] est rapide pour vérifier les "
"collisions, mais plus lente que [CapsuleShape3D], [BoxShape3D], et "
"[SphereShape3D]."

msgid "The cylinder's height."
msgstr "La hauteur du cylindre."

msgid "The cylinder's radius."
msgstr "Le rayon du cylindre."

msgid ""
"A physics joint that connects two 2D physics bodies with a spring-like force."
msgstr ""
"Un liaison physique qui relie deux corps physiques 2D avec une force "
"semblable à un ressort."

msgid ""
"A physics joint that connects two 2D physics bodies with a spring-like force. "
"This behaves like a spring that always wants to stretch to a given length."
msgstr ""
"Une liaison physique qui relie deux corps physiques 2D avec une force "
"semblable à un ressort. Cela se comporte comme un ressort qui veut toujours "
"s'étendre vers une longueur donnée."

msgid ""
"The spring joint's damping ratio. A value between [code]0[/code] and [code]1[/"
"code]. When the two bodies move into different directions the system tries to "
"align them to the spring axis again. A high [member damping] value forces the "
"attached bodies to align faster."
msgstr ""
"Le rapport d'amortissement du ressort. Une valeur entre [code]0[/code] et "
"[code]1[/code]. Lorsque les deux corps se déplacent dans des directions "
"différentes, le système tente de les aligner à nouveau sur l'axe du ressort. "
"Une valeur élevée pour [member damping] force les corps attachés à s'aligner "
"plus rapidement."

msgid ""
"The spring joint's maximum length. The two attached bodies cannot stretch it "
"past this value."
msgstr ""
"La longueur maximale de la jointure en ressort. Les deux corps attachés ne "
"peuvent pas l'étirer au-delà de cette valeur."

msgid ""
"When the bodies attached to the spring joint move they stretch or squash it. "
"The joint always tries to resize towards this length."
msgstr ""
"Lorsque les corps attachés à la jointure en ressort se déplacent, ils "
"l'étirent ou la compressent. La jointure tente toujours de se redimensionner "
"vers cette longueur."

msgid ""
"The higher the value, the less the bodies attached to the joint will deform "
"it. The joint applies an opposing force to the bodies, the product of the "
"stiffness multiplied by the size difference from its resting length."
msgstr ""
"Plus la valeur est élevée, moins les corps attachés à la liaison la "
"déformeront. La liaison applique une force opposée aux corps, le produit de "
"la rigidité multipliée par la différence de taille avec sa longueur de repos."

msgid "Node that projects a texture onto a [MeshInstance3D]."
msgstr "Nœud qui projette une texture sur un [MeshInstance3D]."

msgid "[Texture2D] corresponding to [member texture_albedo]."
msgstr "[Texture2D] correspondant à [member texture_albedo]."

msgid "[Texture2D] corresponding to [member texture_normal]."
msgstr "[Texture2D] correspondant à [member texture_normal]."

msgid "[Texture2D] corresponding to [member texture_orm]."
msgstr "[Texture2D] correspondant à [member texture_orm]."

msgid "[Texture2D] corresponding to [member texture_emission]."
msgstr "[Texture2D] correspondant à [member texture_emission]."

msgid "Max size of [enum DecalTexture] enum."
msgstr "Taille maximale de l'énumération [enum DecalTexture]."

msgid "A built-in data structure that holds key-value pairs."
msgstr "Une structure de données intégrée qui contient des paires clé-valeur."

msgid "GDScript basics: Dictionary"
msgstr "Les bases de GDScript : Les dictionnaires"

msgid "Constructs an empty [Dictionary]."
msgstr "Construit un [Dictionary] vide."

msgid ""
"Creates a typed dictionary from the [param base] dictionary. A typed "
"dictionary can only contain keys and values of the given types, or that "
"inherit from the given classes, as described by this constructor's parameters."
msgstr ""
"Crée un dictionnaire typé depuis le dictionnaire [param base]. Un "
"dictionnaire typé ne peut contenir que des clés et des valeurs des types "
"donnés, ou qui héritent des classes données, telles que décrits par les "
"paramètres du constructeur."

msgid ""
"Returns the same dictionary as [param from]. If you need a copy of the "
"dictionary, use [method duplicate]."
msgstr ""
"Renvoie le même dictionnaire que [param from]. Si vous avez besoin d'une "
"copie du dictionnaire, utilisez [method duplicate]."

msgid ""
"Assigns elements of another [param dictionary] into the dictionary. Resizes "
"the dictionary to match [param dictionary]. Performs type conversions if the "
"dictionary is typed."
msgstr ""
"Assigne des éléments d'un autre dictionnaire [param dictionary] dans le "
"dictionnaire. Redimensionne le dictionnaire pour faire correspondre à [param "
"dictionary]. Effectue des conversions de type si le dictionnaire est typé."

msgid "Clears the dictionary, removing all entries from it."
msgstr "Vide le dictionnaire, en supprimant toutes les entrées de celui-ci."

msgid ""
"Returns a new copy of the dictionary.\n"
"By default, a [b]shallow[/b] copy is returned: all nested [Array], "
"[Dictionary], and [Resource] keys and values are shared with the original "
"dictionary. Modifying any of those in one dictionary will also affect them in "
"the other.\n"
"If [param deep] is [code]true[/code], a [b]deep[/b] copy is returned: all "
"nested arrays and dictionaries are also duplicated (recursively). Any "
"[Resource] is still shared with the original dictionary, though."
msgstr ""
"Renvoie une nouvelle copie du dictionnaire.\n"
"Par défaut, une copie [b]superficielle[/b] (shallow copy) est renvoyée : "
"toutes les clés [Array], [Dictionary] et [Resource] imbriquées sont partagés "
"avec le dictionnaire original. Modifier l'un dans un dictionnaire va aussi "
"modifier l'autre.\n"
"Si [param deep] vaut [code]true[/code], une copie [b]profonde[/b] (deep copy) "
"est renvoyée : tous les tableaux et les dictionnaires imbriqués sont "
"également dupliqués (récursivement). Les [Resource]s sont cependant toujours "
"partagées avec le dictionnaire original."

msgid ""
"Removes the dictionary entry by key, if it exists. Returns [code]true[/code] "
"if the given [param key] existed in the dictionary, otherwise [code]false[/"
"code].\n"
"[b]Note:[/b] Do not erase entries while iterating over the dictionary. You "
"can iterate over the [method keys] array instead."
msgstr ""
"Retire l'entrée du dictionnaire par sa clé, si elle existe. Renvoie "
"[code]true[/code] si la clé [param key] donnée existait dans le dictionnaire, "
"sinon [code]false[/code].\n"
"[b]Note :[/b] N'effacez pas d'entrées lors de l'itération sur le "
"dictionnaire. Vous pouvez itérer sur le tableau [method keys] à la place."

msgid ""
"Finds and returns the first key whose associated value is equal to [param "
"value], or [code]null[/code] if it is not found.\n"
"[b]Note:[/b] [code]null[/code] is also a valid key. If inside the dictionary, "
"[method find_key] may give misleading results."
msgstr ""
"Trouve et renvoie la première clé dont la valeur associée est égale à [param "
"value], ou [code]null[/code] si elle n'est pas trouvée.\n"
"[b]Note :[/b] [code]null[/code] est également une clé valide. Si elle est "
"dans le dictionnaire, [method find_key] peut donner des résultats trompeurs."

msgid ""
"Returns the corresponding value for the given [param key] in the dictionary. "
"If the [param key] does not exist, returns [param default], or [code]null[/"
"code] if the parameter is omitted."
msgstr ""
"Renvoie la valeur correspondante de la clé [param key] donnée dans le "
"dictionnaire. Si la clé [param key] n'existe pas, renvoie [param default] ou "
"[code]null[/code] si le paramètre est omis."

msgid ""
"Gets a value and ensures the key is set. If the [param key] exists in the "
"dictionary, this behaves like [method get]. Otherwise, the [param default] "
"value is inserted into the dictionary and returned."
msgstr ""
"Obtient une valeur et assure que la clé est définie. Si la [param key] existe "
"dans le dictionnaire, cela se comporte comme [method get]. Sinon, la valeur "
"[param default] est insérée dans le dictionnaire et renvoyée."

msgid ""
"Returns the built-in [Variant] type of the typed dictionary's keys as a [enum "
"Variant.Type] constant. If the keys are not typed, returns [constant "
"TYPE_NIL]. See also [method is_typed_key]."
msgstr ""
"Renvoie le type [Variant] intégré des clés du dictionnaire de type en tant "
"que constante [enum Variant.Type]. Si les clés ne sont pas typées, renvoie "
"[constant TYPE_NIL]. Voir aussi [method is_typed_key]."

msgid ""
"Returns the [b]built-in[/b] class name of the typed dictionary's keys, if the "
"built-in [Variant] type is [constant TYPE_OBJECT]. Otherwise, returns an "
"empty [StringName]. See also [method is_typed_key] and [method "
"Object.get_class]."
msgstr ""
"Renvoie le nom de classe [b]intégrée[/b] des clés du dictionnaire typé, si le "
"type [Variant] intégré est [constant TYPE_OBJECT]. Sinon, renvoie un "
"[StringName] vide. Voir aussi [method is_typed_key] et [method "
"Object.get_class]."

msgid ""
"Returns the [Script] instance associated with this typed dictionary's keys, "
"or [code]null[/code] if it does not exist. See also [method is_typed_key]."
msgstr ""
"Renvoie l'instance [Script] associée aux clés de ce dictionnaire, ou "
"[code]null[/code] si elle n'existe pas. Voir aussi [method is_typed_key]."

msgid ""
"Returns the built-in [Variant] type of the typed dictionary's values as a "
"[enum Variant.Type] constant. If the values are not typed, returns [constant "
"TYPE_NIL]. See also [method is_typed_value]."
msgstr ""
"Renvoie le type [Variant] intégré des valeurs du dictionnaire typé en tant "
"que constante [enum Variant.Type]. Si les valeurs ne sont pas typées, renvoie "
"[constant TYPE_NIL]. Voir aussi [method is_typed_value]."

msgid ""
"Returns the [b]built-in[/b] class name of the typed dictionary's values, if "
"the built-in [Variant] type is [constant TYPE_OBJECT]. Otherwise, returns an "
"empty [StringName]. See also [method is_typed_value] and [method "
"Object.get_class]."
msgstr ""
"Renvoie le nom de classe [b]intégrée[/b] des valeurs du dictionnaire typé, si "
"le type [Variant] intégré est [constant TYPE_OBJECT]. Sinon, renvoie un "
"[StringName] vide. Voir aussi [method is_typed_value] et [method "
"Object.get_class]."

msgid ""
"Returns the [Script] instance associated with this typed dictionary's values, "
"or [code]null[/code] if it does not exist. See also [method is_typed_value]."
msgstr ""
"Renvoie l'instance [Script] associée aux valeurs de ce dictionnaire, ou "
"[code]null[/code] si elle n'existe pas. Voir aussi [method is_typed_value]."

msgid ""
"Returns [code]true[/code] if the dictionary contains an entry with the given "
"[param key].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_dict = {\n"
"\t\"Godot\" : 4,\n"
"\t210 : null,\n"
"}\n"
"\n"
"print(my_dict.has(\"Godot\")) # Prints true\n"
"print(my_dict.has(210))     # Prints true\n"
"print(my_dict.has(4))       # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var myDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"Godot\", 4 },\n"
"\t{ 210, default },\n"
"};\n"
"\n"
"GD.Print(myDict.ContainsKey(\"Godot\")); // Prints True\n"
"GD.Print(myDict.ContainsKey(210));     // Prints True\n"
"GD.Print(myDict.ContainsKey(4));       // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In GDScript, this is equivalent to the [code]in[/code] operator:\n"
"[codeblock]\n"
"if \"Godot\" in { \"Godot\": 4 }:\n"
"\tprint(\"The key is here!\") # Will be printed.\n"
"[/codeblock]\n"
"[b]Note:[/b] This method returns [code]true[/code] as long as the [param key] "
"exists, even if its corresponding value is [code]null[/code]."
msgstr ""
"Renvoie [code]true[/code] si le dictionnaire contient une entrée avec la clé "
"[param key] donnée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_dict = {\n"
"\t\"Godot\" : 4,\n"
"\t210 : null,\n"
"}\n"
"\n"
"print(my_dict.has(\"Godot\")) # Affiche true\n"
"print(my_dict.has(210))     # Affiche true\n"
"print(my_dict.has(4))       # Affiche false\n"
"[/gdscript]\n"
"[csharp]\n"
"var myDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"Godot\", 4 },\n"
"\t{ 210, default },\n"
"};\n"
"\n"
"GD.Print(myDict.ContainsKey(\"Godot\")); // Affiche True\n"
"GD.Print(myDict.ContainsKey(210));     // Affiche True\n"
"GD.Print(myDict.ContainsKey(4));       // Affiche False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"En GDScript, cela équivaut à l'opérateur [code]in[/code] :\n"
"[codeblock]\n"
"if \"Godot\" in {\"Godot\": 4}:\n"
"\tprint(\"La clé est ici !\") # Sera affiché.\n"
"[/codeblock]\n"
"[b]Note:[/b] Cette méthode renvoie [code]true[/code] tant que la [param key] "
"existe, même si sa valeur correspondante est [code]null[/code]."

msgid ""
"Returns a hashed 32-bit integer value representing the dictionary contents.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict1 = { \"A\": 10, \"B\": 2 }\n"
"var dict2 = { \"A\": 10, \"B\": 2 }\n"
"\n"
"print(dict1.hash() == dict2.hash()) # Prints true\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict1 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"var dict2 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"\n"
"// Godot.Collections.Dictionary has no Hash() method. Use GD.Hash() instead.\n"
"GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); // Prints True\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Dictionaries with the same entries but in a different order will "
"not have the same hash.\n"
"[b]Note:[/b] Dictionaries with equal hash values are [i]not[/i] guaranteed to "
"be the same, because of hash collisions. On the contrary, dictionaries with "
"different hash values are guaranteed to be different."
msgstr ""
"Renvoie une valeur d'entier de 32 bits hachée représentant le contenu du "
"dictionnaire.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict1 = { \"A\": 10, \"B\": 2 }\n"
"var dict2 = { \"A\": 10, \"B\": 2 }\n"
"\n"
"print(dict1.hash() == dict2.hash()) # Affiche true\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict1 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"var dict2 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"\n"
"// Godot.Collections.Dictionary n'a pas de méthode Hash(). Utilisez GD.Hash() "
"à la place.\n"
"GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); // Affiche True\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Les dictionnaires avec les mêmes entrées mais dans un ordre "
"différent n'auront pas le même hachage.\n"
"[b]Note :[/b] Les dictionnaires avec des valeurs de hachage égales ne sont "
"[i]pas[/i] garantis d'être le même, en raison des collisions de hachage. Au "
"contraire, les dictionnaires avec différentes valeurs de hachage sont "
"garantis d'être différents."

msgid ""
"Returns [code]true[/code] if the dictionary is empty (its size is [code]0[/"
"code]). See also [method size]."
msgstr ""
"Renvoie [code]true[/code] si le dictionnaire est vide (sa taille est de "
"[code]0[/code]). Voir aussi [method size]."

msgid ""
"Returns [code]true[/code] if the dictionary is read-only. See [method "
"make_read_only]. Dictionaries are automatically read-only if declared with "
"[code]const[/code] keyword."
msgstr ""
"Renvoie [code]true[/code] si le dictionnaire est en lecture seule. Voir "
"[method make_read_only]. Les dictionnaires sont automatiquement en lecture "
"seule s'ils sont déclarés avec le mot-clé [code]const[/code]."

msgid ""
"Returns [code]true[/code] if the dictionary is typed the same as [param "
"dictionary]."
msgstr ""
"Renvoie [code]true[/code] si le dictionnaire est typé de la même manière que "
"le dictionnaire [param dictionary]."

msgid ""
"Returns [code]true[/code] if the dictionary's keys are typed the same as "
"[param dictionary]'s keys."
msgstr ""
"Renvoie [code]true[/code] si les clés du dictionnaire sont typées de la même "
"manière que les clés du dictionnaire [param dictionary]."

msgid ""
"Returns [code]true[/code] if the dictionary's values are typed the same as "
"[param dictionary]'s values."
msgstr ""
"Renvoie [code]true[/code] si les valeurs du dictionnaire sont typées de la "
"même manière que les valeurs du dictionnaire [param dictionary]."

msgid ""
"Returns [code]true[/code] if the dictionary is typed. Typed dictionaries can "
"only store keys/values of their associated type and provide type safety for "
"the [code][][/code] operator. Methods of typed dictionary still return "
"[Variant]."
msgstr ""
"Renvoie [code]true[/code] si le dictionnaire est typé. Les dictionnaires "
"typés ne peuvent stocker que des clés et des valeurs du type associé et "
"fournissent une sûreté du typage pour l'opérateur [code][][/code]. Les "
"méthodes des dictionnaires typés renvoient toujours des [Variant]."

msgid "Returns [code]true[/code] if the dictionary's keys are typed."
msgstr "Renvoie [code]true[/code] si les clés du dictionnaire sont typées."

msgid "Returns [code]true[/code] if the dictionary's values are typed."
msgstr "Renvoie [code]true[/code] si les valeurs du dictionnaire sont typées."

msgid "Returns the list of keys in the dictionary."
msgstr "Renvoie la liste des clés du dictionnaire."

msgid ""
"Makes the dictionary read-only, i.e. disables modification of the "
"dictionary's contents. Does not apply to nested content, e.g. content of "
"nested dictionaries."
msgstr ""
"Oblige le dictionnaire à être en lecture seule, c'est-à-dire désactive la "
"modification du contenu du dictionnaire. Ne s'applique pas au contenu "
"imbriqué, par exemple le contenu de dictionnaires imbriqués."

msgid ""
"Adds entries from [param dictionary] to this dictionary. By default, "
"duplicate keys are not copied over, unless [param overwrite] is [code]true[/"
"code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict = { \"item\": \"sword\", \"quantity\": 2 }\n"
"var other_dict = { \"quantity\": 15, \"color\": \"silver\" }\n"
"\n"
"# Overwriting of existing keys is disabled by default.\n"
"dict.merge(other_dict)\n"
"print(dict)  # { \"item\": \"sword\", \"quantity\": 2, \"color\": "
"\"silver\" }\n"
"\n"
"# With overwriting of existing keys enabled.\n"
"dict.merge(other_dict, true)\n"
"print(dict)  # { \"item\": \"sword\", \"quantity\": 15, \"color\": "
"\"silver\" }\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"item\"] = \"sword\",\n"
"\t[\"quantity\"] = 2,\n"
"};\n"
"\n"
"var otherDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"quantity\"] = 15,\n"
"\t[\"color\"] = \"silver\",\n"
"};\n"
"\n"
"// Overwriting of existing keys is disabled by default.\n"
"dict.Merge(otherDict);\n"
"GD.Print(dict); // { \"item\": \"sword\", \"quantity\": 2, \"color\": "
"\"silver\" }\n"
"\n"
"// With overwriting of existing keys enabled.\n"
"dict.Merge(otherDict, true);\n"
"GD.Print(dict); // { \"item\": \"sword\", \"quantity\": 15, \"color\": "
"\"silver\" }\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] [method merge] is [i]not[/i] recursive. Nested dictionaries are "
"considered as keys that can be overwritten or not depending on the value of "
"[param overwrite], but they will never be merged together."
msgstr ""
"Ajoute des entrées du dictionanaire [param dictionary] à ce dictionnaire. Par "
"défaut, les clés en double ne sont pas copiés, sauf si [param overwrite] vaut "
"[code]true[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict = { \"objet\": \"epee\", \"quantite\": 2 }\n"
"var autre_dict = { \"quantite\": 15, \"couleur\": \"argent\" }\n"
"\n"
"# L'écrasement des clés existantes est désactivé par défaut.\n"
"dict.merge(autre_dict)\n"
"print(dict)  # { \"objet\": \"epee\", \"quantite\": 2, \"couleur\": "
"\"argent\" }\n"
"\n"
"# Avec l'écrasement des clés activé.\n"
"dict.merge(autre_dict, true)\n"
"print(dict)  # { \"objet\": \"epee\", \"quantite\": 15, \"couleur\": "
"\"argent\" }\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"objet\"] = \"epee\",\n"
"\t[\"quantite\"] = 2,\n"
"};\n"
"\n"
"var autreDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"quantite\"] = 15,\n"
"\t[\"couleur\"] = \"argent\",\n"
"};\n"
"\n"
"// L'écrasement des clés existantes est désactivé par défaut.\n"
"dict.Merge(autreDict);\n"
"GD.Print(dict); // { \"objet\": \"epee\", \"quantite\": 2, \"couleur\": "
"\"argent\" }\n"
"\n"
"// Avec l'écrasement des clés activé.\n"
"dict.Merge(autreDict, true);\n"
"GD.Print(dict); // { \"objet\": \"epee\", \"quantite\": 15, \"couleur\": "
"\"argent\" }\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] [method merge] n'est [i]pas[/i] récursive. Les dictionnaires "
"imbriqués sont considérés comme des clés qui peuvent être remplacées ou non "
"selon la valeur de [param overwrite], mais ils ne seront jamais fusionnés "
"ensemble."

msgid ""
"Returns a copy of this dictionary merged with the other [param dictionary]. "
"By default, duplicate keys are not copied over, unless [param overwrite] is "
"[code]true[/code]. See also [method merge].\n"
"This method is useful for quickly making dictionaries with default values:\n"
"[codeblock]\n"
"var base = { \"fruit\": \"apple\", \"vegetable\": \"potato\" }\n"
"var extra = { \"fruit\": \"orange\", \"dressing\": \"vinegar\" }\n"
"# Prints { \"fruit\": \"orange\", \"vegetable\": \"potato\", \"dressing\": "
"\"vinegar\" }\n"
"print(extra.merged(base))\n"
"# Prints { \"fruit\": \"apple\", \"vegetable\": \"potato\", \"dressing\": "
"\"vinegar\" }\n"
"print(extra.merged(base, true))\n"
"[/codeblock]"
msgstr ""
"Renvoie une copie de ce dictionnaire fusionné avec l'autre dictionnaire "
"[param dictionary]. Par défaut, les clés en double ne sont pas copiées, sauf "
"si [param overwrite] vaut [code]true[/code]. Voir aussi [method merge].\n"
"Cette méthode est utile pour créer rapidement des dictionnaires avec des "
"valeurs par défaut :\n"
"[codeblock]\n"
"var base = { \"fruit\": \"pomme\", \"legume\": \"patate\" }\n"
"var extra = { \"fruit\": \"orange\", \"assaisonnement\": \"vinaigre\" }\n"
"# Affiche { \"fruit\": \"orange\", \"legume\": \"patate\", "
"\"assaisonnement\": \"vinaigre\" }\n"
"print(extra.merged(base))\n"
"# Affiche { \"fruit\": \"pomme\", \"legume\": \"patate\", \"assaisonnement\": "
"\"vinaigre\" }\n"
"print(extra.merged(base, true))\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the two dictionaries contain the same keys and "
"values, inner [Dictionary] and [Array] keys and values are compared "
"recursively."
msgstr ""
"Renvoie [code]true[/code] si les deux dictionnaires contiennent les mêmes "
"clés et valeurs, les clés des [Dictionary] et [Array] intérieurs sont "
"comparées récursivement."

msgid ""
"Sets the value of the element at the given [param key] to the given [param "
"value]. This is the same as using the [code][][/code] operator "
"([code]array[index] = value[/code])."
msgstr ""
"Définit la valeur de l'élément à la clé [param key] donnée à la valeur [param "
"value] donnée. Ceci est identique à l'utilisation de l'opérateur [code][/"
"code] ([code]tableau[index] = valeur[/code])."

msgid ""
"Returns the number of entries in the dictionary. Empty dictionaries ([code]{ }"
"[/code]) always return [code]0[/code]. See also [method is_empty]."
msgstr ""
"Renvoie le nombre d'entrées dans le dictionnaire. Les dictionnaires vides "
"([code]{ }[/code]) renvoient toujours [code]0[/code]. Voir aussi [method "
"is_empty]."

msgid ""
"Sorts the dictionary in ascending order, by key. The final order is dependent "
"on the \"less than\" ([code]<[/code]) comparison between keys.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var numbers = { \"c\": 2, \"a\": 0, \"b\": 1 }\n"
"numbers.sort()\n"
"print(numbers) # Prints { \"a\": 0, \"b\": 1, \"c\": 2 }\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"This method ensures that the dictionary's entries are ordered consistently "
"when [method keys] or [method values] are called, or when the dictionary "
"needs to be converted to a string through [method @GlobalScope.str] or "
"[method JSON.stringify]."
msgstr ""
"Trie le dictionnaire en ordre ascendant, par clé. L'ordre final dépend de la "
"comparaison \"inférieur à\" ([code]<[/code]) entre les clés..\n"
"[codeblocks]\n"
"[gdscript]\n"
"var nombres = { \"c\": 2, \"a\": 0, \"b\": 1 }\n"
"nombres.sort()\n"
"print(nombres) # Affiche { \"a\": 0, \"b\": 1, \"c\": 2 }\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Cette méthode garantit que les entrées du dictionnaire sont triées de manière "
"consistante lorsque [method keys] ou [method values] sont appelées, ou "
"lorsque le dictionnaire doit être converti en une chaîne par [method "
"@GlobalScope.str] ou [method JSON.stringify]."

msgid "Returns the list of values in this dictionary."
msgstr "Renvoie la liste des valeurs dans ce dictionnaire."

msgid ""
"Returns [code]true[/code] if the two dictionaries do not contain the same "
"keys and values."
msgstr ""
"Renvoie [code]true[/code] si les deux dictionnaires ne contiennent pas les "
"mêmes clés et valeurs."

msgid ""
"Returns [code]true[/code] if the two dictionaries contain the same keys and "
"values. The order of the entries does not matter.\n"
"[b]Note:[/b] In C#, by convention, this operator compares by [b]reference[/"
"b]. If you need to compare by value, iterate over both dictionaries."
msgstr ""
"Renvoie [code]true[/code] si les deux dictionnaires contiennent les mêmes "
"clés et valeurs. L'ordre des entrées n'a aucune importance.\n"
"[b]Note :[/b] En C#, par convention, cet opérateur compare par [b]référence[/"
"b]. Si vous devez comparer par valeur, itérez sur les deux dictionnaires."

msgid ""
"Returns the corresponding value for the given [param key] in the dictionary. "
"If the entry does not exist, fails and returns [code]null[/code]. For safe "
"access, use [method get] or [method has]."
msgstr ""
"Renvoie la valeur correspondante à la clé [param key] donnée dans le "
"dictionnaire. Si l'entrée n'existe pas, échoue et renvoie [code]null[/code]. "
"Pour un accès sécurisé, utilisez [method get] ou [method has]."

msgid ""
"This class is used to manage directories and their content, even outside of "
"the project folder.\n"
"[DirAccess] can't be instantiated directly. Instead it is created with a "
"static method that takes a path for which it will be opened.\n"
"Most of the methods have a static alternative that can be used without "
"creating a [DirAccess]. Static methods only support absolute paths (including "
"[code]res://[/code] and [code]user://[/code]).\n"
"[codeblock]\n"
"# Standard\n"
"var dir = DirAccess.open(\"user://levels\")\n"
"dir.make_dir(\"world1\")\n"
"# Static\n"
"DirAccess.make_dir_absolute(\"user://levels/world1\")\n"
"[/codeblock]\n"
"[b]Note:[/b] Accessing project (\"res://\") directories once exported may "
"behave unexpectedly as some files are converted to engine-specific formats "
"and their original source files may not be present in the expected PCK "
"package. Because of this, to access resources in an exported project, it is "
"recommended to use [ResourceLoader] instead of [FileAccess].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func dir_contents(path):\n"
"\tvar dir = DirAccess.open(path)\n"
"\tif dir:\n"
"\t\tdir.list_dir_begin()\n"
"\t\tvar file_name = dir.get_next()\n"
"\t\twhile file_name != \"\":\n"
"\t\t\tif dir.current_is_dir():\n"
"\t\t\t\tprint(\"Found directory: \" + file_name)\n"
"\t\t\telse:\n"
"\t\t\t\tprint(\"Found file: \" + file_name)\n"
"\t\t\tfile_name = dir.get_next()\n"
"\telse:\n"
"\t\tprint(\"An error occurred when trying to access the path.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public void DirContents(string path)\n"
"{\n"
"\tusing var dir = DirAccess.Open(path);\n"
"\tif (dir != null)\n"
"\t{\n"
"\t\tdir.ListDirBegin();\n"
"\t\tstring fileName = dir.GetNext();\n"
"\t\twhile (fileName != \"\")\n"
"\t\t{\n"
"\t\t\tif (dir.CurrentIsDir())\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Found directory: {fileName}\");\n"
"\t\t\t}\n"
"\t\t\telse\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Found file: {fileName}\");\n"
"\t\t\t}\n"
"\t\t\tfileName = dir.GetNext();\n"
"\t\t}\n"
"\t}\n"
"\telse\n"
"\t{\n"
"\t\tGD.Print(\"An error occurred when trying to access the path.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Keep in mind that file names may change or be remapped after export. If you "
"want to see the actual resource file list as it appears in the editor, use "
"[method ResourceLoader.list_directory] instead."
msgstr ""
"Cette classe est utilisée pour gérer des répertoires et leur contenu, même en "
"dehors du dossier du projet.\n"
"[DirAccess] ne peut pas être instantané directement. Au lieu de cela, il est "
"créé avec une méthode statique qui prend un chemin pour lequel il sera "
"ouvert.\n"
"La plupart des méthodes ont une alternative statique qui peut être utilisée "
"sans créer de [DirAccess]. Les méthodes statiques ne supportent que les "
"chemins absolus (y compris [code]res://[/code] et [code]user://[/code]).\n"
"[codeblock]\n"
"# Standard\n"
"var repertoire = DirAccess.open(\"user://niveaux\")\n"
"repertoire.make_dir(\"monde1\")\n"
"# Statique\n"
"DirAccess.make_dir_absolute(\"user://niveaux/monde1\")\n"
"[/codeblock]\n"
"[b]Note :[/b] L'accès aux répertoires du projet («res://») une fois exporté "
"peut se comporter de façon inattendue puisque certains fichiers sont "
"convertis en formats spécifiques au moteur et leurs fichiers sources "
"originaux peuvent ne pas être présents dans le paquetage PCK attendu. À cause "
"de cela, pour accéder aux ressources dans un projet exporté, il est "
"recommandé d'utiliser [ResourceLoader] au lieu de [FileAccess].\n"
"Voici un exemple sur la façon d'itérer à travers les fichiers d'un "
"répertoire :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func contenu_repertoire(chemin):\n"
"\tvar repertoire = DirAccess.open(chemin)\n"
"\tif repertoire:\n"
"\t\trepertoire.list_dir_begin()\n"
"\t\tvar nom_fichier = repertoire.get_next()\n"
"\t\twhile nom_fichier!= \"\":\n"
"\t\t\tif repertoire.current_is_dir():\n"
"\t\t\t\tprint(\"Répertoire trouvé : \" + nom_fichier)\n"
"\t\t\telse:\n"
"\t\t\t\tprint(\"Fichier trouvé : \" + nom_fichier)\n"
"\t\t\tnom_fichier = dir.get_next()\n"
"\telse:\n"
"\t\tprint(\"Une erreur s'est produite lors de l'accès au chemin.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public void ContenuRepertoire(string chemin)\n"
"{\n"
"\tusing var repertoire = DirAccess.Open(chemin);\n"
"\tif (repertoire != null)\n"
"\t{\n"
"\t\trepertoire.ListDirBegin();\n"
"\t\tstring nomFichier = repertoire.GetNext();\n"
"\t\twhile (nomFichier != \"\")\n"
"\t\t{\n"
"\t\t\tif (repertoire.CurrentIsDir())\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Répertoire trouvé : {nomFichier}\");\n"
"\t\t\t}\n"
"\t\t\telse\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Fichier trouvé : {nomFichier}\");\n"
"\t\t\t}\n"
"\t\t\tfileName = repertoire.GetNext();\n"
"\t\t}\n"
"\t}\n"
"\telse\n"
"\t{\n"
"\t\tGD.Print(\"Une erreur s'est produite lors de l'accès au chemin.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Gardez à l'esprit que les noms de fichiers peuvent changer ou être remappés "
"après l'export. Si vous voulez voir la liste réelle des fichiers de "
"ressources comme elle apparaît dans l'éditeur, utilisez [method "
"ResourceLoader.list_directory] à la place."

msgid "File system"
msgstr "Le système de fichiers"

msgid ""
"Returns whether the current item processed with the last [method get_next] "
"call is a directory ([code].[/code] and [code]..[/code] are considered "
"directories)."
msgstr ""
"Renvoie si l'élément actuellement traité lors du dernier appel à [method "
"get_next] est un dossier (le dossier actuel [code].[/code] et le dossier "
"parent [code]..[/code] comptent aussi des dossiers ordinaires pour cette "
"méthode)."

msgid ""
"Returns the absolute path to the currently opened directory (e.g. [code]res://"
"folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
"Renvoie le chemin absolu vers le dossier actuellement ouvert (par ex. : "
"[code]res://folder[/code] ou [code]C:\\tmp\\folder[/code])."

msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it has "
"been fully processed with [method get_next] does not matter)."
msgstr ""
"Ferme le flux ouvert actuel avec [method list_dir_begin] (qu'il ait été "
"entièrement traité avec [method get_next] n'a pas d'importance)."

msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
"to the current directory, or an absolute path.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Crée un dossier cible et ainsi que tous les dossiers intermédiaires "
"nécessaires sur le chemin, en appelant [method make_dir] de façon récursive. "
"L'argument peut être un chemin relatif au dossier actuel, ou un chemin "
"absolu.\n"
"Renvoie une des constantes de code [enum Error] ([constant OK] en cas de "
"succès)."

msgid ""
"Static version of [method make_dir_recursive]. Supports only absolute paths."
msgstr ""
"Version statique de [method make_dir_recursive]. Supporte seulement les "
"chemins absolus."

msgid "Directional 2D light from a distance."
msgstr "Une lumière directionnelle à une certaine distance."

msgid ""
"A directional light is a type of [Light2D] node that models an infinite "
"number of parallel rays covering the entire scene. It is used for lights with "
"strong intensity that are located far away from the scene (for example: to "
"model sunlight or moonlight).\n"
"Light is emitted in the +Y direction of the node's global basis. For an "
"unrotated light, this means that the light is emitted downwards. The position "
"of the node is ignored; only the basis is used to determine light direction.\n"
"[b]Note:[/b] [DirectionalLight2D] does not support light cull masks (but it "
"supports shadow cull masks). It will always light up 2D nodes, regardless of "
"the 2D node's [member CanvasItem.light_mask]."
msgstr ""
"Une lumière directionnelle est un type de nœud [Light2D] qui modélise un "
"nombre infini de rayons parallèles couvrant toute la scène. Elle est utilisée "
"pour les lumières à forte intensité qui sont situées loin de la scène (par "
"exemple : pour modéliser la lumière du soleil ou le clair de lune).\n"
"La lumière est émise dans la direction +Y de la base globale du noeud. Pour "
"une lumière non-pivotée, cela signifie que la lumière est émise vers le bas. "
"La position du nœud est ignorée, seule la base est utilisée pour déterminer "
"la direction de la lumière.\n"
"[b]Note :[/b] [DirectionalLight2D] ne supporte pas les masques de light cull "
"(mais il supporte les masques de shadow cull). Elle va toujours éclairer les "
"nœuds 2D, peu importe le [member CanvasItem.light_mask] du nœud 2D."

msgid ""
"The height of the light. Used with 2D normal mapping. Ranges from 0 (parallel "
"to the plane) to 1 (perpendicular to the plane)."
msgstr ""
"La hauteur de la lumière. Utilisé avec les normal maps 2D. Va de 0 (parallèle "
"au plan) à 1 (perpendiculaire au plan)."

msgid ""
"The maximum distance from the camera center objects can be before their "
"shadows are culled (in pixels). Decreasing this value can prevent objects "
"located outside the camera from casting shadows (while also improving "
"performance). [member Camera2D.zoom] is not taken into account by [member "
"max_distance], which means that at higher zoom values, shadows will appear to "
"fade out sooner when zooming onto a given point."
msgstr ""
"La distance maximale au centre de la caméra à laquelle des objets peuvent "
"être peut être avant que leurs ombres soient culled (coupées) (en pixels). "
"Diminuer cette valeur peut empêcher les objets situés à l'extérieur de la "
"caméra de projeter des ombres (tout en améliorant également les "
"performances). [member Camera2D.zoom] n'est pas pris en compte par [member "
"max_distance], ce qui signifie que, à des valeurs de zoom plus élevées, des "
"ombres semblent disparaître plus tôt lorsque vous zoomez sur un point donné."

msgid "Directional light from a distance, as from the Sun."
msgstr ""
"Une lumière directionnelle à une certaine distance, comme pour le soleil."

msgid ""
"A directional light is a type of [Light3D] node that models an infinite "
"number of parallel rays covering the entire scene. It is used for lights with "
"strong intensity that are located far away from the scene to model sunlight "
"or moonlight.\n"
"Light is emitted in the -Z direction of the node's global basis. For an "
"unrotated light, this means that the light is emitted forwards, illuminating "
"the front side of a 3D model (see [constant Vector3.FORWARD] and [constant "
"Vector3.MODEL_FRONT]). The position of the node is ignored; only the basis is "
"used to determine light direction."
msgstr ""
"Une lumière directionnelle est un type de nœud [Light3D] qui modélise un "
"nombre infini de rayons parallèles couvrant toute la scène. Elle est utilisée "
"pour les lumières à forte intensité qui sont situées loin de la scène pour "
"modéliser la lumière du soleil ou le clair de lune.\n"
"La lumière est émise dans la direction -Z de la base globale du noeud. Pour "
"une lumière non-pivotée, cela signifie que la lumière est émise vers l'avant, "
"illuminant la face d'avant d'un modèle 3D (voir [constant Vector3.FORWARD] et "
"[constant Vector3.MODEL_FRONT]). La position du nœud est ignorée, seule la "
"base est utilisée pour déterminer la direction de la lumière."

msgid "3D lights and shadows"
msgstr "Lumières et ombres 3D"

msgid "Faking global illumination"
msgstr "Truquer l’illumination globale"

msgid ""
"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
"transitions between splits. Enabling shadow blend splitting also has a "
"moderate performance cost. This is ignored when [member "
"directional_shadow_mode] is [constant SHADOW_ORTHOGONAL]."
msgstr ""
"Si [code]true[/code], le détail des ombres est sacrifié pour obtenir des "
"transitions plus lisses entre les fractions. Activer cette option a également "
"un coût modéré sur les performances. Ceci est ignoré lorsque [member "
"directional_shadow_mode] est [constant SHADOW_ORTHOGONAL]."

msgid ""
"Proportion of [member directional_shadow_max_distance] at which point the "
"shadow starts to fade. At [member directional_shadow_max_distance], the "
"shadow will disappear. The default value is a balance between smooth fading "
"and distant shadow visibility. If the camera moves fast and the [member "
"directional_shadow_max_distance] is low, consider lowering [member "
"directional_shadow_fade_start] below [code]0.8[/code] to make shadow "
"transitions less noticeable. On the other hand, if you tuned [member "
"directional_shadow_max_distance] to cover the entire scene, you can set "
"[member directional_shadow_fade_start] to [code]1.0[/code] to prevent the "
"shadow from fading in the distance (it will suddenly cut off instead)."
msgstr ""
"Proportion de [member directional_shadow_max_distance] auquel point l'ombre "
"commence à disparaître. À [member directional_shadow_max_distance], l'ombre "
"disparaîtra. La valeur par défaut est un équilibre entre disparition lisse et "
"visibilité des ombres distantes. Si la caméra se déplace rapidement et que "
"[member directional_shadow_max_distance] est faible, envisagez de diminuer "
"[member directional_shadow_fade_start] sous [code]0.8[/code] pour rendre les "
"transitions d'ombres moins visibles. D'un autre côté, si vous avez utilisé "
"[member directional_shadow_max_distance] pour couvrir l'ensemble de la scène, "
"vous pouvez définir [member directional_shadow_fade_start] à [code]1.0[/code] "
"pour empêcher l'ombre de disparaître au loin (elle sera soudainement coupée à "
"la place)."

msgid ""
"The maximum distance for shadow splits. Increasing this value will make "
"directional shadows visible from further away, at the cost of lower overall "
"shadow detail and performance (since more objects need to be included in the "
"directional shadow rendering)."
msgstr ""
"La distance maximale pour les fractions des ombres. Augmenter cette valeur "
"rendra visibles les ombres directionnelles de plus loin, mais affichera moins "
"de détails des ombres et de moins bonnes performances (puisque plus d'objets "
"doivent être inclus dans le rendu d'ombre directionnel)."

msgid "The light's shadow rendering algorithm."
msgstr "L'algorithme de rendu des ombre de la lumière."

msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
"resolution for the shadow. However, a high pancake size can cause artifacts "
"in the shadows of large objects that are close to the edge of the frustum. "
"Reducing the pancake size can help. Setting the size to [code]0[/code] turns "
"off the pancaking effect."
msgstr ""
"Définit la taille du pancake des ombres directionnelles. Le pancake décalera "
"le début du frustum de caméra de l'ombre pour fournir une plus haute "
"résolution de profondeur pour l'ombre. Cependant, une grande taille de "
"pancake peut causer des artéfacts dans les ombres des grands objets qui sont "
"proches du bord du frustum. Réduire la taille du pancake peut aider. Définir "
"la taille à [code]0[/code] désactive l'effet de pancaking."

msgid ""
"The distance from camera to shadow split 1. Relative to [member "
"directional_shadow_max_distance]. Only used when [member "
"directional_shadow_mode] is [constant SHADOW_PARALLEL_2_SPLITS] or [constant "
"SHADOW_PARALLEL_4_SPLITS]."
msgstr ""
"La distance de la caméra à la division 1 de l'ombre. Relative à [member "
"directional_shadow_max_distance]. Seulement utilisée lorsque [member "
"directional_shadow_mode] vaut [constant SHADOW_PARALLEL_2_SPLITS] ou "
"[constant SHADOW_PARALLEL_4_SPLITS]."

msgid ""
"The distance from shadow split 1 to split 2. Relative to [member "
"directional_shadow_max_distance]. Only used when [member "
"directional_shadow_mode] is [constant SHADOW_PARALLEL_4_SPLITS]."
msgstr ""
"La distance de la division 1 à la division 2 de l'ombre. Relative à [member "
"directional_shadow_max_distance]. Seulement utilisée lorsque [member "
"directional_shadow_mode] vaut [constant SHADOW_PARALLEL_4_SPLITS]."

msgid ""
"The distance from shadow split 2 to split 3. Relative to [member "
"directional_shadow_max_distance]. Only used when [member "
"directional_shadow_mode] is [constant SHADOW_PARALLEL_4_SPLITS]."
msgstr ""
"La distance de la division 2 à la division 3 de l'ombre. Relative à [member "
"directional_shadow_max_distance]. Seulement utilisée lorsque [member "
"directional_shadow_mode] vaut [constant SHADOW_PARALLEL_4_SPLITS]."

msgid ""
"Whether this [DirectionalLight3D] is visible in the sky, in the scene, or "
"both in the sky and in the scene."
msgstr ""
"Si cette [DirectionalLight3D] est visible dans le ciel, dans la scène, ou "
"dans le ciel et dans la scène."

msgid ""
"Renders the entire scene's shadow map from an orthogonal point of view. This "
"is the fastest directional shadow mode. May result in blurrier shadows on "
"close objects."
msgstr ""
"Rend la carte de l’ombre de toute la scène d’un point de vue orthogonal. "
"C’est le mode d’ombre directionnelle le plus rapide. Peut entraîner des "
"ombres plus floues sur les objets proches."

msgid ""
"Splits the view frustum in 2 areas, each with its own shadow map. This shadow "
"mode is a compromise between [constant SHADOW_ORTHOGONAL] and [constant "
"SHADOW_PARALLEL_4_SPLITS] in terms of performance."
msgstr ""
"Divise le frustum de vue en 2 zones, chacune avec sa propre shadow map. Ce "
"mode d'ombre est un compromis en terme de performances entre [constant "
"SHADOW_ORTHOGONAL] et [constant SHADOW_PARALLEL_4_SPLITS]."

msgid ""
"Splits the view frustum in 4 areas, each with its own shadow map. This is the "
"slowest directional shadow mode."
msgstr ""
"Divise le frustum de vue en 4 zones, chacune avec sa propre shadow map. Il "
"s'agit du mode d'ombre directionnelle le plus lent."

msgid "Makes the light visible in both scene lighting and sky rendering."
msgstr ""
"Rend la lumière visible dans l'éclairage de la scène et dans le rendu du ciel."

msgid ""
"Makes the light visible in scene lighting only (including direct lighting and "
"global illumination). When using this mode, the light will not be visible "
"from sky shaders."
msgstr ""
"Rend la lumière visible uniquement dans l'éclairage de la scène (y compris "
"l'éclairage direct et l'illumination globale). Lors de l'utilisation de ce "
"mode, la lumière ne sera pas visible depuis les shaders de ciel."

msgid ""
"Makes the light visible to sky shaders only. When using this mode the light "
"will not cast light into the scene (either through direct lighting or through "
"global illumination), but can be accessed through sky shaders. This can be "
"useful, for example, when you want to control sky effects without "
"illuminating the scene (during a night cycle, for example)."
msgstr ""
"Rend la lumière visible aux shaders du ciel seulement. Lors de l'utilisation "
"de ce mode, la lumière n'éclairera pas la scène (par éclairage direct ou par "
"illumination globale), mais peut être accédée par les shaders du ciel. Cela "
"peut être utile, par exemple, lorsque vous voulez contrôler les effets du "
"ciel sans éclairer la scène (pendant un cycle de nuit, par exemple)."

msgid ""
"Returns [code]1[/code] if a high-contrast user interface theme should be "
"used, [code]0[/code] otherwise. Returns [code]-1[/code] if status is "
"unknown.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland, GNOME), macOS, "
"and Windows."
msgstr ""
"Renvoie [code]1[/code] si un thème d'interface utilisateur à contraste élevé "
"doit être utilisé, [code]0[/code] sinon. Renvoie [code]-1[/code] si le statut "
"est inconnu.\n"
"[b]Note :[/b] Cette méthode est implémentée sur Linux (X11/Wayland, GNOME), "
"macOS et Windows."

msgid ""
"Returns [code]1[/code] if flashing, blinking, and other moving content that "
"can cause seizures in users with photosensitive epilepsy should be disabled, "
"[code]0[/code] otherwise. Returns [code]-1[/code] if status is unknown.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Renvoie [code]1[/code] si les flashs, les clignotements et les autres "
"contenus mouvants qui peuvent causer des saisies chez les utilisateurs "
"d'épilepsie photosensible doivent être désactivés, [code]0[/code] sinon. "
"Renvoie [code]-1[/code] si le statut est inconnu.\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS et Windows."

msgid ""
"Returns [code]1[/code] if background images, transparency, and other features "
"that can reduce the contrast between the foreground and background should be "
"disabled, [code]0[/code] otherwise. Returns [code]-1[/code] if status is "
"unknown.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Renvoie [code]1[/code] si les images d'arrière-plan, la transparence et les "
"autres fonctionnalités qui peuvent réduire le contraste entre le premier plan "
"et l'arrière-plan doivent être désactivées, [code]0[/code] sinon. Renvoie "
"[code]-1[/code] si le statut est inconnu.\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS et Windows."

msgid ""
"Adds a child accessibility element.\n"
"[b]Note:[/b] [Node] children and sub-elements are added to the child list "
"automatically."
msgstr ""
"Ajoute un élément d'accessibilité enfant.\n"
"[b]Note : [/b] Les enfants [Node] et les sous-éléments sont automatiquement "
"ajoutés à la liste des enfants."

msgid ""
"Adds support for a custom accessibility action. [param action_id] is passed "
"as an argument to the callback of [constant ACTION_CUSTOM] action."
msgstr ""
"Ajoute du support pour une action d'accessibilité personnalisée. [param "
"action_id] est passé comme un argument au callback de l'action [constant "
"ACTION_CUSTOM]."

msgid "Adds an element that is controlled by this element."
msgstr "Ajoute un élément qui est contrôlé par cet élément."

msgid "Adds an element that describes this element."
msgstr "Ajoute un élément qui décrit cet élément."

msgid "Adds an element that details this element."
msgstr "Ajoute un élément qui détaille cet élément."

msgid "Sets element background color."
msgstr "Définit la couleur d'arrière-plan de l'élément."

msgid "Sets element checked state."
msgstr "Définit l'état coché de l'élément."

msgid "Sets element class name."
msgstr "Défini le nom de classe de l'élément."

msgid "Sets element color value."
msgstr "Définit la valeur de couleur de l'élément."

msgid "Sets element accessibility description."
msgstr "Définit la description d'accessibilité de l'élément."

msgid "Sets currently focused element."
msgstr "Définit l'élément possédant actuellement le focus."

msgid "Sets element text language."
msgstr "Définit la langue du texte de l'élément."

msgid "Sets number of items in the list."
msgstr "Définit le nombre d'éléments dans la liste."

msgid "Sets the position of the element in the list."
msgstr "Définit la position de l'élément dans la liste."

msgid "Sets the hierarchical level of the element in the list."
msgstr "Définit le niveau hiérarchique de l'élément dans la liste."

msgid "Sets the orientation of the list elements."
msgstr "Définit l'orientation des éléments de la liste."

msgid "Sets element accessibility name."
msgstr "Définit le nom d'accessibilité de l'élément."

msgid "Sets next element on the line."
msgstr "Définit l'élément suivant sur la ligne."

msgid "Sets numeric value range."
msgstr "Définit la plage de valeur numérique."

msgid "Sets numeric value step."
msgstr "Définit le pas de valeur numérique."

msgid "Sets numeric value."
msgstr "Définit la valeur numérique."

msgid "Sets position of the row in the table."
msgstr "Définit la position de la ligne dans la table."

msgid "Sets element text alignment."
msgstr "Définit l'alignement du texte de l'élément."

msgid "Sets text orientation."
msgstr "Définit l'orientation du texte."

msgid ""
"Sets text selection to the text field. [param text_start_id] and [param "
"text_end_id] should be elements created by [method "
"accessibility_create_sub_text_edit_elements]. Character offsets are relative "
"to the corresponding element."
msgstr ""
"Définit la sélection de texte au champ texte. [param text_start_id] et [param "
"text_end_id] devraient être des éléments créés par [method "
"accessibility_create_sub_text_edit_elements]. Les décalages de caractère sont "
"relatifs à l'élément correspondant."

msgid "Sets tooltip text."
msgstr "Définit le texte de l’info-bulle."

msgid "Sets element 2D transform."
msgstr "Définit la transformation 2D de l'élément."

msgid "Sets link URL."
msgstr "Définit l'URL du lien."

msgid "Sets element text value."
msgstr "Définit la valeur du texte de l'élément."

msgid ""
"Plays the beep sound from the operative system, if possible. Because it comes "
"from the OS, the beep sound will be audible even if the application is muted. "
"It may also be disabled for the entire OS by the user.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux (X11/Wayland), and "
"Windows."
msgstr ""
"Joue le son du bip du système d'exploitation. si possible. Parce qu'il vient "
"de l'OS, le son du bip sera audible même si l'application est mise en "
"sourdine. Il peut également être désactivé pour l'ensemble de l'OS par "
"l'utilisateur.\n"
"[b]Note :[/b] Cette méthode est mise implémentée sur macOS, Linux (X11/"
"Wayland) et Windows."

msgid "Returns the user's clipboard as a string if possible."
msgstr ""
"Renvoie le presse-papiers de l'utilisateur en tant que chaîne si possible."

msgid ""
"Returns [code]true[/code] if there is a text content on the user's clipboard."
msgstr ""
"Renvoie [code]true[/code] s'il y a un contenu texte dans le presse-papier de "
"l'utilisateur."

msgid ""
"Returns [code]true[/code] if there is an image content on the user's "
"clipboard."
msgstr ""
"Renvoie [code]true[/code] s'il y a un contenu d'image dans le presse-papiers "
"de l'utilisateur."

msgid "Sets the user's clipboard content to the given string."
msgstr ""
"Définit le contenu du presse-papiers de l'utilisateur à la chaîne donnée."

msgid ""
"Allows the [param process_id] PID to steal focus from this window. In other "
"words, this disables the operating system's focus stealing protection for the "
"specified PID.\n"
"[b]Note:[/b] This method is implemented only on Windows."
msgstr ""
"Permet au PID [param process_id] de voler le focus de cette fenêtre. En "
"d'autres termes, cela désactive la protection de vol de focus du système "
"d'exploitation pour le PID spécifié.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur Windows."

msgid "Use [NativeMenu] or [PopupMenu] instead."
msgstr "Utilisez [NativeMenu] ou [PopupMenu] à la place."

msgid ""
"Returns the accelerator of the item at index [param idx]. Accelerators are "
"special combinations of keys that activate the item, no matter which control "
"is focused.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Renvoie l'accélérateur de l'élément à l'index [param idx]. Les accélérateurs "
"sont des combinaisons spéciales de touches qui activent l'élément, quel que "
"soit le contrôle qui a le focus.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Returns the horizontal offset of the item at the given [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Renvoie le décalage horizontal de l'élément à l'index [param idx] donné.\n"
"[b]Note :[/b] Cette méthode n'est implementée que sur macOS."

msgid ""
"Returns the callback of the item accelerator at index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Renvoie le callback de l'accélérateur d'élément à l'index [param idx].\n"
"[b]Note :[/b] Cette méthode n'est implementée que sur macOS."

msgid ""
"Returns the tooltip associated with the specified index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Renvoie l'info-bulle associée à l'index [param idx] spécifié.\n"
"[b]Note :[/b] Cette méthode n'est implementée que sur macOS."

msgid ""
"Sets the accelerator of the item at index [param idx]. [param keycode] can be "
"a single [enum Key], or a combination of [enum KeyModifierMask]s and [enum "
"Key]s using bitwise OR such as [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl "
"+ A[/kbd]).\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit l'accélérateur de l'élément à l'index [param idx]. [param keycode] "
"peut être un seul [enum Key], ou une combinaison de [enum KeyModifierMask]s "
"et de [enum Key]s en utilisant un OR par bits tel que [code]KEY_MASK_CTRL | "
"KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Hides/shows the item at index [param idx]. When it is hidden, an item does "
"not appear in a menu and its action cannot be invoked.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Cache/affiche l'élément à l'index [param idx]. Lorsqu'il est caché, un objet "
"n'apparaît pas dans un menu et son action ne peut être invoquée.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Sets the callback of the item at index [param idx]. The callback is emitted "
"when an item is hovered.\n"
"[b]Note:[/b] The [param callback] Callable needs to accept exactly one "
"Variant parameter, the parameter passed to the Callable will be the value "
"passed to the [code]tag[/code] parameter when the menu item was created.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit le callback de l'élément à l'index [param idx]. Le callback est émis "
"lorsqu'un objet est survolé.\n"
"[b]Note :[/b] Le [Callable] [param callback] doit accepter exactement un "
"paramètre Variant, le paramètre passé au Callable sera la valeur transmise au "
"paramètre [code]tag[/code] lorsque l'élément de menu sera créé.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Sets the horizontal offset of the item at the given [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit le décalage horizontal de l'élément à l'index [param idx] donné.\n"
"[b]Note :[/b] Cette méthode n'est implementée que sur macOS."

msgid ""
"Sets the callback of the item at index [param idx]. Callback is emitted when "
"its accelerator is activated.\n"
"[b]Note:[/b] The [param key_callback] Callable needs to accept exactly one "
"Variant parameter, the parameter passed to the Callable will be the value "
"passed to the [code]tag[/code] parameter when the menu item was created.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit le callback de l'élément à l'index [param idx]. Le callback est émis "
"lorsque son accélérateur est activé.\n"
"[b]Note:[/b] Le Callable [param key_callback] doit accepter exactement un "
"paramètre Variant, le paramètre passé au Callable sera la valeur transmise au "
"paramètre [code]tag[/code] lorsque l'élément de menu sera créé.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Sets the [String] tooltip of the item at the specified index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit la chaîne [String] de l'info-bulle de l'élément à l'index [param idx] "
"spécifié.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Returns [code]true[/code] if a hardware keyboard is connected.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. On other "
"platforms, this method always returns [code]true[/code]."
msgstr ""
"Renvoie [code]true[/code] si un clavier matériel est connecté.\n"
"[b]Note :[/b] Cette méthode est implementée sur Android et iOS. Sur les "
"autres plateformes, cette méthode renvoie toujours [code]true[/code]."

msgid ""
"Returns [code]true[/code] if OS supports dark mode.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, macOS, Windows, and "
"Linux (X11/Wayland)."
msgstr ""
"Renvoie [code]true[/code] si l'OS prend en charge le mode sombre.\n"
"[b]Note :[/b] Cette méthode est implémentée sur Android, iOS, macOS, Windows "
"et Linux (X11/Wayland)."

msgid ""
"Sets the active keyboard layout.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Définit la disposition active du clavier.\n"
"[b]Note :[/b] Cette méthode est implémentée sur Linux(X11/Wayland), macOS et "
"Windows."

msgid "Returns the current mouse mode. See also [method mouse_set_mode]."
msgstr "Renvoie le mode de souris actuel. Voir aussi [method mouse_set_mode]."

msgid "Sets the current mouse mode. See also [method mouse_get_mode]."
msgstr "Définit le mode de souris actuel. Voir aussi [method mouse_get_mode]."

msgid ""
"Returns the greatest scale factor of all screens.\n"
"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at least "
"one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all other "
"cases.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Renvoie le plus grand facteur d'échelle de tous les écrans.\n"
"[b]Note :[/b] Sur macOS, la valeur renvoyée est [code]2.0[/code] s'il y a au "
"moins un écran hiDPI (Retina) dans le système, et [code]1.0[/code] dans tous "
"les autres cas.\n"
"[b]Note :[/b] Cette méthode est implémentée seulement sur macOS."

msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
msgstr "Cache le clavier virtuel s’il est montré, ne fait rien autrement."

msgid ""
"Display server supports changing the screen orientation. [b]Android, iOS[/b]"
msgstr ""
"Le serveur d'affichage supporte le changement de l'orientation de l'écran. "
"[b]Android, iOS[/b]"

msgid "Unknown or custom role."
msgstr "Rôle inconnu ou personnalisé."

msgid "Audio player element."
msgstr "Élément de lecteur audio."

msgid "Video player element."
msgstr "Élément de lecteur vidéo."

msgid "Button element."
msgstr "Élément de bouton."

msgid "Link element."
msgstr "Élément de lien."

msgid "Slider element."
msgstr "Élément de slider."

msgid "Table element."
msgstr "Élément de tableau."

msgid "Table/tree cell element."
msgstr "Élément de cellule d'arbre/de tableau."

msgid "Table/tree row element."
msgstr "Élément de ligne d'arbre/de tableau."

msgid "List element."
msgstr "Élément de liste."

msgid "List item element."
msgstr "Élément d'objet de liste."

msgid "Image element."
msgstr "Élément d'image."

msgid "Window element."
msgstr "Élément de fenêtre."

msgid "Tooltip element."
msgstr "Élément d'info-bulle."

msgid "Popup menu."
msgstr "Menu de popup."

msgid "Popup list."
msgstr "Liste de popup."

msgid "Popup dialog."
msgstr "Dialogue contextuel."

msgid "Element is disabled."
msgstr "L'élément est désactivé."

msgid "Makes the mouse cursor visible if it is hidden."
msgstr "Rend le curseur visible de la souris s'il caché."

msgid "Makes the mouse cursor hidden if it is visible."
msgstr "Masque le curseur de la souris s'il visible."

msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the window manager's window.\n"
"[b]Note:[/b] If you want to process the mouse's movement in this mode, you "
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
"Capture la souris. La souris sera cachée et sa position verrouillée au centre "
"de la fenêtre du gestionnaire de fenêtre.\n"
"[b]Note :[/b] Si vous voulez traiter le mouvement de la souris dans ce mode, "
"vous devez utiliser [member InputEventMouseMotion.relative]."

msgid "Confines the mouse cursor to the game window, and make it visible."
msgstr ""
"Confine le curseur de la souris à la fenêtre de jeu, et le rend visible."

msgid "Confines the mouse cursor to the game window, and make it hidden."
msgstr ""
"Confine le curseur de la souris à la fenêtre de jeu, et le rend invisible."

msgid "Max value of the [enum MouseMode]."
msgstr "Valeur maximale de [enum MouseMode]."

msgid "Default landscape orientation."
msgstr "Orientation en mode paysage par défaut."

msgid "Default portrait orientation."
msgstr "Orientation portrait par défaut ."

msgid ""
"Automatic landscape or portrait orientation (default or reverse depending on "
"sensor)."
msgstr ""
"Orientation paysage ou portrait automatique (par défaut ou inversé selon le "
"capteur)."

msgid "Default text virtual keyboard."
msgstr "Clavier virtuel de texte par défaut."

msgid "Multiline virtual keyboard."
msgstr "Clavier virtuel multiligne."

msgid "Virtual number keypad, useful for entering fractional numbers."
msgstr "Pavé numérique virtuel, utile pour entrer des nombres fractionnels."

msgid "Virtual phone number keypad."
msgstr "Pavé numérique de numéro de téléphone virtuel."

msgid ""
"Virtual keyboard with additional keys to assist with typing email addresses."
msgstr ""
"Clavier virtuel avec des touches supplémentaires pour aider à taper les "
"adresses e-mail."

msgid "Represents the size of the [enum CursorShape] enum."
msgstr "Représente la taille de l'énumération [enum CursorShape]."

msgid ""
"Windowed mode, i.e. [Window] doesn't occupy the whole screen (unless set to "
"the size of the screen)."
msgstr ""
"Mode fenêtré, c'est-à-dire que [Window] n'occupe pas l'écran entier (sauf si "
"définie à la taille de l'écran)."

msgid ""
"Minimized window mode, i.e. [Window] is not visible and available on window "
"manager's window list. Normally happens when the minimize button is pressed."
msgstr ""
"Mode de fenêtre minimisée, c.-à-d. [Window] n'est pas visible et est "
"disponible dans la liste des fenêtres du gestionnaire de fenêtre. Se produit "
"normalement lorsque le bouton de minimisation est appuyé."

msgid ""
"Maximized window mode, i.e. [Window] will occupy whole screen area except "
"task bar and still display its borders. Normally happens when the maximize "
"button is pressed."
msgstr ""
"Mode de fenêtre maximisée, c.-à-d. [Window] occupera tout l'écran sauf la "
"barre des tâches et affichera toujours ses bordures. Se produit normalement "
"lorsque le bouton de maximisation est appuyé."

msgid ""
"Full screen mode with full multi-window support.\n"
"Full screen window covers the entire display area of a screen and has no "
"decorations. The display's video mode is not changed.\n"
"[b]On Android:[/b] This enables immersive mode.\n"
"[b]On macOS:[/b] A new desktop is used to display the running project.\n"
"[b]Note:[/b] Regardless of the platform, enabling full screen will change the "
"window size to match the monitor's size. Therefore, make sure your project "
"supports [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]multiple resolutions[/url] when enabling full "
"screen mode."
msgstr ""
"Mode plein écran avec support multi-fenêtres complet.\n"
"La fenêtre en plein écran couvre toute la zone d'affichage d'un écran et n'a "
"pas de décorations. Le mode vidéo de l'écran n'est pas modifié.\n"
"[b] Sur Android :[/b] Cela active le mode immersif.\n"
"[b] Sur macOS :[/b] Un nouveau bureau est utilisé pour afficher le projet en "
"cours d'exécution.\n"
"[b]Note :[/b] Quelle que soit la plate-forme, activer le plein écran changera "
"la taille de la fenêtre pour correspondre à la taille du moniteur. Par "
"conséquent, assurez-vous que votre projet supporte des [url=$DOCS_URL/"
"tutorials/rendering/multiple_résolutions.html]résolutions multiples[/url] "
"lors de l'activation du mode plein écran."

msgid ""
"Window style is overridden, forcing sharp corners.\n"
"[b]Note:[/b] This flag is implemented only on Windows (11)."
msgstr ""
"Le style de fenêtre est redéfini, forçant des coins pointus.\n"
"[b]Note :[/b] Cette option est uniquement implémentée sous Windows (11)."

msgid ""
"Window minimize button is disabled.\n"
"[b]Note:[/b] This flag is implemented on macOS and Windows."
msgstr ""
"Le bouton de minimisation de la fenêtre est désactivé.\n"
"[b]Note :[/b] Ce drapeau est implémenté sur macOS et Windows."

msgid ""
"Window maximize button is disabled.\n"
"[b]Note:[/b] This flag is implemented on macOS and Windows."
msgstr ""
"Le bouton de maximisation de la fenêtre est désactivé.\n"
"[b]Note :[/b] Ce drapeau est implémenté sur macOS et Windows."

msgid "Max value of the [enum WindowFlags]."
msgstr "Valeur maximale pour l'énumération [enum WindowFlags]."

msgid "Represents the size of the [enum WindowResizeEdge] enum."
msgstr "Représente la taille de l'énumération [enum WindowResizeEdge]."

msgid ""
"Display handle:\n"
"- Linux (X11): [code]X11::Display*[/code] for the display.\n"
"- Linux (Wayland): [code]wl_display[/code] for the display.\n"
"- Android: [code]EGLDisplay[/code] for the display."
msgstr ""
"Gestion de l'affichage :\n"
"- Linux (X11) : [code]X11::Display*[/code] pour l'affichage.\n"
"- Linux (Wayland) : [code]wl_display*[/code] pour l'affichage.\n"
"- Android : [code]EGLDisplay[/code] pour l'affichage."

msgid ""
"Window handle:\n"
"- Windows: [code]HWND[/code] for the window.\n"
"- Linux (X11): [code]X11::Window*[/code] for the window.\n"
"- Linux (Wayland): [code]wl_surface[/code] for the window.\n"
"- macOS: [code]NSWindow*[/code] for the window.\n"
"- iOS: [code]UIViewController*[/code] for the view controller.\n"
"- Android: [code]jObject[/code] for the activity."
msgstr ""
"Handle de fenêtre :\n"
"- Windows : [code]HWND[/code] pour la fenêtre.\n"
"- Linux (X11) : [code]X11::Window*[/code] pour la fenêtre.\n"
"- Linux (Wayland) : [code]wl_surface[/code] pour la fenêtre.\n"
"- macOS : [code]NSWindow*[/code] pour la fenêtre.\n"
"- iOS : [code]UIViewController*[/code] pour le contrôleur de vue.\n"
"- Android : [code]jObject[/code] pour l'activité."

msgid ""
"Window view:\n"
"- Windows: [code]HDC[/code] for the window (only with the Compatibility "
"renderer).\n"
"- macOS: [code]NSView*[/code] for the window main view.\n"
"- iOS: [code]UIView*[/code] for the window main view."
msgstr ""
"Vue de la fenêtre:\n"
"- Windows : [code]HDC[/code] pour la fenêtre (seulement avec le moteur de "
"rendu Compatibilité).\n"
"- macOS : [code]NSView*[/code] pour la fenêtre de vue principale.\n"
"- iOS : [code]UIView*[/code] pour la fenêtre de vue principale."

msgid ""
"OpenGL context (only with the Compatibility renderer):\n"
"- Windows: [code]HGLRC[/code] for the window (native GL), or "
"[code]EGLContext[/code] for the window (ANGLE).\n"
"- Linux (X11): [code]GLXContext*[/code] for the window.\n"
"- Linux (Wayland): [code]EGLContext[/code] for the window.\n"
"- macOS: [code]NSOpenGLContext*[/code] for the window (native GL), or "
"[code]EGLContext[/code] for the window (ANGLE).\n"
"- Android: [code]EGLContext[/code] for the window."
msgstr ""
"Contexte OpenGL (seulement avec le moteur de rendu Compatibilité) :\n"
"- Windows : [code]HGLRC[/code] pour la fenêtre (GL natif), ou "
"[code]EGLContext[/code] pour la fenêtre (ANGLE).\n"
"- Linux (X11) : [code]GLXContext*[/code] pour la fenêtre.\n"
"- Linux (Wayland) : [code]EGLContext[/code] pour la fenêtre.\n"
"- macOS : [code]NSOpenGLContext*[/code] pour la fenêtre (GL natif), ou "
"[code]EGLContext[/code] pour la fenêtre (ANGLE).\n"
"- Android : [code]EGLContext[/code] pour la fenêtre."

msgid ""
"- Windows: [code]EGLDisplay[/code] for the window (ANGLE).\n"
"- macOS: [code]EGLDisplay[/code] for the window (ANGLE).\n"
"- Linux (Wayland): [code]EGLDisplay[/code] for the window."
msgstr ""
"- Windows : [code]EGLDisplay[/code] pour la fenêtre (ANGLE).\n"
"- macOS : [code]EGLDisplay[/code] pour la fenêtre (ANGLE).\n"
"- Linux (Wayland) : [code]EGLDisplay[/code] pour la fenêtre."

msgid ""
"- Windows: [code]EGLConfig[/code] for the window (ANGLE).\n"
"- macOS: [code]EGLConfig[/code] for the window (ANGLE).\n"
"- Linux (Wayland): [code]EGLConfig[/code] for the window."
msgstr ""
"- Windows : [code]EGLConfig[/code] pour la fenêtre (ANGLE).\n"
"- macOS : [code]EGLConfig[/code] pour la fenêtre (ANGLE).\n"
"- Linux (Wayland) : [code]EGLConfig[/code] pour la fenêtre."

msgid "Resizes the texture to the specified dimensions."
msgstr "Redimensionne la texture aux dimensions spécifiées."

msgid "Overrides texture saturation."
msgstr "Redéfinit la saturation de la texture."

msgid "Helper class to implement a DTLS server."
msgstr "Une classe d'aide pour implémenter un serveur DTLS."

msgid "Returns the [EditorDebuggerSession] with the given [param id]."
msgstr "Renvoie l'[EditorDebuggerSession] avec l'[param id] donné."

msgid "A class to interact with the editor debugger."
msgstr "Une classe pour interagir avec le débogueur de l'éditeur."

msgid "Console support in Godot"
msgstr "Support de la console dans Godot"

msgid "Exporter for Android."
msgstr "Exporteur pour Android."

msgid "Exporting for Android"
msgstr "Exportation pour Android"

msgid "Gradle builds for Android"
msgstr "Compilations Gradle pour Android"

msgid "Android plugins documentation index"
msgstr "Index de la documentation sur les plugins Android"

msgid ""
"If [code]true[/code], [code]arm64[/code] binaries are included into exported "
"project."
msgstr ""
"Si [code]true[/code], les binaires [code]arm64[/code] sont incluses dans le "
"projet exporté."

msgid "Name of the application."
msgstr "Nom de l'application."

msgid ""
"Allows applications to call into AccountAuthenticators. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCOUNT_MANAGER]ACCOUNT_MANAGER[/url]."
msgstr ""
"Permet aux application d’appeler des AccountAuthentificators. Voir "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#ACCOUNT_MANAGER]ACCOUNT_MANAGER[/url]."

msgid "Allows access to the flashlight."
msgstr "Autorise l'accès à la lampe-torche."

msgid "Deprecated in API level 21."
msgstr "Obsolète dans le niveau d'API 21."

msgid "Allows access to hardware peripherals."
msgstr "Autorise l'accès aux périphériques matériels."

msgid ""
"See [url=https://developer.android.com/reference/android/"
"Manifest.permission#MASTER_CLEAR]MASTER_CLEAR[/url]."
msgstr ""
"Voir [url=https://developer.android.com/reference/android/"
"Manifest.permission#MASTER_CLEAR]MASTER_CLEAR[/url]."

msgid "Deprecated in API level 15."
msgstr "Obsolète dans le niveau d'API 15."

msgid "Deprecated in API level 29."
msgstr "Obsolète dans le niveau d'API 29."

msgid ""
"Allows an application to see the number being dialed during an outgoing call "
"with the option to redirect the call to a different number or abort the call "
"altogether. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#PROCESS_OUTGOING_CALLS]PROCESS_OUTGOING_CALLS[/url]."
msgstr ""
"Permet à une application de voir le numéro qui est composé pendant un appel "
"sortant avec l'option de rediriger l'appel vers un numéro différent ou "
"d'annuler l'appel dans son ensemble. Voir [url=https://developer.android.com/"
"reference/android/"
"Manifest.permission#PROCESS_OUTGOING_CALLS]PROCESS_OUTGOING_CALLS[/url]."

msgid "Deprecated in API level 33."
msgstr "Obsolète dans le niveau d'API 33."

msgid "Deprecated in API level 16."
msgstr "Obsolète dans le niveau d'API 16."

msgid ""
"If [code]true[/code], shaders will be compiled and embedded in the "
"application. This option is only supported when using the Forward+ or Mobile "
"renderers."
msgstr ""
"Si [code]true[/code], les shaders seront compilés et intégrés dans "
"l'application. Cette option n'est supportée que lors de l'utilisation des "
"moteurs de rendu Forward+ ou Mobile."

msgid "Exporting for iOS"
msgstr "Exportation pour iOS"

msgid "iOS plugins documentation index"
msgstr "Index de la documentation sur les plugins iOS"

msgid "Returns export platform name."
msgstr "Renvoie le nom de la plateforme d'export."

msgid "Returns target OS name."
msgstr "Renvoie le nom de l'OS cible."

msgid "Exporter for iOS."
msgstr "Exportateur pour iOS."

msgid ""
"Additional data added to the root [code]<dict>[/code] section of the "
"[url=https://developer.apple.com/documentation/bundleresources/"
"information_property_list]Info.plist[/url] file. The value should be an XML "
"section with pairs of key-value elements, e.g.:\n"
"[codeblock lang=text]\n"
"<key>key_name</key>\n"
"<string>value</string>\n"
"[/codeblock]"
msgstr ""
"Données additionnelles ajoutées à la section [code]<dict>[/code] racine afin "
"d'obtenir des renseignements sur le fichier [url=https://developer.apple.com/"
"documentation/bundleresources/information_property_list]Info.plist[/url]. La "
"valeur devrait être une section XML avec des paires d'éléments valeur-clé, "
"p.ex. :\n"
"[codeblock lang=text]\n"
"<key>key_name</key>\n"
"<string>value</string>\n"
"[/codeblock]"

msgid ""
"Apple Team ID, unique 10-character string. To locate your Team ID check "
"\"Membership details\" section in your Apple developer account dashboard, or "
"\"Organizational Unit\" of your code signing certificate. See [url=https://"
"developer.apple.com/help/account/manage-your-team/locate-your-team-id]Locate "
"your Team ID[/url]."
msgstr ""
"Apple Team ID, chaîne unique de 10 caractères. Pour localiser votre Team ID, "
"regardez \"Membership details\" dans votre tableau de bord du compte de "
"développeur Apple, ou \"Organizational Unit\" de votre certificat de "
"signature de code. Voir [url=https://developer.apple.com/help/account/manage-"
"your-team/locate-your-team-id]Locate your Team ID[/url]."

msgid ""
"Unique application identifier in a reverse-DNS format, can only contain "
"alphanumeric characters ([code]A-Z[/code], [code]a-z[/code], and [code]0-9[/"
"code]), hyphens ([code]-[/code]), and periods ([code].[/code])."
msgstr ""
"Identificateur d'application unique dans un format DNS inverse, ne peut "
"contenir que des caractères alphanumériques ([code]A-Z[/code], [code]a-z[/"
"code], et [code]0-9[/code]), des traits d'union ([code]-[/code]), et des "
"points ([code].[/code])."

msgid ""
"The \"Full Name\", \"Common Name\", or SHA-1 hash of the signing identity "
"used for debug export."
msgstr ""
"Le \"Full Name\" (Nom complet), \"Common Name\" (Nom commun), ou le hachage "
"SHA-1 de l'identité de signature utilisés pour l'export de débogage."

msgid ""
"The \"Full Name\", \"Common Name\", or SHA-1 hash of the signing identity "
"used for release export."
msgstr ""
"Le \"Full Name\" (Nom complet), \"Common Name\" (Nom commun), ou le hachage "
"SHA-1 de l'identité de signature utilisés pour l'export de release."

msgid ""
"If [code]true[/code], existing \"project name\" and \"project "
"name.xcodeproj\" in the export destination directory will be unconditionally "
"deleted during export."
msgstr ""
"Si [code]true[/code], les anciens fichiers \"nom du projet\" et \"nom de "
"projet.xcodeproj\" existants dans le répertoire de destination de l'export "
"seront supprimés sans condition pendant l'export."

msgid "Application distribution target (debug export)."
msgstr "Cible de distribution de l'application (export de débogage)."

msgid "Application distribution target (release export)."
msgstr "Cible de distribution de l'application (export de release)."

msgid ""
"If [code]true[/code], exports iOS project files without building an XCArchive "
"or [code].ipa[/code] file. If [code]false[/code], exports iOS project files "
"and builds an XCArchive and [code].ipa[/code] file at the same time. When "
"combining Godot with Fastlane or other build pipelines, you may want to set "
"this to [code]true[/code]."
msgstr ""
"Si [code]true[/code], exporte les fichiers de projet iOS sans construire un "
"fichier XCArchive ou [code].ipa[/code]. Si [code]false[/code], exporte les "
"fichiers de projet iOS et construit un fichier XCArchive et [code].ipa[/code] "
"en même temps. Lors de la combinaison de Godot avec Fastlane ou d'autres "
"pipelines de compilation, vous pourriez vouloir définir cela à [code]true[/"
"code]."

msgid "Interpolation method used to resize application icon."
msgstr ""
"Méthode d'interpolation utilisée pour redimensionner l'icône de l'application."

msgid ""
"Minimum version of iOS required for this application to run in the "
"[code]major.minor.patch[/code] or [code]major.minor[/code] format, can only "
"contain numeric characters ([code]0-9[/code]) and periods ([code].[/code])."
msgstr ""
"Version minimale d'iOS requise pour que cette application fonctionne dans le "
"format [code]major.minor.patch[/code] ou [code]major.minor[/code], ne peut "
"contenir que des caractères numériques ([code]0-9[/code]) et des points "
"([code].[/code])."

msgid "Supported device family."
msgstr "Famille d'appareils pris en charge."

msgid ""
"Path to the custom export template. If left empty, default template is used."
msgstr ""
"Chemin vers le modèle d'export personnalisé. Si laissé vide, le modèle par "
"défaut est utilisé."

msgid "Indicates whether your app collects advertising data."
msgstr "Indique si votre application collecte des données publicitaires."

msgid "Indicates whether your app collects browsing history."
msgstr "Indique si votre application collecte l'historique de navigation."

msgid "Indicates whether your app collects crash data."
msgstr "Indique si votre application collecte des données de plantage."

msgid "Indicates whether your app collects credit information."
msgstr "Indique si votre application collecte des informations de crédit."

msgid "Indicates whether your app collects device IDs."
msgstr "Indique si votre application collecte des identifiants de périphérique."

msgid "Indicates whether your app collects email address."
msgstr "Indique si votre application collecte une adresse mail."

msgid "Indicates whether your app collects environment scanning data."
msgstr ""
"Indique si votre application collecte des données d'analyse d'environnement."

msgid "Indicates whether your app collects gameplay content."
msgstr "Indique si votre application recueille du contenu de gameplay."

msgid "Indicates whether your app collects user's head movement."
msgstr ""
"Indique si votre application collecte le mouvement de tête de l'utilisateur."

msgid "Indicates whether your app collects user's name."
msgstr "Indique si votre application recueille le nom de l'utilisateur."

msgid "Indicates whether your app collects any other data."
msgstr "Indique si votre application collecte d'autres données."

msgid "Indicates whether your app uses any other data for tracking."
msgstr "Indique si votre application utilise d'autres données pour le suivi."

msgid "Indicates whether your app collects any other user generated content."
msgstr ""
"Indique si votre application collecte tout autre contenu généré par "
"l'utilisateur."

msgid "Indicates whether your app collects payment information."
msgstr "Indique si votre application collecte des informations de paiement."

msgid "Indicates whether your app collects performance data."
msgstr "Indique si votre application collecte des données de performance."

msgid "Indicates whether your app collects phone number."
msgstr "Indique si votre application collecte un numéro de téléphone."

msgid "Indicates whether your app collects photos or videos."
msgstr "Indique si votre application collecte des photos ou des vidéos."

msgid "Indicates whether your app uses photos or videos for tracking."
msgstr ""
"Indique si votre application utilise des photos ou des vidéos pour le suivi."

msgid "Indicates whether your app collects physical address."
msgstr "Indique si votre application recueille une adresse physique."

msgid "Indicates whether your app collects precise location data."
msgstr ""
"Indique si votre application collecte des données de localisation précises."

msgid "Indicates whether your app uses precise location data for tracking."
msgstr ""
"Indique si votre application utilise des données de localisation précises "
"pour le suivi."

msgid "Indicates whether your app collects product interaction data."
msgstr ""
"Indique si votre application collecte des données d'interaction produit."

msgid "Indicates whether your app uses product interaction data for tracking."
msgstr ""
"Indique si votre application utilise les données d'interaction produit pour "
"le suivi."

msgid "Indicates whether your app collects purchase history."
msgstr "Indique si votre application recueille l'historique des achats."

msgid "Indicates whether your app collects search history."
msgstr "Indique si votre application collecte l'historique de recherche."

msgid "Indicates whether your app collects sensitive user information."
msgstr ""
"Indique si votre application collecte des informations utilisateur sensibles."

msgid "Indicates whether your app uses sensitive user information for tracking."
msgstr ""
"Indique si votre application utilise des informations utilisateur sensibles "
"pour le suivi."

msgid "Indicates whether your app collects user IDs."
msgstr "Indique si votre application collecte des identifiants d'utilisateur."

msgid "Exporter for Linux/BSD."
msgstr "Exportateur pour Linux/BSD."

msgid "Exporting for Linux"
msgstr "Exportation pour Linux"

msgid "Exporter for macOS."
msgstr "Exportateur pour macOS."

msgid "Exporting for macOS"
msgstr "Exportation de macOS"

msgid "Running Godot apps on macOS"
msgstr "Exécuter des applications Godot sur macOS"

msgid "Application distribution target."
msgstr "Cible de distribution d'application."

msgid "Exporting for Windows"
msgstr "Exportation pour Windows"

msgid "Exporter for visionOS."
msgstr "Exporteur pour visionOS."

msgid "Exporter for the Web."
msgstr "Exporteur pour le Web."

msgid "Exporting for the Web"
msgstr "Exportation pour le Web"

msgid "Web documentation index"
msgstr "Index de la documentation Web"

msgid ""
"The custom HTML page that wraps the exported web build. If left empty, the "
"default HTML shell is used.\n"
"For more information, see the [url=$DOCS_URL/tutorials/platform/web/"
"customizing_html5_shell.html]Customizing HTML5 Shell[/url] tutorial."
msgstr ""
"La page HTML personnalisée qui enveloppe la compilation web exportée. Si "
"laissée vide, le shell HTML par défaut est utilisé.\n"
"Pour plus d'informations, consultez le tutoriel [url=$DOCS_URL/tutorials/"
"platform/web/customizing_html5_shell.html]Page HTML custom pour un export "
"Web[/url]."

msgid "Exporter for Windows."
msgstr "Exportateur pour Windows."

msgid ""
"Name of the application. Required. See [url=https://learn.microsoft.com/en-us/"
"windows/win32/menurc/stringfileinfo-block]StringFileInfo[/url]."
msgstr ""
"Nom de l'application. Requis. Voir [url=https://learn.microsoft.com/fr-fr/"
"windows/win32/menurc/stringfileinfo-block]StringFileInfo[/url]."

msgid ""
"Application version visible to the user. Falls back to [member "
"ProjectSettings.application/config/version] if left empty. See [url=https://"
"learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."
msgstr ""
"Version d'application visible par l'utilisateur. Revient à [member "
"ProjectSettings.application/config/version] si laissé vide. Voir [url=https://"
"learn.microsoft.com/fr-fr/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."

msgid ""
"Trademarks and registered trademarks that apply to the file. Optional. See "
"[url=https://learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."
msgstr ""
"Marques et marques déposées qui s'appliquent au fichier. Facultatif. Voir "
"[url=https://learn.microsoft.com/fr-fr/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."

msgid ""
"Application executable architecture.\n"
"Supported architectures: [code]x86_32[/code], [code]x86_64[/code], and "
"[code]arm64[/code]."
msgstr ""
"Architecture de l'exécutable de l'application.\n"
"Architectures supportées : [code]x86_32[/code], [code]x86_64[/code], et "
"[code]arm64[/code]."

msgid "A script that is executed when exporting the project."
msgstr "Un script qui est exécuté à l'export du projet."

msgid ""
"[EditorExportPlugin]s are automatically invoked whenever the user exports the "
"project. Their most common use is to determine what files are being included "
"in the exported project. For each plugin, [method _export_begin] is called at "
"the beginning of the export process and then [method _export_file] is called "
"for each exported file.\n"
"To use [EditorExportPlugin], register it using the [method "
"EditorPlugin.add_export_plugin] method first."
msgstr ""
"Les [EditorExportPlugin] sont automatiquement invoqués lorsque l'utilisateur "
"exporte le projet. Ils sont plus le souvent utilisés de déterminer quels "
"fichiers doivent être inclus dans le projet exporté. Pour chaque greffon, "
"[method _export_begin] est appelé au début du processus d'exportation, et "
"[method _export_file] est appelé pour chaque fichier exporté.\n"
"Pour utiliser [EditorExportPlugin], enregistrez-le d'abord avec la méthode "
"[method EditorPlugin.add_export_plugin]."

msgid "Export Android plugins"
msgstr "Exporter des plugins Android"

msgid "This is called when the customization process for scenes ends."
msgstr ""
"Ceci est appelé lorsque le processus de personnalisation pour les scènes se "
"termine."

msgid ""
"Virtual method to be overridden by the user. Called when the export is "
"finished."
msgstr ""
"Une méthode virtuelle à surcharger par l'utilisateur. Elle est appelée "
"lorsque l'exportation est terminée."

msgid ""
"Return [code]true[/code] if the result of [method _get_export_options] has "
"changed and the export options of the preset corresponding to [param "
"platform] should be updated."
msgstr ""
"Renvoie [code]true[/code] si le résultat de [method _get_export_options] a "
"changé et les options d'export du préréglage correspondant à [param platform] "
"devraient être mises à jour."

msgid ""
"Return [code]true[/code] if the plugin supports the given [param platform]."
msgstr ""
"Renvoie [code]true[/code] si le plugin supporte la plate-forme [param "
"platform] donnée."

msgid "Use [method add_apple_embedded_platform_bundle_file] instead."
msgstr "Utilisez [method add_apple_embedded_platform_bundle_file] à la place."

msgid "Use [method add_apple_embedded_platform_cpp_code] instead."
msgstr "Utilisez [method add_apple_embedded_platform_cpp_code] à la place."

msgid "Use [method add_apple_embedded_platform_embedded_framework] instead."
msgstr ""
"Utilisez [method add_apple_embedded_platform_embedded_framework] à la place."

msgid ""
"Adds a dynamic library (*.dylib, *.framework) to Linking Phase in iOS's Xcode "
"project and embeds it into resulting binary.\n"
"[b]Note:[/b] For static libraries (*.a), this works the in same way as "
"[method add_apple_embedded_platform_framework].\n"
"[b]Note:[/b] This method should not be used for System libraries as they are "
"already present on the device."
msgstr ""
"Ajoute une bibliothèque dynamique (*.dylib, *.framework) au \"Linking Phase\" "
"dans le projet Xcode d'iOS et l'intègre au binaire final.\n"
"[b]Note :[/b] Pour les bibliothèques statiques (*.a), cela fonctionne de la "
"même manière que [method add_apple_embedded_platform_framework].\n"
"[b]Note :[/b] Cette méthode ne devrait pas être utilisée pour les "
"bibliothèques système car elles sont déjà présentes sur l'appareil."

msgid "Use [method add_apple_embedded_platform_framework] instead."
msgstr "Utilisez [method add_apple_embedded_platform_framework] à la place."

msgid "Use [method add_apple_embedded_platform_linker_flags] instead."
msgstr "Utilisez [method add_apple_embedded_platform_linker_flags] à la place."

msgid "Adds linker flags for the iOS export."
msgstr "Ajoute un drapeau à l'assembleur pour l'export iOS."

msgid "Use [method add_apple_embedded_platform_plist_content] instead."
msgstr "Utilisez [method add_apple_embedded_platform_plist_content] à la place."

msgid "Use [method add_apple_embedded_platform_project_static_lib] instead."
msgstr ""
"Utilisez [method add_apple_embedded_platform_project_static_lib] à la place."

msgid ""
"Adds file or directory matching [param path] to [code]PlugIns[/code] "
"directory of macOS app bundle.\n"
"[b]Note:[/b] This is useful only for macOS exports."
msgstr ""
"Ajoute le fichier ou le dossier correspondant à l'emplacement [param path] au "
"dossier [code]PlugIns[/code] de l'application macOS.\n"
"[b]Note :[/b] Cela n'est utile que pour les exports macOS."

msgid "Returns currently used export platform."
msgstr "Renvoie la plateforme d'export actuellement utilisée."

msgid "Returns currently used export preset."
msgstr "Renvoie le préreglage d'export actuellement utilisé."

msgid ""
"Returns the current value of an export option supplied by [method "
"_get_export_options]."
msgstr ""
"Renvoie la valeur actuelle d'une option d'export fournie par [method "
"_get_export_options]."

msgid ""
"To be called inside [method _export_file]. Skips the current file, so it's "
"not included in the export."
msgstr ""
"Sera appelée dans [method _export_file]. Ignore le fichier actuel, il ne "
"figurera donc pas dans l'export."

msgid "Export preset configuration."
msgstr "Configuration de préreglage d'export."

msgid "Returns PCK encryption key."
msgstr "Renvoie la clé de cryptage PCK."

msgid "Returns export target path."
msgstr "Renvoie le chemin de la cible d'export."

msgid "Returns this export preset's name."
msgstr "Renvoie le nom de ce pré-réglage d'export."

msgid ""
"An editor feature profile which can be used to disable specific features."
msgstr ""
"Un profile de fonctionnalités de l'éditeur qui permet de désactiver certaines "
"fonctionnalités."

msgid ""
"An editor feature profile can be used to disable specific features of the "
"Godot editor. When disabled, the features won't appear in the editor, which "
"makes the editor less cluttered. This is useful in education settings to "
"reduce confusion or when working in a team. For example, artists and level "
"designers could use a feature profile that disables the script editor to "
"avoid accidentally making changes to files they aren't supposed to edit.\n"
"To manage editor feature profiles visually, use [b]Editor > Manage Feature "
"Profiles...[/b] at the top of the editor window."
msgstr ""
"Un profil d'éditeur peut être utilisé pour désactiver certaines "
"fonctionnalités spécifiques de l'éditeur Godot. Lorsqu'elles sont "
"désactivées, ces fonctionnalités n'apparaîtront pas dans l'éditeur, ce qui "
"rend simplie l'éditeur. Cela est utile dans les milieux d'éducation pour "
"réduire la confusion ou lorsque vous travaillez dans une équipe. Par exemple, "
"les artistes et les concepteurs de niveau pourraient utiliser un profil de "
"fonctionnalités qui désactive l'éditeur de script pour éviter des "
"modifications accidentelles aux fichiers qu'ils ne sont pas censés modifier.\n"
"Pour gérer visuellement les profils d'éditeur, utilisez [b]Éditeur > Gérer "
"les profils de fonctionnalités.[/b] en haut de la fenêtre de l'éditeur."

msgid "Returns the specified [param feature]'s human-readable name."
msgstr ""
"Renvoie le nom facilement lisible de la fonctionnalité [param feature] "
"spécifiée."

msgid ""
"Returns [code]true[/code] if the class specified by [param class_name] is "
"disabled. When disabled, the class won't appear in the Create New Node dialog."
msgstr ""
"Renvoie [code]true[/code] si la classe avec le nom [param class_name] est "
"désactivée. Lorsqu'elle est désactivée, la classe n’apparaîtra pas dans la "
"fenêtre \"Créer un nouveau nœud\"."

msgid ""
"If [param disable] is [code]true[/code], disables editing for the class "
"specified by [param class_name]. When disabled, the class will still appear "
"in the Create New Node dialog but the Inspector will be read-only when "
"selecting a node that extends the class."
msgstr ""
"Si [param disable] vaut [code]true[/code], désactive l'édition de la classe "
"nommée [param class_name]. Lorsqu'elle est désactivée, la classe apparaîtra "
"toujours dans la fenêtre \"Créer un nouveau nœud\", mais l'inspecteur sera en "
"lecture-seule lors de la sélection d'un nœud qui étend cette classe."

msgid ""
"If [param disable] is [code]true[/code], disables editing for [param "
"property] in the class specified by [param class_name]. When a property is "
"disabled, it won't appear in the Inspector when selecting a node that extends "
"the class specified by [param class_name]."
msgstr ""
"Si [param disable] vaut [code]true[/code], désactive l'édition de la [param "
"property] dans la classe nommée [param class_name]. Lorsqu'une propriété est "
"désactivée, elle n'apparaît plus dans l'inspecteur lors de la sélection d'un "
"nœud qui étend la classe spécifiée par [param class_name]."

msgid ""
"If [param disable] is [code]true[/code], disables the editor feature "
"specified in [param feature]. When a feature is disabled, it will disappear "
"from the editor entirely."
msgstr ""
"Si [param disable] vaut [code]true[/code], désactive la fonctionnalité "
"d'éditeur spécifiée dans [param feature]. Lorsqu'une fonctionnalité est "
"désactivée, elle disparaîtra entièrement de l'éditeur."

msgid ""
"The 3D editor. If this feature is disabled, the 3D editor won't display but "
"3D nodes will still display in the Create New Node dialog."
msgstr ""
"L'éditeur 3D. Si cette fonctionnalité est désactivée, l'éditeur 3D ne sera "
"pas affiché mais les nœuds 3D seront toujours affichés dans le dialogue "
"\"Créer un nouveau nœud\"."

msgid ""
"The Script tab, which contains the script editor and class reference browser. "
"If this feature is disabled, the Script tab won't display."
msgstr ""
"L'onglet \"Script\", qui contient l'éditeur de script et le navigateur de "
"documentation des classes. Si cette fonctionnalité est désactivée, "
"l'affichage de l'onglet \"Script\" ne sera pas affiché."

msgid ""
"The AssetLib tab. If this feature is disabled, the AssetLib tab won't display."
msgstr ""
"L'onglet AssetLib. Si cette caractéristique est désactivée, l'onglet AssetLib "
"ne sera pas affiché."

msgid ""
"Scene tree editing. If this feature is disabled, the Scene tree dock will "
"still be visible but will be read-only."
msgstr ""
"L'éditeur de l'arborescence de la scène. Si cette caractéristique est "
"désactivée, le dock de l'arborescence de la scène sera toujours visible, mais "
"ne pourra pas être modifié."

msgid ""
"The Node dock. If this feature is disabled, signals and groups won't be "
"visible and modifiable from the editor."
msgstr ""
"Le dock des Nœuds. Si cette caractéristique est désactivée, les signaux et "
"les groupes ne seront pas affichés ni modifiables dans l'éditeur."

msgid ""
"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
"be visible."
msgstr ""
"Le dock de système de fichiers. Si cette caractéristique est désactivée, le "
"dock de système de fichiers ne sera pas visible."

msgid ""
"The Import dock. If this feature is disabled, the Import dock won't be "
"visible."
msgstr ""
"Le dock d'importation. Si cette caractéristique est désactivée, le dock "
"d'importation ne sera pas visible."

msgid "A modified version of [FileDialog] used by the editor."
msgstr "Une version modifié du [FileDialog] utilisé par l'éditeur."

msgid "Clear the filter for file names."
msgstr "Vide le filtre pour les noms de fichier."

msgid ""
"Returns the LineEdit for the selected file.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie le LineEdit pour le fichier sélectionné.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne nécessaire, le retirer et "
"le libérer peut causer un plantage. Si vous voulez le cacher lui ou l'un de "
"ses enfants, utilisez plutôt [member CanvasItem.visible]."

msgid ""
"Returns the [VBoxContainer] used to display the file system.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie le [VBoxContainer] utilisé pour afficher le système de fichiers.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud requis en interne, l'enlever et le "
"libérer peut causer un plantage. Si vous voulez le cacher lui ou un de ses "
"enfants, utilisez leur propriété [member CanvasItem.visible]."

msgid ""
"Notify the [EditorFileDialog] that its view of the data is no longer "
"accurate. Updates the view contents on next view update."
msgstr ""
"Notifie le [EditorFileDialog] que sa vue que son contenu n'est plus à jour. "
"Mettre à jour le contenu de la vue sur la prochaine mise à jour de la vue."

msgid ""
"The location from which the user may select a file, including [code]res://[/"
"code], [code]user://[/code], and the local file system."
msgstr ""
"L'emplacement à partir duquel l'utilisateur peut sélectionner un fichier, y "
"compris [code]res://[/code], [code]user://[/code], et le système de fichiers "
"local."

msgid "The currently occupied directory."
msgstr "Le répertoire actuellement occupé."

msgid "The currently selected file."
msgstr "Le fichier actuellement sélectionné."

msgid "The file system path in the address bar."
msgstr "Le chemin dans le système de fichier dans la barre d'adresse."

msgid ""
"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
"overwriting files."
msgstr ""
"Si [code]true[/code], le [EditorFileDialog] n'avertira pas l'utilisateur "
"avant d'écraser des fichiers."

msgid ""
"The view format in which the [EditorFileDialog] displays resources to the "
"user."
msgstr ""
"Le format de vue dans lequel le [EditorFileDialog] affiche les ressources à "
"l'utilisateur."

msgid "Emitted when a directory is selected."
msgstr "Émis lors de la sélection d'un répertoire."

msgid "Emitted when a file is selected."
msgstr "Émis lorsqu’un fichier est sélectionné."

msgid "Emitted when the filter for file names changes."
msgstr "Émis lorsque le filtre pour les noms de fichiers change."

msgid "Emitted when multiple files are selected."
msgstr "Émis lorsque plusieurs fichiers sont sélectionnés."

msgid ""
"The [EditorFileDialog] can select only one file. Accepting the window will "
"open the file."
msgstr ""
"Le [EditorFileDialog] ne peut sélectionner qu'un seul fichier. Accepter cette "
"fenêtre ouvrira le fichier sélectionné."

msgid ""
"The [EditorFileDialog] can select multiple files. Accepting the window will "
"open all files."
msgstr ""
"Le [EditorFileDialog] permet de sélectionner plusieurs fichiers. Valider le "
"dialogue ouvrira toutes ces fichiers."

msgid ""
"The [EditorFileDialog] can select only one directory. Accepting the window "
"will open the directory."
msgstr ""
"Le [EditorFileDialog] ne peut sélectionner qu'un seul dossier. Accepter la "
"fenêtre ouvrira le dossier sélectionné."

msgid ""
"The [EditorFileDialog] can select a file or directory. Accepting the window "
"will open it."
msgstr ""
"Le [EditorFileDialog] peut sélectionner un fichier ou un dossier. Le bouton "
"de validation de la fenêtre l'ouvrira."

msgid ""
"The [EditorFileDialog] can select only one file. Accepting the window will "
"save the file."
msgstr ""
"Le [EditorFileDialog] ne peut sélectionner qu'un seul fichier. Le bouton de "
"validation de la fenêtre le sauvegardera."

msgid ""
"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
msgstr ""
"Le [EditorFileDialog] ne peut afficher que le contenu des dossiers dans "
"[code]res://[/code]."

msgid ""
"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
msgstr ""
"Le [EditorFileDialog] ne peut afficher que le contenu des dossiers dans "
"[code]user://[/code]."

msgid "The [EditorFileDialog] can view the entire local file system."
msgstr ""
"Le [EditorFileDialog] peut voir l'entièreté du système de fichier local."

msgid "The [EditorFileDialog] displays resources as thumbnails."
msgstr "Le [EditorFileDialog] affiche les ressources sous forme de miniatures."

msgid "The [EditorFileDialog] displays resources as a list of filenames."
msgstr ""
"Le [EditorFileDialog] affiche les ressources comme une liste de nom de "
"fichiers."

msgid "Resource filesystem, as the editor sees it."
msgstr "Le système de fichier des ressources, tel que le voit l'éditeur."

msgid ""
"This object holds information of all resources in the filesystem, their "
"types, etc.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_resource_filesystem]."
msgstr ""
"Cet objet contient des informations sur toutes les ressources du système de "
"fichiers, leurs types, etc.\n"
"[b]Note :[/b] Cette classe ne devrait pas être instanciée directement. "
"Accédez plutôt à l'instance unique avec [method "
"EditorInterface.get_resource_filesystem]."

msgid ""
"Returns the resource type of the file, given the full path. This returns a "
"string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/code], "
"[i]not[/i] a file extension such as [code]\".gd\"[/code]."
msgstr ""
"Renvoie le type de ressource du fichier, spécifié par le chemin complet. Ceci "
"renvoie une chaîne comme [code]\"Resource\"[/code] or [code]\"GDScript\"[/"
"code], mais [i]pas[/i] l'extension du fichier comme [code]\".gd\"[/code]."

msgid "Gets the root directory object."
msgstr "Obtient l'objet de répertoire racine."

msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
msgstr ""
"Renvoie la progression de l'analyse de 0 à 1 si le système de fichiers est en "
"train d'être scanné."

msgid "Returns [code]true[/code] if the filesystem is being scanned."
msgstr "Renvoie [code]true[/code] si le système de fichier a été scanné."

msgid "Scan the filesystem for changes."
msgstr "Analysez le système de fichiers pour les modifications."

msgid "Check if the source of any imported resource changed."
msgstr "Vérifie si la source de n'importe quelle ressources importée a changé."

msgid "Emitted if the filesystem changed."
msgstr "Émis si le système de fichiers a changé."

msgid "Emitted if a resource is reimported."
msgstr "Émis si une ressource est réimportée."

msgid ""
"Emitted if at least one resource is reloaded when the filesystem is scanned."
msgstr ""
"Émis si au moins une ressource est rechargée lors de l’analyse du système de "
"fichiers."

msgid "Emitted if the source of any imported file changed."
msgstr "Émis si la source de n'importe quel fichier a changé."

msgid "A directory for the resource filesystem."
msgstr "Un répertoire pour le système de fichiers des ressources."

msgid "A more generalized, low-level variation of the directory concept."
msgstr "Une variation bas-niveau et plus générale du concept de dossier."

msgid ""
"Returns the index of the file with name [param name] or [code]-1[/code] if "
"not found."
msgstr ""
"Renvoie l'index du fichier nommé [param name] ou [code]-1[/code] s'il n'est "
"pas trouvé."

msgid "Returns the name of the file at index [param idx]."
msgstr "Renvoie le nom du fichier à l'index [param idx]."

msgid "Returns the number of files in this directory."
msgstr "Renvoie le nombre de fichiers dans ce dossier."

msgid ""
"Returns [code]true[/code] if the file at index [param idx] imported properly."
msgstr ""
"Renvoie [code]true[/code] si le fichier à l'index [param idx] à été importé "
"correctement."

msgid "Returns the path to the file at index [param idx]."
msgstr "Renvoie le chemin du fichier à l'index [param idx]."

msgid "Returns the name of this directory."
msgstr "Renvoie le nom de ce répertoire."

msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
"Renvoie le dossier parent de ce dossier ou [code]null[/code] si appelé dans "
"un dossier à [code]res://[/code] ou [code]user://[/code]."

msgid "Returns the path to this directory."
msgstr "Renvoie le chemin d'accès à ce répertoire."

msgid "Returns the subdirectory at index [param idx]."
msgstr "Renvoie le sous-répertoire à l'index [param idx]."

msgid "Returns the number of subdirectories in this directory."
msgstr "Renvoie le nombre de sous-dossiers dans ce dossier."

msgid "Return the file extensions supported."
msgstr "Renvoie les extensions de fichier supportées."

msgid "Return whether this importer is active."
msgstr "Renvoie si cet importeur est actif."

msgid ""
"Registers a custom resource importer in the editor. Use the class to parse "
"any file and import it as a new resource type."
msgstr ""
"Enregistre un importateur de ressources personnalisée dans l'éditeur. "
"Utilisez cette classe pour interpréter n'importe quel fichier pour l'importer "
"comme nouveau type de ressource."

msgid ""
"[EditorImportPlugin]s provide a way to extend the editor's resource import "
"functionality. Use them to import resources from custom files or to provide "
"alternatives to the editor's existing importers.\n"
"EditorImportPlugins work by associating with specific file extensions and a "
"resource type. See [method _get_recognized_extensions] and [method "
"_get_resource_type]. They may optionally specify some import presets that "
"affect the import process. EditorImportPlugins are responsible for creating "
"the resources and saving them in the [code].godot/imported[/code] directory "
"(see [member ProjectSettings.application/config/"
"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file with "
"the extension \".special\" or \".spec\":\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorImportPlugin\n"
"\n"
"func _get_importer_name():\n"
"\treturn \"my.special.plugin\"\n"
"\n"
"func _get_visible_name():\n"
"\treturn \"Special Mesh\"\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"special\", \"spec\"]\n"
"\n"
"func _get_save_extension():\n"
"\treturn \"mesh\"\n"
"\n"
"func _get_resource_type():\n"
"\treturn \"Mesh\"\n"
"\n"
"func _get_preset_count():\n"
"\treturn 1\n"
"\n"
"func _get_preset_name(preset_index):\n"
"\treturn \"Default\"\n"
"\n"
"func _get_import_options(path, preset_index):\n"
"\treturn [{\"name\": \"my_option\", \"default_value\": false}]\n"
"\n"
"func _import(source_file, save_path, options, platform_variants, gen_files):\n"
"\tvar file = FileAccess.open(source_file, FileAccess.READ)\n"
"\tif file == null:\n"
"\t\treturn FAILED\n"
"\tvar mesh = ArrayMesh.new()\n"
"\t# Fill the Mesh with data read in \"file\", left as an exercise to the "
"reader.\n"
"\n"
"\tvar filename = save_path + \".\" + _get_save_extension()\n"
"\treturn ResourceSaver.save(mesh, filename)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"public partial class MySpecialPlugin : EditorImportPlugin\n"
"{\n"
"\tpublic override string _GetImporterName()\n"
"\t{\n"
"\t\treturn \"my.special.plugin\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetVisibleName()\n"
"\t{\n"
"\t\treturn \"Special Mesh\";\n"
"\t}\n"
"\n"
"\tpublic override string[] _GetRecognizedExtensions()\n"
"\t{\n"
"\t\treturn [\"special\", \"spec\"];\n"
"\t}\n"
"\n"
"\tpublic override string _GetSaveExtension()\n"
"\t{\n"
"\t\treturn \"mesh\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetResourceType()\n"
"\t{\n"
"\t\treturn \"Mesh\";\n"
"\t}\n"
"\n"
"\tpublic override int _GetPresetCount()\n"
"\t{\n"
"\t\treturn 1;\n"
"\t}\n"
"\n"
"\tpublic override string _GetPresetName(int presetIndex)\n"
"\t{\n"
"\t\treturn \"Default\";\n"
"\t}\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetImportOptions(string path, int presetIndex)\n"
"\t{\n"
"\t\treturn\n"
"\t\t[\n"
"\t\t\tnew Godot.Collections.Dictionary\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", \"myOption\" },\n"
"\t\t\t\t{ \"default_value\", false },\n"
"\t\t\t},\n"
"\t\t];\n"
"\t}\n"
"\n"
"\tpublic override Error _Import(string sourceFile, string savePath, "
"Godot.Collections.Dictionary options, Godot.Collections.Array<string> "
"platformVariants, Godot.Collections.Array<string> genFiles)\n"
"\t{\n"
"\t\tusing var file = FileAccess.Open(sourceFile, FileAccess.ModeFlags.Read);\n"
"\t\tif (file.GetError() != Error.Ok)\n"
"\t\t{\n"
"\t\t\treturn Error.Failed;\n"
"\t\t}\n"
"\n"
"\t\tvar mesh = new ArrayMesh();\n"
"\t\t// Fill the Mesh with data read in \"file\", left as an exercise to the "
"reader.\n"
"\t\tstring filename = $\"{savePath}.{_GetSaveExtension()}\";\n"
"\t\treturn ResourceSaver.Save(mesh, filename);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To use [EditorImportPlugin], register it using the [method "
"EditorPlugin.add_import_plugin] method first."
msgstr ""
"Les [EditorImportPlugin] fournissent un moyen d'étendre la fonctionnalité "
"d'importation des ressources de l'éditeur. Utilisez-les pour importer des "
"ressources depuis des fichiers personnalisés ou pour proposer une alternative "
"aux importateurs existants de l'éditeur.\n"
"Les EditorImportPlugins fonctionnent en associant certaines extensions de "
"fichiers avec un type de ressource. Voir [method _get_recognized_extensions] "
"et [method _get_resource_type]. Ils peuvent aussi spécifier des préréglages "
"d'importation qui changeront le processus d'importation. Les "
"EditorImportPlugins sont responsables pour créer les ressources et les "
"enregistrer dans le dossier [code].godot/imported[/code] (voir [member "
"ProjectSettings.application/config/use_hidden_project_data_directory]).\n"
"L'exemple ci-dessous définit un EditorImportPlugin qui importe un [Mesh] "
"depuis un fichier avec l'extension \".special\" ou \".spec\" :\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorImportPlugin\n"
"\n"
"func _get_importer_name():\n"
"\treturn \"mon.plugin.special\"\n"
"\n"
"func _get_visible_name():\n"
"\treturn \"Maillage Special\"\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"special\", \"spec\"]\n"
"\n"
"func _get_save_extension():\n"
"\treturn \"mesh\"\n"
"\n"
"func _get_resource_type():\n"
"\treturn \"Mesh\"\n"
"\n"
"func _get_preset_count():\n"
"\treturn 1\n"
"\n"
"func _get_preset_name(i):\n"
"\treturn \"Default\"\n"
"\n"
"func _get_import_options(i):\n"
"\treturn [{\"name\": \"mon_option\", \"default_value\": false}]\n"
"\n"
"func _import(source_file, save_path, options, platform_variants, gen_files):\n"
"\tvar fichier = File.new()\n"
"\tif file == null:\n"
"\t\treturn FAILED\n"
"\tvar maillage = Mesh.new()\n"
"\t# Remplir le maillage avec des données lues depuis \"fichier\" (exercice "
"laissé au lecteur)\n"
"\n"
"\tvar nom_de_fichier = save_path + \".\" + get_save_extension()\n"
"\treturn ResourceSaver.save(maillage, nom_de_fichier)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"public partial class MySpecialPlugin : EditorImportPlugin\n"
"{\n"
"\tpublic override string _GetImporterName()\n"
"\t{\n"
"\t\treturn \"mon.plugin.special\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetVisibleName()\n"
"\t{\n"
"\t\treturn \"Maillage Special\";\n"
"\t}\n"
"\n"
"\tpublic override string[] _GetRecognizedExtensions()\n"
"\t{\n"
"\t\treturn [\"special\", \"spec\"];\n"
"\t}\n"
"\n"
"\tpublic override string _GetSaveExtension()\n"
"\t{\n"
"\t\treturn \"mesh\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetResourceType()\n"
"\t{\n"
"\t\treturn \"Mesh\";\n"
"\t}\n"
"\n"
"\tpublic override int _GetPresetCount()\n"
"\t{\n"
"\t\treturn 1;\n"
"\t}\n"
"\n"
"\tpublic override string _GetPresetName(int presetIndex)\n"
"\t{\n"
"\t\treturn \"Default\";\n"
"\t}\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetImportOptions(string path, int presetIndex)\n"
"\t{\n"
"\t\treturn\n"
"\t\t[\n"
"\t\t\tnew Godot.Collections.Dictionary\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", \"mon_option\" },\n"
"\t\t\t\t{ \"default_value\", false },\n"
"\t\t\t},\n"
"\t\t];\n"
"\t}\n"
"\n"
"\tpublic override Error _Import(string sourceFile, string savePath, "
"Godot.Collections.Dictionary options, Godot.Collections.Array<string> "
"platformVariants, Godot.Collections.Array<string> genFiles)\n"
"\t{\n"
"\t\tusing var fichier = FileAccess.Open(sourceFile, "
"FileAccess.ModeFlags.Read);\n"
"\t\tif (fichier.GetError() != Error.Ok)\n"
"\t\t{\n"
"\t\t\treturn Error.Failed;\n"
"\t\t}\n"
"\n"
"\t\tvar mesh = new ArrayMesh();\n"
"\t\t// Remplir le maillage avec des données lues depuis \"fichier\" (exercice "
"laissé au lecteur)\n"
"\t\tstring filename = $\"{savePath}.{_GetSaveExtension()}\";\n"
"\t\treturn ResourceSaver.Save(maillage, nom_de_fichier);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Pour utiliser un [EditorImportPlugin], enregistrez-le d'abord avec la méthode "
"[method EditorPlugin.add_import_plugin]."

msgid "Import plugins"
msgstr "Importer des plugins"

msgid ""
"Gets the options and default values for the preset at this index. Returns an "
"Array of Dictionaries with the following keys: [code]name[/code], "
"[code]default_value[/code], [code]property_hint[/code] (optional), "
"[code]hint_string[/code] (optional), [code]usage[/code] (optional)."
msgstr ""
"Obtient les options et les valeurs par défaut pour le préréglage à cet index. "
"Renvoie un [Array] de [Dictionary] avec les clés suivantes : [code]name[/"
"code], [code]default_value[/code], [code]property_hint[/code] (optionnel), "
"[code]hint_string[/code] (optionnel) et [code]usage[/code] (optionnel)."

msgid ""
"Gets the order of this importer to be run when importing resources. Importers "
"with [i]lower[/i] import orders will be called first, and higher values will "
"be called later. Use this to ensure the importer runs after the dependencies "
"are already imported. The default import order is [code]0[/code] unless "
"overridden by a specific importer. See [enum ResourceImporter.ImportOrder] "
"for some predefined values."
msgstr ""
"Obtient l'ordre de lancement de cet importateur lors de l'importation de "
"ressources. Les importateurs avec un ordre d'importation plus [i]bas[/i] "
"seront appelés en premier, et des valeurs supérieures seront appelées après. "
"Utilisez-le pour s'assurer que l'importateur fonctionne après l'importation "
"des dépendances. L'ordre d'importation par défaut est [code]0[/code] à moins "
"d'être remplacé par un importateur spécifique. Voir [enum "
"ResourceImporter.ImportOrder] pour certaines valeurs prédéfinies."

msgid "Gets the unique name of the importer."
msgstr "Obtient le nom unique de l'importateur."

msgid ""
"Gets whether the import option specified by [param option_name] should be "
"visible in the Import dock. The default implementation always returns "
"[code]true[/code], making all options visible. This is mainly useful for "
"hiding options that depend on others if one of them is disabled.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_option_visibility(path, option_name, options):\n"
"\t# Only show the lossy quality setting if the compression mode is set to "
"\"Lossy\".\n"
"\tif option_name == \"compress/lossy_quality\" and options.has(\"compress/"
"mode\"):\n"
"\t\treturn int(options[\"compress/mode\"]) == COMPRESS_LOSSY # This is a "
"constant that you set\n"
"\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _GetOptionVisibility(string path, StringName optionName, "
"Godot.Collections.Dictionary options)\n"
"{\n"
"\t// Only show the lossy quality setting if the compression mode is set to "
"\"Lossy\".\n"
"\tif (optionName == \"compress/lossy_quality\" && "
"options.ContainsKey(\"compress/mode\"))\n"
"\t{\n"
"\t\treturn (int)options[\"compress/mode\"] == CompressLossy; // This is a "
"constant you set\n"
"\t}\n"
"\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Obtient si l'option d'importation spécifiée par [param option_name] devrait "
"être visible dans le dock Import. L'implémentation par défaut renvoie "
"toujours [code]true[/code], rendant toutes les options visibles. Ceci est "
"principalement utile pour cacher des options qui dépendent des autres si "
"l'une d'entre elle est désactivée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_option_visibility(path, option_name, options):\n"
"\t# Affiche seulement le réglage de la qualité avec perte si le mode de "
"compression est défini à \"Lossy\".\n"
"\tif option_name == \"compress/lossy_quality\" and options.has(\"compress/"
"mode\"):\n"
"\t\treturn int(options[\"compress/mode\"]) == COMPRESS_LOSSY # Il s'agit "
"d'une constante que vous définissez\n"
"\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _GetOptionVisibility(string path, StringName optionName, "
"Godot.Collections.Dictionary options)\n"
"{\n"
"\t// Affiche seulement le réglage de la qualité avec perte si le mode de "
"compression est défini à \"Lossy\".\n"
"\tif (optionName == \"compress/lossy_quality\" && "
"options.ContainsKey(\"compress/mode\"))\n"
"\t{\n"
"\t\treturn (int)options[\"compress/mode\"] == CompressLossy; // Il s'agit "
"d'une constante que vous définissez\n"
"\t}\n"
"\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Gets the name of the options preset at this index."
msgstr "Obtient le nom des préréglages de l'option à cette position."

msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
"Obtient la priorité de ce greffon pour l'extension reconnue. Des greffons le "
"plus prioritaires seront préférés. La priorité par défaut est [code]1.0[/"
"code]."

msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
"Obtient la liste des extensions de fichier à associer à ce chargeur "
"(insensible à la casse). Par exemple [code][\"obj\"][/code]."

msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]"
"\"Mesh\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
"Obtient le type de ressource de Godot associé avec ce chargeur, par ex. : "
"[code]\"Mesh\"[/code] ou [code]\"Animation\"[/code]."

msgid ""
"Gets the name to display in the import window. You should choose this name as "
"a continuation to \"Import as\", e.g. \"Import as Special Mesh\"."
msgstr ""
"Obtient le nom à afficher dans la fenêtre d'importation. Vous devriez choisir "
"ce nom comme une suite à \"Importer comme\", par exemple \"Importer comme "
"Maillage Spécial\"."

msgid "A control used to edit properties of an object."
msgstr "Un contrôle pour modifier les propriétés d'un objet."

msgid "Returns the object currently selected in this inspector."
msgstr "Renvoie l'objet actuellement sélectionné dans cet inspecteur."

msgid "Gets the path of the currently selected property."
msgstr "Obtient le chemin de la propriété actuellement sélectionnée."

msgid "Emitted when a property is edited in the inspector."
msgstr "Émis lorsqu'une propriété est modifiée dans l'inspecteur."

msgid ""
"Emitted when a property is keyed in the inspector. Properties can be keyed by "
"clicking the \"key\" icon next to a property when the Animation panel is "
"toggled."
msgstr ""
"Émis lorsqu'une propriété est utilisée comme clé dans l'inspecteur. Les "
"propriétés peuvent être utilisées comme clé en cliquant sur l'icône \"clé\" à "
"côté d'une propriété lorsque le panneau \"Animation\" est ouvert."

msgid "Emitted when a property is selected in the inspector."
msgstr "Émis lorsqu'une propriété est sélectionnée dans l'inspecteur."

msgid ""
"Emitted when a boolean property is toggled in the inspector.\n"
"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
"code] property enabled. Since this property is always enabled in the editor "
"inspector, this signal is never emitted by the editor itself."
msgstr ""
"Émis lorsqu'une propriété booléenne est basculée dans l'inspecteur.\n"
"[b]Note :[/b] Ce signal n'est jamais émis si la propriété interne "
"[code]autoclear[/code] est activée. Comme cette propriété est toujours "
"activée dans l'inspecteur de l'éditeur, ce signal n'est jamais émis par "
"l'éditeur lui-même."

msgid "Emitted when a resource is selected in the inspector."
msgstr "Émis quand une ressource est sélectionnée dans l'inspecteur."

msgid "Inspector plugins"
msgstr "Les greffons de l'inspecteur"

msgid "Returns [code]true[/code] if this object can be handled by this plugin."
msgstr "Renvoie [code]true[/code] si cet objet peut être géré par ce plugin."

msgid "Adds a custom control, which is not necessarily a property editor."
msgstr ""
"Ajoute un contrôle personnalisé, qui n'est pas nécessairement un éditeur de "
"propriété."

msgid "Godot editor's interface."
msgstr "Interface de l'éditeur Godot."

msgid ""
"[EditorInterface] gives you control over Godot editor's window. It allows "
"customizing the window, saving and (re-)loading scenes, rendering mesh "
"previews, inspecting and editing resources and objects, and provides access "
"to [EditorSettings], [EditorFileSystem], [EditorResourcePreview], "
"[ScriptEditor], the editor viewport, and information about scenes.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton directly by its name.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var editor_settings = EditorInterface.get_editor_settings()\n"
"[/gdscript]\n"
"[csharp]\n"
"// In C# you can access it via the static Singleton property.\n"
"EditorSettings settings = EditorInterface.Singleton.GetEditorSettings();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[EditorInterface] vous donne le contrôle sur la fenêtre de l'éditeur Godot. "
"Il permet de personnaliser la fenêtre, d'enregistrer et (re-)charger des "
"scènes, de rendre des aperçus de maillage, d'inspecter et d'éditer des "
"ressources et des objets, et fournit l'accès à [EditorSettings], "
"[EditorFileSystem], [EditorResourcePreview], [ScriptEditor], la fenêtre "
"d'affichage de l'éditeur et des informations sur les scènes.\n"
"[b]Note :[/b] Cette classe ne devrait pas être instanciée. Au lieu de cela, "
"accédez directement au singleton par son nom.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var parametres_editeur = EditorInterface.get_editor_settings()\n"
"[/gdscript]\n"
"[csharp]\n"
"// En C# vous pouvez y accéder via la propriété statique Singleton.\n"
"EditorSettings parametres = EditorInterface.Singleton.GetEditorSettings();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Edits the given [Node]. The node will be also selected if it's inside the "
"scene tree."
msgstr ""
"Édite le [Node] donné. Le nœud sera également sélectionné s'il s'agit d'une "
"arborescence de scène."

msgid ""
"Edits the given [Resource]. If the resource is a [Script] you can also edit "
"it with [method edit_script] to specify the line and column position."
msgstr ""
"Modifie la [Resource] donnée. Si la ressource est un [Script], vous pouvez "
"également la modifier avec [method edit_script] en spécifiant la position de "
"la ligne et de la colonne."

msgid ""
"Edits the given [Script]. The line and column on which to open the script can "
"also be specified. The script will be open with the user-configured editor "
"for the script's language which may be an external editor."
msgstr ""
"Modifie le [Script]. La ligne et la colonne à laquelle ce script s'ouvre peut "
"également être spécifiées. Le script sera ouvert avec l'éditeur configuré par "
"l'utilisateur pour ce type de langage, où un éditeur externe peut être "
"spécifié."

msgid ""
"Returns the main container of Godot editor's window. For example, you can use "
"it to retrieve the size of the container and place your controls "
"accordingly.\n"
"[b]Warning:[/b] Removing and freeing this node will render the editor useless "
"and may cause a crash."
msgstr ""
"Renvoie le conteneur principal de la fenêtre de l'éditeur de Godot. Par "
"exemple, vous pouvez l'utiliser pour récupérer la taille du conteneur et "
"placer vos contrôles en conséquence.\n"
"[b]Avertissement :[/b] Enlever et libérer ce nœud rend l'éditeur inutile et "
"peut causer un plantage."

msgid ""
"Returns the editor's [EditorCommandPalette] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Renvoie l'instance [EditorCommandPalette] de l'éditeur.\n"
"[b]Avertissement :[/b] Enlever et libérer ce nœud rendra une partie de "
"l'éditeur inutile et peut causer un plantage."

msgid "Returns the current path being viewed in the [FileSystemDock]."
msgstr "Renvoie l'actuel chemin en train d'être vu dans le [FileSystemDock]."

msgid "Returns the edited (current) scene's root [Node]."
msgstr "Renvoie le [Node] racine de la scène (actuellement) éditée."

msgid "Returns the [EditorPaths] singleton."
msgstr "Renvoie le singleton [EditorPaths]."

msgid "Returns the editor's [EditorSettings] instance."
msgstr "Renvoie l'instance [EditorSettings] de l'éditeur."

msgid "Returns the editor's [EditorToaster]."
msgstr "Renvoie l'[EditorToaster] de l'éditeur."

msgid "Returns the editor's [EditorUndoRedoManager]."
msgstr "Renvoie le [EditorUndoRedoManager] de l'éditeur."

msgid ""
"Returns the editor's [FileSystemDock] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Renvoie l'instance [FileSystemDock] de l'éditeur.\n"
"[b]Avertissement :[/b] Enlever et libérer ce nœud rendra une partie de "
"l'éditeur inutile et peut causer un crash."

msgid ""
"Returns the editor's [EditorInspector] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Renvoie l'instance [EditorInspector] de l'éditeur.\n"
"[b]Avertissement :[/b] Enlever et libérer ce nœud rendra une partie de "
"l'éditeur inutile et peut causer un crash."

msgid ""
"Returns the name of the scene that is being played. If no scene is currently "
"being played, returns an empty string."
msgstr ""
"Renvoie le nom de la scène qui est en train d'être jouée. Si aucune scène "
"n'est actuellement jouée, renvoie une chaîne vide."

msgid "Returns the editor's [EditorFileSystem] instance."
msgstr "Renvoie l'instance [EditorFileSystem] de l'éditeur."

msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr "Renvoie l'instance [EditorResourcePreview] de l'éditeur."

msgid ""
"Returns the editor's [ScriptEditor] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Renvoie l'instance [ScriptEditor].\n"
"[b]Avertissement :[/b] Enlever et libérer ce nœud rendra une partie de "
"l'éditeur inutile et peut causer un crash."

msgid "Returns the editor's [EditorSelection] instance."
msgstr "Renvoie l'instance [EditorSelection] de l'éditeur."

msgid "Marks the current scene tab as unsaved."
msgstr "Marque l'onglet de la scène actuelle comme non sauvegardée."

msgid ""
"Opens the scene at the given path. If [param set_inherited] is [code]true[/"
"code], creates a new inherited scene."
msgstr ""
"Ouvre la scène au chemin donné. Si [param set_inherited] vaut [code]true[/"
"code], crée une nouvelle scène héritée."

msgid "Plays the currently active scene."
msgstr "Joue la scène actuellement active."

msgid "Plays the scene specified by its filepath."
msgstr "Joue la scène spécifiée par son chemin de fichier."

msgid "Plays the main scene."
msgstr "Joue la scène principale."

msgid "Reloads the scene at the given path."
msgstr "Recharge la scène à l'emplacement spécifié."

msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
"Définit le status d'activation du greffon. Le nom du greffon est le même que "
"celui de son dossier."

msgid "Stops the scene that is currently playing."
msgstr "Arrête la scène qui est actuellement jouée."

msgid ""
"If [code]true[/code], enables distraction-free mode which hides side docks to "
"increase the space available for the main view."
msgstr ""
"Si [code]true[/code], active le mode sans distraction qui cache les barres "
"d'outils latérales pour augmenter l'espace disponible pour la vue principale."

msgid "Gizmo for editing [Node3D] objects."
msgstr "Manipulateur pour éditer des objets [Node3D]."

msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this method during [method _redraw]."
msgstr ""
"Ajoute des triangles de collision au manipulateur pour la sélection. Un "
"[TriangleMesh] peut aussi être généré à partir d'un [Mesh] habituel. Appelez "
"cette fonction durant [method _redraw]."

msgid ""
"Removes everything in the gizmo including meshes, collisions and handles."
msgstr ""
"Supprime tout dans le gizmo, y compris les meshes, les collisions et les "
"poignées."

msgid ""
"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
"hidden. If [code]false[/code], it will be shown."
msgstr ""
"Définit le mode caché du manipulateur. Si [code]true[/code], le manipulateur "
"sera caché. Si [code]false[/code], il sera affiché."

msgid "Node3D gizmo plugins"
msgstr "Plugins de manipulateurs Node3D"

msgid ""
"Override this method to provide the name that will appear in the gizmo "
"visibility menu."
msgstr ""
"Redéfinissez cette méthode pour fournir le nom qui apparaîtra dans le menu de "
"visibilité du manipulateur."

msgid ""
"Adds a new material to the internal material list for the plugin. It can then "
"be accessed with [method get_material]. Should not be overridden."
msgstr ""
"Ajoute un nouveau matériau à la liste des matériaux internes pour le plugin. "
"Il peut ensuite être accédé avec [method get_material]. Ne devrait pas être "
"redéfinie."

msgid "File paths in Godot projects"
msgstr "Les chemins de fichiers dans les projets Godot"

msgid "Used by the editor to extend its functionality."
msgstr "Utiliser par l'éditeur pour augmenter ses fonctionnalités."

msgid "Editor plugins documentation index"
msgstr "Index de la documentation sur les plugins éditeur"

msgid ""
"This method is called when the editor is about to save the project, switch to "
"another tab, etc. It asks the plugin to apply any pending state changes to "
"ensure consistency.\n"
"This is used, for example, in shader editors to let the plugin know that it "
"must apply the shader code being written by the user to the object."
msgstr ""
"Cette méthode est appelée lorsque l'éditeur est sur le point d'enregistrer le "
"projet, passer à un autre onglet, etc. Il demande au greffon d'appliquer tout "
"changement d'état qui serait en attente pour garder une certaine cohérence.\n"
"Ceci est utilisé, par exemple, dans les éditeurs d'ombres pour signaler au "
"greffon qu'il doit appliquer le shader d'ombre écrit par l'utilisateur à "
"l'objet."

msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
"Efface tout l'état et réinitialise à zéro l'objet modifié. Cela garantit que "
"votre greffon ne maintient pas l'édition d'un nœud existant ou d'une autre "
"scène."

msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
"Appelé par le moteur lorsque l'utilisateur désactive le [EditorPlugin] dans "
"l'onglet Greffon de la fenêtre des paramètres du projet."

msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
"Appelé par le moteur lorsque l'utilisateur active le [EditorPlugin] dans "
"l'onglet Greffon de la fenêtre des paramètres du projet."

msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
"C'est pour les éditeurs qui modifient des objets basés sur des scripts. Vous "
"pouvez renvoyer une liste de points d'arrêt avec le format "
"([code]script:line[/code]), par exemple : [code]res://path_to_script.gd:25[/"
"code]."

msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
"Remember that you have to manage the visibility of all your editor controls "
"manually."
msgstr ""
"Cette fonction sera appelée lorsqu'il est demandé à l'éditeur de devenir "
"visible. Il est utilisé pour les greffons qui modifient un type d'objet "
"spécifique.\n"
"Rappelez-vous que vous devez gérer manuellement la visibilité de tous les "
"contrôles de votre éditeur."

msgid ""
"This method is called after the editor saves the project or when it's closed. "
"It asks the plugin to save edited external scenes/resources."
msgstr ""
"Cette méthode est appelée après que l'éditeur enregistre le projet ou "
"lorsqu'il est fermé. Il demande au greffon d'enregistrer les scènes et "
"ressources externes modifiées."

msgid ""
"Restore the state saved by [method _get_state]. This method is called when "
"the current scene tab is changed in the editor.\n"
"[b]Note:[/b] Your plugin must implement [method _get_plugin_name], otherwise "
"it will not be recognized and this method will not be called.\n"
"[codeblock]\n"
"func _set_state(data):\n"
"\tzoom = data.get(\"zoom\", 1.0)\n"
"\tpreferred_color = data.get(\"my_color\", Color.WHITE)\n"
"[/codeblock]"
msgstr ""
"Restaure l'état enregistré par [method _get_state]. Cette méthode est appelée "
"lorsque l'onglet de scène actuelle est changé dans l'éditeur.\n"
"[b]Note :[/b] Votre plugin doit implémenter [method _get_plugin_name], sinon "
"il ne sera pas reconnu et cette méthode ne sera pas appelée.\n"
"[codeblock]\n"
"func set_state(data):\n"
"\tzoom = data.get(\"zoom\", 1.0)\n"
"\tcouleur_preferee= data.get(\"ma_couleur\", Color.WHITE)\n"
"[/codeblock]"

msgid ""
"Registers a new [EditorExportPlugin]. Export plugins are used to perform "
"tasks when the project is being exported.\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
"Enregistre un nouveau [EditorExportPlugin]. Les greffons d'exportation sont "
"utilisés pour effectuer des tâches lorsque le projet est exporté.\n"
"Voir [method add_inspector_plugin] pour un exemple sur comment enregistrer un "
"greffon."

msgid ""
"Gets the Editor's dialog used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Obtient le dialogue de l'éditeur utilisé pour faire des scripts.\n"
"[b]Note :[/b] Les utilisateurs peuvent le configurer avant d'utiliser.\n"
"[b]Attention :[/b] Supprimer et libérer ce nœud rend une partie de l'éditeur "
"inutile et peut causer un accident."

msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so use "
"this object to make sure this happens when it's worth it."
msgstr ""
"Obtient l'objet annuler/refaire. La plupart des actions de l'éditeur peuvent "
"être inutilisables, alors utilisez cet objet pour s'assurer que cela se "
"produit quand ça en vaut la peine."

msgid "Minimizes the bottom panel."
msgstr "Réduit le panneau du bas."

msgid "Makes a specific item in the bottom panel visible."
msgstr "Rend l'élément spécifié visible dans le panneau du bas."

msgid "Queue save the project's editor layout."
msgstr ""
"Met en file d'attente la sauvegarde de la disposition de l'éditeur du projet."

msgid "Removes the specified context menu plugin."
msgstr "Supprime le plugin de menu contextuel spécifié."

msgid ""
"Removes the control from the bottom panel. You have to manually [method "
"Node.queue_free] the control."
msgstr ""
"Retire un contrôle du panneau du bas. Vous devez appeler manuellement [method "
"Node.queue_free] pour supprimer ce contrôle."

msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
"Retire un contrôle du conteneur spécifié. Vous devez appeler manuellement "
"[method Node.queue_free] pour supprimer ce contrôle."

msgid ""
"Removes the control from the dock. You have to manually [method "
"Node.queue_free] the control."
msgstr ""
"Retire un contrôle de la barre d'outils. Vous devez appeler manuellement "
"[method Node.queue_free] pour supprimer ce contrôle."

msgid "Removes a custom type added by [method add_custom_type]."
msgstr "Supprime un type personnalisé ajouté par [method add_custom_type]."

msgid "Removes an export platform registered by [method add_export_platform]."
msgstr ""
"Supprime une plate-forme d'export enregistrée par [method "
"add_export_platform]."

msgid "Removes an export plugin registered by [method add_export_plugin]."
msgstr ""
"Supprime un plugin d'exportation enregistré par la [method add_export_plugin]."

msgid "Removes an import plugin registered by [method add_import_plugin]."
msgstr "Supprime un plugin importé inscrit par [method add_import_plugin]."

msgid "Removes an inspector plugin registered by [method add_inspector_plugin]."
msgstr ""
"Supprime un plugin d'inspecteur enregistré par [method add_inspector_plugin]."

msgid "Removes a gizmo plugin registered by [method add_node_3d_gizmo_plugin]."
msgstr ""
"Supprime un plugin manipulateur ajouté par [method add_node_3d_gizmo_plugin]."

msgid ""
"Removes a resource conversion plugin registered by [method "
"add_resource_conversion_plugin]."
msgstr ""
"Supprime un plugin de conversion de ressource inscrit par [method "
"add_resource_conversion_plugin]."

msgid ""
"Removes a scene format importer registered by [method "
"add_scene_format_importer_plugin]."
msgstr ""
"Supprime un importeur de format scène inscrit par [method "
"add_scene_format_importer_plugin]."

msgid ""
"Remove the [EditorScenePostImportPlugin], added with [method "
"add_scene_post_import_plugin]."
msgstr ""
"Supprime l'[EditorScenePostImportPlugin], ajouté avec [method "
"add_scene_post_import_plugin]."

msgid ""
"Removes a custom translation parser plugin registered by [method "
"add_translation_parser_plugin]."
msgstr ""
"Supprime un plugin de parsing de traduction personnalisé enregistré par "
"[method add_translation_parser_plugin]."

msgid "Use [signal ProjectSettings.settings_changed] instead."
msgstr "Utilisez [signal ProjectSettings.settings_changed] à la place."

msgid "Emitted when any project setting has changed."
msgstr "Émis quand un paramètre du projet a changé."

msgid ""
"Emitted when the scene is changed in the editor. The argument will return the "
"root node of the scene that has just become active. If this scene is new and "
"empty, the argument will be [code]null[/code]."
msgstr ""
"Émis lorsque la scène est changée dans l'éditeur. L'argument renverra le nœud "
"racine de la scène qui vient de devenir active. Si cette scène est nouvelle "
"et vide, l'argument sera [code]null[/code]."

msgid "Left sidebar of the 3D editor."
msgstr "Barre latérale gauche de l'éditeur 3D."

msgid "Right sidebar of the 3D editor."
msgstr "Barre latérale droite de l'éditeur 3D."

msgid "Bottom panel of the 3D editor."
msgstr "Panneau inférieur de l'éditeur 3D."

msgid "Left sidebar of the 2D editor."
msgstr "Barre latérale gauche de l'éditeur 2D."

msgid "Right sidebar of the 2D editor."
msgstr "Barre latérale droite de l'éditeur 2D."

msgid "Bottom panel of the 2D editor."
msgstr "Panneau inférieur de l'éditeur 2D."

msgid "Bottom section of the inspector."
msgstr "Section inférieure de l'inspecteur."

msgid "Represents the size of the [enum DockSlot] enum."
msgstr "Représente la taille de l’enum [enum DockSlot]."

msgid "When this virtual function is called, you must update your editor."
msgstr ""
"Lorsque cette fonction virtuelle est appelée, vous devez mettre à jour votre "
"éditeur."

msgid ""
"If any of the controls added can gain keyboard focus, add it here. This "
"ensures that focus will be restored if the inspector is refreshed."
msgstr ""
"Si l'un des contrôles ajoutés peut récupérer le focus du clavier, ajoutez-le "
"ici. Cela permettra de rétablir le focus si l'inspecteur est mis à jour."

msgid ""
"If one or several properties have changed, this must be called. [param field] "
"is used in case your editor can modify fields separately (as an example, "
"Vector3.x). The [param changing] argument avoids the editor requesting this "
"property to be refreshed (leave as [code]false[/code] if unsure)."
msgstr ""
"Si une ou plusieurs propriétés ont changé, ceci doit être appelé. [param "
"field] est utilisé au cas où votre éditeur peut modifier les champs "
"séparément (par exemple : Vector3.x) L'argument [param changing] évite à "
"l'éditeur de demander que cette propriété soit rafraîchie (laissez-le à "
"[code]false[/code] en cas de doute)."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is "
"checkable."
msgstr ""
"Utilisé par l'inspecteur, défini à [code]true[/code] lorsque la propriété "
"peut être cochée."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
"Utilisé par l'inspecteur, défini à [code]true[/code] quand la propriété est "
"cochée."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is drawn "
"with the editor theme's warning color. This is used for editable children's "
"properties."
msgstr ""
"Utilisé par l'inspecteur, définit à [code]true[/code] quand la propriété est "
"affiché avec la couleur d'avertissement de l'éditeur. Ceci est utilisé pour "
"les propriétés modifiables pour les nœuds enfants."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property can add "
"keys for animation."
msgstr ""
"Utilisé par l'inspecteur, définit à [code]true[/code] si la propriété peut "
"ajouter une clé pour être animée."

msgid "Set this property to change the label (if you want to show one)."
msgstr ""
"Réglez cette propriété pour changer l'étiquette (si vous voulez en montrer "
"une)."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is read-"
"only."
msgstr ""
"Utilisé par l'inspecteur, défini à [code]true[/code] quand la propriété est "
"en lecture-seule."

msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
"Utilisé par des sous-inspecteurs. Émettez-le si l'identifiant d'un Object a "
"été sélectionné."

msgid "Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
"Ne l'émettez pas manuellement, utilisez plutôt la méthode [method "
"emit_changed]."

msgid "Emitted when a property was checked. Used internally."
msgstr "Émis lors de la vérification d’une propriété. Utilisé en interne."

msgid "Emitted when a property was deleted. Used internally."
msgstr "Émis lorsqu'une propriété a été supprimée. Utilisé en interne."

msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
"Émettez-le si vous voulez ajouter cette valeur comme clé d'animation "
"(vérifiez que la clé est d'abord activée)."

msgid "Emit it if you want to key a property with a single value."
msgstr ""
"Emettez-le si vous voulez définir une clé pour cette propriété avec une "
"valeur unique."

msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
"Si vous voulez que la sous-ressource soit modifié, émettez ce signal avec "
"cette ressource."

msgid "Emitted when selected. Used internally."
msgstr "Émis lors de la sélection. Utilisé en interne."

msgid "Godot editor's control for selecting [Resource] type properties."
msgstr ""
"Le contrôle de l'éditeur de Godot pour la sélection des propriétés de type "
"[Resource]."

msgid ""
"This [Control] node is used in the editor's Inspector dock to allow editing "
"of [Resource] type properties. It provides options for creating, loading, "
"saving and converting resources. Can be used with [EditorInspectorPlugin] to "
"recreate the same behavior.\n"
"[b]Note:[/b] This [Control] does not include any editor for the resource, as "
"editing is controlled by the Inspector dock itself or sub-Inspectors."
msgstr ""
"Ce nœud [Control] est utilisé dans la barre d'outils de l'inspecteur de "
"l'éditeur pour permettre l'édition des propriétés de type [Resource]. Il "
"offre des options pour créer, charger, enregistrer et convertir des "
"ressources. Peut être utilisé avec [EditorInspectorPlugin] pour recréer le "
"même comportement.\n"
"[b]Note :[/b] Ce [Control] n'inclut aucun éditeur de la ressource, car "
"l'édition est contrôlée par l'inspecteur lui-même ou les sous-inspecteurs."

msgid ""
"Returns a list of all allowed types and subtypes corresponding to the [member "
"base_type]. If the [member base_type] is empty, an empty list is returned."
msgstr ""
"Renvoie une liste de tous les types et sous-types autorisés correspondant au "
"[member base_type]. Si le [member base_type] est vide, une liste vide est "
"renvoyée."

msgid ""
"Sets the toggle mode state for the main button. Works only if [member "
"toggle_mode] is set to [code]true[/code]."
msgstr ""
"Définit l'état du mode de basculement pour le bouton principal. Fonctionne "
"uniquement si [member toggle_mode] est défini à [code]true[/code]."

msgid ""
"The base type of allowed resource types. Can be a comma-separated list of "
"several options."
msgstr ""
"Le type de base des types de ressources autorisées. Ça peut être une liste de "
"plusieurs options séparées par des virgules."

msgid "If [code]true[/code], the value can be selected and edited."
msgstr "Si [code]true[/code], la valeur peut être sélectionnée et modifiée."

msgid "The edited resource value."
msgstr "La valeur modifiée de la ressource."

msgid ""
"If [code]true[/code], the main button with the resource preview works in the "
"toggle mode. Use [method set_toggle_pressed] to manually set the state."
msgstr ""
"Si [code]true[/code], le bouton principal avec la prévisualisation des "
"ressources fonctionne avec le mode de basculement. Utilisez [method "
"set_toggle_pressed] pour définir manuellement cet état."

msgid "Emitted when the value of the edited resource was changed."
msgstr "Émis quand le valeur d'une ressource modifiée a été changée."

msgid "Create an own, custom preview generator."
msgstr "Créez un générateur d’aperçu personnalisé."

msgid ""
"Check if the resource changed, if so, it will be invalidated and the "
"corresponding signal emitted."
msgstr ""
"Vérifiez si la ressource a changé, si oui, elle sera invalidée et le signal "
"correspondant émis."

msgid "Removes a custom preview generator."
msgstr "Supprime un générateur d’aperçu personnalisé."

msgid ""
"Emitted if a preview was invalidated (changed). [param path] corresponds to "
"the path of the preview."
msgstr ""
"Émis si un aperçu a été invalidé (c'est-à-dire changé). [param path] "
"correspond au chemin de l'aperçu."

msgid "Custom generator of previews."
msgstr "Générateur personnalisé d'aperçus."

msgid ""
"Custom code to generate previews. Check [member EditorSettings.filesystem/"
"file_dialog/thumbnail_size] to find a proper size to generate previews at."
msgstr ""
"Code personnalisé pour générer des aperçus. Verifiez [member "
"EditorSettings.filesystem/file_dialog/thumbnail_size] pour trouver une taille "
"correcte à laquelle générer des aperçus."

msgid "Imports scenes from third-parties' 3D files."
msgstr "Importe des scènes à partir de fichiers 3D de tiers."

msgid "Importer for Blender's [code].blend[/code] scene file format."
msgstr ""
"Importeur pour le format de fichier de scène [code].blend[/code] de Blender."

msgid ""
"Imports Blender scenes in the [code].blend[/code] file format through the "
"glTF 2.0 3D import pipeline. This importer requires Blender to be installed "
"by the user, so that it can be used to export the scene as glTF 2.0.\n"
"The location of the Blender binary is set via the [member "
"EditorSettings.filesystem/import/blender/blender_path] setting.\n"
"This importer is only used if [member ProjectSettings.filesystem/import/"
"blender/enabled] is enabled, otherwise [code].blend[/code] files present in "
"the project folder are not imported.\n"
"Blend import requires Blender 3.0.\n"
"Internally, the EditorSceneFormatImporterBlend uses the Blender glTF \"Use "
"Original\" mode to reference external textures."
msgstr ""
"Importe des scènes Blender dans le format de fichier [code].blend[/code] via "
"la pipeline d'importation 3D glTF 2.0. Cet importeur exige que Blender soit "
"installé par l'utilisateur, afin qu'il puisse être utilisé pour exporter la "
"scène en tant que glTF 2.0.\n"
"L'emplacement du binaire Blender est défini via le paramètre [member "
"EditorSettings.filesystem/import/blender/blender_path].\n"
"Cet importateur n'est utilisé que si [member ProjectSettings.filesystem/"
"import/blender/enabled] est activé, sinon les fichiers [code].blend[/code] "
"présents dans le dossier du projet ne sont pas importés.\n"
"L'importation des .blend nécessite Blender 3.0.\n"
"En interne, EditorSceneFormatImporterBlend utilise le mode \"Conserver les "
"originales\" glTF de Blender pour référencer les textures externes."

msgid "Importer for the [code].fbx[/code] scene file format."
msgstr "Importeur pour le format de fichier de scène [code].fbx[/code]."

msgid ""
"Imports Autodesk FBX 3D scenes by way of converting them to glTF 2.0 using "
"the FBX2glTF command line tool.\n"
"The location of the FBX2glTF binary is set via the [member "
"EditorSettings.filesystem/import/fbx/fbx2gltf_path] editor setting.\n"
"This importer is only used if [member ProjectSettings.filesystem/import/"
"fbx2gltf/enabled] is set to [code]true[/code]."
msgstr ""
"Importe des scènes 3D FBX Autodesk en les convertissant en glTF 2.0 à l'aide "
"de l'outil en ligne de commande FBX2glTF.\n"
"L'emplacement du binaire FBX2glTF est défini via le paramètre [member "
"EditorSettings.filesystem/import/fbx/fbx2gltf_path].\n"
"Cet importateur n'est utilisé que si [member ProjectSettings.filesystem/"
"import/fbx2gltf/enabled] est défini à [code]true[/code]."

msgid "Import FBX files using the ufbx library."
msgstr "Importe des fichiers FBX en utilisant la bibliothèque ufbx."

msgid "Post-processes scenes after import."
msgstr "Post-traite les scènes après l'importation."

msgid ""
"Called after the scene was imported. This method must return the modified "
"version of the scene."
msgstr ""
"Appelé après l'importation de la scène. Cette méthode doit renvoyer la "
"version modifiée de la scène."

msgid ""
"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
"code])."
msgstr ""
"Renvoie le chemin du fichier source qui vient d'être importé (par ex. : "
"[code]res://scene.dae[/code])."

msgid "Base script that can be used to add extension functions to the editor."
msgstr "Script de base qui permet d'étendre les fonctionnalités de l'éditeur."

msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
msgstr ""
"Cette méthode est exécutée par l'éditeur quand [b]Ficher > Exécuter[/b] est "
"utilisé."

msgid ""
"Godot editor's control for selecting the [code]script[/code] property of a "
"[Node]."
msgstr ""
"Le contrôle de l'éditeur Godot pour sélectionner la propriété [code]script[/"
"code] d'un [Node]."

msgid ""
"Similar to [EditorResourcePicker] this [Control] node is used in the editor's "
"Inspector dock, but only to edit the [code]script[/code] property of a "
"[Node]. Default options for creating new resources of all possible subtypes "
"are replaced with dedicated buttons that open the \"Attach Node Script\" "
"dialog. Can be used with [EditorInspectorPlugin] to recreate the same "
"behavior.\n"
"[b]Note:[/b] You must set the [member script_owner] for the custom context "
"menu items to work."
msgstr ""
"Similaire à [EditorResourcePicker], ce nœud [Control] est utilisé dans le "
"dock d'inspecteur de l'éditeur, mais seulement pour modifier la propriété "
"[code]script[/code] d'un [Node]. Les options par défaut pour créer de "
"nouvelles ressources de tous les sous-types possibles sont remplacées par des "
"boutons dédiés qui ouvrent le dialogue \"Attaché un Script\". Peut être "
"utilisé avec [EditorInspectorPlugin] pour recréer le même comportement.\n"
"[b]Note :[/b] Vous devez définir le [member script_owner] pour les éléments "
"de menu contextuel personnalisés fonctionnent."

msgid "The owner [Node] of the script property that holds the edited resource."
msgstr ""
"Le [Node] propriétaire de la propriété Script qui a la ressource modifiée."

msgid "Manages the SceneTree selection in the editor."
msgstr "Gère la sélection du SceneTree depuis l'éditeur."

msgid ""
"This object manages the SceneTree selection in the editor.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_selection]."
msgstr ""
"Cet objet gère la sélection dans le SceneTree dans l'éditeur.\n"
"[b]Note :[/b] Cette classe ne devrait pas être instanciée directement. "
"Accédez plutôt à l'instance unique en utilisant [method "
"EditorInterface.get_selection]."

msgid ""
"Adds a node to the selection.\n"
"[b]Note:[/b] The newly selected node will not be automatically edited in the "
"inspector. If you want to edit a node, use [method EditorInterface.edit_node]."
msgstr ""
"Ajoute un nœud à la sélection.\n"
"[b]Note :[/b] Le nouveau nœud sélectionné ne sera pas automatiquement modifié "
"dans l'inspecteur. Si vous souhaitez modifier un nœud, utilisez [method "
"EditorInterface.edit_node]."

msgid "Clear the selection."
msgstr "Effacer la sélection."

msgid "Use [method get_top_selected_nodes] instead."
msgstr "Utilisez [method get_top_selected_nodes] à la place."

msgid "Removes a node from the selection."
msgstr "Supprime un nœud de la sélection."

msgid "Emitted when the selection changes."
msgstr "Émis lorsque la sélection change."

msgid "Object that holds the project-independent editor settings."
msgstr ""
"L'objet qui contient les préférences de l'éditeur indépendamment des projets."

msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
"- [code]type[/code]: [int] (see [enum Variant.Type])\n"
"- optionally [code]hint[/code]: [int] (see [enum PropertyHint]) and "
"[code]hint_string[/code]: [String]\n"
"[codeblocks]\n"
"[gdscript]\n"
"var settings = EditorInterface.get_editor_settings()\n"
"settings.set(\"category/property_name\", 0)\n"
"\n"
"var property_info = {\n"
"\t\"name\": \"category/property_name\",\n"
"\t\"type\": TYPE_INT,\n"
"\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\"hint_string\": \"one,two,three\"\n"
"}\n"
"\n"
"settings.add_property_info(property_info)\n"
"[/gdscript]\n"
"[csharp]\n"
"var settings = GetEditorInterface().GetEditorSettings();\n"
"settings.Set(\"category/property_name\", 0);\n"
"\n"
"var propertyInfo = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"name\", \"category/propertyName\" },\n"
"\t{ \"type\", Variant.Type.Int },\n"
"\t{ \"hint\", PropertyHint.Enum },\n"
"\t{ \"hint_string\", \"one,two,three\" },\n"
"};\n"
"\n"
"settings.AddPropertyInfo(propertyInfo);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Ajoute une info de propriété personnalisée à une propriété. Le dictionnaire "
"doit contenir :\n"
"- [code]name[/code] : [String] (le nom de la propriété)\n"
"- [code]type[/code] : [int] (voir [enum Variant.Type])\n"
"- en option [code]hint[/code] : [int] (voir [enum PropertyHint]) et "
"[code]hint_string[/code] : [String]\n"
"[codeblocks]\n"
"[gdscript]\n"
"var parametres = EditorInterface.get_editor_settings()\n"
"parametres.set(\"category/property_name\", 0)\n"
"\n"
"var propriete_info = {\n"
"\t\"name\": \"category/property_name\",\n"
"\t\"type\": TYPE_INT,\n"
"\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\"hint_string\": \"un,deux,trois\"\n"
"}\n"
"\n"
"parametres.add_property_info(propriete_info)\n"
"[/gdscript]\n"
"[csharp]\n"
"var parametres = GetEditorInterface().GetEditorSettings();\n"
"parametres.Set(\"category/property_name\", 0);\n"
"\n"
"var proprieteInfo = new Godot.Collections.Dictionary\n"
"{\n"
"\t{\"name\", \"category/propertyName\"},\n"
"\t{\"type\", Variant.Type.Int},\n"
"\t{\"hint\", PropertyHint.Enum},\n"
"\t{\"hint_string\", \"un,deux,trois\"}\n"
"};\n"
"\n"
"parametres.AddPropertyInfo(proprieteInfo);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the list of favorite files and directories for this project."
msgstr "Renvoie la liste des fichiers et répertoires favoris pour ce projet."

msgid ""
"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
"Renvoie la liste des dossiers récemment visités dans le dialogue des fichiers "
"de ce projet."

msgid "Sets the list of favorite files and directories for this project."
msgstr "Définit la liste des fichiers et dossiers favoris pour ce projet."

msgid ""
"Sets project-specific metadata with the [param section], [param key] and "
"[param data] specified. This metadata is stored outside the project folder "
"and therefore won't be checked into version control. See also [method "
"get_project_metadata]."
msgstr ""
"Définit des métadonnées spécifiques au projet dans la section [param "
"section], la clé [param key] et les données [param data] spécifiées. Ces "
"métadonnées sont enregistrées à l'extérieur du dossier du projet, et ne "
"seront donc pas dans le système de contrôle de version. Voir aussi [method "
"get_project_metadata]."

msgid ""
"Sets the list of recently visited folders in the file dialog for this project."
msgstr ""
"Définit une liste des dossiers récemment visités dans le dialogue de fichiers "
"de ce projet."

msgid ""
"The 3D editor gizmo color used for [CPUParticles3D] and [GPUParticles3D] "
"nodes."
msgstr ""
"La couleur du manipulateur de l'éditeur 3D utilisée pour les nœuds "
"[CPUParticles3D] et [GPUParticles3D]."

msgid "The color of a port/connection of Vector2 type."
msgstr "La couleur d'un port/connection de type Vector2."

msgid "The color of a port/connection of Vector3 type."
msgstr "La couleur d'un port/connection de type Vector3."

msgid "The color of a port/connection of Vector4 type."
msgstr "La couleur d'un port/connection de type Vector4."

msgid ""
"Editor accessibility support mode:\n"
"- [b]Auto[/b] ([code]0[/code]): Accessibility support is enabled, but updates "
"to the accessibility information are processed only if an assistive app (such "
"as a screen reader or a Braille display) is active (default).\n"
"- [b]Always Active[/b] ([code]1[/code]): Accessibility support is enabled, "
"and updates to the accessibility information are always processed, regardless "
"of the status of assistive apps.\n"
"- [b]Disabled[/b] ([code]2[/code]): Accessibility support is fully disabled.\n"
"[b]Note:[/b] Accessibility debugging tools, such as Accessibility Insights "
"for Windows, Accessibility Inspector (macOS), or AT-SPI Browser (Linux/BSD) "
"do not count as assistive apps. To test your project with these tools, use "
"[b]Always Active[/b]."
msgstr ""
"Mode de support d'accessibilité de l'éditeur :\n"
"- [b]Auto[/b] ([code]0[/code]) : Le support d'accessibilité est activé, mais "
"les mises à jour d'information d'accessibilité ne sont traitées que si une "
"application d'assistance (p. ex. lecteur d'écran ou affichage en braille) est "
"active (par défaut).\n"
"- [b]Toujours actif[/b] ([code]1[/code]) : Le support d'accessibilité est "
"activé et les mises à jour d'information d'accessibilité sont traitées "
"indépendamment du statut des applications d'assistance.\n"
"- [b]Désactivé[/b] ([code]2[/code]) : Le support d'accessibilité est "
"entièrement désactivé.\n"
"[b]Note :[/b] Les outils de débogage d'accessibilité, tels que Accessibility "
"Insights pour Windows, l'inspecteur d'accessibilité (macOS) ou le navigateur "
"AT-SPI (Linux/BDS) ne comptent pas comme des applications d'assistance. Pour "
"tester votre application avec ces outils, utilisez [code]Toujours actif[/"
"code]."

msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
"Si [code]true[/code], garde l'écran allumé (même en cas d'inactivité), de "
"sorte que le économiseur d'écran ne prend pas le dessus. Fonctionne sur les "
"plateformes de bureau et mobiles."

msgid ""
"If [code]false[/code], the editor will save all scenes when confirming the "
"[b]Save[/b] action when quitting the editor or quitting to the project list. "
"If [code]true[/code], the editor will ask to save each scene individually."
msgstr ""
"Si [code]false[/code], l'éditeur enregistrera toutes les scènes lors de la "
"confirmation de l'action [b]Sauvegarder[/b] lorsqu'on quitte l'éditeur ou "
"quitte vers la liste des projets. Si [code]true[/code], l'éditeur demandera à "
"sauvegarder chaque scène individuellement."

msgid ""
"If [code]true[/code], scenes and scripts are saved when the editor loses "
"focus. Depending on the work flow, this behavior can be less intrusive than "
"[member text_editor/behavior/files/autosave_interval_secs] or remembering to "
"save manually."
msgstr ""
"Si [code]true[/code], les scènes et les scripts sont sauvegardés lorsque "
"l'éditeur perd le focus. Selon le workflow, ce comportement peut être moins "
"intrusif que [member text_editor/behavior/files/autosave_interval_secs] ou de "
"se souvenir d'enregistrer manuellement."

msgid "The editor theme preset to use."
msgstr "Le préreglage de thème d'éditeur à utiliser."

msgid ""
"If [code]true[/code], enable TLSv1.3 negotiation.\n"
"[b]Note:[/b] Only supported when using Mbed TLS 3.0 or later (Linux "
"distribution packages may be compiled against older system Mbed TLS "
"packages), otherwise the maximum supported TLS version is always TLSv1.2."
msgstr ""
"Si [code]true[/code], active la négociation TLSv1.3.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de Mbed TLS 3.0 ou "
"ultérieure (les paquets de distribution Linux peuvent être compilés contre "
"les paquets Mbed TLS anciens), sinon la version TLS maximale supportée est "
"toujours TLSv1.2."

msgid "If [code]true[/code], draws tab characters as chevrons."
msgstr ""
"Si [code]true[/code], dessine les caractères de tabulation comme des chevrons."

msgid "The script editor's caret color."
msgstr "La couleur du curseur de l'éditeur de script."

msgid "Emitted after any editor setting has changed."
msgstr "Émis après qu'une préférence de l'éditeur a changé."

msgid ""
"Emitted after any editor setting has changed. It's used by various editor "
"plugins to update their visuals on theme changes or logic on configuration "
"changes."
msgstr ""
"Émis après que n'importe quel réglage de l'édiateur a changé. Il est utilisé "
"par divers greffons de l'éditeurs pour mettre à jour leur affichage lors de "
"changements de thème ou de configuration."

msgid "Godot editor's control for editing numeric values."
msgstr "Le contrôle d'édition des valeurs numériques de l'éditeur Godot."

msgid "Single texture representing both the up and down buttons."
msgstr "Texture unique représentant à la fois les boutons haut et bas."

msgid ""
"Single texture representing both the up and down buttons, when the control is "
"readonly or disabled."
msgstr ""
"Texture unique représentant à la fois les boutons haut et bas, lorsque le "
"contrôle est en lecture seule ou désactivé."

msgid "Base class for [SyntaxHighlighter] used by the [ScriptEditor]."
msgstr "Classe de base pour [SyntaxHighlighter] utilisé par le [ScriptEditor]."

msgid ""
"Register a reference for \"do\" that will be erased if the \"do\" history is "
"lost. This is useful mostly for new nodes created for the \"do\" call. Do not "
"use for resources."
msgstr ""
"Enregistre une référence pour \"faire\" qui sera effacée si l'historique de "
"\"faire\" est perdue. Ceci est utile surtout pour les nouveaux nœuds créés "
"avec l'appel \"faire\". Ne pas l'utiliser pour les ressources."

msgid ""
"Register a reference for \"undo\" that will be erased if the \"undo\" history "
"is lost. This is useful mostly for nodes removed with the \"do\" call (not "
"the \"undo\" call!)."
msgstr ""
"Enregistre une référence pour \"annuler\" qui sera effacée si l'historique "
"\"annuler\" est perdue. Ceci est utile surtout pour les nœuds retirés avec "
"l'appel \"faire\" (et non pas l'appel \"annuler\" !)."

msgid ""
"Emitted when the version of any history has changed as a result of undo or "
"redo call."
msgstr ""
"Émis quand la version de n'importe quel historique a changé à cause d'un "
"appel d'annulation ou de retour en arrière."

msgid "Version control systems"
msgstr "Systèmes de contrôle de version"

msgid "Gets the current branch name defined in the VCS."
msgstr ""
"Obtient le nom de branche actuel défini dans le système de contrôle de "
"version."

msgid ""
"Returns an [Array] of [Dictionary] items (see [method create_status_file]), "
"each containing the status data of every modified file in the project folder."
msgstr ""
"Renvoie un [Array] d'éléments [Dictionary] (voir [method "
"create_status_file]), contenant chacun les données d'état de chaque fichier "
"modifié dans le dossier du projet."

msgid ""
"Returns an [Array] of [String]s, each containing the name of a remote "
"configured in the VCS."
msgstr ""
"Renvoie un [Array] de [String], chacune contient le nom d'un dépôt distant "
"configuré dans le VCS."

msgid "Returns the name of the underlying VCS provider."
msgstr "Renvoie le nom du fournisseur VCS utilisé."

msgid "Pulls changes from the remote. This can give rise to merge conflicts."
msgstr ""
"Tire les modifications depuis le dépôt distant. Cela peut provoquer des "
"conflits de fusion."

msgid "Remove a remote from the local VCS."
msgstr "Supprimer un dépôt distant du VCS local."

msgid "A new file has been added."
msgstr "Un nouveau fichier a été ajouté."

msgid "An earlier added file has been modified."
msgstr "Un fichier précédemment ajouté a été modifié."

msgid "An earlier added file has been renamed."
msgstr "Un fichier précédemment ajouté a été renommé."

msgid "An earlier added file has been deleted."
msgstr "Un fichier précédemment ajouté a été supprimé."

msgid "An earlier added file has been typechanged."
msgstr "Un fichier précédemment ajouté a changé de type."

msgid "A file is left unmerged."
msgstr "Le fichier a été laissé non-fusionné."

msgid "Holds a reference to an [Object]'s instance ID."
msgstr "Contient une référence à l’ID d’instance d’un [Object]."

msgid ""
"A wrapper class for an [url=http://enet.bespin.org/group__host.html]ENetHost[/"
"url]."
msgstr ""
"Une classe wrapper pour un [url=http://enet.bespin.org/"
"group__host.html]ENetHost[/url]."

msgid ""
"No compression. This uses the most bandwidth, but has the upside of requiring "
"the fewest CPU resources. This option may also be used to make network "
"debugging using tools like Wireshark easier."
msgstr ""
"Aucune compression. Cela utilise le plus de bande passante, mais moins de "
"ressource du CPU. Cette option peut également être utilisée pour faciliter le "
"débogage du réseau en utilisant des outils comme Wireshark."

msgid ""
"ENet's built-in range encoding. Works well on small packets, but is not the "
"most efficient algorithm on packets larger than 4 KB."
msgstr ""
"L'encodage intégré d'ENet. Fonctionne bien sur les petits paquets, mais n'est "
"pas l'algorithme le plus efficace pour les paquets de plus de 4 KB."

msgid ""
"A connection request initiated by enet_host_connect has completed. The array "
"will contain the peer which successfully connected."
msgstr ""
"Une demande de connexion initiée par enet_host_connect a été complétée. Le "
"tableau contiendra le pair qui a été connecté avec succès."

msgid "Total data sent."
msgstr "Total de données envoyées."

msgid "Total UDP packets sent."
msgstr "Total de paquets UDP envoyés."

msgid "Total data received."
msgstr "Total de donnés reçues."

msgid "Total UDP packets received."
msgstr "Total de paquets UDP reçus."

msgid "High-level multiplayer"
msgstr "API multijoueur de haut niveau"

msgid ""
"Create client that connects to a server at [param address] using specified "
"[param port]. The given address needs to be either a fully qualified domain "
"name (e.g. [code]\"www.example.com\"[/code]) or an IP address in IPv4 or IPv6 "
"format (e.g. [code]\"192.168.1.1\"[/code]). The [param port] is the port the "
"server is listening on. The [param channel_count] parameter can be used to "
"specify the number of ENet channels allocated for the connection. The [param "
"in_bandwidth] and [param out_bandwidth] parameters can be used to limit the "
"incoming and outgoing bandwidth to the given number of bytes per second. The "
"default of 0 means unlimited bandwidth. Note that ENet will strategically "
"drop packets on specific sides of a connection between peers to ensure the "
"peer's bandwidth is not overwhelmed. The bandwidth parameters also determine "
"the window size of a connection which limits the amount of reliable packets "
"that may be in transit at any given time. Returns [constant OK] if a client "
"was created, [constant ERR_ALREADY_IN_USE] if this ENetMultiplayerPeer "
"instance already has an open connection (in which case you need to call "
"[method MultiplayerPeer.close] first) or [constant ERR_CANT_CREATE] if the "
"client could not be created. If [param local_port] is specified, the client "
"will also listen to the given port; this is useful for some NAT traversal "
"techniques."
msgstr ""
"Créer un client qui se connecte à un serveur à l'[param address] en utilisant "
"le [param port] spécifié. L'adresse donnée doit être soit un nom de domaine "
"entièrement qualifié (par ex. [code]\"www.example.com\"[/code]) soit une "
"adresse IP en format IPv4 ou IPv6 (par ex. [code]\"192.168.1.1\"[/code]). Le "
"[param port] est le port que le serveur écoute. Le paramètre [param "
"channel_count] peut être utilisé pour spécifier le nombre de canaux ENet "
"alloués à la connexion. Les paramètres [param in_bandwidth] et [param "
"out_bandwidth] peuvent être utilisés pour limiter la bande passante entrante "
"et sortante au nombre donné d'octets par seconde. Le défaut de 0 signifie "
"bande passante illimitée. Notez que ENet perdra stratégiquement des paquets "
"sur des côtés spécifiques d'une connexion entre les pairs pour s'assurer que "
"la bande passante du pair n'est pas dépassée. Les paramètres de bande "
"passante déterminent également la taille de la fenêtre d'une connexion qui "
"limite la quantité de paquets fiables qui peuvent être en transit à tout "
"moment donné. Renvoie [constant OK] si un client a été créé, [constant "
"ERR_ALREADY_IN_USE] si cette instance ENetMultiplayerPeer a déjà une "
"connexion ouverte (dans quel cas vous devez appeler [method "
"MultiplayerPeer.close] d'abord) ou [constant ERR_CANT_CREATE] si le client ne "
"peut pas être créé. Si [param local_port] est spécifié, le client écoutera "
"également le port donné, cela est utile pour certaines techniques de "
"traversée NAT."

msgid ""
"The IP used when creating a server. This is set to the wildcard [code]\"*\"[/"
"code] by default, which binds to all available interfaces. The given IP needs "
"to be in IPv4 or IPv6 address format, for example: [code]\"192.168.1.1\"[/"
"code]."
msgstr ""
"L'adresse IP utilisée lors de la création d'un serveur. Ceci est défini le "
"joker [code]\"*\"[/code] par défaut, qui se connecte à toutes les interfaces "
"disponibles. L'adresse donnée doit être au format IPv4 ou IPv6, par exemple : "
"[code]\"192.168.1.1\"[/code]."

msgid ""
"A wrapper class for an [url=http://enet.bespin.org/group__peer.html]ENetPeer[/"
"url]."
msgstr ""
"Une classe wrapper pour un [url=http://enet.bespin.org/"
"group__peer.html]ENetPeer[/url]."

msgid "Returns the current peer state."
msgstr "Renvoie l'état actuel du pair."

msgid "Returns the requested [param statistic] for this peer."
msgstr "Renvoie la statistique [param statistic] demandée pour ce pair."

msgid ""
"Returns [code]true[/code] if the peer is currently active (i.e. the "
"associated [ENetConnection] is still valid)."
msgstr ""
"Renvoie [code]true[/code] si le pair est actuellement actif (c.-à-d. que le "
"[ENetConnection] associé est toujours valide)."

msgid "The peer is disconnected."
msgstr "Le pair est déconnecté."

msgid "The peer is currently attempting to connect."
msgstr "Le pair est en train d'essayer de se connecter."

msgid "The peer is currently connecting."
msgstr "Le pair est actuellement en train de se connecter."

msgid ""
"The peer is expected to disconnect after it has no more outgoing packets to "
"send."
msgstr ""
"Le pair devrait se déconnecter après qu'il n'ait plus de paquets sortants à "
"envoyer."

msgid "The peer is currently disconnecting."
msgstr "Le pair est en cours de déconnexion."

msgid "The peer has acknowledged the disconnection request."
msgstr "Le pair a reconnu la demande de déconnexion."

msgid ""
"The peer has lost connection, but is not considered truly disconnected (as "
"the peer didn't acknowledge the disconnection request)."
msgstr ""
"Le pair a perdu la connexion, mais n'est pas considéré comme vraiment "
"déconnecté (car le pair n'a pas reconnu la demande de déconnexion)."

msgid "Packet loss variance."
msgstr "Variance de paquets perdus."

msgid "Provides access to engine properties."
msgstr "Fournit un accès aux propriétés du moteur."

msgid ""
"The [Engine] singleton allows you to query and modify the project's run-time "
"parameters, such as frames per second, time scale, and others. It also stores "
"information about the current build of Godot, such as the current version."
msgstr ""
"Le singleton [Engine] vous permet d'interroger et de modifier les paramètres "
"d'exécution du projet, comme les trames par seconde, l'échelle de temps et "
"d'autres. Il stocke également des informations sur la compilation actuelle de "
"Godot, comme la version actuelle."

msgid ""
"Returns a [Dictionary] of categorized donor names. Each entry is an [Array] "
"of strings:\n"
"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
"[code]silver_sponsors[/code], [code]bronze_sponsors[/code], "
"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
"code], [code]bronze_donors[/code]}"
msgstr ""
"Renvoie un [Dictionary] des noms catégorisés de donneurs. Chaque entrée est "
"un [Array] de chaînes :\n"
"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
"[code]silver_sponsors[/code], [code]bronze_sponsors[/code], "
"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
"code], [code]bronze_donors[/code]}"

msgid ""
"Returns the average frames rendered every second (FPS), also known as the "
"framerate."
msgstr ""
"Renvoie le nombre moyen de trames rendues chaque seconde (FPS), également "
"connu comme le framerate."

msgid "Returns the full Godot license text."
msgstr "Renvoie le texte complet de la licence Godot."

msgid ""
"Returns the total number of frames passed since the engine started. This "
"number is increased every [b]physics frame[/b]. See also [method "
"get_process_frames].\n"
"This method can be used to run expensive logic less often without relying on "
"a [Timer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _physics_process(_delta):\n"
"\tif Engine.get_physics_frames() % 2 == 0:\n"
"\t\tpass # Run expensive logic only once every 2 physics frames here.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _PhysicsProcess(double delta)\n"
"{\n"
"\tbase._PhysicsProcess(delta);\n"
"\n"
"\tif (Engine.GetPhysicsFrames() % 2 == 0)\n"
"\t{\n"
"\t\t// Run expensive logic only once every 2 physics frames here.\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le nombre de trames écoulées depuis le démarrage du moteur. Ce nombre "
"est incrémenté à chaque nouvelle [b]trame physique[/b]. Voir aussi [method "
"get_process_frames].\n"
"Cette méthode peut être utilisée pour lancer des logiques coûteuses moins "
"souvent sans utiliser un [Timer] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _physics_process(_delta):\n"
"\tif Engine.get_physics_frames() % 2 == 0:\n"
"\t\tpass # Exécutez la logique coûteuse qu'une trame physique sur 2 ici.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _PhysicsProcess(double delta)\n"
"{\n"
"\tbase._PhysicsProcess(delta);\n"
"\n"
"\tif (Engine.GetPhysicsFrames() % 2 == 0)\n"
"\t{\n"
"\t\t// Exécutez la logique coûteuse qu'une trame physique sur 2 ici.\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the fraction through the current physics tick we are at the time of "
"rendering the frame. This can be used to implement fixed timestep "
"interpolation."
msgstr ""
"Renvoie la fraction du tic de physique actuel auquel nous sommes au moment de "
"rendre la trame. Cela peut être utilisé pour implémenter une interpolation à "
"différentiel de temps fixe."

msgid ""
"Returns the total number of frames passed since the engine started. This "
"number is increased every [b]process frame[/b], regardless of whether the "
"render loop is enabled. See also [method get_frames_drawn] and [method "
"get_physics_frames].\n"
"This method can be used to run expensive logic less often without relying on "
"a [Timer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(_delta):\n"
"\tif Engine.get_process_frames() % 5 == 0:\n"
"\t\tpass # Run expensive logic only once every 5 process (render) frames "
"here.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tbase._Process(delta);\n"
"\n"
"\tif (Engine.GetProcessFrames() % 5 == 0)\n"
"\t{\n"
"\t\t// Run expensive logic only once every 5 process (render) frames here.\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le nombre total de trames passées depuis le démarrage du moteur. Ce "
"nombre est augmenté à chaque [b]trame de traitement[/b], peu importe si la "
"boucle de rendu est activée. Voir aussi [method get_frames_drawn] et [method "
"get_physics_frames].\n"
"Cette méthode peut être utilisée pour exécuter une logique coûteuse moins "
"souvent sans compter sur un [Timer] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(_delta):\n"
"\tif Engine.get_process_frames() % 5 == 0:\n"
"\t\tpass # Exécutez une logique coûteuse seulement une fois tous les 5 cadres "
"de traitement (rendu) ici.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tbase._Process(delta);\n"
"\n"
"\tif (Engine.GetProcessFrames() % 5 == 0)\n"
"\t{\n"
"\t\t// Exécutez une logique coûteuse seulement une fois tous les 5 cadres de "
"traitement (rendu) ici.\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns an instance of a [ScriptLanguage] with the given [param index]."
msgstr ""
"Renvoie une instance d'un [ScriptLanguage] avec l'index [param index] donné."

msgid ""
"Returns the number of available script languages. Use with [method "
"get_script_language]."
msgstr ""
"Renvoie le nombre de langages de script disponibles. À utiliser avec [method "
"get_script_language]."

msgid ""
"Returns a list of names of all available global singletons. See also [method "
"get_singleton]."
msgstr ""
"Renvoie une liste des noms de tous les singletons globaux disponibles. Voir "
"aussi [method get_singleton]."

msgid ""
"Returns the current engine version information as a [Dictionary] containing "
"the following entries:\n"
"- [code]major[/code] - Major version number as an int;\n"
"- [code]minor[/code] - Minor version number as an int;\n"
"- [code]patch[/code] - Patch version number as an int;\n"
"- [code]hex[/code] - Full version encoded as a hexadecimal int with one byte "
"(2 hex digits) per number (see example below);\n"
"- [code]status[/code] - Status (such as \"beta\", \"rc1\", \"rc2\", "
"\"stable\", etc.) as a String;\n"
"- [code]build[/code] - Build name (e.g. \"custom_build\") as a String;\n"
"- [code]hash[/code] - Full Git commit hash as a String;\n"
"- [code]timestamp[/code] - Holds the Git commit date UNIX timestamp in "
"seconds as an int, or [code]0[/code] if unavailable;\n"
"- [code]string[/code] - [code]major[/code], [code]minor[/code], [code]patch[/"
"code], [code]status[/code], and [code]build[/code] in a single String.\n"
"The [code]hex[/code] value is encoded as follows, from left to right: one "
"byte for the major, one byte for the minor, one byte for the patch version. "
"For example, \"3.1.12\" would be [code]0x03010C[/code].\n"
"[b]Note:[/b] The [code]hex[/code] value is still an [int] internally, and "
"printing it will give you its decimal representation, which is not "
"particularly meaningful. Use hexadecimal literals for quick version "
"comparisons from code:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if Engine.get_version_info().hex >= 0x040100:\n"
"\tpass # Do things specific to version 4.1 or later.\n"
"else:\n"
"\tpass # Do things specific to versions before 4.1.\n"
"[/gdscript]\n"
"[csharp]\n"
"if ((int)Engine.GetVersionInfo()[\"hex\"] >= 0x040100)\n"
"{\n"
"\t// Do things specific to version 4.1 or later.\n"
"}\n"
"else\n"
"{\n"
"\t// Do things specific to versions before 4.1.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie les informations sur la version actuelle du moteur dans un "
"[Dictionary] contenant les entrées suivantes :\n"
"- [code]major[/code] - Le numéro de version majeur en tant qu'entier [int]\n"
"- [code]minor[/code] - Le numéro de version mineur en tant qu'entier [int]\n"
"- [code]patch[/code] - Le numéro de version de correctif en tant qu'entier "
"[int]\n"
"- [code]hex[/code] - Le numéro complet de version sous forme d'entier au "
"format hexadécimal avec un octet (2 caractères) par numéro (voir l'exemple en-"
"dessous)\n"
"- [code]status[/code] - Le status (ex. : \"beta\", \"rc1\", \"rc2\", "
"\"stable\", etc...) en chaîne de caractères [String]\n"
"- [code]build[/code] - Le nom de la version (ex. : \"custom_build\") en "
"chaîne de caractères [String]\n"
"- [code]hash[/code] - Le hachage du commit Git en tant que chaîne de "
"caractère [String]\n"
"- [code]timestamp[/code] - Contient le timestamp UNIX de la date du commit "
"Git en secondes en tant qu'entier [int], ou [code]0[/code] si indisponible\n"
"- [code]string[/code] - [code]major[/code], [code]minor[/code], [code]patch[/"
"code], [code]status[/code] et [code]build[/code] dans un seule chaîne "
"[String].\n"
"La valeur [code]hex[/code] est codée comme suit, de gauche à droite : un "
"octet pour le numéro majeur, un octet pour le numéro mineur, un octet pour le "
"numéro de correctif. Par exemple, la \"3.1.12\" sera la valeur "
"[code]0x03010C[/code].\n"
"[b]Note :[/b] La valeur [code]hex[/code] est toujours un [int] en interne, et "
"l'afficher donnera sa représentation décimale qui ne sera pas "
"particulièrement utile. Utilisez une représentation hexadécimale permet de "
"facilement comparer les versions dans le code :\n"
"[codeblocks]\n"
"[gdscript]\n"
"if Engine.get_version_info().hex >= 0x040100:\n"
"\tpass # Faire des choses spécifiques à la version 4.1 et plus.\n"
"else:\n"
"\tpass # Faire des choses spécifiques aux versions avant la 4.1.\n"
"[/gdscript]\n"
"[csharp]\n"
"if ((int)Engine.GetVersionInfo()[\"hex\"] >= 0x040100)\n"
"{\n"
"\t// Faire des choses spécifiques à la version 4.1 et plus.\n"
"}\n"
"else\n"
"{\n"
"\t// Faire des choses spécifiques aux versions avant la 4.1.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the path to the [MovieWriter]'s output file, or an empty string if "
"the engine wasn't started in Movie Maker mode. The default path can be "
"changed in [member ProjectSettings.editor/movie_writer/movie_file]."
msgstr ""
"Renvoie le chemin vers le fichier de sortie [MovieWriter], ou une chaîne vide "
"si le moteur n'a pas été lancé en mode Création de film. Le chemin par défaut "
"peut être modifié dans [member ProjectSettings.editor/movie_writer/"
"movie_file]."

msgid ""
"Registers the given [Object] [param instance] as a singleton, available "
"globally under [param name]. Useful for plugins."
msgstr ""
"Enregistre l'[param instance] d'[Object] donnée comme un singleton, "
"disponible globalement sous le nom [param name]. Utile pour les plugins."

msgid ""
"Removes the singleton registered under [param name]. The singleton object is "
"[i]not[/i] freed. Only works with user-defined singletons registered with "
"[method register_singleton]."
msgstr ""
"Retire le singleton enregistré sous le nom [param name]. L'objet singleton "
"n'est [i]pas[/i] libéré. Fonctionne seulement avec des singletons définis par "
"l'utilisateur et enregistrés avec [method register_singleton]."

msgid "Exposes the internal debugger."
msgstr "Expose le débogueur interne."

msgid ""
"[EngineDebugger] handles the communication between the editor and the running "
"game. It is active in the running game. Messages can be sent/received through "
"it. It also manages the profilers."
msgstr ""
"[EngineDebugger] gère la communication entre l'éditeur et le jeu en cours "
"d'exécution. Il est actif dans le jeu en cours d'exécution. Des messages "
"peuvent être envoyés/reçus avec. Il gère également les profileurs."

msgid "Clears all breakpoints."
msgstr "Efface tous les points d'arrêt."

msgid "Sends a message with given [param message] and [param data] array."
msgstr ""
"Envoie un message avec le [param message] et le tableau [param data] donnés."

msgid ""
"Resource for environment nodes (like [WorldEnvironment]) that define multiple "
"rendering options."
msgstr ""
"Ressource pour les nœuds d’environnement (comme [WorldEnvironment]) qui "
"définissent plusieurs options de rendu."

msgid ""
"Resource for environment nodes (like [WorldEnvironment]) that define multiple "
"environment operations (such as background [Sky] or [Color], ambient light, "
"fog, depth-of-field...). These parameters affect the final render of the "
"scene. The order of these operations is:\n"
"- Depth of Field Blur\n"
"- Glow\n"
"- Tonemap (Auto Exposure)\n"
"- Adjustments"
msgstr ""
"Ressources pour les nœuds d'environnement (comme [WorldEnvironment]) qui "
"définissent plusieurs opérations d'environnement (comme le [Sky] ou la "
"[Color] d'arrière-plan, la lumière ambiante, le brouillard, la profondeur de "
"champ...). Ces paramètres affectent le rendu final de la scène. L'ordre de "
"ces opérations est :\n"
"- Flou de profondeur de champ\n"
"- Glow\n"
"- Tonemap (exposition automatique)\n"
"- Ajustements"

msgid "Environment and post-processing"
msgstr "Les environnements et les effets post-rendu"

msgid "High dynamic range lighting"
msgstr "Éclairage HDR"

msgid "3D Material Testers Demo"
msgstr "Démo de test des matériaux 3D"

msgid "Returns the intensity of the glow level [param idx]."
msgstr "Renvoie l'intensité du niveau de glow à l'index [param idx]."

msgid ""
"Sets the intensity of the glow level [param idx]. A value above [code]0.0[/"
"code] enables the level. Each level relies on the previous level. This means "
"that enabling higher glow levels will slow down the glow effect rendering, "
"even if previous levels aren't enabled."
msgstr ""
"Définit l'intensité du niveau de glow à l'index [param idx]. Une valeur "
"supérieure à [code]0.0[/code] active le niveau. Chaque niveau dépend du "
"niveau précédent. Cela signifie qu'activer des niveaux de glow plus élevés "
"ralentira le rendu de l'effet de glow, même si les niveaux précédents ne sont "
"pas activés."

msgid ""
"The global brightness value of the rendered scene. Effective only if [member "
"adjustment_enabled] is [code]true[/code]."
msgstr ""
"La valeur de luminosité globale de la scène rendue. Effectif seulement si "
"[member adjustment_enabled] vaut [code]true[/code]."

msgid ""
"The [Texture2D] or [Texture3D] lookup table (LUT) to use for the built-in "
"post-process color grading. Can use a [GradientTexture1D] for a 1-dimensional "
"LUT, or a [Texture3D] for a more complex LUT. Effective only if [member "
"adjustment_enabled] is [code]true[/code]."
msgstr ""
"La table de recherche de [Texture2D] ou [Texture3D] (\"LookUp Table\") à "
"utiliser pour l'étalonnage des couleurs du post-traitement intégré. Peut "
"utiliser une [GradientTexture1D] pour un LUT 1-dimensionnel, ou une "
"[Texture3D] pour un LUT plus complexe. Effectif seulement si [member "
"adjustment_enabled] vaut [code]true[/code]."

msgid ""
"The global contrast value of the rendered scene (default value is 1). "
"Effective only if [member adjustment_enabled] is [code]true[/code]."
msgstr ""
"La valeur globale du contraste de la scène rendue (la valeur par défaut est "
"1). Effectif seulement si [member adjustment_enabled] vaut [code]true[/code]."

msgid ""
"If [code]true[/code], enables the [code]adjustment_*[/code] properties "
"provided by this resource. If [code]false[/code], modifications to the "
"[code]adjustment_*[/code] properties will have no effect on the rendered "
"scene."
msgstr ""
"Si [code]true[/code], active les propriétés [code]adjustment_*[/code] "
"fournies par cette ressource. Si [code]false[/code], les modifications aux "
"propriétés [code]adjustment_*[/code] n'auront aucun effet sur la scène rendue."

msgid ""
"The global color saturation value of the rendered scene (default value is 1). "
"Effective only if [member adjustment_enabled] is [code]true[/code]."
msgstr ""
"La valeur globale de la saturation des couleurs dans les scènes rendues (la "
"valeur par défaut est 1). Ne fonctionne que si [member adjustment_enabled] "
"vaut [code]true[/code]."

msgid ""
"The ambient light's [Color]. Only effective if [member "
"ambient_light_sky_contribution] is lower than [code]1.0[/code] (exclusive)."
msgstr ""
"La [Color] de la lumière ambiante. Seulement effectif si [member "
"ambient_light_sky_contribution] est inférieur à [code]1.0[/code] (exclusif)."

msgid ""
"The ambient light's energy. The higher the value, the stronger the light. "
"Only effective if [member ambient_light_sky_contribution] is lower than "
"[code]1.0[/code] (exclusive)."
msgstr ""
"L'énergie de la lumière ambiante. Plus la valeur est élevée, plus la lumière "
"est forte. Seulement efficace si [member ambient_light_sky_contribution] est "
"inférieur à [code]1.0[/code] (exclusif)."

msgid ""
"Defines the amount of light that the sky brings on the scene. A value of "
"[code]0.0[/code] means that the sky's light emission has no effect on the "
"scene illumination, thus all ambient illumination is provided by the ambient "
"light. On the contrary, a value of [code]1.0[/code] means that [i]all[/i] the "
"light that affects the scene is provided by the sky, thus the ambient light "
"parameter has no effect on the scene.\n"
"[b]Note:[/b] [member ambient_light_sky_contribution] is internally clamped "
"between [code]0.0[/code] and [code]1.0[/code] (inclusive)."
msgstr ""
"Définit la quantité de lumière que le ciel apporte à la scène. Une valeur de "
"[code]0.0[/code] signifie que l'émission de lumière du ciel n'a aucun effet "
"sur l'éclairage de la scène, de sorte que tout l'éclairage ambiant est fourni "
"par la lumière ambiante. Au contraire, une valeur de [code]1.0[/code] "
"signifie que [i]toute[/i] la lumière qui affecte la scène est fournie par le "
"ciel, donc le paramètre de lumière ambiante n'a aucun effet sur la scène.\n"
"[b]Note :[/b] [member ambient_light_sky_contribution] est borné en interne "
"entre [code]0.0[/code] et [code]1.0[/code] (inclusifs)."

msgid ""
"The ambient light source to use for rendering materials and global "
"illumination."
msgstr ""
"La source de lumière ambiante à utiliser pour le rendu des matériaux et "
"l'illumination globale."

msgid "The ID of the camera feed to show in the background."
msgstr "L'identifiant du flux de la caméra à afficher en arrière-plan."

msgid ""
"The maximum layer ID to display. Only effective when using the [constant "
"BG_CANVAS] background mode."
msgstr ""
"L'ID de couche maximale à afficher. Seulement effectif lors de l'utilisation "
"du mode d'arrière-plan [constant BG_CANVAS]."

msgid ""
"The [Color] displayed for clear areas of the scene. Only effective when using "
"the [constant BG_COLOR] background mode."
msgstr ""
"La [Color] affichée pour les zones vides de la scène. Seulement effectif lors "
"de l'utilisation du mode d'arrière-plan [constant BG_COLOR]."

msgid ""
"Multiplier for background energy. Increase to make background brighter, "
"decrease to make background dimmer."
msgstr ""
"Multiplicateur pour l'énergie de l'arrière-plan. Augmentez pour rendre le "
"fond plus clair, diminuer pour rendre le fond plus sombre."

msgid ""
"Luminance of background measured in nits (candela per square meter). Only "
"used when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled. The default value is roughly equivalent "
"to the sky at midday."
msgstr ""
"Luminance de l'arrière-plan mesurée en nits (candela par mètre carré). "
"Seulement utilisé lorsque [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] est activé. La valeur par défaut "
"est à peu près équivalente au ciel à midi."

msgid "The background mode."
msgstr "Le mode d'arrière-plan."

msgid ""
"If set above [code]0.0[/code] (exclusive), blends between the fog's color and "
"the color of the background [Sky], as read from the radiance cubemap. This "
"has a small performance cost when set above [code]0.0[/code]. Must have "
"[member background_mode] set to [constant BG_SKY].\n"
"This is useful to simulate [url=https://en.wikipedia.org/wiki/"
"Aerial_perspective]aerial perspective[/url] in large scenes with low density "
"fog. However, it is not very useful for high-density fog, as the sky will "
"shine through. When set to [code]1.0[/code], the fog color comes completely "
"from the [Sky]. If set to [code]0.0[/code], aerial perspective is disabled.\n"
"Notice that this does not sample the [Sky] directly, but rather the radiance "
"cubemap. The cubemap is sampled at a mipmap level depending on the depth of "
"the rendered pixel; the farther away, the higher the resolution of the "
"sampled mipmap. This results in the actual color being a blurred version of "
"the sky, with more blur closer to the camera. The highest mipmap resolution "
"is used at a depth of [member Camera3D.far]."
msgstr ""
"Si défini au dessus de [code]0.0[/code] (exclusif), mélange la couleur du "
"brouillard et la couleur du [Sky] d'arrière-plan, comme lu de cubemap de "
"radiance. Cela a un petit coût de performance lorsque défini au dessus de "
"[code]0.0[/code]. Doit avoir [member background_mode] défini à [constant "
"BG_SKY].\n"
"Ceci est utile pour simuler la [url=https://fr.wikipedia.org/wiki/"
"Perspective_a%C3%A9rienne]perspective aérienne[/url] dans de grandes scènes "
"avec un brouillard à faible densité. Cependant, il n'est pas très utile pour "
"le brouillard de haute densité, car le ciel brillera à travers. Lorsque "
"défini à [code]1.0[/code], la couleur du brouillard provient entièrement du "
"[Sky]. Si défini à [code]0.0[/code], la perspective aérienne est désactivée.\n"
"Notez que cela n'échantillonne pas le [Sky] directement, mais plutôt la "
"cubemap de radiance. La cubemap est échantillonnée à un niveau de mipmap "
"dépendant de la profondeur du pixel rendu, plus il est loin, plus la "
"résolution de la mipmap échantillonnée est élevée. Cela résulte en la couleur "
"réelle étant une version floue de celle du ciel, avec plus de flou lorsque "
"plus proche de la caméra. La plus haute résolution de mipmap est utilisée à "
"une profondeur de [member Camera3D.far]."

msgid ""
"The fog density to be used. This is demonstrated in different ways depending "
"on the [member fog_mode] mode chosen:\n"
"[b]Exponential Fog Mode:[/b] Higher values result in denser fog. The fog "
"rendering is exponential like in real life.\n"
"[b]Depth Fog mode:[/b] The maximum intensity of the deep fog, effect will "
"appear in the distance (relative to the camera). At [code]1.0[/code] the fog "
"will fully obscure the scene, at [code]0.0[/code] the fog will not be visible."
msgstr ""
"La densité de brouillard à utiliser. Ceci est démontré de différentes "
"manières selon le mode [member fog_mode] choisi :\n"
"[b]Mode de brouillard exponentiel :[/b] Des valeurs plus élevées résultent en "
"un brouillard plus dense. Le rendu du brouillard est exponentiel comme dans "
"la vie réelle.\n"
"[b]Mode de brouillard de profondeur :[/b] L'intensité maximale du brouillard "
"profond, l'effet apparaîtra à une certaine distance (relative à la caméra). À "
"[code]1.0[/code], le brouillard occultera entièrement la scène, à [code]0.0[/"
"code], le brouillard ne sera pas visible."

msgid ""
"The fog's depth starting distance from the camera. Only available when "
"[member fog_mode] is set to [constant FOG_MODE_DEPTH]."
msgstr ""
"La distance de départ à partir de la caméra de la profondeur du brouillard. "
"Seulement disponible lorsque [member fog_mode] est défini à [constant "
"FOG_MODE_DEPTH]."

msgid ""
"The fog depth's intensity curve. A number of presets are available in the "
"Inspector by right-clicking the curve. Only available when [member fog_mode] "
"is set to [constant FOG_MODE_DEPTH]."
msgstr ""
"La courbe d'intensité de la profondeur brouillard. Un certain nombre de pré-"
"réglages sont disponibles dans l'Inspecteur en faisant un clic droit sur la "
"courbe. Seulement disponible lorsque [member fog_mode] est défini à [constant "
"FOG_MODE_DEPTH]."

msgid ""
"The fog's depth end distance from the camera. If this value is set to "
"[code]0[/code], it will be equal to the current camera's [member "
"Camera3D.far] value. Only available when [member fog_mode] is set to "
"[constant FOG_MODE_DEPTH]."
msgstr ""
"La distance de fin à partir de la caméra de la profondeur du brouillard. Si "
"cette valeur est défini à [code]0[/code], elle sera égale à la valeur de "
"[member Camera3D.far] de la caméra actuelle. Seulement disponible lorsque "
"[member fog_mode] est défini à [constant FOG_MODE_DEPTH]."

msgid "If [code]true[/code], fog effects are enabled."
msgstr "Si [code]true[/code], les effets de brouillard sont activés."

msgid "The height at which the height fog effect begins."
msgstr "La hauteur à laquelle commence l'effet de brouillard de hauteur."

msgid ""
"The density used to increase fog as height decreases. To make fog increase as "
"height increases, use a negative value."
msgstr ""
"La densité utilisée pour augmenter le brouillard à mesure que la hauteur "
"diminue. Pour augmenter le brouillard à mesure que la hauteur augmente, "
"utilisez une valeur négative."

msgid "The fog's color."
msgstr "La couleur du brouillard."

msgid "The fog's brightness. Higher values result in brighter fog."
msgstr ""
"La luminosité du brouillard. Des valeurs plus élevées entraînent un "
"brouillard plus lumineux."

msgid "The fog mode."
msgstr "Le mode du brouillard."

msgid ""
"The factor to use when affecting the sky with non-volumetric fog. [code]1.0[/"
"code] means that fog can fully obscure the sky. Lower values reduce the "
"impact of fog on sky rendering, with [code]0.0[/code] not affecting sky "
"rendering at all.\n"
"[b]Note:[/b] [member fog_sky_affect] has no visual effect if [member "
"fog_aerial_perspective] is [code]1.0[/code]."
msgstr ""
"Le facteur à utiliser lorsque le ciel est affecté avec un brouillard non "
"volumétrique. [code]1.0[/code] signifie que le brouillard peut masquer "
"pleinement le ciel. Les valeurs inférieures réduisent l'impact du brouillard "
"sur le rendu du ciel, avec [code]0.0[/code] qui n'affecte pas le rendu du "
"ciel.\n"
"[b]Note :[/b] [member fog_sky_affect] n'a aucun effet visuel si [member "
"fog_aerial_perspective] vaut [code]1.0[/code]."

msgid ""
"If set above [code]0.0[/code], renders the scene's directional light(s) in "
"the fog color depending on the view angle. This can be used to give the "
"impression that the sun is \"piercing\" through the fog."
msgstr ""
"Si définie au-dessus de [code]0.0[/code], rend la/les lumière(s) "
"directionnelle(s) de la scène avec la couleur du brouillard selon l'angle de "
"vue. Cela peut être utilisé pour donner l'impression que le soleil est "
"\"perce\" à travers le brouillard."

msgid ""
"The glow blending mode.\n"
"[b]Note:[/b] [member glow_blend_mode] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Le mode de mélange du glow.\n"
"[b]Note :[/b] [member glow_blend_mode] n'a aucun effet lors de l'utilisation "
"de la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une implémentation plus simple du glow optimisée pour les appareils "
"bas de gamme."

msgid ""
"The bloom's intensity. If set to a value higher than [code]0[/code], this "
"will make glow visible in areas darker than the [member glow_hdr_threshold]."
msgstr ""
"L'intensité du flou lumineux. Si la valeur est supérieure à [code]0[/code], "
"cela rend le glow visible dans les zones plus foncées que le seuil [member "
"glow_hdr_threshold]."

msgid ""
"If [code]true[/code], the glow effect is enabled. This simulates real world "
"eye/camera behavior where bright pixels bleed onto surrounding pixels.\n"
"[b]Note:[/b] When using the Mobile rendering method, glow looks different due "
"to the lower dynamic range available in the Mobile rendering method.\n"
"[b]Note:[/b] When using the Compatibility rendering method, glow uses a "
"different implementation with some properties being unavailable and hidden "
"from the inspector: [code]glow_levels/*[/code], [member glow_normalized], "
"[member glow_strength], [member glow_blend_mode], [member glow_mix], [member "
"glow_map], and [member glow_map_strength]. This implementation is optimized "
"to run on low-end devices and is less flexible as a result."
msgstr ""
"Si [code]true[/code], l'effet de glow est activé. Cela simule le comportement "
"réel des yeux/caméras du monde réel où les pixels lumineux \"saignent\" sur "
"les pixels environnants.\n"
"[b]Note :[/b] Lors de l'utilisation de la méthode de rendu Mobile, le glow "
"semble différent en raison de la plage dynamique inférieure disponible dans "
"la méthode de rendu Mobile.\n"
"[b]Note :[/b] Lors de l'utilisation de la méthode de rendu Compatibilité, le "
"glow utilise une implémentation différente, certaines propriétés étant "
"indisponibles et cachées de l'inspecteur : [code]glow_levels/*[/code], "
"[member glow_normalized], [member glow_strength], [member glow_blend_mode], "
"[member glow_map], et [member glow_map]. Cette implémentation est optimisée "
"pour fonctionner sur des appareils bas de gamme et est moins flexible en "
"conséquence."

msgid ""
"The higher threshold of the HDR glow. Areas brighter than this threshold will "
"be clamped for the purposes of the glow effect."
msgstr ""
"Le seuil supérieur du glow HDR. Les zones plus lumineuses que ce seuil seront "
"bornées pour l’effet de glow."

msgid "The bleed scale of the HDR glow."
msgstr "L'échelle de saignement du glow HDR."

msgid ""
"The lower threshold of the HDR glow. When using the Mobile rendering method "
"(which only supports a lower dynamic range up to [code]2.0[/code]), this may "
"need to be below [code]1.0[/code] for glow to be visible. A value of "
"[code]0.9[/code] works well in this case. This value also needs to be "
"decreased below [code]1.0[/code] when using glow in 2D, as 2D rendering is "
"performed in SDR."
msgstr ""
"Le seuil inférieur du glow HDR. Lors de l'utilisation de la méthode de rendu "
"Mobile (qui ne supporte qu'une plage dynamique inférieure, jusqu'à [code]2.0[/"
"code]), cela peut devoir être inférieur à [code]1.0[/code] pour que le glow "
"soit visible. Une valeur de [code]0.9[/code] fonctionne bien dans ce cas. "
"Cette valeur doit également être diminuée en dessous de [code]1.0[/code] "
"lorsque l'on utilise du glow en 2D, car le rendu 2D est effectué en SDR "
"(plage dynamique standard)."

msgid ""
"The overall brightness multiplier of the glow effect. When using the Mobile "
"rendering method (which only supports a lower dynamic range up to [code]2.0[/"
"code]), this should be increased to [code]1.5[/code] to compensate."
msgstr ""
"Le multiplicateur de luminosité global de l'effet de glow. Lors de "
"l'utilisation de la méthode de rendu Mobile (qui ne supporte qu'une plage "
"dynamique inférieure jusqu'à [code]2.0[/code]), cela devrait être augmenté à "
"[code]1.5[/code] pour compenser."

msgid ""
"The intensity of the 1st level of glow. This is the most \"local\" level "
"(least blurry).\n"
"[b]Note:[/b] [member glow_levels/1] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"L'intensité du 1er niveau du glow. C'est le niveau le plus \"local\" (le "
"moins flou).\n"
"[b]Note :[/b] [member glow_levels/1] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The intensity of the 2nd level of glow.\n"
"[b]Note:[/b] [member glow_levels/2] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"L'intensité du 2ème niveau du glow.\n"
"[b]Note :[/b] [member glow_levels/2] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The intensity of the 3rd level of glow.\n"
"[b]Note:[/b] [member glow_levels/3] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"L'intensité du 3ème niveau du glow.\n"
"[b]Note :[/b] [member glow_levels/3] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The intensity of the 4th level of glow.\n"
"[b]Note:[/b] [member glow_levels/4] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"L'intensité du 4ème niveau du glow.\n"
"[b]Note :[/b] [member glow_levels/4] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The intensity of the 5th level of glow.\n"
"[b]Note:[/b] [member glow_levels/5] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"L'intensité du 5ème niveau du glow.\n"
"[b]Note :[/b] [member glow_levels/5] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The intensity of the 6th level of glow.\n"
"[b]Note:[/b] [member glow_levels/6] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"L'intensité du 6ème niveau du glow.\n"
"[b]Note :[/b] [member glow_levels/6] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The intensity of the 7th level of glow. This is the most \"global\" level "
"(blurriest).\n"
"[b]Note:[/b] [member glow_levels/7] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"L'intensité du 7ème niveau du glow. Il s'agit du niveau le plus \"global\" "
"(le plus flou).\n"
"[b]Note :[/b] [member glow_levels/7] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The texture that should be used as a glow map to [i]multiply[/i] the "
"resulting glow color according to [member glow_map_strength]. This can be "
"used to create a \"lens dirt\" effect. The texture's RGB color channels are "
"used for modulation, but the alpha channel is ignored.\n"
"[b]Note:[/b] The texture will be stretched to fit the screen. Therefore, it's "
"recommended to use a texture with an aspect ratio that matches your project's "
"base aspect ratio (typically 16:9).\n"
"[b]Note:[/b] [member glow_map] has no effect when using the Compatibility "
"rendering method, due to this rendering method using a simpler glow "
"implementation optimized for low-end devices."
msgstr ""
"La texture qui devrait être utilisée comme glow map pour [i]multiplier[/i] la "
"couleur de glow résultante selon [member glow_map_strength]. Cela peut être "
"utilisé pour créer un effet de \"lentille sale\". Les canaux de couleur RGB "
"de la texture sont utilisés pour la modulation, mais le canal alpha est "
"ignoré.\n"
"[b]Note :[/b] La texture sera étirée pour s'adapter à l'écran. Par "
"conséquent, il est recommandé d'utiliser une texture avec un rapport d'aspect "
"qui correspond au rapport d'aspect de base de votre projet (généralement "
"16:9).\n"
"[b]Note :[/b] [member glow_map] n'a aucun effet lors de l'utilisation de la "
"méthode de rendu Compatibilité, en raison de cette méthode de rendu utilisant "
"une simple implémentation du glow optimisée pour les appareils bas de gamme."

msgid ""
"How strong of an influence the [member glow_map] should have on the overall "
"glow effect. A strength of [code]0.0[/code] means the glow map has no "
"influence, while a strength of [code]1.0[/code] means the glow map has full "
"influence.\n"
"[b]Note:[/b] If the glow map has black areas, a value of [code]1.0[/code] can "
"also turn off the glow effect entirely in specific areas of the screen.\n"
"[b]Note:[/b] [member glow_map_strength] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"La force d'influence que la [member glow_map] devrait avoir sur l'effet de "
"glow global. Une force de [code]0.0[/code] signifie que la glow map n'a pas "
"d'influence, alors qu'une force de [code]1.0[/code] signifie que la glow map "
"a une influence complète.\n"
"[b]Note :[/b] Si la glow map a des zones noires, une valeur de [code]1.0[/"
"code] peut également éteindre l'effet de glow entièrement dans ces zones "
"spécifiques de l'écran.\n"
"[b]Note :[/b] [member glow_map_strength] n'a aucun effet lors de "
"l'utilisation de la méthode de rendu Compatibilité, en raison de cette "
"méthode de rendu utilisant une simple implémentation du glow optimisée pour "
"les appareils bas de gamme."

msgid ""
"When using the [constant GLOW_BLEND_MODE_MIX] [member glow_blend_mode], this "
"controls how much the source image is blended with the glow layer. A value of "
"[code]0.0[/code] makes the glow rendering invisible, while a value of "
"[code]1.0[/code] is equivalent to [constant GLOW_BLEND_MODE_REPLACE].\n"
"[b]Note:[/b] [member glow_mix] has no effect when using the Compatibility "
"rendering method, due to this rendering method using a simpler glow "
"implementation optimized for low-end devices."
msgstr ""
"Lors de l'utilisation du mode de mélange [member glow_blend_mode] [constant "
"GLOW_BLEND_MODE_MIX], cela contrôle de combien l'image source est mélangée "
"avec la couche de glow. Une valeur de [code]0.0[/code] rend le rendu du glow "
"invisible, alors qu'une valeur de [code]1.0[/code] est équivalente à "
"[constant GLOW_BLEND_MODE_REPLACE].\n"
"[b]Note :[/b] [member glow_mix] n'a aucun effet lors de l'utilisation de la "
"méthode de rendu Compatibilité, en raison de cette méthode de rendu utilisant "
"une simple implémentation du glow optimisée pour les appareils bas de gamme."

msgid ""
"If [code]true[/code], glow levels will be normalized so that summed together "
"their intensities equal [code]1.0[/code].\n"
"[b]Note:[/b] [member glow_normalized] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Si [code]true[/code], les niveaux de glow seront normalisés de sorte que la "
"somme de leurs intensités soit égale à [code]1.0[/code].\n"
"[b]Note :[/b] [member glow_normalized] n'a aucun effet lors de l'utilisation "
"de la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid ""
"The strength of the glow effect. This applies as the glow is blurred across "
"the screen and increases the distance and intensity of the blur. When using "
"the Mobile rendering method, this should be increased to compensate for the "
"lower dynamic range.\n"
"[b]Note:[/b] [member glow_strength] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"La force de l'effet de glow. Ceci s'applique quand le glow est flouté sur "
"l'écran et augmente la distance et l'intensité du flou. Lors de l'utilisation "
"de la méthode de rendu Mobile, cela devrait être augmenté pour compenser la "
"plage dynamique inférieure.\n"
"[b]Note :[/b] [member glow_strength] n'a aucun effet lors de l'utilisation de "
"la méthode de rendu Compatibilité, en raison de cette méthode de rendu "
"utilisant une simple implémentation du glow optimisée pour les appareils bas "
"de gamme."

msgid "The reflected (specular) light source."
msgstr "La source de lumineuse réfléchie (spéculaire)."

msgid ""
"The energy multiplier applied to light every time it bounces from a surface "
"when using SDFGI. Values greater than [code]0.0[/code] will simulate multiple "
"bounces, resulting in a more realistic appearance. Increasing [member "
"sdfgi_bounce_feedback] generally has no performance impact. See also [member "
"sdfgi_energy].\n"
"[b]Note:[/b] Values greater than [code]0.5[/code] can cause infinite feedback "
"loops and should be avoided in scenes with bright materials.\n"
"[b]Note:[/b] If [member sdfgi_bounce_feedback] is [code]0.0[/code], indirect "
"lighting will not be represented in reflections as light will only bounce one "
"time."
msgstr ""
"Le multiplicateur d'énergie appliqué à la lumière chaque fois qu'elle "
"rebondit d'une surface lors de l'utilisation du SDFGI. Les valeurs "
"supérieures à [code]0.0[/code] simulent plusieurs rebonds, ce qui donne une "
"apparence plus réaliste. Augmenter [member sdfgi_bounce_feedback] n'a "
"généralement pas d'impact sur les performances. Voir aussi [member "
"sdfgi_energy].\n"
"[b]Note :[/b] Les valeurs supérieures à [code]0.5[/code] peuvent provoquer "
"des boucles de rétroaction infinies et devraient être évitées dans des scènes "
"avec des matériaux clairs.\n"
"[b]Note :[/b] Si [member sdfgi_bounce_feedback] vaut [code]0.0[/code], "
"l'éclairage indirect ne sera pas représenté dans les réflexions car la "
"lumière ne rebondira qu'une fois."

msgid ""
"[b]Note:[/b] This property is linked to [member sdfgi_min_cell_size] and "
"[member sdfgi_max_distance]. Changing its value will automatically change "
"those properties as well."
msgstr ""
"[b]Note :[/b] Cette propriété est liée à [member sdfgi_min_cell_size] et "
"[member sdfgi_max_distance]. Changer sa valeur va automatiquement aussi "
"changer ces propriétés."

msgid ""
"The number of cascades to use for SDFGI (between 1 and 8). A higher number of "
"cascades allows displaying SDFGI further away while preserving detail up "
"close, at the cost of performance. When using SDFGI on small-scale levels, "
"[member sdfgi_cascades] can often be decreased between [code]1[/code] and "
"[code]4[/code] to improve performance."
msgstr ""
"Le nombre de cascades à utiliser pour la SDFGI (entre 1 et 8). Un plus grand "
"nombre de cascades permet d'afficher la SDFGI plus loin tout en préservant le "
"détail à proximité, avec un coût sur la performance. Lors de l'utilisation de "
"la SDFGI dans des niveaux à petite échelle, [member sdfgi_cascades] peut "
"souvent être diminué entre [code]1[/code] et [code]4[/code] pour améliorer "
"les performances."

msgid ""
"If [code]true[/code], enables signed distance field global illumination for "
"meshes that have their [member GeometryInstance3D.gi_mode] set to [constant "
"GeometryInstance3D.GI_MODE_STATIC]. SDFGI is a real-time global illumination "
"technique that works well with procedurally generated and user-built levels, "
"including in situations where geometry is created during gameplay. The signed "
"distance field is automatically generated around the camera as it moves. "
"Dynamic lights are supported, but dynamic occluders and emissive surfaces are "
"not.\n"
"[b]Note:[/b] SDFGI is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility.\n"
"[b]Performance:[/b] SDFGI is relatively demanding on the GPU and is not "
"suited to low-end hardware such as integrated graphics (consider [LightmapGI] "
"instead). To improve SDFGI performance, enable [member "
"ProjectSettings.rendering/global_illumination/gi/use_half_resolution] in the "
"Project Settings.\n"
"[b]Note:[/b] Meshes should have sufficiently thick walls to avoid light leaks "
"(avoid one-sided walls). For interior levels, enclose your level geometry in "
"a sufficiently large box and bridge the loops to close the mesh."
msgstr ""
"Si [code]true[/code], active l'illumination globale par champ de distance "
"signée (SDFGI) pour les maillages ayant leur [member "
"GeometryInstance3D.gi_mode] défini à [constant "
"GeometryInstance3D.GI_MODE_STATIC]. La SDFGI est une technique d'illumination "
"globale en temps réel qui fonctionne bien avec les niveaux générés "
"procéduralement ou construits par les utilisateurs, y compris dans les "
"situations où la géométrie est créée durant le gameplay. Le champ de distance "
"signée est généré automatiquement autour de la caméra pendant qu'elle se "
"déplace. Les lumières dynamiques sont supportées, mais les occulteurs "
"dynamiques et les surfaces émissives ne le sont pas.\n"
"[b]Note :[/b] La SDFGI n'est supportée que dans la méthode de rendu Forward+, "
"pas Mobile ou Compatibilité.\n"
"[b]Performance :[/b] La SDFGI est relativement exigeante sur le GPU et n'est "
"pas adaptée au matériel de bas de gamme tel que les graphismes intégrés "
"(considérez plutôt [LightmapGI]). Pour améliorer la performance de la SDFGI, "
"activez [member ProjectSettings.rendering/global_illumination/gi/"
"use_half_resolution] dans les paramètres du projet.\n"
"[b]Note :[/b] Les maillages doivent avoir des parois suffisamment épaisses "
"pour éviter les fuites de lumière (évitez les murs à un seul côté). Pour les "
"niveaux en intérieur, enfermez votre géométrie du niveau dans une boîte "
"suffisamment grande et collez les extrémités pour fermer le maillage."

msgid ""
"The energy multiplier to use for SDFGI. Higher values will result in brighter "
"indirect lighting and reflections. See also [member sdfgi_bounce_feedback]."
msgstr ""
"Le multiplicateur d'énergie à utiliser pour la SDFGI. Des valeurs plus "
"élevées résulteront un éclairage et des réflexions indirectes plus lumineux. "
"Voir aussi [member sdfgi_bounce_feedback]."

msgid ""
"The maximum distance at which SDFGI is visible. Beyond this distance, "
"environment lighting or other sources of GI such as [ReflectionProbe] will be "
"used as a fallback.\n"
"[b]Note:[/b] This property is linked to [member sdfgi_min_cell_size] and "
"[member sdfgi_cascade0_distance]. Changing its value will automatically "
"change those properties as well."
msgstr ""
"La distance maximale à laquelle la SDFGI est visible. Au-delà de cette "
"distance, l'éclairage de l'environnement ou d'autres sources d'illumination "
"globale telles que les [ReflectionProbe]s seront utilisées en repli.\n"
"[b]Note :[/b] Cette propriété est liée à [member sdfgi_min_cell_size] et "
"[member sdfgi_cascade0_distance]. Changer sa valeur va automatiquement aussi "
"changer ces propriétés."

msgid ""
"The cell size to use for the closest SDFGI cascade (in 3D units). Lower "
"values allow SDFGI to be more precise up close, at the cost of making SDFGI "
"updates more demanding. This can cause stuttering when the camera moves fast. "
"Higher values allow SDFGI to cover more ground, while also reducing the "
"performance impact of SDFGI updates.\n"
"[b]Note:[/b] This property is linked to [member sdfgi_max_distance] and "
"[member sdfgi_cascade0_distance]. Changing its value will automatically "
"change those properties as well."
msgstr ""
"La taille de cellule à utiliser pour la cascade de SDFGI la plus proche (en "
"unités 3D). Les valeurs inférieures permettent à la SDFGI d'être plus "
"précise, au prix de rendre les mises à jour de la SDFGI plus exigeantes. Cela "
"peut causer du stuttering lorsque la caméra se déplace rapidement. Des "
"valeurs plus élevées permettent à la SDFGI de couvrir plus de terrain, tout "
"en réduisant l'impact sur la performance des mises à jour de la SDFGI.\n"
"[b]Note :[/b] Cette propriété est liée à [member sdfgi_max_distance] et "
"[member sdfgi_cascade0_distance]. Changer sa valeur va automatiquement aussi "
"changer ces propriétés."

msgid ""
"The normal bias to use for SDFGI probes. Increasing this value can reduce "
"visible streaking artifacts on sloped surfaces, at the cost of increased "
"light leaking."
msgstr ""
"Le biais des normales à utiliser pour les sondes de la SDFGI. L'augmentation "
"de cette valeur peut réduire les artefacts de traînées visibles sur les "
"surfaces en pente, au coût de fuites de lumière accrues."

msgid ""
"The constant bias to use for SDFGI probes. Increasing this value can reduce "
"visible streaking artifacts on sloped surfaces, at the cost of increased "
"light leaking."
msgstr ""
"Le biais constant à utiliser pour les sondes de la SDFGI. L'augmentation de "
"cette valeur peut réduire les artefacts de traînées visibles sur les surfaces "
"en pente, au coût de fuites de lumière accrues."

msgid ""
"If [code]true[/code], SDFGI takes the environment lighting into account. This "
"should be set to [code]false[/code] for interior scenes."
msgstr ""
"Si [code]true[/code], la SDFGI prend en compte l'éclairage de "
"l'environnement. Cela devrait être défini sur [code]false[/code] pour les "
"scènes en intérieur."

msgid ""
"If [code]true[/code], SDFGI uses an occlusion detection approach to reduce "
"light leaking. Occlusion may however introduce dark blotches in certain "
"spots, which may be undesired in mostly outdoor scenes. [member "
"sdfgi_use_occlusion] has a performance impact and should only be enabled when "
"needed."
msgstr ""
"Si [code]true[/code], la SDFGI utilise une approche de détection d'occlusion "
"pour réduire les fuites de lumière. L'occlusion peut cependant introduire des "
"taches sombres à certains endroits, qui peuvent être indésirables dans les "
"scènes principalement en extérieur. [member sdfgi_use_occlusion] a un impact "
"sur les performances et ne devrait être activé que lorsque nécessaire."

msgid ""
"The Y scale to use for SDFGI cells. Lower values will result in SDFGI cells "
"being packed together more closely on the Y axis. This is used to balance "
"between quality and covering a lot of vertical ground. [member sdfgi_y_scale] "
"should be set depending on how vertical your scene is (and how fast your "
"camera may move on the Y axis)."
msgstr ""
"L'échelle Y à utiliser pour les cellules de la SDFGI. Les valeurs inférieures "
"résulteront en des cellules SDFGI regroupées plus étroitement sur l'axe Y. "
"Ceci est utilisé pour équilibrer entre la qualité et couvrir beaucoup de "
"terrain vertical. [member sdfgi_y_scale] doit être défini en fonction de la "
"verticalité de votre scène (et de la vitesse à laquelle votre caméra peut "
"déplacer sur l'axe Y)."

msgid "The [Sky] resource used for this [Environment]."
msgstr "La ressource [Sky] utilisée pour cet [Environment]."

msgid ""
"If set to a value greater than [code]0.0[/code], overrides the field of view "
"to use for sky rendering. If set to [code]0.0[/code], the same FOV as the "
"current [Camera3D] is used for sky rendering."
msgstr ""
"Si défini à une valeur supérieur à [code]0.0[/code], redéfinit le champ de "
"vision à utiliser pour le rendu du ciel. Si défini à [code]0.0[/code], le "
"même FOV que la [Camera3D] actuelle est utilisé pour le rendu du ciel."

msgid "The rotation to use for sky rendering."
msgstr "La rotation à utiliser pour le rendu du ciel."

msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
"L'intensité de l'occlusion ambiante de l'espace-écran sur les matériaux qui "
"ont une texture d'occlusion ambiante définie. Des valeurs supérieures à "
"[code]0[/code] rendront l'effet SSAO visible dans les zones obscurcies par "
"les textures d'occlusion ambiante."

msgid ""
"Sets the strength of the additional level of detail for the screen-space "
"ambient occlusion effect. A high value makes the detail pass more prominent, "
"but it may contribute to aliasing in your final image."
msgstr ""
"Définit la force du niveau de détail supplémentaire pour l'effet d'occlusion "
"ambiante de l'espace-écran. Une valeur élevée rend la passe de détails plus "
"importante, mais peut contribuer à du crénelage dans votre image finale."

msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
"reaching the entire object as in real life. This works well for small, "
"dynamic objects, but baked lighting or ambient occlusion textures will do a "
"better job at displaying ambient occlusion on large static objects. Godot "
"uses a form of SSAO called Adaptive Screen Space Ambient Occlusion which is "
"itself a form of Horizon Based Ambient Occlusion.\n"
"[b]Note:[/b] SSAO is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility."
msgstr ""
"Si [code]true[/code], l'effet d'occlusion ambiante de l'espace-écran est "
"activé. Cela obscurcit les angles et les cavités des objets pour simuler la "
"lumière ambiante qui n'atteint pas l'objet en entier comme dans la vie "
"réelle. Cela fonctionne bien pour les petits objets dynamiques, mais "
"l'éclairage pré-calculé ou les textures d'occlusion ambiante feront un "
"meilleur travail pour afficher l'occlusion ambiante sur les grands objets "
"statiques. Godot utilise une forme de SSAO appelée Occlusion ambiante de "
"l'espace d'écran adaptatif qui est elle-même une forme d'occlusion ambiante "
"basée sur l'horizon.\n"
"[b]Note :[/b] La SSAO n'est supportée que dans la méthode de rendu Forward+, "
"pas dans Mobile ou Compatibilité."

msgid ""
"The primary screen-space ambient occlusion intensity. Acts as a multiplier "
"for the screen-space ambient occlusion effect. A higher value results in "
"darker occlusion."
msgstr ""
"L'intensité de l'occlusion ambiante de l'espace-écran primaire. Agit comme un "
"multiplicateur pour l'effet d'occlusion ambiante de l'espace-écran. Une "
"valeur plus élevée résulte en une occlusion plus sombre."

msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
"can't be seen in direct light. Values higher than [code]0[/code] will make "
"the SSAO effect visible in direct light."
msgstr ""
"L'intensité de l'occlusion ambiante dans l'espace écran sous lumière directe. "
"Dans la vraie vie, l'occlusion ambiante ne s'applique qu'à la lumière "
"indirecte, ce qui signifie que ses effets ne peuvent pas être vus sous "
"lumière directe. Les valeurs supérieures à [code]0[/code] rendront l'effet "
"SSAO visible sous lumière directe."

msgid ""
"The distribution of occlusion. A higher value results in darker occlusion, "
"similar to [member ssao_intensity], but with a sharper falloff."
msgstr ""
"La distribution de l'occlusion. Une valeur plus élevée résulte en une "
"occlusion plus sombre, semblable à [member ssao_intensity], mais avec une "
"décroissance plus nette."

msgid ""
"The distance at which objects can occlude each other when calculating screen-"
"space ambient occlusion. Higher values will result in occlusion over a "
"greater distance at the cost of performance and quality."
msgstr ""
"La distance à laquelle des objets peuvent s'obstruer l'un l'autre lors du "
"calcul de l'occlusion ambiante de l'espace-écran. Des valeurs plus élevées "
"résulteront en de l'occlusion sur une plus grande distance au coût de la "
"performance et de la qualité."

msgid ""
"The amount that the screen-space ambient occlusion effect is allowed to blur "
"over the edges of objects. Setting too high will result in aliasing around "
"the edges of objects. Setting too low will make object edges appear blurry."
msgstr ""
"La quantité avec laquelle l'effet d'occlusion ambiante de l'espace-écran est "
"autorisé à flouter les bords des objets. Définir ceci trop élevé va résulter "
"en du crénelage autour des bords des objets. Définir ceci trop bas va rendre "
"les bords de l'objet flous."

msgid "The depth tolerance for screen-space reflections."
msgstr "La tolérance de profondeur pour les réflexions sur l'espace de l'écran."

msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
"Le nombre maximum d'étapes pour les réflexions de l'espace-écran (SSR). Les "
"valeurs plus élevées sont plus lentes."

msgid ""
"The base [i]exponential[/i] density of the volumetric fog. Set this to the "
"lowest density you want to have globally. [FogVolume]s can be used to add to "
"or subtract from this density in specific areas. Fog rendering is exponential "
"as in real life.\n"
"A value of [code]0.0[/code] disables global volumetric fog while allowing "
"[FogVolume]s to display volumetric fog in specific areas.\n"
"To make volumetric fog work as a volumetric [i]lighting[/i] solution, set "
"[member volumetric_fog_density] to the lowest non-zero value ([code]0.0001[/"
"code]) then increase lights' [member Light3D.light_volumetric_fog_energy] to "
"values between [code]10000[/code] and [code]100000[/code] to compensate for "
"the very low density."
msgstr ""
"La densité [i]exponentielle[/i] de base du brouillard volumétrique. "
"Définissez ceci à la plus basse densité que vous voulez avoir globalement. "
"Des [FogVolume]s peuvent être utilisés pour ajouter ou soustraire à cette "
"densité dans des zones spécifiques. Le rendu du brouillard est exponentiel "
"comme dans la vie réelle.\n"
"Une valeur de [code]0.0[/code] désactive le brouillard volumétrique global "
"tout en permettant à des [FogVolume]s d'afficher du brouillard volumétrique "
"dans des zones spécifiques.\n"
"Pour que le brouillard volumétrique fonctionne comme une solution "
"d'[i]éclairage[/i] volumique, définissez [member volumetric_fog_density] à la "
"valeur non nulle la plus basse ([code]0.0001[/code]) puis augmentez la valeur "
"des [member Light3D.light_volumetric_fog_energy] des lumières à des valeurs "
"entre [code]10000[/code] et [code]100000[/code] pour compenser la très faible "
"densité."

msgid ""
"The emitted light from the volumetric fog. Even with emission, volumetric fog "
"will not cast light onto other surfaces. Emission is useful to establish an "
"ambient color. As the volumetric fog effect uses single-scattering only, fog "
"tends to need a little bit of emission to soften the harsh shadows."
msgstr ""
"La lumière émise par le brouillard volumétrique. Même avec l'émission, le "
"brouillard volumétrique ne projettera pas de lumière sur d'autres surfaces. "
"Les émissions sont utiles pour établir une couleur ambiante. Comme l'effet de "
"brouillard volumétrique n'utilise que de la diffusion unique, le brouillard a "
"tendance à avoir besoin d'un peu d'émission pour adoucir les ombres trop "
"nettes."

msgid "The brightness of the emitted light from the volumetric fog."
msgstr "La luminosité de la lumière émise dans le brouillard volumétrique."

msgid ""
"Enables the volumetric fog effect. Volumetric fog uses a screen-aligned "
"froxel buffer to calculate accurate volumetric scattering in the short to "
"medium range. Volumetric fog interacts with [FogVolume]s and lights to "
"calculate localized and global fog. Volumetric fog uses a PBR single-"
"scattering model based on extinction, scattering, and emission which it "
"exposes to users as density, albedo, and emission.\n"
"[b]Note:[/b] Volumetric fog is only supported in the Forward+ rendering "
"method, not Mobile or Compatibility."
msgstr ""
"Active l'effet de brouillard volumétrique. Le brouillard volumétrique utilise "
"un buffer de froxels alignés sur l'écran pour calculer la diffusion "
"volumétrique exacte à courte et moyenne portée. Le brouillard volumique "
"interagit avec les [FogVolume]s et les lumières pour calculer le brouillard "
"local et global. Le brouillard volumétrique utilise un modèle PBR à diffusion "
"unique basé sur l'extinction, la diffusion et l'émission qu'il expose aux "
"utilisateurs par la densité, l'albédo et l'émission.\n"
"[b]Note :[/b] Le brouillard volumétrique n'est supporté que dans la méthode "
"de rendu Forward+, et non Mobile ou Compatibilité."

msgid ""
"Scales the strength of Global Illumination used in the volumetric fog's "
"albedo color. A value of [code]0.0[/code] means that Global Illumination will "
"not impact the volumetric fog. [member volumetric_fog_gi_inject] has a small "
"performance cost when set above [code]0.0[/code].\n"
"[b]Note:[/b] This has no visible effect if [member volumetric_fog_density] is "
"[code]0.0[/code] or if [member volumetric_fog_albedo] is a fully black "
"color.\n"
"[b]Note:[/b] Only [VoxelGI] and SDFGI ([member Environment.sdfgi_enabled]) "
"are taken into account when using [member volumetric_fog_gi_inject]. Global "
"illumination from [LightmapGI], [ReflectionProbe] and SSIL (see [member "
"ssil_enabled]) will be ignored by volumetric fog."
msgstr ""
"Redimensionne la force de l'illumination globale utilisée dans la couleur "
"d'albédo du brouillard volumétrique. Une valeur de [code]0.0[/code] signifie "
"que l'illumination globale n'affectera pas le brouillard volumétrique. "
"[member volumetric_fog_gi_inject] a un petit coût de performance lorsque il "
"est défini au dessus de [code]0.0[/code].\n"
"[b]Note :[/b] Cela n'a aucun effet visible si [member volumetric_fog_density] "
"vaut [code]0.0[/code] ou si [member volumetric_fog_albedo] a une couleur "
"entièrement noire.\n"
"[b]Note :[/b] Seuls [VoxelGI] et SDFGI ([member Environment.sdfgi_enabled]) "
"sont pris en compte lors de l'utilisation de [member "
"volumetric_fog_gi_inject]. L'illumination globale de [LightmapGI], "
"[ReflectionProbe] et SSIL (voir [member ssil_enabled]) sera ignorée par le "
"brouillard volumétrique."

msgid ""
"The distance over which the volumetric fog is computed. Increase to compute "
"fog over a greater range, decrease to add more detail when a long range is "
"not needed. For best quality fog, keep this as low as possible. See also "
"[member ProjectSettings.rendering/environment/volumetric_fog/volume_depth]."
msgstr ""
"La distance sur laquelle le brouillard volumétrique est calculé. Augmentez la "
"pour calculer le brouillard sur une plus grande portée, diminuez la pour "
"ajouter plus de détails quand une longue portée n'est pas nécessaire. Pour un "
"brouillard de meilleure qualité, gardez ceci aussi bas que possible. Voir "
"aussi [member ProjectSettings.rendering/environment/volumetric_fog/"
"volume_depth]."

msgid ""
"The factor to use when affecting the sky with volumetric fog. [code]1.0[/"
"code] means that volumetric fog can fully obscure the sky. Lower values "
"reduce the impact of volumetric fog on sky rendering, with [code]0.0[/code] "
"not affecting sky rendering at all.\n"
"[b]Note:[/b] [member volumetric_fog_sky_affect] also affects [FogVolume]s, "
"even if [member volumetric_fog_density] is [code]0.0[/code]. If you notice "
"[FogVolume]s are disappearing when looking towards the sky, set [member "
"volumetric_fog_sky_affect] to [code]1.0[/code]."
msgstr ""
"Le facteur à utiliser le brouillard volumétrique affecte le ciel. [code]1.0[/"
"code] signifie que le brouillard volumétrique peut masquer pleinement le "
"ciel. Les valeurs inférieures réduisent l'impact du brouillard volumétrique "
"sur le rendu du ciel, avec [code]0.0[/code] qui n'affecte pas du tout le "
"rendu du ciel.\n"
"[b]Note :[/b] [member volumetric_fog_sky_affect] affecte également les "
"[FogVolume]s, même si [member volumetric_fog_density] vaut [code]0.0[/code]. "
"Si vous remarquez que des [FogVolume]s disparaissent en regardant vers le "
"ciel, définissez [member volumetric_fog_sky_affect] à [code]1.0[/code]."

msgid ""
"Enables temporal reprojection in the volumetric fog. Temporal reprojection "
"blends the current frame's volumetric fog with the last frame's volumetric "
"fog to smooth out jagged edges. The performance cost is minimal; however, it "
"leads to moving [FogVolume]s and [Light3D]s \"ghosting\" and leaving a trail "
"behind them. When temporal reprojection is enabled, try to avoid moving "
"[FogVolume]s or [Light3D]s too fast. Short-lived dynamic lighting effects "
"should have [member Light3D.light_volumetric_fog_energy] set to [code]0.0[/"
"code] to avoid ghosting."
msgstr ""
"Active la reprojection temporelle dans le brouillard volumétrique. La "
"reprojection temporelle mélange le brouillard volumétrique de la trame "
"actuelle avec le brouillard volumétrique de la dernière trame pour lisser les "
"bords irréguliers. Le coût en performance est minime, cependant, cela conduit "
"à du \"ghosting\" sur les [FogVolume]s et [Light3D]s mouvants, qui laissant "
"alors une traînée derrière eux. Lorsque la reprojection temporelle est "
"activée, essayez d'éviter de déplacer des [FogVolume]s ou des [Light3D]s trop "
"vite. Les effets d'éclairage dynamique de courte durée devraient avoir "
"[member Light3D.light_volumetric_fog_energy] définis sur [code]0.0[/code] "
"pour éviter le ghosting."

msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/defaults/default_clear_color]."
msgstr ""
"Efface l'arrière-plan en utilisant la couleur d'effacement définie dans "
"[member ProjectSettings.rendering/environment/defaults/default_clear_color]."

msgid "Clears the background using a custom clear color."
msgstr ""
"Efface l'arrière-plan en utilisant la couleur d'effacement personnalisée."

msgid "Displays a user-defined sky in the background."
msgstr "Affiche un ciel personnalisé en arrière-plan."

msgid "Displays a [CanvasLayer] in the background."
msgstr "Affiche un [CanvasLayer] en arrière-plan."

msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
"visible sky or sky reflections). If enabled in a scene where the background "
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
"Garde à l'écran chaque pixel dessiné à l'arrière-plan. Il s'agit du mode "
"d'arrière-plan le plus rapide, mais il ne peut être utilisé en toute sécurité "
"que dans des scènes entièrement intérieures (pas de ciel visible ou de "
"reflets du ciel). S'il est activé dans une scène où l'arrière-plan est "
"visible, des artéfacts de \"ghost trail\" (traînées fantômes) seront visibles "
"lors du déplacement de la caméra."

msgid "Displays a camera feed in the background."
msgstr "Afficher le flux de la caméra en arrière-plan."

msgid "Represents the size of the [enum BGMode] enum."
msgstr "Représente la taille de l'énumération [enum BGMode]."

msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
"Recueillir la lumière ambiante depuis la source spécifiée comme arrière-plan."

msgid ""
"Disable ambient light. This provides a slight performance boost over "
"[constant AMBIENT_SOURCE_SKY]."
msgstr ""
"Désactiver la lumière ambiante. Ceci fournit un léger boost de performance "
"par rapport à [constant AMBIENT_SOURCE_SKY]."

msgid ""
"Specify a specific [Color] for ambient light. This provides a slight "
"performance boost over [constant AMBIENT_SOURCE_SKY]."
msgstr ""
"Spécifier une [Color] spécifique pour la lumière ambiante. Ceci fournit un "
"léger boost de performance par rapport à [constant AMBIENT_SOURCE_SKY]."

msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr ""
"Recueillir la lumière ambiante depuis le [Sky] peu importe de ce qu'est "
"l'arrière-plan."

msgid "Use the background for reflections."
msgstr "Utiliser l'arrière-plan pour les réflexions."

msgid ""
"Disable reflections. This provides a slight performance boost over other "
"options."
msgstr ""
"Désactiver les réflexions. Cela donne un léger boost de performance par "
"rapport aux autres options."

msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr "Utiliser le [Sky] pour les réflexions quel que soit l'arrière-plan."

msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
"Mode de mélange de glow additif. Utilisé généralement pour les particules, le "
"glow (bloom, flux lumineux), le facteur de flare, les sources très lumineuses."

msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
"Mode de mélange de glow dans l'écran. Augmente la luminosité, utilisé "
"fréquemment avec le flou lumineux (bloom)."

msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
"Mode de mélange de glow en lumière douce. Modifie le contraste, expose les "
"ombres et les reflets (bloom vif)."

msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
"Mode de mélange de glow en remplacement. Remplace toutes les couleurs des "
"pixels par leur valeur de glow. Cela peut être utilisé pour simuler un effet "
"de flou en plein écran en ajustant les paramètres du glow pour correspondre à "
"la luminosité de l'image originale."

msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
"Mélange le glow avec la couleur sous-jacente pour éviter d'augmenter la "
"luminosité tout en maintenant un effet de glow."

msgid "Use a physically-based fog model defined primarily by fog density."
msgstr ""
"Utiliser un modèle de brouillard physique défini principalement par la "
"densité du brouillard."

msgid ""
"Use a simple fog model defined by start and end positions and a custom curve. "
"While not physically accurate, this model can be useful when you need more "
"artistic control."
msgstr ""
"Utiliser un modèle de brouillard simple défini par les positions de démarrage "
"et de fin et une courbe personnalisée. Bien qu'il ne soit pas physiquement "
"exact, ce modèle peut être utile lorsque vous avez besoin d'un contrôle plus "
"artistique."

msgid "A class that stores an expression you can execute."
msgstr "Une classe qui enregistre une expression que vous pouvez exécuter."

msgid "Evaluating Expressions"
msgstr "Évaluation des expressions"

msgid ""
"Executes the expression that was previously parsed by [method parse] and "
"returns the result. Before you use the returned object, you should check if "
"the method failed by calling [method has_execute_failed].\n"
"If you defined input variables in [method parse], you can specify their "
"values in the inputs array, in the same order."
msgstr ""
"Exécute l'expression qui a été précédemment parsée par [method parse] et "
"renvoie le résultat. Avant d'utiliser l'objet renvoyé, vous devez vérifier si "
"la méthode a échoué en appelant [method has_execute_failed].\n"
"Si vous définissez des variables d'entrée dans [method parse], vous pouvez "
"spécifier leurs valeurs dans le tableau \"inputs\", dans le même ordre."

msgid "Returns [code]true[/code] if [method execute] has failed."
msgstr "Renvoie [code]true[/code] si [method execute] a échoué."

msgid "External texture size."
msgstr "Taille de la texture externe."

msgid "Generates noise using the FastNoiseLite library."
msgstr "Génère du bruit en utilisant la bibliothèque FastNoiseLite."

msgid ""
"This class generates noise using the FastNoiseLite library, which is a "
"collection of several noise algorithms including Cellular, Perlin, Value, and "
"more.\n"
"Most generated noise values are in the range of [code][-1, 1][/code], but not "
"always. Some of the cellular noise algorithms return results above [code]1[/"
"code]."
msgstr ""
"Cette classe génère du bruit en utilisant la bibliothèque FastNoiseLite, qui "
"est une collection de plusieurs algorithmes de bruit tels que Cellular, "
"Perlin, Value et plus encore.\n"
"La plupart des valeurs de bruit généré sont dans l'intervalle [code][-1, 1][/"
"code], mais pas toujours. Certains algorithmes de bruit cellulaire renvoient "
"des résultats au-dessus de [code]1[/code]."

msgid ""
"Determines how the distance to the nearest/second-nearest point is computed."
msgstr ""
"Détermine comment la distance jusqu'au point le plus proche/le second plus "
"proche est calculée."

msgid ""
"Maximum distance a point can move off of its grid position. Set to [code]0[/"
"code] for an even grid."
msgstr ""
"Distance maximale à laquelle un point peut se déplacer hors de sa position "
"sur la grille. Définir à [code]0[/code] pour une grille uniforme."

msgid "Return type from cellular noise calculations."
msgstr "Type de renvoi des calculs de bruit cellulaire."

msgid "Sets the maximum warp distance from the origin."
msgstr "Définit la distance de distorsion maximale depuis l'origine."

msgid ""
"If enabled, another FastNoiseLite instance is used to warp the space, "
"resulting in a distortion of the noise."
msgstr ""
"Si activé, une autre instance FastNoiseLite est utilisée déforme l'espace, "
"entraînant une distorsion du bruit."

msgid ""
"Determines the strength of each subsequent layer of the noise which is used "
"to warp the space.\n"
"A low value places more emphasis on the lower frequency base layers, while a "
"high value puts more emphasis on the higher frequency layers."
msgstr ""
"Détermine la force de chaque couche subséquente de bruit qui est utilisé pour "
"déformer l'espace.\n"
"Une faible valeur met davantage l'accent sur les couches de base à basse "
"fréquence, alors qu'une valeur élevée met davantage l'accent sur les couches "
"de fréquences supérieures."

msgid ""
"The change in frequency between octaves, also known as \"lacunarity\", of the "
"fractal noise which warps the space. Increasing this value results in higher "
"octaves, producing noise with finer details and a rougher appearance."
msgstr ""
"Le changement de fréquence entre les octaves, également connu sous le nom de "
"« lacunarité », du bruit fractal qui déforme l'espace. Augmenter cette valeur "
"résulte en eds octaves plus élevées, produisant du bruit avec des détails "
"plus fins et une apparence plus rugueuse."

msgid ""
"The number of noise layers that are sampled to get the final value for the "
"fractal noise which warps the space."
msgstr ""
"Le nombre de couches de bruit qui sont échantillonnées pour obtenir la valeur "
"finale pour le bruit fractal qui déforme l'espace."

msgid ""
"The method for combining octaves into a fractal which is used to warp the "
"space."
msgstr ""
"La méthode pour combiner les octaves en une fractal qui est utilisée pour "
"déformer l'espace."

msgid ""
"Frequency of the noise which warps the space. Low frequency results in smooth "
"noise while high frequency results in rougher, more granular noise."
msgstr ""
"Fréquence du bruit qui déforme l'espace. Une faible fréquence entraîne un "
"bruit lisse tandis qu'une haute fréquence entraîne un bruit plus rugueux et "
"plus granulaire."

msgid "The warp algorithm."
msgstr "L'algorithme de déformation."

msgid ""
"Determines the strength of each subsequent layer of noise in fractal noise.\n"
"A low value places more emphasis on the lower frequency base layers, while a "
"high value puts more emphasis on the higher frequency layers."
msgstr ""
"Détermine la force de chaque couche subséquente de bruit dans le bruit "
"fractal.\n"
"Une faible valeur met davantage l'accent sur les couches de base à basse "
"fréquence, alors qu'une valeur élevée met davantage l'accent sur les couches "
"de fréquences supérieures."

msgid ""
"Frequency multiplier between subsequent octaves. Increasing this value "
"results in higher octaves producing noise with finer details and a rougher "
"appearance."
msgstr ""
"Multiplicateur de fréquence entre les octaves subséquentes. Augmenter cette "
"valeur résulte en des octaves plus élevées produisant du bruit avec des "
"détails plus fins et une apparence plus rugueuse."

msgid ""
"The number of noise layers that are sampled to get the final value for "
"fractal noise types."
msgstr ""
"Le nombre de couches de bruit qui sont échantillonnées pour obtenir la valeur "
"finale des bruits type fractal."

msgid "Sets the strength of the fractal ping pong type."
msgstr "Définit la force du type ping pong de fractale."

msgid "The method for combining octaves into a fractal."
msgstr "La méthode pour combiner les octaves en une fractale."

msgid ""
"Higher weighting means higher octaves have less impact if lower octaves have "
"a large impact."
msgstr ""
"Un poids plus élevé signifie que les octaves plus élevées ont moins d'impact "
"si les octaves inférieures ont un impact important."

msgid ""
"The frequency for all noise types. Low frequency results in smooth noise "
"while high frequency results in rougher, more granular noise."
msgstr ""
"La fréquence pour tous les types de bruit. Une faible fréquence entraîne un "
"bruit lisse tandis qu'une haute fréquence entraîne un bruit plus rugueux et "
"plus granulaire."

msgid "The noise algorithm used."
msgstr "L'algorithme de bruit utilisé."

msgid "Translate the noise input coordinates by the given [Vector3]."
msgstr "Translate les coordonnées d'entrée du bruit par le [Vector3] donné."

msgid "The random number seed for all noise types."
msgstr "La graine de nombre aléatoire pour tous les types de bruit."

msgid ""
"A lattice of points are assigned random values then interpolated based on "
"neighboring values."
msgstr ""
"Des valeurs aléatoires sont attribuées à un maillage de points puis "
"interpolées en fonction des valeurs voisines."

msgid ""
"Similar to value noise ([constant TYPE_VALUE]), but slower. Has more variance "
"in peaks and valleys.\n"
"Cubic noise can be used to avoid certain artifacts when using value noise to "
"create a bumpmap. In general, you should always use this mode if the value "
"noise is being used for a heightmap or bumpmap."
msgstr ""
"Similaire au bruit Value ([constant TYPE_VALUE]), mais plus lent. A plus de "
"variance dans les crêtes et les vallées.\n"
"Le bruit cubique peut être utilisé pour éviter certains artéfacts lors de "
"l'utilisation du bruit Value pour créer une bumpmap. En général, vous devriez "
"toujours utiliser ce mode si le bruit Value est utilisé pour une heightmap ou "
"une bumpmap."

msgid ""
"A lattice of random gradients. Their dot products are interpolated to obtain "
"values in between the lattices."
msgstr ""
"Un maillage de gradients aléatoires. Leurs produits scalaires sont interpolés "
"pour obtenir des valeurs entre les points."

msgid ""
"Cellular includes both Worley noise and Voronoi diagrams which creates "
"various regions of the same value."
msgstr ""
"Cellular comprend à la fois le bruit de Worley et les diagrammes de Voronoi "
"qui créent diverses régions de même valeur."

msgid ""
"As opposed to [constant TYPE_PERLIN], gradients exist in a simplex lattice "
"rather than a grid lattice, avoiding directional artifacts. Internally uses "
"FastNoiseLite's OpenSimplex2 noise type."
msgstr ""
"Contrairement à [constant TYPE_PERLIN], les gradients existent dans un "
"maillage de simplexes plutôt qu'un maillage de grille, évitant les artéfacts "
"directionnels. Utilise en interne le type de bruit OpenSimplex2 de "
"FastNoiseLite."

msgid ""
"Modified, higher quality version of [constant TYPE_SIMPLEX], but slower. "
"Internally uses FastNoiseLite's OpenSimplex2S noise type."
msgstr ""
"Version modifiée et de qualité supérieure de [constant TYPE_SIMPLEX], mais "
"plus lente. Utilise en interne le type de bruit OpenSimplex2S de "
"FastNoiseLite."

msgid "No fractal noise."
msgstr "Pas de bruit fractal."

msgid ""
"Method using Fractional Brownian Motion to combine octaves into a fractal."
msgstr ""
"Méthode utilisant le Mouvement Brownien Fractionnel (FBW) pour combiner des "
"octaves en une fractale."

msgid ""
"Method of combining octaves into a fractal resulting in a \"ridged\" look."
msgstr ""
"Méthode de combinaison d'octaves en une fractale résultant en un look "
"\"strié\"."

msgid "Method of combining octaves into a fractal with a ping pong effect."
msgstr ""
"Méthode de combinaison des octaves en une fractale avec un effet ping pong."

msgid "Euclidean distance to the nearest point."
msgstr "Distance euclidienne jusqu'au point le plus proche."

msgid "Squared Euclidean distance to the nearest point."
msgstr "Distance Euclidienne au carré jusqu'au point le plus proche."

msgid "Manhattan distance (taxicab metric) to the nearest point."
msgstr ""
"Distance de Manhattan (métrique taxi-distance) jusqu'au point le plus proche."

msgid ""
"Blend of [constant DISTANCE_EUCLIDEAN] and [constant DISTANCE_MANHATTAN] to "
"give curved cell boundaries."
msgstr ""
"Mélange de [constant DISTANCE_EUCLIDEAN] et [constant DISTANCE_MANHATTAN] "
"pour obtenir des limites de cellule courbées."

msgid ""
"The cellular distance function will return the same value for all points "
"within a cell."
msgstr ""
"La fonction de distance cellulaire renverra la même valeur pour tous les "
"points dans une cellule."

msgid ""
"The cellular distance function will return a value determined by the distance "
"to the nearest point."
msgstr ""
"La fonction de distance cellulaire renverra une valeur déterminée par la "
"distance jusqu'au point le plus proche."

msgid ""
"The cellular distance function returns the distance to the second-nearest "
"point."
msgstr ""
"La fonction de distance cellulaire renverra la distance jusqu'au second point "
"le plus proche."

msgid ""
"The distance to the nearest point is added to the distance to the second-"
"nearest point."
msgstr ""
"La distance jusqu'au point le plus proche est additionnée à la distance "
"jusqu'au second point le plus proche."

msgid ""
"The distance to the nearest point is subtracted from the distance to the "
"second-nearest point."
msgstr ""
"La distance jusqu'au point le plus proche est soustraite à la distance "
"jusqu'au second point le plus proche."

msgid ""
"The distance to the nearest point is multiplied with the distance to the "
"second-nearest point."
msgstr ""
"La distance jusqu'au point le plus proche est multipliée avec la distance "
"jusqu'au second point le plus proche."

msgid ""
"The distance to the nearest point is divided by the distance to the second-"
"nearest point."
msgstr ""
"La distance jusqu'au point le plus proche est divisée par la distance "
"jusqu'au second point le plus proche."

msgid "The domain is warped using the simplex noise algorithm."
msgstr "Le domaine est déformé en utilisant l'algorithme de bruit simplex."

msgid ""
"The domain is warped using a simplified version of the simplex noise "
"algorithm."
msgstr ""
"Le domaine est déformé en utilisant une version simplifiée de l'algorithme de "
"bruit simplex."

msgid ""
"The domain is warped using a simple noise grid (not as smooth as the other "
"methods, but more performant)."
msgstr ""
"Le domaine est déformé en utilisant une grille de bruit simple (pas aussi "
"lisse que les autres méthodes, mais plus performant)."

msgid "No fractal noise for warping the space."
msgstr "Pas de bruit fractal pour déformer l'espace."

msgid ""
"Warping the space progressively, octave for octave, resulting in a more "
"\"liquified\" distortion."
msgstr ""
"Déformer l'espace progressivement, octave par octave, entraînant une "
"distorsion plus «liquéfiée»."

msgid ""
"Warping the space independently for each octave, resulting in a more chaotic "
"distortion."
msgstr ""
"Déformer l'espace indépendamment pour chaque octave, ce qui entraîne une "
"distorsion plus chaotique."

msgid "Handles FBX documents."
msgstr "Gère les documents FBX."

msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
"Renvoie la dernière erreur qui est arrivée lors de l'exécution d'une "
"opération. Comparez-la avec les constantes [code]ERR_FILE_*[/code] de [enum "
"Error]."

msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
"Renvoie une chaîne MD5 représentant le fichier au chemin spécifié ou une "
"[String] vide en cas d'échec."

msgid "Returns the path as a [String] for the current open file."
msgstr "Renvoie le chemin en tant que [String] du fichier actuellement ouvert."

msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
"Renvoie le chemin absolu en tant que [String] du fichier actuellement ouvert."

msgid "Returns [code]true[/code] if the file is currently opened."
msgstr "Renvoie [code]true[/code] si le fichier est actuellement ouvert."

msgid "Uses the [url=https://fastlz.org/]FastLZ[/url] compression method."
msgstr "Utilise la méthode de compression [url=http://fastlz.org/]FastLZ[/url]."

msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] compression "
"method."
msgstr ""
"Utilise la méthode de compression [url=https://en.wikipedia.org/wiki/"
"DEFLATE]DEFLATE[/url]."

msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
"Utilise la méthode de compression [url=https://facebook.github.io/"
"zstd/]Zstandard[/url]."

msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr ""
"Utilise la méthode de compression [url=https://www.gzip.org/]gzip[/url]."

msgid "Clear all the added filters in the dialog."
msgstr "Efface tous les filtres ajoutés au dialogue."

msgid "The currently selected file of the file dialog."
msgstr "L'actuel fichier sélectionné dans le dialogue de choix de fichier."

msgid "The currently selected file path of the file dialog."
msgstr "L'actuel chemin de fichier sélectionné dans le dialogue de fichier."

msgid "Emitted when the user selects a directory."
msgstr "Émis quand l'utilisateur sélectionne un dossier."

msgid ""
"Emitted when the user selects a file by double-clicking it or pressing the "
"[b]OK[/b] button."
msgstr ""
"Émis lorsque l'utilisateur sélectionne un fichier en le double-cliquant ou en "
"appuyant sur le bouton [b]OK[/b]."

msgid "Emitted when the user selects multiple files."
msgstr "Émis quand l'utilisateur sélectionne plusieurs fichiers."

msgid "The dialog allows selecting one, and only one file."
msgstr "Le dialogue n'autorise la sélection que d'un seul fichier."

msgid "The dialog allows selecting multiple files."
msgstr "Le dialogue permet de sélectionner plusieurs fichiers."

msgid ""
"The dialog only allows selecting a directory, disallowing the selection of "
"any file."
msgstr ""
"Le dialogue ne permet de sélectionner que des dossiers, et aucun fichier."

msgid "The dialog allows selecting one file or directory."
msgstr "Le dialogue permet de sélectionner un fichier ou dossier."

msgid "The dialog will warn when a file exists."
msgstr "Le dialogue avertira si un fichier existe déjà."

msgid ""
"The dialog only allows accessing files under the [Resource] path ([code]res://"
"[/code])."
msgstr ""
"Cette fenêtre ne permet d'uniquement d'accéder qu'aux fichiers sous le chemin "
"[Resource] ([code]res://[/code])."

msgid ""
"The dialog only allows accessing files under user data path ([code]user://[/"
"code])."
msgstr ""
"Cette fenêtre ne permet d'uniquement d'accéder qu'aux fichiers sous le chemin "
"des données utilisateur ([code]user://[/code])."

msgid "The dialog allows accessing files on the whole file system."
msgstr ""
"Le dialogue permet d'accéder à tous les fichiers du système de fichiers."

msgid ""
"The color tint for disabled files (when the [FileDialog] is used in open "
"folder mode)."
msgstr ""
"La teinte de couleur pour les fichiers désactivés (lorsque le [FileDialog] "
"est utilisé en mode ouverture de dossier)."

msgid "The color modulation applied to the file icon."
msgstr "La couleur de modulation appliquée à l'icône de fichier."

msgid "The color modulation applied to the folder icon."
msgstr "La couleur de modulation appliquée à l'icône de dossier."

msgid "Custom icon for files."
msgstr "Icône personnalisée pour les fichiers."

msgid "Custom icon for folders."
msgstr "Icône personnalisée pour les dossiers."

msgid "Custom icon for the parent folder arrow."
msgstr "L'icône personnalisée pour la flèche du dossier parent."

msgid "Custom icon for the reload button."
msgstr "Icône personnalisée pour le bouton de rechargement."

msgid "Custom icon for the toggle hidden button."
msgstr "L'icône personnalisé pour le bouton d'affichage."

msgid "Godot editor's dock for managing files in the project."
msgstr "Le dock de l'éditeur Godot pour gérer des fichiers dans le projet."

msgid ""
"This class is available only in [EditorPlugin]s and can't be instantiated. "
"You can access it using [method EditorInterface.get_file_system_dock].\n"
"While [FileSystemDock] doesn't expose any methods for file manipulation, it "
"can listen for various file-related signals."
msgstr ""
"Cette classe est disponible seulement dans des [EditorPlugin]s et ne peut pas "
"être instanciée. Vous pouvez y accéder en utilisant [method "
"EditorInterface.get_file_system_dock].\n"
"Bien que [FileSystemDock] n'expose aucune méthode de manipulation de "
"fichiers, il peut écouter divers signaux liés aux fichiers."

msgid "Registers a new [EditorResourceTooltipPlugin]."
msgstr "Enregistre un nouveau [EditorResourceTooltipPlugin]."

msgid ""
"Sets the given [param path] as currently selected, ensuring that the selected "
"file/directory is visible."
msgstr ""
"Définit le chemin [param path] donné comme actuellement sélectionné, en "
"veillant à ce que le fichier / répertoire sélectionné soit visible."

msgid ""
"Removes an [EditorResourceTooltipPlugin]. Fails if the plugin wasn't "
"previously added."
msgstr ""
"Retire un [EditorResourceTooltipPlugin]. Échoue si le plugin n'a pas été "
"ajouté précédemment."

msgid "Emitted when the user switches file display mode or split mode."
msgstr ""
"Émis lorsque l'utilisateur change le mode d'affichage des fichiers ou le mode "
"scindé."

msgid "Emitted when the given [param file] was removed."
msgstr "Émis lorsque le fichier [param file] donné a été supprimé."

msgid ""
"Emitted when a file is moved from [param old_file] path to [param new_file] "
"path."
msgstr ""
"Émis quand un fichier est déplacé du chemin [param old_file] vers le chemin "
"[param new_file]."

msgid "Emitted when folders change color."
msgstr "Émis lorsque les dossiers changent de couleur."

msgid ""
"Emitted when a folder is moved from [param old_folder] path to [param "
"new_folder] path."
msgstr ""
"Émis quand un dossier est déplacé du chemin [param old_folder] vers le chemin "
"[param new_folder]."

msgid "Emitted when the given [param folder] was removed."
msgstr "Émis lorsque le dossier [param folder] donné a été supprimé."

msgid ""
"Emitted when a new scene is created that inherits the scene at [param file] "
"path."
msgstr ""
"Émis quand une nouvelle scène est créée qui hérite de la scène au chemin "
"[param file]."

msgid "Emitted when the given scenes are being instantiated in the editor."
msgstr "Émis lorsque les scènes données sont instanciées dans l'éditeur."

msgid "Emitted when an external [param resource] had its file removed."
msgstr ""
"Émis lorsque une ressource externe [param resource] a eu son fichier supprimé."

msgid "A built-in type for floating-point numbers."
msgstr "Un type intégré pour les nombres à virgule flottante."

msgid ""
"The [float] built-in type is a 64-bit double-precision floating-point number, "
"equivalent to [code]double[/code] in C++. This type has 14 reliable decimal "
"digits of precision. The maximum value of [float] is approximately "
"[code]1.79769e308[/code], and the minimum is approximately "
"[code]-1.79769e308[/code].\n"
"Many methods and properties in the engine use 32-bit single-precision "
"floating-point numbers instead, equivalent to [code skip-lint]float[/code] in "
"C++, which have 6 reliable decimal digits of precision. For data structures "
"such as [Vector2] and [Vector3], Godot uses 32-bit floating-point numbers by "
"default, but it can be changed to use 64-bit doubles if Godot is compiled "
"with the [code]precision=double[/code] option.\n"
"Math done using the [float] type is not guaranteed to be exact and will often "
"result in small errors. You should usually use the [method "
"@GlobalScope.is_equal_approx] and [method @GlobalScope.is_zero_approx] "
"methods instead of [code]==[/code] to compare [float] values for equality."
msgstr ""
"Le type intégré [float] est un nombre à virgule flottante en double précision "
"de 64 bits, équivalent à [code]double[/code] en C++. Ce type a 14 chiffres "
"décimaux fiables de précision. La valeur maximale de [float] est d'environ "
"[code]1.79769e308[/code], et le minimum est d'environ [code]-1.79769e308[/"
"code].\n"
"Beaucoup de méthodes et de propriétés dans le moteur utilisent des nombre à "
"virgule flottante de 32 bits, équivalents à [code skip-lint]float[/code] en C+"
"+, qui a 6 chiffres décimaux fiables de précision. Pour les structures de "
"données telles que [Vector2] et [Vector3], Godot utilise par défaut des "
"nombres flottants de 32 bits, mais il peut être modifié pour utiliser des "
"doubles de 64 bits si Godot est compilé avec l'option [code]précision=double[/"
"code].\n"
"Les mathématiques effectuées en utilisant le type [float] ne sont pas "
"garanties d'être exactes et entraîneront souvent de petites erreurs. Vous "
"devriez généralement utiliser les méthodes [method "
"@GlobalScope.is_equal_approx] et [method @GlobalScope.is_zero_approx] au lieu "
"de [code]==[/code] pour comparer les valeurs [float] pour l'égalité."

msgid "Wikipedia: Double-precision floating-point format"
msgstr "Wikipédia : Le format des nombres flottants à double précision"

msgid "Wikipedia: Single-precision floating-point format"
msgstr "Wikipédia : Le format des nombres flottants à simple précision"

msgid "Constructs a default-initialized [float] set to [code]0.0[/code]."
msgstr "Construit un [float] initialisé par défaut, à [code]0.0[/code]."

msgid "Constructs a [float] as a copy of the given [float]."
msgstr "Construit un [float] en tant que copie du [float] donné."

msgid ""
"Converts a [String] to a [float], following the same rules as [method "
"String.to_float]."
msgstr ""
"Convertit un [String] en un [float], en suivant les mêmes règles que [method "
"String.to_float]."

msgid ""
"Cast a [bool] value to a floating-point value, [code]float(true)[/code] will "
"be equal to 1.0 and [code]float(false)[/code] will be equal to 0.0."
msgstr ""
"Transforme un [bool] en flottant, [code]float(true)[/code] sera égal à 1.0 et "
"[code]float(false)[/code] à 0.0."

msgid ""
"Cast an [int] value to a floating-point value, [code]float(1)[/code] will be "
"equal to [code]1.0[/code]."
msgstr ""
"Cast une valeur [int] en un flottant, [code]float(1)[/code] sera égale à "
"[code]1.0[/code]."

msgid ""
"Returns [code]true[/code] if two floats are different from each other.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si deux flottant sont différents l'un de l'autre\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Ainsi, les résultats de cet opérateur peuvent ne pas être précis "
"quand des NaNs sont présents."

msgid ""
"Returns [code]true[/code] if the integer has different value than the float."
msgstr ""
"Renvoie [code]true[/code] si l'entier a une valeur différente de celle du "
"flottant."

msgid ""
"Multiplies each component of the [Color], including the alpha, by the given "
"[float].\n"
"[codeblock]\n"
"print(1.5 * Color(0.5, 0.5, 0.5)) # Prints (0.75, 0.75, 0.75, 1.5)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante de la couleur [Color], y compris l'alpha, par le "
"flottant [float] donné.\n"
"[codeblock]\n"
"print(1.5 * Color(0.5, 0.5, 0.5)) # Affiche (0.75, 0.75, 0.75, 1.5)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Quaternion] by the given [float]. This "
"operation is not meaningful on its own, but it can be used as a part of a "
"larger expression."
msgstr ""
"Multiplie chaque composante du [Quaternion] par le flottant [float] donné. "
"Cette opération ne veut rien dire seule, mais peut-être utilisée comme partie "
"d'une plus grande expression."

msgid ""
"Multiplies each component of the [Vector2] by the given [float].\n"
"[codeblock]\n"
"print(2.5 * Vector2(1, 3)) # Prints (2.5, 7.5)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector2] par le flottant [float] donné.\n"
"[codeblock]\n"
"print(2.5 * Vector2(1, 3)) # Affiche (2.5, 7.5)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector2i] by the given [float]. Returns a "
"[Vector2].\n"
"[codeblock]\n"
"print(0.9 * Vector2i(10, 15)) # Prints (9.0, 13.5)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector2i] par le flottant [float] donné. "
"Renvoie un [Vector2].\n"
"[codeblock]\n"
"print(0.9 * Vector2i(10, 15)) # Affiche (9.0, 13.5)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector3] by the given [float]."
msgstr "Multiplie chaque composante du [Vector3] par le flottant [float] donné."

msgid ""
"Multiplies each component of the [Vector3i] by the given [float]. Returns a "
"[Vector3].\n"
"[codeblock]\n"
"print(0.9 * Vector3i(10, 15, 20)) # Prints (9.0, 13.5, 18.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector3i] par le flottant [float] donné. "
"Renvoie un [Vector3].\n"
"[codeblock]\n"
"print(0.9 * Vector3i(10, 15, 20)) # Affiche (9.0, 13.5, 18.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector4] by the given [float]."
msgstr "Multiplie chaque composante du [Vector4] par le flottant [float] donné."

msgid ""
"Multiplies each component of the [Vector4i] by the given [float]. Returns a "
"[Vector4].\n"
"[codeblock]\n"
"print(0.9 * Vector4i(10, 15, 20, -10)) # Prints (9.0, 13.5, 18.0, -9.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector4i] par le flottant [float] donné. "
"Renvoie un [Vector4].\n"
"[codeblock]\n"
"print(0.9 * Vector4i(10, 15, 20, -10)) # Affiche (9.0, 13.5, 18.0, -9.0)\n"
"[/codeblock]"

msgid "Multiplies two [float]s."
msgstr "Multiplie deux [float]."

msgid "Multiplies a [float] and an [int]. The result is a [float]."
msgstr "Multiplie un [float] et un [int]. Le résultat est un [float]."

msgid ""
"Raises a [float] to a power of a [float].\n"
"[codeblock]\n"
"print(39.0625**0.25) # 2.5\n"
"[/codeblock]"
msgstr ""
"Élève un [float] à la puissance d'un [float].\n"
"[codeblock]\n"
"print(39.0625**0.25) # 2.5\n"
"[/codeblock]"

msgid ""
"Raises a [float] to a power of an [int]. The result is a [float].\n"
"[codeblock]\n"
"print(0.9**3) # 0.729\n"
"[/codeblock]"
msgstr ""
"Élève un [float] à la puissance d'un [int]. Le résultat est un [float].\n"
"[codeblock]\n"
"print(0,9**3) # 0,729\n"
"[/codeblock]"

msgid "Adds two floats."
msgstr "Additionne deux flottants."

msgid "Adds a [float] and an [int]. The result is a [float]."
msgstr "Additionne un [float] et un [int]. Le résultat est un [float]."

msgid "Subtracts a float from a float."
msgstr "Soustrait un flottant d'un autre flottant."

msgid "Subtracts an [int] from a [float]. The result is a [float]."
msgstr "Soustrait un [int] d'un [float]. Le résultat est un [float]."

msgid "Divides two floats."
msgstr "Divise deux flottants."

msgid "Divides a [float] by an [int]. The result is a [float]."
msgstr "Divise un [float] par un [int]. Le résultat est un [float]."

msgid ""
"Returns [code]true[/code] if the left float is less than the right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si le flottant de gauche est inférieur à celui de "
"droite.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Ainsi, les résultats de cet opérateur peuvent ne pas être précis "
"quand des NaNs sont présents."

msgid "Returns [code]true[/code] if this [float] is less than the given [int]."
msgstr "Renvoie [code]true[/code] si ce [float] est inférieur au [int] donné."

msgid ""
"Returns [code]true[/code] if the left float is less than or equal to the "
"right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si le flottant de gauche est inférieur ou égal à "
"celui de droite.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Ainsi, les résultats de cet opérateur peuvent ne pas être précis "
"quand des NaNs sont présents."

msgid ""
"Returns [code]true[/code] if this [float] is less than or equal to the given "
"[int]."
msgstr ""
"Renvoie [code]true[/code] si ce [float] est inférieur ou égal au [int] donné."

msgid ""
"Returns [code]true[/code] if both floats are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"@GlobalScope.is_equal_approx] or [method @GlobalScope.is_zero_approx] "
"instead, which are more reliable.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si les deux flottants sont exactement égaux.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method @GlobalScope.is_equal_approx] ou [method "
"@GlobalScope.is_zero_approx] à la place, qui sont plus fiables.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Ainsi, les résultats de cet opérateur peuvent ne pas être précis "
"quand des NaNs sont présents."

msgid "Returns [code]true[/code] if the [float] and the given [int] are equal."
msgstr "Renvoie [code]true[/code] si le [float] et le [int] donné sont égaux."

msgid ""
"Returns [code]true[/code] if the left float is greater than the right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si le flottant de gauche est supérieur à celui de "
"droite.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Ainsi, les résultats de cet opérateur peuvent ne pas être précis "
"quand des NaNs sont présents."

msgid ""
"Returns [code]true[/code] if this [float] is greater than the given [int]."
msgstr "Renvoie [code]true[/code] si ce [float] est supérieur au [int] donné."

msgid ""
"Returns [code]true[/code] if the left float is greater than or equal to the "
"right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si le flottant gauche est supérieur ou égal à celui "
"de droite.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Ainsi, les résultats de cet opérateur peuvent ne pas être précis "
"quand des NaNs sont présents."

msgid ""
"Returns [code]true[/code] if this [float] is greater than or equal to the "
"given [int]."
msgstr ""
"Renvoie [code]true[/code] si ce [float] est supérieur ou égal au [int] donné."

msgid ""
"Returns the negative value of the [float]. If positive, turns the number "
"negative. If negative, turns the number positive. With floats, the number "
"zero can be either positive or negative."
msgstr ""
"Renvoie la valeur négative du [float]. Si positif, rend le nombre négatif. Si "
"négatif, rend le nombre positif. Avec des flottants, le nombre zéro peut être "
"positif ou négatif."

msgid "Returns the current line count."
msgstr "Renvoie le numéro de la ligne actuelle."

msgid ""
"If [code]true[/code], reverses fill direction. Horizontal [FlowContainer]s "
"will fill rows bottom to top, vertical [FlowContainer]s will fill columns "
"right to left.\n"
"When using a vertical [FlowContainer] with a right to left [member "
"Control.layout_direction], columns will fill left to right instead."
msgstr ""
"Si [code]true[/code], inverse la direction de remplissage. Les "
"[FlowContainer]s horizontaux rempliront les lignes de bas en haut, les "
"[FlowContainer]s verticaux rempliront les colonnes de droite à gauche.\n"
"Lors de l'utilisation d'un [FlowContainer] vertical avec une [member "
"Control.layout_direction] de droite à gauche, les colonnes se rempliront à "
"gauche à droite à la place."

msgid ""
"If [code]true[/code], the [FlowContainer] will arrange its children "
"vertically, rather than horizontally.\n"
"Can't be changed when using [HFlowContainer] and [VFlowContainer]."
msgstr ""
"Si [code]true[/code], le [FlowContainer] arrangera ses enfants verticalement, "
"plutôt que horizontalement.\n"
"Ne peut être changé lors de l'utilisation de [HFlowContainer] et "
"[VFlowContainer]."

msgid "The horizontal separation of child nodes."
msgstr "La séparation horizontale des nœuds enfants."

msgid "The vertical separation of child nodes."
msgstr "La séparation verticale des nœuds enfants."

msgid ""
"A material that controls how volumetric fog is rendered, to be assigned to a "
"[FogVolume]."
msgstr ""
"Un matériau qui contrôle la façon dont le brouillard volumétrique est rendu, "
"à attribuer à un [FogVolume]."

msgid ""
"A [Material] resource that can be used by [FogVolume]s to draw volumetric "
"effects.\n"
"If you need more advanced effects, use a custom [url=$DOCS_URL/tutorials/"
"shaders/shader_reference/fog_shader.html]fog shader[/url]."
msgstr ""
"Une ressource [Material] qui peut être utilisée par des [FogVolume]s pour "
"dessiner des effets volumétriques.\n"
"Si vous avez besoin d'effets plus avancés, utilisez un [url=$DOCS_URL/"
"tutorials/shaders/shader_reference/fog_shader.html]shader de brouillard[/url] "
"personnalisé."

msgid ""
"The single-scattering [Color] of the [FogVolume]. Internally, [member albedo] "
"is converted into single-scattering, which is additively blended with other "
"[FogVolume]s and the [member Environment.volumetric_fog_albedo]."
msgstr ""
"La [Color] de la diffusion unique du [FogVolume]. En interne, [member albedo] "
"est converti en diffusion unique, qui est mélangé additivement avec d'autres "
"[FogVolume]s et [member Environment.volumetric_fog_albedo]."

msgid ""
"The density of the [FogVolume]. Denser objects are more opaque, but may "
"suffer from under-sampling artifacts that look like stripes. Negative values "
"can be used to subtract fog from other [FogVolume]s or global volumetric "
"fog.\n"
"[b]Note:[/b] Due to limited precision, [member density] values between "
"[code]-0.001[/code] and [code]0.001[/code] (exclusive) act like [code]0.0[/"
"code]. This does not apply to [member Environment.volumetric_fog_density]."
msgstr ""
"La densité du [FogVolume]. Les objets plus denses sont plus opaques, mais "
"peuvent souffrir d’artefacts de sous-échantillonnage qui ressemblent à des "
"rayures. Les valeurs négatives peuvent être utilisées pour soustraire le "
"brouillard d'autres [FogVolume] ou le brouillard volumétrique global.\n"
"[b]Not e:[/b] En raison d'une précision limitée, les valeurs de [member "
"density] entre [code]-0.001[/code] et [code]0.001[/code] (exclusive) agissent "
"comme [code]0.0[/code]. Cela ne s'applique pas à [member "
"Environment.volumetric_fog_density]."

msgid ""
"The 3D texture that is used to scale the [member density] of the [FogVolume]. "
"This can be used to vary fog density within the [FogVolume] with any kind of "
"static pattern. For animated effects, consider using a custom [url=$DOCS_URL/"
"tutorials/shaders/shader_reference/fog_shader.html]fog shader[/url]."
msgstr ""
"La texture 3D utilisée pour l'échelle de la densité [member density] du "
"[FogVolume]. Cela peut être utilisé pour faire varier la densité du "
"brouillard dans le [FogVolume] avec toute sorte de motif statique. Pour des "
"effets animés, envisagez d'utiliser un [url=$DOCS_URL/tutorials/shaders/"
"shader_reference/fog_shader.html]shader de brouillard[/url] personnalisé."

msgid ""
"The hardness of the edges of the [FogVolume]. A higher value will result in "
"softer edges, while a lower value will result in harder edges."
msgstr ""
"La dureté des bords du [FogVolume]. Une valeur plus élevée résultera en des "
"bords plus lisses, tandis qu'une valeur plus basse résultera en des bords "
"plus nets."

msgid ""
"The [Color] of the light emitted by the [FogVolume]. Emitted light will not "
"cast light or shadows on other objects, but can be useful for modulating the "
"[Color] of the [FogVolume] independently from light sources."
msgstr ""
"Le [Color] de la lumière émise par le [FogVolume]. La lumière émise ne "
"projettera pas de lumière ou d'ombres sur d'autres objets, mais peut être "
"utile pour moduler la [Color] du [FogVolume] indépendamment des sources de "
"lumière."

msgid ""
"The rate by which the height-based fog decreases in density as height "
"increases in world space. A high falloff will result in a sharp transition, "
"while a low falloff will result in a smoother transition. A value of "
"[code]0.0[/code] results in uniform-density fog. The height threshold is "
"determined by the height of the associated [FogVolume]."
msgstr ""
"Le taux par lequel le brouillard basé sur la hauteur diminue de densité à "
"mesure que la hauteur augmente dans le repère du monde. Une forte diminution "
"résultera en une transition brute, tandis qu'une faible diminution résultera "
"en une transition plus fluide. Une valeur de [code]0.0[/code] résulte en un "
"brouillard à densité uniforme. Le seuil de hauteur est déterminé par la "
"hauteur du [FogVolume] associé."

msgid ""
"A region that contributes to the default volumetric fog from the world "
"environment."
msgstr ""
"Une région qui contribue au brouillard volumétrique par défaut de "
"l'environnement du monde."

msgid ""
"[FogVolume]s are used to add localized fog into the global volumetric fog "
"effect. [FogVolume]s can also remove volumetric fog from specific areas if "
"using a [FogMaterial] with a negative [member FogMaterial.density].\n"
"Performance of [FogVolume]s is directly related to their relative size on the "
"screen and the complexity of their attached [FogMaterial]. It is best to keep "
"[FogVolume]s relatively small and simple where possible.\n"
"[b]Note:[/b] [FogVolume]s only have a visible effect if [member "
"Environment.volumetric_fog_enabled] is [code]true[/code]. If you don't want "
"fog to be globally visible (but only within [FogVolume] nodes), set [member "
"Environment.volumetric_fog_density] to [code]0.0[/code]."
msgstr ""
"Les [FogVolume]s sont utilisés pour ajouter du brouillard localisé dans "
"l'effet de brouillard volumétrique global. Les [FogVolume]s peuvent également "
"enlever du brouillard volumétrique de certaines zones si vous utilisez un "
"[FogMaterial] avec une densité [member FogMaterial.density] négative.\n"
"La performance de [FogVolume] est directement liée à leur taille relative sur "
"l'écran et à la complexité de leur [FogMaterial] attaché. Il est préférable "
"de garder les [FogVolume]s relativement petits et simples si possible.\n"
"[b]Note :[/b] Les [FogVolume]s ont un effet visible seulement si [member "
"Environment.volumetric_fog_enabled] vaut [code]true[/code]. Si vous ne voulez "
"pas que le brouillard soit visible à l'échelle globale (mais seulement dans "
"des nœuds [FogVolume]), définissez [member "
"Environment.volumetric_fog_density] à [code]0.0[/code]."

msgid "Volumetric fog and fog volumes"
msgstr "Brouillard volumétrique et volumes de brouillard"

msgid ""
"The [Material] used by the [FogVolume]. Can be either a built-in "
"[FogMaterial] or a custom [ShaderMaterial]."
msgstr ""
"Le [Material] utilisé par le [FogVolume]. Peut être soit un [FogMaterial] "
"intégré soit un [ShaderMaterial] personnalisé."

msgid ""
"The shape of the [FogVolume]. This can be set to either [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_WORLD]."
msgstr ""
"La forme du [FogVolume]. Ceci peut être définit à [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX] ou [constant "
"RenderingServer.FOG_VOLUME_SHAPE_WORLD]."

msgid ""
"The size of the [FogVolume] when [member shape] is [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX].\n"
"[b]Note:[/b] Thin fog volumes may appear to flicker when the camera moves or "
"rotates. This can be alleviated by increasing [member "
"ProjectSettings.rendering/environment/volumetric_fog/volume_depth] (at a "
"performance cost) or by decreasing [member Environment.volumetric_fog_length] "
"(at no performance cost, but at the cost of lower fog range). Alternatively, "
"the [FogVolume] can be made thicker and use a lower density in the [member "
"material].\n"
"[b]Note:[/b] If [member shape] is [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], the cone/cylinder will be "
"adjusted to fit within the size. Non-uniform scaling of cone/cylinder shapes "
"via the [member size] property is not supported, but you can scale the "
"[FogVolume] node instead."
msgstr ""
"La taille du [FogVolume] lorsque [member shape] vaut [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER] ou [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX].\n"
"[b]Note :[/b] Des volumes de brouillard minces peuvent sembler clignoter "
"lorsque la caméra se déplace ou tourne. Cela peut être atténué en augmentant "
"[member ProjectSettings.rendering/environment/volumetric_fog/volume_depth] "
"(avec un coût sur les performances) ou en diminuant [member "
"Environment.volumetric_fog_length] (sans coût sur les performances, mais au "
"coût d'une portée du brouillard inférieure). Sinon, le [FogVolume] peut rendu "
"plus épais et utiliser une densité inférieure dans le matériau [member "
"material].\n"
"[b]Note :[/b] Si [member shape] vaut [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE] ou [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], le cône/cylindre sera ajusté pour "
"correspondre à la taille. Une échelle non uniforme des formes de cônes/"
"cylindres via la propriété [member size] n'est pas supportée, mais vous "
"pouvez à la place re-dimensionner le nœud [FogVolume]."

msgid "A container that can be expanded/collapsed."
msgstr "Un conteneur qui peut être étendu/replié."

msgid ""
"If [code]true[/code], the container will becomes folded and will hide all its "
"children."
msgstr ""
"Si [code]true[/code], le conteneur devient replié et cachera tous ses enfants."

msgid ""
"Language code used for text shaping algorithms. If left empty, current locale "
"is used instead."
msgstr ""
"Code de langue utilisé pour les algorithmes de \"text shaping\". Si laissé "
"vide, la langue locale actuelle est utilisée à la place."

msgid "The container's title text."
msgstr "Le texte du titre du conteneur."

msgid "Title's horizontal text alignment."
msgstr "L'alignement horizontal du texte du titre."

msgid "Title's position."
msgstr "Position du titre."

msgid "Title text writing direction."
msgstr "Direction d'écriture du texte du titre."

msgid ""
"Defines the behavior of the title when the text is longer than the available "
"space."
msgstr ""
"Définit le comportement du titre lorsque le texte est plus long que l'espace "
"disponible."

msgid "Emitted when the container is folded/expanded."
msgstr "Émis lorsque le conteneur est replié/étendu."

msgid "Makes the title appear at the top of the container."
msgstr "Fait que le titre apparaît en haut du conteneur."

msgid ""
"Makes the title appear at the bottom of the container. Also makes all "
"StyleBoxes flipped vertically."
msgstr ""
"Fait que le titre apparaît en bas du conteneur. Inverse aussi verticalement "
"toutes les StyleBoxes."

msgid "The title's font color when collapsed."
msgstr "La couleur de police du titre lorsqu'il est replié."

msgid "The title's font color when expanded."
msgstr "La couleur de police du titre lorsqu'il est étendu."

msgid "The title's font outline color."
msgstr "La couleur du contour de la police du titre."

msgid "The title's font hover color."
msgstr "La couleur de survolement de la police du titre."

msgid ""
"The horizontal separation between the title's icon and text, and between "
"title bar controls."
msgstr ""
"La séparation horizontale entre l'icône et le texte du titre, et entre les "
"contrôles de la barre du titre."

msgid "The title's font outline size."
msgstr "La taille du contour de la police du titre."

msgid "The title's font."
msgstr "La police du titre."

msgid "The title's font size."
msgstr "La taille de police du titre."

msgid "The title's icon used when expanded."
msgstr "L'icône du titre utilisée lorsqu'il est étendu."

msgid "The title's icon used when expanded (for bottom title)."
msgstr "L'icône du titre utilisée lorsqu'il est étendu (pour un titre en bas)."

msgid "The title's icon used when folded (for left-to-right layouts)."
msgstr ""
"L'icône du titre utilisée lorsqu'il est replié (pour une mise en page de "
"gauche-à-droite)."

msgid "The title's icon used when collapsed (for right-to-left layouts)."
msgstr ""
"L'icône du titre utilisée lorsqu'il est replié (pour une mise en page de "
"droite-à-gauche)."

msgid "Default background for the [FoldableContainer]."
msgstr "Arrière-plan par défaut pour le [FoldableContainer]."

msgid ""
"If [code]true[/code], it is possible to fold all containers in this "
"FoldableGroup."
msgstr ""
"Si [code]true[/code], il est possible de replier tous les conteneurs dans ce "
"FoldableGroup."

msgid "Returns font family name."
msgstr "Renvoie le nom de la famille de police."

msgid "Returns font style flags."
msgstr "Renvoie les drapeaux de style de police."

msgid "Returns font style name."
msgstr "Renvoie le nom du style de police."

msgid "Returns list of OpenType features supported by font."
msgstr ""
"Renvoie la liste des fonctionnalités OpenTypes supportées par cette police."

msgid "Returns glyph size."
msgstr "Renvoie la taille du glyphe."

msgid ""
"Sets the spacing for [param spacing] to [param value] in pixels (not relative "
"to the font size)."
msgstr ""
"Définit l'espacement dans [param spacing] à la valeur [param value] en pixels "
"(non relatif à la taille de police)."

msgid "Sets glyph size."
msgstr "Définit la taille du glyphe."

msgid "Adds override for [method Font.is_language_supported]."
msgstr "Ajoute une redéfinition pour [method Font.is_language_supported]."

msgid "Adds override for [method Font.is_script_supported]."
msgstr "Ajoute une redéfinition pour [method Font.is_script_supported]."

msgid "Font anti-aliasing mode."
msgstr "Mode d'anticrénelage de la police."

msgid "Font family name."
msgstr "Nom de la famille de police."

msgid "Font style name."
msgstr "Nom du style de police."

msgid "GDExtension overview"
msgstr "Vue d'ensemble GDExtension"

msgid "GDExtension example in C++"
msgstr "Exemple de GDExtension en C++"

msgid "The extension has already been loaded."
msgstr "L'extension a déjà été chargée."

msgid "The extension has not been loaded."
msgstr "L'extension n'a pas été chargée."

msgid "A script implemented in the GDScript programming language."
msgstr "Un script implémenté dans le langage de programmation GDScript."

msgid "GDScript documentation index"
msgstr "Index de la documentation GDScript"

msgid ""
"A physics joint that allows for complex movement and rotation between two 3D "
"physics bodies."
msgstr ""
"Une liaison physique qui permet un mouvement et une rotation complexe entre "
"deux corps physiques 3D."

msgid ""
"The [Generic6DOFJoint3D] (6 Degrees Of Freedom) joint allows for implementing "
"custom types of joints by locking the rotation and translation of certain "
"axes.\n"
"The first 3 DOF represent the linear motion of the physics bodies and the "
"last 3 DOF represent the angular motion of the physics bodies. Each axis can "
"be either locked, or limited."
msgstr ""
"La liaison [Generic6DOFJoint3D](6 Degrees Of Freedom, litt. 6 degrés de "
"liberté) permet d'implémenter des types personnalisés de liaisons en "
"verrouillant la rotation et la translation de certains axes.\n"
"Les 3 premiers degrés de liberté représentent le mouvement linéaire des corps "
"physiques et les 3 derniers degrés représentent le mouvement angulaire des "
"corps physiques. Chaque axe peut être verrouillé ou limité."

msgid ""
"The amount of rotational damping across the X axis.\n"
"The lower, the longer an impulse from one side takes to travel to the other "
"side."
msgstr ""
"La quantité d'amortissement de la rotation sur l'axe X.\n"
"Plus bas elle est, plus une impulsion d'un côté prend de temps pour se rendre "
"de l'autre côté."

msgid "If [code]true[/code], rotation across the X axis is limited."
msgstr "Si [code]true[/code], la rotation autour de l'axe X est limité."

msgid ""
"When rotating across the X axis, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"Lors de la rotation sur l'axe X, ce facteur de tolérance d'erreur définit à "
"quelle point la correction est ralentie. Plus il est bas, plus elle est lente."

msgid ""
"The maximum amount of force that can occur, when rotating around the X axis."
msgstr ""
"La quantité maximale de force qui peut être appliquée, lors de la rotation "
"autour de l'axe X."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the X axis."
msgstr ""
"La rotation minimale dans la direction négative pour se détacher et tourner "
"autour de l'axe X."

msgid ""
"The amount of rotational restitution across the X axis. The lower, the more "
"restitution occurs."
msgstr ""
"La quantité de restitution de la rotation sur l'axe X. Plus elle est faible, "
"plus la restitution se produit."

msgid "The speed of all rotations across the X axis."
msgstr "La vitesse de toutes les rotations à travers l’axe X."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the X axis."
msgstr ""
"La rotation minimale dans la direction positive pour se détacher et tourner "
"autour de l'axe X."

msgid ""
"The amount of rotational damping across the Y axis. The lower, the more "
"damping occurs."
msgstr ""
"La quantité d'amortissement de rotation sur l'axe Y. Plus elle est basse, "
"plus l'amortissement se produit."

msgid "If [code]true[/code], rotation across the Y axis is limited."
msgstr "Si [code]true[/code], la rotation à travers l’axe Y est limitée."

msgid ""
"When rotating across the Y axis, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"Lors de la rotation sur l'axe Y, ce facteur de tolérance d'erreur définit à "
"quelle point la correction est ralentie. Plus il est bas, plus elle est lente."

msgid ""
"The maximum amount of force that can occur, when rotating around the Y axis."
msgstr ""
"La quantité maximale de force qui peut être appliquée, lors de la rotation "
"autour de l'axe Y."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the Y axis."
msgstr ""
"La rotation minimale dans la direction négative pour se détacher et tourner "
"autour de l'axe Y."

msgid ""
"The amount of rotational restitution across the Y axis. The lower, the more "
"restitution occurs."
msgstr ""
"La quantité de restitution de la rotation sur l'axe Y. Plus elle est faible, "
"plus la restitution se produit."

msgid "The speed of all rotations across the Y axis."
msgstr "La vitesse de toutes les rotations sur l'axe Y."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the Y axis."
msgstr ""
"La rotation minimale dans la direction positive pour se détacher et tourner "
"autour de l'axe Y."

msgid ""
"The amount of rotational damping across the Z axis. The lower, the more "
"damping occurs."
msgstr ""
"La quantité d'amortissement de rotation sur l'axe Z. Plus elle est basse, "
"plus l'amortissement se produit."

msgid "If [code]true[/code], rotation across the Z axis is limited."
msgstr "Si [code]true[/code], la rotation à travers l’axe Z est limitée."

msgid ""
"When rotating across the Z axis, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"Lors de la rotation sur l'axe Y, ce facteur de tolérance d'erreur définit à "
"quelle point la correction est ralentie. Plus il est bas, plus elle est lente."

msgid ""
"The maximum amount of force that can occur, when rotating around the Z axis."
msgstr ""
"La quantité maximale de force qui peut être appliquée, lors de la rotation "
"autour de l'axe Z."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the Z axis."
msgstr ""
"La rotation minimale dans la direction négative pour se détacher et tourner "
"autour de l'axe Z."

msgid ""
"The amount of rotational restitution across the Z axis. The lower, the more "
"restitution occurs."
msgstr ""
"La quantité de restitution de la rotation sur l'axe Z. Plus elle est faible, "
"plus la restitution se produit."

msgid "The speed of all rotations across the Z axis."
msgstr "La vitesse de toutes les rotations à travers l’axe Z."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the Z axis."
msgstr ""
"La rotation minimale dans la direction positive pour se détacher et tourner "
"autour de l'axe Z."

msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
msgstr "Si [code]true[/code], la rotation du moteur selon l'axe X est activée."

msgid "Maximum acceleration for the motor at the X axis."
msgstr "L'accélération maximale du moteur selon l'axe X."

msgid "Target speed for the motor at the X axis."
msgstr "La vitesse cible du moteur selon l'axe X."

msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
msgstr "Si [code]true[/code], la rotation du moteur selon l'axe Y est activée."

msgid "Maximum acceleration for the motor at the Y axis."
msgstr "L'accélération maximale du moteur selon l'axe Y."

msgid "Target speed for the motor at the Y axis."
msgstr "La vitesse cible du moteur selon l'axe Y."

msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
msgstr "Si [code]true[/code], la rotation du moteur selon l'axe Z est activée."

msgid "Maximum acceleration for the motor at the Z axis."
msgstr "L'accélération maximale du moteur selon l'axe Z."

msgid "Target speed for the motor at the Z axis."
msgstr "La vitesse cible du moteur selon l'axe Z."

msgid "The amount of damping that happens at the X motion."
msgstr "La quantité d'amortissement pour les déplacements le long de l'axe X."

msgid "If [code]true[/code], the linear motion across the X axis is limited."
msgstr "Si [code]true[/code], le mouvement linéaire sur l'axe X est limité."

msgid "The minimum difference between the pivot points' X axis."
msgstr "La différence minimale entre l'axe X des points de pivot."

msgid ""
"The amount of restitution on the X axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
"La quantité restituée pour les mouvements selon l'axe X. Plus basse est la "
"valeur, plus d'inertie sera perdue."

msgid ""
"A factor applied to the movement across the X axis. The lower, the slower the "
"movement."
msgstr ""
"Un facteur appliqué au mouvement sur l'axe X. Plus il est bas, plus le "
"mouvement est lent."

msgid "The maximum difference between the pivot points' X axis."
msgstr "La différence maximale entre l'axe X des points de pivot."

msgid "The amount of damping that happens at the Y motion."
msgstr "La quantité d'amortissement pour les déplacements le long de l'axe Y."

msgid "If [code]true[/code], the linear motion across the Y axis is limited."
msgstr "Si [code]true[/code], le mouvement linéaire selon l'axe Y est limité."

msgid "The minimum difference between the pivot points' Y axis."
msgstr "La différence minimale entre l'axe Y des points de pivot."

msgid ""
"The amount of restitution on the Y axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
"La quantité restituée pour les mouvements selon l'axe Y. Plus basse est la "
"valeur, plus d'inertie sera perdue."

msgid ""
"A factor applied to the movement across the Y axis. The lower, the slower the "
"movement."
msgstr ""
"Un facteur appliqué au mouvement à travers l’axe Y. Plus c'est bas, plus le "
"mouvement est lent."

msgid "The maximum difference between the pivot points' Y axis."
msgstr "La différence maximale entre l'axe Y des points de pivot."

msgid "The amount of damping that happens at the Z motion."
msgstr "La quantité d'amortissement pour les déplacements le long de l'axe Z."

msgid "If [code]true[/code], the linear motion across the Z axis is limited."
msgstr ""
"Si [code]true[/code], le mouvement linéaire à travers l’axe Z est limité."

msgid "The minimum difference between the pivot points' Z axis."
msgstr "La différence minimale entre l’axe Z des points de pivot."

msgid ""
"The amount of restitution on the Z axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
"Le montant de la restitution sur le mouvement de l’axe Z. Plus c'est bas, "
"plus l’élan se perd."

msgid ""
"A factor applied to the movement across the Z axis. The lower, the slower the "
"movement."
msgstr ""
"Un facteur appliqué au mouvement à travers l’axe Z. Plus c'est bas, plus le "
"mouvement est lent."

msgid "The maximum difference between the pivot points' Z axis."
msgstr "La différence maximale entre l’axe Z des points de pivot."

msgid ""
"If [code]true[/code], then there is a linear motor on the X axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
"Si [code]true[/code], il y a un moteur linéaire sur l'axe X. Il tentera "
"d'atteindre la vitesse cible tout en restant dans les limites de la force."

msgid ""
"The maximum force the linear motor can apply on the X axis while trying to "
"reach the target velocity."
msgstr ""
"La force maximale que le moteur linéaire peut appliquer sur l'axe X lorsqu'il "
"essaye d'atteindre la vitesse cible."

msgid "The speed that the linear motor will attempt to reach on the X axis."
msgstr "La vitesse que le moteur linéaire essayera d'atteindre selon l'axe X."

msgid ""
"If [code]true[/code], then there is a linear motor on the Y axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
"Si [code]true[/code], il y a un moteur linéaire sur l'axe Y. Il tentera "
"d'atteindre la vitesse cible tout en restant dans les limites de la force."

msgid ""
"The maximum force the linear motor can apply on the Y axis while trying to "
"reach the target velocity."
msgstr ""
"La force maximale que le moteur linéaire peut appliquer sur l'axe Y lorsqu'il "
"essaye d'atteindre la vitesse cible."

msgid "The speed that the linear motor will attempt to reach on the Y axis."
msgstr "La vitesse que le moteur linéaire essayera d'atteindre selon l'axe Y."

msgid ""
"If [code]true[/code], then there is a linear motor on the Z axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
"Si [code]true[/code], il y a un moteur linéaire sur l'axe Z. Il tentera "
"d'atteindre la vitesse cible tout en restant dans les limites de la force."

msgid ""
"The maximum force the linear motor can apply on the Z axis while trying to "
"reach the target velocity."
msgstr ""
"La force maximale que le moteur linéaire peut appliquer sur l'axe Z lorsqu'il "
"essaye d'atteindre la vitesse cible."

msgid "The speed that the linear motor will attempt to reach on the Z axis."
msgstr "La vitesse que le moteur linéaire essayera d'atteindre selon l'axe Z."

msgid "The minimum difference between the pivot points' axes."
msgstr "La différence minimale entre les axes des points de pivot."

msgid "The maximum difference between the pivot points' axes."
msgstr "La différence maximale entre les axes des points de pivot."

msgid ""
"A factor applied to the movement across the axes. The lower, the slower the "
"movement."
msgstr ""
"Un facteur appliqué au mouvement sur tous les axes. Plus il est bas, plus le "
"mouvement est lent."

msgid ""
"The amount of restitution on the axes' movement. The lower, the more momentum "
"gets lost."
msgstr ""
"Le montant de la restitution sur le mouvement des axes. Plus il est bas, plus "
"l'élan se perd."

msgid "The amount of damping that happens at the linear motion across the axes."
msgstr ""
"La quantité d'amortissement qui se produit sur le mouvement linéaire de tous "
"les axes."

msgid "The velocity the linear motor will try to reach."
msgstr "Le vitesse linéaire que le moteur essayera d'atteindre."

msgid ""
"The maximum force the linear motor will apply while trying to reach the "
"velocity target."
msgstr ""
"La force maximale que le moteur linéaire appliquera lorsqu'il essayera "
"d'atteindre la vitesse cible."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the axes."
msgstr ""
"La rotation minimale dans la direction négative pour se détacher et tourner "
"autour des axes."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the axes."
msgstr ""
"La rotation minimale dans la direction positive pour se détacher et tourner "
"autour des axes."

msgid "The speed of all rotations across the axes."
msgstr "La vitesse de toutes les rotations sur les axes."

msgid ""
"The amount of rotational damping across the axes. The lower, the more damping "
"occurs."
msgstr ""
"La quantité d'amortissement de rotation sur les axes. Plus elle est basse, "
"plus l'amortissement se produit."

msgid ""
"The amount of rotational restitution across the axes. The lower, the more "
"restitution occurs."
msgstr ""
"La quantité de restitution de rotation sur les axes. Plus elle est faible, "
"plus la restitution se produit."

msgid ""
"The maximum amount of force that can occur, when rotating around the axes."
msgstr ""
"La force maximale qui peut se produire, lors de la rotation autour des axes."

msgid ""
"When rotating across the axes, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"Lors de la rotation autour des axes, ce facteur de tolérance d'erreur définit "
"de combien la correction est ralentie. Plus il est bas, plus elle est lent."

msgid "Target speed for the motor at the axes."
msgstr "Vitesse cible pour le moteur aux axes."

msgid "Maximum acceleration for the motor at the axes."
msgstr "Accélération maximale pour le moteur aux axes."

msgid "If enabled, linear motion is possible within the given limits."
msgstr "Si actif, le mouvement linéaire est possible dans les limites données."

msgid "If enabled, rotational motion is possible within the given limits."
msgstr ""
"Si actif, le mouvement de rotation est possible dans les limites données."

msgid "If enabled, there is a rotational motor across these axes."
msgstr "Si actif, il y a un moteur de rotation à travers ces axes."

msgid "If enabled, there is a linear motor across these axes."
msgstr "Si actif, il y a un moteur linéaire à travers ces axes."

msgid "Represents the size of the [enum Flag] enum."
msgstr "Représente la taille de l'énumération [enum Flag]."

msgid "Provides methods for some common 2D geometric operations."
msgstr ""
"Fournit des méthodes pour certaines opérations géométriques 2D communes."

msgid ""
"Provides a set of helper functions to create geometric shapes, compute "
"intersections between shapes, and process various other geometric operations "
"in 2D."
msgstr ""
"Fournit un ensemble de fonctions d'aide pour créer des formes géométriques, "
"calculer les intersections entre les formes et traiter diverses autres "
"opérations géométriques en 2D."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/"
"Bresenham%27s_line_algorithm]Bresenham line[/url] between the [param from] "
"and [param to] points. A Bresenham line is a series of pixels that draws a "
"line and is always 1-pixel thick on every row and column of the drawing "
"(never more, never less).\n"
"Example code to draw a line between two [Marker2D] nodes using a series of "
"[method CanvasItem.draw_rect] calls:\n"
"[codeblock]\n"
"func _draw():\n"
"\tfor pixel in Geometry2D.bresenham_line($MarkerA.position, "
"$MarkerB.position):\n"
"\t\tdraw_rect(Rect2(pixel, Vector2.ONE), Color.WHITE)\n"
"[/codeblock]"
msgstr ""
"Renvoie le [url=https://fr.m.wikipedia.org/wiki/"
"Algorithme_de_trac%C3%A9_de_segment_de_Bresenham]segment de Bresenham[/url] "
"entre les points [param from] et [param to]. Un segmenr Bresenham est une "
"série de pixels qui dessine un segment et est toujours de 1-pixel d'épaisseur "
"sur chaque ligne et colonne du dessin (ni plus, ni moins).\n"
"Exemple de code pour dessiner une ligne entre deux nœuds [Marker2D] utilisant "
"une série d'appels à [method CanvasItem.draw_rect] :\n"
"[codeblock]\n"
"func _draw():\n"
"\tfor pixel in Geometry2D.bresenham_line($MarkerA.position, "
"$MarkerB.position):\n"
"\t\tdraw_rect(Rect2(pixel, Vector2.ONE), Color.WHITE)\n"
"[/codeblock]"

msgid ""
"Clips [param polygon_a] against [param polygon_b] and returns an array of "
"clipped polygons. This performs [constant OPERATION_DIFFERENCE] between "
"polygons. Returns an empty array if [param polygon_b] completely overlaps "
"[param polygon_a].\n"
"If [param polygon_b] is enclosed by [param polygon_a], returns an outer "
"polygon (boundary) and inner polygon (hole) which could be distinguished by "
"calling [method is_polygon_clockwise]."
msgstr ""
"Découpe le [param polygon_a] avec le [param polygon_b] et renvoie une tableau "
"de polygones découpés. Cela effectue [constant OPERATION_DIFFERENCE] entre "
"les polygones. Renvoie un tableau vide si [param polygon_b] recouvre "
"complètement [param polygon_a].\n"
"Si [param polygon_b] est recouvert complément par [param polygon_a], renvoie "
"un polygone extérieur (délimitant) et un polygone intérieur (trou) qui "
"peuvent être distingués en appelant [method is_polygon_clockwise]."

msgid ""
"Clips [param polyline] against [param polygon] and returns an array of "
"clipped polylines. This performs [constant OPERATION_DIFFERENCE] between the "
"polyline and the polygon. This operation can be thought of as cutting a line "
"with a closed shape."
msgstr ""
"Découpe la polyligne [param polyline] avec le polygone [param polygon] et "
"renvoie un tableau de polylignes découpées. Cela effectue [constant "
"OPERATION_DIFFERENCE] entre la polyligne et le polygone. Cette opération peut "
"être pensée comme couper une ligne avec une forme fermée."

msgid ""
"Given an array of [Vector2]s, returns the convex hull as a list of points in "
"counterclockwise order. The last point is the same as the first one."
msgstr ""
"Selon un tableau de [Vector2]s donné, renvoie l'enveloppe convexe en tant que "
"liste de points dans le sens inverse des aiguilles d'une montre. Le dernier "
"point est le même que le premier."

msgid ""
"Decomposes the [param polygon] into multiple convex hulls and returns an "
"array of [PackedVector2Array]."
msgstr ""
"Décompose le [param polygon] en plusieurs enveloppes convexes et renvoie un "
"tableau de [PackedVector2Array]s."

msgid ""
"Mutually excludes common area defined by intersection of [param polygon_a] "
"and [param polygon_b] (see [method intersect_polygons]) and returns an array "
"of excluded polygons. This performs [constant OPERATION_XOR] between "
"polygons. In other words, returns all but common area between polygons.\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Exclut mutuellement la zone commune définie par l'intersection de [param "
"polygon_a] et [param polygon_b] (voir [method intersect_polygons]) et renvoie "
"un tableau de polygones exclus. Cela interprète [constant OPERATION_XOR] "
"entre les polygones. En d'autres termes, renvoie tout sauf la zone commune "
"entre les polygones.\n"
"L'opération peut se résulter en un polygone extérieur (bordure) et un "
"polygone intérieur (trou) produits qui pourraient être distingués en appelant "
"[method is_polygon_clockwise]."

msgid ""
"Returns the 2D point on the 2D segment ([param s1], [param s2]) that is "
"closest to [param point]. The returned point will always be inside the "
"specified segment."
msgstr ""
"Renvoie le point 2D sur le segment 2D ([param s1], [param s2]) qui est le "
"plus proche du [param point] donné. Le point renvoyé sera toujours dans le "
"segment spécifié."

msgid ""
"Returns the 2D point on the 2D line defined by ([param s1], [param s2]) that "
"is closest to [param point]. The returned point can be inside the segment "
"([param s1], [param s2]) or outside of it, i.e. somewhere on the line "
"extending from the segment."
msgstr ""
"Renvoie le point 2D sur la ligne 2D définie par ([param s1], [param s2]) qui "
"est le plus proche du [param point] donné. Le point renvoyé peut être à "
"l'intérieur du segment ([param s1], [param s2]) ou à l'extérieur, c'est-à-"
"dire quelque part sur la ligne s'étendant du segment."

msgid ""
"Given the two 2D segments ([param p1], [param q1]) and ([param p2], [param "
"q2]), finds those two points on the two segments that are closest to each "
"other. Returns a [PackedVector2Array] that contains this point on ([param "
"p1], [param q1]) as well the accompanying point on ([param p2], [param q2])."
msgstr ""
"À partir de deux segments 2D ([param p1], [param q1]) et ([param p2], [param "
"q2]), trouve les deux points sur chaque segment qui sont les plus proches "
"l'un de l'autre. Renvoie un [PackedVector2Array] qui contient le point sur "
"([param p1], [param q1]) ainsi que celui sur ([param p2], [param q2])."

msgid ""
"Intersects [param polygon_a] with [param polygon_b] and returns an array of "
"intersected polygons. This performs [constant OPERATION_INTERSECTION] between "
"polygons. In other words, returns common area shared by polygons. Returns an "
"empty array if no intersection occurs.\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Intersectes [param polygon_a] avec [param polygon_b] et renvoie un tableau "
"des polygones intersectés. Cela effectue entre les polygones [constant "
"OPERATION_INTERSECTION]. En d'autres termes, renvoie la zone commune partagée "
"par les polygones. Renvoie un tableau vide si aucune intersection ne se "
"produit.\n"
"L'opération peut se résulter en un polygone extérieur (bordure) et un "
"polygone intérieur (trou) produits qui pourraient être distingués en appelant "
"[method is_polygon_clockwise]."

msgid ""
"Intersects [param polyline] with [param polygon] and returns an array of "
"intersected polylines. This performs [constant OPERATION_INTERSECTION] "
"between the polyline and the polygon. This operation can be thought of as "
"chopping a line with a closed shape."
msgstr ""
"Intersecte la polyligne [param polyline] avec le polygone [param polygon] et "
"renvoie un tableau de polylignes intersectées. Cela se effectue [constant "
"OPERATION_INTERSECTION] entre la polyligne et le polygone. Cette opération "
"peut être considérée comme hacher une ligne avec une forme fermée."

msgid ""
"Returns [code]true[/code] if [param point] is inside the circle or if it's "
"located exactly [i]on[/i] the circle's boundary, otherwise returns "
"[code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si [param point] se trouve à l'intérieur du cercle "
"ou s'il est situé exactement [i]sur[/i] la limite du cercle, sinon renvoie "
"[code]false[/code]."

msgid ""
"Returns [code]true[/code] if [param point] is inside [param polygon] or if "
"it's located exactly [i]on[/i] polygon's boundary, otherwise returns "
"[code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si [param point] est à l'intérieur du polygone "
"[param polygon] ou s'il est situé exactement [i]sur[/i] la limite de "
"polygone, renvoie sinon [code]false[/code]."

msgid ""
"Returns [code]true[/code] if [param polygon]'s vertices are ordered in "
"clockwise order, otherwise returns [code]false[/code].\n"
"[b]Note:[/b] Assumes a Cartesian coordinate system where [code]+x[/code] is "
"right and [code]+y[/code] is up. If using screen coordinates ([code]+y[/code] "
"is down), the result will need to be flipped (i.e. a [code]true[/code] result "
"will indicate counter-clockwise)."
msgstr ""
"Renvoie [code]true[/code] si les sommets du polygone [param polygon] sont "
"triés dans le sens des aiguilles d'une montre, sinon renvoie [code]false[/"
"code].\n"
"[b]Note :[/b] Suppose un système de coordonnées cartésiennes où [code]+x[/"
"code] est la droite et [code]+y[/code] est le haut. Si on utilise des "
"coordonnées de l'écran ([code]+y[/code] est le bas), le résultat devra être "
"inversé (c.-à-d. un résultat [code]true[/code] indiquera le sens inverse des "
"aiguilles d'une montre)."

msgid ""
"Returns the point of intersection between the two lines ([param from_a], "
"[param dir_a]) and ([param from_b], [param dir_b]). Returns a [Vector2], or "
"[code]null[/code] if the lines are parallel.\n"
"[code]from[/code] and [code]dir[/code] are [i]not[/i] endpoints of a line "
"segment or ray but the slope ([code]dir[/code]) and a known point "
"([code]from[/code]) on that line.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var from_a = Vector2.ZERO\n"
"var dir_a = Vector2.RIGHT\n"
"var from_b = Vector2.DOWN\n"
"\n"
"# Returns Vector2(1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(1, -1))\n"
"# Returns Vector2(-1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(-1, -1))\n"
"# Returns null\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2.RIGHT)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fromA = Vector2.Zero;\n"
"var dirA = Vector2.Right;\n"
"var fromB = Vector2.Down;\n"
"\n"
"// Returns new Vector2(1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(1, -1));\n"
"// Returns new Vector2(-1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(-1, -1));\n"
"// Returns null\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, Vector2.Right);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le point d'intersection entre les deux lignes ([param from_a], [param "
"dir_a]) et ([param from_b], [param dir_b]). Renvoie un [Vector2], ou "
"[code]null[/code] si les lignes sont parallèles.\n"
"[code]from[/code] et [code]dir[/code] ne sont [i]pas[/i] des points finaux "
"d'un segment ou d'un rayon, mais la pente ([code]dir[/code]) et un point "
"connu ([code]from[/code]) sur cette ligne.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var from_a = Vector2.ZERO\n"
"var dir_a = Vector2.RIGHT\n"
"var from_b = Vector2.DOWN\n"
"\n"
"# Renvoie Vector2(1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(1, -1))\n"
"# Renvoie Vector2(-1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(-1, -1))\n"
"# Renvoie null\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2.RIGHT)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fromA = Vector2.Zero;\n"
"var dirA = Vector2.Right;\n"
"var fromB = Vector2.Down;\n"
"\n"
"// Renvoie new Vector2(1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(1, -1));\n"
"// Renvoie new Vector2(-1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(-1, -1));\n"
"// Renvoie null\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, Vector2.Right);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Given an array of [Vector2]s representing tiles, builds an atlas. The "
"returned dictionary has two keys: [code]points[/code] is a "
"[PackedVector2Array] that specifies the positions of each tile, [code]size[/"
"code] contains the overall size of the whole atlas as [Vector2i]."
msgstr ""
"À partir d'un tableau de [Vector2] représentant des tuiles, construit un "
"atlas. Le dictionnaire renvoyé a deux clés : [code]points[/code] est un "
"[PackedVector2Array] qui précise les positions de chaque tuile, et "
"[code]size[/code] contient la taille globale de l'atlas entier sous forme "
"d'un [Vector2i]."

msgid ""
"Merges (combines) [param polygon_a] and [param polygon_b] and returns an "
"array of merged polygons. This performs [constant OPERATION_UNION] between "
"polygons.\n"
"The operation may result in an outer polygon (boundary) and multiple inner "
"polygons (holes) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Fusionne (combine) les polygones [param polygon_a] et [param polygon_b] et "
"renvoie un tableau de polygones fusionnés. Cela effectue [constant "
"OPERATION_UNION] entre les polygones.\n"
"L'opération peut résulter en un polygone extérieur (les bords) et plusieurs "
"polygones internes (les trous) qui pourraient être distingués en appelant "
"[method is_polygon_clockwise]."

msgid ""
"Inflates or deflates [param polygon] by [param delta] units (pixels). If "
"[param delta] is positive, makes the polygon grow outward. If [param delta] "
"is negative, shrinks the polygon inward. Returns an array of polygons because "
"inflating/deflating may result in multiple discrete polygons. Returns an "
"empty array if [param delta] is negative and the absolute value of it "
"approximately exceeds the minimum bounding rectangle dimensions of the "
"polygon.\n"
"Each polygon's vertices will be rounded as determined by [param join_type].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise].\n"
"[b]Note:[/b] To translate the polygon's vertices specifically, multiply them "
"to a [Transform2D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
"Vector2(100, 100), Vector2(0, 100)])\n"
"var offset = Vector2(50, 50)\n"
"polygon = Transform2D(0, offset) * polygon\n"
"print(polygon) # Prints [(50.0, 50.0), (150.0, 50.0), (150.0, 150.0), (50.0, "
"150.0)]\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector2[] polygon = [new Vector2(0, 0), new Vector2(100, 0), new Vector2(100, "
"100), new Vector2(0, 100)];\n"
"var offset = new Vector2(50, 50);\n"
"polygon = new Transform2D(0, offset) * polygon;\n"
"GD.Print((Variant)polygon); // Prints [(50, 50), (150, 50), (150, 150), (50, "
"150)]\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Gonfle ou dégonfle le polygone [param polygon] par une quantité de [param "
"delta] unités (pixels). Si [param delta] est positif, le polygone grandit "
"vers l'extérieur. Si [param delta] est négatif, le polygone rétrécit vers "
"l'intérieur. Renvoie une liste de polygones parce que le gonflage/dégonflage "
"peut produire plusieurs polygones distincts. Renvoie un tableau vide si "
"[param delta] est négatif et que la valeur absolue de celui-ci dépasse "
"approximativement les dimensions du rectangle délimitant minimal du "
"polygone.\n"
"Les sommets de chaque polygone sont arrondis suivant [param join_type].\n"
"L'opération peut résulter un polygone extérieur (la limite extérieure) et "
"plusieurs polygones intérieurs (représentant les trous) qui peuvent être "
"distingués en appelant [method is_polygon_clockwise].\n"
"[b]Note :[/b] Pour translater les sommets du polygone spécifiquement, "
"multipliez les par une [Transform2D] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygone = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
"Vector2(100, 100), Vector2(0, 100)])\n"
"var decalage = Vector2(50, 50)\n"
"polygone = Transform2D(0, decalage) * polygone\n"
"print(polygone) # Affiche [(50.0, 50.0), (150.0, 50.0), (150.0, 150.0), "
"(50.0, 150.0)]\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygone = new Vector2[] { new Vector2(0, 0), new Vector2(100, 0), new "
"Vector2(100, 100), new Vector2(0, 100)};\n"
"var decalage = new Vector2(50, 50);\n"
"polygone = new Transform2D(0, decalage) * polygone;\n"
"GD.Print((Variant)polygone); // Affiche [(50, 50), (150, 50), (150, 150), "
"(50, 150)]\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Inflates or deflates [param polyline] by [param delta] units (pixels), "
"producing polygons. If [param delta] is positive, makes the polyline grow "
"outward. Returns an array of polygons because inflating/deflating may result "
"in multiple discrete polygons. If [param delta] is negative, returns an empty "
"array.\n"
"Each polygon's vertices will be rounded as determined by [param join_type].\n"
"Each polygon's endpoints will be rounded as determined by [param end_type].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Gonfle ou dégonfle la [param polyline] par [param delta] unités (pixels), "
"produisant des polygones. Si [param delta] est positif, la polyligne grandit "
"vers l'extérieur. Renvoie une liste de polygones car le gonflage/dégonflage "
"peut produire plusieurs polygones distincts. Si [param delta] est négatif, "
"renvoie un tableau vide.\n"
"Les sommets de chaque polygone sont arrondis suivant [param join_type].\n"
"Chaque point d'extrémité du polygone sera arrondi suivant [param end_type].\n"
"L'opération peut se résulter en un polygone extérieur (bordure) et un "
"polygone intérieur (trou) produits qui pourraient être distingués en appelant "
"[method is_polygon_clockwise]."

msgid ""
"Returns if [param point] is inside the triangle specified by [param a], "
"[param b] and [param c]."
msgstr ""
"Renvoie si [param point] est à l'intérieur du triangle défini par les points "
"[param a], [param b] et [param c]."

msgid ""
"Given the 2D segment ([param segment_from], [param segment_to]), returns the "
"position on the segment (as a number between 0 and 1) at which the segment "
"hits the circle that is located at position [param circle_position] and has "
"radius [param circle_radius]. If the segment does not intersect the circle, "
"-1 is returned (this is also the case if the line extending the segment would "
"intersect the circle, but the segment does not)."
msgstr ""
"Étant donné le segment 2D ([param segment_from], [param segment_to]), renvoie "
"la position sur le segment (en tant que nombre entre 0 et 1) à laquelle le "
"segment touche le cercle situé à la position [param circle_position] et avec "
"un rayon [param circle_radius]. Si le segment n'intersecte pas le cercle, -1 "
"est renvoyé (c'est aussi le cas si la ligne prolongeant le segment intersecte "
"le cercle, mais pas le segment)."

msgid ""
"Checks if the two segments ([param from_a], [param to_a]) and ([param "
"from_b], [param to_b]) intersect. If yes, return the point of intersection as "
"[Vector2]. If no intersection takes place, returns [code]null[/code]."
msgstr ""
"Vérifie si les deux segments (de [param from_a] à [param to_a]) et (de [param "
"from_b] à [param to_b]) s'intersectent. Si oui, renvoie le point "
"d'intersection en un [Vector2]. Si aucune intersection n'a lieu, renvoie "
"[code]null[/code]."

msgid ""
"Triangulates the area specified by discrete set of [param points] such that "
"no point is inside the circumcircle of any resulting triangle. Returns a "
"[PackedInt32Array] where each triangle consists of three consecutive point "
"indices into [param points] (i.e. the returned array will have [code]n * 3[/"
"code] elements, with [code]n[/code] being the number of found triangles). If "
"the triangulation did not succeed, an empty [PackedInt32Array] is returned."
msgstr ""
"Triangule la zone spécifiée par un ensemble discret de [param points] de "
"sorte à ce qu'aucun point n'est à l'intérieur des cercles circonscrits de "
"tout triangle résultant. Renvoie un [PackedInt32Array] où chaque triangle se "
"compose de trois indices de point consécutifs dans [param points] (c.-à-d. le "
"tableau renvoyé aura [code]n * 3[/code] éléments, avec [code]n[/code] le "
"nombre de triangles trouvés). Si la triangulation n'a pas réussi, un "
"[PackedInt32Array] vide est renvoyé."

msgid ""
"Triangulates the polygon specified by the points in [param polygon]. Returns "
"a [PackedInt32Array] where each triangle consists of three consecutive point "
"indices into [param polygon] (i.e. the returned array will have [code]n * 3[/"
"code] elements, with [code]n[/code] being the number of found triangles). "
"Output triangles will always be counter clockwise, and the contour will be "
"flipped if it's clockwise. If the triangulation did not succeed, an empty "
"[PackedInt32Array] is returned."
msgstr ""
"Triangule le polygone spécifié par les points dans [param polygon]. Renvoie "
"un [PackedInt32Array] où chaque triangle se compose de trois indices de point "
"consécutifs de [param polygon] (c'est-à-dire le tableau renvoyé aura [code]n "
"* 3[/code] éléments, avec [code]n[/code] étant le nombre de triangles "
"trouvés). Les triangles de sortie seront toujours dans le sens anti-horaire, "
"et le contour sera inversé si c'est dans le sens horaire. Si la triangulation "
"n'a pas réussi, un [PackedInt32Array] vide sera renvoyé."

msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
"Crée des régions où au moins un des polygones sujets ou de découpe est rempli."

msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
"Crée des régions où le polygone sujet est rempli sauf la où le polygone de "
"découpe est rempli."

msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
"Crée des régions où les polygones sujets et de découpe sont tous les deux "
"remplis."

msgid ""
"Create regions where either subject or clip polygons are filled but not where "
"both are filled."
msgstr ""
"Crée des régions où les polygones sujet ou de découpe sont remplis, mais pas "
"où les deux sont remplis."

msgid ""
"While flattened paths can never perfectly trace an arc, they are approximated "
"by a series of arc chords."
msgstr ""
"Bien que des chemins aplatis ne peuvent jamais parfaitement tracer un arc, "
"ils sont approximés par une série de cordes d'arc."

msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
"Les points d'extrémité sont joints en utilisant la valeur de [enum "
"PolyJoinType] et le chemin rempli en un polygone."

msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
"Les points d'extrémité sont joints en utilisant la valeur de [enum "
"PolyJoinType] et le chemin rempli en une polyligne."

msgid "Endpoints are squared off with no extension."
msgstr "Les bouts sont carrés sans être étendus."

msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr "Les bouts seront carrés et étendus de [code]delta[/code] unités."

msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr "Les bouts seront arrondis et étendus de [code]delta[/code] unités."

msgid "Provides methods for some common 3D geometric operations."
msgstr ""
"Fournit des méthodes pour certaines opérations géométriques 3D communes."

msgid ""
"Provides a set of helper functions to create geometric shapes, compute "
"intersections between shapes, and process various other geometric operations "
"in 3D."
msgstr ""
"Fournit un ensemble de fonctions d'aide pour créer des formes géométriques, "
"calculer des intersections entre des formes, et traiter différentes autres "
"opérations géométriques en 3D."

msgid ""
"Returns an array with 6 [Plane]s that describe the sides of a box centered at "
"the origin. The box size is defined by [param extents], which represents one "
"(positive) corner of the box (i.e. half its actual size)."
msgstr ""
"Renvoie un tableau avec 6 [Plane]s qui décrivent les côtés d'une boîte "
"centrée sur l'origine. La taille de la boîte est définie par ses limites "
"[param extents], qui représente un coin (positif) de la boîte (c.-à-d. la "
"moitié de sa taille réelle)."

msgid ""
"Returns an array of [Plane]s closely bounding a faceted capsule centered at "
"the origin with radius [param radius] and height [param height]. The "
"parameter [param sides] defines how many planes will be generated for the "
"side part of the capsule, whereas [param lats] gives the number of "
"latitudinal steps at the bottom and top of the capsule. The parameter [param "
"axis] describes the axis along which the capsule is oriented (0 for X, 1 for "
"Y, 2 for Z)."
msgstr ""
"Renvoie un tableau de [Plane]s qui en-cloisonne le plus proche possible une "
"capsule à facettes centrée à l'origine avec un rayon [param radius] et une "
"hauteur [param height]. Le paramètre [param sides] définit combien de plans "
"seront générés pour la partie latérale de la capsule, alors que [param lats] "
"donne le nombre de pas latitudinaux en bas et en haut de la capsule. Le "
"paramètre [param axis] décrit l'axe le long duquel la capsule est orientée (0 "
"pour X, 1 pour Y, 2 pour Z)."

msgid ""
"Returns an array of [Plane]s closely bounding a faceted cylinder centered at "
"the origin with radius [param radius] and height [param height]. The "
"parameter [param sides] defines how many planes will be generated for the "
"round part of the cylinder. The parameter [param axis] describes the axis "
"along which the cylinder is oriented (0 for X, 1 for Y, 2 for Z)."
msgstr ""
"Renvoie un tableau de [Plane]s qui en-cloisonne le plus proche possible un "
"cylindre à facettes centré à l'origine avec un rayon [param radius] et une "
"hauteur [param height]. Le paramètre [param sides] définit combien de plans "
"seront générés pour la partie ronde du cylindre. Le paramètre [param axis] "
"décrit l'axe le long duquel le cylindre est orienté (0 pour X, 1 pour Y, 2 "
"pour Z)."

msgid ""
"Clips the polygon defined by the points in [param points] against the [param "
"plane] and returns the points of the clipped polygon."
msgstr ""
"Coupe le polygone défini par les points dans [param points] par le [param "
"plane] et renvoie les points du polygone coupé."

msgid ""
"Calculates and returns all the vertex points of a convex shape defined by an "
"array of [param planes]."
msgstr ""
"Calcule et renvoie tous les points des sommets d'une forme convexe définie "
"par un tableau de plans [param planes]."

msgid ""
"Returns the 3D point on the 3D segment ([param s1], [param s2]) that is "
"closest to [param point]. The returned point will always be inside the "
"specified segment."
msgstr ""
"Renvoie le point 3D sur le segment 3D ([param s1], [param s2]) qui est le "
"plus proche du point [param point]. Le point renvoyé sera toujours à "
"l'intérieur du segment spécifié."

msgid ""
"Returns the 3D point on the 3D line defined by ([param s1], [param s2]) that "
"is closest to [param point]. The returned point can be inside the segment "
"([param s1], [param s2]) or outside of it, i.e. somewhere on the line "
"extending from the segment."
msgstr ""
"Renvoie le point 3D sur la ligne 3D définie par ([param s1], [param s2]) qui "
"est le plus proche du point [param point]. Le point renvoyé peut être à "
"l'intérieur du segment ([param s1], [param s2]) ou à l'extérieur, c'est-à-"
"dire quelque part sur la ligne s'étendant du segment."

msgid ""
"Given the two 3D segments ([param p1], [param p2]) and ([param q1], [param "
"q2]), finds those two points on the two segments that are closest to each "
"other. Returns a [PackedVector3Array] that contains this point on ([param "
"p1], [param p2]) as well the accompanying point on ([param q1], [param q2])."
msgstr ""
"À partir des deux segments 3D ([param p1], [param q1]) et ([param p2], [param "
"q2]), trouve les deux points sur les deux segments qui sont les plus proches "
"l'un de l'autre. Renvoie un [PackedVector3Array] qui contient un point sur "
"([param p1], [param q1]) et le point sur ([param p2], [param q2])."

msgid ""
"Returns a [Vector3] containing weights based on how close a 3D position "
"([param point]) is to a triangle's different vertices ([param a], [param b] "
"and [param c]). This is useful for interpolating between the data of "
"different vertices in a triangle. One example use case is using this to "
"smoothly rotate over a mesh instead of relying solely on face normals.\n"
"[url=https://en.wikipedia.org/wiki/Barycentric_coordinate_system]Here is a "
"more detailed explanation of barycentric coordinates.[/url]"
msgstr ""
"Renvoie un [Vector3] contenant des poids basés sur la proximité d'une "
"position 3D ([param point]) vers les différents sommets d'un triangle ([param "
"a], [param b] et [param c]). Ceci est utile pour interpoler entre les données "
"de différents sommets dans un triangle. Un exemple de cas d'utilisation est "
"d'utiliser cela pour tourner en douceur un maillage au lieu de se fier "
"uniquement aux normales des faces.\n"
"[url=https://fr.wikipedia.org/wiki/Coordonn%C3%A9es_barycentriques]Voici une "
"explication plus détaillée des coordonnées barycentriques.[/url]"

msgid ""
"Tests if the 3D ray starting at [param from] with the direction of [param "
"dir] intersects the triangle specified by [param a], [param b] and [param c]. "
"If yes, returns the point of intersection as [Vector3]. If no intersection "
"takes place, returns [code]null[/code]."
msgstr ""
"Teste si le rayon 3D commençant à [param from] avec la direction de [param "
"dir] intersecte le triangle spécifié par [param a], [param b] et [param c]. "
"Si oui, renvoie le point d'intersection en tant que [Vector3]. Si aucune "
"intersection n'a lieu, renvoie [code]null[/code]."

msgid ""
"Given a convex hull defined though the [Plane]s in the array [param planes], "
"tests if the segment ([param from], [param to]) intersects with that hull. If "
"an intersection is found, returns a [PackedVector3Array] containing the point "
"the intersection and the hull's normal. Otherwise, returns an empty array."
msgstr ""
"Étant donné une enveloppe convexe définie par les [Plane]s dans le tableau "
"[param planes], teste si le segment ([param from], [param to]) intersecte "
"cette enveloppe. Si une intersection est trouvée, renvoie un "
"[PackedVector3Array] contenant le point d'intersection et la normale à "
"l'enveloppe. Sinon, renvoie un tableau vide."

msgid ""
"Checks if the segment ([param from], [param to]) intersects the cylinder with "
"height [param height] that is centered at the origin and has radius [param "
"radius]. If no, returns an empty [PackedVector3Array]. If an intersection "
"takes place, the returned array contains the point of intersection and the "
"cylinder's normal at the point of intersection."
msgstr ""
"Vérifie si le segment (de [param from] à [param to]) intersecte le cylindre "
"avec une hauteur [param height] qui est centré à l'origine et a un rayon "
"[param radius]. Si non, renvoie un [PackedVector3Array] vide. S'il y a une "
"intersection, le tableau renvoie contient le point d'intersection et la "
"normale du cylindre au point d'intersection."

msgid ""
"Checks if the segment ([param from], [param to]) intersects the sphere that "
"is located at [param sphere_position] and has radius [param sphere_radius]. "
"If no, returns an empty [PackedVector3Array]. If yes, returns a "
"[PackedVector3Array] containing the point of intersection and the sphere's "
"normal at the point of intersection."
msgstr ""
"Vérifie si le segment (de [param from] à [param to]) intersecte la sphère à "
"la position [param sphere_position] et avec un rayon [param sphere_radius]. "
"Si non, renvoie un [PackedVector3Array] vide. Si oui, renvoie un "
"[PackedVector3Array] contenant le point d'intersection la normale de la "
"sphère au point d'intersection."

msgid ""
"Tests if the segment ([param from], [param to]) intersects the triangle "
"[param a], [param b], [param c]. If yes, returns the point of intersection as "
"[Vector3]. If no intersection takes place, returns [code]null[/code]."
msgstr ""
"Teste si le segment ([param from], [param to]) intersecte le triangle [param "
"a], [param b], [param c]. Si oui, renvoie le point d'intersection en tant que "
"[Vector3]. Si aucune intersection n'a lieu, renvoie [code]null[/code]."

msgid ""
"Tetrahedralizes the volume specified by a discrete set of [param points] in "
"3D space, ensuring that no point lies within the circumsphere of any "
"resulting tetrahedron. The method returns a [PackedInt32Array] where each "
"tetrahedron consists of four consecutive point indices into the [param "
"points] array (resulting in an array with [code]n * 4[/code] elements, where "
"[code]n[/code] is the number of tetrahedra found). If the tetrahedralization "
"is unsuccessful, an empty [PackedInt32Array] is returned."
msgstr ""
"Tétraédrise le volume spécifié par un ensemble discret de [param points] dans "
"l'espace 3D, de sorte qu'aucun point ne soit dans la sphère circonscrite d'au "
"moins un tétraèdre résultant. Cette méthode renvoie un [PackedInt32Array] où "
"chaque tétraèdre se compose de quatre indices de point consécutifs dans le "
"tableau [param points] (le tableau renvoyé aura [code]n * 4[/code] éléments, "
"où [code]n[/code] est le nombre de tétraèdres trouvés). Si la tétraédrisation "
"n'a pas réussi, un [PackedInt32Array] vide sera renvoyé."

msgid "Base node for geometry-based visual instances."
msgstr "Nœud de base pour les instances visuelles basées sur la géométrie."

msgid ""
"Base node for geometry-based visual instances. Shares some common "
"functionality like visibility and custom materials."
msgstr ""
"Nœud de base pour les instances visuelles basées sur de la géométrie. Partage "
"certaines fonctionnalités communes comme la visibilité et les matériaux "
"personnalisés."

msgid "Visibility ranges (HLOD)"
msgstr "Portée de visibilité (Niveau de détail hiérarchique)"

msgid ""
"Set the value of a shader uniform for this instance only ([url=$DOCS_URL/"
"tutorials/shaders/shader_reference/shading_language.html#per-instance-"
"uniforms]per-instance uniform[/url]). See also [method "
"ShaderMaterial.set_shader_parameter] to assign a uniform on all instances "
"using the same [ShaderMaterial].\n"
"[b]Note:[/b] For a shader uniform to be assignable on a per-instance basis, "
"it [i]must[/i] be defined with [code]instance uniform ...[/code] rather than "
"[code]uniform ...[/code] in the shader code.\n"
"[b]Note:[/b] [param name] is case-sensitive and must match the name of the "
"uniform in the code exactly (not the capitalized name in the inspector).\n"
"[b]Note:[/b] Per-instance shader uniforms are only available in Spatial and "
"CanvasItem shaders, but not for Fog, Sky, or Particles shaders."
msgstr ""
"Définir la valeur d'un uniform de shader pour cette instance uniquement "
"([url=$DOCS_URL/tutorials/shaders/shader_reference/shading_language.html#per-"
"instance-uniforms]uniform par-instance[/url]). Voir aussi [method "
"ShaderMaterial.set_shader_parameter] pour attribuer un uniform sur toutes les "
"instances en utilisant le même [ShaderMaterial].\n"
"[b]Note :[/b] Pour qu'un uniform de shader soit assignable selon l'instance, "
"il [i]doit[/i] être défini avec [code]instance uniform ...[/code] plutôt que "
"[code]uniform ...[/code] dans le code du shader.\n"
"[b]Note :[/b] [param name] est sensible à la casse et doit correspondre "
"exactement au nom de l'uniform dans le code (pas le nom capitalisé dans "
"l'inspecteur).\n"
"[b]Note :[/b] Les uniforms de shader par instance ne sont disponibles que "
"dans les shaders Spatial et CanvasItem, mais pas pour les shaders de "
"brouillard, de ciel ou de particules."

msgid "The selected shadow casting flag."
msgstr "Le drapeau de projection d'ombre sélectionné."

msgid ""
"Overrides the bounding box of this node with a custom one. This can be used "
"to avoid the expensive [AABB] recalculation that happens when a skeleton is "
"used with a [MeshInstance3D] or to have precise control over the "
"[MeshInstance3D]'s bounding box. To use the default AABB, set value to an "
"[AABB] with all fields set to [code]0.0[/code]. To avoid frustum culling, set "
"[member custom_aabb] to a very large AABB that covers your entire game world "
"such as [code]AABB(-10000, -10000, -10000, 20000, 20000, 20000)[/code]. To "
"disable all forms of culling (including occlusion culling), call [method "
"RenderingServer.instance_set_ignore_culling] on the [GeometryInstance3D]'s "
"[RID]."
msgstr ""
"Redéfinit la boîte de délimitation de ce noeud avec une boîte personnalisée. "
"Cela peut être utilisé pour éviter le re-calcul d'[AABB] coûteux qui se "
"produit quand un squelette est utilisé avec un [MeshInstance3D] ou pour avoir "
"un contrôle précis sur la boîte de délimitation de la [MeshInstance3D]. Pour "
"utiliser l'AABB par défaut, définissez la valeur à une [AABB] avec tous ses "
"champs définis à [code]0.0[/code]. Pour éviter le frustum culling, définissez "
"[member custom_aabb] à une très grande AABB qui couvre votre monde de jeu "
"entier comme [code]AABB(-10000, -10000, -10000, 20000, 20000, 20000)[/code]. "
"Pour désactiver toutes les formes de culling (y compris l'occlusion culling), "
"appelez [method RenderingServer.instance_set_ignore_culling] sur le [RID] de "
"la [GeometryInstance3D]."

msgid ""
"The extra distance added to the GeometryInstance3D's bounding box ([AABB]) to "
"increase its cull box."
msgstr ""
"La distance supplémentaire ajoutée à la boîte de délimitation de la "
"GeometryInstance3D ([AABB]) pour augmenter sa boîte de cull."

msgid "Use [member gi_lightmap_texel_scale] instead."
msgstr "Utilisez [member gi_lightmap_texel_scale] à la place."

msgid "The texel density to use for lightmapping in [LightmapGI]."
msgstr "La densité de texel à utiliser pour le lightmapping dans [LightmapGI]."

msgid ""
"The texel density to use for lightmapping in [LightmapGI]. Greater scale "
"values provide higher resolution in the lightmap, which can result in sharper "
"shadows for lights that have both direct and indirect light baked. However, "
"greater scale values will also increase the space taken by the mesh in the "
"lightmap texture, which increases the memory, storage, and bake time "
"requirements. When using a single mesh at different scales, consider "
"adjusting this value to keep the lightmap texel density consistent across "
"meshes.\n"
"For example, doubling [member gi_lightmap_texel_scale] doubles the lightmap "
"texture resolution for this object [i]on each axis[/i], so it will "
"[i]quadruple[/i] the texel count."
msgstr ""
"La densité de texel à utiliser pour le lightmapping dans [LightmapGI]. Les "
"plus grandes valeurs d'échelle offrent une résolution plus élevée dans la "
"lightmap, ce qui peut entraîner des ombres plus nettes pour les lumières qui "
"ont à la fois de la lumière directe et indirecte pré-calculée. Cependant, des "
"valeurs plus élevées augmenteront également l'espace pris par le maillage "
"dans la texture de lightmap, ce qui augmente les exigences en mémoire, en "
"stockage et en temps de calcul. Lors de l'utilisation d'un seul maillage à "
"différentes échelles, envisagez d'ajuster cette valeur pour maintenir la "
"densité de texel de la lightmap cohérente entre les maillages.\n"
"Par exemple, doubler [member gi_lightmap_texel_scale] double la résolution de "
"texture de la lightmap pour cet objet [i]sur chaque axe[/i], de sorte que "
"cela [i]quadruple[/i] le compte de texels."

msgid ""
"The global illumination mode to use for the whole geometry. To avoid "
"inconsistent results, use a mode that matches the purpose of the mesh during "
"gameplay (static/dynamic).\n"
"[b]Note:[/b] Lights' bake mode will also affect the global illumination "
"rendering. See [member Light3D.light_bake_mode]."
msgstr ""
"Le mode d'illumination globale à utiliser pour la géométrie entière. Pour "
"éviter des résultats incohérents, utilisez un mode qui correspond au but du "
"maillage lors du gameplay (statique/dynamique).\n"
"[b]Note :[/b] Le mode de pré-calcul des lumières affectera également le rendu "
"de l'illumination globale. Voir [member Light3D.light_bake_mode]."

msgid ""
"If [code]true[/code], disables occlusion culling for this instance. Useful "
"for gizmos that must be rendered even when occlusion culling is in use.\n"
"[b]Note:[/b] [member ignore_occlusion_culling] does not affect frustum "
"culling (which is what happens when an object is not visible given the "
"camera's angle). To avoid frustum culling, set [member custom_aabb] to a very "
"large AABB that covers your entire game world such as [code]AABB(-10000, "
"-10000, -10000, 20000, 20000, 20000)[/code]."
msgstr ""
"Si [code]true[/code], désactive l'occlusion culling pour cette instance. "
"Utile pour les manipulateurs qui doivent être rendus même lorsque l'occlusion "
"culling est utilisée.\n"
"[b]Note :[/b] [member ignore_occlusion_culling] n'affecte pas le frustum "
"culling (ce qui se passe quand un objet n'est pas visible compte tenu de "
"l'angle de la caméra). Pour éviter le frustum culling, définissez [member "
"custom_aabb] à une très grande AABB qui couvre votre monde de jeu comme "
"[code]AABB(-10000, -10000, -10000, 20000, 20000, 20000)[/code]."

msgid ""
"Changes how quickly the mesh transitions to a lower level of detail. A value "
"of 0 will force the mesh to its lowest level of detail, a value of 1 will use "
"the default settings, and larger values will keep the mesh in a higher level "
"of detail at farther distances.\n"
"Useful for testing level of detail transitions in the editor."
msgstr ""
"Change la vitesse de transition du maillage vers un niveau de détail "
"inférieur. Une valeur de 0 forcera le maillage à son plus bas niveau de "
"détail, une valeur de 1 utilisera les paramètres par défaut, et des valeurs "
"plus grandes garderont le maillage dans un niveau de détail plus élevé à des "
"distances plus lointaines.\n"
"Utile pour tester les transitions de niveau de détail dans l'éditeur."

msgid ""
"The material override for the whole geometry.\n"
"If a material is assigned to this property, it will be used instead of any "
"material set in any material slot of the mesh."
msgstr ""
"La redéfinition du matériau pour toute la géométrie.\n"
"Si un matériau est affecté à cette propriété, il sera utilisé au lieu de tout "
"matériel défini dans n'importe quel emplacement de matériau du maillage."

msgid ""
"The transparency applied to the whole geometry (as a multiplier of the "
"materials' existing transparency). [code]0.0[/code] is fully opaque, while "
"[code]1.0[/code] is fully transparent. Values greater than [code]0.0[/code] "
"(exclusive) will force the geometry's materials to go through the transparent "
"pipeline, which is slower to render and can exhibit rendering issues due to "
"incorrect transparency sorting. However, unlike using a transparent material, "
"setting [member transparency] to a value greater than [code]0.0[/code] "
"(exclusive) will [i]not[/i] disable shadow rendering.\n"
"In spatial shaders, [code]1.0 - transparency[/code] is set as the default "
"value of the [code]ALPHA[/code] built-in.\n"
"[b]Note:[/b] [member transparency] is clamped between [code]0.0[/code] and "
"[code]1.0[/code], so this property cannot be used to make transparent "
"materials more opaque than they originally are.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method. When "
"using the Mobile or Compatibility rendering method, [member transparency] is "
"ignored and is considered as always being [code]0.0[/code]."
msgstr ""
"La transparence appliquée à toute la géométrie (comme un multiplicateur de la "
"transparence existante des matériaux). [code]0.0[/code] est entièrement "
"opaque, tandis que [code]1.0[/code] est entièrement transparent. Les valeurs "
"supérieures à [code]0.0[/code] (exclusif) forceront les matériaux de la "
"géométrie à passer par le pipeline de transparence, qui est plus lente à "
"rendre et peut présenter des problèmes de rendu en raison d'un tri de "
"transparence incorrect. Cependant, contrairement à l'utilisation d'un "
"matériau transparent, définir [member transparency] à une valeur supérieure à "
"[code]0.0[/code] (exclusif) ne désactivera [i]pas[/i] le rendu des ombres.\n"
"Dans les shaders spatiaux, [code]1.0 - transparency[/code] est défini comme "
"la valeur par défaut de l'[code]ALPHA[/code] intégré.\n"
"[b]Note :[/b] [member transparency] est borné entre [code]0.0[/code] et "
"[code]1.0[/code], de sorte que cette propriété ne peut pas être utilisée pour "
"rendre des matériaux transparents plus opaques qu'ils ne le sont "
"originellement.\n"
"[b]Note :[/b] Seulement pris en charge lors de l'utilisation de la méthode de "
"rendu Forward+. Lors de l'utilisation de la méthode de rendu Mobile ou "
"Compatibilité, [member transparency] est ignorée et est considérée comme "
"valant toujours [code]0.0[/code]."

msgid ""
"Starting distance from which the GeometryInstance3D will be visible, taking "
"[member visibility_range_begin_margin] into account as well. The default "
"value of 0 is used to disable the range check."
msgstr ""
"Distance de départ à laquelle la GeometryInstance3D sera visible, en prenant "
"en compte [member visibility_range_begin_margin]. La valeur par défaut de 0 "
"est utilisée pour désactiver la vérification de la plage."

msgid ""
"Margin for the [member visibility_range_begin] threshold. The "
"GeometryInstance3D will only change its visibility state when it goes over or "
"under the [member visibility_range_begin] threshold by this amount.\n"
"If [member visibility_range_fade_mode] is [constant "
"VISIBILITY_RANGE_FADE_DISABLED], this acts as a hysteresis distance. If "
"[member visibility_range_fade_mode] is [constant VISIBILITY_RANGE_FADE_SELF] "
"or [constant VISIBILITY_RANGE_FADE_DEPENDENCIES], this acts as a fade "
"transition distance and must be set to a value greater than [code]0.0[/code] "
"for the effect to be noticeable."
msgstr ""
"Marge pour le seuil de visibilité [member visibility_range_begin]. La "
"GeometryInstance3D ne changera son état de visibilité que lorsqu'elle passera "
"au-dessus ou en-dessous du seuil [member visibility_range_begin] de cette "
"quantité.\n"
"Si [member visibility_range_fade_mode] vaut [constant "
"VISIBILITY_RANGE_FADE_DISABLED], cela agit comme une distance d'hystérésis. "
"Si [member visibility_range_fade_mode] vaut [constant "
"VISIBILITY_RANGE_FADE_SELF] ou [constant VISIBILITY_RANGE_FADE_DEPENDENCIES], "
"cela agit comme une distance de transition de disparition et doit être défini "
"à une valeur supérieure à [code]0.0[/code] pour que l'effet soit remarquable."

msgid ""
"Distance from which the GeometryInstance3D will be hidden, taking [member "
"visibility_range_end_margin] into account as well. The default value of 0 is "
"used to disable the range check."
msgstr ""
"Distance à laquelle la GeometryInstance3D sera cachée, en prenant en compte "
"[member visibility_range_end_margin]. La valeur par défaut de 0 est utilisée "
"pour désactiver la vérification de la plage."

msgid ""
"Margin for the [member visibility_range_end] threshold. The "
"GeometryInstance3D will only change its visibility state when it goes over or "
"under the [member visibility_range_end] threshold by this amount.\n"
"If [member visibility_range_fade_mode] is [constant "
"VISIBILITY_RANGE_FADE_DISABLED], this acts as a hysteresis distance. If "
"[member visibility_range_fade_mode] is [constant VISIBILITY_RANGE_FADE_SELF] "
"or [constant VISIBILITY_RANGE_FADE_DEPENDENCIES], this acts as a fade "
"transition distance and must be set to a value greater than [code]0.0[/code] "
"for the effect to be noticeable."
msgstr ""
"Marge pour le seuil de visibilité [member visibility_range_end]. La "
"GeometryInstance3D ne changera son état de visibilité que lorsqu'elle passera "
"au-dessus ou en-dessous du seuil [member visibility_range_end] de cette "
"quantité.\n"
"Si [member visibility_range_fade_mode] vaut [constant "
"VISIBILITY_RANGE_FADE_DISABLED], cela agit comme une distance d'hystérésis. "
"Si [member visibility_range_fade_mode] vaut [constant "
"VISIBILITY_RANGE_FADE_SELF] ou [constant VISIBILITY_RANGE_FADE_DEPENDENCIES], "
"cela agit comme une distance de transition de disparition et doit être défini "
"à une valeur supérieure à [code]0.0[/code] pour que l'effet soit remarquable."

msgid ""
"Controls which instances will be faded when approaching the limits of the "
"visibility range."
msgstr ""
"Contrôle quelles instances disparaîtront lors de l'approche des limites de la "
"plage de visibilité."

msgid ""
"Will not cast any shadows. Use this to improve performance for small geometry "
"that is unlikely to cast noticeable shadows (such as debris)."
msgstr ""
"Ne projettera aucune ombre. Utilisez ceci pour améliorer les performances des "
"petites géométries qui ne vont probablement pas projeter des ombres notables "
"(comme des débris)."

msgid ""
"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
"Will take culling into account, so faces not being rendered will not be taken "
"into account when shadow casting."
msgstr ""
"Projettera des ombres de toutes les faces visibles dans la "
"GeometryInstance3D.\n"
"Prendra en compte le culling, donc les faces non rendues ne seront pas prises "
"en compte lors de la projection des ombres."

msgid ""
"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
"Will not take culling into account, so all faces will be taken into account "
"when shadow casting."
msgstr ""
"Projettera des ombres de toutes les faces visibles dans la "
"GeometryInstance3D.\n"
"Ne prendra pas en compte le culling, donc toutes les faces seront prises en "
"compte lors de la projection des ombres."

msgid ""
"Will only show the shadows casted from this object.\n"
"In other words, the actual mesh will not be visible, only the shadows casted "
"from the mesh will be."
msgstr ""
"Affichera uniquement les ombres projetées à partir de cet objet.\n"
"En d’autres termes, le mesh réel ne sera pas visible, seules les ombres "
"projetées à partir du mesh le seront."

msgid ""
"Disabled global illumination mode. Use for dynamic objects that do not "
"contribute to global illumination (such as characters). When using [VoxelGI] "
"and SDFGI, the geometry will [i]receive[/i] indirect lighting and reflections "
"but the geometry will not be considered in GI baking."
msgstr ""
"Mode d'illumination globale désactivée. Utilisez le pour les objets "
"dynamiques qui ne contribuent pas à l'illumination globale (comme des "
"personnages). Lors de l'utilisation de [VoxelGI] et SDFGI, la géométrie "
"[i]recevra[/i] l'éclairage indirect et les réflexions, mais la géométrie ne "
"sera pas considérée dans le calcul de l'illumination globale."

msgid ""
"Baked global illumination mode. Use for static objects that contribute to "
"global illumination (such as level geometry). This GI mode is effective when "
"using [VoxelGI], SDFGI and [LightmapGI]."
msgstr ""
"Mode d'illumination globale pré-calculée. Utilisez le pour les objets "
"statiques qui contribuent à l'illumination globale (comme la géométrie de "
"niveau). Ce mode d'illumination globale est efficace lorsque vous utilisez "
"[VoxelGI], SDFGI et [LightmapGI]."

msgid ""
"Dynamic global illumination mode. Use for dynamic objects that contribute to "
"global illumination. This GI mode is only effective when using [VoxelGI], but "
"it has a higher performance impact than [constant GI_MODE_STATIC]. When using "
"other GI methods, this will act the same as [constant GI_MODE_DISABLED]. When "
"using [LightmapGI], the object will receive indirect lighting using lightmap "
"probes instead of using the baked lightmap texture."
msgstr ""
"Mode d'illumination globale dynamique. Utilisez le pour les objets dynamiques "
"qui contribuent à l'illumination globale. Ce mode d'illumination globale "
"n'est effectif qu'en utilisant [VoxelGI], mais il a un impact de performance "
"plus élevé que [constant GI_MODE_STATIC]. Lors de l'utilisation d'autres "
"méthodes d'illumination globale, cela agira de la même manière que [constant "
"GI_MODE_DISABLED]. Lors de l'utilisation de [LightmapGI], l'objet recevra un "
"éclairage indirect à l'aide de sondes de lightmap au lieu d'utiliser la "
"texture de lightmap pré-calculée."

msgid "The standard texel density for lightmapping with [LightmapGI]."
msgstr "La densité de texel standard pour le lightmapping avec [LightmapGI]."

msgid ""
"Multiplies texel density by 2× for lightmapping with [LightmapGI]. To ensure "
"consistency in texel density, use this when scaling a mesh by a factor "
"between 1.5 and 3.0."
msgstr ""
"Multiplie la densité de texel par 2× pour le lightmapping avec [LightmapGI]. "
"Pour assurer une consistance en densité de texel, utilisez ceci lors de la "
"mise à l'échelle d'un maillage par un facteur entre 1.5 et 3.0."

msgid ""
"Multiplies texel density by 4× for lightmapping with [LightmapGI]. To ensure "
"consistency in texel density, use this when scaling a mesh by a factor "
"between 3.0 and 6.0."
msgstr ""
"Multiplie la densité de texel par 4× pour le lightmapping avec [LightmapGI]. "
"Pour assurer une consistance en densité de texel, utilisez ceci lors de la "
"mise à l'échelle d'un maillage par un facteur entre 3.0 et 6.0."

msgid ""
"Multiplies texel density by 8× for lightmapping with [LightmapGI]. To ensure "
"consistency in texel density, use this when scaling a mesh by a factor "
"greater than 6.0."
msgstr ""
"Multiplie la densité de texel par 8× pour le lightmapping avec [LightmapGI]. "
"Pour assurer une consistance en densité de texel, utilisez ceci lors de la "
"mise à l'échelle d'un maillage par un facteur supérieur à 6.0."

msgid "Represents the size of the [enum LightmapScale] enum."
msgstr "Représente la taille de l'énumération [enum LightmapScale]."

msgid ""
"Will not fade itself nor its visibility dependencies, hysteresis will be used "
"instead. This is the fastest approach to manual LOD, but it can result in "
"noticeable LOD transitions depending on how the LOD meshes are authored. See "
"[member visibility_range_begin] and [member Node3D.visibility_parent] for "
"more information."
msgstr ""
"Ne va pas disparaître ni ses dépendances de visibilité, une hystérésis sera "
"utilisée à la place. Il s'agit de l'approche la plus rapide de LOD manuel, "
"mais elle peut entraîner des transitions de LOD remarquables en fonction de "
"la façon dont les maillages LOD sont faites. Voir [member "
"visibility_range_begin] et [member Node3D.visibility_parent] pour plus "
"d'informations."

msgid ""
"Will fade-out itself when reaching the limits of its own visibility range. "
"This is slower than [constant VISIBILITY_RANGE_FADE_DISABLED], but it can "
"provide smoother transitions. The fading range is determined by [member "
"visibility_range_begin_margin] and [member visibility_range_end_margin].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method. When "
"using the Mobile or Compatibility rendering method, this mode acts like "
"[constant VISIBILITY_RANGE_FADE_DISABLED] but with hysteresis disabled."
msgstr ""
"Va disparaître en atteignant les limites de sa propre plage de visibilité. "
"Ceci est plus lent que [constant VISIBILITY_RANGE_FADE_DISABLED], mais peut "
"fournir des transitions plus fluides. La plage de disparition est déterminée "
"par [member visibility_range_begin_margin] et [member "
"visibility_range_end_margin].\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+. Lors de l'utilisation de la méthode de rendu Mobile ou "
"Compatibilité, ce mode agit comme [constant VISIBILITY_RANGE_FADE_DISABLED] "
"mais avec l'hystérésis désactivée."

msgid ""
"Will fade-in its visibility dependencies (see [member "
"Node3D.visibility_parent]) when reaching the limits of its own visibility "
"range. This is slower than [constant VISIBILITY_RANGE_FADE_DISABLED], but it "
"can provide smoother transitions. The fading range is determined by [member "
"visibility_range_begin_margin] and [member visibility_range_end_margin].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method. When "
"using the Mobile or Compatibility rendering method, this mode acts like "
"[constant VISIBILITY_RANGE_FADE_DISABLED] but with hysteresis disabled."
msgstr ""
"Va faire apparaître ses dépendances de visibilité (voir [member "
"Node3D.visibility_parent]) lorsqu'elle atteint les limites de sa propre plage "
"de visibilité. Ceci est plus lent que [constant "
"VISIBILITY_RANGE_FADE_DISABLED], mais peut fournir des transitions plus "
"fluides. La plage d'apparition est déterminée par [member "
"visibility_range_begin_margin] et [member visibility_range_end_margin].\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+. Lors de l'utilisation de la méthode de rendu Mobile ou "
"Compatiblité, ce mode agit comme [constant VISIBILITY_RANGE_FADE_DISABLED] "
"mais avec l'hystérésis désactivée."

msgid "Represents a glTF accessor."
msgstr "Représente un accesseur glTF."

msgid ""
"GLTFAccessor is a data structure representing a glTF [code]accessor[/code] "
"that would be found in the [code]\"accessors\"[/code] array. A buffer is a "
"blob of binary data. A buffer view is a slice of a buffer. An accessor is a "
"typed interpretation of the data in a buffer view.\n"
"Most custom data stored in glTF does not need accessors, only buffer views "
"(see [GLTFBufferView]). Accessors are for more advanced use cases such as "
"interleaved mesh data encoded for the GPU."
msgstr ""
"GLTFAccessor est une structure de données représentant un [code]accesseur[/"
"code] glTF qui serait trouvé dans le tableau [code]\"accessors\"[/code]. Un "
"buffeur est un blob de données binaires. Une vue de buffeur est une tranche "
"d'un buffeur. Un accesseur est une interprétation typée des données dans une "
"vue d'un buffeur.\n"
"La plupart des données personnalisées stockées en glTF n'ont pas besoin "
"d'accesseurs, seulement des vues de buffeur (voir [GLTFBufferView]). Les "
"accesseursont pour des cas d'utilisation plus avancés tels que les données de "
"maillage entrelacées encodées pour le GPU."

msgid "Buffers, BufferViews, and Accessors in Khronos glTF specification"
msgstr "Buffers, BufferViews et Accesseurs dans la spécification glTF Khronos"

msgid "The glTF accessor type, as an enum."
msgstr "Le type d'accesseur glTF, en tant qu’énumération."

msgid ""
"The index of the buffer view this accessor is referencing. If [code]-1[/"
"code], this accessor is not referencing any buffer view."
msgstr ""
"L'index de la vue de buffer à laquelle cet accesseur se réfère. Si [code]-1[/"
"code], cet accesseur ne renvoie aucune vue de buffer."

msgid "The offset relative to the start of the buffer view in bytes."
msgstr "Le décalage par rapport au début de la vue de buffer en octets."

msgid ""
"The glTF component type as an enum. See [enum GLTFComponentType] for possible "
"values. Within the core glTF specification, a value of 5125 or "
"\"UNSIGNED_INT\" must not be used for any accessor that is not referenced by "
"mesh.primitive.indices."
msgstr ""
"Le type de composant glTF comme énumération. Voir [enum GLTFComponentType] "
"pour les valeurs possibles. Dans la spécification glTF de base, une valeur de "
"5125 ou « UNSIGNED_INT» ne doit pas être utilisée pour tout accesseur qui "
"n'est pas référencé par mesh.primitive.indices."

msgid "The number of elements referenced by this accessor."
msgstr "Le nombre d'éléments référencés par cet accesseur."

msgid "Maximum value of each component in this accessor."
msgstr "Valeur maximale de chaque composant dans cet accesseur."

msgid "Minimum value of each component in this accessor."
msgstr "Valeur minimale de chaque composant dans cet accesseur."

msgid "Specifies whether integer data values are normalized before usage."
msgstr ""
"Spécifie si les valeurs de données d'entier sont normalisées avant "
"utilisation."

msgid ""
"The indices component data type as an enum. Possible values are 5121 for "
"\"UNSIGNED_BYTE\", 5123 for \"UNSIGNED_SHORT\", and 5125 for \"UNSIGNED_INT\"."
msgstr ""
"Le type de données des indices en tant qu'énumération. Les valeurs possibles "
"sont 5121 pour \"UNSIGNED_BYTE\", 5123 pour \"UNSIGNED_SHORT\", et 5125 pour "
"\"UNSIGNED_INT\"."

msgid ""
"The index of the bufferView with sparse values. The referenced buffer view "
"MUST NOT have its target or byteStride properties defined."
msgstr ""
"L'index du bufferView avec des valeurs creuses. La vue du buffeur référencé "
"NE DOIT PAS avoir ses propriétés cible ou byteStride définies."

msgid "The offset relative to the start of the bufferView in bytes."
msgstr "Le décalage par rapport au début du bufferView en octets."

msgid "Use [member accessor_type] instead."
msgstr "Utilisez [member accessor_type] à la place."

msgid ""
"The glTF accessor type, as an [int]. Possible values are [code]0[/code] for "
"\"SCALAR\", [code]1[/code] for \"VEC2\", [code]2[/code] for \"VEC3\", "
"[code]3[/code] for \"VEC4\", [code]4[/code] for \"MAT2\", [code]5[/code] for "
"\"MAT3\", and [code]6[/code] for \"MAT4\"."
msgstr ""
"Le type d'accesseur glTF, en tant qu'[int]. Les valeurs possibles sont "
"[code]0[/code] pour \"SCALAR\", [code]1[/code] pour \"VEC2\", [code]2[/code] "
"pour \"VEC3\", [code]3[/code] pour \"VEC4\", [code]4[/code] pour \"MAT2\", "
"[code]5[/code] pour \"MAT3\", et [code]6[/code] pour \"MAT4\"."

msgid ""
"Accessor type \"SCALAR\". For the glTF object model, this can be used to map "
"to a single float, int, or bool value, or a float array."
msgstr ""
"Type d'accesseur \"SCALAR\". Pour le modèle d'objet glTF, cela peut être "
"utilisé pour associer avec une seule valeur de flottant, entier ou booléen, "
"ou un tableau de flottants."

msgid ""
"Accessor type \"VEC2\". For the glTF object model, this maps to \"float2\", "
"represented in the glTF JSON as an array of two floats."
msgstr ""
"Type d'accesseur \"VEC2\". Pour le modèle d'objet glTF, cela est associé à "
"\"float2\", représenté dans le JSON glTF comme un tableau de deux flottants."

msgid ""
"Accessor type \"VEC3\". For the glTF object model, this maps to \"float3\", "
"represented in the glTF JSON as an array of three floats."
msgstr ""
"Type d'accesseur \"VEC3\". Pour le modèle d'objet glTF, cela est associé à "
"\"float3\", représenté dans le JSON glTF comme un tableau de trois flottants."

msgid ""
"Accessor type \"VEC4\". For the glTF object model, this maps to \"float4\", "
"represented in the glTF JSON as an array of four floats."
msgstr ""
"Type d'accesseur \"VEC4\". Pour le modèle d'objet glTF, cela est associé à "
"\"float4\", représenté dans le JSON glTF comme un tableau de quatre flottants."

msgid ""
"Accessor type \"MAT2\". For the glTF object model, this maps to \"float2x2\", "
"represented in the glTF JSON as an array of four floats."
msgstr ""
"Type d'accesseur \"MAT2\". Pour le modèle d'objet glTF, cela est associé à "
"\"float2x2\", représenté dans le JSON glTF comme un tableau de quatre "
"flottants."

msgid ""
"Accessor type \"MAT3\". For the glTF object model, this maps to \"float3x3\", "
"represented in the glTF JSON as an array of nine floats."
msgstr ""
"Type d'accesseur \"MAT3\". Pour le modèle d'objet glTF, cela est associé à "
"\"float3x3\", représenté dans le JSON glTF comme un tableau de neuf flottants."

msgid ""
"Accessor type \"MAT4\". For the glTF object model, this maps to \"float4x4\", "
"represented in the glTF JSON as an array of sixteen floats."
msgstr ""
"Type d'accesseur \"MAT4\". Pour le modèle d'objet glTF, cela est associé à "
"\"float4x4\", représenté dans le JSON glTF comme un tableau de seize "
"flottants."

msgid ""
"Component type \"NONE\". This is not a valid component type, and is used to "
"indicate that the component type is not set."
msgstr ""
"Type d'accesseur \"NONE\". Ce n'est pas type de composant valide, et est "
"utilisé pour indiquer que le type de composant n'est pas défini."

msgid ""
"Component type \"BYTE\". The value is [code]0x1400[/code] which comes from "
"OpenGL. This indicates data is stored in 1-byte or 8-bit signed integers. "
"This is a core part of the glTF specification."
msgstr ""
"Type de composant \"BYTE\". La valeur est de [code]0x1400[/code], qui vient "
"d'OpenGL. Cela indique que les données sont stockées dans des entiers signés "
"d'1 octet ou de 8 bits. Il s'agit d'une partie essentielle de la "
"spécification glTF."

msgid ""
"Component type \"UNSIGNED_BYTE\". The value is [code]0x1401[/code] which "
"comes from OpenGL. This indicates data is stored in 1-byte or 8-bit unsigned "
"integers. This is a core part of the glTF specification."
msgstr ""
"Type de composante \"UNSIGNED_BYTE\". La valeur est [code]0x1401[/code] qui "
"vient d'OpenGL. Cela indique que les données sont stockées dans des entiers "
"non signés de 1 octet ou de 8 bits. Il s'agit d'une partie essentielle de la "
"spécification glTF."

msgid ""
"Component type \"SHORT\". The value is [code]0x1402[/code] which comes from "
"OpenGL. This indicates data is stored in 2-byte or 16-bit signed integers. "
"This is a core part of the glTF specification."
msgstr ""
"Type de composante \"SHORT\". La valeur est [code]0x1402[/code] qui vient "
"d'OpenGL. Cela indique que les données sont stockées dans des entiers signés "
"de 2 octets ou de 16 bits. Il s'agit d'une partie essentielle de la "
"spécification glTF."

msgid ""
"Component type \"UNSIGNED_SHORT\". The value is [code]0x1403[/code] which "
"comes from OpenGL. This indicates data is stored in 2-byte or 16-bit unsigned "
"integers. This is a core part of the glTF specification."
msgstr ""
"Type de composante \"UNSIGNED_SHORT\". La valeur est [code]0x1403[/code] qui "
"vient d'OpenGL. Cela indique que les données sont stockées dans des entiers "
"non signés de 2 octets ou de 16 bits. Il s'agit d'une partie essentielle de "
"la spécification glTF."

msgid ""
"Component type \"INT\". The value is [code]0x1404[/code] which comes from "
"OpenGL. This indicates data is stored in 4-byte or 32-bit signed integers. "
"This is NOT a core part of the glTF specification, and may not be supported "
"by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Type de composant \"INT\". La valeur est de [code]0x1404[/code], qui vient "
"d'OpenGL. Cela indique que les données sont stockées dans des entiers signés "
"de 4 octets ou de 32 bits. Il ne s'agit PAS d'une partie essentielle de la "
"spécification glTF, et peut ne pas être supporté par tous les importeurs "
"glTF. Peut être utilisé par certaines extensions dont "
"[code]KHR_interactivity[/code]."

msgid ""
"Component type \"UNSIGNED_INT\". The value is [code]0x1405[/code] which comes "
"from OpenGL. This indicates data is stored in 4-byte or 32-bit unsigned "
"integers. This is a core part of the glTF specification."
msgstr ""
"Type de composante \"UNSIGNED_INT\". La valeur est [code]0x1405[/code] qui "
"vient d'OpenGL. Cela indique que les données sont stockées dans des entiers "
"non signés de 4 octets ou de 32 bits. Il s'agit d'une partie essentielle de "
"la spécification glTF."

msgid ""
"Component type \"FLOAT\". The value is [code]0x1406[/code] which comes from "
"OpenGL. This indicates data is stored in 4-byte or 32-bit floating-point "
"numbers. This is a core part of the glTF specification."
msgstr ""
"Type de composante \"FLOAT\". La valeur est [code]0x1406[/code] qui vient "
"d'OpenGL. Cela indique que les données sont stockées en flottants de 4 octets "
"ou 32 bits. Il s'agit d'une partie essentielle de la spécification glTF."

msgid ""
"Component type \"DOUBLE\". The value is [code]0x140A[/code] which comes from "
"OpenGL. This indicates data is stored in 8-byte or 64-bit floating-point "
"numbers. This is NOT a core part of the glTF specification, and may not be "
"supported by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Type de composant \"DOUBLE\". La valeur est de [code]0x140A[/code], qui vient "
"d'OpenGL. Cela indique que les données sont stockées dans des entiers signés "
"de 8 octets ou de 64 bits. Il ne s'agit PAS d'une partie essentielle de la "
"spécification glTF, et peut ne pas être supporté par tous les importeurs "
"glTF. Peut être utilisé par certaines extensions dont "
"[code]KHR_interactivity[/code]."

msgid ""
"Component type \"HALF_FLOAT\". The value is [code]0x140B[/code] which comes "
"from OpenGL. This indicates data is stored in 2-byte or 16-bit floating-point "
"numbers. This is NOT a core part of the glTF specification, and may not be "
"supported by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Type de composant \"HALF_FLOAT\". La valeur est de [code]0x140B[/code], qui "
"vient d'OpenGL. Cela indique que les données sont stockées dans des flottants "
"de 2 octets ou 16 bits. Il ne s'agit PAS d'une partie essentielle de la "
"spécification glTF, et peut ne pas être supporté par tous les importeurs "
"glTF. Peut être utilisé par certaines extensions dont "
"[code]KHR_interactivity[/code]."

msgid ""
"Component type \"LONG\". The value is [code]0x140E[/code] which comes from "
"OpenGL. This indicates data is stored in 8-byte or 64-bit signed integers. "
"This is NOT a core part of the glTF specification, and may not be supported "
"by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Type de composant \"LONG\". La valeur est de [code]0x140E[/code], qui vient "
"d'OpenGL. Cela indique que les données sont stockées dans des flottants de 8 "
"octets ou 64 bits. Il ne s'agit PAS d'une partie essentielle de la "
"spécification glTF, et peut ne pas être supporté par tous les importeurs "
"glTF. Peut être utilisé par certaines extensions dont "
"[code]KHR_interactivity[/code]."

msgid ""
"Component type \"UNSIGNED_LONG\". The value is [code]0x140F[/code] which "
"comes from OpenGL. This indicates data is stored in 8-byte or 64-bit unsigned "
"integers. This is NOT a core part of the glTF specification, and may not be "
"supported by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Type de composant \"UNSIGNED_LONG\". La valeur est de [code]0x140F[/code], "
"qui vient d'OpenGL. Cela indique que les données sont stockées dans des "
"entiers non signés de 8 octets ou 64 bits. Il ne s'agit PAS d'une partie "
"essentielle de la spécification glTF, et peut ne pas être supporté par tous "
"les importeurs glTF. Peut être utilisé par certaines extensions dont "
"[code]KHR_interactivity[/code]."

msgid ""
"Gets additional arbitrary data in this [GLTFAnimation] instance. This can be "
"used to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The argument should be the [GLTFDocumentExtension] name (does not have to "
"match the extension name in the glTF file), and the return value can be "
"anything you set. If nothing was set, the return value is [code]null[/code]."
msgstr ""
"Obtient des données arbitraires supplémentaires dans cette instance "
"[GLTFAnimation]. Cela peut être utilisé pour garder des données d'état par "
"nœud dans les classes [GLTFDocumentExtension], ce qui est important parce "
"qu'elles sont sans état.\n"
"L'argument devrait être le nom de la [GLTFDocumentExtension] (ne doit pas "
"forcément correspondre au nom de l'extension dans le fichier glTF), et la "
"valeur de renvoi peut être tout ce que vous définissez. Si rien n'a été "
"défini, la valeur de renvoi est [code]null[/code]."

msgid ""
"Sets additional arbitrary data in this [GLTFAnimation] instance. This can be "
"used to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The first argument should be the [GLTFDocumentExtension] name (does not have "
"to match the extension name in the glTF file), and the second argument can be "
"anything you want."
msgstr ""
"Définit des données arbitraires supplémentaires dans cette instance "
"[GLTFAnimation]. Cela peut être utilisé pour garder des données d'état par "
"nœud dans les classes [GLTFDocumentExtension], ce qui est important parce "
"qu'elles sont sans état.\n"
"Le premier argument devrait être le nom de la [GLTFDocumentExtension] (ne "
"doit pas forcément correspondre au nom de l'extension dans le fichier glTF), "
"et le deuxième argument peut être tout ce que vous voulez."

msgid "The original name of the animation."
msgstr "Le nom original de l'animation."

msgid "Represents a glTF buffer view."
msgstr "Représente une vue de buffer glTF."

msgid ""
"GLTFBufferView is a data structure representing a glTF [code]bufferView[/"
"code] that would be found in the [code]\"bufferViews\"[/code] array. A buffer "
"is a blob of binary data. A buffer view is a slice of a buffer that can be "
"used to identify and extract data from the buffer.\n"
"Most custom uses of buffers only need to use the [member buffer], [member "
"byte_length], and [member byte_offset]. The [member byte_stride] and [member "
"indices] properties are for more advanced use cases such as interleaved mesh "
"data encoded for the GPU."
msgstr ""
"GLTFBufferView est une structure de données représentant un [code]bufferView[/"
"code] glTF qui serait trouvé dans le tableau [code]\"bufferViews\"[/code]. Un "
"buffer est un blob de données binaires. Une vue de buffer est une tranche "
"d'un buffer qui peut être utilisée pour identifier et extraire les données du "
"buffer.\n"
"La plupart des utilisations personnalisées des buffer ont seulement besoin "
"d'utiliser le [member buffer], [member byte_length], et [member byte_offset]. "
"Les propriétés [member byte_stride] et [member indices] sont pour des cas "
"d'utilisation plus avancés tels que les données de maillage entrelacées "
"encodées pour le GPU."

msgid ""
"The index of the buffer this buffer view is referencing. If [code]-1[/code], "
"this buffer view is not referencing any buffer."
msgstr ""
"L'index du buffer que cette vue de buffer référence. Si [code]-1[/code], "
"cette vue de buffer ne référence aucun buffer."

msgid ""
"The length, in bytes, of this buffer view. If [code]0[/code], this buffer "
"view is empty."
msgstr ""
"La longueur, en octets, de cette vue de buffer. Si [code]0[/code], cette vue "
"de buffer est vide."

msgid ""
"The offset, in bytes, from the start of the buffer to the start of this "
"buffer view."
msgstr ""
"Le décalage, en octets, entre le début du buffer et le début de cette vue de "
"buffer."

msgid ""
"[code]true[/code] if the GLTFBufferView's OpenGL GPU buffer type is an "
"[code]ELEMENT_ARRAY_BUFFER[/code] used for vertex indices (integer constant "
"[code]34963[/code]). [code]false[/code] if the buffer type is any other "
"value. See [url=https://github.com/KhronosGroup/glTF-Tutorials/blob/master/"
"gltfTutorial/gltfTutorial_005_BuffersBufferViewsAccessors.md]Buffers, "
"BufferViews, and Accessors[/url] for possible values. This property is set on "
"import and used on export."
msgstr ""
"[code]true[/code] si le type de buffer GPU OpenGL du GLTFBufferView est un "
"[code]ELEMENT_ARRAY_BUFFER[/code] utilisé pour les index de sommets "
"(constante entière [code]34963[/code]). [code]false[/code] si le type de "
"buffer est n'importe quelle autre valeur. Voir [url=https://github.com/"
"KhronosGroup/glTF-Tutorials/blob/master/gltfTutorial/"
"gltfTutorial_005_BuffersBufferViewsAccessors.md] Buffers, BufferViews, et "
"Accesseurs[/url] pour les valeurs possibles. Cette propriété est définie lors "
"de l'import et utilisée lors de l'export."

msgid ""
"[code]true[/code] if the GLTFBufferView's OpenGL GPU buffer type is an "
"[code]ARRAY_BUFFER[/code] used for vertex attributes (integer constant "
"[code]34962[/code]). [code]false[/code] if the buffer type is any other "
"value. See [url=https://github.com/KhronosGroup/glTF-Tutorials/blob/master/"
"gltfTutorial/gltfTutorial_005_BuffersBufferViewsAccessors.md]Buffers, "
"BufferViews, and Accessors[/url] for possible values. This property is set on "
"import and used on export."
msgstr ""
"[code]true[/code] si le type de buffer GPU OpenGL du GLTFBufferView est un "
"[code]ARRAY_BUFFER[/code] utilisé pour les attributs de sommets (constante "
"entière [code]34962[/code]). [code]false[/code] si le type de buffer est "
"n'importe quelle autre valeur. Voir [url=https://github.com/KhronosGroup/glTF-"
"Tutorials/blob/master/gltfTutorial/"
"gltfTutorial_005_BuffersBufferViewsAccessors.md] Buffers, BufferViews, et "
"Accesseurs[/url] pour les valeurs possibles. Cette propriété est définie lors "
"de l'import et utilisée lors de l'export."

msgid "Represents a glTF camera."
msgstr "Représente une caméra glTF."

msgid "Represents a camera as defined by the base glTF spec."
msgstr ""
"Représente une caméra telle que définie par la spécification glTF de base."

msgid "glTF camera detailed specification"
msgstr "Spécification détaillée de la caméra glTF"

msgid "glTF camera spec and example file"
msgstr "Spécification de la caméra glTF et fichier exemple"

msgid "Creates a new GLTFCamera instance by parsing the given [Dictionary]."
msgstr "Crée une nouvelle instance GLTFCamera en parsant le [Dictionary] donné."

msgid "Create a new GLTFCamera instance from the given Godot [Camera3D] node."
msgstr ""
"Crée une nouvelle instance GLTFCamera depuis le nœud [Camera3D] de Godot "
"donné."

msgid "Serializes this GLTFCamera instance into a [Dictionary]."
msgstr "Sérialise cette instance GLTFCamera en un [Dictionary]."

msgid "Converts this GLTFCamera instance into a Godot [Camera3D] node."
msgstr "Convertit cette instance GLTFCamera en un nœud [Camera3D] de Godot."

msgid ""
"The distance to the far culling boundary for this camera relative to its "
"local Z axis, in meters. This maps to glTF's [code]zfar[/code] property."
msgstr ""
"La distance jusqu'à la limite de culling lointain pour cette caméra par "
"rapport à son axe Z local, en mètres. Ceci est associé à la propriété "
"[code]zfar[/code] du glTF."

msgid ""
"The distance to the near culling boundary for this camera relative to its "
"local Z axis, in meters. This maps to glTF's [code]znear[/code] property."
msgstr ""
"La distance jusqu'à la limite de culling proche pour cette caméra par rapport "
"à son axe Z local, en mètres. Ceci est associé à la propriété [code]znear[/"
"code] du glTF."

msgid ""
"The FOV of the camera. This class and glTF define the camera FOV in radians, "
"while Godot uses degrees. This maps to glTF's [code]yfov[/code] property. "
"This value is only used for perspective cameras, when [member perspective] is "
"[code]true[/code]."
msgstr ""
"Le champ de vision de la caméra. Cette classe et le glTF définissent le champ "
"de vision en radians, tandis que Godot utilise des degrés. Ceci est associé à "
"la propriété [code]yfov[/code] du glTF. Cette valeur n'est utilisée que pour "
"les caméras de perspective, lorsque [member perspective] vaut [code]true[/"
"code]."

msgid ""
"If [code]true[/code], the camera is in perspective mode. Otherwise, the "
"camera is in orthographic/orthogonal mode. This maps to glTF's camera "
"[code]type[/code] property. See [member Camera3D.projection] and the glTF "
"spec for more information."
msgstr ""
"Si [code]true[/code], la caméra est en mode perspective. Sinon, la caméra est "
"en mode orthographique/orthogonal. Ceci est associé à la propriété "
"[code]type[/code] du glTF. Voir [member Camera3D.projection] et la "
"spécification glTF pour plus d'informations."

msgid ""
"The size of the camera. This class and glTF define the camera size magnitude "
"as a radius in meters, while Godot defines it as a diameter in meters. This "
"maps to glTF's [code]ymag[/code] property. This value is only used for "
"orthographic/orthogonal cameras, when [member perspective] is [code]false[/"
"code]."
msgstr ""
"La taille de la caméra. Cette classe et le glTF définissent la magnitude de "
"la taille de la caméra comme un rayon en mètres, tandis que Godot la définit "
"comme un diamètre en mètres. Ceci est associé à la propriété [code]ymag[/"
"code] du glTF. Cette valeur n'est utilisée que pour les caméras "
"orthographiques/orthogonales, lorsque [member perspective] vaut [code]false[/"
"code]."

msgid "Class for importing and exporting glTF files in and out of Godot."
msgstr ""
"Classe pour l'importation et l'exportation de fichiers glTF dans et hors de "
"Godot."

msgid ""
"GLTFDocument supports reading data from a glTF file, buffer, or Godot scene. "
"This data can then be written to the filesystem, buffer, or used to create a "
"Godot scene.\n"
"All of the data in a glTF scene is stored in the [GLTFState] class. "
"GLTFDocument processes state objects, but does not contain any scene data "
"itself. GLTFDocument has member variables to store export configuration "
"settings such as the image format, but is otherwise stateless. Multiple "
"scenes can be processed with the same settings using the same GLTFDocument "
"object and different [GLTFState] objects.\n"
"GLTFDocument can be extended with arbitrary functionality by extending the "
"[GLTFDocumentExtension] class and registering it with GLTFDocument via "
"[method register_gltf_document_extension]. This allows for custom data to be "
"imported and exported."
msgstr ""
"GLTFDocument prend en charge la lecture de données d'un fichier glTF, d'un "
"buffer ou d'une scène Godot. Ces données peuvent ensuite être écrites vers le "
"système de fichiers, un buffer ou être utilisées pour créer une scène Godot.\n"
"Toutes les données d'une scène glTF sont stockées dans la classe [GLTFState]. "
"GLTFDocument traite des objets d'état, mais ne contient aucune donnée de "
"scène elle-même. GLTFDocument a des variables membres pour stocker des "
"paramètres de configuration d'exportation tels que le format d'image, mais "
"est autrement sans état. Plusieurs scènes peuvent être traitées avec les "
"mêmes paramètres en utilisant le même objet GLTFDocument et des objets "
"[GLTFState] différents.\n"
"GLTFDocument peut être étendue avec des fonctionnalités arbitraires en "
"étendant la classe [GLTFDocumentExtension] et en l’enregistrant avec "
"GLTFDocument via [method register_gltf_document_extension]. Cela permet "
"d'importer et d'exporter des données personnalisées."

msgid "glTF 'What the duck?' guide"
msgstr "Guide 'What the duck ?' glTF"

msgid "Khronos glTF specification"
msgstr "Spécification de glTF Khronos"

msgid ""
"Takes a [PackedByteArray] defining a glTF and imports the data to the given "
"[GLTFState] object through the [param state] parameter.\n"
"[b]Note:[/b] The [param base_path] tells [method append_from_buffer] where to "
"find dependencies and can be empty."
msgstr ""
"Prend un [PackedByteArray] définissant un glTF et importe les données dans "
"l'objet [GLTFState] donné par le paramètre [param state].\n"
"[b]Note :[/b] Le chemin de base [param base_path] indique à [method "
"append_from_buffer] où trouver les dépendances et peut être vide."

msgid ""
"Takes a path to a glTF file and imports the data at that file path to the "
"given [GLTFState] object through the [param state] parameter.\n"
"[b]Note:[/b] The [param base_path] tells [method append_from_file] where to "
"find dependencies and can be empty."
msgstr ""
"Prend un chemin vers un fichier glTF et importe les données à ce chemin de "
"fichier vers l'objet [GLTFState] donné par le paramètre [param state].\n"
"[b]Note :[/b] Le chemin de base [param base_path] indique à [method "
"append_from_buffer] où trouver les dépendances et peut être vide."

msgid ""
"Takes a Godot Engine scene node and exports it and its descendants to the "
"given [GLTFState] object through the [param state] parameter."
msgstr ""
"Prend un nœud de scène Godot Engine et l'exporte lui et ses descendants vers "
"l'objet [GLTFState] donné par le paramètre [param state]."

msgid ""
"Determines a mapping between the given Godot [param node_path] and the "
"corresponding glTF Object Model JSON pointer(s) in the generated glTF file. "
"The details of this mapping are returned in a [GLTFObjectModelProperty] "
"object. Additional mappings can be supplied via the [method "
"GLTFDocumentExtension._import_object_model_property] callback method."
msgstr ""
"Détermine une association entre le chemin de nœud Godot [param node_path] "
"donné et le(s) pointeur(s) JSON de modèle d'objet glTF correspondant(s) dans "
"le fichier glTF généré. Les détails de cette association sont renvoyés dans "
"un objet [GLTFObjectModelProperty]. Des associations supplémentaires peuvent "
"être fournies via la méthode de callback [method "
"GLTFDocumentExtension._import_object_model_property]."

msgid ""
"Takes a [GLTFState] object through the [param state] parameter and returns a "
"glTF [PackedByteArray]."
msgstr ""
"Prend un objet [GLTFState] à travers le paramètre [param state] et renvoie un "
"[PackedByteArray] de glTF."

msgid ""
"Takes a [GLTFState] object through the [param state] parameter and returns a "
"Godot Engine scene node.\n"
"The [param bake_fps] parameter overrides the bake_fps in [param state]."
msgstr ""
"Prend un objet [GLTFState] à travers le paramètre [param state] et renvoie un "
"nœud de scène Godot Engine.\n"
"Le paramètre [param bake_fps] remplace le bake_fps dans [param state]."

msgid ""
"Returns a list of all support glTF extensions, including extensions supported "
"directly by the engine, and extensions supported by user plugins registering "
"[GLTFDocumentExtension] classes.\n"
"[b]Note:[/b] If this method is run before a GLTFDocumentExtension is "
"registered, its extensions won't be included in the list. Be sure to only run "
"this method after all extensions are registered. If you run this when the "
"engine starts, consider waiting a frame before calling this method to ensure "
"all extensions are registered."
msgstr ""
"Renvoie une liste de toutes les extensions glTF supportées, y compris les "
"extensions supportées directement par le moteur, et les extensions supportées "
"par les plugins d'utilisateurs enregistrant des classes "
"[GLTFDocumentExtension].\n"
"[b]Note :[/b] Si cette méthode est exécutée avant l'enregistrement d'une "
"GLTFDocumentExtension, ses extensions ne seront pas incluses dans la liste. "
"Assurez-vous de seulement exécuter cette méthode après que toutes les "
"extensions soient enregistrées. Si vous exécutez cela lorsque le moteur "
"démarre, envisagez d'attendre une trame avant d'appeler cette méthode pour "
"vous assurer que toutes les extensions sont enregistrées."

msgid ""
"Determines a mapping between the given glTF Object Model [param json_pointer] "
"and the corresponding Godot node path(s) in the generated Godot scene. The "
"details of this mapping are returned in a [GLTFObjectModelProperty] object. "
"Additional mappings can be supplied via the [method "
"GLTFDocumentExtension._export_object_model_property] callback method."
msgstr ""
"Détermine une association entre le pointeur JSON [param json_pointer] de "
"modèle d'objet glTF donné et le chemin de nœud Godot correspondant dans la "
"scène Godot générée. Les détails de cette association sont renvoyés dans un "
"objet [GLTFObjectModelProperty]. Des associations supplémentaires peuvent "
"être fournies via la méthode de callback [method "
"GLTFDocumentExtension._export_object_model_property]."

msgid ""
"Registers the given [GLTFDocumentExtension] instance with GLTFDocument. If "
"[param first_priority] is [code]true[/code], this extension will be run "
"first. Otherwise, it will be run last.\n"
"[b]Note:[/b] Like GLTFDocument itself, all GLTFDocumentExtension classes must "
"be stateless in order to function properly. If you need to store data, use "
"the [code]set_additional_data[/code] and [code]get_additional_data[/code] "
"methods in [GLTFState] or [GLTFNode]."
msgstr ""
"Enregistre l'instance [GLTFDocumentExtension] donnée avec le GLTFDocument. Si "
"[param first_priority] vaut [code]true[/code], cette extension sera exécutée "
"en premier. Sinon, elle le sera en dernier.\n"
"[b]Note :[/b] Comme GLTFDocument lui-même, toutes les classes "
"GLTFDocumentExtension doivent être sans état afin de fonctionner "
"correctement. Si vous devez stocker des données, utilisez les méthodes "
"[code]set_additional_data[/code] et [code]get_additional_data[/code] dans "
"[GLTFState] ou [GLTFNode]."

msgid "Unregisters the given [GLTFDocumentExtension] instance."
msgstr "Désenregistre l'instance [GLTFDocumentExtension] donnée."

msgid ""
"Takes a [GLTFState] object through the [param state] parameter and writes a "
"glTF file to the filesystem.\n"
"[b]Note:[/b] The extension of the glTF file determines if it is a .glb binary "
"file or a .gltf text file."
msgstr ""
"Prend un objet [GLTFState] à travers le paramètre [param state] et écrit un "
"fichier glTF dans le système de fichiers.\n"
"[b]Note :[/b] L'extension du fichier glTF détermine si c'est un fichier "
"binaire .glb ou un fichier texte .gltf."

msgid ""
"The quality of the fallback image, if any. For PNG files, this downscales the "
"image on both dimensions by this factor. For JPEG files, this is the lossy "
"quality of the image. A low value is recommended, since including multiple "
"high quality images in a glTF file defeats the file size gains of using a "
"more efficient image format."
msgstr ""
"La qualité de l'image de repli, le cas échéant. Pour les fichiers PNG, cela "
"réduit l'image sur les deux dimensions par ce facteur. Pour les fichiers "
"JPEG, c'est la qualité de perte de l'image. Une faible valeur est "
"recommandée, puisque l'inclusion de multiples images de haute qualité dans un "
"fichier glTF annule les gains de taille de fichier grâce à l'utilisation d'un "
"format d'image plus efficace."

msgid ""
"The user-friendly name of the export image format. This is used when "
"exporting the glTF file, including writing to a file and writing to a byte "
"array.\n"
"By default, Godot allows the following options: \"None\", \"PNG\", \"JPEG\", "
"\"Lossless WebP\", and \"Lossy WebP\". Support for more image formats can be "
"added in [GLTFDocumentExtension] classes. A single extension class can "
"provide multiple options for the specific format to use, or even an option "
"that uses multiple formats at once."
msgstr ""
"Le nom facilement lisible du format d'image d'exportation. Ceci est utilisé "
"lors de l'exportation du fichier glTF, y compris l'écriture vers un fichier "
"et l'écriture vers un tableau d'octets.\n"
"Par défaut, Godot permet les options suivantes : \"None\", \"PNG\", \"JPEG\", "
"\"Lossless WebP\", et \"Lossy WebP\". Le support pour plus de formats d'image "
"peut être ajouté dans des classes [GLTFDocumentExtension]. Une seule classe "
"d'extension peut fournir plusieurs options pour le format spécifique à "
"utiliser, ou même une option qui utilise plusieurs formats à la fois."

msgid ""
"If [member image_format] is a lossy image format, this determines the lossy "
"quality of the image. On a range of [code]0.0[/code] to [code]1.0[/code], "
"where [code]0.0[/code] is the lowest quality and [code]1.0[/code] is the "
"highest quality. A lossy quality of [code]1.0[/code] is not the same as "
"lossless."
msgstr ""
"Si [member image_format] est un format d'image avec pertes, cela détermine la "
"qualité de la perte de l'image. Sur un intervalle de [code]0.0[/code] à "
"[code]1.0[/code], où [code]0.0[/code] est la plus basse qualité et [code]1.0[/"
"code] est la plus haute qualité. Une qualité de perde de [code]1.0[/code] "
"n'est pas la même chose que le sans-perte."

msgid ""
"How to process the root node during export. The default and recommended value "
"is [constant ROOT_NODE_MODE_SINGLE_ROOT].\n"
"[b]Note:[/b] Regardless of how the glTF file is exported, when importing, the "
"root node type and name can be overridden in the scene import settings tab."
msgstr ""
"Comment traiter le nœud racine pendant l'export. La valeur par défaut et "
"recommandée est [constant ROOT_NODE_MODE_SINGLE_ROOT].\n"
"[b]Note :[/b] Quelle que soit la façon dont le fichier glTF est exporté, lors "
"de l'importation, le type et le nom du nœud racine peuvent être redéfinis "
"dans l'onglet Paramètres d'import de la scène."

msgid ""
"How to deal with node visibility during export. This setting does nothing if "
"all nodes are visible. The default and recommended value is [constant "
"VISIBILITY_MODE_INCLUDE_REQUIRED], which uses the [code]KHR_node_visibility[/"
"code] extension."
msgstr ""
"Comment gérer la visibilité du nœud lors de l'export. Ce paramètre ne fait "
"rien si tous les nœuds sont visibles. La valeur par défaut et recommandée est "
"[constant VISIBILITY_MODE_INCLUDE_REQUIRED], qui utilise l'extension "
"[code]KHR_node_visibility[/code]."

msgid ""
"Treat the Godot scene's root node as the root node of the glTF file, and mark "
"it as the single root node via the [code]GODOT_single_root[/code] glTF "
"extension. This will be parsed the same as [constant "
"ROOT_NODE_MODE_KEEP_ROOT] if the implementation does not support "
"[code]GODOT_single_root[/code]."
msgstr ""
"Traite le nœud racine de la scène Godot comme nœud racine du fichier glTF, et "
"le marque comme le nœud racine unique via l'extension glTF "
"[code]GODOT_single_root[/code]. Cela sera parsé de la même manière que "
"[constant ROOT_NODE_MODE_KEEP_ROOT] si l'implémentation ne supporte pas "
"[code]GODOT_single_root[/code]."

msgid ""
"Treat the Godot scene's root node as the root node of the glTF file, but do "
"not mark it as anything special. An extra root node will be generated when "
"importing into Godot. This uses only vanilla glTF features. This is "
"equivalent to the behavior in Godot 4.1 and earlier."
msgstr ""
"Traite le nœud racine de la scène Godot comme nœud racine du fichier glTF, "
"mais ne le marque pas comme quelque chose de spécial. Un nœud racine "
"supplémentaire sera généré lors de l'import dans Godot. Ceci utilise "
"seulement les fonctionnalités de base du glTF. C'est équivalent au "
"comportement dans Godot 4.1 et antérieur."

msgid ""
"Treat the Godot scene's root node as the name of the glTF scene, and add all "
"of its children as root nodes of the glTF file. This uses only vanilla glTF "
"features. This avoids an extra root node, but only the name of the Godot "
"scene's root node will be preserved, as it will not be saved as a node."
msgstr ""
"Traite le nœud racine de la scène Godot comme le nom de la scène glTF, et "
"ajoute tous ses enfants comme nœuds racines du fichier glTF. Ceci utilise "
"seulement les fonctionnalités de base du glTF. Cela évite un nœud racine "
"supplémentaire, mais seulement le nom du nœud racine de la scène Godot sera "
"préservé, car il ne sera pas sauvegardé comme nœud."

msgid ""
"If the scene contains any non-visible nodes, include them, mark them as non-"
"visible with [code]KHR_node_visibility[/code], and require that importers "
"respect their non-visibility. Downside: If the importer does not support "
"[code]KHR_node_visibility[/code], the file cannot be imported."
msgstr ""
"Si la scène contient des nœuds non visibles, les inclut, les marque comme non "
"visibles avec [code]KHR_node_visibility[/code], et exige que les importeurs "
"respectent leur non-visibilité. Désavantage : Si l'importateur ne supporte "
"pas [code]KHR_node_visibility[/code], le fichier ne peut pas être importé."

msgid ""
"If the scene contains any non-visible nodes, include them, mark them as non-"
"visible with [code]KHR_node_visibility[/code], and do not impose any "
"requirements on importers. Downside: If the importer does not support "
"[code]KHR_node_visibility[/code], invisible objects will be visible."
msgstr ""
"Si la scène contient des nœuds non visibles, les inclut, les marque comme non "
"visibles avec [code]KHR_node_visibility[/code], et n'impose pas d'exigences "
"sur les importeurs. Désavantage : Si l'importateur ne supporte pas "
"[code]KHR_node_visibility[/code], les objets invisibles seront visibles."

msgid ""
"If the scene contains any non-visible nodes, do not include them in the "
"export. This is the same as the behavior in Godot 4.4 and earlier. Downside: "
"Invisible nodes will not exist in the exported file."
msgstr ""
"Si la scène contient des nœuds non visibles, ne les inclut pas dans l'export. "
"Il s'agit du comportement de Godot 4.4 et antérieur. Désavantage : Les nœuds "
"invisibles n'existeront pas dans le fichier exporté."

msgid "[GLTFDocument] extension class."
msgstr "Classe d'extension de [GLTFDocument]."

msgid ""
"Extends the functionality of the [GLTFDocument] class by allowing you to run "
"arbitrary code at various stages of glTF import or export.\n"
"To use, make a new class extending GLTFDocumentExtension, override any "
"methods you need, make an instance of your class, and register it using "
"[method GLTFDocument.register_gltf_document_extension].\n"
"[b]Note:[/b] Like GLTFDocument itself, all GLTFDocumentExtension classes must "
"be stateless in order to function properly. If you need to store data, use "
"the [code]set_additional_data[/code] and [code]get_additional_data[/code] "
"methods in [GLTFState] or [GLTFNode]."
msgstr ""
"Étend la fonctionnalité de la classe [GLTFDocument] en vous permettant "
"d'exécuter du code arbitraire à différentes étapes de l'importation ou de "
"l'exportation du glTF.\n"
"Pour l'utiliser, faites une nouvelle classe étendant GLTFDocumentExtension, "
"redéfinissez toutes les méthodes dont vous avez besoin, faites une instance "
"de votre classe, et enregistrez la en utilisant [method "
"GLTFDocument.register_gltf_document_extension].\n"
"[b]Note :[/b] Comme GLTFDocument lui-même, toutes les classes "
"GLTFDocumentExtension doivent être sans état afin de fonctionner "
"correctement. Si vous devez stocker des données, utilisez les méthodes "
"[code]set_additional_data[/code] et [code]get_additional_data[/code] dans "
"[GLTFState] ou [GLTFNode]."

msgid "Represents a glTF light."
msgstr "Représente une lumière glTF."

msgid ""
"Represents a light as defined by the [code]KHR_lights_punctual[/code] glTF "
"extension."
msgstr ""
"Représente une lumière comme définie par l'extension glTF "
"[code]KHR_lights_punctual[/code]."

msgid "KHR_lights_punctual glTF extension spec"
msgstr "Spécification d'extension glTF KHR_lights_punctual"

msgid "Creates a new GLTFLight instance by parsing the given [Dictionary]."
msgstr ""
"Crée une nouvelle instance GLTFLight en interprétant le [Dictionary] donné."

msgid "Create a new GLTFLight instance from the given Godot [Light3D] node."
msgstr ""
"Crée une nouvelle instance GLTFLight à partir du nœud Godot [Light3D] donné."

msgid "Serializes this GLTFLight instance into a [Dictionary]."
msgstr "Sérialise cette instance GLTFLight en un [Dictionary]."

msgid "Converts this GLTFLight instance into a Godot [Light3D] node."
msgstr "Convertit cette instance GLTFLight en un nœud Godot [Light3D]."

msgid ""
"The [Color] of the light in linear space. Defaults to white. A black color "
"causes the light to have no effect.\n"
"This value is linear to match glTF, but will be converted to nonlinear sRGB "
"when creating a Godot [Light3D] node upon import, or converted to linear when "
"exporting a Godot [Light3D] to glTF."
msgstr ""
"La [Color] de la lumière dans l'espace linéaire. Blanc par défaut. Une "
"couleur noire fait que la lumière pour n'a aucun effet.\n"
"Cette valeur est linéaire pour correspondre au glTF, mais sera convertie en "
"sRGB non linéaire lors de la création d'un nœud Godot [Light3D] lors de "
"l'import, ou convertie en linéaire lors de l'export d'un [Light3D] de Godot "
"en glTF."

msgid ""
"The inner angle of the cone in a spotlight. Must be less than or equal to the "
"outer cone angle.\n"
"Within this angle, the light is at full brightness. Between the inner and "
"outer cone angles, there is a transition from full brightness to zero "
"brightness. When creating a Godot [SpotLight3D], the ratio between the inner "
"and outer cone angles is used to calculate the attenuation of the light."
msgstr ""
"L'angle interne du cône dans un projecteur. Doit être inférieur ou égal à "
"l'angle externe du cône.\n"
"Dans cet angle, la lumière est à pleine luminosité. Entre les angles interne "
"et externe du cône, il y a une transition de la luminosité totale à aucune "
"luminosité. Lors de la création d'un [SpotLight3D] de Godot, le rapport entre "
"les angles de cône interne et externe est utilisé pour calculer l'atténuation "
"de la lumière."

msgid ""
"The intensity of the light. This is expressed in candelas (lumens per "
"steradian) for point and spot lights, and lux (lumens per m²) for directional "
"lights. When creating a Godot light, this value is converted to a unitless "
"multiplier."
msgstr ""
"L'intensité de la lumière. Ceci est exprimé en candelas (lumens par "
"stéradian) pour les lumières en point et les spots, et en lux (lumens par m²) "
"pour les lumières directionnels. En créant une lumière, cette valeur est "
"convertie en un multiplicateur sans unité."

msgid ""
"The type of the light. The values accepted by Godot are \"point\", \"spot\", "
"and \"directional\", which correspond to Godot's [OmniLight3D], "
"[SpotLight3D], and [DirectionalLight3D] respectively."
msgstr ""
"Le type de la lumière. Les valeurs acceptées par Godot sont « point », "
"« spot » et « directional », qui correspondent respectivement au "
"[OmniLight3D], [SpotLight3D] et [DirectionalLight3D] de Godot."

msgid ""
"The outer angle of the cone in a spotlight. Must be greater than or equal to "
"the inner angle.\n"
"At this angle, the light drops off to zero brightness. Between the inner and "
"outer cone angles, there is a transition from full brightness to zero "
"brightness. If this angle is a half turn, then the spotlight emits in all "
"directions. When creating a Godot [SpotLight3D], the outer cone angle is used "
"as the angle of the spotlight."
msgstr ""
"L'angle externe du cône dans un projecteur. Doit être inférieur ou égal à "
"l'angle interne du cône.\n"
"À cet angle, la lumière a une luminosité nulle. Entre les angles internes et "
"externes du cône, il y a une transition de luminosité totale à aucune "
"luminosité. Si l'angle est un demi tour, le projecteur émet dans toutes les "
"directions. Lors de la création d'un [SpotLight3D] de Godot, l'angle externe "
"du cône est utilisé en tant qu'angle du projecteur."

msgid ""
"The range of the light, beyond which the light has no effect. glTF lights "
"with no range defined behave like physical lights (which have infinite "
"range). When creating a Godot light, the range is clamped to [code]4096.0[/"
"code]."
msgstr ""
"La portée de la lumière, au-delà de laquelle la lumière n'a plus aucun effet. "
"Les lumières en glTF sans portée définie se comportent comme des lumières "
"physiques (qui ont une portée infinie). Lors de la création d'une lumière de "
"Godot, la portée est bornée à [code]4096.0[/code]."

msgid "GLTFMesh represents a glTF mesh."
msgstr "GLTFMesh représente un maillage glTF."

msgid ""
"GLTFMesh handles 3D mesh data imported from glTF files. It includes "
"properties for blend channels, blend weights, instance materials, and the "
"mesh itself."
msgstr ""
"GLTFMesh gère les données de maillage 3D importées de fichiers glTF. Il "
"comprend des propriétés pour les canaux de mélange, les poids de mélange, les "
"matériaux d'instance et le maillage lui-même."

msgid ""
"Gets additional arbitrary data in this [GLTFMesh] instance. This can be used "
"to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The argument should be the [GLTFDocumentExtension] name (does not have to "
"match the extension name in the glTF file), and the return value can be "
"anything you set. If nothing was set, the return value is [code]null[/code]."
msgstr ""
"Obtient des données arbitraires supplémentaires dans cette instance "
"[GLTFMesh]. Cela peut être utilisé pour garder des données de l'état par nœud "
"dans les classes [GLTFDocumentExtension], ce qui est important parce qu'elles "
"sont sans état.\n"
"L' argument devrait être le nom de la [GLTFDocumentExtension] (ne doit pas "
"forcément correspondre au nom de l'extension dans le fichier glTF), et la "
"valeur renvoyée est ce que vous avez défini. Si rien n'a été défini, la "
"valeur renvoyée est [code]null[/code]."

msgid ""
"Sets additional arbitrary data in this [GLTFMesh] instance. This can be used "
"to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The first argument should be the [GLTFDocumentExtension] name (does not have "
"to match the extension name in the glTF file), and the second argument can be "
"anything you want."
msgstr ""
"Définit des données arbitraires supplémentaires dans cette instance "
"[GLTFMesh]. Cela peut être utilisé pour garder des données de l'état par nœud "
"dans les classes [GLTFDocumentExtension], ce qui est important parce qu'elles "
"sont sans état.\n"
"Le premier argument devrait être le nom de la [GLTFDocumentExtension] (ne "
"doit pas forcément correspondre au nom de l'extension dans le fichier glTF), "
"et le deuxième argument peut être tout ce que vous voulez."

msgid "An array of floats representing the blend weights of the mesh."
msgstr "Un tableau de flottants représentant les poids de mélange du maillage."

msgid ""
"An array of Material objects representing the materials used in the mesh."
msgstr ""
"Un tableau d'objets Material représentant les matériaux utilisés dans le "
"maillage."

msgid "The [ImporterMesh] object representing the mesh itself."
msgstr "L'objet [ImporterMesh] représentant le maillage lui-même."

msgid "The original name of the mesh."
msgstr "Le nom original du maillage."

msgid "glTF node class."
msgstr "Classe de nœud glTF."

msgid "GLTF Object Model"
msgstr "Modèle d'objet GLTF"

msgid "KHR_animation_pointer GLTF extension"
msgstr "Extension GLTF KHR_animation_pointer"

msgid "Represents a glTF physics body."
msgstr "Représente un corps physique glTF."

msgid ""
"Represents a physics body as an intermediary between the "
"[code]OMI_physics_body[/code] glTF data and Godot's nodes, and it's "
"abstracted in a way that allows adding support for different glTF physics "
"extensions in the future."
msgstr ""
"Représente un corps physique comme intermédiaire entre les données glTF "
"[code]OMI_physics_body[/code] et les nœuds de Godot, et il est abstrait d'une "
"manière qui permet d'ajouter du support pour différentes extensions de "
"physique glTF à l'avenir."

msgid "OMI_physics_body glTF extension"
msgstr "Extension glTF OMI_physics_body"

msgid ""
"Creates a new GLTFPhysicsBody instance by parsing the given [Dictionary] in "
"the [code]OMI_physics_body[/code] glTF extension format."
msgstr ""
"Crée une nouvelle instance GLTFPhysicsBody en parsant le [Dictionary] donné "
"dans le format d'extension glTF [code]OMI_physics_body[/code]."

msgid ""
"Creates a new GLTFPhysicsBody instance from the given Godot "
"[CollisionObject3D] node."
msgstr ""
"Crée une nouvelle instance GLTFPhysicsBody depuis le nœud [CollisionObject3D] "
"Godot donné."

msgid ""
"Serializes this GLTFPhysicsBody instance into a [Dictionary]. It will be in "
"the format expected by the [code]OMI_physics_body[/code] glTF extension."
msgstr ""
"Sérialise cette instance GLTFPhysicsBody en un [Dictionary]. Il sera dans le "
"format prévu par l'extension glTF [code]OMI_physics_body[/code]."

msgid ""
"Converts this GLTFPhysicsBody instance into a Godot [CollisionObject3D] node."
msgstr ""
"Convertit cette instance GLTFPhysicsBody en un nœud Godot [CollisionObject3D]."

msgid ""
"The angular velocity of the physics body, in radians per second. This is only "
"used when the body type is \"rigid\" or \"vehicle\"."
msgstr ""
"La vitesse angulaire du corps physique, en radians par seconde. Ceci n'est "
"utilisé que lorsque le type du corps est \"rigid\" ou \"vehicle\"."

msgid ""
"The type of the body.\n"
"When importing, this controls what type of [CollisionObject3D] node Godot "
"should generate. Valid values are [code]\"static\"[/code], [code]"
"\"animatable\"[/code], [code]\"character\"[/code], [code]\"rigid\"[/code], "
"[code]\"vehicle\"[/code], and [code]\"trigger\"[/code].\n"
"When exporting, this will be squashed down to one of [code]\"static\"[/code], "
"[code]\"kinematic\"[/code], or [code]\"dynamic\"[/code] motion types, or the "
"[code]\"trigger\"[/code] property."
msgstr ""
"Le type du corps.\n"
"Lors de l'importation, ceci contrôle quel type de nœud [CollisionObject3D] "
"Godot devrait générer. Les valeurs valides sont [code]\"static\"[/code], "
"[code]\"animatable\"[/code], [code]\"character\"[/code], [code]\"rigid\"[/"
"code], [code]\"vehicle\"[/code], et [code]\"trigger\"[/code].\n"
"Lors de l'exportation, cela sera écrasé en l'un des types de mouvement [code]"
"\"static\"[/code], [code]\"kinematic\"[/code], ou [code]\"dynamic\"[/code], "
"ou la propriété [code]\"trigger\"[/code]."

msgid ""
"The center of mass of the body, in meters. This is in local space relative to "
"the body. By default, the center of the mass is the body's origin."
msgstr ""
"Le centre de masse du corps, en mètres. Il est dans l'espace local relatif au "
"corps. Par défaut, le centre de masse est l'origine du corps."

msgid ""
"The inertia strength of the physics body, in kilogram meter squared (kg⋅m²). "
"This represents the inertia around the principle axes, the diagonal of the "
"inertia tensor matrix. This is only used when the body type is \"rigid\" or "
"\"vehicle\".\n"
"When converted to a Godot [RigidBody3D] node, if this value is zero, then the "
"inertia will be calculated automatically."
msgstr ""
"La force d'inertie du corps physique, en kilogramme mètres carrés (kg⋅m2). "
"Cela représente l'inertie autour des axes principaux, la diagonale de la "
"matrice du tenseur d'inertie. Ceci n'est utilisé que lorsque le type du corps "
"est \"rigid\" ou \"vehicle\".\n"
"Lors de la conversion en un nœud [RigidBody3D] de Godot, si cette valeur est "
"nulle, l'inertie sera calculée automatiquement."

msgid ""
"The inertia orientation of the physics body. This defines the rotation of the "
"inertia's principle axes relative to the object's local axes. This is only "
"used when the body type is \"rigid\" or \"vehicle\" and [member "
"inertia_diagonal] is set to a non-zero value."
msgstr ""
"L'orientation de l'inertie du corps physique. Cela définit la rotation des "
"axes principaux de l'inertie par rapport aux axes locaux de l'objet. Ceci "
"n'est utilisé que lorsque le type du corps est \"rigid\" ou \"vehicle\" et "
"que [member inertia_diagonal] est défini à une valeur non nulle."

msgid ""
"The inertia tensor of the physics body, in kilogram meter squared (kg⋅m²). "
"This is only used when the body type is \"rigid\" or \"vehicle\".\n"
"When converted to a Godot [RigidBody3D] node, if this value is zero, then the "
"inertia will be calculated automatically."
msgstr ""
"Le tenseur d'inertie du corps physique, en kilogramme mètres carrés (kg⋅m2). "
"Ceci n'est utilisé que lorsque le type du corps est \"rigid\" ou "
"\"vehicle\".\n"
"Lors de la conversion en un nœud [RigidBody3D] de Godot, si cette valeur est "
"nulle, l'inertie sera calculée automatiquement."

msgid ""
"The linear velocity of the physics body, in meters per second. This is only "
"used when the body type is \"rigid\" or \"vehicle\"."
msgstr ""
"La vitesse linéaire du corps physique, en mètres par seconde. Ceci n'est "
"utilisé que lorsque le type du corps est \"rigid\" ou \"vehicle\"."

msgid ""
"The mass of the physics body, in kilograms. This is only used when the body "
"type is \"rigid\" or \"vehicle\"."
msgstr ""
"La masse du corps physique, en kilogrammes. Ceci n'est utilisé que lorsque le "
"type du corps est \"rigid\" ou \"vehicle\"."

msgid "Represents a glTF physics shape."
msgstr "Représente une forme physique glTF."

msgid ""
"Represents a physics shape as defined by the [code]OMI_physics_shape[/code] "
"or [code]OMI_collider[/code] glTF extensions. This class is an intermediary "
"between the glTF data and Godot's nodes, and it's abstracted in a way that "
"allows adding support for different glTF physics extensions in the future."
msgstr ""
"Représente une forme physique définie par les extensions glTF "
"[code]OMI_physics_shape[/code] ou [code]OMI_collider[/code]. Cette classe est "
"un intermédiaire entre les données glTF et les nœuds de Godot, et elle est "
"abstraite d'une manière qui permet d'ajouter du support à diverses extensions "
"de physique glTF à l'avenir."

msgid "OMI_physics_shape glTF extension"
msgstr "Extension glTF OMI_physics_shape"

msgid "OMI_collider glTF extension"
msgstr "Extension glTF OMI_collider"

msgid ""
"Creates a new GLTFPhysicsShape instance by parsing the given [Dictionary]."
msgstr ""
"Crée une nouvelle instance GLTFPhysicsShape en interprétant le [Dictionary] "
"donné."

msgid ""
"Creates a new GLTFPhysicsShape instance from the given Godot "
"[CollisionShape3D] node."
msgstr ""
"Crée une nouvelle instance GLTFPhysicsShape depuis le nœud Godot "
"[CollisionShape3D] donné."

msgid ""
"Creates a new GLTFPhysicsShape instance from the given Godot [Shape3D] "
"resource."
msgstr ""
"Crée une nouvelle instance GLTFPhysicsShape depuis le nœud Godot [Shape3D] "
"donné."

msgid ""
"Serializes this GLTFPhysicsShape instance into a [Dictionary] in the format "
"defined by [code]OMI_physics_shape[/code]."
msgstr ""
"Sérialise cette instance GLTFPhysicsShape en un [Dictionary] dans le format "
"défini par [code]OMI_physics_shape[/code]."

msgid ""
"Converts this GLTFPhysicsShape instance into a Godot [CollisionShape3D] node."
msgstr ""
"Convertit cette instance GLTFPhysicsShape en un nœud Godot [CollisionShape3D]."

msgid "Converts this GLTFPhysicsShape instance into a Godot [Shape3D] resource."
msgstr "Convertit cette instance GLTFPhysicsShape en un nœud Godot [Shape3D]."

msgid ""
"The height of the shape, in meters. This is only used when the shape type is "
"[code]\"capsule\"[/code] or [code]\"cylinder\"[/code]. This value should not "
"be negative, and for [code]\"capsule\"[/code] it should be at least twice the "
"radius."
msgstr ""
"La hauteur de la forme, en mètres. Ce n'est utilisé que lorsque le type de "
"forme est [code]\"capsule\"[/code] ou [code]\"cylinder\"[/code]. Cette valeur "
"ne devrait pas être négative, et pour [code]\"capsule\"[/code] elle devrait "
"être au moins de deux fois le rayon."

msgid ""
"The [ImporterMesh] resource of the shape. This is only used when the shape "
"type is [code]\"hull\"[/code] (convex hull) or [code]\"trimesh\"[/code] "
"(concave trimesh)."
msgstr ""
"La ressource [ImporterMesh] de la forme. Ce n'est utilisé que lorsque le type "
"de forme est [code]\"hull\"[/code] (enveloppe convexe) ou [code]\"trimesh\"[/"
"code] (maillage triangulaire concave)."

msgid ""
"The index of the shape's mesh in the glTF file. This is only used when the "
"shape type is [code]\"hull\"[/code] (convex hull) or [code]\"trimesh\"[/code] "
"(concave trimesh)."
msgstr ""
"L'index du maillage de la forme dans le fichier glTF. Ce n'est utilisé que "
"lorsque le type de forme est [code]\"hull\"[/code] (enveloppe convexe) ou "
"[code]\"trimesh\"[/code] (maillage triangulaire concave)."

msgid ""
"The radius of the shape, in meters. This is only used when the shape type is "
"[code]\"capsule\"[/code], [code]\"cylinder\"[/code], or [code]\"sphere\"[/"
"code]. This value should not be negative."
msgstr ""
"Le rayon de la forme, en mètres. Ceci n'est utilisé que lorsque le type de "
"forme est [code]\"capsule\"[/code], [code]\"cylinder\"[/code], ou [code]"
"\"sphere\"[/code]. Cette valeur ne devrait pas être négative."

msgid ""
"The type of shape this shape represents. Valid values are [code]\"box\"[/"
"code], [code]\"capsule\"[/code], [code]\"cylinder\"[/code], [code]\"sphere\"[/"
"code], [code]\"hull\"[/code], and [code]\"trimesh\"[/code]."
msgstr ""
"Le type de forme que cette forme représente. Les valeurs valides sont [code]"
"\"box\"[/code], [code]\"capsule\"[/code], [code]\"cylinder\"[/code], [code]"
"\"sphere\"[/code], [code]\"hull\"[/code], et [code]\"trimesh\"[/code]."

msgid ""
"The size of the shape, in meters. This is only used when the shape type is "
"[code]\"box\"[/code], and it represents the [code]\"diameter\"[/code] of the "
"box. This value should not be negative."
msgstr ""
"La taille de la forme, en mètres. Ceci est utilisé uniquement lorsque le type "
"de forme est [code]\"box\"[/code], et elle représente le diamètre ([code]"
"\"diameter\"[/code]) de la boîte. Cette valeur ne devrait pas être négative."

msgid ""
"Returns a [Dictionary] that maps skeleton bone indices to the indices of glTF "
"nodes. This property is unused during import, and only set during export. In "
"a glTF file, a bone is a node, so Godot converts skeleton bones to glTF nodes."
msgstr ""
"Renvoie un [Dictionary] qui associe les indices d'os du squelette aux indices "
"des nœuds glTF. Cette propriété est inutilisée lors de l'import, et seulement "
"définie pendant l'export. Dans un fichier glTF, un os est un nœud, ainsi "
"Godot convertit les os du squelette en nœuds glTF."

msgid ""
"Sets a [Dictionary] that maps skeleton bone indices to the indices of glTF "
"nodes. This property is unused during import, and only set during export. In "
"a glTF file, a bone is a node, so Godot converts skeleton bones to glTF nodes."
msgstr ""
"Définit un [Dictionary] qui associe les indices d'os du squelette aux indices "
"des nœuds glTF. Cette propriété est inutilisée lors de l'import, et seulement "
"définie pendant l'export. Dans un fichier glTF, un os est un nœuds, ainsi, "
"Godot convertit les os du squelette en nœuds glTF."

msgid ""
"KHR_materials_pbrSpecularGlossiness is an archived glTF extension. This means "
"that it is deprecated and not recommended for new files. However, it is still "
"supported for loading old files."
msgstr ""
"KHR_materials_pbrSpecularGlossiness est une extension glTF archivée. Cela "
"signifie qu'elle est obsolète et non recommandée pour de nouveaux fichiers. "
"Cependant, elle est toujours supportée pour le chargement de vieux fichiers."

msgid "KHR_materials_pbrSpecularGlossiness glTF extension spec"
msgstr "Spécification d'extension glTF KHR_materials_pbrSpecularGlossiness"

msgid "The diffuse texture."
msgstr "La texture de diffusion."

msgid "glTF asset header schema"
msgstr "Schéma d'en-tête de ressource glTF"

msgid ""
"The copyright string in the asset header of the glTF file. This is set during "
"import if present and export if non-empty. See the glTF asset header "
"documentation for more information."
msgstr ""
"La chaîne de copyright dans l'en-tête de ressource du fichier glTF. Ceci est "
"défini lors de l'import si présent et lors de l'export si non-vide. Pour plus "
"d'informations, consultez la documentation de l'en-tête de ressource glTF."

msgid "The binary buffer attached to a .glb file."
msgstr "Le buffer binaire attaché à un fichier .glb."

msgid "Represents a glTF texture sampler"
msgstr "Représente un échantillonneur de texture glTF"

msgid "A 2D particle emitter."
msgstr "Un émetteur de particules 2D."

msgid ""
"2D particle node used to create a variety of particle systems and effects. "
"[GPUParticles2D] features an emitter that generates some number of particles "
"at a given rate.\n"
"Use the [member process_material] property to add a [ParticleProcessMaterial] "
"to configure particle appearance and behavior. Alternatively, you can add a "
"[ShaderMaterial] which will be applied to all particles.\n"
"2D particles can optionally collide with [LightOccluder2D], but they don't "
"collide with [PhysicsBody2D] nodes."
msgstr ""
"Nœud de particules 2D utilisé pour créer une variété de systèmes et d'effets "
"de particules. [GPUParticles2D] dispose d'un émetteur qui génère un certain "
"nombre de particules à un taux donné.\n"
"Utilisez la propriété [member process_material] pour ajouter un "
"[ParticleProcessMaterial] pour configurer l'apparence et le comportement des "
"particules. Alternativement, vous pouvez ajouter un [ShaderMaterial] qui sera "
"appliqué à toutes les particules.\n"
"Les particules 2D peuvent optionnellement entrer en collision avec des nœuds "
"[LightOccluder2D], mais elles n'entrent pas en collision avec des nœuds "
"[PhysicsBody2D]."

msgid "2D Particles Demo"
msgstr "Démo des particules en 2D"

msgid ""
"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the player)"
msgstr ""
"Démo 2D « Dodge The Creeps » (utilise GPUParticles2D pour les traces derrière "
"le joueur)"

msgid ""
"Returns a rectangle containing the positions of all existing particles.\n"
"[b]Note:[/b] When using threaded rendering this method synchronizes the "
"rendering thread. Calling it often may have a negative impact on performance."
msgstr ""
"Renvoie un rectangle contenant les positions de toutes les particules "
"existantes.\n"
"[b]Note :[/b] Lors de l'utilisation du rendu par thread, cette méthode "
"synchronise le thread de rendu. L'appeler souvent peut avoir un impact "
"négatif sur les performances."

msgid "Sets this node's properties to match a given [CPUParticles2D] node."
msgstr ""
"Défini les propriétés de ce nœud pour correspondre à un nœud [CPUParticles2D] "
"donné."

msgid ""
"Emits a single particle. Whether [param xform], [param velocity], [param "
"color] and [param custom] are applied depends on the value of [param flags]. "
"See [enum EmitFlags].\n"
"The default ParticleProcessMaterial will overwrite [param color] and use the "
"contents of [param custom] as [code](rotation, age, animation, lifetime)[/"
"code].\n"
"[b]Note:[/b] [method emit_particle] is only supported on the Forward+ and "
"Mobile rendering methods, not Compatibility."
msgstr ""
"Émet une seule particule. Si [param xform], [param velocity], [param color] "
"et [param custom] sont appliqués ou non dépend de la valeur de [param flags]. "
"Voir [enum EmitFlags].\n"
"Par défaut, ParticleProcessMaterial va écraser [param color] et utiliser le "
"contenu de [param custom] comme [code](rotation, âge, animation, durée de vie)"
"[/code].\n"
"[b]Note :[/b] [method emit_particle] n'est supporté que sur les méthodes de "
"rendu Forward+ et Mobile, pas Compatibilité."

msgid ""
"Restarts the particle emission cycle, clearing existing particles. To avoid "
"particles vanishing from the viewport, wait for the [signal finished] signal "
"before calling.\n"
"[b]Note:[/b] The [signal finished] signal is only emitted by [member "
"one_shot] emitters.\n"
"If [param keep_seed] is [code]true[/code], the current random seed will be "
"preserved. Useful for seeking and playback."
msgstr ""
"Redémarre le cycle d'émission de particules, enlevant les particules "
"existantes. Pour éviter que les particules ne disparaissent du viewport, "
"attendez le signal [signal finished] avant d'appeler.\n"
"[b]Note :[/b] Le signal [signal finished] n'est émis que par des émetteurs "
"[member one_shot].\n"
"Si [param keep_seed] vaut [code]true[/code], la graine actuelle de "
"l'aléatoire sera préservée. Utile pour l'avancement et la lecture."

msgid ""
"The number of particles to emit in one emission cycle. The effective emission "
"rate is [code](amount * amount_ratio) / lifetime[/code] particles per second. "
"Higher values will increase GPU requirements, even if not all particles are "
"visible at a given time or if [member amount_ratio] is decreased.\n"
"[b]Note:[/b] Changing this value will cause the particle system to restart. "
"To avoid this, change [member amount_ratio] instead."
msgstr ""
"Le nombre de particules à émettre dans un cycle d'émission. Le taux "
"d'émission effectif est de [code](amount * amount_ratio) / lifetime[/code] "
"particules par seconde. Des valeurs plus élevées augmenteront le coût sur le "
"GPU, même si toutes les particules ne sont pas visibles à un moment donné ou "
"si [member amount_ratio] est diminué.\n"
"[b]Note :[/b] Modifier cette valeur entraînera le redémarrage du système de "
"particules. Pour éviter cela, modifiez plutôt [member amount_ratio]."

msgid ""
"The ratio of particles that should actually be emitted. If set to a value "
"lower than [code]1.0[/code], this will set the amount of emitted particles "
"throughout the lifetime to [code]amount * amount_ratio[/code]. Unlike "
"changing [member amount], changing [member amount_ratio] while emitting does "
"not affect already-emitted particles and doesn't cause the particle system to "
"restart. [member amount_ratio] can be used to create effects that make the "
"number of emitted particles vary over time.\n"
"[b]Note:[/b] Reducing the [member amount_ratio] has no performance benefit, "
"since resources need to be allocated and processed for the total [member "
"amount] of particles regardless of the [member amount_ratio]. If you don't "
"intend to change the number of particles emitted while the particles are "
"emitting, make sure [member amount_ratio] is set to [code]1[/code] and change "
"[member amount] to your liking instead."
msgstr ""
"Le ratio de particule qui devraient être réellement émises. Si la valeur est "
"inférieure à [code]1.0[/code], cela permettra de définir la quantité de "
"particules émises tout au long de la vie à [code]amount * amount_ratio[/"
"code]. Contrairement à la modification de [member amount], modifier [member "
"amount_ratio] tout en émettant n'affecte pas les particules déjà émises et ne "
"provoque pas le redémarrage du système de particules. [member amount_ratio] "
"peut être utilisé pour créer des effets qui font varier le nombre de "
"particules émises au fil du temps.\n"
"[b]Note :[/b] La réduction de la valeur de [member amount_ratio] n'a pas "
"d'avantage de performance, puisque les ressources doivent être allouées et "
"traitées pour le nombre total ([member amount]) de particules, peu importe "
"[member amount_ratio]. Si vous n'avez pas l'intention de modifier le nombre "
"de particules émises pendant que les particules émettent, assurez-vous que "
"[member amount_ratio] soit défini à [code]1[/code] et changez plutôt [member "
"amount] à votre goût."

msgid ""
"Multiplier for particle's collision radius. [code]1.0[/code] corresponds to "
"the size of the sprite. If particles appear to sink into the ground when "
"colliding, increase this value. If particles appear to float when colliding, "
"decrease this value. Only effective if [member "
"ParticleProcessMaterial.collision_mode] is [constant "
"ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Note:[/b] Particles always have a spherical collision shape."
msgstr ""
"Multiplicateur pour le rayon de collision des particules. [code]1.0[/code] "
"correspond à la taille du sprite. Si les particules semblent s'enfoncer dans "
"le sol lors de la collision, augmentez cette valeur. Si les particules "
"semblent flotter lors de la collision, diminuez cette valeur. Seulement "
"effectif si [member ParticleProcessMaterial.collision_mode] vaut [constant "
"ParticleProcessMaterial.COLLISION_RIGID] ou [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Note :[/b] Les particules ont toujours une forme de collision sphérique."

msgid ""
"If [code]true[/code], particles are being emitted. [member emitting] can be "
"used to start and stop particles from emitting. However, if [member one_shot] "
"is [code]true[/code] setting [member emitting] to [code]true[/code] will not "
"restart the emission cycle unless all active particles have finished "
"processing. Use the [signal finished] signal to be notified once all active "
"particles finish processing.\n"
"[b]Note:[/b] For [member one_shot] emitters, due to the particles being "
"computed on the GPU, there may be a short period after receiving the [signal "
"finished] signal during which setting this to [code]true[/code] will not "
"restart the emission cycle.\n"
"[b]Tip:[/b] If your [member one_shot] emitter needs to immediately restart "
"emitting particles once [signal finished] signal is received, consider "
"calling [method restart] instead of setting [member emitting]."
msgstr ""
"Si [code]true[/code], des particules sont émises. [member emitting] peut être "
"utilisé pour démarrer et arrêter l'émission des particules. Toutefois, si "
"[member one_shot] vaut [code]true[/code], définir [member emitting] à "
"[code]true[/code] ne redémarrera pas le cycle d'émission à moins que toutes "
"les particules actives n'aient fini de traiter. Utilisez le signal [signal "
"finished] pour être averti quand toutes les particules actives ont fini de "
"traiter.\n"
"[b]Note :[/b] Pour les émetteurs [member one_shot], à cause des particules "
"calculées sur le GPU, il peut y avoir une courte période après avoir reçu le "
"signal [signal finished] pendant laquelle définir cette valeur à [code]true[/"
"code] ne redémarre pas le cycle d'émission.\n"
"[b]Astuce :[/b] Si votre émetteur [member one_shot] doit immédiatement "
"redémarrer l'émission de particules une fois le signal [signal finished] "
"reçu, envisagez d'appeler [method restart] au lieu de définir [member "
"emitting]."

msgid ""
"Causes all the particles in this node to interpolate towards the end of their "
"lifetime.\n"
"[b]Note:[/b] This only works when used with a [ParticleProcessMaterial]. It "
"needs to be manually implemented for custom process shaders."
msgstr ""
"Cause toutes les particules de ce nœud à interpoler vers la fin de leur vie.\n"
"[b]Note :[/b] Cela ne fonctionne que lors qu’utilisé avec un "
"[ParticleProcessMaterial]. Il doit être implémenté manuellement pour les "
"shaders de traitement personnalisés."

msgid ""
"Enables particle interpolation, which makes the particle movement smoother "
"when their [member fixed_fps] is lower than the screen refresh rate."
msgstr ""
"Active l'interpolation des particules, ce qui rend le mouvement des "
"particules plus fluide lorsque leur taux de rafraichissement [member "
"fixed_fps] est inférieur au taux de rafraîchissement de l'écran."

msgid ""
"The amount of time each particle will exist (in seconds). The effective "
"emission rate is [code](amount * amount_ratio) / lifetime[/code] particles "
"per second."
msgstr ""
"La durée pendant laquelle chaque particule existera (en secondes). Le taux "
"d'émission effectif est de [code](amount * amount_ratio) / lifetime[/code] "
"particules par seconde."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[GPUParticles2D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [GPUParticles2D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Si [code]true[/code], les particules utilisent l'espace de coordonnées du "
"nœud parent (aussi appelées coordonnées locales). Cela causera les particules "
"de se déplacer et tourner avec le nœud [GPUParticles2D] (et ses parents) "
"lorsqu'il est déplacé ou tourné. Si [code]false[/code], les particules "
"utilisent des coordonnées globales, cela ne causera pas les particules de se "
"déplacer et tourner avec le nœud [GPUParticles2D] (et ses parents) lorsqu'il "
"est déplacé ou en tourné."

msgid ""
"Particle system starts as if it had already run for this many seconds.\n"
"[b]Note:[/b] This can be very expensive if set to a high number as it "
"requires running the particle shader a number of times equal to the [member "
"fixed_fps] (or 30, if [member fixed_fps] is 0) for every second. In extreme "
"cases it can even lead to a GPU crash due to the volume of work done in a "
"single frame."
msgstr ""
"Le système de particules commence comme s'il s'était déjà exécuté pendant ce "
"nombre de secondes.\n"
"[b]Note :[/b] Cela peut être très cher si défini à un nombre élevé car il "
"nécessite l'exécution du shader de particules un certain nombre de fois égal "
"à [member fixed_fps] (ou 30, si [member fixed_fps] vaut 0) pour chaque "
"seconde. Dans les cas extrêmes, il peut même conduire à un crash GPU en "
"raison du volume de travail effectué en une seule trame."

msgid ""
"[Material] for processing particles. Can be a [ParticleProcessMaterial] or a "
"[ShaderMaterial]."
msgstr ""
"[Material] pour le traitement des particules. Peut être un "
"[ParticleProcessMaterial] ou un [ShaderMaterial]."

msgid ""
"Path to another [GPUParticles2D] node that will be used as a subemitter (see "
"[member ParticleProcessMaterial.sub_emitter_mode]). Subemitters can be used "
"to achieve effects such as fireworks, sparks on collision, bubbles popping "
"into water drops, and more.\n"
"[b]Note:[/b] When [member sub_emitter] is set, the target [GPUParticles2D] "
"node will no longer emit particles on its own."
msgstr ""
"Chemin vers un autre nœud [GPUParticles2D] qui sera utilisé comme sous-"
"émetteur (voir [member ParticleProcessMaterial.sub_emitter_mode]). Les sous-"
"émetteurs peuvent être utilisés pour réaliser des effets comme des feux "
"d'artifice, des étincelles sur les collisions, des bulles éclatant en des "
"gouttes d'eau, et plus encore.\n"
"[b]Note :[/b] Lorsque [member sub_emitter] est défini, le nœud "
"[GPUParticles2D] cible n'émettra plus de particules tout seul."

msgid ""
"The amount of time the particle's trail should represent (in seconds). Only "
"effective if [member trail_enabled] is [code]true[/code]."
msgstr ""
"La durée que chaque traînée de particule devrait représenter (en secondes). "
"Seulement effectif si [member trail_enabled] vaut [code]true[/code]."

msgid ""
"The number of subdivisions to use for the particle trail rendering. Higher "
"values can result in smoother trail curves, at the cost of performance due to "
"increased mesh complexity. See also [member trail_sections]. Only effective "
"if [member trail_enabled] is [code]true[/code]."
msgstr ""
"Le nombre de sous-divisions à utiliser pour le rendu de traînée de particule. "
"Des valeurs plus élevées peuvent entraîner des courbes de traînée plus "
"lisses, au coût de la performance en raison d'une complexité accrue du "
"maillage. Voir aussi [member trail_sections]. Seulement effectif si [member "
"trail_enabled] vaut [code]true[/code]."

msgid ""
"The number of sections to use for the particle trail rendering. Higher values "
"can result in smoother trail curves, at the cost of performance due to "
"increased mesh complexity. See also [member trail_section_subdivisions]. Only "
"effective if [member trail_enabled] is [code]true[/code]."
msgstr ""
"Le nombre de sections à utiliser pour le rendu de traînée de particule. Des "
"valeurs plus élevées peuvent entraîner des courbes de traînée plus lisses, au "
"coût de la performance en raison d'une complexité accrue du maillage. Voir "
"aussi [member trail_section_subdivisions]. Seulement effectif si [member "
"trail_enabled] vaut [code]true[/code]."

msgid ""
"The [Rect2] that determines the node's region which needs to be visible on "
"screen for the particle system to be active.\n"
"Grow the rect if particles suddenly appear/disappear when the node enters/"
"exits the screen. The [Rect2] can be grown via code or with the [b]Particles "
"→ Generate Visibility Rect[/b] editor tool."
msgstr ""
"Le [Rect2] qui détermine la région du nœud qui doit être visible à l'écran "
"pour que le système de particules soit actif.\n"
"Agrandissez le rectangle si les particules apparaissent/disparaissent "
"soudainement lorsque le nœud entre/sort de l'écran. Le [Rect2] peut être "
"agrandi par code ou avec l'outil d'éditeur [b]Particules → Générer Rect de "
"Visibilité[/b]."

msgid ""
"Emitted when all active particles have finished processing. To immediately "
"restart the emission cycle, call [method restart].\n"
"This signal is never emitted when [member one_shot] is disabled, as particles "
"will be emitted and processed continuously.\n"
"[b]Note:[/b] For [member one_shot] emitters, due to the particles being "
"computed on the GPU, there may be a short period after receiving the signal "
"during which setting [member emitting] to [code]true[/code] will not restart "
"the emission cycle. This delay is avoided by instead calling [method restart]."
msgstr ""
"Émis lorsque toutes les particules actives ont terminé le traitement. Pour "
"redémarrer immédiatement le cycle d'émission, appelez [method restart].\n"
"Ce signal n'est jamais émis lorsque [member one_shot] est désactivé, car les "
"particules seront émises et traitées en continu.\n"
"[b]Note :[/b] Pour les émetteurs [member one_shot], à cause des particules "
"calculées sur le GPU, il peut y avoir une courte période après avoir reçu le "
"signal [signal finished] pendant laquelle définir [member emitting] à "
"[code]true[/code] ne redémarre pas le cycle d'émission. Ce retard est évité "
"en appelant plutôt [method restart]."

msgid ""
"Particles are drawn in reverse order of remaining lifetime. In other words, "
"the particle with the lowest lifetime is drawn at the front."
msgstr ""
"Les particules sont dessinées dans l'ordre inverse du temps de vie restant. "
"En d'autres termes, la particule avec la vie la plus basse est dessinée à "
"l'avant."

msgid "Particle starts at the specified position."
msgstr "La particule commence à la position spécifiée."

msgid "Particle starts with specified rotation and scale."
msgstr "La particule commence avec la rotation et l'échelle spécifiées."

msgid ""
"Particle starts with the specified velocity vector, which defines the "
"emission direction and speed."
msgstr ""
"La particule commence avec le vecteur de vélocité spécifié, qui définit la "
"direction et la vitesse de l'émission."

msgid "Particle starts with specified color."
msgstr "La particule commence avec la couleur spécifiée."

msgid "Particle starts with specified [code]CUSTOM[/code] data."
msgstr ""
"La particule commence avec les données personnalisées [code]CUSTOM[/code] "
"spécifiées."

msgid "A 3D particle emitter."
msgstr "Un émetteur de particules 3D."

msgid ""
"3D particle node used to create a variety of particle systems and effects. "
"[GPUParticles3D] features an emitter that generates some number of particles "
"at a given rate.\n"
"Use [member process_material] to add a [ParticleProcessMaterial] to configure "
"particle appearance and behavior. Alternatively, you can add a "
"[ShaderMaterial] which will be applied to all particles."
msgstr ""
"Nœud de particules 3D utilisé pour créer une variété de systèmes et d'effets "
"de particules. [GPUParticles3D] dispose d'un émetteur qui génère un certain "
"nombre de particules à un taux donné.\n"
"Utilisez la propriété [member process_material] pour ajouter un "
"[ParticleProcessMaterial] pour configurer l'apparence et le comportement des "
"particules. Alternativement, vous pouvez ajouter un [ShaderMaterial] qui sera "
"appliqué à toutes les particules."

msgid "Controlling thousands of fish with Particles"
msgstr "Contrôler des milliers de poissons en utilisant les Particles"

msgid "Sets this node's properties to match a given [CPUParticles3D] node."
msgstr ""
"Défini les propriétés de ce nœud pour correspondre à un nœud [CPUParticles3D] "
"donné."

msgid "Returns the [Mesh] that is drawn at index [param pass]."
msgstr "Renvoie le [Mesh] qui est dessiné à la passe d'index [param pass]."

msgid "Sets the [Mesh] that is drawn at index [param pass]."
msgstr "Définit le [Mesh] qui est dessiné à la passe d'index [param pass]."

msgid ""
"The base diameter for particle collision in meters. If particles appear to "
"sink into the ground when colliding, increase this value. If particles appear "
"to float when colliding, decrease this value. Only effective if [member "
"ParticleProcessMaterial.collision_mode] is [constant "
"ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Note:[/b] Particles always have a spherical collision shape."
msgstr ""
"Le diamètre de base de collision des particules en mètres. Si les particules "
"semblent s'enfoncer dans le sol lors de la collision, augmentez cette valeur. "
"Si les particules semblent flotter lors de la collision, diminuez cette "
"valeur. Seulement effectif si [member ParticleProcessMaterial.collision_mode] "
"vaut [constant ParticleProcessMaterial.COLLISION_RIGID] ou [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Note :[/b] Les particules ont toujours une forme de collision sphérique."

msgid ""
"Particle draw order.\n"
"[b]Note:[/b] [constant DRAW_ORDER_INDEX] is the only option that supports "
"motion vectors for effects like TAA. It is suggested to use this draw order "
"if the particles are opaque to fix ghosting artifacts."
msgstr ""
"Ordre de dessin des particules.\n"
"[b]Note :[/b] [constant DRAW_ORDER_INDEX] est la seule option qui supporte "
"les vecteurs de mouvement pour des effets comme le TAA. Il est suggéré "
"d'utiliser cet ordre de dessin si les particules sont opaques pour corriger "
"des artéfacts fantomatiques."

msgid "[Mesh] that is drawn for the first draw pass."
msgstr "Le [Mesh] qui est affiché lors de la première passe."

msgid "[Mesh] that is drawn for the second draw pass."
msgstr "Le [Mesh] qui est affiché lors de la deuxième passe."

msgid "[Mesh] that is drawn for the third draw pass."
msgstr "Le [Mesh] qui est affiché lors de la troisième passe."

msgid "[Mesh] that is drawn for the fourth draw pass."
msgstr "Le [Mesh] qui est affiché lors de la quatrième passe."

msgid "The number of draw passes when rendering particles."
msgstr "Le nombre de passes de rendu lors du rendu des particules."

msgid ""
"Time ratio between each emission. If [code]0[/code], particles are emitted "
"continuously. If [code]1[/code], all particles are emitted simultaneously."
msgstr ""
"Ratio de temps entre chaque émission. Si [code]0[/code], les particules sont "
"émises en continu. Si [code]1[/code], toutes les particules sont émises "
"simultanément."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[GPUParticles3D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [GPUParticles3D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Si [code]true[/code], les particules utilisent l'espace de coordonnées du "
"nœud parent (aussi appelées coordonnées locales). Cela causera les particules "
"de se déplacer et tourner avec le nœud [GPUParticles3D] (et ses parents) "
"lorsqu'il est déplacé ou tourné. Si [code]false[/code], les particules "
"utilisent des coordonnées globales, cela ne causera pas les particules de se "
"déplacer et tourner avec le nœud [GPUParticles3D] (et ses parents) lorsqu'il "
"est déplacé ou en tourné."

msgid ""
"If [code]true[/code], only the number of particles equal to [member amount] "
"will be emitted."
msgstr ""
"Si [code]true[/code], seul un nombre de particules égal à [member amount] "
"sera émis."

msgid ""
"Amount of time to preprocess the particles before animation starts. Lets you "
"start the animation some time after particles have started emitting.\n"
"[b]Note:[/b] This can be very expensive if set to a high number as it "
"requires running the particle shader a number of times equal to the [member "
"fixed_fps] (or 30, if [member fixed_fps] is 0) for every second. In extreme "
"cases it can even lead to a GPU crash due to the volume of work done in a "
"single frame."
msgstr ""
"Durée durant laquelle pré-traiter les particules avant que l'animation "
"commence. Vous permet de commencer l'animation un certain temps après que les "
"particules ont commencé d'émettre.\n"
"[b]Note :[/b] Cela peut être très cher si défini à un nombre élevé car il "
"nécessite l'exécution du shader de particules un certain nombre de fois égal "
"à [member fixed_fps] (ou 30, si [member fixed_fps] vaut 0) pour chaque "
"seconde. Dans les cas extrêmes, il peut même conduire à un crash GPU en "
"raison du volume de travail effectué en une seule trame."

msgid "Emission randomness ratio."
msgstr "Facteur d'aléatoire de l'émission."

msgid ""
"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
"particles."
msgstr ""
"Facteur d'échelle de vitesse. Une valeur de [code]0[/code] peut être utilisée "
"pour mettre en pause les particules."

msgid ""
"Path to another [GPUParticles3D] node that will be used as a subemitter (see "
"[member ParticleProcessMaterial.sub_emitter_mode]). Subemitters can be used "
"to achieve effects such as fireworks, sparks on collision, bubbles popping "
"into water drops, and more.\n"
"[b]Note:[/b] When [member sub_emitter] is set, the target [GPUParticles3D] "
"node will no longer emit particles on its own."
msgstr ""
"Chemin vers un autre nœud [GPUParticles3D] qui sera utilisé comme sous-"
"émetteur (voir [member ParticleProcessMaterial.sub_emitter_mode]). Les sous-"
"émetteurs peuvent être utilisés pour réaliser des effets comme des feux "
"d'artifice, des étincelles sur les collisions, des bulles éclatant en des "
"gouttes d'eau, et plus encore.\n"
"[b]Note :[/b] Lorsque [member sub_emitter] est défini, le nœud "
"[GPUParticles3D] cible n'émettra plus de particules tout seul."

msgid ""
"The [AABB] that determines the node's region which needs to be visible on "
"screen for the particle system to be active. [member "
"GeometryInstance3D.extra_cull_margin] is added on each of the AABB's axes. "
"Particle collisions and attraction will only occur within this area.\n"
"Grow the box if particles suddenly appear/disappear when the node enters/"
"exits the screen. The [AABB] can be grown via code or with the [b]Particles → "
"Generate AABB[/b] editor tool.\n"
"[b]Note:[/b] [member visibility_aabb] is overridden by [member "
"GeometryInstance3D.custom_aabb] if that property is set to a non-default "
"value."
msgstr ""
"La [AABB] qui détermine la région du nœud qui doit être visible à l'écran "
"pour que le système de particules soit actif. [member "
"GeometryInstance3D.extra_cull_margin] est ajouté sur chaque axe de l'AABB. "
"Les attractions et collisions de particules ne se produiront que dans cette "
"zone.\n"
"Agrandissez la boîte si les particules apparaissent/disparaissent "
"soudainement lorsque le noeud entre/sort de l'écran. La [AABB] peut être "
"agrandie par code ou avec l'outil de l'éditeur [b]Particules → Générer AABB[/"
"b].\n"
"[b]Note :[/b] [member visibility_aabb] est redéfini par [member "
"GeometryInstance3D.custom_aabb] si cette propriété est définie à une valeur "
"non par défaut."

msgid "Maximum number of draw passes supported."
msgstr "Le nombre maximal de passes de dessin supporté."

msgid "Abstract base class for 3D particle attractors."
msgstr "Classe de base abstraite pour les attracteurs de particules 3D."

msgid ""
"Particle attractors can be used to attract particles towards the attractor's "
"origin, or to push them away from the attractor's origin.\n"
"Particle attractors work in real-time and can be moved, rotated and scaled "
"during gameplay. Unlike collision shapes, non-uniform scaling of attractors "
"is also supported.\n"
"Attractors can be temporarily disabled by hiding them, or by setting their "
"[member strength] to [code]0.0[/code].\n"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Les attracteurs de particules peuvent être utilisés pour attirer des "
"particules vers l'origine de l'attracteur, ou pour les repousser de l'origine "
"de l'attracteur.\n"
"Les attracteurs de particules fonctionnent en temps réel et peuvent être "
"déplacés, tournés et redimensionnés pendant le gameplay. Contrairement aux "
"formes de collision, une échelle non uniforme d'attracteur est également "
"supportée.\n"
"Les attracteurs peuvent être temporairement désactivés en les cachant, ou en "
"définissant leur force [member strength] à [code]0.0[/code].\n"
"[b]Note :[/b] Les attracteurs de particules n'affectent que les "
"[GPUParticles3D], pas les [CPUParticles3D]."

msgid ""
"The particle attractor's attenuation. Higher values result in more gradual "
"pushing of particles as they come closer to the attractor's origin. Zero or "
"negative values will cause particles to be pushed very fast as soon as the "
"touch the attractor's edges."
msgstr ""
"L'atténuation de l'attracteur à particules. Des valeurs plus élevées "
"résultent en une poussée plus progressive des particules lorsqu'elles se "
"rapprochent de l'origine de l'attracteur. Des valeurs nulles ou négatives "
"causera une poussée très rapide des particules dès qu'elles touchent les "
"bords de l'attracteur."

msgid ""
"A box-shaped attractor that influences particles from [GPUParticles3D] nodes."
msgstr ""
"Un attracteur en forme de boîte qui influence les particules des nœuds "
"[GPUParticles3D]."

msgid "The attractor box's size in 3D units."
msgstr "La taille de la boîte d'attraction en unités 3D."

msgid ""
"A spheroid-shaped attractor that influences particles from [GPUParticles3D] "
"nodes."
msgstr ""
"Un attracteur en forme de sphéroïde qui influence les particules des nœuds "
"[GPUParticles3D]."

msgid ""
"Abstract base class for 3D particle collision shapes affecting "
"[GPUParticles3D] nodes."
msgstr ""
"Classe de base abstraite pour les formes de collision de particules 3D "
"affectant les nœuds [GPUParticles3D]."

msgid ""
"Particle collision shapes can be used to make particles stop or bounce "
"against them.\n"
"Particle collision shapes work in real-time and can be moved, rotated and "
"scaled during gameplay. Unlike attractors, non-uniform scaling of collision "
"shapes is [i]not[/i] supported.\n"
"Particle collision shapes can be temporarily disabled by hiding them.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D].\n"
"[b]Note:[/b] Particles pushed by a collider that is being moved will not be "
"interpolated, which can result in visible stuttering. This can be alleviated "
"by setting [member GPUParticles3D.fixed_fps] to [code]0[/code] or a value "
"that matches or exceeds the target framerate."
msgstr ""
"Les formes de collision de particules peuvent être utilisées pour faire "
"arrêter ou rebondir des particules contre elles.\n"
"Les formes de collision de particules fonctionnent en temps réel et peuvent "
"être déplacées, tournées et redimensionnées pendant le gameplay. "
"Contrairement aux attracteurs, une échelle non uniforme des formes de "
"collision n'est [i]pas[/i] supportée.\n"
"Les formes de collision de particules peuvent être temporairement désactivées "
"en les cachant.\n"
"[b]Note :[/b] [member ParticleProcessMaterial.collision_mode] doit valoir "
"[constant ParticleProcessMaterial.COLLISION_RIGID] ou [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] sur le matériau de "
"traitement du [GPUParticles3D] pour que la collision fonctionne.\n"
"[b]Note :[/b] La collision de particules n'affecte que [GPUParticles3D], pas "
"[CPUParticles3D].\n"
"[b]Note :[/b] Les particules poussées par un collider qui est déplacé ne "
"seront pas interpolées, ce qui peut entraîner un stuttering visible. Cela "
"peut être atténué en définissant [member GPUParticles3D.fixed_fps] à [code]0[/"
"code] ou une valeur qui correspond ou dépasse le framerate cible."

msgid ""
"The particle rendering layers ([member VisualInstance3D.layers]) that will be "
"affected by the collision shape. By default, all particles that have [member "
"ParticleProcessMaterial.collision_mode] set to [constant "
"ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] will be affected by a "
"collision shape.\n"
"After configuring particle nodes accordingly, specific layers can be "
"unchecked to prevent certain particles from being affected by colliders. For "
"example, this can be used if you're using a collider as part of a spell "
"effect but don't want the collider to affect unrelated weather particles at "
"the same position.\n"
"Particle collision can also be disabled on a per-process material basis by "
"setting [member ParticleProcessMaterial.collision_mode] on the "
"[GPUParticles3D] node."
msgstr ""
"Les couches de rendu des particules ([member VisualInstance3D.layers]) qui "
"seront affectées par la forme de collision. Par défaut, toutes les particules "
"qui ont [member ParticleProcessMaterial.collision_mode] défini à [constant "
"ParticleProcessMaterial.COLLISION_RIGID] ou [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] seront affectées par une "
"forme de collision.\n"
"Après avoir configuré les nœuds des particules en conséquence, des couches "
"spécifiques peuvent être décochées pour empêcher que certaines particules ne "
"soient affectées par les colliders. Par exemple, cela peut être utilisé si "
"vous utilisez un collider dans le cadre d'un effet de sort, mais ne voulez "
"pas que le collider affecte les particules météorologiques sans rapport à la "
"même position.\n"
"La collision des particules peut également être désactivée selon le matériau "
"de traitement en définissant [member ParticleProcessMaterial.collision_mode] "
"sur le nœud [GPUParticles3D]."

msgid ""
"A box-shaped 3D particle collision shape affecting [GPUParticles3D] nodes."
msgstr ""
"Une forme de collision de particules en forme de boîte affectant les nœuds "
"[GPUParticles3D]."

msgid ""
"A box-shaped 3D particle collision shape affecting [GPUParticles3D] nodes.\n"
"Particle collision shapes work in real-time and can be moved, rotated and "
"scaled during gameplay. Unlike attractors, non-uniform scaling of collision "
"shapes is [i]not[/i] supported.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Une forme de collision de particules en forme de boîte affectant les nœuds "
"[GPUParticles3D].\n"
"Les formes de collision de particules fonctionnent en temps réel et peuvent "
"être déplacées, tournées et redimensionnées pendant le gameplay. "
"Contrairement aux attracteurs, une échelle non uniforme des formes de "
"collision n'est [i]pas[/i] supportée.\n"
"[b]Note :[/b] [member ParticleProcessMaterial.collision_mode] doit valoir "
"[constant ParticleProcessMaterial.COLLISION_RIGID] ou [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] sur le matériau de "
"traitement du [GPUParticles3D] pour que la collision fonctionne.\n"
"[b]Note :[/b] La collision des particules n'affecte que [GPUParticles3D], pas "
"[CPUParticles3D]."

msgid "The collision box's size in 3D units."
msgstr "La taille de la boîte de collision en unités 3D."

msgid ""
"A real-time heightmap-shaped 3D particle collision shape affecting "
"[GPUParticles3D] nodes."
msgstr ""
"Une forme de collision de particules 3D en forme de heightmap en temps réel "
"affectant les nœuds [GPUParticles3D]."

msgid ""
"Returns [code]true[/code] if the specified layer of the [member "
"heightfield_mask] is enabled, given a [param layer_number] between [code]1[/"
"code] and [code]20[/code], inclusive."
msgstr ""
"Renvoie [code]true[/code] si la couche spécifiée du [member heightfield_mask] "
"est active, selon un numéro de couche [param layer_number] entre [code]1[/"
"code] et [code]20[/code], inclusifs."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member heightfield_mask], given a [param layer_number] between [code]1[/"
"code] and [code]20[/code], inclusive."
msgstr ""
"Selon la valeur de [param value], active ou désactive la couche spécifiée du "
"[member heightfield_mask], selon un numéro de couche [param layer_number] "
"entre [code]1[/code] et [code]20[/code], inclusifs."

msgid ""
"If [code]true[/code], the [GPUParticlesCollisionHeightField3D] will follow "
"the current camera in global space. The [GPUParticlesCollisionHeightField3D] "
"does not need to be a child of the [Camera3D] node for this to work.\n"
"Following the camera has a performance cost, as it will force the heightmap "
"to update whenever the camera moves. Consider lowering [member resolution] to "
"improve performance if [member follow_camera_enabled] is [code]true[/code]."
msgstr ""
"Si [code]true[/code], le [GPUParticlesCollisionHeightField3D] suivra la "
"caméra actuelle dans l'espace global. Le [GPUParticlesCollisionHeightField3D] "
"n'a pas besoin d'être un enfant du nœud [Camera3D] pour que cela fonctionne.\n"
"Suivre la caméra a un coût en performance, car cela forcera la heightmap à se "
"mettre à jour chaque fois que la caméra se déplace. Envisagez de diminuer la "
"[member resolution] pour améliorer les performances si [member "
"follow_camera_enabled] vaut [code]true[/code]."

msgid ""
"Higher resolutions can represent small details more accurately in large "
"scenes, at the cost of lower performance. If [member update_mode] is "
"[constant UPDATE_MODE_ALWAYS], consider using the lowest resolution possible."
msgstr ""
"Des résolutions plus élevées peuvent représenter des petits détails plus "
"précisément dans de grandes scènes, au coût de performances plus faibles. Si "
"[member update_mode] vaut [constant UPDATE_MODE_ALWAYS], envisagez d'utiliser "
"la résolution la plus basse possible."

msgid ""
"The collision heightmap's size in 3D units. To improve heightmap quality, "
"[member size] should be set as small as possible while covering the parts of "
"the scene you need."
msgstr ""
"La taille de la heightmap de collision en unités 3D. Pour améliorer la "
"qualité de la heightmap, la taille [member size] devrait être aussi petite "
"que possible tout en couvrant les parties de la scène dont vous avez besoin."

msgid "The update policy to use for the generated heightmap."
msgstr "La politique de mise à jour à utiliser pour la heightmap générée."

msgid ""
"Generate a 256×256 heightmap. Intended for small-scale scenes, or larger "
"scenes with no distant particles."
msgstr ""
"Génère une heightmap 256×256. Prévu pour des scènes à petite échelle, ou des "
"scènes plus grandes sans particules lointaines."

msgid ""
"Generate a 512×512 heightmap. Intended for medium-scale scenes, or larger "
"scenes with no distant particles."
msgstr ""
"Génère une heightmap 512×512. Prévu pour des scènes de taille moyenne, ou des "
"scènes plus grandes sans particules lointaines."

msgid ""
"Generate a 1024×1024 heightmap. Intended for large scenes with distant "
"particles."
msgstr ""
"Génère une heightmap 1024×1024. Prévu pour des scènes grandes avec des "
"particules lointaines."

msgid ""
"Generate a 2048×2048 heightmap. Intended for very large scenes with distant "
"particles."
msgstr ""
"Génère une heightmap 2048×2048. Prévu pour des scènes très grandes avec des "
"particules lointaines."

msgid ""
"Generate a 4096×4096 heightmap. Intended for huge scenes with distant "
"particles."
msgstr ""
"Génère une heightmap 4096×4096. Prévu pour des scènes énormes avec des "
"particules lointaines."

msgid ""
"Generate a 8192×8192 heightmap. Intended for gigantic scenes with distant "
"particles."
msgstr ""
"Génère une heightmap 8192×8192. Prévu pour des scènes gigantesques avec des "
"particules lointaines."

msgid "Represents the size of the [enum Resolution] enum."
msgstr "Représente la taille de l'énumération [enum Resolution]."

msgid ""
"Only update the heightmap when the [GPUParticlesCollisionHeightField3D] node "
"is moved, or when the camera moves if [member follow_camera_enabled] is "
"[code]true[/code]. An update can be forced by slightly moving the "
"[GPUParticlesCollisionHeightField3D] in any direction, or by calling [method "
"RenderingServer.particles_collision_height_field_update]."
msgstr ""
"Ne mettre à jour la heightmap seulement lorsque le nœud "
"[GPUParticlesCollisionHeightField3D] est déplacé, ou lorsque la caméra se "
"déplace si [member follow_camera_enabled] vaut [code]true[/code]. Une mise à "
"jour peut être forcée en déplaçant légèrement les "
"[GPUParticlesCollisionHeightField3D] dans n'importe quelle direction, ou en "
"appelant [method RenderingServer.particles_collision_height_field_update]."

msgid ""
"Update the heightmap every frame. This has a significant performance cost. "
"This update should only be used when geometry that particles can collide with "
"changes significantly during gameplay."
msgstr ""
"Mettre à jour la heightmap à chaque trame. Cela a un coût en performances "
"important. Cette mise à jour ne devrait être utilisée que lorsque la "
"géométrie avec laquelle les particules peuvent entrer en collision change "
"significativement durant le gameplay."

msgid ""
"A baked signed distance field 3D particle collision shape affecting "
"[GPUParticles3D] nodes."
msgstr ""
"Une forme de collision de particules 3D de champ de distance signée pré-"
"calculé affectant les nœuds [GPUParticles3D]."

msgid ""
"A baked signed distance field 3D particle collision shape affecting "
"[GPUParticles3D] nodes.\n"
"Signed distance fields (SDF) allow for efficiently representing approximate "
"collision shapes for convex and concave objects of any shape. This is more "
"flexible than [GPUParticlesCollisionHeightField3D], but it requires a baking "
"step.\n"
"[b]Baking:[/b] The signed distance field texture can be baked by selecting "
"the [GPUParticlesCollisionSDF3D] node in the editor, then clicking [b]Bake "
"SDF[/b] at the top of the 3D viewport. Any [i]visible[/i] [MeshInstance3D]s "
"within the [member size] will be taken into account for baking, regardless of "
"their [member GeometryInstance3D.gi_mode].\n"
"[b]Note:[/b] Baking a [GPUParticlesCollisionSDF3D]'s [member texture] is only "
"possible within the editor, as there is no bake method exposed for use in "
"exported projects. However, it's still possible to load pre-baked "
"[Texture3D]s into its [member texture] property in an exported project.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Une forme de collision de particules 3D avec un champ de distance signée "
"affectant les nœuds [GPUParticles3D].\n"
"Les champs de distance signées (CDS) permettent de représenter efficacement "
"des formes de collision approximatives pour les objets convexes et concaves "
"de toute forme. Ceci est plus flexible que "
"[GPUParticlesCollisionHeightField3D], mais il nécessite une étape de pré-"
"calcul.\n"
"[b]Pré-calcul :[/b] La texture du champ de distance signée peut être pré-"
"calculée en sélectionnant le nœud [GPUParticlesCollisionSDF3D] dans "
"l'éditeur, puis en cliquant sur [b]Pré-calculer le CDS[/b] en haut du "
"viewport 3D. Tout [MeshInstance3D] [i]visible[/i] dans la taille [member "
"size] sera pris en compte pour le calcul, peu importe leur [member "
"GeometryInstance3D.gi_mode].\n"
"[b]Note :[/b] Calculer une [member texture] d'un [GPUParticlesCollisionSDF3D] "
"n'est possible que dans l'éditeur, car il n'y a pas de méthode de pré-calcul "
"exposée pour les projets exportés. Cependant, il est quand même possible de "
"charger des [Texture3D] pré-calculées dans sa propriété [member texture] dans "
"un projet exporté.\n"
"[b]Note :[/b] [member ParticleProcessMaterial.collision_mode] doit valoir "
"[constant ParticleProcessMaterial.COLLISION_RIGID] ou [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] sur le matériau de "
"traitement du [GPUParticles3D] pour que la collision fonctionne.\n"
"[b]Note :[/b] La collision de particules n'affecte que [GPUParticles3D], pas "
"[CPUParticles3D]."

msgid ""
"Returns whether or not the specified layer of the [member bake_mask] is "
"enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Renvoie si la couche spécifiée de [member bake_mask] est activée, selon un "
"[param layer_number] entre 1 et 32."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member bake_mask], given a [param layer_number] between 1 and 32."
msgstr ""
"Selon [param value], active ou désactive la couche spécifiée dans le [member "
"bake_mask], selon un [param layer_number] entre 1 et 32."

msgid ""
"The visual layers to account for when baking the particle collision SDF. Only "
"[MeshInstance3D]s whose [member VisualInstance3D.layers] match with this "
"[member bake_mask] will be included in the generated particle collision SDF. "
"By default, all objects are taken into account for the particle collision SDF "
"baking."
msgstr ""
"Les couches visuelles à prendre en compte lors du pré-calcul du CDS de "
"collision de particule. Seuls les [MeshInstance3D] dont [member "
"VisualInstance3D.layers] correspondent à ce [member bake_mask] seront inclus "
"dans le CDS de collision de particule généré. Par défaut, tous les objets "
"sont pris en compte pour le pré-calcul du CDS de collision de particule."

msgid ""
"The bake resolution to use for the signed distance field [member texture]. "
"The texture must be baked again for changes to the [member resolution] "
"property to be effective. Higher resolutions have a greater performance cost "
"and take more time to bake. Higher resolutions also result in larger baked "
"textures, leading to increased VRAM and storage space requirements. To "
"improve performance and reduce bake times, use the lowest resolution possible "
"for the object you're representing the collision of."
msgstr ""
"La résolution du pré-calcul à utiliser pour le champ de distance signé "
"[member texture]. La texture doit encore être pré-calculée pour que les "
"modifications à la propriété [member resolution] soient effectives. Les "
"résolutions plus élevées ont un coût de performance plus élevé et prennent "
"plus de temps à calcul. Des résolutions plus élevées entraînent également des "
"textures calculées plus grandes, ce qui entraîne une augmentation des besoins "
"en RAM vidéo et en espace de stockage. Pour améliorer les performances et "
"réduire les temps de calcul, utilisez la résolution la plus basse possible "
"pour l'objet dont vous représentez la collision."

msgid ""
"The collision SDF's size in 3D units. To improve SDF quality, the [member "
"size] should be set as small as possible while covering the parts of the "
"scene you need."
msgstr ""
"La taille de la collision CDS en 3D. Pour améliorer la qualité du CDS, la "
"taille [member size] devrait être aussi petite que possible tout en couvrant "
"les parties de la scène dont vous avez besoin."

msgid "The 3D texture representing the signed distance field."
msgstr "La texture 3D représentant le champ de distance signée."

msgid ""
"The collision shape's thickness. Unlike other particle colliders, "
"[GPUParticlesCollisionSDF3D] is actually hollow on the inside. [member "
"thickness] can be increased to prevent particles from tunneling through the "
"collision shape at high speeds, or when the [GPUParticlesCollisionSDF3D] is "
"moved."
msgstr ""
"L'épaisseur de la forme de collision. Contrairement à d'autres colliders de "
"particules, [GPUParticlesCollisionSDF3D] est en fait creux à l'intérieur. "
"[member thickness] peut être augmentée pour empêcher les particules de "
"traverser les bords de la forme de collision à haute vitesse, ou lorsque le "
"[GPUParticlesCollisionSDF3D] est déplacé."

msgid ""
"Bake a 16×16×16 signed distance field. This is the fastest option, but also "
"the least precise."
msgstr ""
"Pré-calculer un champ de distance signé 16×16×16. C'est l'option la plus "
"rapide, mais aussi la moins précise."

msgid "Bake a 32×32×32 signed distance field."
msgstr "Pré-calcule un champ de distance signée 32×32×32."

msgid "Bake a 64×64×64 signed distance field."
msgstr "Pré-calcule un champ de distance signée 64x64x64."

msgid "Bake a 128×128×128 signed distance field."
msgstr "Pré-calcule un champ de distance signée 128x128x128."

msgid "Bake a 256×256×256 signed distance field."
msgstr "Pré-calcule un champ de distance signée 256x256x256."

msgid ""
"Bake a 512×512×512 signed distance field. This is the slowest option, but "
"also the most precise."
msgstr ""
"Pré-calculer un champ de distance signé 512×512×512. C'est l'option la plus "
"lente, mais aussi la plus précise."

msgid ""
"A sphere-shaped 3D particle collision shape affecting [GPUParticles3D] nodes."
msgstr ""
"Une forme de collision de particules 3D en forme de sphère affectant les "
"nœuds [GPUParticles3D]."

msgid ""
"A sphere-shaped 3D particle collision shape affecting [GPUParticles3D] "
"nodes.\n"
"Particle collision shapes work in real-time and can be moved, rotated and "
"scaled during gameplay. Unlike attractors, non-uniform scaling of collision "
"shapes is [i]not[/i] supported.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Une forme de collision de particules en forme de sphère affectant les nœuds "
"[GPUParticles3D].\n"
"Les formes de collision de particules fonctionnent en temps réel et peuvent "
"être déplacées, tournées et redimensionnées pendant le gameplay. "
"Contrairement aux attracteurs, une échelle non uniforme des formes de "
"collision n'est [i]pas[/i] supportée.\n"
"[b]Note :[/b] [member ParticleProcessMaterial.collision_mode] doit valoir "
"[constant ParticleProcessMaterial.COLLISION_RIGID] ou [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] sur le matériau de "
"traitement du [GPUParticles3D] pour que la collision fonctionne.\n"
"[b]Note :[/b] La collision des particules n'affecte que [GPUParticles3D], pas "
"[CPUParticles3D]."

msgid "The collision sphere's radius in 3D units."
msgstr "Le rayon de la sphère de collision en unités 3D."

msgid "A color transition."
msgstr "Une transition de couleur."

msgid "Adds the specified color to the gradient, with the specified offset."
msgstr "Ajoute la couleur spécifiée au gradient, avec le décalage spécifié."

msgid "Returns the color of the gradient color at index [param point]."
msgstr "Renvoie la couleur du dégradé de couleurs à l'index [param point]."

msgid "Returns the offset of the gradient color at index [param point]."
msgstr "Renvoie le décalage du gradient de couleur à l'index [param point]."

msgid "Returns the number of colors in the gradient."
msgstr "Renvoie le nombre de couleurs dans le gradient."

msgid "Removes the color at index [param point]."
msgstr "Supprime la couleur à l'index [param point]."

msgid ""
"Reverses/mirrors the gradient.\n"
"[b]Note:[/b] This method mirrors all points around the middle of the "
"gradient, which may produce unexpected results when [member "
"interpolation_mode] is set to [constant GRADIENT_INTERPOLATE_CONSTANT]."
msgstr ""
"Retourne/inverse le gradient.\n"
"[b]Note :[/b] Cette méthode reflète tous les points autour du milieu du "
"gradient, qui peut produire des résultats inattendus lorsque [member "
"interpolation_mode] est défini à [constant GRADIENT_INTERPOLATE_CONSTANT]."

msgid ""
"Returns the interpolated color specified by [param offset]. [param offset] "
"should be between [code]0.0[/code] and [code]1.0[/code] (inclusive). Using a "
"value lower than [code]0.0[/code] will return the same color as [code]0.0[/"
"code], and using a value higher than [code]1.0[/code] will return the same "
"color as [code]1.0[/code]. If your input value is not within this range, "
"consider using [method @GlobalScope.remap] on the input value with output "
"values set to [code]0.0[/code] and [code]1.0[/code]."
msgstr ""
"Renvoie la couleur interpolée spécifiée par le décalage [param offset]. "
"[param offset] doit être compris entre [code]0.0[/code] et [code]1.0[/code] "
"(inclusifs). L'utilisation d'une valeur inférieure à [code]0.0[/code] "
"renverra la même couleur que [code]0.0[/code], et l'utilisation d'une valeur "
"supérieure à [code]1.0[/code] renverra la même couleur que [code]1.0[/code]. "
"Si votre valeur d'entrée n'est pas dans cet intervalle, envisagez d'utiliser "
"[method @GlobalScope.remap] sur la valeur d'entrée avec les valeurs de sortie "
"définies à [code]0.0[/code] et [code]1.0[/code]."

msgid "Sets the color of the gradient color at index [param point]."
msgstr "Définit la couleur du gradient de couleur à l'index [param point]."

msgid "Sets the offset for the gradient color at index [param point]."
msgstr "Définit le décalage du gradient de couleur à l'index [param point]."

msgid ""
"Gradient's colors as a [PackedColorArray].\n"
"[b]Note:[/b] Setting this property updates all colors at once. To update any "
"color individually use [method set_color]."
msgstr ""
"Les couleurs du gradient en tant que [PackedColorArray].\n"
"[b]Note :[/b] Définir cette propriété met à jour toutes les couleurs à la "
"fois. Pour mettre à jour n'importe quelle couleur individuellement, utilisez "
"[method set_color]."

msgid ""
"The color space used to interpolate between points of the gradient. It does "
"not affect the returned colors, which will always be in sRGB space.\n"
"[b]Note:[/b] This setting has no effect when [member interpolation_mode] is "
"set to [constant GRADIENT_INTERPOLATE_CONSTANT]."
msgstr ""
"L'espace de couleur utilisé pour interpoler entre les points du gradient. Il "
"n'affecte pas les couleurs renvoyées, qui seront toujours dans l'espace "
"sRGB.\n"
"[b]Note :[/b] Ce paramètre n'a pas d'effet lorsque [member "
"interpolation_mode] est défini à [constant GRADIENT_INTERPOLATE_CONSTANT]."

msgid "The algorithm used to interpolate between points of the gradient."
msgstr "L'algorithme utilisé pour interpoler entre les points du gradient."

msgid ""
"Gradient's offsets as a [PackedFloat32Array].\n"
"[b]Note:[/b] Setting this property updates all offsets at once. To update any "
"offset individually use [method set_offset]."
msgstr ""
"Les décalages du gradient en tant que [PackedFloat32Array].\n"
"[b]Note :[/b] Définir cette propriété met à jour tous les décalages en même "
"temps. Pour mettre à jour tout décalage individuellement, utilisez [method "
"set_offset]."

msgid ""
"Constant interpolation, color changes abruptly at each point and stays "
"uniform between. This might cause visible aliasing when used for a gradient "
"texture in some cases."
msgstr ""
"Interpolation constante, la couleur change brusquement à chaque point et "
"reste uniforme entre. Cela pourrait causer un crénelage visible lorsqu'elle "
"est utilisée pour une texture de dégradé dans certains cas."

msgid "Cubic interpolation."
msgstr "Interpolation cubique."

msgid "sRGB color space."
msgstr "Espace de couleur sRGB."

msgid "Linear sRGB color space."
msgstr "Espace de couleur sRGB linéaire."

msgid ""
"[url=https://bottosson.github.io/posts/oklab/]Oklab[/url] color space. This "
"color space provides a smooth and uniform-looking transition between colors."
msgstr ""
"Espace de couleur [url=https://bottosson.github.io/posts/oklab/]Oklab[/url]. "
"Cet espace de couleur offre une transition lisse et uniforme entre les "
"couleurs."

msgid "A 1D texture that uses colors obtained from a [Gradient]."
msgstr ""
"Une texture 1D qui utilise des couleurs obtenues à partir d'un [Gradient]."

msgid ""
"A 1D texture that obtains colors from a [Gradient] to fill the texture data. "
"The texture is filled by sampling the gradient for each pixel. Therefore, the "
"texture does not necessarily represent an exact copy of the gradient, as it "
"may miss some colors if there are not enough pixels. See also "
"[GradientTexture2D], [CurveTexture] and [CurveXYZTexture]."
msgstr ""
"Une texture 1D qui obtient ses couleurs d'un [Gradient] pour remplir les "
"données de la texture. La texture est remplie en échantillonnant le gradient "
"pour chaque pixel. Par conséquent, la texture ne représente pas "
"nécessairement une copie exacte du gradient, car il peut manquer quelques "
"couleurs s'il n'y a pas assez de pixels. Voir aussi [GradientTexture2D], "
"[CurveTexture] et [CurveXYZTexture]."

msgid "The [Gradient] used to fill the texture."
msgstr "Le [Gradient] utilisé pour remplir la texture."

msgid ""
"If [code]true[/code], the generated texture will support high dynamic range "
"([constant Image.FORMAT_RGBAF] format). This allows for glow effects to work "
"if [member Environment.glow_enabled] is [code]true[/code]. If [code]false[/"
"code], the generated texture will use low dynamic range; overbright colors "
"will be clamped ([constant Image.FORMAT_RGBA8] format)."
msgstr ""
"Si [code]true[/code], la texture générée aura une gamme dynamique élevée (le "
"format sera [constant Image.FORMAT_RGBAF]). Cela permet aux effets de lueur "
"de fonctionner si [member Environment.glow_enabled] est [code]true[/code]. Si "
"[code]false[/code], la texture générée utilisera une plage dynamique basse ; "
"les couleurs trop lumineuses seront bornées (le format sera [constant "
"Image.FORMAT_RGBA8]."

msgid "The number of color samples that will be obtained from the [Gradient]."
msgstr ""
"Le nombre d'échantillons de couleur qui seront obtenus à partir du [Gradient]."

msgid ""
"A 2D texture that creates a pattern with colors obtained from a [Gradient]."
msgstr ""
"Une texture 2D qui crée un motif avec les couleurs obtenues d'un [Gradient]."

msgid ""
"A 2D texture that obtains colors from a [Gradient] to fill the texture data. "
"This texture is able to transform a color transition into different patterns "
"such as a linear or a radial gradient. The texture is filled by interpolating "
"colors starting from [member fill_from] to [member fill_to] offsets by "
"default, but the gradient fill can be repeated to cover the entire texture.\n"
"The gradient is sampled individually for each pixel so it does not "
"necessarily represent an exact copy of the gradient (see [member width] and "
"[member height]). See also [GradientTexture1D], [CurveTexture] and "
"[CurveXYZTexture]."
msgstr ""
"Une texture 2D qui obtient ses couleurs d'un [Gradient] pour remplir les "
"données de la texture. Cette texture est capable de transformer une "
"transition de couleurs en différents motifs comme un gradient linéaire ou "
"radial. La texture est remplie en échantillonnant les couleurs commençant au "
"décalage [member fill_from] et finissant au décalage [member fill_to] par "
"défaut, mais le remplissage par le gradient peut être répété pour couvrir "
"toute la texture\n"
"Le gradient est échantillonné individuellement pour chaque pixel donc la "
"texture ne représente pas nécessairement une copie exacte du gradient (voir "
"la largeur [member width] et la hauteur [member height]). Voir aussi "
"[GradientTexture1D], [CurveTexture] et [CurveXYZTexture]."

msgid "The gradient's fill type."
msgstr "Le type de remplissage du gradient."

msgid "The initial offset used to fill the texture specified in UV coordinates."
msgstr ""
"Le décalage initial utilisé pour remplir la texture spécifiée dans les "
"coordonnées UV."

msgid "The final offset used to fill the texture specified in UV coordinates."
msgstr ""
"Le décalage final utilisé pour remplir la texture spécifiée dans les "
"coordonnées UV."

msgid ""
"The number of vertical color samples that will be obtained from the "
"[Gradient], which also represents the texture's height."
msgstr ""
"Le nombre d'échantillons de couleur verticaux qui seront obtenus de ce "
"[Gradient], ce qui représente aussi la hauteur de la texture."

msgid "The gradient's repeat type."
msgstr "Le type de répétition du gradient."

msgid ""
"The number of horizontal color samples that will be obtained from the "
"[Gradient], which also represents the texture's width."
msgstr ""
"Le nombre d'échantillons de couleur horizontaux qui seront obtenus de ce "
"[Gradient], ce qui représente aussi la largeur de la texture."

msgid "The colors are linearly interpolated in a straight line."
msgstr "Les couleurs sont linéairement interpolées selon une ligne droite."

msgid "The colors are linearly interpolated in a circular pattern."
msgstr "Les couleurs sont linéairement interpolées selon un motif circulaire."

msgid "The colors are linearly interpolated in a square pattern."
msgstr "Les couleurs sont linéairement interpolées selon un motif carré."

msgid ""
"The gradient fill is restricted to the range defined by [member fill_from] to "
"[member fill_to] offsets."
msgstr ""
"Le remplissage du dégradé est limité à la plage définie par les positions de "
"[member fill_from] à [member fill_to]."

msgid ""
"The texture is filled starting from [member fill_from] to [member fill_to] "
"offsets, repeating the same pattern in both directions."
msgstr ""
"La texture est remplie en partant de la position [member fill_from] jusqu'à "
"[member fill_to], répétant le même motif dans les deux directions."

msgid ""
"The texture is filled starting from [member fill_from] to [member fill_to] "
"offsets, mirroring the pattern in both directions."
msgstr ""
"La texture est remplie à partir des positions de [member fill_from] à [member "
"fill_to], en répétant en miroir le motif dans les deux directions."

msgid "An editor for graph-like structures, using [GraphNode]s."
msgstr "Un éditeur pour les structures en graphe, utilisant des [GraphNode]s."

msgid ""
"[GraphEdit] provides tools for creation, manipulation, and display of various "
"graphs. Its main purpose in the engine is to power the visual programming "
"systems, such as visual shaders, but it is also available for use in user "
"projects.\n"
"[GraphEdit] by itself is only an empty container, representing an infinite "
"grid where [GraphNode]s can be placed. Each [GraphNode] represents a node in "
"the graph, a single unit of data in the connected scheme. [GraphEdit], in "
"turn, helps to control various interactions with nodes and between nodes. "
"When the user attempts to connect, disconnect, or delete a [GraphNode], a "
"signal is emitted in the [GraphEdit], but no action is taken by default. It "
"is the responsibility of the programmer utilizing this control to implement "
"the necessary logic to determine how each request should be handled.\n"
"[b]Performance:[/b] It is greatly advised to enable low-processor usage mode "
"(see [member OS.low_processor_usage_mode]) when using GraphEdits.\n"
"[b]Note:[/b] Keep in mind that [method Node.get_children] will also return "
"the connection layer node named [code]_connection_layer[/code] due to "
"technical limitations. This behavior may change in future releases."
msgstr ""
"[GraphEdit] fournit des outils pour la création, la manipulation et "
"l'affichage de divers graphes. Son objectif principal dans le moteur est "
"d'alimenter les systèmes de programmation visuelle, comme les shaders "
"visuels, mais il est également disponible à l'utilisation dans des projets "
"utilisateur.\n"
"[GraphEdit] en soi n'est qu'un conteneur vide, représentant une grille "
"infinie où des [GraphNode]s peuvent être placés. Chaque [GraphNode] "
"représente un nœud dans le graphe, une unité de données unique dans le "
"système connecté. [GraphEdit], à son tour, aide à contrôler diverses "
"interactions avec les nœuds et entre les nœuds. Lorsque l'utilisateur tente "
"de connecter, de déconnecter ou de supprimer un [GraphNode], un signal est "
"émis dans le [GraphEdit], mais aucune action n'est prise par défaut. Il "
"incombe au développeur d'utiliser ce contrôle pour implémenter la logique "
"nécessaire qui détermine comment chaque demande doit être traitée.\n"
"[b]Performance :[/b] Il est fortement conseillé d'activer le mode de faible "
"utilisation du processeur (voir [member OS.low_processor_usage_mode]) lors de "
"l'utilisation des GraphEdits.\n"
"[b]Note :[/b] Gardez à l'esprit que [method Node.get_children] renverra "
"également le nœud de la couche de connexion nommé [code]_connection_layer[/"
"code] en raison de limitations techniques. Ce comportement peut changer dans "
"des versions futures."

msgid ""
"Virtual method which can be overridden to customize how connections are drawn."
msgstr ""
"Méthode virtuelle qui peut être redéfinie pour personnaliser la façon dont "
"les connexions sont dessinées."

msgid ""
"Returns whether the [param mouse_position] is in the input hot zone.\n"
"By default, a hot zone is a [Rect2] positioned such that its center is at "
"[param in_node].[method GraphNode.get_input_port_position]([param in_port]) "
"(For output's case, call [method GraphNode.get_output_port_position] "
"instead). The hot zone's width is twice the Theme Property "
"[code]port_grab_distance_horizontal[/code], and its height is twice the "
"[code]port_grab_distance_vertical[/code].\n"
"Below is a sample code to help get started:\n"
"[codeblock]\n"
"func _is_in_input_hotzone(in_node, in_port, mouse_position):\n"
"\tvar port_size = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar port_pos = in_node.get_position() + "
"in_node.get_input_port_position(in_port) - port_size / 2\n"
"\tvar rect = Rect2(port_pos, port_size)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"
msgstr ""
"Renvoie si la position de la souris [param mouse_position] est dans la zone "
"chaude des entrées (hot zone).\n"
"Par défaut, une zone chaude est une position [Rect2] positionnée telle que "
"son centre est à [param in_node].[method GraphNode.get_input_port_position]"
"([param in_port]) (Pour le cas de la sortie, appelez plutôt [method "
"GraphNode.get_output_port_position]). La largeur de la zone chaude est deux "
"fois la propriété du Theme [code]port_grab_distance_horizontal[/code], et sa "
"hauteur est deux fois la propriété [code]port_grab_distance_vertical[/code].\n"
"Voici un échantillon de code pour démarrer :\n"
"[codeblock]\n"
"func _is_in_input_hotzone(in_node, in_port, mouse_position):\n"
"\tvar taille_port = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar position_port = in_node.get_position() + "
"in_node.get_input_port_position(in_port) - taille_port / 2\n"
"\tvar rect = Rect2(position_port, taille_port)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"

msgid ""
"Returns whether the [param mouse_position] is in the output hot zone. For "
"more information on hot zones, see [method _is_in_input_hotzone].\n"
"Below is a sample code to help get started:\n"
"[codeblock]\n"
"func _is_in_output_hotzone(in_node, in_port, mouse_position):\n"
"\tvar port_size = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar port_pos = in_node.get_position() + "
"in_node.get_output_port_position(in_port) - port_size / 2\n"
"\tvar rect = Rect2(port_pos, port_size)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"
msgstr ""
"Renvoie si la position de la souris [param mouse_position] est dans la zone "
"chaude des sorties (hot zone). Pour plus d'informations sur les zones "
"chaudes, voir [method _is_in_input_hotzone].\n"
"Voici un échantillon de code pour démarrer :\n"
"[codeblock]\n"
"func _is_in_output_hotzone(in_node, in_port, mouse_position):\n"
"\tvar taille_port = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar position_port = in_node.get_position() + "
"in_node.get_output_port_position(in_port) - taille_port / 2\n"
"\tvar rect = Rect2(position_port, taille_port)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"

msgid ""
"This virtual method can be used to insert additional error detection while "
"the user is dragging a connection over a valid port.\n"
"Return [code]true[/code] if the connection is indeed valid or return "
"[code]false[/code] if the connection is impossible. If the connection is "
"impossible, no snapping to the port and thus no connection request to that "
"port will happen.\n"
"In this example a connection to same node is suppressed:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _is_node_hover_valid(from, from_port, to, to_port):\n"
"\treturn from != to\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _IsNodeHoverValid(StringName fromNode, int fromPort, "
"StringName toNode, int toPort)\n"
"{\n"
"\treturn fromNode != toNode;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Cette méthode virtuelle peut être utilisée pour insérer une détection "
"d'erreur supplémentaire lorsque l'utilisateur fait glisser une connexion sur "
"un port valide.\n"
"Renvoie [code]true[/code] si la connexion est effectivement valide ou renvoie "
"[code]false[/code] si la connexion est impossible. Si la connexion est "
"impossible, aucune magnétisation vers le port et donc aucune demande de "
"connexion à ce port ne se produira.\n"
"Dans cet exemple, une connexion au même nœud est supprimée :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _is_node_hover_valid(from, from_port, to, to_port):\n"
"\treturn from != to\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _IsNodeHoverValid(StringName fromNode, int fromPort, "
"StringName toNode, int toPort)\n"
"{\n"
"\treturn fromNode != toNode;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Allows the connection between two different port types. The port type is "
"defined individually for the left and the right port of each slot with the "
"[method GraphNode.set_slot] method.\n"
"See also [method is_valid_connection_type] and [method "
"remove_valid_connection_type]."
msgstr ""
"Autorise la connexion entre deux types de port différents. Le type de port "
"est défini individuellement pour le port gauche et droit de chaque "
"emplacement avec la méthode [method GraphNode.set_slot].\n"
"Voir aussi [method is_valid_connection_type] et [method "
"remove_valid_connection_type]."

msgid ""
"Allows to disconnect nodes when dragging from the left port of the "
"[GraphNode]'s slot if it has the specified type. See also [method "
"remove_valid_left_disconnect_type]."
msgstr ""
"Autorise de déconnecter des nœuds en tirant depuis le port gauche de "
"l'emplacement du [GraphNode] s'il a le type spécifié. Voir aussi [method "
"remove_valid_left_disconnect_type]."

msgid ""
"Allows to disconnect nodes when dragging from the right port of the "
"[GraphNode]'s slot if it has the specified type. See also [method "
"remove_valid_right_disconnect_type]."
msgstr ""
"Autorise de déconnecter des nœuds en tirant depuis le port droit de "
"l'emplacement du [GraphNode] s'il a le type spécifié. Voir aussi [method "
"remove_valid_right_disconnect_type]."

msgid ""
"Rearranges selected nodes in a layout with minimum crossings between "
"connections and uniform horizontal and vertical gap between nodes."
msgstr ""
"Réarrange les nœuds sélectionnés en une disposition avec des croisement "
"minimaux entre les connexions et un écart horizontal et vertical uniforme "
"entre les nœuds."

msgid ""
"Attaches the [param element] [GraphElement] to the [param frame] [GraphFrame]."
msgstr ""
"Attache le [GraphElement] [param element] au cadre [GraphFrame] [param frame]."

msgid "Removes all connections between nodes."
msgstr "Supprime toutes les connexions entre les nœuds."

msgid ""
"Create a connection between the [param from_port] of the [param from_node] "
"[GraphNode] and the [param to_port] of the [param to_node] [GraphNode]. If "
"the connection already exists, no connection is created.\n"
"Connections with [param keep_alive] set to [code]false[/code] may be deleted "
"automatically if invalid during a redraw."
msgstr ""
"Crée une connexion entre le port [param from_port] du [GraphNode] [param "
"from_node] et le port [param to_port] du [GraphNode] [param to_node]. Si la "
"connexion existe déjà, aucune connexion n'est créée.\n"
"Les connexions avec [param keep_alive] défini à [code]false[/code] peuvent "
"être supprimées automatiquement si elles sont invalides lors d'un redessin."

msgid ""
"Detaches the [param element] [GraphElement] from the [GraphFrame] it is "
"currently attached to."
msgstr ""
"Détache le [GraphElement] [param element] du [GraphFrame] auquel il est "
"actuellement attaché."

msgid ""
"Removes the connection between the [param from_port] of the [param from_node] "
"[GraphNode] and the [param to_port] of the [param to_node] [GraphNode]. If "
"the connection does not exist, no connection is removed."
msgstr ""
"Supprime la connexion entre le port [param from_port] du [GraphNode] [param "
"from_node] et le port [param to_port] du [GraphNode] [param to_node]. Si la "
"connexion n'existe pas, aucune connexion ne sera supprimée."

msgid ""
"Ends the creation of the current connection. In other words, if you are "
"dragging a connection you can use this method to abort the process and remove "
"the line that followed your cursor.\n"
"This is best used together with [signal connection_drag_started] and [signal "
"connection_drag_ended] to add custom behavior like node addition through "
"shortcuts.\n"
"[b]Note:[/b] This method suppresses any other connection request signals "
"apart from [signal connection_drag_ended]."
msgstr ""
"Finit la création de la connexion actuelle. En d'autres termes, si vous "
"faites glisser une connexion, vous pouvez utiliser cette méthode pour avorter "
"le processus et supprimer la ligne qui suivait votre curseur.\n"
"Ceci est généralement utilisé avec [signal connection_drag_started] et "
"[signal connection_drag_ended] pour ajouter du comportement personnalisé "
"comme l'ajout de nœuds par des raccourcis.\n"
"[b]Note :[/b] Cette méthode supprime tout autre signal de demande de "
"connexion hormis [signal connection_drag_ended]."

msgid ""
"Returns an array of node names that are attached to the [GraphFrame] with the "
"given name."
msgstr ""
"Renvoie un tableau de noms de nœuds qui sont attachés au [GraphFrame] avec le "
"nom donné."

msgid ""
"Returns the closest connection to the given point in screen space. If no "
"connection is found within [param max_distance] pixels, an empty [Dictionary] "
"is returned.\n"
"A connection is represented as a [Dictionary] in the form of:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"For example, getting a connection at a given mouse position can be achieved "
"like this:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var connection = get_closest_connection_at_point(mouse_event.get_position())\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la connexion la plus proche du point donné dans l'espace écran. Si "
"aucune connexion n'est trouvée avec une portée de [param max_distance] "
"pixels, un [Dictionary] vide est renvoyé.\n"
"Une connexion est représentée comme un [Dictionary] sous la forme :\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName, #nœud de début\n"
"\tfrom_port: int, #port de début\n"
"\tto_node: StringName, #nœud de fin\n"
"\tto_port: int, #port de fin\n"
"\tkeep_alive: bool #garder en vie\n"
"}\n"
"[/codeblock]\n"
"Par exemple, obtenir une connexion à une position donnée de la souris peut "
"être effectué comme ceci :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var connexion = get_closest_connection_at_point(mouse_event.get_position())\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns the number of connections from [param from_port] of [param from_node]."
msgstr ""
"Renvoie le nombre de connexions du port [param from_port] du nœud [param "
"from_node]."

msgid ""
"Returns the points which would make up a connection between [param from_node] "
"and [param to_node]."
msgstr ""
"Renvoie les points qui constitueraient une connexion entre les nœuds [param "
"from_node] et [param to_node]."

msgid ""
"Returns an [Array] containing the list of connections that intersect with the "
"given [Rect2].\n"
"A connection is represented as a [Dictionary] in the form of:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]"
msgstr ""
"Renvoie un [Array] contenant une liste de toutes les connexions qui "
"intersectent le [Rect2] donné.\n"
"Une connexion est représentée en tant que [Dictionary] sous la forme :\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName, #nœud de début\n"
"\tfrom_port: int, #port de début\n"
"\tto_node: StringName, #nœud de fin\n"
"\tto_port: int, #port de fin\n"
"\tkeep_alive: bool #garder en vie\n"
"}\n"
"[/codeblock]"

msgid ""
"Returns the [GraphFrame] that contains the [GraphElement] with the given name."
msgstr ""
"Renvoie le [GraphFrame] qui contient le [GraphElement] avec le nom donné."

msgid ""
"Gets the [HBoxContainer] that contains the zooming and grid snap controls in "
"the top left of the graph. You can use this method to reposition the toolbar "
"or to add your own custom controls to it.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Obtient le [HBoxContainer] qui contient les contrôles de zoom et de "
"magnétisation de la grille en haut à gauche du graphe. Vous pouvez utiliser "
"cette méthode pour repositionner la barre d'outils ou pour y ajouter vos "
"propres contrôles personnalisés.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne requis, l'enlever et le "
"libérer peut causer un plantage. Si vous voulez le cacher lui ou un de ses "
"enfants, utilisez plutôt la propriété [member CanvasItem.visible]."

msgid ""
"Returns [code]true[/code] if the [param from_port] of the [param from_node] "
"[GraphNode] is connected to the [param to_port] of the [param to_node] "
"[GraphNode]."
msgstr ""
"Renvoie [code]true[/code] si le port [param from_port] du [GraphNode] [param "
"from_node] est connecté au port [param to_port] du [GraphNode] [param "
"to_node]."

msgid ""
"Returns whether it's possible to make a connection between two different port "
"types. The port type is defined individually for the left and the right port "
"of each slot with the [method GraphNode.set_slot] method.\n"
"See also [method add_valid_connection_type] and [method "
"remove_valid_connection_type]."
msgstr ""
"Renvoie s'il est possible de faire une connexion entre deux types de port "
"différents. Le type de port est défini individuellement pour le port gauche "
"et droit de chaque emplacement avec la méthode [method GraphNode.set_slot].\n"
"Voir aussi [method add_valid_connection_type] et [method "
"remove_valid_connection_type]."

msgid ""
"Disallows the connection between two different port types previously allowed "
"by [method add_valid_connection_type]. The port type is defined individually "
"for the left and the right port of each slot with the [method "
"GraphNode.set_slot] method.\n"
"See also [method is_valid_connection_type]."
msgstr ""
"Interdit la connexion entre deux types de ports précédemment autorisés par "
"[method add_valid_connection_type]. Le type de port est défini "
"individuellement pour le port gauche et le port droit de chaque emplacement "
"avec la méthode [method GraphNode.set_slot].\n"
"Voir aussi [method is_valid_connection_type]."

msgid ""
"Disallows to disconnect nodes when dragging from the left port of the "
"[GraphNode]'s slot if it has the specified type. Use this to disable "
"disconnection previously allowed with [method add_valid_left_disconnect_type]."
msgstr ""
"Interdit de déconnecter des nœuds lors du glissement du port gauche de "
"l'emplacement du [GraphNode] s'il a le type spécifié. Utilisez ceci pour "
"désactiver la déconnexion précédemment autorisée avec [method "
"add_valid_left_disconnect_type]."

msgid ""
"Disallows to disconnect nodes when dragging from the right port of the "
"[GraphNode]'s slot if it has the specified type. Use this to disable "
"disconnection previously allowed with [method "
"add_valid_right_disconnect_type]."
msgstr ""
"Interdit de déconnecter des nœuds lors du glissement du port droit de "
"l'emplacement du [GraphNode] s'il a le type spécifié. Utilisez ceci pour "
"désactiver la déconnexion précédemment autorisée avec [method "
"add_valid_right_disconnect_type]."

msgid ""
"Sets the coloration of the connection between [param from_node]'s [param "
"from_port] and [param to_node]'s [param to_port] with the color provided in "
"the [theme_item activity] theme property. The color is linearly interpolated "
"between the connection color and the activity color using [param amount] as "
"weight."
msgstr ""
"Définit la coloration de la connexion entre le port [param from_port] du nœud "
"[param from_node] et du port [param to_port] du nœud [param to_node] avec la "
"couleur fournie dans la propriété de thème [theme_item activity]. La couleur "
"est linéairement interpolée entre la couleur de connexion et la couleur "
"d'activité en utilisant [param amount] comme poids."

msgid "Sets the specified [param node] as the one selected."
msgstr "Définit le nœud [param node] spécifié comme celui sélectionné."

msgid "If [code]true[/code], the lines between nodes will use antialiasing."
msgstr ""
"Si [code]true[/code], les lignes entre les nœuds utiliseront l'anticrénleage."

msgid ""
"The curvature of the lines between the nodes. 0 results in straight lines."
msgstr ""
"La courbure des lignes entre les nœuds. 0 résulte en des lignes droites."

msgid "The thickness of the lines between the nodes."
msgstr "L'épaisseur des lignes entre les nœuds."

msgid ""
"The connections between [GraphNode]s.\n"
"A connection is represented as a [Dictionary] in the form of:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"Connections with [code]keep_alive[/code] set to [code]false[/code] may be "
"deleted automatically if invalid during a redraw."
msgstr ""
"Les connexions entre des [GraphNode]s.\n"
"Un lien est représenté par un [Dictionary] sous la forme :\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName, #nœud de début\n"
"\tfrom_port: int, #port de début\n"
"\tto_node: StringName, #nœud de fin\n"
"\tto_port: int, #port de fin\n"
"\tkeep_alive: bool #garder en vie\n"
"}\n"
"[/codeblock]\n"
"Les connexions avec [code]keep_alive[/code] défini à [code]false[/code] "
"peuvent être supprimées automatiquement si elles sont invalides lors d'un "
"redessin."

msgid "The pattern used for drawing the grid."
msgstr "Le motif utilisé pour dessiner la grille."

msgid "If [code]true[/code], the minimap is visible."
msgstr "Si [code]true[/code], la mini-carte est visible."

msgid "The opacity of the minimap rectangle."
msgstr "L'opacité du rectangle de la mini-carte."

msgid ""
"The size of the minimap rectangle. The map itself is based on the size of the "
"grid area and is scaled to fit this rectangle."
msgstr ""
"La taille du rectangle de la mini-carte. La carte elle-même est basée sur la "
"taille de la zone de grille et est mise à l'échelle pour s'adapter à ce "
"rectangle."

msgid "Defines the control scheme for panning with mouse wheel."
msgstr ""
"Définit le schéma de contrôle pour le panorama avec la molette de la souris."

msgid ""
"If [code]true[/code], enables disconnection of existing connections in the "
"GraphEdit by dragging the right end."
msgstr ""
"Si [code]true[/code], permet de déconnecter les connexions existantes dans le "
"GraphEdit en faisant glisser l'extrémité droite."

msgid "The scroll offset."
msgstr "Le décalage du défilement."

msgid ""
"If [code]true[/code], the button to automatically arrange graph nodes is "
"visible."
msgstr ""
"Si [code]true[/code], le bouton pour arranger automatiquement les nœuds du "
"graphe est visible."

msgid "If [code]true[/code], the grid is visible."
msgstr "Si [code]true[/code], la grille est visible."

msgid ""
"If [code]true[/code], buttons that allow to configure grid and snapping "
"options are visible."
msgstr ""
"Si [code]true[/code], les boutons qui permettent de configurer la grille et "
"les options d’aimantation sont visibles."

msgid "If [code]true[/code], the menu toolbar is visible."
msgstr "Si [code]true[/code], la barre d'outils du menu est visible."

msgid "If [code]true[/code], the button to toggle the minimap is visible."
msgstr ""
"Si [code]true[/code], le bouton pour activer/désactiver la mini-carte est "
"visible."

msgid ""
"If [code]true[/code], buttons that allow to change and reset the zoom level "
"are visible."
msgstr ""
"Si [code]true[/code], les boutons qui permettent de modifier et de "
"réinitialiser le niveau de zoom sont visibles."

msgid ""
"If [code]true[/code], the label with the current zoom level is visible. The "
"zoom level is displayed in percents."
msgstr ""
"Si [code]true[/code], le libellé avec le niveau de zoom actuel est visible. "
"Le niveau de zoom est affiché en pourcentage."

msgid "The snapping distance in pixels, also determines the grid line distance."
msgstr ""
"La distance de magnétisation en pixels, détermine également la distance entre "
"les lignes de la grille."

msgid "If [code]true[/code], enables snapping."
msgstr "Si [code]true[/code], la magnétisation est activée."

msgid "[Dictionary] of human readable port type names."
msgstr "[Dictionary] des noms de type de port facilement lisibles."

msgid "The current zoom value."
msgstr "La valeur de zoom actuelle."

msgid "The upper zoom limit."
msgstr "La valeur maximale du zoom."

msgid "The lower zoom limit."
msgstr "La valeur minimale du zoom."

msgid "The step of each zoom level."
msgstr "Le pas entre chaque niveau de zoom."

msgid "Emitted at the beginning of a [GraphElement]'s movement."
msgstr "Émis au début du mouvement d'un [GraphElement]."

msgid "Emitted at the end of a connection drag."
msgstr "Émis à la fin d'un glissement de connexion."

msgid "Emitted at the beginning of a connection drag."
msgstr "Émis au début d'un glissement de connexion."

msgid ""
"Emitted when user drags a connection from an input port into the empty space "
"of the graph."
msgstr ""
"Émis lorsque l'utilisateur fait glisser une connexion d'un port d'entrée vers "
"l'espace vide du graphe."

msgid ""
"Emitted when user drags a connection from an output port into the empty space "
"of the graph."
msgstr ""
"Émis lorsque l'utilisateur fait glisser une connexion d'un port de sortie "
"vers l'espace vide du graphe."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_copy[/code] action "
"([kbd]Ctrl + C[/kbd] by default). In general, this signal indicates that the "
"selected [GraphElement]s should be copied."
msgstr ""
"Émis quand ce [GraphEdit] capture une action [code]ui_copy[/code] ([kbd]Ctrl "
"+ C[/kbd] par défaut). En général, ce signal indique que les [GraphElement]s "
"sélectionnés devraient être copiés."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_cut[/code] action "
"([kbd]Ctrl + X[/kbd] by default). In general, this signal indicates that the "
"selected [GraphElement]s should be cut."
msgstr ""
"Émis quand ce [GraphEdit] capture une action [code]ui_cut[/code] ([kbd]Ctrl + "
"X[/kbd] par défaut). En général, ce signal indique que les [GraphElement]s "
"sélectionnés devraient être coupés."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_graph_delete[/code] action "
"([kbd]Delete[/kbd] by default).\n"
"[param nodes] is an array of node names that should be removed. These usually "
"include all selected nodes."
msgstr ""
"Émis quand ce [GraphEdit] capture une action [code]ui_graph_delete[/code] "
"([kbd]Delete[/kbd] par défaut).\n"
"[param nodes] est un tableau de nœuds qui devraient être supprimés. Cela "
"inclut généralement tous les nœuds."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_graph_duplicate[/code] "
"action ([kbd]Ctrl + D[/kbd] by default). In general, this signal indicates "
"that the selected [GraphElement]s should be duplicated."
msgstr ""
"Émis quand ce [GraphEdit] capture une action [code]ui_graph_duplicate[/code] "
"([kbd]Ctrl + D[/kbd] par défaut). En général, ce signal indique que les "
"[GraphElement]s sélectionnés devraient être dupliqués."

msgid "Emitted at the end of a [GraphElement]'s movement."
msgstr "Émis à la fin du mouvement d'un [GraphElement]."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_paste[/code] action "
"([kbd]Ctrl + V[/kbd] by default). In general, this signal indicates that "
"previously copied [GraphElement]s should be pasted."
msgstr ""
"Émis quand ce [GraphEdit] capture une action [code]ui_paste[/code] ([kbd]Ctrl "
"+ V[/kbd] par défaut). En général, ce signal indique que les [GraphElement]s "
"sélectionnés devraient être collés."

msgid ""
"Emitted when the scroll offset is changed by the user. It will not be emitted "
"when changed in code."
msgstr ""
"Émis lorsque le décalage du défilement est modifié par l'utilisateur. Il ne "
"sera pas émis lorsque modifié depuis le code."

msgid "Draw the grid using solid lines."
msgstr "Dessine la grille en utilisant des lignes pleines."

msgid "Draw the grid using dots."
msgstr "Dessine la grille en utilisant des pointillés."

msgid "The fill color of the selection rectangle."
msgstr "La couleur de remplissage du rectangle de sélection."

msgid "The outline color of the selection rectangle."
msgstr "La couleur de la bordure du rectangle de sélection."

msgid "The icon for the zoom in button."
msgstr "L'icône pour le bouton du zoom avant."

msgid "The icon for the zoom out button."
msgstr "L'icône pour le bouton du zoom arrière."

msgid "The icon for the zoom reset button."
msgstr "L'icône pour le bouton du rétablissement du zoom."

msgid "The background drawn under the grid."
msgstr "L’arrière-plan dessiné sous la grille."

msgid ""
"If [code]true[/code], the user can resize the GraphElement.\n"
"[b]Note:[/b] Dragging the handle will only emit the [signal resize_request] "
"and [signal resize_end] signals, the GraphElement needs to be resized "
"manually."
msgstr ""
"Si [code]true[/code], l'utilisateur peut redimensionner le GraphElement.\n"
"[b]Note :[/b] Faire glisser la poignée n'émettra que les signaux [signal "
"resize_request] et [signal resize_end], le GraphElement doit être "
"redimensionné manuellement."

msgid "If [code]true[/code], the user can select the GraphElement."
msgstr "Si [code]true[/code], l'utilisateur peut sélectionner le GraphElement."

msgid ""
"The color of the frame when [member tint_color_enabled] is [code]true[/code]."
msgstr ""
"La couleur de la trame lorsque [member tint_color_enabled] vaut [code]true[/"
"code]."

msgid ""
"Emitted when [member autoshrink_enabled] or [member autoshrink_margin] "
"changes."
msgstr ""
"Émis quand [member autoshrink_enabled] ou [member autoshrink_margin] sont "
"changés."

msgid "The color modulation applied to the resizer icon."
msgstr "La couleur de modulation appliquée à l'icône de redimensionnement."

msgid ""
"Sets the right (output) type of the slot with the given [param slot_index] to "
"[param type]. If the value is negative, all connections will be disallowed to "
"be created via user inputs."
msgstr ""
"Définit le type (de sortie) sortie de l'emplacement avec l'index [param "
"slot_index] donné à [param type]. Si la valeur est négative, toutes les "
"connexions seront refusées d'être créées via des entrées utilisateur."

msgid ""
"If [code]true[/code], you can connect ports with different types, even if the "
"connection was not explicitly allowed in the parent [GraphEdit]."
msgstr ""
"Si [code]true[/code], vous pouvez connecter les ports avec des types "
"différents, même si la connexion n'était pas explicitement autorisée dans le "
"[GraphEdit] parent."

msgid "The text displayed in the GraphNode's title bar."
msgstr "Le texte affiché dans la barre de titre du GraphNode."

msgid "Emitted when any slot's size might have changed."
msgstr "Émis quand la taille de n'importe quel emplacement aurait changé."

msgid "Emitted when any GraphNode's slot is updated."
msgstr "Émis lorsqu’un emplacement du GraphNode est mis à jour."

msgid "Horizontal offset for the ports."
msgstr "Le décalage horizontal pour les ports."

msgid "The vertical distance between ports."
msgstr "La distance verticale entre les ports."

msgid "The icon used for representing ports."
msgstr "L’icône utilisée pour représenter les ports."

msgid "A container that arranges its child controls in a grid layout."
msgstr ""
"Un conteneur qui arrange ses contrôles enfants en une disposition en grille."

msgid ""
"[GridContainer] arranges its child controls in a grid layout. The number of "
"columns is specified by the [member columns] property, whereas the number of "
"rows depends on how many are needed for the child controls. The number of "
"rows and columns is preserved for every size of the container.\n"
"[b]Note:[/b] [GridContainer] only works with child nodes inheriting from "
"[Control]. It won't rearrange child nodes inheriting from [Node2D]."
msgstr ""
"[GridContainer] arrange ses contrôles enfants en une disposition en grille. "
"Le nombre de colonnes est spécifié par la propriété [member columns], alors "
"que le nombre de lignes dépend du nombre nécessaire pour les contrôles "
"enfants. Le nombre de lignes et de colonnes est conservé pour chaque taille "
"du conteneur.\n"
"[b]Note :[/b] [GridContainer] ne fonctionne qu'avec des nœuds enfants "
"héritant de [Control]. Il ne réarrangera pas les nœuds enfants héritant de "
"[Node2D]."

msgid ""
"The number of columns in the [GridContainer]. If modified, [GridContainer] "
"reorders its Control-derived children to accommodate the new layout."
msgstr ""
"Le nombre de colonnes dans le [GridContainer]. Si modifié, [GridContainer] "
"réarrangera ses enfants dérivés de Control suivant la nouvelle mise en page."

msgid "Node for 3D tile-based maps."
msgstr "Nœud pour les cartes à base de tuiles 3D."

msgid "Using gridmaps"
msgstr "Utiliser les gridmaps"

msgid "Clear all cells."
msgstr "Effacer toutes les cellules."

msgid ""
"Returns the [RID] of the navigation map this GridMap node uses for its cell "
"baked navigation meshes.\n"
"This function returns always the map set on the GridMap node and not the map "
"on the NavigationServer. If the map is changed directly with the "
"NavigationServer API the GridMap node will not be aware of the map change."
msgstr ""
"Renvoie le [RID] de la carte de navigation que ce nœud GridMap utilise pour "
"ses maillages de navigation à base de cellules pré-calculés.\n"
"Cette fonction renvoie toujours la carte définie sur le nœud GridMap et non "
"la carte sur le NavigationServer. Si la carte est changée directement avec "
"l'API NavigationServer, le nœud GridMap ne sera pas au courant du changement "
"de carte."

msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the grid "
"map."
msgstr ""
"Renvoie un tableau de [Vector3] avec les coordonnées des cellules non vides "
"dans la grille."

msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr ""
"Si [code]true[/code], les éléments de la grille sont centrés sur l'axe X."

msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr ""
"Si [code]true[/code], les éléments de la grille sont centrés sur l'axe Y."

msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr ""
"Si [code]true[/code], les éléments de la grille sont centrés sur l'axe Z."

msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
"La taille de chaque octant mesurée en nombre de cellules. Ceci s'applique aux "
"trois axes."

msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items in "
"them. This can be used to make cell items overlap their neighbors."
msgstr ""
"L'échelle des éléments des cellules.\n"
"Cela n'affecte pas la taille des cellules du réseau elles-mêmes, seulement "
"les éléments dans celles-ci. Cela peut être utilisé pour faire que des "
"éléments de cellule chevauchent leurs voisins."

msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
"Les dimensions des cellules de la grille.\n"
"Cela n'affecte pas la taille des maillages. Voir [member cell_scale]."

msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
"La couche physique dans laquelle est cette GridMap.\n"
"Les GridMaps agissent comme des corps statiques, ce qui signifie qu'ils ne "
"sont pas affectés par la gravité ou les autres forces. Ils n'affectent que "
"les autres corps physique qui entrent en collision avec eux."

msgid ""
"The physics layers this GridMap detects collisions in. See [url=$DOCS_URL/"
"tutorials/physics/physics_introduction.html#collision-layers-and-"
"masks]Collision layers and masks[/url] in the documentation for more "
"information."
msgstr ""
"Les couches physiques sur lesquelles ce GridMap détecte les collisions. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Couches et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid "The assigned [MeshLibrary]."
msgstr "La [MeshLibrary] assignée."

msgid ""
"Overrides the default friction and bounce physics properties for the whole "
"[GridMap]."
msgstr ""
"Redéfinit les propriétés physiques par défaut de la friction et du "
"rebondissement pour la [GridMap] entière."

msgid "Emitted when [member cell_size] changes."
msgstr "Émis lorsque [member cell_size] change."

msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
msgstr ""
"Élément de cellule invalide qui peut être utilisé dans [method set_cell_item] "
"pour effacer des cellules (ou représenter une cellule vide dans [method "
"get_cell_item])."

msgid "Editor for [GridMap] nodes."
msgstr "Éditeur pour les nœuds [GridMap]."

msgid "Deselects any currently selected cells."
msgstr "Désélectionne toutes les cellules actuellement sélectionnées."

msgid "Returns the [GridMap] node currently edited by the grid map editor."
msgstr "Renvoie le nœud [GridMap] actuellement édité par l'éditeur de gridmap."

msgid "Returns an array of [Vector3i]s with the selected cells' coordinates."
msgstr ""
"Renvoie un tableau de [Vector3i]s avec les coordonnées des cellules "
"sélectionnées."

msgid ""
"Returns the index of the selected [MeshLibrary] item in the grid map editor's "
"palette or [code]-1[/code] if no item is selected.\n"
"[b]Note:[/b] The indices might not be in the same order as they appear in the "
"editor's interface."
msgstr ""
"Renvoie l'index de l'élément [MeshLibrary] séléectionné dans la palette de "
"l'éditeur de gridmap ou [code]-1[/code] si aucun élément n'est sélectionné.\n"
"[b]Note :[/b] Les indices peuvent ne pas être dans le même ordre qu'ils "
"apparaissent dans l'interface de l'éditeur."

msgid ""
"Returns the cell coordinate bounds of the current selection. Use [method "
"has_selection] to check if there is an active selection."
msgstr ""
"Renvoie les limites des coordonnées des cellules de la sélection courante. "
"Utilisez [method has_selection] pour vérifier s'il y a une sélection active."

msgid "Returns [code]true[/code] if there are selected cells."
msgstr "Renvoie [code]true[/code] s'il y a des cellules sélectionnées."

msgid ""
"Selects the [MeshLibrary] item with the given index in the grid map editor's "
"palette. If a negative index is given, no item will be selected. If a value "
"greater than the last index is given, the last item will be selected.\n"
"[b]Note:[/b] The indices might not be in the same order as they appear in the "
"editor's interface."
msgstr ""
"Sélectionne l'élément [MeshLibrary] avec l'index donné dans la palette de "
"l'éditeur de gridmap. Si un indice négatif est donné, aucun élément ne sera "
"sélectionné. Si une valeur supérieure au dernier indice est donnée, le "
"dernier élément sera sélectionné.\n"
"[b]Note :[/b] Les indices peuvent ne pas être dans le même ordre qu'ils "
"apparaissent dans l'interface de l'éditeur."

msgid ""
"A physics joint that restricts the movement of two 2D physics bodies to a "
"fixed axis."
msgstr ""
"Une liaison physique qui restreint le mouvement de deux corps physiques 2D à "
"un axe fixe."

msgid ""
"A physics joint that restricts the movement of two 2D physics bodies to a "
"fixed axis. For example, a [StaticBody2D] representing a piston base can be "
"attached to a [RigidBody2D] representing the piston head, moving up and down."
msgstr ""
"Une liaison physique qui restreint le mouvement de deux corps physiques 2D à "
"un axe fixe. Par exemple, un [StaticBody2D] représentant une base de piston "
"peut être attaché à un [RigidBody2D] représentant la tête du piston, se "
"déplaçant de haut en bas."

msgid ""
"The body B's initial anchor position defined by the joint's origin and a "
"local offset [member initial_offset] along the joint's Y axis (along the "
"groove)."
msgstr ""
"La position d'ancrage initiale du corps B est définie par l'origine de la "
"liaison et un décalage local [member initial_offset] le long de l'axe Y de la "
"liaison (le long de la rainure)."

msgid ""
"The groove's length. The groove is from the joint's origin towards [member "
"length] along the joint's local Y axis."
msgstr ""
"La longueur de la rainure. La rainure va de l'origine de la liaison jusqu'à "
"[member length] mètres le long de l'axe Y local de la liaison."

msgid "Closes the current context, and return the computed hash."
msgstr "Finalise l'actuel contexte, et renvoie le hachage calculé."

msgid "Hashing algorithm: MD5."
msgstr "Algorithme de hachage : MD5."

msgid "Hashing algorithm: SHA-1."
msgstr "Algorithme de hachage : SHA-1."

msgid "Hashing algorithm: SHA-256."
msgstr "Algorithme de hachage : SHA-256."

msgid "A container that arranges its child controls horizontally."
msgstr "Un conteneur qui arrange ses contrôles enfant horizontalement."

msgid ""
"A variant of [BoxContainer] that can only arrange its child controls "
"horizontally. Child controls are rearranged automatically when their minimum "
"size changes."
msgstr ""
"Une variante de [BoxContainer] qui ne peut arranger ses contrôles enfants que "
"horizontally. Les contrôles enfants sont ré-organisés automatiquement lorsque "
"leur taille minimale change."

msgid ""
"Returns the largest height value found in [member map_data]. Recalculates "
"only when [member map_data] changes."
msgstr ""
"Renvoie la plus grande valeur de hauteur trouvée dans [member map_data]. "
"Recalcule seulement lorsque [member map_data] change."

msgid ""
"Returns the smallest height value found in [member map_data]. Recalculates "
"only when [member map_data] changes."
msgstr ""
"Renvoie la plus petite valeur de hauteur trouvée dans [member map_data]. "
"Recalcule seulement lorsque [member map_data] change."

msgid ""
"Updates [member map_data] with data read from an [Image] reference. "
"Automatically resizes heightmap [member map_width] and [member map_depth] to "
"fit the full image width and height.\n"
"The image needs to be in either [constant Image.FORMAT_RF] (32 bit), "
"[constant Image.FORMAT_RH] (16 bit), or [constant Image.FORMAT_R8] (8 bit).\n"
"Each image pixel is read in as a float on the range from [code]0.0[/code] "
"(black pixel) to [code]1.0[/code] (white pixel). This range value gets "
"remapped to [param height_min] and [param height_max] to form the final "
"height value.\n"
"[b]Note:[/b] Using a heightmap with 16-bit or 32-bit data, stored in EXR or "
"HDR format is recommended. Using 8-bit height data, or a format like PNG that "
"Godot imports as 8-bit, will result in a terraced terrain."
msgstr ""
"Met à jour [member map_data] avec les données lues à partir d'une référence "
"[Image]. Redimensionne automatiquement [member map_width] et [member "
"map_depth] de la heightmap pour faire correspondre à la largeur et à la "
"hauteur complètes de l'image.\n"
"L'image doit être en format [constant Image.FORMAT_RF] (32 bit), [constant "
"Image.FORMAT_RH] (16 bits), ou [constant Image.FORMAT_R8] (8 bits).\n"
"Chaque pixel d'image est lu comme un flottant sur une plage de [code]0.0[/"
"code] (pixel noir) à [code]1.0[/code] (pixel blanc). Cette valeur de plage "
"est réaffectée à [param height_min] et [param height_max] pour former la "
"valeur de hauteur finale.\n"
"[b]Note :[/b] Il est recommandé d'utiliser une heightmap avec des données 16 "
"bits ou 32 bits, stockées en format EXR ou HDR. L'utilisation de données de "
"hauteur de 8 bits, ou un format comme le PNG que Godot importe en 8 bits, "
"entraînera un terrain en terrasses."

msgid ""
"A container that arranges its child controls horizontally and wraps them "
"around at the borders."
msgstr ""
"Un conteneur qui arrange ses contrôles enfants horizontalement et fait "
"automatiquement un retour à la ligne aux frontières."

msgid ""
"A variant of [FlowContainer] that can only arrange its child controls "
"horizontally, wrapping them around at the borders. This is similar to how "
"text in a book wraps around when no more words can fit on a line."
msgstr ""
"Une variante de [FlowContainer] qui organise ses contrôles enfants "
"horizontalement, faisant automatiquement un retour à la ligne (\"wrapping\", "
"litt. enrouler) aux frontières. C'est similaire à la façon dont le texte dans "
"un livre revient à la ligne automatiquement lorsque aucun mot de plus ne peut "
"rentrer sur une ligne."

msgid ""
"A physics joint that restricts the rotation of a 3D physics body around an "
"axis relative to another physics body."
msgstr ""
"Une liaison physique qui restreint la rotation d'un corps physique 3D autour "
"d'un axe relatif à un autre corps physique."

msgid ""
"A physics joint that restricts the rotation of a 3D physics body around an "
"axis relative to another physics body. For example, Body A can be a "
"[StaticBody3D] representing a door hinge that a [RigidBody3D] rotates around."
msgstr ""
"Une liaison physique qui restreint la rotation d'un corps physique 3D autour "
"d'un axe relatif à un autre corps physique. Par example, le corps A peut être "
"un [StaticBody3D] représentant une charnière de porte autour de laquelle un "
"[RigidBody3D] tourne."

msgid "Returns the value of the specified flag."
msgstr "Renvoie la valeur de l'option donnée."

msgid "If [code]true[/code], enables the specified flag."
msgstr "Si [code]true[/code], active le drapeau spécifié."

msgid ""
"The speed with which the rotation across the axis perpendicular to the hinge "
"gets corrected."
msgstr ""
"La vitesse avec laquelle la rotation sur l'axe perpendiculaire à la charnière "
"est corrigée."

msgid ""
"If [code]true[/code], the hinges maximum and minimum rotation, defined by "
"[member angular_limit/lower] and [member angular_limit/upper] has effects."
msgstr ""
"Si [code]true[/code], la rotation maximale et minimale de la charnière, "
"définies par [member angular_limit/lower] et [member angular_limit/upper], "
"ont des effets."

msgid ""
"The minimum rotation. Only active if [member angular_limit/enable] is "
"[code]true[/code]."
msgstr ""
"La rotation minimale. Uniquement actif quand[member angular_limit/enable] est "
"[code]true[/code]."

msgid "The lower this value, the more the rotation gets slowed down."
msgstr "Plus cette valeur sera basse, plus la rotation sera ralentie."

msgid ""
"This property is never set by the engine and is kept for compatibility "
"purposes."
msgstr ""
"Cette propriété n'est jamais définie par le moteur et est conservée à des "
"fins de compatibilité."

msgid ""
"The maximum rotation. Only active if [member angular_limit/enable] is "
"[code]true[/code]."
msgstr ""
"La rotation maximale. Uniquement actif quand [member angular_limit/enable] "
"est [code]true[/code]."

msgid "When activated, a motor turns the hinge."
msgstr "Lors qu’activé, un moteur tourne la charnière."

msgid "Maximum acceleration for the motor."
msgstr "Accélération maximale pour le moteur."

msgid "Target speed for the motor."
msgstr "Vitesse cible pour le moteur."

msgid ""
"The speed with which the two bodies get pulled together when they move in "
"different directions."
msgstr ""
"La vitesse avec laquelle les deux corps se réunissent quand ils se déplacent "
"dans des directions différentes."

msgid ""
"This property is never used by the engine and is kept for compatibility "
"purpose."
msgstr ""
"Cette propriété n'est jamais utilisée par le moteur et est conservée à des "
"fins de compatibilité."

msgid "Used to create an HMAC for a message using a key."
msgstr "Utilisé pour créer un HMAC pour un message utilisant une clé."

msgid ""
"The HMACContext class is useful for advanced HMAC use cases, such as "
"streaming the message as it supports creating the message over time rather "
"than providing it all at once.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"var ctx = HMACContext.new()\n"
"\n"
"func _ready():\n"
"\tvar key = \"supersecret\".to_utf8_buffer()\n"
"\tvar err = ctx.start(HashingContext.HASH_SHA256, key)\n"
"\tassert(err == OK)\n"
"\tvar msg1 = \"this is \".to_utf8_buffer()\n"
"\tvar msg2 = \"super duper secret\".to_utf8_buffer()\n"
"\terr = ctx.update(msg1)\n"
"\tassert(err == OK)\n"
"\terr = ctx.update(msg2)\n"
"\tassert(err == OK)\n"
"\tvar hmac = ctx.finish()\n"
"\tprint(hmac.hex_encode())\n"
"\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate HmacContext _ctx = new HmacContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tbyte[] key = \"supersecret\".ToUtf8Buffer();\n"
"\t\tError err = _ctx.Start(HashingContext.HashType.Sha256, key);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] msg1 = \"this is \".ToUtf8Buffer();\n"
"\t\tbyte[] msg2 = \"super duper secret\".ToUtf8Buffer();\n"
"\t\terr = _ctx.Update(msg1);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\terr = _ctx.Update(msg2);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] hmac = _ctx.Finish();\n"
"\t\tGD.Print(hmac.HexEncode());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La classe HMACContext est utile pour les usages HMAC avancés, comme l'envoi "
"continu de message puisqu'il supporte la création de message en plusieurs "
"fois plutôt qu'en une seule fois.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"var ctx = HMACContext.new()\n"
"\n"
"func _ready():\n"
"\tvar key = \"supersecret\".to_utf8()\n"
"\tvar err = ctx.start(HashingContext.HASH_SHA256, key)\n"
"\tassert(err == OK)\n"
"\tvar msg1 = \"c'est un \".to_utf8()\n"
"\tvar msg2 = \"extra méga super secret\".to_utf8()\n"
"\terr = ctx.update(msg1)\n"
"\tassert(err == OK)\n"
"\terr = ctx.update(msg2)\n"
"\tassert(err == OK)\n"
"\tvar hmac = ctx.finish()\n"
"\tprint(hmac.hex_encode())\n"
"\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public class CryptoNode : Node\n"
"{\n"
"\tprivate HMACContext ctx = new HMACContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tbyte[] key = \"supersecret\".ToUtf8Buffer();\n"
"\t\tError err = _ctx.Start(HashingContext.HashType.Sha256, key);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] msg1 = \"c'est un \".ToUtf8Buffer();\n"
"\t\tbyte[] msg2 = \"extra méga super secret\".ToUtf8Buffer();\n"
"\t\terr = _ctx.Update(msg1);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\terr = _ctx.Update(msg2);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] hmac = _ctx.Finish();\n"
"\t\tGD.Print(hmac.HexEncode());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Initializes the HMACContext. This method cannot be called again on the same "
"HMACContext until [method finish] has been called."
msgstr ""
"Initialise le HMACContext. Cette méthode ne peut pas être appelée sur le même "
"HMACContext tant que [method finish] n'a pas été appelé."

msgid "A horizontal scrollbar that goes from left (min) to right (max)."
msgstr ""
"Une barre de défilement horizontale qui va de gauche (min) à droite (max)."

msgid ""
"A horizontal scrollbar, typically used to navigate through content that "
"extends beyond the visible width of a control. It is a [Range]-based control "
"and goes from left (min) to right (max)."
msgstr ""
"Une barre de défilement horizontale, généralement utilisée pour parcourir du "
"contenu qui s'étend au-delà de la largeur visible d'un contrôle. C'est un "
"contrôle basé sur [Range] et qui va de gauche (minimum) à droite (maximum)."

msgid "A horizontal line used for separating other controls."
msgstr "Une ligne horizontale utilisée pour séparer d'autres contrôles."

msgid ""
"A horizontal separator used for separating other controls that are arranged "
"[b]vertically[/b]. [HSeparator] is purely visual and normally drawn as a "
"[StyleBoxLine]."
msgstr ""
"Un séparateur horizontal utilisé pour séparer d'autres contrôles arrangés "
"[b]verticalement[/b]. [HSeparator] est purement visuel et normalement "
"dessinée comme une [StyleBoxLine]."

msgid "A horizontal slider that goes from left (min) to right (max)."
msgstr "Un slider horizontal qui va de gauche (min) à droite (max)."

msgid ""
"A container that splits two child controls horizontally and provides a "
"grabber for adjusting the split ratio."
msgstr ""
"Un conteneur qui divise deux contrôles enfants horizontalement et fournit un "
"séparateur pour ajuster le ratio de division."

msgid ""
"A container that accepts only two child controls, then arranges them "
"horizontally and creates a divisor between them. The divisor can be dragged "
"around to change the size relation between the child controls."
msgstr ""
"Un conteneur qui n'accepte que deux contrôles enfants, puis les arrange "
"horizontalement et crée un diviseur entre eux. Le diviseur peut être coulissé "
"pour changer la relation de taille entre les contrôles enfants."

msgid "Low-level hyper-text transfer protocol client."
msgstr "Client de protocole de transfert hypertexte de bas niveau."

msgid "HTTP client class"
msgstr "Classe de client HTTP"

msgid "TLS certificates"
msgstr "Certificats TLS"

msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
"Ferme l'actuelle connexion, permettant de la réutiliser pour cet [HTTPClient]."

msgid "Returns the response's HTTP status code."
msgstr "Renvoie le code d’état de la réponse HTTP."

msgid "Returns the response headers."
msgstr "Renvoie les en-têtes de réponse."

msgid ""
"Returns all response headers as a [Dictionary]. Each entry is composed by the "
"header name, and a [String] containing the values separated by [code]\"; \"[/"
"code]. The casing is kept the same as the headers were received.\n"
"[codeblock]\n"
"{\n"
"\t\"content-length\": 12,\n"
"\t\"Content-Type\": \"application/json; charset=UTF-8\",\n"
"}\n"
"[/codeblock]"
msgstr ""
"Renvoie tous les en-têtes de réponse en tant que [Dictionary]. Chaque entrée "
"est composée du nom de l'en-tête, et un [String] contenant les valeurs "
"séparées par [code]\"; \"[/code]. La casse est gardée comme ont été reçus les "
"en-têtes.\n"
"[codeblock]\n"
"{\n"
"\t\"content-length\": 12,\n"
"\t\"Content-Type\": \"application/json; charset=UTF-8\",\n"
"}\n"
"[/codeblock]"

msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
"Renvoie une constante [enum Status]. Vous devez appeler [method poll] pour "
"obtenir des mises à jour de statut."

msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr "Si [code]true[/code], ce [HTTPClient] a une réponse disponible."

msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
"Si [code]true[/code], cet [HTTPClient] reçoit une réponse en différentes "
"parties."

msgid ""
"This needs to be called in order to have any request processed. Check results "
"with [method get_status]."
msgstr ""
"Cela doit être appelé pour que les requêtes puissent être traitée. Vérifiez "
"les résultats avec [method get_status]."

msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Returns \"username=user&password=pass\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Returns \"username=user&password=pass\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Furthermore, if a key has a [code]null[/code] value, only the key itself is "
"added, without equal sign and value. If the value is an array, for each value "
"in it a pair with the same key is added.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"single\": 123, \"not_valued\": null, \"multiple\": [22, 33, "
"44] }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Returns \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"single\", 123 },\n"
"\t{ \"notValued\", default },\n"
"\t{ \"multiple\", new Godot.Collections.Array { 22, 33, 44 } },\n"
"};\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Returns \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Génère une chaîne de requête de style GET/POST application/x-www-form-"
"urlencoded depuis un dictionnaire fourni, par ex. :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Renvoie \"username=user&password=pass\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Renvoie \"username=user&password=pass\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"En outre, si une clé a une valeur [code]null[/code], seule la clé elle-même "
"est ajoutée, sans signe égal et valeur. Si la valeur est un tableau, pour "
"chaque valeur dans celui-ci une paire avec la même clé est ajoutée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"single\": 123, \"not_valued\": null, \"multiple\": [22, 33, "
"44] }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Renvoie \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"single\", 123 },\n"
"\t{ \"notValued\", default },\n"
"\t{ \"multiple\", new Godot.Collections.Array { 22, 33, 44 } },\n"
"};\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Renvoie \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Reads one chunk from the response."
msgstr "Lit une partie de la réponse."

msgid ""
"Sends an HTTP request to the connected host with the given [param method].\n"
"The URL parameter is usually just the part after the host, so for "
"[code]https://example.com/index.php[/code], it is [code]/index.php[/code]. "
"When sending requests to an HTTP proxy server, it should be an absolute URL. "
"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
"authority component ([code]host:port[/code]).\n"
"[param headers] are HTTP request headers.\n"
"To create a POST request with query strings to push to the server, do:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"var headers = [\"Content-Type: application/x-www-form-urlencoded\", \"Content-"
"Length: \" + str(query_string.length())]\n"
"var result = http_client.request(http_client.METHOD_POST, \"/index.php\", "
"headers, query_string)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = new HttpClient().QueryStringFromDict(fields);\n"
"string[] headers = [\"Content-Type: application/x-www-form-urlencoded\", $"
"\"Content-Length: {queryString.Length}\"];\n"
"var result = new HttpClient().Request(HttpClient.Method.Post, \"index.php\", "
"headers, queryString);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The [param body] parameter is ignored if [param method] is "
"[constant HTTPClient.METHOD_GET]. This is because GET methods can't contain "
"request data. As a workaround, you can pass request data as a query string in "
"the URL. See [method String.uri_encode] for an example."
msgstr ""
"Envoie une requête HTTP à l'hôte connecté avec la méthode [param method] "
"donnée.\n"
"Le paramètre de l'URL est généralement juste la partie après l'hôte, donc "
"pour [code]https://example.com/index.php[/code], il s'agit de [code]/"
"index.php[/code]. Lors de l'envoi de requêtes vers un serveur proxy HTTP, "
"elle devrait être une URL absolue. Pour les requêtes [constant "
"HTTPClient.METHOD_OPTIONS], [code]*[/code] est aussi autorisé. Pour les "
"requêtes [constant HTTPClient.METHOD_CONNECT], elle devrait être le composant "
"d'autorité ([code]host:port[/code]).\n"
"[param headers] sont des en-têtes de requête HTTP.\n"
"Pour créer une requête POST avec des chaînes de requête à envoyer sur le "
"serveur, faire :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"var headers = [\"Content-Type: application/x-www-form-urlencoded\", \"Content-"
"Length: \" + str(query_string.length())]\n"
"var result = http_client.request(http_client.METHOD_POST, \"/index.php\", "
"headers, query_string)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = new HttpClient().QueryStringFromDict(fields);\n"
"string[] headers = [\"Content-Type: application/x-www-form-urlencoded\", $"
"\"Content-Length: {queryString.Length}\"];\n"
"var result = new HttpClient().Request(HttpClient.Method.Post, \"index.php\", "
"headers, queryString);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Le paramètre [param body] est ignoré si [param method] vaut "
"[constant HTTPClient.METHOD_GET]. C'est parce que les méthodes GET ne peuvent "
"pas contenir de données de requête. Pour contourner cela, vous pouvez passer "
"des données de requête en tant que chaîne de requête dans l'URL. Voir [method "
"String.uri_encode] pour un exemple."

msgid ""
"Sets the proxy server for HTTP requests.\n"
"The proxy server is unset if [param host] is empty or [param port] is -1."
msgstr ""
"Définit le serveur de proxy pour les requêtes HTTP.\n"
"Le serveur de proxy n'est pas défini si [param host] est vide ou si [param "
"port] vaut -1."

msgid ""
"Sets the proxy server for HTTPS requests.\n"
"The proxy server is unset if [param host] is empty or [param port] is -1."
msgstr ""
"Définit le serveur de proxy pour les requêtes HTTPS.\n"
"Le serveur de proxy n'est pas défini si [param host] est vide ou si [param "
"port] vaut -1."

msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
"Si [code]true[/code], l'exécution sera bloquée jusqu'à ce que toutes les "
"données de la réponse soit lues."

msgid "The connection to use for this client."
msgstr "La connexion à utiliser pour ce client."

msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
"La taille de la mémoire tampon utilisée et le nombre maximal d'octets à lire "
"à chaque itération. Voir [method read_response_body_chunk]."

msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
"La méthode HTTP GET. La méthode GET demande une représentation de la "
"ressource spécifiée. Les requêtes avec GET ne devrait faire que récupérer des "
"données."

msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
"La méthode HTTP \"HEAD\". La méthode \"HEAD\" demande une réponse identique à "
"celle d'une requête \"GET\", mais sans le corps de la réponse. Ceci est utile "
"pour demander des métadonnées comme des en-têtes HTTP ou pour vérifier si une "
"ressource existe."

msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
"La méthode HTTP \"POST\". La méthode \"POST\" est utilisée pour soumettre une "
"entité à la ressource spécifiée, causant souvent un changement d'état sur le "
"serveur. Ceci est souvent utilisé pour les formulaires, pour soumettre des "
"données ou télécharger des fichiers."

msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
"\"create or update\" and PUT as \"update\", although many services tend to "
"not make a clear distinction or change their meaning)."
msgstr ""
"La méthode HTTP \"PUT\". La méthode \"PUT\" demander à remplacer toutes les "
"représentations actuelles de la ressource cible par les données fournies. "
"(Vous pouvez considérer \"POST\" comme une méthode pour \"créer ou mettre à "
"jour\" et \"PUT\" comme \"mise à jour\", même que de nombreux services ne "
"font pas de distinction voire en change leur sens)."

msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
"La méthode HTTP \"DELETE\". Elle permet de demander la suppression de la "
"ressource spécifiée."

msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
"La méthode HTTP \"OPTIONS\". La méthode \"OPTIONS\" demande une description "
"des options de communication pour la ressource cible. Elle est rarement "
"utilisée."

msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
"La méthode HTTP \"TRACE\". La méthode \"TRACE\" effectue un test de boucle de "
"message suivant le chemin vers la ressource cible. Renvoie toute la requête "
"HTTP reçue dans le corps de réponse. Rarement utilisée."

msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
"La méthode HTTP \"CONNECT\". La méthode \"CONNECT\" établit un tunnel vers "
"serveur identifié par la ressource cible. Elle est rarement utilisée."

msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications to "
"a resource."
msgstr ""
"La méthode HTTP \"PATCH\". La méthode \"PATCH\" est utilisée pour appliquer "
"des modifications partielles à une ressource."

msgid "Represents the size of the [enum Method] enum."
msgstr "Représente la taille de l'énumération [enum Method]."

msgid "Status: Disconnected from the server."
msgstr "Statut : Déconnecté du serveur."

msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
"Status : Actuellement en train de résoudre l'hôte de l'URL donnée en adresse "
"IP."

msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr ""
"Statut : Échec du DNS : N'a pas pu résoudre le nom d'hôte pour l'URL "
"spécifiée."

msgid "Status: Currently connecting to server."
msgstr "Statut : En cours de connexion au serveur."

msgid "Status: Can't connect to the server."
msgstr "État : Ne peut pas se connecter au serveur."

msgid "Status: Connection established."
msgstr "Statut : Connexion établie."

msgid "Status: Currently sending request."
msgstr "Statut : Demande en cours d'envoi."

msgid "Status: HTTP body received."
msgstr "Statut : corps HTTP reçu."

msgid "Status: Error in HTTP connection."
msgstr "Statut : Erreur dans la connexion HTTP."

msgid "Status: Error in TLS handshake."
msgstr "Statut : Erreur dans la poignée de main TLS."

msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
"Le code d'état HTTP [code]100 Continue[/code]. La réponse intermédiaire qui "
"indique que tout est bon jusqu'à présent et que le client devrait continuer "
"avec cette demande (ou ignorer ce statut s'il a déjà terminé)."

msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol the "
"server is switching to."
msgstr ""
"Le code d'état HTTP [code]101 Switching Protocol[/code]. Envoyé en réponse à "
"une en-tête de requête [code]Upgrade[/code] du client. Précise le nouveau "
"protocole que le serveur utilise dès à présent."

msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
"Le code de status HTTP [code]102 Processing[/code] (WebDAV). Indique que le "
"serveur a reçu la requête et la traite, mais aucune réponse n'est disponible "
"pour l'instant."

msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
"Le code d'état HTTP [code]201 Created[/code]. La requête a réussi et une "
"nouvelle ressource a été créée en conséquence. C'est généralement la réponse "
"envoyée après une requête \"PUT\"."

msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received but "
"not yet acted upon. It is non-committal, meaning that there is no way in HTTP "
"to later send an asynchronous response indicating the outcome of processing "
"the request. It is intended for cases where another process or server handles "
"the request, or for batch processing."
msgstr ""
"Le code d'état HTTP [code]202 Accepted[/code]. La requête a été reçue mais "
"n'a pas encore été traitée. Aucune réponse n'est envoyé même asynchrone "
"indiquant le résultat du traitement de cette requête. Il est destiné aux cas "
"où un autre processus ou un serveur traite la requête, ou pour le traitement "
"par lots."

msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
"available from the origin server, but collected from a local or a third party "
"copy. Except this condition, 200 OK response should be preferred instead of "
"this response."
msgstr ""
"Le code d'état HTTP [code]203 Non-Authoritative Information[/code]. Ce code "
"de réponse signifie que l'ensemble de méta-donnée retournée n'est pas la "
"copie exacte de celles sur le serveur d'origine, mais composée à partir d'une "
"copie locale ou autre. Sauf dans ce cas, la réponse 200 \"OK\" est préférable "
"à la place de cette réponse."

msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send for "
"this request, but the headers may be useful. The user-agent may update its "
"cached headers for this resource with the new ones."
msgstr ""
"Le code d'état HTTP [code]204 No Content[/code]. Il n'y a pas de contenu à "
"envoyer en réponse à cette requête, mais les en-têtes peuvent être utiles. Le "
"user-agent peut mettre à jour les en-têtes de cette ressource avec de "
"nouvelles."

msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled the "
"request and desires that the client resets the \"document view\" that caused "
"the request to be sent to its original state as received from the origin "
"server."
msgstr ""
"Le code d'état HTTP [code]205 Reset Content[/code]. Le serveur a rempli la "
"requête et souhaite que le client réinitialise son « vue de document » qui a "
"envoyé la requête à son état original tel qu'il a été reçu du serveur "
"d'origine."

msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is used "
"because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
"Le code d'état HTTP [code]206 Partial Content[/code]. Ce code de réponse est "
"utilisé suivant l'intervalle spécifié dans l'en-tête envoyé par le client "
"pour que le téléchargement soit disponible dans plusieurs flux."

msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
"Le code d'état HTTP [code]207 Multi-Status[/code] (WebDAV). Une réponse multi-"
"états qui transmet des informations sur plusieurs ressources dans des "
"situations où plusieurs codes de statut seraient appropriés."

msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
"Le code d'état HTTP [code]208 Already Reported[/code] (WebDAV). Utilisé à "
"l'intérieur d'un DAV : l'élément de réponse \"propstat\" pour éviter "
"d'énumérer plusieurs fois les membres internes de liaisons d'une même "
"collection."

msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
"Le code d'état HTTP [code]226 IM Used[/code] (WebDAV). Le serveur a traité "
"une requête GET pour cette ressource, et la réponse est une représentation du "
"résultat d'une ou plusieurs manipulations d'instance appliquées à l'instance "
"actuelle."

msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
"Le code d'état HTTP [code]300 Multiple Choice[/code]. La requête a plusieurs "
"réponses possibles et il n'y a pas de moyen spécifique de choisir la bonne "
"réponse. C'est alors le user-agent ou l'utilisateur qui devrait la choisir "
"parmi celle retournées."

msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
"Le code d'état HTTP [code]301 Moved Permanently[/code]. Redirection. Ce code "
"de réponse signifie que l'URI des ressources demandées a été modifiée. La "
"nouvelle URI est généralement retournée dans cette réponse."

msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This response "
"code means the URI of requested resource has been changed temporarily. New "
"changes in the URI might be made in the future. Therefore, this same URI "
"should be used by the client in future requests."
msgstr ""
"Code de statut HTTP [code]302 Found[/code]. Redirection temporaire. Ce code "
"de réponse signifie que l'URI de la ressource demandée a été changée "
"temporairement. De nouveaux changements dans l'URI pourraient être faits à "
"l'avenir. Par conséquent, ce même URI devrait être utilisé par le client dans "
"les demandes futures."

msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
"header field, which is intended to provide an indirect response to the "
"original request."
msgstr ""
"Code de statut HTTP [code]303 See Other[/code]. Le serveur redirige l'agent "
"utilisateur vers une ressource différente, comme l'indique un URI dans le "
"champ d'en-tête \"Location\", qui est destiné à fournir une réponse indirecte "
"à la demande initiale."

msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
"Code de statut HTTP [code]304 Not Modified[/code]. Une demande conditionnelle "
"de GET ou de HEAD a été reçue et aurait abouti à une réponse de 200 OK si la "
"condition n'aurait pas été évaluée à [code]false[/code]."

msgid ""
"Many clients ignore this response code for security reasons. It is also "
"deprecated by the HTTP standard."
msgstr ""
"De nombreux clients ignorent ce code de réponse pour des raisons de sécurité. "
"Il est également obsolète par la norme HTTP."

msgid "HTTP status code [code]305 Use Proxy[/code]."
msgstr "Code de status HTTP [code]305 Use Proxy[/code]."

msgid "HTTP status code [code]306 Switch Proxy[/code]."
msgstr "Code de status HTTP [code]306 Switch Proxy[/code]."

msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
"Code de statut HTTP [code]307 Temporary Redirect[/code]. La ressource cible "
"réside temporairement sous un URI différent et l'agent utilisateur NE DOIT "
"PAS changer la méthode de demande si elle effectue une redirection "
"automatique vers cet URI."

msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource has "
"been assigned a new permanent URI and any future references to this resource "
"ought to use one of the enclosed URIs."
msgstr ""
"Code de statut HTTP [code]308 Permanent Redirect[/code]. La ressource cible a "
"été affectée à un nouvel URI permanent et toute référence future à cette "
"ressource devrait utiliser l'un des URIs joints."

msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
"Code de statut HTTP [code]401 Unauthorized[/code]. Identifiants requis. La "
"requête n'a pas été appliquée parce qu'elle ne dispose pas d'identifiants "
"d'authentification valables pour la ressource cible."

msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
"Code de statut HTTP [code]402 Payment Required[/code]. Ce code de réponse est "
"réservé à une utilisation future. L'objectif initial de création de ce code "
"était de l'utiliser pour les systèmes de paiement numérique, mais il n'est "
"actuellement pas utilisé."

msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
"give proper response. Unlike [code]401[/code], the client's identity is known "
"to the server."
msgstr ""
"Code de statut HTTP [code]403 Forbidden[/code]. Le client n'a pas de droits "
"d'accès au contenu, c'est-à-dire qu'ils sont non autorisés, donc le serveur "
"refuse de donner une réponse appropriée. Contrairement à [code]401[/code], "
"l'identité du client est connue du serveur."

msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is valid "
"but the resource itself does not exist. May also be sent instead of 403 to "
"hide existence of a resource if the client is not authorized."
msgstr ""
"Code de statut HTTP [code]404 Not Found[/code]. Le serveur ne peut pas "
"trouver de ressources demandées. Soit l'URL n'est pas reconnue ou le endpoint "
"(\"point de terminaison\") est valide mais la ressource elle-même n'existe "
"pas. Peut également être envoyé au lieu de 403 pour cacher l'existence d'une "
"ressource si le client n'est pas autorisé."

msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
"example, an API may forbid DELETE-ing a resource. The two mandatory methods, "
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
"Code de statut HTTP [code]405 Method Not Allowed[/code]. La méthode HTTP de "
"la requête est connue par le serveur mais a été désactivée et ne peut pas "
"être utilisée. Par exemple, une API peut interdire de DELETE (supprimer) une "
"ressource. Les deux méthodes obligatoires, GET et HEAD, ne doivent jamais "
"être désactivées et ne doivent pas renvoyer ce code d'erreur."

msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user agent, "
"according to the proactive negotiation header fields received in the request. "
"Used when negotiation content."
msgstr ""
"Code de statut HTTP [code]406 Not Acceptable[/code]. La ressource cible n'a "
"pas de représentation actuelle qui serait acceptable pour l'agent "
"utilisateur, selon les champs d'en-tête de négociation proactives reçus dans "
"la requête. Utilisé lors de la négociation du contenu."

msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
"Code de statut HTTP [code]407 Proxy Authentication Required[/code]. Semblable "
"à 401 Unauthorized, mais il indique que le client doit s'authentifier pour "
"utiliser un proxy."

msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not receive "
"a complete request message within the time that it was prepared to wait."
msgstr ""
"Code de statut HTTP [code]408 Request Timeout[/code]. Le serveur n'a pas reçu "
"un message de requête complet durant le temps qu'il était prêt à attendre."

msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
"This code is used in situations where the user might be able to resolve the "
"conflict and resubmit the request."
msgstr ""
"Le code de status HTTP [code]409 Conflict[/code]. La requête n'a pu être "
"complétée à cause d'un conflit avec l'état actuel de la ressource cible. Ce "
"code est utilisé dans les situations où l'utilisateur peut être capable de "
"résoudre le conflit et de soumettre à nouveau la requête."

msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
"Code de statut HTTP [code]410 Gone[/code]. La ressource cible n'est plus "
"disponible sur le serveur d'origine et cette condition est probablement "
"permanente."

msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
"Code de statut HTTP [code]411 Length Required[/code]. Le serveur refuse "
"d'accepter la requête sans une en-tête Content-Length définie."

msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more conditions "
"given in the request header fields evaluated to [code]false[/code] when "
"tested on the server."
msgstr ""
"Code de statut HTTP [code]412 Precondition Failed[/code]. Une ou plusieurs "
"conditions dans les champs d'en-tête de la requête sont évaluées à "
"[code]false[/code] lors de l'essai sur le serveur."

msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing to "
"process a request because the request payload is larger than the server is "
"willing or able to process."
msgstr ""
"Code de statut HTTP [code]413 Entity Too Large[/code]. Le serveur refuse de "
"traiter une requête parce que le payload (\"charge utile\") demandée est plus "
"grande que ce que le serveur est prêt ou capable de traiter."

msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than the "
"server is willing to interpret."
msgstr ""
"Code de statut HTTP [code]414 Request-URI Too Long[/code]. Le serveur refuse "
"de servir la requête parce que l'entête \"request-target\" est plus longue "
"que ce que le serveur est prêt à interpréter."

msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
"Code de statut HTTP [code]415 Unsupported Media Type[/code]. Le serveur "
"d'origine refuse de servir la requête parce que le payload (\"charge utile\") "
"est dans un format non supporté par cette méthode sur la ressource cible."

msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
"the selected resource or the set of ranges requested has been rejected due to "
"invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
"Code de statut HTTP [code]416 Requested Range Not Satisfiable[/code]. Aucune "
"des plages du champ d'en-tête \"Range\" de la requête ne recouvre l'étendue "
"actuelle de la ressource sélectionnée ou l'ensemble des plages demandées a "
"été rejeté en raison de plages invalides ou d'une demande excessive de "
"petites plages ou de plages chevauchantes."

msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
"Code de statut HTTP [code]417 Expectation Failed[/code]. L'expectation donnée "
"dans le champ d'en-tête \"Expect\" de la requête ne pouvait pas être "
"satisfaite par au moins un des serveurs de réception."

msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
"Code de statut HTTP [code]418 I'm A Teapot[/code]. Toute tentative de "
"préparer du café avec une théière devrait entraîner le code d'erreur \"418 "
"I'm a teapot\". L'entité résultante PEUT être courte et forte."

msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be sent "
"by a server that is not configured to produce responses for the combination "
"of scheme and authority that are included in the request URI."
msgstr ""
"Code de statut HTTP [code]421 Misdirected Request[/code]. La demande a été "
"dirigée vers un serveur qui n'est pas en mesure de produire une réponse. Ceci "
"peut être envoyé par un serveur qui n'est pas configuré pour produire des "
"réponses pour la combinaison de schéma et d'autorité qui sont inclus dans la "
"requête URI."

msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
"Media Type status code is inappropriate), and the syntax of the request "
"entity is correct (thus a 400 Bad Request status code is inappropriate) but "
"was unable to process the contained instructions."
msgstr ""
"Code de statut HTTP [code]422 Unprocessable Entity[/code] (WebDAV). Le "
"serveur comprend le type de contenu de l'entité de requête (ainsi, un code de "
"statut 415 Unsupported Media Type n'est pas approprié) et la syntaxe de "
"l'entité de requête est correcte (c'est pourquoi un code de statut 400 Bad "
"Request est inapproprié) mais n'a pas été en mesure de traiter les "
"instructions contenues."

msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
"Code de statut HTTP [code]423 Locked[/code] (WebDAV). La source ou la "
"destination de ressource d'une méthode est verrouillée."

msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
"Code de statut HTTP [code]424 Failed Dependency[/code] (WebDAV). La méthode "
"ne pouvait être exécutée sur la ressource parce que l'action demandée "
"dépendait d'une autre action et que cette dernière a échoué."

msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
"Code de statut HTTP [code]426 Upgrade Required[/code]. Le serveur refuse "
"d'exécuter la requête en utilisant le protocole actuel, mais pourrait être "
"prêt à le faire après que le client se soit mis à jour vers un protocole "
"différent."

msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
"Code de statut HTTP [code]428 Precondition Required[/code]. Le serveur "
"d'origine exige que la requête soit conditionnelle."

msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off and "
"increase time between requests or try again later."
msgstr ""
"Code de statut HTTP [code]429 Too Many Requests[/code]. L'utilisateur a "
"envoyé trop de demandes dans un certain temps (voir le \"rate limiting\"). "
"Freinez un peu et augmentez le temps entre les requêtes ou essayez à nouveau "
"plus tard."

msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The server "
"is unwilling to process the request because its header fields are too large. "
"The request MAY be resubmitted after reducing the size of the request header "
"fields."
msgstr ""
"Code de statut HTTP [code]431 Request Header Fields Too Large[/code]. Le "
"serveur ne veut pas traiter la requête parce que ses champs d'en-tête sont "
"trop grands. La requête PEUT être soumise à nouveau après avoir réduit la "
"taille des champs d'en-tête de la requête."

msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. The "
"server is denying access to the resource as a consequence of a legal demand."
msgstr ""
"Code de statut HTTP [code]451 Response Unavailable For Legal Reasons[/code]. "
"Le serveur refuse l'accès à la ressource en raison d'une demande légale."

msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
"Code de statut HTTP [code]500 Internal Server Error[/code]. Le serveur a "
"rencontré une condition inattendue qui l'empêchait de répondre à la requête."

msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
"Code de statut HTTP [code]501 Not Implemented[/code]. Le serveur ne supporte "
"pas la fonctionnalité requise pour répondre à la requête."

msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
"accessed while attempting to fulfill the request. Usually returned by load "
"balancers or proxies."
msgstr ""
"Code de statut HTTP [code]502 Bad Gateway[/code]. Le serveur, en agissant "
"comme passerelle ou proxy, a reçu une réponse invalide d'un serveur entrant "
"auquel il a accédé en essayant de répondre à la requête. Habituellement "
"renvoyé par les répartiteurs de charge ou les proxies."

msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
"scheduled maintenance, which will likely be alleviated after some delay. Try "
"again later."
msgstr ""
"Code de statut HTTP [code]503 Service Unavailable[/code]. Le serveur n'est "
"actuellement pas en mesure de traiter la requête en raison d'une surcharge "
"temporaire ou d'une maintenance planifiée, ce qui sera probablement atténué "
"après un certain temps. Essayez encore plus tard."

msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
"server it needed to access in order to complete the request. Usually returned "
"by load balancers or proxies."
msgstr ""
"Code de statut HTTP [code]504 Gateway Timeout[/code]. Le serveur, en agissant "
"comme passerelle ou proxy, n'a pas reçu une réponse à temps d'un serveur en "
"amont dont il avait besoin d'accéder afin de compléter la requête. "
"Habituellement renvoyé par les répartiteurs de charge ou les proxies."

msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server does "
"not support, or refuses to support, the major version of HTTP that was used "
"in the request message."
msgstr ""
"Code de statut HTTP [code]505 HTTP Version Not Supported[/code]. Le serveur "
"ne supporte pas, ou refuse de supporter, la version majeure de HTTP utilisée "
"dans le message de requête."

msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
"engage in transparent content negotiation itself, and is therefore not a "
"proper end point in the negotiation process."
msgstr ""
"Code de statut HTTP [code]506 Variant Also Negotiates[/code]. Le serveur a "
"une erreur de configuration interne : la ressource variante choisie est "
"configurée pour s'engager dans la négociation de contenu transparent elle-"
"même, et n'est donc pas un endpoint (\"point de terminaison\") dans le "
"processus de négociation."

msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
"Code de statut HTTP [code]507 Insufficient Storage[/code]. La méthode n'a pas "
"pu être exécutée sur la ressource parce que le serveur n'est pas en mesure de "
"stocker la représentation nécessaire pour remplir avec succès la requête."

msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
"with \"Depth: infinity\". This status indicates that the entire operation "
"failed."
msgstr ""
"Code de statut HTTP [code]508 Loop Detected[/code]. Le serveur a mis fin à "
"une opération parce qu'il a rencontré une boucle infinie tout en traitant une "
"requête avec \"Depth: infinity\". Cette situation indique que toute "
"l'opération a échoué."

msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all the "
"information necessary for the client to issue an extended request."
msgstr ""
"Code de statut HTTP [code]510 Not Extended[/code]. La politique d'accès à la "
"ressource n'a pas été respectée dans la demande. Le serveur devrait renvoyer "
"toutes les informations nécessaires pour que le client émette une requête "
"étendue."

msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The client "
"needs to authenticate to gain network access."
msgstr ""
"Code de statut HTTP [code]511 Network Authentication Required[/code]. Le "
"client doit s'authentifier pour accéder au réseau."

msgid "A node with the ability to send HTTP(S) requests."
msgstr "Un nœud qui permet d'envoyer des requêtes HTTP(S)."

msgid ""
"A node with the ability to send HTTP requests. Uses [HTTPClient] internally.\n"
"Can be used to make HTTP requests, i.e. download or upload files or web "
"content via HTTP.\n"
"[b]Warning:[/b] See the notes and warnings on [HTTPClient] for limitations, "
"especially regarding TLS security.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android.\n"
"[b]Example:[/b] Contact a REST API and print one of its returned fields:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Create an HTTP request node and connect its completion signal.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Perform a GET request. The URL below returns JSON as of writing.\n"
"\tvar error = http_request.request(\"https://httpbin.org/get\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"\t# Perform a POST request. The URL below returns JSON as of writing.\n"
"\t# Note: Don't make simultaneous requests using a single HTTPRequest node.\n"
"\t# The snippet below is provided for reference only.\n"
"\tvar body = JSON.new().stringify({\"name\": \"Godette\"})\n"
"\terror = http_request.request(\"https://httpbin.org/post\", [], "
"HTTPClient.METHOD_POST, body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tvar json = JSON.new()\n"
"\tjson.parse(body.get_string_from_utf8())\n"
"\tvar response = json.get_data()\n"
"\n"
"\t# Will print the user agent string used by the HTTPRequest node (as "
"recognized by httpbin.org).\n"
"\tprint(response.headers[\"User-Agent\"])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Create an HTTP request node and connect its completion signal.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Perform a GET request. The URL below returns JSON as of writing.\n"
"\tError error = httpRequest.Request(\"https://httpbin.org/get\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"\n"
"\t// Perform a POST request. The URL below returns JSON as of writing.\n"
"\t// Note: Don't make simultaneous requests using a single HTTPRequest node.\n"
"\t// The snippet below is provided for reference only.\n"
"\tstring body = new Json().Stringify(new Godot.Collections.Dictionary\n"
"\t{\n"
"\t\t{ \"name\", \"Godette\" }\n"
"\t});\n"
"\terror = httpRequest.Request(\"https://httpbin.org/post\", null, "
"HttpClient.Method.Post, body);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"}\n"
"\n"
"// Called when the HTTP request is completed.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tvar json = new Json();\n"
"\tjson.Parse(body.GetStringFromUtf8());\n"
"\tvar response = json.GetData().AsGodotDictionary();\n"
"\n"
"\t// Will print the user agent string used by the HTTPRequest node (as "
"recognized by httpbin.org).\n"
"\tGD.Print((response[\"headers\"].AsGodotDictionary())[\"User-Agent\"]);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Load an image using [HTTPRequest] and display it:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Create an HTTP request node and connect its completion signal.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Perform the HTTP request. The URL below returns a PNG image as of "
"writing.\n"
"\tvar error = http_request.request(\"https://placehold.co/512.png\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tif result != HTTPRequest.RESULT_SUCCESS:\n"
"\t\tpush_error(\"Image couldn't be downloaded. Try a different image.\")\n"
"\n"
"\tvar image = Image.new()\n"
"\tvar error = image.load_png_from_buffer(body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Couldn't load the image.\")\n"
"\n"
"\tvar texture = ImageTexture.create_from_image(image)\n"
"\n"
"\t# Display the image in a TextureRect node.\n"
"\tvar texture_rect = TextureRect.new()\n"
"\tadd_child(texture_rect)\n"
"\ttexture_rect.texture = texture\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Create an HTTP request node and connect its completion signal.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Perform the HTTP request. The URL below returns a PNG image as of "
"writing.\n"
"\tError error = httpRequest.Request(\"https://placehold.co/512.png\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"}\n"
"\n"
"// Called when the HTTP request is completed.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tif (result != (long)HttpRequest.Result.Success)\n"
"\t{\n"
"\t\tGD.PushError(\"Image couldn't be downloaded. Try a different image.\");\n"
"\t}\n"
"\tvar image = new Image();\n"
"\tError error = image.LoadPngFromBuffer(body);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Couldn't load the image.\");\n"
"\t}\n"
"\n"
"\tvar texture = ImageTexture.CreateFromImage(image);\n"
"\n"
"\t// Display the image in a TextureRect node.\n"
"\tvar textureRect = new TextureRect();\n"
"\tAddChild(textureRect);\n"
"\ttextureRect.Texture = texture;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] [HTTPRequest] nodes will automatically handle decompression of "
"response bodies. An [code]Accept-Encoding[/code] header will be automatically "
"added to each of your requests, unless one is already specified. Any response "
"with a [code]Content-Encoding: gzip[/code] header will automatically be "
"decompressed and delivered to you as uncompressed bytes."
msgstr ""
"Un nœud avec la possibilité d'envoyer des requêtes HTTP. Utilise [HTTPClient] "
"en interne.\n"
"Peut être utilisé pour faire des requêtes HTTP, c'est-à-dire télécharger ou "
"téléverser des fichiers ou du contenu web via HTTP.\n"
"[b] Avertissement :[/b] Voir les notes et les avertissements sur [HTTPClient] "
"pour les limitations, en particulier en ce qui concerne la sécurité TLS.\n"
"[b]Note :[/b] Lors de l'export vers Android, assurez-vous d'activer la "
"permission [code]INTERNET[/code] dans le pré-réglage d'export Android avant "
"d'exporter le projet ou d'utiliser le déploiement en un clic. Sinon, les "
"communications réseau de toutes sortes seront bloquées par Android.\n"
"[b]Exemple :[/b] Contacter une API REST et afficher l'un des champs "
"renvoyés :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Create an HTTP request node and connect its completion signal.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Effectuer une requête GET. L'URL ci-dessous renvoyait un JSON au moment "
"où nous avons écrit ce code.\n"
"\tvar error = http_request.request(\"https://httpbin.org/get\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Une erreur est survenue dans la requête HTTP.\")\n"
"\n"
"\t# Effectuer une requête POST. L'URL ci-dessous renvoyait un JSON au moment "
"où nous avons écrit ce code.\n"
"\t# Note : Ne faites pas de requêtes simultanées avec un unique nœud "
"HTTPRequest\n"
"\t# Le bout de code ci-dessous est fourni seulement comme référence.\n"
"\tvar body = JSON.new().stringify({\"name\": \"Godette\"})\n"
"\terror = http_request.request(\"https://httpbin.org/post\", [], "
"HTTPClient.METHOD_POST, body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Une erreur est survenue dans la requête HTTP.\")\n"
"\n"
"# Appelée quand la requête HTTP est complétée.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tvar json = JSON.new()\n"
"\tjson.parse(body.get_string_from_utf8())\n"
"\tvar response = json.get_data()\n"
"\n"
"\t# Will print the user agent string used by the HTTPRequest node (as "
"recognized by httpbin.org).\n"
"\tprint(response.headers[\"User-Agent\"])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Créer un nœud de requête HTTP et se connecter à son signal de "
"complétion.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Effectuer une requête GET. L'URL ci-dessous renvoyait un JSON au moment "
"où nous avons écrit ce code.\n"
"\tError error = httpRequest.Request(\"https://httpbin.org/get\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Une erreur est survenue dans la requête HTTP.\");\n"
"\t}\n"
"\n"
"\t// Effectuer une requête POST. L'URL ci-dessous renvoyait un JSON au moment "
"où nous avons écrit ce code.\n"
"\t// Note : Ne faites pas de requêtes simultanées avec un unique nœud "
"HTTPRequest\n"
"\t// Le bout de code ci-dessous est fourni seulement comme référence.\n"
"\tstring body = new Json().Stringify(new Godot.Collections.Dictionary\n"
"\t{\n"
"\t\t{ \"name\", \"Godette\" }\n"
"\t});\n"
"\terror = httpRequest.Request(\"https://httpbin.org/post\", null, "
"HttpClient.Method.Post, body);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Une erreur est survenue dans la requête HTTP.\");\n"
"\t}\n"
"}\n"
"\n"
"// Appelée quand la requête HTTP est complétée.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tvar json = new Json();\n"
"\tjson.Parse(body.GetStringFromUtf8());\n"
"\tvar response = json.GetData().AsGodotDictionary();\n"
"\n"
"\t// Will print the user agent string used by the HTTPRequest node (as "
"recognized by httpbin.org).\n"
"\tGD.Print((response[\"headers\"].AsGodotDictionary())[\"User-Agent\"]);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Exemple :[/b] Charger une image en utilisant [HTTPRequest] et "
"l'afficher :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Créer un nœud de requête HTTP et se connecter à son signal de "
"complétion.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Effectuer la requête HTTP. L'URL ci-dessous renvoyait un PNG au moment où "
"nous avons écrit ce code.\n"
"\tvar error = http_request.request(\"https://placehold.co/512.png\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Une erreur est survenue dans la requête HTTP.\")\n"
"\n"
"# Appelée quand la requête HTTP est complétée.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tif result != HTTPRequest.RESULT_SUCCESS:\n"
"\t\tpush_error(\"L'image n'a pu être téléchargée. Essayez avec une image "
"différente.\")\n"
"\n"
"\tvar image = Image.new()\n"
"\tvar error = image.load_png_from_buffer(body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Impossible de charger l'image.\")\n"
"\n"
"\tvar texture = ImageTexture.create_from_image(image)\n"
"\n"
"\t# Afficher l'image dans un nœud TextureRect\n"
"\tvar texture_rect = TextureRect.new()\n"
"\tadd_child(texture_rect)\n"
"\ttexture_rect.texture = texture\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Créer un nœud de requête HTTP et se connecter à son signal de "
"complétion.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Effectuer la requête HTTP. L'URL ci-dessous renvoyait un PNG au moment "
"où nous avons écrit ce code.\n"
"\tError error = httpRequest.Request(\"https://placehold.co/512.png\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Une erreur est survenue dans la requête HTTP.\");\n"
"\t}\n"
"}\n"
"\n"
"// Appelée quand la requête HTTP est complétée.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tif (resultat != (long)HttpRequest.Result.Success)\n"
"\t{\n"
"\t\tGD.PushError(\"L'image n'a pu être téléchargée. Essayez avec une image "
"différente.\");\n"
"\t}\n"
"\tvar image = new Image();\n"
"\tError error = image.LoadPngFromBuffer(body);\n"
"\tif (erreur != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Impossible de charger l'image.\");\n"
"\t}\n"
"\n"
"\tvar texture = ImageTexture.CreateFromImage(image);\n"
"\n"
"\t// Afficher l'image dans un nœud TextureRect\n"
"\tvar textureRect = new TextureRect();\n"
"\tAddChild(textureRect);\n"
"\ttextureRect.Texture = texture;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Les nœuds [HTTPRequest] géreront automatiquement la "
"décompression des corps de réponse. Un en-tête [code]Accept-Encoding[/code] "
"sera automatiquement ajouté à chacune de vos requêtes, sauf si un est déjà "
"spécifié. Toute réponse avec un en-tête [code]Content-Encoding: gzip[/code] "
"sera automatiquement décompressée et livrée à vous en tant qu'octets non "
"compressés."

msgid "Making HTTP requests"
msgstr "Faire des requêtes HTTP"

msgid "Cancels the current request."
msgstr "Annule la requête en cours."

msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
"the body length will also be [code]-1[/code]."
msgstr ""
"Renvoie la longueur du corps de réponse.\n"
"[b]Note :[/b] Quelques serveurs Web peuvent ne pas envoyer de longueur de "
"corps. Dans ce cas, la valeur renvoyée sera [code]-1[/code]. Si vous utilisez "
"l'encodage de transfert en bloc (Chunked transfer encoding), la longueur du "
"corps sera également de [code]-1[/code]."

msgid "Returns the number of bytes this HTTPRequest downloaded."
msgstr "Renvoie le nombre d'octets téléchargés par cette HTTPRequest."

msgid "Returns the current status of the underlying [HTTPClient]."
msgstr "Renvoie le statut actuel du [HTTPClient] sous-jacent."

msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
"passes parameters onto [method HTTPClient.request].\n"
"Returns [constant OK] if request is successfully created. (Does not imply "
"that the server has responded), [constant ERR_UNCONFIGURED] if not in the "
"tree, [constant ERR_BUSY] if still processing previous request, [constant "
"ERR_INVALID_PARAMETER] if given string is not a valid URL format, or "
"[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot "
"connect to host.\n"
"[b]Note:[/b] When [param method] is [constant HTTPClient.METHOD_GET], the "
"payload sent via [param request_data] might be ignored by the server or even "
"cause the server to reject the request (check [url=https://"
"datatracker.ietf.org/doc/html/rfc7231#section-4.3.1]RFC 7231 section 4.3.1[/"
"url] for more details). As a workaround, you can send data as a query string "
"in the URL (see [method String.uri_encode] for an example).\n"
"[b]Note:[/b] It's recommended to use transport encryption (TLS) and to avoid "
"sending sensitive information (such as login credentials) in HTTP GET URL "
"parameters. Consider using HTTP POST requests or HTTP headers for such "
"information instead."
msgstr ""
"Crée une requête sur le [HTTPClient] sous-jacent. S'il n'y a pas d'erreur de "
"configuration, il essaie de se connecter en utilisant [method "
"HTTPClient.connect_to_host] et passe les paramètres à [method "
"HTTPClient.request].\n"
"Renvoie [constant OK] si la requête est créée avec succès. (Ne signifie pas "
"que le serveur a répondu), [constant ERR_UNCONFIGURED] si il n'est pas dans "
"l'arbre, [constant ERR_BUSY] si il traite encore la requête précédente, "
"[constant ERR_INVALID_PARAMETER] si la chaîne donnée n'est pas un format "
"d'URL valide, ou [constant ERR_CANT_CONNECT] si il n'utilise pas de thread et "
"[HTTPClient] ne peut se connecter à l'hôte..\n"
"[b]Note :[/b] Quand [param method] est [constant HTTPClient.METHOD_GET], la "
"charge utile envoyée via [param request_data] peut être ignorée par le "
"serveur ou même faire que le serveur rejette la requête (regardez "
"[url=https://datatracker.ietf.org/doc/html/rfc7231#section-4.3.1]RFC 7231 "
"section 4.3.1[/url] pour plus de détails). En guise de contournement, vous "
"pouvez envoyer les données comme une chaîne de requête dans l'URL (voir "
"[method String.uri_encode] pour un exemple).\n"
"[b]Note :[/b] Il est recommandé d'utiliser le chiffrement de transport (TLS) "
"et d'éviter d'envoyer des informations sensibles (comme des identifiants de "
"connexion) dans les paramètres d'URL GET HTTP. Envisagez d'utiliser des "
"requêtes HTTP POST ou des en-têtes HTTP pour ces informations à la place."

msgid ""
"Creates request on the underlying [HTTPClient] using a raw array of bytes for "
"the request body. If there is no configuration errors, it tries to connect "
"using [method HTTPClient.connect_to_host] and passes parameters onto [method "
"HTTPClient.request].\n"
"Returns [constant OK] if request is successfully created. (Does not imply "
"that the server has responded), [constant ERR_UNCONFIGURED] if not in the "
"tree, [constant ERR_BUSY] if still processing previous request, [constant "
"ERR_INVALID_PARAMETER] if given string is not a valid URL format, or "
"[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot "
"connect to host."
msgstr ""
"Crée une requête sur le [HTTPClient] sous-jacent en utilisant un tableau brut "
"d'octets pour le corps de requête. S'il n'y a pas d'erreur de configuration, "
"il essaie de se connecter en utilisant [method HTTPClient.connect_to_host] et "
"passe les paramètres à [method HTTPClient.request].\n"
"Renvoie [constant OK] si la requête est créée avec succès. (Ne signifie pas "
"que le serveur a répondu), [constant ERR_UNCONFIGURED] si il n'est pas dans "
"l'arbre, [constant ERR_BUSY] si il traite encore la requête précédente, "
"[constant ERR_INVALID_PARAMETER] si la chaîne donnée n'est pas un format "
"d'URL valide, ou [constant ERR_CANT_CONNECT] si il n'utilise pas le thread et "
"[HTTPClient] ne peut se connecter à l'hôte."

msgid ""
"Sets the [TLSOptions] to be used when connecting to an HTTPS server. See "
"[method TLSOptions.client]."
msgstr ""
"Définit les [TLSOptions] à utiliser lors de la connexion à un serveur HTTPS. "
"Voir [method TLSOptions.client]."

msgid ""
"If [code]true[/code], this header will be added to each request: [code]Accept-"
"Encoding: gzip, deflate[/code] telling servers that it's okay to compress "
"response bodies.\n"
"Any Response body declaring a [code]Content-Encoding[/code] of either "
"[code]gzip[/code] or [code]deflate[/code] will then be automatically "
"decompressed, and the uncompressed bytes will be delivered via [signal "
"request_completed].\n"
"If the user has specified their own [code]Accept-Encoding[/code] header, then "
"no header will be added regardless of [member accept_gzip].\n"
"If [code]false[/code] no header will be added, and no decompression will be "
"performed on response bodies. The raw bytes of the response body will be "
"returned via [signal request_completed]."
msgstr ""
"Si [code]true[/code], cet en-tête sera ajouté à chaque requête : [code]Accept-"
"Encoding: gzip, deflate[/code] indiquant aux serveurs qu'il est acceptable de "
"compresser les corps de réponse.\n"
"Tout corps de réponse déclarant un [code]Content-Encoding[/code] de "
"[code]gzip[/code] ou [code]deflate[/code] sera automatiquement décompressé, "
"et les octets non compressés seront livrés via [signal request_completed].\n"
"Si l'utilisateur a spécifié son propre en-tête [code]Accept-Encoding[/code], "
"aucun en-tête ne sera ajouté indépendamment de [member accept_gzip].\n"
"Si [code]false[/code], aucun en-tête ne sera ajouté, et aucune décompression "
"ne sera effectuée sur les corps de réponse. Les octets bruts du corps de "
"réponse seront renvoyés par [signal request_completed]."

msgid ""
"Maximum allowed size for response bodies. If the response body is compressed, "
"this will be used as the maximum allowed size for the decompressed body."
msgstr ""
"Taille maximale autorisée pour les corps de réponse. Si le corps de réponse "
"est compressé, cela sera utilisé comme la taille maximale autorisée pour le "
"corps décompressé."

msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
"Set this to a lower value (e.g. 4096 for 4 KiB) when downloading small files "
"to decrease memory usage at the cost of download speeds."
msgstr ""
"La taille du buffer utilisé et les octets maximaux à lire par itération. Voir "
"[member HTTPClient.read_chunk_size].\n"
"Définissez ceci à une valeur inférieure (par exemple 4096 pour 4 KiB) lors du "
"téléchargement de petits fichiers pour diminuer l'utilisation de la mémoire "
"au coût des vitesses de téléchargement."

msgid "The file to download into. Will output any received file into it."
msgstr ""
"Le fichier dans lequel enregistrer le téléchargement. Enverra tout fichier "
"reçu dedans."

msgid "Maximum number of allowed redirects."
msgstr "Nombre maximal de redirections autorisées."

msgid ""
"The duration to wait in seconds before a request times out. If [member "
"timeout] is set to [code]0.0[/code] then the request will never time out. For "
"simple requests, such as communication with a REST API, it is recommended "
"that [member timeout] is set to a value suitable for the server response time "
"(e.g. between [code]1.0[/code] and [code]10.0[/code]). This will help prevent "
"unwanted timeouts caused by variation in server response times while still "
"allowing the application to detect when a request has timed out. For larger "
"requests such as file downloads it is suggested the [member timeout] be set "
"to [code]0.0[/code], disabling the timeout functionality. This will help to "
"prevent large transfers from failing due to exceeding the timeout value."
msgstr ""
"La durée d'attente en secondes avant un timeout. Si [member timeout] est "
"défini à [code]0.0[/code], la requête ne fera jamais de timeout. Pour des "
"requêtes simples, comme la communication avec une API REST, il est recommandé "
"que [member timeout] soit défini à une valeur adaptée au temps de réponse du "
"serveur (par exemple entre [code]1.0[/code] et [code]10.0[/code]). Cela "
"permettra d'éviter les timeouts indésirables causés par des variations dans "
"les temps de réponse du serveur tout en permettant à l'application de "
"détecter quand une requête a timeout. Pour les requêtes plus grandes telles "
"que les téléchargements de fichiers, il est suggéré que [member timeout] soit "
"défini à [code]0.0[/code], désactivant la fonctionnalité de timeout. Cela "
"contribuera à empêcher les grands transferts d'échouer à cause du dépassement "
"de la valeur de timeout."

msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
"Si [code]true[/code], le multithreading est utilisé pour améliorer les "
"performances."

msgid "Emitted when a request is completed."
msgstr "Émis lorsqu'une requête est complétée."

msgid "Request successful."
msgstr "Requête réussie."

msgid ""
"Request failed due to a mismatch between the expected and actual chunked body "
"size during transfer. Possible causes include network errors, server "
"misconfiguration, or issues with chunked encoding."
msgstr ""
"Requête échouée en raison d'une erreur entre la taille de corps en bloc "
"attendue et réelle au cours du transfert. Les causes possibles incluent les "
"erreurs réseau, la mauvaise configuration du serveur ou les problèmes avec "
"l'encodage en blocs."

msgid "Request failed while connecting."
msgstr "La requête a échoué lors de la connexion."

msgid "Request failed while resolving."
msgstr "La requête a échoué lors de la résolution."

msgid "Request failed due to connection (read/write) error."
msgstr ""
"La requête a échoué en raison d'une erreur de connexion (lecture / écriture)."

msgid "Request failed on TLS handshake."
msgstr "La requête a échoué lors de la poignée de main TLS.."

msgid "Request does not have a response (yet)."
msgstr "La requête n'a pas (encore) de réponse."

msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr "La requête a dépassé la taille maximale, voir [member body_size_limit]."

msgid ""
"Request failed due to an error while decompressing the response body. "
"Possible causes include unsupported or incorrect compression format, "
"corrupted data, or incomplete transfer."
msgstr ""
"La requête a échoué en raison d'une erreur lors de la décompression du corps "
"de réponse. Les causes possibles incluent un format de compression non "
"supporté ou incorrect, des données corrompues ou un transfert incomplet."

msgid "Request failed (currently unused)."
msgstr "Échec de la requête (actuellement inutilisé)."

msgid "HTTPRequest couldn't open the download file."
msgstr "La HTTPRequest n'a pu ouvrir le fichier téléchargé."

msgid "HTTPRequest couldn't write to the download file."
msgstr "La HTTPRequest n'a pu écrire dans un fichier de téléchargement."

msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
"La requête a atteint le nombre de redirections autorisée, voir [member "
"max_redirects]."

msgid ""
"Request failed due to a timeout. If you expect requests to take a long time, "
"try increasing the value of [member timeout] or setting it to [code]0.0[/"
"code] to remove the timeout completely."
msgstr ""
"La requête a échoué en raison d'un timeout. Si vous vous attendez à ce que "
"les requêtes prennent du temps, essayez d'augmenter la valeur de [member "
"timeout] ou de le définir à [code]0.0[/code] pour supprimer complètement le "
"timeout."

msgid "Image datatype."
msgstr "Type de données d’image."

msgid ""
"Native image datatype. Contains image data which can be converted to an "
"[ImageTexture] and provides commonly used [i]image processing[/i] methods. "
"The maximum width and height for an [Image] are [constant MAX_WIDTH] and "
"[constant MAX_HEIGHT].\n"
"An [Image] cannot be assigned to a texture property of an object directly "
"(such as [member Sprite2D.texture]), and has to be converted manually to an "
"[ImageTexture] first.\n"
"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
"hardware limitations. Larger images may fail to import."
msgstr ""
"Type de données d'image native. Contient des données d'image qui peuvent être "
"converties en une [ImageTexture] et fournit des méthodes de [i]traitement "
"d'image[/i] couramment utilisées. La largeur et la hauteur maximales pour une "
"[Image] sont [constant MAX_WIDTH] et [constant MAX_HEIGHT].\n"
"Une [Image] ne peut être attribuée à une propriété de texture d'un objet "
"directement (comme [member Sprite2D.texture]), et doit être convertie "
"manuellement en une [ImageTexture] d'abord.\n"
"[b]Note :[/b] La taille maximale de l'image est de 16384×16384 pixels en "
"raison des limitations de matériel graphiques. Les images plus grandes "
"peuvent échouer à l'import."

msgid "Importing images"
msgstr "Importer des images"

msgid ""
"Adjusts this image's [param brightness], [param contrast], and [param "
"saturation] by the given values. Does not work if the image is compressed "
"(see [method is_compressed])."
msgstr ""
"Ajuste la luminosité [param brightness], le contraste [param contrast] et la "
"[param saturation] de l'image par les valeurs données. Ne fonctionne pas si "
"l'image est compressée (voir [method is_compressed])."

msgid ""
"Alpha-blends [param src_rect] from [param src] image to this image at "
"coordinates [param dst], clipped accordingly to both image bounds. This image "
"and [param src] image [b]must[/b] have the same format. [param src_rect] with "
"non-positive size is treated as empty."
msgstr ""
"Effectue un mélange alpha entre le rectangle [param src_rect] de l'image "
"[param src] et cette image aux coordonnées [param dst], coupé selon les deux "
"limites des images. Cette image et [param src] [b]doivent[/b] avoir le même "
"format. Un [param src_rect] avec une taille non positive est considéré comme "
"vide."

msgid ""
"Alpha-blends [param src_rect] from [param src] image to this image using "
"[param mask] image at coordinates [param dst], clipped accordingly to both "
"image bounds. Alpha channels are required for both [param src] and [param "
"mask]. [param dst] pixels and [param src] pixels will blend if the "
"corresponding mask pixel's alpha value is not 0. This image and [param src] "
"image [b]must[/b] have the same format. [param src] image and [param mask] "
"image [b]must[/b] have the same size (width and height) but they can have "
"different formats. [param src_rect] with non-positive size is treated as "
"empty."
msgstr ""
"Effectue un mélange alpha entre le rectangle [param src_rect] de l'image "
"[param src] et cette image en utilisant l'image [param mask] aux coordonnées "
"[param dst], coupé selon les deux limites des images. Les canaux alpha sont "
"requis pour [param src] et [param mask]. Les pixels de [param dst] et les "
"pixels de [param src] se mélangeront si la valeur alpha du masque "
"correspondant n'est pas 0. Cette image et [param src] [b]doivent[/b] avoir le "
"même format. L'image [param src] et l'image [param mask] [b]doivent[/b] "
"doivent avoir la même taille (largeur et hauteur) mais ils peuvent avoir des "
"formats différents. Un [param src_rect] avec une taille non positive est "
"considéré comme vide."

msgid ""
"Copies [param src_rect] from [param src] image to this image at coordinates "
"[param dst], clipped accordingly to both image bounds. This image and [param "
"src] image [b]must[/b] have the same format. [param src_rect] with non-"
"positive size is treated as empty.\n"
"[b]Note:[/b] The alpha channel data in [param src] will overwrite the "
"corresponding data in this image at the target position. To blend alpha "
"channels, use [method blend_rect] instead."
msgstr ""
"Copie le rectangle [param src_rect] de l'image [param src] vers cette image "
"aux coordonnées [param dst], coupé selon les deux limites des images. Cette "
"image et l'image [param src] [b]doivent[/b] avoir le même format. Un [param "
"src_rect] avec une taille non positive est considéré comme vide.\n"
"[b]Note :[/b] Les données du canal alpha dans [param src] écraseront les "
"données correspondantes dans cette image à la position cible. Pour mélanger "
"les canaux alpha, utilisez plutôt [method blend_rect]."

msgid ""
"Converts a bump map to a normal map. A bump map provides a height offset per-"
"pixel, while a normal map provides a normal direction per pixel."
msgstr ""
"Convertit une bump map en une normal map. Une bump map fournit un décalage de "
"hauteur par pixel, tandis qu'une normal map fournit une direction normale par "
"pixel."

msgid "Removes the image's mipmaps."
msgstr "Retire les mipmaps de l'image."

msgid ""
"Compresses the image to use less memory. Can not directly access pixel data "
"while the image is compressed. Returns error if the chosen compression mode "
"is not available.\n"
"The [param source] parameter helps to pick the best compression method for "
"DXT and ETC2 formats. It is ignored for ASTC compression.\n"
"For ASTC compression, the [param astc_format] parameter must be supplied."
msgstr ""
"Compresse l'image pour utiliser moins de mémoire. Impossible d'accéder "
"directement aux données de pixels pendant que l'image est en cours de "
"compression. Renvoie une erreur si le mode de compression choisi n'est pas "
"disponible.\n"
"Le paramètre [param source] permet de choisir la meilleure méthode de "
"compression pour les formats DXT et ETC2. Il est ignoré pour la compression "
"ASTC.\n"
"Pour la compression ASTC, le paramètre [param astc_format] doit être fourni."

msgid ""
"Compresses the image to use less memory. Can not directly access pixel data "
"while the image is compressed. Returns error if the chosen compression mode "
"is not available.\n"
"This is an alternative to [method compress] that lets the user supply the "
"channels used in order for the compressor to pick the best DXT and ETC2 "
"formats. For other formats (non DXT or ETC2), this argument is ignored.\n"
"For ASTC compression, the [param astc_format] parameter must be supplied."
msgstr ""
"Compresse l'image pour utiliser moins de mémoire. Impossible d'accéder "
"directement aux données de pixels pendant que l'image est en cours de "
"compression. Renvoie une erreur si le mode de compression choisi n'est pas "
"disponible.\n"
"Il s'agit d'une alternative à [method compress] qui laisse l'utilisateur "
"fournir les canaux utilisés pour que le compresseur choisisse le meilleur "
"format entre DXT et ETC2. Pour les autres formats (non DXT ou ETC2), "
"l'argument est ignoré.\n"
"Pour la compression ASTC, le paramètre [param astc_format] doit être fourni."

msgid ""
"Compute image metrics on the current image and the compared image.\n"
"The dictionary contains [code]max[/code], [code]mean[/code], "
"[code]mean_squared[/code], [code]root_mean_squared[/code] and [code]peak_snr[/"
"code]."
msgstr ""
"Calcule les métriques d'image sur l'image actuelle et l'image comparée.\n"
"Le dictionnaire contient [code]max[/code], [code]mean[/code], "
"[code]mean_squared[/code], [code]root_mean_squared[/code] et [code]peak_snr[/"
"code]."

msgid "Converts this image's format to the given [param format]."
msgstr "Convertit le format de cette image au format [param format] donné."

msgid "Copies [param src] image to this image."
msgstr "Copie l'image [param src] vers cette image."

msgid "Use [method create_empty]."
msgstr "Utilisez [method create_empty]."

msgid ""
"Creates an empty image of the given size and format. If [param use_mipmaps] "
"is [code]true[/code], generates mipmaps for this image. See the [method "
"generate_mipmaps]."
msgstr ""
"Crée une image vide de la taille et du format donnés. Si [param use_mipmaps] "
"vaut [code]true[/code], génère des mipmaps pour cette image. Voir [method "
"generate_mipmaps]."

msgid ""
"Creates a new image of the given size and format. Fills the image with the "
"given raw data. If [param use_mipmaps] is [code]true[/code], loads the "
"mipmaps for this image from [param data]. See [method generate_mipmaps]."
msgstr ""
"Crée une nouvelle image de la taille et du format donnés. Remplit l'image "
"avec les données brutes données. Si [param use_mipmaps] vaut [code]true[/"
"code], charge les mipmaps pour cette image de [param data]. Voir [method "
"generate_mipmaps]."

msgid ""
"Crops the image to the given [param width] and [param height]. If the "
"specified size is larger than the current size, the extra area is filled with "
"black pixels."
msgstr ""
"Recadre l'image à la largeur [param width] et hauteur [param height] données. "
"Si la taille spécifiée est plus grande que la taille actuelle, la zone "
"supplémentaire est remplie de pixels noirs."

msgid ""
"Decompresses the image if it is VRAM compressed in a supported format. "
"Returns [constant OK] if the format is supported, otherwise [constant "
"ERR_UNAVAILABLE].\n"
"[b]Note:[/b] The following formats can be decompressed: DXT, RGTC, BPTC. The "
"formats ETC1 and ETC2 are not supported."
msgstr ""
"Décompresse l'image si elle est compressée en VRAM en un format supporté. "
"Renvoie [constant OK] si le format est supporté, sinon [constant "
"ERR_UNAVAILABLE].\n"
"[b]Note :[/b] Les formats suivants peuvent être décompressés : DXT, RGTC, "
"BPTC. Les formats ETC1 et ETC2 ne sont pas pris en charge."

msgid ""
"Returns [constant ALPHA_BLEND] if the image has data for alpha values. "
"Returns [constant ALPHA_BIT] if all the alpha values are stored in a single "
"bit. Returns [constant ALPHA_NONE] if no data for alpha values is found."
msgstr ""
"Renvoie [constant ALPHA_BLEND] si l’image a des données pour les valeurs "
"alpha. Renvoie [constant ALPHA_BIT] si toutes les valeurs alpha sont stockées "
"en un seul bit. Renvoie [constant ALPHA_NONE] si aucune donnée pour les "
"valeurs alpha n’est trouvée."

msgid ""
"Returns the color channels used by this image. If the image is compressed, "
"the original [param source] must be specified."
msgstr ""
"Renvoie les canaux de couleur utilisés par cette image. Si l'image est "
"compressée, la [param source] originelle doit être spécifiée."

msgid "Fills the image with [param color]."
msgstr "Remplit toute l'image avec la couleur [param color]."

msgid "Fills [param rect] with [param color]."
msgstr "Remplit le [param rect] avec la [param color]."

msgid "Blends low-alpha pixels with nearby pixels."
msgstr "Mélange les pixels à faible opacité (alpha) avec ceux proches."

msgid "Flips the image horizontally."
msgstr "Inverse l'image horizontalement."

msgid "Flips the image vertically."
msgstr "Inverse l'image verticalement."

msgid ""
"Generates mipmaps for the image. Mipmaps are precalculated lower-resolution "
"copies of the image that are automatically used if the image needs to be "
"scaled down when rendered. They help improve image quality and performance "
"when rendering. This method returns an error if the image is compressed, in a "
"custom format, or if the image's width/height is [code]0[/code]. Enabling "
"[param renormalize] when generating mipmaps for normal map textures will make "
"sure all resulting vector values are normalized.\n"
"It is possible to check if the image has mipmaps by calling [method "
"has_mipmaps] or [method get_mipmap_count]. Calling [method generate_mipmaps] "
"on an image that already has mipmaps will replace existing mipmaps in the "
"image."
msgstr ""
"Génère des mipmaps pour l'image. Les mipmaps sont des copies précalculées en "
"basse résolution de l'image qui sont automatiquement utilisées si l'image "
"doit être réduite au moment du rendu. Ils aident à améliorer la qualité de "
"l'image et la performance lors du rendu. Cette méthode renvoie une erreur si "
"l'image est compressée, dans un format personnalisé, ou si la largeur/hauteur "
"de l'image vaut [code]0[/code]. Activer [param renormalize] lors de la "
"génération des mipmaps pour les textures de normal map assurera que toutes "
"les valeurs vectorielles résultantes sont normalisées.\n"
"Il est possible de vérifier si l'image a des mipmaps en appelant [method "
"has_mipmaps] ou [method get_mipmap_count]. Appeler [method generate_mipmaps] "
"sur une image qui a déjà des mipmaps remplacera les mipmaps existantes dans "
"l'image."

msgid "Returns a copy of the image's raw data."
msgstr "Renvoie une copie des données brutes de l’image."

msgid "Returns size (in bytes) of the image's raw data."
msgstr "Renvoie la taille (en octets) des données brutes de l'image."

msgid "Returns this image's format."
msgstr "Renvoie le format de cette image."

msgid "Returns the image's height."
msgstr "Renvoie la hauteur de l'image."

msgid ""
"Returns the number of mipmap levels or 0 if the image has no mipmaps. The "
"largest main level image is not counted as a mipmap level by this method, so "
"if you want to include it you can add 1 to this count."
msgstr ""
"Renvoie le nombre de niveaux de mipmap ou 0 si l'image n'a pas de mipmaps. "
"L'image de niveau principal la plus grande n'est pas comptée comme un niveau "
"de mipmap par cette méthode, donc si vous voulez l'inclure, vous pouvez "
"ajouter 1 à ce nombre."

msgid ""
"Returns the offset where the image's mipmap with index [param mipmap] is "
"stored in the [member data] dictionary."
msgstr ""
"Renvoie le décalage où la mipmap de l'image avec l'index [param mipmap] est "
"stockée dans le dictionnaire [member data]."

msgid ""
"Returns the color of the pixel at [code](x, y)[/code].\n"
"This is the same as [method get_pixelv], but with two integer arguments "
"instead of a [Vector2i] argument."
msgstr ""
"Renvoie la couleur du pixel à [code](x, y)[/code].\n"
"C'est la même chose que [method get_pixelv], mais avec deux arguments entiers "
"au lieu d'un argument [Vector2i]."

msgid ""
"Returns the color of the pixel at [param point].\n"
"This is the same as [method get_pixel], but with a [Vector2i] argument "
"instead of two integer arguments."
msgstr ""
"Renvoie la couleur du pixel au [param point] donné.\n"
"C'est la même chose que [method get_pixel], mais avec un argument [Vector2i] "
"au lieu de deux arguments entiers."

msgid ""
"Returns a new [Image] that is a copy of this [Image]'s area specified with "
"[param region]."
msgstr ""
"Renvoie une nouvelle [Image] qui est une copie de la zone de cette [Image] "
"spécifiée par [param region]."

msgid "Returns the image's size (width and height)."
msgstr "Renvoie la taille de l'image (la largeur et la hauteur)."

msgid ""
"Returns a [Rect2i] enclosing the visible portion of the image, considering "
"each pixel with a non-zero alpha channel as visible."
msgstr ""
"Renvoie un [Rect2i] contenant la partie visible de l'image, en considérant "
"chaque pixel avec un canal alpha non nul comme visible."

msgid "Returns the image's width."
msgstr "Renvoie la largeur de l'image."

msgid "Returns [code]true[/code] if the image has generated mipmaps."
msgstr "Renvoie [code]true[/code] si l'image a des mipmaps générées."

msgid "Returns [code]true[/code] if the image is compressed."
msgstr "Renvoie [code]true[/code] si l'image est compressée."

msgid "Returns [code]true[/code] if the image has no data."
msgstr "Renvoie [code]true[/code] si l'image n'a aucune données."

msgid ""
"Returns [code]true[/code] if all the image's pixels have an alpha value of 0. "
"Returns [code]false[/code] if any pixel has an alpha value higher than 0."
msgstr ""
"Renvoie [code]true[/code] si tous les pixels de l'image ont une valeur alpha "
"de 0. Renvoie [code]false[/code] si au moins un pixel a une valeur alpha "
"supérieure à 0."

msgid ""
"Converts the entire image from the linear colorspace to the sRGB colorspace. "
"Only works on images with [constant FORMAT_RGB8] or [constant FORMAT_RGBA8] "
"formats."
msgstr ""
"Convertit l'image entière de l'espace de couleur linéaire à l'espace de "
"couleur sRGB. Fonctionne seulement sur des images en format [constant "
"FORMAT_RGB8] ou [constant FORMAT_RGBA8]."

msgid ""
"Loads an image from file [param path]. See [url=$DOCS_URL/tutorials/"
"assets_pipeline/importing_images.html#supported-image-formats]Supported image "
"formats[/url] for a list of supported image formats and limitations.\n"
"[b]Warning:[/b] This method should only be used in the editor or in cases "
"when you need to load external images at run-time, such as images located at "
"the [code]user://[/code] directory, and may not work in exported projects.\n"
"See also [ImageTexture] description for usage examples."
msgstr ""
"Charge une image depuis le fichier [param path]. Voir [url=$DOCS_URL/"
"tutorials/assets_pipeline/importing_images.html#supported-image-"
"formats]Formats d'image pris en charge[/url] pour une liste des formats "
"d'image pris en charge et les limitations.\n"
"[b]Attention :[/b] Cette méthode ne devrait être utilisée que dans l'éditeur "
"ou dans les cas où vous devez charger des images externes durant l'exécution, "
"comme des images situées dans le répertoire [code]user://[/code], et peut ne "
"pas fonctionner dans des projets exportés.\n"
"Voir aussi la description de [ImageTexture] pour des exemples d'utilisation."

msgid ""
"Loads an image from the binary contents of a BMP file.\n"
"[b]Note:[/b] Godot's BMP module doesn't support 16-bit per pixel images. Only "
"1-bit, 4-bit, 8-bit, 24-bit, and 32-bit per pixel images are supported.\n"
"[b]Note:[/b] This method is only available in engine builds with the BMP "
"module enabled. By default, the BMP module is enabled, but it can be disabled "
"at build-time using the [code]module_bmp_enabled=no[/code] SCons option."
msgstr ""
"Charge une image à partir du contenu binaire d'un fichier BMP.\n"
"[b]Note :[/b] Le module BMP de Godot ne supporte pas les images de 16 bits "
"par pixel. Seulement les images de 1-bit, 4-bit, 8-bit, 24-bit et 32-bit par "
"pixel sont prises en charge.\n"
"[b]Note :[/b] Cette méthode n'est disponible que dans les compilation du "
"moteur avec le module BMP activé. Par défaut, le module BMP est activé, mais "
"il peut être désactivé durant la compilation en utilisant l'option SCons "
"[code]module_bmp_enabled=no[/code]."

msgid ""
"Loads an image from the binary contents of a DDS file.\n"
"[b]Note:[/b] This method is only available in engine builds with the DDS "
"module enabled. By default, the DDS module is enabled, but it can be disabled "
"at build-time using the [code]module_dds_enabled=no[/code] SCons option."
msgstr ""
"Charge une image à partir du contenu binaire d'un fichier DDS.\n"
"[b]Note :[/b] Cette méthode n'est disponible que dans les compilation du "
"moteur avec le module DDS activé. Par défaut, le module DDS est activé, mais "
"il peut être désactivé durant la compilation en utilisant l'option SCons "
"[code]module_dds_enabled=no[/code]."

msgid "Creates a new [Image] and loads data from the specified file."
msgstr ""
"Crée une nouvelle [Image] et charge les données depuis le fichier spécifié."

msgid "Loads an image from the binary contents of a JPEG file."
msgstr "Charge une image à partir du contenu binaire d’un fichier JPEG."

msgid ""
"Loads an image from the binary contents of a [url=https://github.com/"
"KhronosGroup/KTX-Software]KTX[/url] file. Unlike most image formats, KTX can "
"store VRAM-compressed data and embed mipmaps.\n"
"[b]Note:[/b] Godot's libktx implementation only supports 2D images. Cubemaps, "
"texture arrays, and de-padding are not supported.\n"
"[b]Note:[/b] This method is only available in engine builds with the KTX "
"module enabled. By default, the KTX module is enabled, but it can be disabled "
"at build-time using the [code]module_ktx_enabled=no[/code] SCons option."
msgstr ""
"Charge une image du contenu binaire d'un fichier [url=https://github.com/"
"KhronosGroup/KTX-Software]KTX[/url]. Contrairement à la plupart des formats "
"d'image, KTX peut stocker des données compressées VRAM et des mipmaps "
"intégrées.\n"
"[b]Note :[/b] L'implémentation libktx de Godot ne supporte que les images 2D. "
"Les cubemaps, les tableaux de texture et le de-padding ne sont pas pris en "
"charge.\n"
"[b]Note :[/b] Cette méthode n'est disponible que dans les compilation du "
"moteur avec le module KTX activé. Par défaut, le module KTX est activé, mais "
"il peut être désactivé durant la compilation en utilisant l'option SCons "
"[code]module_ktx_enabled=no[/code]."

msgid "Loads an image from the binary contents of a PNG file."
msgstr "Charge une image à partir du contenu binaire d'un fichier PNG."

msgid ""
"Loads an image from the UTF-8 binary contents of an [b]uncompressed[/b] SVG "
"file ([b].svg[/b]).\n"
"[b]Note:[/b] Beware when using compressed SVG files (like [b].svgz[/b]), they "
"need to be [code]decompressed[/code] before loading.\n"
"[b]Note:[/b] This method is only available in engine builds with the SVG "
"module enabled. By default, the SVG module is enabled, but it can be disabled "
"at build-time using the [code]module_svg_enabled=no[/code] SCons option."
msgstr ""
"Charge une image du contenu binaire UTF-8 d'un fichier SVG [b]décompressé[/b] "
"([b].svg[/b]).\n"
"[b]Note :[/b] Attention à l'utilisation de fichiers SVG compressés (comme "
"[b].svgz[/b]), ils doivent être [code]décompressés[/code] avant le "
"chargement.\n"
"[b]Note :[/b] Cette méthode n'est disponible que dans les compilation du "
"moteur avec le module SVG activé. Par défaut, le module SVG est activé, mais "
"il peut être désactivé durant la compilation en utilisant l'option SCons "
"[code]module_svg_enabled=no[/code]."

msgid ""
"Loads an image from the string contents of an SVG file ([b].svg[/b]).\n"
"[b]Note:[/b] This method is only available in engine builds with the SVG "
"module enabled. By default, the SVG module is enabled, but it can be disabled "
"at build-time using the [code]module_svg_enabled=no[/code] SCons option."
msgstr ""
"Charge une image à partir du contenu de chaîne d'un fichier SVG ([b].svg[/"
"b]).\n"
"[b]Note :[/b] Cette méthode n'est disponible que dans les compilation du "
"moteur avec le module SVG activé. Par défaut, le module SVG est activé, mais "
"il peut être désactivé durant la compilation en utilisant l'option SCons "
"[code]module_svg_enabled=no[/code]."

msgid ""
"Loads an image from the binary contents of a TGA file.\n"
"[b]Note:[/b] This method is only available in engine builds with the TGA "
"module enabled. By default, the TGA module is enabled, but it can be disabled "
"at build-time using the [code]module_tga_enabled=no[/code] SCons option."
msgstr ""
"Charge une image à partir du contenu binaire d'un fichier TGA.\n"
"[b]Note :[/b] Cette méthode n'est disponible que dans les compilation du "
"moteur avec le module TGA activé. Par défaut, le module TGA est activé, mais "
"il peut être désactivé durant la compilation en utilisant l'option SCons "
"[code]module_tga_enabled=no[/code]."

msgid "Loads an image from the binary contents of a WebP file."
msgstr "Charge une image depuis le contenu binaire d'un fichier WebP."

msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normal map. A normal map can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
"Convertit les données de l'image pour représenter des coordonnées sur un plan "
"3D. Ceci est utilisé lorsque l'image représente une normal map. Une normal "
"map peut ajouter beaucoup de détail à une surface 3D sans augmenter le nombre "
"de polygones."

msgid ""
"Multiplies color values with alpha values. Resulting color values for a pixel "
"are [code](color * alpha)/256[/code]. See also [member "
"CanvasItemMaterial.blend_mode]."
msgstr ""
"Multiplie les valeurs de couleur avec les valeurs alpha. Les valeurs de "
"couleur résultantes pour un pixel sont [code](color * alpha)/256[/code]. Voir "
"aussi [member CanvasItemMaterial.blend_mode]."

msgid ""
"Resizes the image to the given [param width] and [param height]. New pixels "
"are calculated using the [param interpolation] mode defined via [enum "
"Interpolation] constants."
msgstr ""
"Redimensionne l'image à la largeur [param width] et hauteur [param height] "
"données. Les nouveaux pixels sont calculés à l'aide du mode d'[param "
"interpolation] défini via les constantes [enum Interpolation]."

msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[param square] is [code]true[/code], sets width and height to be the same. "
"New pixels are calculated using the [param interpolation] mode defined via "
"[enum Interpolation] constants."
msgstr ""
"Redimensionne l'image à la puissance de 2 la plus proche pour la largeur et "
"la hauteur. Si [param square] vaut [code]true[/code], fixe la largeur et la "
"hauteur pour être identiques. Les nouveaux pixels sont calculés à l'aide du "
"mode d'[param interpolation] défini via les constantes [enum Interpolation]."

msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
"Convertit une image RGBE (« Red Green Blue Exponent ») standard en image sRGB."

msgid ""
"Rotates the image in the specified [param direction] by [code]90[/code] "
"degrees. The width and height of the image must be greater than [code]1[/"
"code]. If the width and height are not equal, the image will be resized."
msgstr ""
"Pivote l'image dans la [param direction] spécifiée de [code]90[/code] degrés. "
"La largeur et la hauteur de l'image doivent être supérieures à [code]1[/"
"code]. Si la largeur et la hauteur ne sont pas égales, l'image sera "
"redimensionnée."

msgid ""
"Rotates the image by [code]180[/code] degrees. The width and height of the "
"image must be greater than [code]1[/code]."
msgstr ""
"Pivote l'image de [code]180[/code] degrés. La largeur et la hauteur de "
"l'image doivent être supérieures à [code]1[/code]."

msgid ""
"Saves the image as a DDS (DirectDraw Surface) file to [param path]. DDS is a "
"container format that can store textures in various compression formats, such "
"as DXT1, DXT5, or BC7. This function will return [constant ERR_UNAVAILABLE] "
"if Godot was compiled without the DDS module.\n"
"[b]Note:[/b] The DDS module may be disabled in certain builds, which means "
"[method save_dds] will return [constant ERR_UNAVAILABLE] when it is called "
"from an exported project."
msgstr ""
"Sauvegarde l'image comme un fichier DDS (DirectDraw Surface) au chemin [param "
"path]. DDS est un format conteneur qui peut stocker des textures dans divers "
"formats de compression, tels que DXT1, DXT5, ou BC7. Cette fonction renverra "
"[constant ERR_UNAVAILABLE] si Godot a été compilé sans le module DDS.\n"
"[b]Note :[/b] Le module DDS peut être désactivé dans certaines compilations, "
"ce qui signifie que [method save_dds] renverra [constant ERR_UNAVAILABLE] "
"lorsqu'elle est appelée à partir d'un projet exporté."

msgid ""
"Saves the image as a DDS (DirectDraw Surface) file to a byte array. DDS is a "
"container format that can store textures in various compression formats, such "
"as DXT1, DXT5, or BC7. This function will return an empty byte array if Godot "
"was compiled without the DDS module.\n"
"[b]Note:[/b] The DDS module may be disabled in certain builds, which means "
"[method save_dds_to_buffer] will return an empty byte array when it is called "
"from an exported project."
msgstr ""
"Sauvegarde l'image comme un fichier DDS (DirectDraw Surface) en un tableau "
"d'octets. DDS est un format conteneur qui peut stocker des textures dans "
"divers formats de compression, tels que DXT1, DXT5, ou BC7. Cette fonction "
"renverra un tableau d'octets vide si Godot a été compilé sans le module DDS.\n"
"[b]Note :[/b] Le module DDS peut être désactivé dans certaines compilations, "
"ce qui signifie que [method save_dds_to_buffer] renverra un tableau d'octets "
"vide lorsqu'elle est appelée à partir d'un projet exporté."

msgid ""
"Saves the image as an EXR file to [param path]. If [param grayscale] is "
"[code]true[/code] and the image has only one channel, it will be saved "
"explicitly as monochrome rather than one red channel. This function will "
"return [constant ERR_UNAVAILABLE] if Godot was compiled without the TinyEXR "
"module.\n"
"[b]Note:[/b] The TinyEXR module is disabled in non-editor builds, which means "
"[method save_exr] will return [constant ERR_UNAVAILABLE] when it is called "
"from an exported project."
msgstr ""
"Sauvegarde l'image comme un fichier EXR au chemin [param path]. Si [param "
"grayscale] vaut [code]true[/code] et que l'image n'a qu'un seul canal, elle "
"sera enregistrée explicitement comme monochrome plutôt qu'un seul canal "
"rouge. Cette fonction renverra [constant ERR_UNAVAILABLE] si Godot a été "
"compilé sans le module TinyEXR.\n"
"[b]Note :[/b] Le module TinyEXR est désactivé dans les compilations non-"
"éditeur, ce qui signifie que [method save_exr] renverra [constant "
"ERR_UNAVAILABLE] lorsqu'elle est appelée à partir d'un projet exporté."

msgid ""
"Saves the image as an EXR file to a byte array. If [param grayscale] is "
"[code]true[/code] and the image has only one channel, it will be saved "
"explicitly as monochrome rather than one red channel. This function will "
"return an empty byte array if Godot was compiled without the TinyEXR module.\n"
"[b]Note:[/b] The TinyEXR module is disabled in non-editor builds, which means "
"[method save_exr_to_buffer] will return an empty byte array when it is called "
"from an exported project."
msgstr ""
"Sauvegarde l'image comme un fichier EXR en un tableau d'octets. Si [param "
"grayscale] vaut [code]true[/code] et que l'image n'a qu'un seul canal, elle "
"sera enregistrée explicitement comme monochrome plutôt qu'un seul canal "
"rouge.Cette fonction renverra un tableau d'octets vide si Godot a été compilé "
"sans le module TinyEXR.\n"
"[b]Note :[/b] Le module TinyEXR est désactivé dans les compilations non-"
"éditeur, ce qui signifie que [method save_exr_to_buffer] renverra un tableau "
"d'octets vide lorsqu'elle est appelée à partir d'un projet exporté."

msgid "Saves the image as a PNG file to a byte array."
msgstr "Enregistre l'image comme un fichier PNG vers un tableau d'octets."

msgid ""
"Holds all the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
"Garde tous les données de couleur de l'image dans un format donné. Voir les "
"constantes [enum Format]."

msgid "The maximal width allowed for [Image] resources."
msgstr "La largeur maximale autorisée pour les [Image]."

msgid "The maximal height allowed for [Image] resources."
msgstr "La hauteur maximale autorisée pour les [Image]."

msgid "Texture format with a single 8-bit depth representing luminance."
msgstr "Un format de texture 8-bit représentant la luminance (niveaux de gris)."

msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with 8 "
"bits."
msgstr ""
"Format de texture OpenGL avec deux composantes, la luminance et l'opacité, "
"chacune sur 8 bits."

msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a bitdepth "
"of 8."
msgstr ""
"Format de texture OpenGL [code]RED[/code] avec une unique composante sur 8 "
"bits."

msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of 8 "
"for each."
msgstr ""
"Format de texture OpenGL [code]RG[/code] avec deux composantes, chacune sur 8 "
"bits."

msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Format de texture OpenGL [code]RGB[/code] avec trois composantes, chacune sur "
"8 bits.\n"
"[b]Note :[/b] Lors de la création d'une [ImageTexture], une conversion sRGB "
"vers l'espace de couleur linéaire est effectuée."

msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Format de texture OpenGL [code]RGBA[/code] avec quatre composantes, chacune "
"sur 8 bits.\n"
"[b]Note :[/b] Lors de la création d'une [ImageTexture], une conversion sRGB "
"vers l'espace de couleur linéaire est effectuée."

msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
"Format de texture OpenGL [code]RGBA[/code] où il y a quatre composantes, "
"chacune sur 4 bits."

msgid ""
"OpenGL texture format [code]RGB[/code] with three components. Red and blue "
"have a bitdepth of 5, and green has a bitdepth of 6."
msgstr ""
"Format de texture OpenGL [code]RGB[/code] avec trois composantes. Rouge et "
"bleu sont sur 5 bits, et vert sur 6."

msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
"Format de texture OpenGL [code]GL_R32F[/code] où il n'y a qu'un seul "
"composante, un flottant de 32 bits."

msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
"Format de texture OpenGL [code]GL_RG32F[/code] où il y a deux composantes, "
"chacune un flottant de 32 bits."

msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
"Format de texture OpenGL [code]GL_RGB32F[/code] où il y a trois composantes, "
"chacune un flottant de 32 bits."

msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
"Format de texture OpenGL [code]GL_RGBA32F[/code] où il y a quatre "
"composantes, chacune un flottant de 32 bits."

msgid ""
"OpenGL texture format [code]GL_R16F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
"Format de texture OpenGL [code]GL_R16F[/code] où il n'y a qu'une seule "
"composante, un flottant en demi-précision sur 16 bits."

msgid ""
"OpenGL texture format [code]GL_RG16F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
"Format de texture OpenGL [code]GL_RG16F[/code] où il y a deux composantes, "
"chacune un flottant en demi-précision sur 16 bits."

msgid ""
"OpenGL texture format [code]GL_RGB16F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
"Format de texture OpenGL [code]GL_RGB16F[/code] où il y a 3 composantes, "
"chacune un flottant en demi-précision sur 16 bits."

msgid ""
"OpenGL texture format [code]GL_RGBA16F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
"Format de texture OpenGL [code]GL_RGB16F[/code] où il y a 4 composantes, "
"chacune un flottant en demi-précision sur 16 bits."

msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
"Un format de texture OpenGL spécial où les trois composantes de couleur ont 9 "
"bits de précision et tous les trois partagent un seul exposant sur 5 bits."

msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
"of S3TC, only providing 1 bit of alpha and color data being premultiplied "
"with alpha.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Le format de texture [url=https://en.wikipedia.org/wiki/"
"S3_Texture_Compression]S3TC[/url] qui utiliser une compression de bloc 1, et "
"est une variation plus petite que S3TC, avec seulement 1 bit pour l'alpha et "
"les composants de couleurs étant pré-multitpliés avec l'alpha.\n"
"[b]Note :[/b] À la création d'une [ImageTexture], elle est convertie vers "
"l'espace de couleur linéaire sRGB."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
"Le format de texture qui utilise la compression [url=https://www.khronos.org/"
"opengl/wiki/BPTC_Texture_Compression]BPTC[/url] avec des flottants signés "
"pour les composants RGB."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
"Le format de texture qui utilise la compression [url=https://www.khronos.org/"
"opengl/wiki/BPTC_Texture_Compression]BPTC[/url] avec des flottants non-signés "
"pour les composants RGB."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]RGBA8[/code]variant), which compresses RGBA8888 data with full "
"alpha support.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Format de compression Ericsson 2[/"
"url] (variante [code]RGBA8[/code]), qui compresse les données RGBA8888 avec "
"le support complet de l'opacité.\n"
"[b]Note :[/b] Lors de la création d'une [ImageTexture], l'espace de couleur "
"sRGB est convertit en linéaire."

msgid "Represents the size of the [enum Format] enum."
msgstr "Représente la taille de l'énumération [enum Format]."

msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
"Fait une interpolation du voisin le plus proche. Si l'image est "
"redimensionnée, elle sera pixelisée."

msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
"Fait une interpolation bilinéaire. Si l'image est redimensionnée, elle peut "
"être floue. Ce mode est plus rapide que [constant INTERPOLATE_CUBIC], mais le "
"résultat est moins bon."

msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
"Fait une interpolation cubique. Si l'image est redimensionnée, elle peut être "
"floue. Ce mode donne en général de meilleurs résultats que [constant "
"INTERPOLATE_BILINEAR], mais est plus lente."

msgid "Image does not have alpha."
msgstr "L’image n’a pas d'opacité."

msgid "Image stores alpha in a single bit."
msgstr "L'image stocke l'opacité sur un seul bit."

msgid "Image uses alpha."
msgstr "L'image utilise l'opacité."

msgid "Use S3TC compression."
msgstr "Utilise la compression ST3TC."

msgid "Use ETC compression."
msgstr "Utilise la compression ETC."

msgid "Use ETC2 compression."
msgstr "Utilise la compression ETC2."

msgid "Use BPTC compression."
msgstr "Utiliser la compression BPTC ."

msgid "Use ASTC compression."
msgstr "Utiliser la compression ASTC."

msgid "Represents the size of the [enum CompressMode] enum."
msgstr "Représente la taille de l'énumération [enum CompressMode]."

msgid "The image only uses the red channel."
msgstr "L'image n'utilise que le canal rouge."

msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
"La texture d'origine (avant la compression) est une texture classique. C'est "
"le choix par défaut de toutes les textures."

msgid "Source texture (before compression) is in sRGB space."
msgstr "La texture d'origine (avant la compression) est dans l'espace sRGB."

msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
msgstr ""
"La texture d'origine (avant la compression) est une texture pour les normales "
"(elle peut être compressée en n'utilisant que deux canaux)."

msgid "A [Texture2D] based on an [Image]."
msgstr "Une [Texture2D] basée sur une [Image]."

msgid "Texture with 3 dimensions."
msgstr "Une texture à 3 dimensions."

msgid ""
"[ImageTexture3D] is a 3-dimensional [ImageTexture] that has a width, height, "
"and depth. See also [ImageTextureLayered].\n"
"3D textures are typically used to store density maps for [FogMaterial], color "
"correction LUTs for [Environment], vector fields for "
"[GPUParticlesAttractorVectorField3D] and collision maps for "
"[GPUParticlesCollisionSDF3D]. 3D textures can also be used in custom shaders."
msgstr ""
"[ImageTexture3D] est une image en 3 dimensions qui a une largeur, une hauteur "
"et une profondeur. Voir aussi [ImageTextureLayered].\n"
"Les textures 3D sont généralement utilisées pour stocker des density maps "
"pour [FogMaterial], des LUTs de correction de couleur pour [Environment], des "
"champs vectoriels pour [GPUParticlesAttractorVectorField3D] et des collision "
"maps pour [GPUParticlesCollisionSDF3D]. Les textures 3D peuvent également "
"être utilisées dans des shaders personnalisés."

msgid ""
"Creates the [ImageTexture3D] with specified [param format], [param width], "
"[param height], and [param depth]. If [param use_mipmaps] is [code]true[/"
"code], generates mipmaps for the [ImageTexture3D]."
msgstr ""
"Crée la [ImageTexture3D] avec le format [param format] , la largeur [param "
"width], la hauteur [param height] et la profondeur [param depth] spécifiés. "
"Si [param use_mipmaps] vaut [code]true[/code], génère des mipmaps pour "
"l'[ImageTexture3D]."

msgid ""
"Replaces the texture's existing data with the layers specified in [param "
"data]. The size of [param data] must match the parameters that were used for "
"[method create]. In other words, the texture cannot be resized or have its "
"format changed by calling [method update]."
msgstr ""
"Remplace les données existantes de la texture par les couches spécifiées dans "
"[param data]. La taille de [param data] doit correspondre aux paramètres "
"utilisés pour [method create]. En d'autres termes, la texture ne peut pas "
"être redimensionnée ou avoir son format modifié en appelant [method update]."

msgid ""
"Base class for texture types which contain the data of multiple "
"[ImageTexture]s. Each image is of the same size and format."
msgstr ""
"Classe de base pour les types de texture qui contiennent les données de "
"plusieurs [ImageTexture]s. Chaque image est de la même taille et du même "
"format."

msgid ""
"Base class for [Texture2DArray], [Cubemap] and [CubemapArray]. Cannot be used "
"directly, but contains all the functions necessary for accessing the derived "
"resource types. See also [Texture3D]."
msgstr ""
"Classe de base pour [Texture2DArray], [Cubemap] et [CubemapArray]. Ne peut "
"être utilisée directement, mais contient toutes les fonctions nécessaires "
"pour accéder aux types de ressources dérivées. Voir aussi [Texture3D]."

msgid ""
"Creates an [ImageTextureLayered] from an array of [Image]s. See [method "
"Image.create] for the expected data format. The first image decides the "
"width, height, image format and mipmapping setting. The other images [i]must[/"
"i] have the same width, height, image format and mipmapping setting.\n"
"Each [Image] represents one [code]layer[/code].\n"
"[codeblock]\n"
"# Fill in an array of Images with different colors.\n"
"var images = []\n"
"const LAYERS = 6\n"
"for i in LAYERS:\n"
"\tvar image = Image.create_empty(128, 128, false, Image.FORMAT_RGB8)\n"
"\tif i % 3 == 0:\n"
"\t\timage.fill(Color.RED)\n"
"\telif i % 3 == 1:\n"
"\t\timage.fill(Color.GREEN)\n"
"\telse:\n"
"\t\timage.fill(Color.BLUE)\n"
"\timages.push_back(image)\n"
"\n"
"# Create and save a 2D texture array. The array of images must have at least "
"1 Image.\n"
"var texture_2d_array = Texture2DArray.new()\n"
"texture_2d_array.create_from_images(images)\n"
"ResourceSaver.save(texture_2d_array, \"res://texture_2d_array.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Create and save a cubemap. The array of images must have exactly 6 Images.\n"
"# The cubemap's images are specified in this order: X+, X-, Y+, Y-, Z+, Z-\n"
"# (in Godot's coordinate system, so Y+ is \"up\" and Z- is \"forward\").\n"
"var cubemap = Cubemap.new()\n"
"cubemap.create_from_images(images)\n"
"ResourceSaver.save(cubemap, \"res://cubemap.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Create and save a cubemap array. The array of images must have a multiple "
"of 6 Images.\n"
"# Each cubemap's images are specified in this order: X+, X-, Y+, Y-, Z+, Z-\n"
"# (in Godot's coordinate system, so Y+ is \"up\" and Z- is \"forward\").\n"
"var cubemap_array = CubemapArray.new()\n"
"cubemap_array.create_from_images(images)\n"
"ResourceSaver.save(cubemap_array, \"res://cubemap_array.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"[/codeblock]"
msgstr ""
"Crée une [ImageTextureLayered] depuis un tableau d'[Image]s. Voir [method "
"Image.create] pour le format attendu des données. La première image décide de "
"la largeur, de la hauteur, du format d'image et des paramètres de mipmaps. "
"Les autres images [i]doivent[/i] avoir la même largeur, hauteur, format "
"d'image et paramètres de mipmaps.\n"
"Chaque [Image] représente une couche [code]layer[/code].\n"
"[codeblock]\n"
"# Remplir un tableau d'images avec des images de différentes couleurs.\n"
"var images = []\n"
"const COUCHES = 6\n"
"for i in COUCHES:\n"
"\tvar image = Image.create_empty(128, 128, false, Image.FORMAT_RGB8)\n"
"\tif i % 3 == 0:\n"
"\t\timage.fill(Color.RED)\n"
"\telif i % 3 == 1:\n"
"\t\timage.fill(Color.GREEN)\n"
"\telse:\n"
"\t\timage.fill(Color.BLUE)\n"
"\timages.push_back(image)\n"
"\n"
"# Créer et sauvegarder un tableau de textures 2D. Le tableau d'images doit "
"avoir au moins une image.\n"
"var tableau_texture_2d = Texture2DArray.new()\n"
"tableau_texture_2d.create_from_images(images)\n"
"ResourceSaver.save(tableau_texture_2d, \"res://tableau_texture_2d.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Créer et sauvegarder une cubemap. Le tableau d'images doit avoir exactement "
"6 images.\n"
"# Les images de la cubemap sont spécifiés dans cet ordre : X+, X-, Y+, Y-, "
"Z+, Z-\n"
"# (dans le système de coordonnées de Godot, donc Y+ est \"haut\" et Z- est "
"\"avant\").\n"
"var cubemap = Cubemap.new()\n"
"cubemap.create_from_images(images)\n"
"ResourceSaver.save(cubemap, \"res://cubemap.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Créer et sauvegarder un tableau de cubemaps. Le tableau d'images doit avoir "
"un multiple de 6 images.\n"
"# Les images de chaque cubemap sont spécifiés dans cet ordre : X+, X-, Y+, "
"Y-, Z+, Z-\n"
"# (dans le système de coordonnées de Godot, donc Y+ est \"haut\" et Z- est "
"\"avant\").\n"
"var tableau_cubemap = CubemapArray.new()\n"
"tableau_cubemap.create_from_images(images)\n"
"ResourceSaver.save(tableau_cubemap, \"res://tableau_cubemap.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"[/codeblock]"

msgid ""
"Replaces the existing [Image] data at the given [param layer] with this new "
"image.\n"
"The given [Image] must have the same width, height, image format, and "
"mipmapping flag as the rest of the referenced images.\n"
"If the image format is unsupported, it will be decompressed and converted to "
"a similar and supported [enum Image.Format].\n"
"The update is immediate: it's synchronized with drawing."
msgstr ""
"Remplace les données de l'[Image] existante à la couche [param layer] donnée "
"par cette nouvelle image.\n"
"L'image donnée doit avoir la même largeur, hauteur, format d'image et drapeau "
"de mipmapping que le reste des images référencées.\n"
"Si le format d'image n'est pas supporté, elle sera décompressée et convertie "
"en un [enum Image.Format] similaire et supporté.\n"
"La mise à jour est immédiate : elle est synchronisée avec le dessin."

msgid "Mesh optimized for creating geometry manually."
msgstr "Maillage optimisé pour créer de la géométrie manuellement."

msgid "Using ImmediateMesh"
msgstr "Utilisation d'ImmediateMesh"

msgid "Clear all surfaces."
msgstr "Effacer toutes les surfaces."

msgid "Begin a new surface."
msgstr "Commence une nouvelle surface."

msgid ""
"A [Resource] that contains vertex array-based geometry during the import "
"process."
msgstr ""
"Une [Resource] qui contient une géométrie à base d'un tableau de sommets "
"durant le processus d'import."

msgid ""
"Adds name for a blend shape that will be added with [method add_surface]. "
"Must be called before surface is added."
msgstr ""
"Ajoute le nom d'une blendshape qui sera ajoutée avec [method add_surface]. "
"Doit être appelée avant l'ajout de la surface."

msgid "Removes all surfaces and blend shapes from this [ImporterMesh]."
msgstr "Retire toutes les surfaces et blend shapes de ce [ImporterMesh]."

msgid "Returns the number of blend shapes that the mesh holds."
msgstr "Renvoie le nombre de blend shapes que le maillage contient."

msgid "Returns the blend shape mode for this Mesh."
msgstr "Renvoie le mode de blend shape pour ce Mesh."

msgid ""
"Returns the arrays for the vertices, normals, UVs, etc. that make up the "
"requested surface. See [method add_surface]."
msgstr ""
"Renvoie les tableaux pour les sommets, les normales, les UV, etc. qui "
"composent la surface demandée. Voir [method add_surface]."

msgid "Returns the number of surfaces that the mesh holds."
msgstr "Renvoie le nombre de surfaces que le maillage contient."

msgid "Returns the format of the surface that the mesh holds."
msgstr "Renvoie le format de la surface que le maillage contient."

msgid "Returns the number of lods that the mesh holds on a given surface."
msgstr ""
"Renvoie le nombre de lods que le maillage contient sur une surface donnée."

msgid "Returns the index buffer of a lod for a surface."
msgstr "Renvoie le buffer d'index d'un lod pour une surface."

msgid "Returns the screen ratio which activates a lod for a surface."
msgstr "Renvoie le rapport d'écran qui active un lod pour une surface."

msgid ""
"Returns a [Material] in a given surface. Surface is rendered using this "
"material."
msgstr ""
"Renvoie un [Material] pour une surface donnée. Le rendu de la surface est "
"fait en utilisant ce matériau."

msgid ""
"Returns the primitive type of the requested surface (see [method "
"add_surface])."
msgstr ""
"Renvoie le type de primitive de la surface demandée (voir [method "
"add_surface])."

msgid "Sets the blend shape mode."
msgstr "Définit le mode de blendshape."

msgid ""
"Sets a [Material] for a given surface. Surface will be rendered using this "
"material."
msgstr ""
"Définit un [Material] pour une surface donnée. Le rendu de la surface sera "
"faite utilisant ce matériau."

msgid "A singleton for handling inputs."
msgstr "Un singleton pour gérer les entrées."

msgid ""
"The [Input] singleton handles key presses, mouse buttons and movement, "
"gamepads, and input actions. Actions and their events can be set in the "
"[b]Input Map[/b] tab in [b]Project > Project Settings[/b], or with the "
"[InputMap] class.\n"
"[b]Note:[/b] [Input]'s methods reflect the global input state and are not "
"affected by [method Control.accept_event] or [method "
"Viewport.set_input_as_handled], as those methods only deal with the way input "
"is propagated in the [SceneTree]."
msgstr ""
"Le singleton [Input] gère les pressions de touches, les clics et mouvements "
"de souris, les manettes et les points d'entrées d'actions. Les actions et "
"leurs évènements peuvent être configurés depuis l'onglet [b]Contrôles[/b] "
"dans [b]Projet > Paramètres du projet...[/b], ou avec la classe [InputMap].\n"
"[b]Note:[/b] Les méthodes d'[Input] reflètent l'état général des entrées et "
"ne sont pas altérées par [method Control.accept_event] ou [method "
"Viewport.set_input_as_handled], étant donné que ces méthodes ne s'occupent "
"que de la manière dont les entrées sont propagées dans le [SceneTree]."

msgid "Inputs documentation index"
msgstr "Index de la documentation sur les entrées"

msgid ""
"This will simulate pressing the specified action.\n"
"The strength can be used for non-boolean actions, it's ranged between 0 and 1 "
"representing the intensity of the given action.\n"
"[b]Note:[/b] This method will not cause any [method Node._input] calls. It is "
"intended to be used with [method is_action_pressed] and [method "
"is_action_just_pressed]. If you want to simulate [code]_input[/code], use "
"[method parse_input_event] instead."
msgstr ""
"Cela simulera la pression de l'action spécifiée.\n"
"La force peut être utilisée pour les actions non-booléennes, elle est "
"comprise entre 0 et 1 et représente l'intensité de l'action donnée.\n"
"[b]Note :[/b] Cette méthode ne causera aucun appel à [method Node._input]. Il "
"est destiné à être utilisé avec [method is_action_pressed] et [method "
"is_action_just_pressed]. Si vous voulez simuler [code]_input[/code], utilisez "
"plutôt [method parse_input_event]."

msgid "If the specified action is already pressed, this will release it."
msgstr "Si l'action spécifiée est déjà pressé, elle sera relâchée."

msgid ""
"Adds a new mapping entry (in SDL2 format) to the mapping database. Optionally "
"update already connected devices."
msgstr ""
"Ajoute une nouvelle entrée d'association (en format SDL2) à la base de "
"données d'association. Met à jour optionnellement les appareils déjà "
"connectés."

msgid ""
"Sends all input events which are in the current buffer to the game loop. "
"These events may have been buffered as a result of accumulated input ([member "
"use_accumulated_input]) or agile input flushing ([member "
"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
"The engine will already do this itself at key execution points (at least once "
"per frame). However, this can be useful in advanced cases where you want "
"precise control over the timing of event handling."
msgstr ""
"Envoie tous les événements d'entrée qui sont dans le buffer actuel à la "
"boucle de jeu. Ces événements ont peut-être été mis dans le buffer à la suite "
"de d'entrées accumulées ([member use_accumulated_input]) ou d'évacuation "
"d'entrée agile ([member ProjectSettings.input_devices/buffering/"
"agile_event_flushing]).\n"
"Le moteur le fera déjà aux points d'exécution clés (au moins une fois par "
"trame). Cependant, cela peut être utile dans les cas avancés où vous voulez "
"un contrôle précis sur le moment de la manipulation des événements."

msgid ""
"Returns the acceleration in m/s² of the device's accelerometer sensor, if the "
"device has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor even "
"when your device has an accelerometer. You must export your project to a "
"supported device to read values from the accelerometer.\n"
"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
"it always returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_accelerometer] must be enabled."
msgstr ""
"Renvoie l'accélération en m/s2 de l'accéléromètre de l'appareil, si "
"l'appareil en a un. Sinon, la méthode renvoie [constant Vector3.ZERO].\n"
"Notez que cette méthode renvoie un [Vector3] vide lors de l'exécution dans "
"l'éditeur même lorsque votre appareil a un accéléromètre. Vous devez exporter "
"votre projet vers un appareil supporté pour lire les valeurs de "
"l'accéléromètre.\n"
"[b]Note :[/b] Cette méthode ne fonctionne que sur Android et iOS. Sur "
"d'autres plateformes, elle renvoie toujours [constant Vector3.ZERO].\n"
"[b]Note :[/b] Sur Android, [member ProjectSettings.input_devices/sensors/"
"enable_accelerometer] doit être activé."

msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use [method "
"get_action_strength] instead.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Renvoie une valeur entre 0 et 1 représentant l'intensité brute de l'action "
"donnée, ignorant la zone morte de l'action. Dans la plupart des cas, vous "
"devriez utiliser [method get_action_strength] à la place.\n"
"Si [param exact_match] vaut [code]false[/code], ignore les modificateurs "
"d'entrée supplémentaires pour les évènements [InputEventKey] et "
"[InputEventMouseButton], et la direction pour les évènements "
"[InputEventJoypadMotion]."

msgid ""
"Returns a value between 0 and 1 representing the intensity of the given "
"action. In a joypad, for example, the further away the axis (analog sticks or "
"L2, R2 triggers) is from the dead zone, the closer the value will be to 1. If "
"the action is mapped to a control that has no axis such as the keyboard, the "
"value returned will be 0 or 1.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Renvoie une valeur entre 0 et 1 représentant l'intensité de l'action donnée. "
"Sur une manette, par exemple, le plus loin l'axe (stick analogiques ou "
"gâchettes L2, R2) est de la zone morte, plus la valeur sera proche de 1. Si "
"l'action est associée à un contrôle qui n'a pas d'axe tel que le clavier, la "
"valeur renvoyée sera de 0 ou 1.\n"
"Si [param exact_match] vaut [code]false[/code], ignore les modificateurs "
"d'entrée supplémentaires pour les évènements [InputEventKey] et "
"[InputEventMouseButton], et la direction pour les évènements "
"[InputEventJoypadMotion]."

msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing "
"[code]Input.get_action_strength(\"positive_action\") - "
"Input.get_action_strength(\"negative_action\")[/code]."
msgstr ""
"Obtient l'entrée de l'axe en spécifiant deux actions, une négative et une "
"positive.\n"
"C'est un raccourci pour écrire "
"[code]Input.get_action_strength(\"action_positive\") - "
"Input.get_action_strength(\"action_negative\")[/code]."

msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
"Renvoie un [Array] contenant les identifiants de tous les manettes "
"actuellement connectées."

msgid "Returns the currently assigned cursor shape."
msgstr "Renvoie la forme du curseur actuellement assignée."

msgid ""
"Returns the gravity in m/s² of the device's accelerometer sensor, if the "
"device has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
"it always returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_gravity] must be enabled."
msgstr ""
"Renvoie la gravité en m/s² de l'accéléromètre de l'appareil, si l'appareil en "
"a un. Sinon, la méthode renvoie [constant Vector3.ZERO].\n"
"[b]Note :[/b] Cette méthode ne fonctionne que sur Android et iOS. Sur les "
"autres plateformes, elle renvoie toujours [constant Vector3.ZERO].\n"
"[b]Note :[/b] Sur Android, [member ProjectSettings.input_devices/sensors/"
"enable_gravity] doit être activé."

msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
"[constant Vector3.ZERO].\n"
"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
"it always returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_gyroscope] must be enabled."
msgstr ""
"Renvoie la vitesse de rotation en rad/s autour des axes X, Y et Z du "
"gyroscope d'un appareil, si l'appareil en a un. Sinon, la méthode renvoie "
"[constant Vector3.ZERO].\n"
"[b]Note :[/b] Cette méthode ne fonctionne que sur Android et iOS. Sur les "
"autres plateformes, elle renvoie toujours [constant Vector3.ZERO].\n"
"[b]Note :[/b] Pour Android, [member ProjectSettings.input_devices/sensors/"
"enable_gyroscope] doit être activé."

msgid "Returns the current value of the joypad axis at index [param axis]."
msgstr "Renvoie la valeur actuelle de l'axe de manette à l'index [param axis]."

msgid "Returns the duration of the current vibration effect in seconds."
msgstr "Renvoie la durée de l'effet de vibration actuel en secondes."

msgid ""
"Returns the strength of the joypad vibration: x is the strength of the weak "
"motor, and y is the strength of the strong motor."
msgstr ""
"Renvoie la force de la vibration de la manette : x est la force du moteur "
"faible, et y est la force du moteur fort."

msgid ""
"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
"for debugging on devices without a hardware sensor, for example in an editor "
"on a PC.\n"
"[b]Note:[/b] This value can be immediately overwritten by the hardware sensor "
"value on Android and iOS."
msgstr ""
"Définit la valeur du champ magnétique du capteur magnétique. Peut être "
"utilisé pour du débogage sur des appareils sans capteur matériel, par exemple "
"dans un éditeur sur un PC.\n"
"[b]Note :[/b] Cette valeur peut être immédiatement écrasée par la valeur du "
"capteur matériel sur Android et iOS."

msgid "Controls the mouse mode."
msgstr "Contrôle le mode de souris."

msgid "Emitted when a joypad device has been connected or disconnected."
msgstr "Émis quand un contrôleur a été connecté ou déconnecté."

msgid "Arrow cursor. Standard, default pointing cursor."
msgstr "Le curseur flèche. Le pointeur standard."

msgid ""
"I-beam cursor. Usually used to show where the text cursor will appear when "
"the mouse is clicked."
msgstr ""
"Le curseur poutre en I. Sert en général à afficher où le curseur de texte "
"sera placé quand la souris sera cliquée."

msgid ""
"Pointing hand cursor. Usually used to indicate the pointer is over a link or "
"other interactable item."
msgstr ""
"Le curseur avec la main. Utilisé en général quand le curseur survole un lien "
"ou un élément interactif."

msgid ""
"Cross cursor. Typically appears over regions in which a drawing operation can "
"be performed or for selections."
msgstr ""
"Le curseur en croix. Utilisé typiquement pour les régions où l'on peut "
"dessiner, ou pour les sélections."

msgid ""
"Wait cursor. Indicates that the application is busy performing an operation, "
"and that it cannot be used during the operation (e.g. something is blocking "
"its main thread)."
msgstr ""
"Le curseur d'attente. Indique que l'application est occupée à effectuer une "
"opération, et qu'elle ne peut pas être utilisée pendant l'opération (par "
"exemple, quelque chose bloque son fil principal)."

msgid ""
"Can drop cursor. Usually displayed when dragging something to indicate that "
"it can be dropped at the current position."
msgstr ""
"Le curseur pour déposer. Permet d'afficher une destination pour le déposer-"
"glisser si l'emplacement survolé permet de déposer l'élément glissé."

msgid ""
"Forbidden cursor. Indicates that the current action is forbidden (for "
"example, when dragging something) or that the control at a position is "
"disabled."
msgstr ""
"Le curseur d'interdiction. Indique que l'action actuelle est interdite (par "
"ex. : en déplaçant un élément) ou que le contrôle à cette position est "
"désactivé."

msgid ""
"Vertical resize mouse cursor. A double-headed vertical arrow. It tells the "
"user they can resize the window or the panel vertically."
msgstr ""
"Le curseur de redimensionnement vertical. Une flèche à double tête. Elle "
"précise qu'une fenêtre ou qu'un panneau peut être redimensionné verticalement."

msgid ""
"Horizontal resize mouse cursor. A double-headed horizontal arrow. It tells "
"the user they can resize the window or the panel horizontally."
msgstr ""
"Le curseur de redimensionnement horizontal. Une flèche à double tête. Elle "
"précise qu'une fenêtre ou qu'un panneau peut être redimensionné "
"horizontalement."

msgid ""
"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
"from the bottom left to the top right. It tells the user they can resize the "
"window or the panel both horizontally and vertically."
msgstr ""
"Le curseur de redimensionnement de fenêtre. Une flèche à double tête du bas "
"gauche vers le haut droit. Elle précise qu'une fenêtre ou qu'un panneau peut "
"être redimensionné horizontalement et verticalement."

msgid ""
"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
"from the top left to the bottom right, the opposite of [constant "
"CURSOR_BDIAGSIZE]. It tells the user they can resize the window or the panel "
"both horizontally and vertically."
msgstr ""
"Le curseur de redimensionnement de fenêtre. Une flèche à double tête du haut "
"gauche vers le bas droit, l'inverse de [constant CURSOR_BDIAGSIZE]. Elle "
"précise qu'une fenêtre ou qu'un panneau peut être redimensionné "
"horizontalement et verticalement."

msgid "Move cursor. Indicates that something can be moved."
msgstr "Le curseur de déplacement. Indique que quelque chose peut être déplacé."

msgid ""
"Vertical split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_VSIZE]."
msgstr ""
"Le curseur de séparation verticale. Permet de déplacer la séparation "
"horizontale entre deux vues. Sous Windows, c'est pareil que [constant "
"CURSOR_VSIZE]."

msgid ""
"Horizontal split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_HSIZE]."
msgstr ""
"Le curseur de séparation horizontale. Permet de déplacer la séparation "
"verticale entre deux vues. Sous Windows, c'est pareil que [constant "
"CURSOR_HSIZE]."

msgid "Help cursor. Usually a question mark."
msgstr "Le curseur d'aide. Généralement un point d'interrogation."

msgid "Abstract base class for input events."
msgstr "Classe de base abstraite pour les événements d'entrée."

msgid ""
"Abstract base class of all types of input events. See [method Node._input]."
msgstr ""
"Classe de base abstraite de tous les types d'événements d'entrée. Voir "
"[method Node._input]."

msgid "Using InputEvent"
msgstr "Utilisation d'InputEvent"

msgid ""
"Returns [code]true[/code] if the given input event and this input event can "
"be added together (only for events of type [InputEventMouseMotion]).\n"
"The given input event's position, global position and speed will be copied. "
"The resulting [code]relative[/code] is a sum of both events. Both events' "
"modifiers have to be identical."
msgstr ""
"Renvoie [code]true[/code] si l'événement d'entrée donné et cet événement "
"d'entrée peuvent être ajoutés ensemble (seulement pour les événements de type "
"[InputEventMouseMotion]).\n"
"La position, la position globale et la vitesse de l'événement d'entrée donné "
"seront copiées. La propriété [code]relative[/code] résultante est une somme "
"des deux événements. Les modificateurs des deux événements doivent être "
"identiques."

msgid "Returns a [String] representation of the event."
msgstr "Renvoie une représentation [String] de l'évènement."

msgid ""
"Returns a value between 0.0 and 1.0 depending on the given actions' state. "
"Useful for getting the value of events of type [InputEventJoypadMotion].\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Renvoie une valeur entre 0,0 et 1,0 selon l'état de l'action donnée. Utile "
"pour obtenir la valeur des événements du type [InputEventJoypadMotion].\n"
"Si [param exact_match] vaut [code]false[/code], ignore les modificateurs "
"d'entrée supplémentaires pour les évènements [InputEventKey] et "
"[InputEventMouseButton], et la direction pour les évènements "
"[InputEventJoypadMotion]."

msgid ""
"Returns [code]true[/code] if this input event matches a pre-defined action of "
"any type.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Renvoie [code]true[/code] si cet événement d'entrée correspond à une action "
"prédéfinie de n'importe quel type.\n"
"Si [param exact_match] vaut [code]false[/code], ignore les modificateurs "
"d'entrée supplémentaires pour les évènements [InputEventKey] et "
"[InputEventMouseButton], et la direction pour les évènements "
"[InputEventJoypadMotion]."

msgid "An input event type for actions."
msgstr "Un type d’évènement d’entrée pour les actions."

msgid "Using InputEvent: Actions"
msgstr "Utiliser InputEvent : les actions"

msgid ""
"The local gesture position relative to the [Viewport]. If used in [method "
"Control._gui_input], the position is relative to the current [Control] that "
"received this gesture."
msgstr ""
"La position locale du geste par rapport au [Viewport]. Si utilisé dans "
"[method Control._gui_input], la position est relative au [Control] actuel qui "
"a reçu ce geste."

msgid ""
"Input event type for gamepad buttons. For gamepad analog sticks and "
"joysticks, see [InputEventJoypadMotion]."
msgstr ""
"Type d'événement d'entrée pour boutons de manette. Pour les sticks "
"analogiques de manette et les joysticks, voir [InputEventJoypadMotion]."

msgid "Button identifier. One of the [enum JoyButton] button constants."
msgstr "Identifiant de bouton. Une des constantes de bouton [enum JoyButton]."

msgid ""
"If [code]true[/code], the button's state is pressed. If [code]false[/code], "
"the button's state is released."
msgstr ""
"Si [code]true[/code], l'état du bouton est appuyé. Si [code]false[/code], "
"l'état du bouton est relâché."

msgid "Axis identifier."
msgstr "Identifiant d'axe."

msgid ""
"Current position of the joystick on the given axis. The value ranges from "
"[code]-1.0[/code] to [code]1.0[/code]. A value of [code]0[/code] means the "
"axis is in its resting position."
msgstr ""
"Position actuelle du joystick sur l'axe donné. La valeur varie de [code]-1.0[/"
"code] à [code]1.0[/code]. Une valeur de [code]0[/code] signifie que l'axe est "
"dans sa position de repos."

msgid ""
"If [code]true[/code], the key's state is pressed. If [code]false[/code], the "
"key's state is released."
msgstr ""
"Si [code]true[/code], l’état de la clé est pressé. Si [code]false[/code], "
"l’état de la clé est libéré."

msgid "Wikipedia General MIDI Instrument List"
msgstr "Liste d'instruments General MIDI de Wikipédia"

msgid "Wikipedia Piano Key Frequencies List"
msgstr "La liste des fréquences des touches de piano sur Wikipédia"

msgid "Base input event type for mouse events."
msgstr "Type d’événement d’entrée de base pour les événements de la souris."

msgid "Stores general information about mouse events."
msgstr "Stocke des informations générales sur des événements de la souris."

msgid "Mouse and input coordinates"
msgstr "Les coordonnées de la souris"

msgid "If [code]true[/code], the mouse button's state is a double-click."
msgstr "Si [code]true[/code], l’état du bouton de la souris est un double-clic."

msgid ""
"The amount (or delta) of the event. When used for high-precision scroll "
"events, this indicates the scroll amount (vertical or horizontal). This is "
"only supported on some platforms; the reported sensitivity varies depending "
"on the platform. May be [code]0[/code] if not supported."
msgstr ""
"Le montant (ou delta) de l'événement. Lorsqu'il est utilisé pour les "
"événements de défilement de haute précision, cela indique la quantité de "
"défilement (vertical ou horizontal). Cela n'est supporté que sur certaines "
"plateformes, la sensibilité rapportée varie selon la plateforme. Peut être "
"[code]0[/code] si elle n'est pas supportée."

msgid ""
"If [code]true[/code], the mouse button's state is pressed. If [code]false[/"
"code], the mouse button's state is released."
msgstr ""
"Si [code]true[/code], le bouton de la souris est appuyé. Si [code]false[/"
"code], le bouton de la souris est relâché."

msgid ""
"Returns [code]true[/code] when using the eraser end of a stylus pen.\n"
"[b]Note:[/b] This property is implemented on Linux, macOS and Windows."
msgstr ""
"Renvoie [code]true[/code] lors de l'utilisation de la gomme (l'autre "
"extrémité) d'un stylet.\n"
"[b]Note :[/b] Cette méthode est implémentée sous Linux, macOS et Windows."

msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
"Représente la pression que l'utilisateur applique sur le stylo. Va de "
"[code]0.0[/code] à [code]1.0[/code]."

msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
"toward the user. Ranges from [code]-1.0[/code] to [code]1.0[/code] for both "
"axes."
msgstr ""
"Représente les angles d'inclinaison du stylo. Une valeur en X positive "
"indique une inclinaison à droite. Une valeur en Y positive indique une "
"inclinaison vers l'utilisateur. Va de [code]-1.0[/code] à [code]1.0[/code] "
"pour les deux axes."

msgid "The drag event index in the case of a multi-drag event."
msgstr ""
"L'index de l'événement de glissage dans le cas d'un événement de plusieurs "
"glissages."

msgid ""
"The touch index in the case of a multi-touch event. One index = one finger."
msgstr ""
"L'index du touché dans le cas d'un événement de multi-touch. Un index = un "
"doigt (un point de contact)."

msgid ""
"If [code]true[/code], the touch's state is pressed. If [code]false[/code], "
"the touch's state is released."
msgstr ""
"Si [code]true[/code], l'état du toucher est appuyé. Si [code]false[/code], "
"l'état du toucher est relâché."

msgid "State of the [kbd]Alt[/kbd] modifier."
msgstr "L'état du modificateur [kbd]Alt[/kbd]."

msgid "State of the [kbd]Ctrl[/kbd] modifier."
msgstr "L'état du modificateur [kbd]Ctrl[/kbd] (Contrôle)."

msgid "State of the [kbd]Shift[/kbd] modifier."
msgstr "L'état du modificateur [kbd]Shift[/kbd] (Majuscule)."

msgid "A singleton that manages all [InputEventAction]s."
msgstr "Un singleton qui gère tous les [InputEventAction]s."

msgid "Using InputEvent: InputMap"
msgstr "Utiliser InputEvent : InputMap"

msgid ""
"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
msgstr ""
"Ajoute un [InputEvent] à une action. Cet [InputEvent] déclenchera l'action."

msgid "Removes an [InputEvent] from an action."
msgstr "Retire un [InputEvent] d'une action."

msgid "Removes all events from an action."
msgstr "Retire tous les événements d'une action."

msgid ""
"Returns an array of [InputEvent]s associated with a given action.\n"
"[b]Note:[/b] When used in the editor (e.g. a tool script or [EditorPlugin]), "
"this method will return events for the editor action. If you want to access "
"your project's input binds from the editor, read the [code]input/*[/code] "
"settings from [ProjectSettings]."
msgstr ""
"Renvoie un tableau d'[InputEvent]s associés à une action donnée.\n"
"[b]Note :[/b] Lorsqu'utilisé dans l'éditeur (par exemple un script outil ou "
"[EditorPlugin]), cette méthode renverra les événements pour l'action de "
"l'éditeur. Si vous souhaitez accéder aux liaisons des entrées de votre projet "
"depuis l'éditeur, lisez les paramètres [code]input/*[/code] de "
"[ProjectSettings]."

msgid ""
"Returns [code]true[/code] if the action has the given [InputEvent] associated "
"with it."
msgstr ""
"Renvoie [code]true[/code] si l'action est associée au [InputEvent] spécifié."

msgid "Sets a deadzone value for the action."
msgstr "Définit une valeur pour la zone morte de l'action."

msgid "Removes an action from the [InputMap]."
msgstr "Retirer une action de [InputMap]."

msgid "Returns the human-readable description of the given action."
msgstr "Renvoie la description facilement lisible de l'action donnée."

msgid "Returns an array of all actions in the [InputMap]."
msgstr "Renvoie la liste de toutes les actions dans l'[InputMap]."

msgid ""
"Clears all [InputEventAction] in the [InputMap] and load it anew from "
"[ProjectSettings]."
msgstr ""
"Efface toutes les [InputEventAction] dans le [InputMap] et les rechargent "
"depuis les [ProjectSettings]."

msgid "Placeholder for the root [Node] of a [PackedScene]."
msgstr "Le nœud fictif pour le [Node] racine de la [PackedScene]."

msgid "A built-in type for integers."
msgstr "Un type intégré pour les entiers."

msgid ""
"Signed 64-bit integer type. This means that it can take values from "
"[code]-2^63[/code] to [code]2^63 - 1[/code], i.e. from "
"[code]-9223372036854775808[/code] to [code]9223372036854775807[/code]. When "
"it exceeds these bounds, it will wrap around.\n"
"[int]s can be automatically converted to [float]s when necessary, for example "
"when passing them as arguments in functions. The [float] will be as close to "
"the original integer as possible.\n"
"Likewise, [float]s can be automatically converted into [int]s. This will "
"truncate the [float], discarding anything after the floating-point.\n"
"[b]Note:[/b] In a boolean context, an [int] will evaluate to [code]false[/"
"code] if it equals [code]0[/code], and to [code]true[/code] otherwise.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x: int = 1 # x is 1\n"
"x = 4.2 # x is 4, because 4.2 gets truncated\n"
"var max_int = 9223372036854775807 # Biggest value an int can store\n"
"max_int += 1 # max_int is -9223372036854775808, because it wrapped around\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 1; // x is 1\n"
"x = (int)4.2; // x is 4, because 4.2 gets truncated\n"
"// We use long below, because GDScript's int is 64-bit while C#'s int is 32-"
"bit.\n"
"long maxLong = 9223372036854775807; // Biggest value a long can store\n"
"maxLong++; // maxLong is now -9223372036854775808, because it wrapped "
"around.\n"
"\n"
"// Alternatively with C#'s 32-bit int type, which has a smaller maximum "
"value.\n"
"int maxInt = 2147483647; // Biggest value an int can store\n"
"maxInt++; // maxInt is now -2147483648, because it wrapped around\n"
"[/csharp]\n"
"[/codeblocks]\n"
"You can use the [code]0b[/code] literal for binary representation, the "
"[code]0x[/code] literal for hexadecimal representation, and the [code]_[/"
"code] symbol to separate long numbers and improve readability.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x = 0b1001 # x is 9\n"
"var y = 0xF5 # y is 245\n"
"var z = 10_000_000 # z is 10000000\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 0b1001; // x is 9\n"
"int y = 0xF5; // y is 245\n"
"int z = 10_000_000; // z is 10000000\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Type d'entier 64 bits signé. Cela signifie qu'il peut prendre des valeurs de "
"[code]-2^63[/code] à [code]2^63 - 1[/code], c'est-à-dire de "
"[code]-9223372036854775808[/code] à [code]9223372036854775807[/code]. Quand "
"il dépassera ces limites, il rebouclera.\n"
"Les [int]s peut être automatiquement converti en [float]s lorsque cela est "
"nécessaire, par exemple lors du passage comme arguments dans des fonctions. "
"Le [float] sera le plus proche possible de l'entier original.\n"
"De même, les [float]s peuvent être automatiquement convertis en [int]s. Cela "
"tronquera le [float], défaussant n'importe quoi après la virgule flottante.\n"
"[b]Note :[/b] Dans un contexte booléen, un [int] évaluera à [code]false[/"
"code] s'il est égal à [code]0[/code], et à [code]true[/code] autrement.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x: int = 1 # x vaut 1\n"
"x = 4.2 # x vaut 4, car 4.2 est tronqué\n"
"var entier_max = 9223372036854775807 # La plus grande valeur qu'un int peut "
"stocker\n"
"entier_max += 1 # entier_max vaut maintenant -9223372036854775808 (la plus "
"petite valeur), car il a rebouclé\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 1; // x vaut 1\n"
"x = (int)4.2; // x vaut 4, car 4.2 est tronqué\n"
"// Nous utilisons le type long ci-dessous, car le int de GDScript est sur 64 "
"bits, alors que celui de C# est sur 32\n"
"long longMax = 9223372036854775807; // La plus grande valeur qu'un long peut "
"stocker\n"
"longMax++; // longMax vaut maintenant -9223372036854775808 (la plus petite "
"valeur), car il a rebouclé\n"
"\n"
"// Sinon avec le type int de C# sur 32 bits, qui a une plus petite valeur "
"maximale.\n"
"int intMax= 2147483647; // La plus grande valeur qu'un int peut stocker\n"
"intMax++; // longMax vaut maintenant -2147483648 (la plus petite valeur), car "
"il a rebouclé\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Vous pouvez utiliser le littéral [code]0b[/code] pour la représentation "
"binaire, le littéral [code]0x[/code] pour la représentation hexadécimale et "
"le symbole [code]_[/code] pour séparer les nombres longs et améliorer la "
"lisibilité.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x = 0b1001 # x vaut 9\n"
"var y = 0xF5 # y vaut 245\n"
"var z = 10_000_000 # z vaut 10000000\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 0b1001; // x vaut 9\n"
"int y = 0xF5; // y vaut 245\n"
"int z = 10_000_000; // z vaut 10000000\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Constructs an [int] set to [code]0[/code]."
msgstr "Construit un entier [int] défini à [code]0[/code]."

msgid "Constructs an [int] as a copy of the given [int]."
msgstr "Construit un entier [int] comme copie de l'entier [int] donné."

msgid ""
"Constructs a new [int] from a [String], following the same rules as [method "
"String.to_int]."
msgstr ""
"Construit un nouveau [int] à partir d'un [String], en suivant les mêmes "
"règles que [method String.to_int]."

msgid ""
"Constructs a new [int] from a [bool]. [code]true[/code] is converted to "
"[code]1[/code] and [code]false[/code] is converted to [code]0[/code]."
msgstr ""
"Construit un nouvel entier [int] depuis un [bool]. [code]true[/code] est "
"converti en [code]1[/code]et [code]false[/code] est converti en [code]0[/"
"code]."

msgid ""
"Constructs a new [int] from a [float]. This will truncate the [float], "
"discarding anything after the floating point."
msgstr ""
"Construit un nouveau [int] à partir d'un [String]. Cela tronquera le [float], "
"défaussant tout ce qui se trouve après la virgule flottante."

msgid "Returns [code]true[/code] if the [int] is not equivalent to the [float]."
msgstr "Renvoie [code]true[/code] si le [int] n'est pas équivalent au [float]."

msgid "Returns [code]true[/code] if the [int]s are not equal."
msgstr "Renvoie [code]true[/code] si les entiers [int] ne sont pas égaux."

msgid ""
"Returns the remainder after dividing two [int]s. Uses truncated division, "
"which returns a negative number if the dividend is negative. If this is not "
"desired, consider using [method @GlobalScope.posmod].\n"
"[codeblock]\n"
"print(6 % 2) # Prints 0\n"
"print(11 % 4) # Prints 3\n"
"print(-5 % 3) # Prints -2\n"
"[/codeblock]"
msgstr ""
"Renvoie le reste après avoir divisé deux [int]. Utilise la division tronquée, "
"qui renvoie un nombre négatif si le dividende est négatif. Si cela n'est pas "
"souhaité, envisagez d'utiliser [method @GlobalScope.posmod].\n"
"[codeblock]\n"
"print(6 % 2) # Affiche 0\n"
"print(11 % 4) # Affiche 3\n"
"print(-5 % 3) # Affiche -2\n"
"[/codeblock]"

msgid ""
"Performs the bitwise [code]AND[/code] operation.\n"
"[codeblock]\n"
"print(0b1100 & 0b1010) # Prints 8 (binary 1000)\n"
"[/codeblock]\n"
"This is useful for retrieving binary flags from a variable.\n"
"[codeblock]\n"
"var flags = 0b101\n"
"# Check if the first or second bit are enabled.\n"
"if flags & 0b011:\n"
"\tdo_stuff() # This line will run.\n"
"[/codeblock]"
msgstr ""
"Effectue l'opération par bit [code]AND[/code].\n"
"[codeblock]\n"
"print(0b1100 & 0b1010) # Affiche 8 (1000 en binaire)\n"
"[/codeblock]\n"
"Ceci est utile pour récupérer les drapeaux binaires d'une variable.\n"
"[codeblock]\n"
"var drapeaux = 0b101\n"
"# Vérifier si le premier ou le second bit est actif.\n"
"if drapeaux & 0b011:\n"
"\tdo_stuff() # Cette ligne va s'exécuter\n"
"[/codeblock]"

msgid "Multiplies each component of the [Color] by the [int]."
msgstr ""
"Multiplie chaque composante de la couleur [Color] par l'entier [int] donné."

msgid ""
"Multiplies each component of the [Quaternion] by the [int]. This operation is "
"not meaningful on its own, but it can be used as a part of a larger "
"expression."
msgstr ""
"Multiplie chaque composante du [Quaternion] par l'entier [int] donné. Cette "
"opération ne veut rien dire seule, mais peut-être utilisée comme partie d'une "
"plus grande expression."

msgid ""
"Multiplies each component of the [Vector2] by the [int].\n"
"[codeblock]\n"
"print(2 * Vector2(1, 4)) # Prints (2, 8)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector2] par l'entier [int] donné.\n"
"[codeblock]\n"
"print(2 * Vector2(1, 4)) # Affiche (2, 8)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector2i] by the [int]."
msgstr "Multiplie chaque composante du [Vector2i] par l'entier [int] donné."

msgid "Multiplies each component of the [Vector3] by the [int]."
msgstr "Multiplie chaque composante du [Vector3] par l'entier [int] donné."

msgid "Multiplies each component of the [Vector3i] by the [int]."
msgstr "Multiplie chaque composante du [Vector3i] par l'entier [int] donné."

msgid "Multiplies each component of the [Vector4] by the [int]."
msgstr "Multiplie chaque composante du [Vector4] par l'entier [int]."

msgid "Multiplies each component of the [Vector4i] by the [int]."
msgstr "Multiplie chaque composante du [Vector4i] par l'entier [int]."

msgid "Multiplies the [float] by the [int]. The result is a [float]."
msgstr "Multiplie un [float] par l'[int]. Le résultat est un [float]."

msgid "Multiplies the two [int]s."
msgstr "Multiplie les deux [int]s."

msgid ""
"Raises an [int] to a power of a [float]. The result is a [float].\n"
"[codeblock]\n"
"print(2 ** 0.5) # Prints 1.4142135623731\n"
"[/codeblock]"
msgstr ""
"Élève un [int] à la puissance d'un [float]. Le résultat est un [float].\n"
"[codeblock]\n"
"print(2 ** 0.5) # Affiche 1.4142135623731\n"
"[/codeblock]"

msgid ""
"Raises the left [int] to a power of the right [int].\n"
"[codeblock]\n"
"print(3 ** 4) # Prints 81\n"
"[/codeblock]"
msgstr ""
"Élève un [int] de gauche à la puissance du [float] de droite.\n"
"[codeblock]\n"
"print(3 ** 4) # Affiche 81\n"
"[/codeblock]"

msgid "Adds the [int] and the [float]. The result is a [float]."
msgstr "Ajoute le [int] et le [float]. Le résultat est un [float]."

msgid "Adds the two [int]s."
msgstr "Additionne les deux [int]s."

msgid "Subtracts the [float] from the [int]. The result is a [float]."
msgstr "Soustrait le [float] du [int]. Le résultat est un [float]."

msgid "Subtracts the two [int]s."
msgstr "Soustrait les deux [int]s."

msgid ""
"Divides the [int] by the [float]. The result is a [float].\n"
"[codeblock]\n"
"print(10 / 3.0) # Prints 3.33333333333333\n"
"[/codeblock]"
msgstr ""
"Divise le [int] par le [float]. Le résultat est un [float].\n"
"[codeblock]\n"
"print(10 / 3.0) # Affiche 3.333333333333333333\n"
"[/codeblock]"

msgid ""
"Divides the two [int]s. The result is an [int]. This will truncate the "
"[float], discarding anything after the floating point.\n"
"[codeblock]\n"
"print(6 / 2) # Prints 3\n"
"print(5 / 3) # Prints 1\n"
"[/codeblock]"
msgstr ""
"Divise les deux [int]s. Le résultat est un [int]. Cela va tronquer le "
"[float], défaussant tout après la virgule flottante.\n"
"[codeblock]\n"
"print(6 / 2) # Affiche 3\n"
"print(5 / 3) # Affiche 1\n"
"[/codeblock]"

msgid "Returns [code]true[/code] if the [int] is less than the [float]."
msgstr "Renvoie [code]true[/code] si l'entier [int] est inférieur au [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is less than the right [int]."
msgstr ""
"Renvoie [code]true[/code] si le [int] de gauche est inférieur au [int] de "
"droite."

msgid ""
"Performs the bitwise shift left operation. Effectively the same as "
"multiplying by a power of 2.\n"
"[codeblock]\n"
"print(0b1010 << 1) # Prints 20 (binary 10100)\n"
"print(0b1010 << 3) # Prints 80 (binary 1010000)\n"
"[/codeblock]"
msgstr ""
"Effectue l'opération de décalage sur la gauche par bit. Effectivement la même "
"chose que la multiplication par une puissance de 2.\n"
"[codeblock]\n"
"print(0b1010 << 1) # Affiche 20 (10100 en binaire)\n"
"print(0b1010 << 3) # Affiche 80 (1010000 en binaire)\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the [int] is less than or equal to the [float]."
msgstr ""
"Renvoie [code]true[/code] si l'entier [int] est inférieur ou égal au [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is less than or equal to the "
"right [int]."
msgstr ""
"Renvoie [code]true[/code] si le [int] de gauche est inférieur ou égal au "
"[int] de droite."

msgid "Returns [code]true[/code] if the [int] is equal to the [float]."
msgstr "Renvoie [code]true[/code] si le [int] est égal au [float]."

msgid "Returns [code]true[/code] if the two [int]s are equal."
msgstr "Renvoie [code]true[/code] si les entiers [int] sont égaux."

msgid "Returns [code]true[/code] if the [int] is greater than the [float]."
msgstr "Renvoie [code]true[/code] si le [int] est supérieur au [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is greater than the right [int]."
msgstr ""
"Renvoie [code]true[/code] si le [int] de gauche est supérieur au [int] de "
"droite."

msgid ""
"Returns [code]true[/code] if the [int] is greater than or equal to the "
"[float]."
msgstr "Renvoie [code]true[/code] si le [int] est supérieur ou égal au [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is greater than or equal to the "
"right [int]."
msgstr ""
"Renvoie [code]true[/code] si le [int] de gauche est supérieur ou égal au "
"[int] de droite."

msgid ""
"Performs the bitwise shift right operation. Effectively the same as dividing "
"by a power of 2.\n"
"[codeblock]\n"
"print(0b1010 >> 1) # Prints 5 (binary 101)\n"
"print(0b1010 >> 2) # Prints 2 (binary 10)\n"
"[/codeblock]"
msgstr ""
"Effectue l'opération de décalage à droite par bits. Effectivement la même "
"chose que la division par une puissance de 2.\n"
"[codeblock]\n"
"print(0b1010 >> 1) # Affiche 5 (101 en binaire)\n"
"print(0b1010 >> 2) # Affiche 2 (10 en binaire)\n"
"[/codeblock]"

msgid ""
"Performs the bitwise [code]XOR[/code] operation.\n"
"[codeblock]\n"
"print(0b1100 ^ 0b1010) # Prints 6 (binary 110)\n"
"[/codeblock]"
msgstr ""
"Effectue l'opération [code]XOR[/code] par bit.\n"
"[codeblock]\n"
"print(0b1100 ^ 0b1010) # Affiche 6 (0110 en binaire)\n"
"[/codeblock]"

msgid ""
"Returns the negated value of the [int]. If positive, turns the number "
"negative. If negative, turns the number positive. If zero, does nothing."
msgstr ""
"Renvoie la valeur négative du [int]. Si positif, rend le nombre négatif. Si "
"négatif, rend le nombre positif. Si zéro, ne fait rien."

msgid ""
"Performs the bitwise [code]OR[/code] operation.\n"
"[codeblock]\n"
"print(0b1100 | 0b1010) # Prints 14 (binary 1110)\n"
"[/codeblock]\n"
"This is useful for storing binary flags in a variable.\n"
"[codeblock]\n"
"var flags = 0\n"
"flags |= 0b101 # Turn the first and third bits on.\n"
"[/codeblock]"
msgstr ""
"Effectue l'opération [code]OR[/code] par bit.\n"
"[codeblock]\n"
"print(0b1100 | 0b1010) # Affiche 14 (1110 en binaire)\n"
"[/codeblock]\n"
"Ceci est utile pour stocker des drapeaux binaires dans une variable.\n"
"[codeblock]\n"
"var drapeaux = 0\n"
"drapeaux |= 0b101 # Allume le premier et le troisième bit\n"
"[/codeblock]"

msgid ""
"Performs the bitwise [code]NOT[/code] operation on the [int]. Due to "
"[url=https://en.wikipedia.org/wiki/Two%27s_complement]2's complement[/url], "
"it's effectively equal to [code]-(int + 1)[/code].\n"
"[codeblock]\n"
"print(~4) # Prints -5\n"
"print(~(-7)) # Prints 6\n"
"[/codeblock]"
msgstr ""
"Effectue l'opération [code]NOT[/code] par bits sur l'[int]. En raison du "
"[url=https://fr.wikipedia.org/wiki/Compl%C3%A9ment_%C3%A0_deux]complément à "
"2[/url], c'est effectivement égal à [code]-(int + 1)[/code].\n"
"[codeblock]\n"
"print(~4) # Affiche -5\n"
"print(~(-7)) # Affiche 6\n"
"[/codeblock]"

msgid "Internet protocol (IP) support functions such as DNS resolution."
msgstr ""
"Le protocole internet (IP) supporte des fonctionnalités comme la résolution "
"DNS."

msgid ""
"IP contains support functions for the Internet Protocol (IP). TCP/IP support "
"is in different classes (see [StreamPeerTCP] and [TCPServer]). IP provides "
"DNS hostname resolution support, both blocking and threaded."
msgstr ""
"IP contient des fonctions de support pour le Protocole Internet (IP). Le "
"support TCP/IP est dans différentes classes (voir [StreamPeerTCP] et "
"[TCPServer]). IP fournit le support de résolution DNS du nom d'hôte, à la "
"fois bloquant et sur un thread."

msgid ""
"Removes all of a [param hostname]'s cached references. If no [param hostname] "
"is given, all cached IP addresses are removed."
msgstr ""
"Enlève toutes les références en cache d'un hôte [param hostname]. Si aucun "
"[param hostname] n'est donné, toutes les adresses IP mises en cache sont "
"supprimées."

msgid ""
"Removes a given item [param id] from the queue. This should be used to free a "
"queue after it has completed to enable more queries to happen."
msgstr ""
"Retire un élément donné [param id] de la file d'attente. Ceci devrait être "
"utilisé pour libérer une file après qu'elle ait terminé pour permettre à plus "
"de requêtes d'arriver."

msgid "Returns all the user's current IPv4 and IPv6 addresses as an array."
msgstr ""
"Renvoie toutes les actuelles adresses IPv4 et IPv6 de l'utilisateur en un "
"tableau."

msgid ""
"Returns all network adapters as an array.\n"
"Each adapter is a dictionary of the form:\n"
"[codeblock]\n"
"{\n"
"\t\"index\": \"1\", # Interface index.\n"
"\t\"name\": \"eth0\", # Interface name.\n"
"\t\"friendly\": \"Ethernet One\", # A friendly name (might be empty).\n"
"\t\"addresses\": [\"192.168.1.101\"], # An array of IP addresses associated "
"to this interface.\n"
"}\n"
"[/codeblock]"
msgstr ""
"Renvoie tous les adaptateurs réseau en tant que tableau.\n"
"Chaque adaptateur est un dictionnaire de la forme :\n"
"[codeblock]\n"
"{\n"
"\t\"index\": \"1\", # Index de l'interface\n"
"\t\"name\": \"eth0\", # Nom de l'interface\n"
"\t\"friendly\": \"Ethernet One\", # Un nom lisible (peut être vide).\n"
"\t\"addresses\": [\"192.168.1.101\"], # Un tableau d'adresses IP associées à "
"cette interface.\n"
"}\n"
"[/codeblock]"

msgid ""
"Returns a queued hostname's IP address, given its queue [param id]. Returns "
"an empty string on error or if resolution hasn't happened yet (see [method "
"get_resolve_item_status])."
msgstr ""
"Renvoie l'adresse IP d'un nom d'hôte dans la file, compte tenu de son "
"identifiant de file [param id]. Renvoie une chaîne vide lors d'une erreur ou "
"si la résolution n'est pas encore arrivée (voir [method "
"get_resolve_item_status])."

msgid ""
"Returns resolved addresses, or an empty array if an error happened or "
"resolution didn't happen yet (see [method get_resolve_item_status])."
msgstr ""
"Renvoie les adresses résolues, ou un tableau vide si une erreur s'est "
"produite ou si la résolution n'a pas encore eu lieu (voir [method "
"get_resolve_item_status])."

msgid ""
"Returns a queued hostname's status as a [enum ResolverStatus] constant, given "
"its queue [param id]."
msgstr ""
"Renvoie le statut d'un nom d'hôte en file d'attente en tant que constante "
"[enum ResolverStatus], compte tenu de son identifiant de file [param id]."

msgid ""
"Returns a given hostname's IPv4 or IPv6 address when resolved (blocking-type "
"method). The address type returned depends on the [enum Type] constant given "
"as [param ip_type]."
msgstr ""
"Renvoie l'adresse IPv4 ou IPv6 d'un nom d'hôte lorsqu'elle est résolue "
"(méthode bloquante). Le type d'adresse renvoyé dépend de la constante [enum "
"Type] donnée comme [param ip_type]."

msgid ""
"Resolves a given hostname in a blocking way. Addresses are returned as an "
"[Array] of IPv4 or IPv6 addresses depending on [param ip_type]."
msgstr ""
"Résout un nom d'hôte donné de manière bloquante. Les adresses sont renvoyées "
"en tant que tableau d'adresses IPv4 ou IPv6 selon [param ip_type]."

msgid ""
"Creates a queue item to resolve a hostname to an IPv4 or IPv6 address "
"depending on the [enum Type] constant given as [param ip_type]. Returns the "
"queue ID if successful, or [constant RESOLVER_INVALID_ID] on error."
msgstr ""
"Crée un élément de file pour résoudre un nom d'hôte vers une adresse IPv4 ou "
"IPv6 en fonction de la constante [enum Type] donnée comme [param ip_type]. "
"Renvoie l'identifiant de la file d'attente si réussi, ou [constant "
"RESOLVER_INVALID_ID] en cas d'erreur."

msgid "DNS hostname resolver status: No status."
msgstr "Statut du résolveur de noms d'hôtes DNS : Aucun statut."

msgid "DNS hostname resolver status: Waiting."
msgstr "Statut du résolveur de noms d'hôtes DNS : En attente."

msgid "DNS hostname resolver status: Done."
msgstr "Statut du résolveur de noms d'hôtes DNS : Fait."

msgid "DNS hostname resolver status: Error."
msgstr "Statut du résolveur de noms d'hôtes DNS : Erreur."

msgid ""
"Maximum number of concurrent DNS resolver queries allowed, [constant "
"RESOLVER_INVALID_ID] is returned if exceeded."
msgstr ""
"Nombre maximal de requêtes de résolution DNS concurrentes permises, [constant "
"RESOLVER_INVALID_ID] est renvoyé si dépassé."

msgid ""
"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
msgstr ""
"La constante pour un identifiant invalide. Retourné si [constant "
"RESOLVER_MAX_QUERIES] est dépassé."

msgid "Address type: None."
msgstr "Type d’adresse : Aucun."

msgid "Address type: Internet protocol version 4 (IPv4)."
msgstr "Type d'adresse : Protocole internet version 4 (IPv4)."

msgid "Address type: Internet protocol version 6 (IPv6)."
msgstr "Type d'adresse : Protocole internet version 6 (IPv6)."

msgid "Address type: Any."
msgstr "Type d'adresse : N'importe laquelle."

msgid "A vertical list of selectable items with one or multiple columns."
msgstr ""
"Une liste verticale d'éléments sélectionnables avec une ou plusieurs colonnes."

msgid ""
"This control provides a vertical list of selectable items that may be in a "
"single or in multiple columns, with each item having options for text and an "
"icon. Tooltips are supported and may be different for every item in the "
"list.\n"
"Selectable items in the list may be selected or deselected and multiple "
"selection may be enabled. Selection with right mouse button may also be "
"enabled to allow use of popup context menus. Items may also be \"activated\" "
"by double-clicking them or by pressing [kbd]Enter[/kbd].\n"
"Item text only supports single-line strings. Newline characters (e.g. [code]"
"\\n[/code]) in the string won't produce a newline. Text wrapping is enabled "
"in [constant ICON_MODE_TOP] mode, but the column's width is adjusted to fully "
"fit its content by default. You need to set [member fixed_column_width] "
"greater than zero to wrap the text.\n"
"All [code]set_*[/code] methods allow negative item indices, i.e. [code]-1[/"
"code] to access the last item, [code]-2[/code] to select the second-to-last "
"item, and so on.\n"
"[b]Incremental search:[/b] Like [PopupMenu] and [Tree], [ItemList] supports "
"searching within the list while the control is focused. Press a key that "
"matches the first letter of an item's name to select the first item starting "
"with the given letter. After that point, there are two ways to perform "
"incremental search: 1) Press the same key again before the timeout duration "
"to select the next item starting with the same letter. 2) Press letter keys "
"that match the rest of the word before the timeout duration to match to "
"select the item in question directly. Both of these actions will be reset to "
"the beginning of the list if the timeout duration has passed since the last "
"keystroke was registered. You can adjust the timeout duration by changing "
"[member ProjectSettings.gui/timers/incremental_search_max_interval_msec]."
msgstr ""
"Ce contrôle fournit une liste verticale d'éléments sélectionnables qui "
"peuvent arrangés en une ou plusieurs colonnes avec pour chaque objet des "
"options de texte et d’icône. Les info-bulles sont supportées et peuvent être "
"différentes pour chaque élément de la liste.\n"
"Les éléments sélectionnables dans la liste peuvent être sélectionnés ou "
"désélectionnés et la sélection multiple peut être activée. La sélection au "
"clic droit peut aussi être activée pour permettre l'utilisation des menus "
"contextuels. Les éléments peuvent aussi être \"activés\" en les double "
"cliquant ou en appuyant sur [kbd]Entrée[/kbd].\n"
"Le texte d'un élément ne supporte que les chaîne de caractères en une ligne. "
"Les caractères de retour à la ligne (par exemple [code]\\n[/code]) dans la "
"chaîne ne produiront pas de retour à la ligne. Le retour à la ligne "
"automatique est activé en mode [constant ICON_MODE_TOP], mais la largeur de "
"la colonne est ajustée pour correspondre au contenu par défaut. Vous devez "
"ajuster [member fixed_column_width] à une valeur plus grande que zéro pour "
"que le texte retourne automatiquement à la ligne.\n"
"Toutes les méthodes [code]set_*[/code] acceptent des indices d'élément "
"négatifs, par exemple [code]-1[/code] pour accéder au dernier élément, "
"[code]-2[/code] pour l'avant dernier, etc.\n"
"[b]Recherche incrémentale :[/b] Comme [PopupMenu] et [Tree], [ItemList] "
"supporte la recherche dans la liste lorsque le contrôle a le focus. Appuyez "
"sur une touche qui correspond à la première lettre d'un élément pour "
"sélectionner le premier élément commençant par cette lettre. Après cela, il y "
"à deux façons d'effectuer une recherche incrémentale : 1) Appuyez sur la même "
"touche avant la fin du délai pour sélectionner l'élément suivant commençant "
"par la même lettre. 2) Entrez les lettres qui correspondent au reste du mot "
"avant la fin du délai pour sélectionner l'élément directement. Ces deux "
"actions seront réinitialisées au début de la liste si le délai a expiré "
"depuis le dernier appui enregistré. Vous pouvez ajuster la longueur du délai "
"en changeant [member ProjectSettings.gui/timers/"
"incremental_search_max_interval_msec]."

msgid ""
"Adds an item to the item list with no text, only an icon. Returns the index "
"of an added item."
msgstr ""
"Ajoute un élément à la liste des éléments, sans texte, seulement une icône. "
"Renvoie l'index d'un article ajouté."

msgid ""
"Adds an item to the item list with specified text. Returns the index of an "
"added item.\n"
"Specify an [param icon], or use [code]null[/code] as the [param icon] for a "
"list item with no icon.\n"
"If [param selectable] is [code]true[/code], the list item will be selectable."
msgstr ""
"Ajoute un élément à la liste d'éléments avec le texte spécifié. Renvoie "
"l'index d'un article ajouté.\n"
"Spécifiez un [param icon], ou utilisez [code]null[/code] comme [param icon] "
"pour un élément de la liste sans icône.\n"
"Si [param selectable] vaut [code]true[/code], l'élément de la liste sera "
"sélectionnable."

msgid "Removes all items from the list."
msgstr "Retire tous les éléments de la liste."

msgid "Ensures the item associated with the specified index is not selected."
msgstr ""
"Assure que l'élément associé à la position donnée n'est pas sélectionné."

msgid "Ensures there are no items selected."
msgstr "S'assure qu'aucun élément n'est sélectionné."

msgid ""
"Ensure current selection is visible, adjusting the scroll position as "
"necessary."
msgstr ""
"S'assure que l'actuelle sélection est visible, en ajustant l'ascenseur si "
"nécessaire."

msgid ""
"Forces an update to the list size based on its items. This happens "
"automatically whenever size of the items, or other relevant settings like "
"[member auto_height], change. The method can be used to trigger the update "
"ahead of next drawing pass."
msgstr ""
"Force une mise à jour de la taille de la liste en fonction de ses éléments. "
"Cela se produit automatiquement lorsque la taille des éléments, ou d'autres "
"paramètres pertinents comme [member auto_height], changent. La méthode peut "
"être utilisée pour déclencher la mise à jour avant la prochaine passe de "
"dessin."

msgid ""
"Returns the horizontal scrollbar.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie la barre de défilement horizontale.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne nécessaire, le retirer et "
"le libérer peut causer un plantage. Si vous voulez le cacher lui ou l'un de "
"ses enfants, utilisez plutôt [member CanvasItem.visible]."

msgid ""
"Returns the item index at the given [param position].\n"
"When there is no item at that point, -1 will be returned if [param exact] is "
"[code]true[/code], and the closest item index will be returned otherwise.\n"
"[b]Note:[/b] The returned value is unreliable if called right after modifying "
"the [ItemList], before it redraws in the next frame."
msgstr ""
"Renvoie l'index de l'élément à la [param position] donnée.\n"
"Lorsqu'il n'y a pas d'élément à ce point, -1 sera renvoyé si [param exact] "
"vaut [code]true[/code], et l'indice de l'élément le plus proche sera renvoyé "
"sinon.\n"
"[b]Note :[/b] La valeur renvoyée n'est pas fiable si ceci est appelé juste "
"après avoir modifié l'[ItemList], avant qu'elle ne se redessine dans la "
"prochaine trame."

msgid "Returns item's auto translate mode."
msgstr "Renvoie le mode d'auto traduction de l'élément."

msgid ""
"Returns the custom background color of the item specified by [param idx] "
"index."
msgstr ""
"Renvoie la couleur d'arrière-plan personnalisée pour l'élément spécifié à "
"l'index [param idx]."

msgid ""
"Returns the custom foreground color of the item specified by [param idx] "
"index."
msgstr ""
"Renvoie la couleur d'avant-plan personnalisée pour l'élément spécifié à "
"l'index [param idx]."

msgid "Returns the icon associated with the specified index."
msgstr "Renvoie l'icône associée avec l'index donné."

msgid "Returns a [Color] modulating item's icon at the specified index."
msgstr ""
"Renvoie la [Color] de modulation pour l'icône de l'élément à la position "
"donnée."

msgid ""
"Returns the region of item's icon used. The whole icon will be used if the "
"region has no area."
msgstr ""
"Renvoie la région utilisée de l'icône de l'élément. L'icône entière sera "
"utilisée si la région n'a pas d'aire."

msgid "Returns item's text language code."
msgstr "Renvoie le code de langue du texte de l'élément."

msgid "Returns the metadata value of the specified index."
msgstr "Renvoie la valeur des métadonnées de l’index spécifié."

msgid ""
"Returns the position and size of the item with the specified index, in the "
"coordinate system of the [ItemList] node. If [param expand] is [code]true[/"
"code] the last column expands to fill the rest of the row.\n"
"[b]Note:[/b] The returned value is unreliable if called right after modifying "
"the [ItemList], before it redraws in the next frame."
msgstr ""
"Renvoie la position et la taille de l'élément avec l'index spécifié, dans le "
"système de coordonnées du nœud [ItemList]. Si [param expand] vaut [code]true[/"
"code], la dernière colonne s'étend pour remplir le reste de la ligne.\n"
"[b]Note :[/b] La valeur renvoyée n'est pas fiable si ceci est appelé juste "
"après avoir modifié l'[ItemList], avant qu'elle ne se redessine dans la "
"prochaine trame."

msgid "Returns the text associated with the specified index."
msgstr "Renvoie le texte associé à l’index spécifié."

msgid "Returns item's text base writing direction."
msgstr "Renvoie la direction d'écriture de base du texte de l'élément."

msgid "Returns the tooltip hint associated with the specified index."
msgstr "Renvoie l'infobulle d'aide associée à l'index donné."

msgid "Returns an array with the indexes of the selected items."
msgstr "Renvoie un tableau des positions pour les éléments sélectionnés."

msgid ""
"Returns the vertical scrollbar.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie la barre de défilement verticale.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne requis, le retirer et le "
"libérer peut causer un plantage. Si vous voulez le cacher lui ou un de ses "
"enfants, utilisez la propriété [member CanvasItem.visible]."

msgid "Returns [code]true[/code] if one or more items are selected."
msgstr ""
"Renvoie [code]true[/code] si un ou plusieurs éléments sont sélectionnés."

msgid ""
"Returns [code]true[/code] if the item at the specified index is disabled."
msgstr ""
"Renvoie [code]true[/code] si l'élément à la position spécifiée est désactivé."

msgid ""
"Returns [code]true[/code] if the item icon will be drawn transposed, i.e. the "
"X and Y axes are swapped."
msgstr ""
"Renvoie [code]true[/code] si l'icône de l'élément sera dessinée transposée, "
"c'est-à-dire que les axes X et Y sont échangés."

msgid ""
"Returns [code]true[/code] if the item at the specified index is selectable."
msgstr ""
"Renvoie [code]true[/code] si l'élément à la position donnée est "
"sélectionnable."

msgid ""
"Returns [code]true[/code] if the tooltip is enabled for specified item index."
msgstr ""
"Renvoie [code]true[/code] si l'info-bulle est active pour la position donnée."

msgid ""
"Returns [code]true[/code] if the item at the specified index is currently "
"selected."
msgstr ""
"Renvoie [code]true[/code] si l'élément à la position donnée est actuellement "
"sélectionné."

msgid "Moves item from index [param from_idx] to [param to_idx]."
msgstr "Déplace l’élément de l’index [param from_idx] à l'index [param to_idx]."

msgid "Removes the item specified by [param idx] index from the list."
msgstr "Retire l'élément spécifié par la position [param idx] de la liste."

msgid ""
"Select the item at the specified index.\n"
"[b]Note:[/b] This method does not trigger the item selection signal."
msgstr ""
"Sélectionne un élément à la position spécifiée.\n"
"[b]Note :[/b] Cette méthode n'émet pas de signal de sélection de l'élément."

msgid ""
"Sets the auto translate mode of the item associated with the specified "
"index.\n"
"Items use [constant Node.AUTO_TRANSLATE_MODE_INHERIT] by default, which uses "
"the same auto translate mode as the [ItemList] itself."
msgstr ""
"Définit le mode de traduction automatique de l'élément associé à l'index "
"spécifié.\n"
"Les élément utilisent [constant Node.AUTO_TRANSLATE_MODE_INHERIT] par défaut, "
"qui utilise le même mode de traduction automatique que l'[ItemList] elle-même."

msgid ""
"Sets the background color of the item specified by [param idx] index to the "
"specified [Color]."
msgstr ""
"Définit la couleur d'arrière-plan de l'élément à l'index [param idx] à la "
"[Color] spécifiée."

msgid ""
"Sets the foreground color of the item specified by [param idx] index to the "
"specified [Color]."
msgstr ""
"Définit la couleur d'avant-plan de l'élément à la position [param idx] à la "
"[Color] spécifiée."

msgid ""
"Disables (or enables) the item at the specified index.\n"
"Disabled items cannot be selected and do not trigger activation signals (when "
"double-clicking or pressing [kbd]Enter[/kbd])."
msgstr ""
"Désactive (ou active) l'élément à l'index spécifié.\n"
"Les éléments désactivés ne peuvent pas être sélectionnés et ne déclenchent "
"pas de signaux d'activation (lorsque double-cliqués ou que [kbd]Entrée[/kbd] "
"est appuyé)."

msgid ""
"Sets (or replaces) the icon's [Texture2D] associated with the specified index."
msgstr ""
"Définit (ou remplace) la [Texture2D] de l'icône associée à la position donnée."

msgid ""
"Sets a modulating [Color] of the item associated with the specified index."
msgstr ""
"Définit la [Color] de modulation de l'élément associé à la position donnée."

msgid ""
"Sets the region of item's icon used. The whole icon will be used if the "
"region has no area."
msgstr ""
"Définit la région utilisée de l'icône de l’élément. L'icône entière sera "
"utilisée si la région n'a pas d'aire."

msgid "Sets whether the item icon will be drawn transposed."
msgstr "Définit si l'icône de l'élément sera dessinée transposée."

msgid ""
"Sets language code of item's text used for line-breaking and text shaping "
"algorithms, if left empty current locale is used instead."
msgstr ""
"Définit le code de langue du texte de l'élément, utilisé pour les algorithmes "
"de retour à la ligne et de façonnage de texte. Si laissé vide, la langue "
"actuelle est utilisée à la place."

msgid ""
"Sets a value (of any type) to be stored with the item associated with the "
"specified index."
msgstr ""
"Définit une valeur (de tout type) à stocker avec l'élément associé à l'index "
"spécifié."

msgid ""
"Allows or disallows selection of the item associated with the specified index."
msgstr ""
"Permet ou interdit la sélection de l’élément associé à l’index spécifié."

msgid "Sets text of the item associated with the specified index."
msgstr "Définit le texte de l’élément associé à l’index spécifié."

msgid "Sets item's text base writing direction."
msgstr "Définit la direction d'écriture de base du texte."

msgid "Sets the tooltip hint for the item associated with the specified index."
msgstr "Définit l’indice d’info-bulle de l’élément associé à l’index spécifié."

msgid "Sets whether the tooltip hint is enabled for specified item index."
msgstr "Définit si l’infobulle est active pour la position donnée."

msgid "Sorts items in the list by their text."
msgstr "Trie les éléments de la liste par leur texte."

msgid "If [code]true[/code], the currently selected item can be selected again."
msgstr ""
"Si [code]true[/code], l'élément actuellement sélectionné peut être "
"sélectionné à nouveau."

msgid "If [code]true[/code], right mouse button click can select items."
msgstr "Si [code]true[/code], un clic-droit peut sélectionner des éléments."

msgid ""
"If [code]true[/code], allows navigating the [ItemList] with letter keys "
"through incremental search."
msgstr ""
"Si [code]true[/code], permet de naviguer dans l'[ItemList] avec les touches "
"alphabétiques grâce à la recherche incrémentale."

msgid ""
"If [code]true[/code], the control will automatically resize the height to fit "
"its content."
msgstr ""
"Si [code]true[/code], le contrôle redimensionnera automatiquement sa hauteur "
"pour correspondre à son contenu."

msgid ""
"If [code]true[/code], the control will automatically resize the width to fit "
"its content."
msgstr ""
"Si [code]true[/code], le contrôle redimensionnera automatiquement sa largeur "
"pour correspondre à son contenu."

msgid ""
"The width all columns will be adjusted to.\n"
"A value of zero disables the adjustment, each item will have a width equal to "
"the width of its content and the columns will have an uneven width."
msgstr ""
"La largeur à laquelle toutes les colonnes seront ajustées.\n"
"Une valeur de zéro désactive l'ajustement, chaque élément aura une largeur "
"égale à la largeur de son contenu et les colonnes auront une largeur inégale."

msgid ""
"The size all icons will be adjusted to.\n"
"If either X or Y component is not greater than zero, icon size won't be "
"affected."
msgstr ""
"La taille à laquelle seront ajustées toutes les icônes.\n"
"Si une des composantes X ou Y n'est pas supérieure à zéro, la taille de "
"l'icône ne sera pas affectée."

msgid ""
"The icon position, whether above or to the left of the text. See the [enum "
"IconMode] constants."
msgstr ""
"La position de l'icône, que ce soit au-dessus ou à gauche du texte. Voir les "
"constantes [enum IconMode]."

msgid ""
"The scale of icon applied after [member fixed_icon_size] and transposing "
"takes effect."
msgstr ""
"L'échelle de l'icône appliquée après que [member fixed_icon_size] et la "
"transposition prennent effet."

msgid "The number of items currently in the list."
msgstr "Le nombre d'éléments actuellement dans la liste."

msgid ""
"Maximum columns the list will have.\n"
"If greater than zero, the content will be split among the specified columns.\n"
"A value of zero means unlimited columns, i.e. all items will be put in the "
"same row."
msgstr ""
"Les colonnes maximales que la liste aura.\n"
"Si supérieur à zéro, le contenu sera divisé entre les colonnes spécifiées.\n"
"Une valeur de zéro signifie des colonnes illimitées, c'est-à-dire que tous "
"les éléments seront mis sur la même ligne."

msgid ""
"Maximum lines of text allowed in each item. Space will be reserved even when "
"there is not enough lines of text to display.\n"
"[b]Note:[/b] This property takes effect only when [member icon_mode] is "
"[constant ICON_MODE_TOP]. To make the text wrap, [member fixed_column_width] "
"should be greater than zero."
msgstr ""
"Lignes maximales de texte autorisées dans chaque élément. De l'espace sera "
"réservé même lorsqu'il n'y a pas assez de lignes de texte à afficher.\n"
"[b]Note :[/b] Cette propriété prend effet seulement lorsque [member "
"icon_mode] vaut [constant ICON_MODE_TOP]. Pour que le texte revienne à la "
"ligne automatiquement, [member fixed_column_width] devrait être supérieur à "
"zéro."

msgid ""
"Whether all columns will have the same width.\n"
"If [code]true[/code], the width is equal to the largest column width of all "
"columns."
msgstr ""
"Si toutes les colonnes ont la même largeur.\n"
"Si [code]true[/code], la largeur est égale à la plus grande largeur de "
"colonne de toutes les colonnes."

msgid ""
"Allows single or multiple item selection. See the [enum SelectMode] constants."
msgstr ""
"Autorise la sélection d'un ou plusieurs éléments. Voir les constantes [enum "
"SelectMode]."

msgid ""
"The clipping behavior when the text exceeds an item's bounding rectangle."
msgstr ""
"Le comportement de coupure lorsque le texte dépasse le rectangle délimitant "
"d'un objet."

msgid ""
"If [code]true[/code], the control will automatically move items into a new "
"row to fit its content. See also [HFlowContainer] for this behavior.\n"
"If [code]false[/code], the control will add a horizontal scrollbar to make "
"all items visible."
msgstr ""
"Si [code]true[/code], le contrôle déplacera automatiquement les éléments dans "
"une nouvelle ligne pour s'adapter à son contenu. Voir aussi [HFlowContainer] "
"pour ce comportement.\n"
"Si [code]false[/code], le contrôle ajoutera une barre de défilement "
"horizontale pour rendre tous les éléments visibles."

msgid ""
"Emitted when any mouse click is issued within the rect of the list but on "
"empty space.\n"
"[param at_position] is the click position in this control's local coordinate "
"system."
msgstr ""
"Émis quand un clic de souris est émis dans le rectangle de la liste mais sur "
"de l'espace vide.\n"
"[param at_position] est la position du clic dans le système de coordonnées "
"local de ce contrôle."

msgid ""
"Emitted when specified list item is activated via double-clicking or by "
"pressing [kbd]Enter[/kbd]."
msgstr ""
"Émis lorsque l'élément de la liste spécifié est activé par un double-clic ou "
"en appuyant sur [kbd]Entrée[/kbd]."

msgid ""
"Emitted when specified list item has been clicked with any mouse button.\n"
"[param at_position] is the click position in this control's local coordinate "
"system."
msgstr ""
"Émis lorsque l'élément de la liste spécifié a été cliqué par n'importe quel "
"bouton de la souris.\n"
"[param at_position] est la position du clic dans le système de coordonnées "
"local de ce contrôle."

msgid ""
"Emitted when specified item has been selected. Only applicable in single "
"selection mode.\n"
"[member allow_reselect] must be enabled to reselect an item."
msgstr ""
"Émis lorsque l'élément de la liste spécifié a été sélectionné. Seulement "
"applicable en mode de sélection unique.\n"
"[member allow_reselect] doit être activé pour re-sélectionner un élément."

msgid ""
"Emitted when a multiple selection is altered on a list allowing multiple "
"selection."
msgstr ""
"Émis lorsqu'une sélection multiple est modifiée sur une liste autorisant une "
"sélection multiple."

msgid "Icon is drawn above the text."
msgstr "L'icône est affichée au-dessus du texte."

msgid "Icon is drawn to the left of the text."
msgstr "L'icône est affichée à gauche du texte."

msgid "Only allow selecting a single item."
msgstr "Ne permettre de ne sélectionner qu'un seul élément."

msgid ""
"Allows selecting multiple items by holding [kbd]Ctrl[/kbd] or [kbd]Shift[/"
"kbd]."
msgstr ""
"Autorise la sélection de plusieurs élément en maintenant [kbd]Ctrl[/kbd] ou "
"[kbd]Maj[/kbd] appuyé."

msgid "Allows selecting multiple items by toggling them on and off."
msgstr "Autorise la sélection de plusieurs élément en les activant/désactivant."

msgid "Default text [Color] of the item."
msgstr "La [Color] par défaut du texte de l'élément."

msgid "Text [Color] used when the item is hovered and not selected yet."
msgstr ""
"[Color] du texte utilisée lorsque l'élément est survolé et pas encore "
"sélectionné."

msgid "Text [Color] used when the item is hovered and selected."
msgstr "[Color] du texte utilisée quand l'élément est survolé et sélectionné."

msgid "The tint of text outline of the item."
msgstr "Le teinte du contour de texte de l'élément."

msgid "Text [Color] used when the item is selected, but not hovered."
msgstr ""
"[Color] du texte utilisée quand l'élément est sélectionné, mais pas survolé."

msgid ""
"[Color] of the guideline. The guideline is a line drawn between each row of "
"items."
msgstr ""
"[Color] de la ligne directrice. La ligne directrice est affichée entre chaque "
"ligne d'éléments."

msgid "The horizontal spacing between items."
msgstr "L'espacement horizontal entre les éléments."

msgid "The spacing between item's icon and text."
msgstr "L'espacement entre l'icône de l'élément et le texte."

msgid "The vertical spacing between each line of text."
msgstr "L'espacement vertical entre chaque ligne de texte."

msgid ""
"The size of the item text outline.\n"
"[b]Note:[/b] If using a font with [member "
"FontFile.multichannel_signed_distance_field] enabled, its [member "
"FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of "
"[theme_item outline_size] for outline rendering to look correct. Otherwise, "
"the outline may appear to be cut off earlier than intended."
msgstr ""
"La taille du contour du texte de l'élément.\n"
"[b]Note :[/b] Si vous utilisez une police avec [member "
"FontFile.multichannel_signed_distance_field] activé, sa [member "
"FontFile.msdf_pixel_range] doit être définie à au moins [i]deux fois[/i] la "
"valeur de [theme_item outline_size] pour que le rendu du contour puisse être "
"correct. Sinon, le contour peut sembler être coupé plus tôt que prévu."

msgid "The vertical spacing between items."
msgstr "L'espacement vertical entre les éléments."

msgid "[Font] of the item's text."
msgstr "[Font] du texte de l’élément."

msgid "Font size of the item's text."
msgstr "Taille de police du texte de l'élément."

msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
msgstr "La [StyleBox] utilisée pour le curseur, quand l'[ItemList] a le focus."

msgid ""
"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
msgstr ""
"La [StyleBox] utilisée pour le curseur, quand l'[ItemList] n'a pas le focus."

msgid ""
"The focused style for the [ItemList], drawn on top of the background, but "
"below everything else."
msgstr ""
"Le style avec focus pour l'[ItemList], dessiné au dessus de l'arrière-plan, "
"mais sous tout le reste."

msgid "[StyleBox] for the hovered, but not selected items."
msgstr "[StyleBox] pour les articles survolés, mais non sélectionnés."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [ItemList] is "
"not being focused."
msgstr ""
"[StyleBox] pour les éléments sélectionnés et survolés, utilisée quand "
"l'[ItemList] n'a pas le focus."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [ItemList] is "
"being focused."
msgstr ""
"[StyleBox] pour les éléments sélectionnés et survolés, utilisée quand "
"l'[ItemList] a le focus."

msgid "The background style for the [ItemList]."
msgstr "Le style d'arrière-plan pour l'[ItemList]."

msgid ""
"[StyleBox] for the selected items, used when the [ItemList] is not being "
"focused."
msgstr ""
"[StyleBox] pour les éléments sélectionnés, utilisée quand l'[ItemList] n'a "
"pas le focus."

msgid ""
"[StyleBox] for the selected items, used when the [ItemList] is being focused."
msgstr ""
"[StyleBox] pour les éléments sélectionnés, utilisée quand l'[ItemList] a le "
"focus."

msgid "Returns the Java class name."
msgstr "Renvoie le nom de la classe Java."

msgid "Provides access to the Java Native Interface."
msgstr "Fournit l'accès à l'interface native Java."

msgid "Integrating with Android APIs"
msgstr "Intégration avec les API Android"

msgid "Represents an object from the Java Native Interface."
msgstr "Représente un objet de l'interface native Java."

msgid ""
"Represents an object from the Java Native Interface. It can be returned from "
"Java methods called on [JavaClass] or other [JavaObject]s. See "
"[JavaClassWrapper] for an example.\n"
"[b]Note:[/b] This class only works on Android. On any other platform, this "
"class does nothing.\n"
"[b]Note:[/b] This class is not to be confused with [JavaScriptObject]."
msgstr ""
"Représente un objet de l'interface native Java. Il peut être renvoyé par les "
"méthodes Java appelées sur [JavaClass] ou d'autres [JavaObject]s. Voir "
"[JavaClassWrapper] pour un exemple.\n"
"[b]Note :[/b] Cette classe ne fonctionne que sur Android. Sur n'importe "
"quelle autre plateforme, cette classe ne fait rien.\n"
"[b]Note :[/b] Cette classe ne doit pas être confondue avec [JavaScriptObject]."

msgid "Returns the [JavaClass] that this object is an instance of."
msgstr "Renvoie la [JavaClass] dont cet objet est une instance de."

msgid ""
"JavaScriptObject is used to interact with JavaScript objects retrieved or "
"created via [method JavaScriptBridge.get_interface], [method "
"JavaScriptBridge.create_object], or [method "
"JavaScriptBridge.create_callback].\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"var _my_js_callback = JavaScriptBridge.create_callback(myCallback) # This "
"reference must be kept\n"
"var console = JavaScriptBridge.get_interface(\"console\")\n"
"\n"
"func _init():\n"
"\tvar buf = JavaScriptBridge.create_object(\"ArrayBuffer\", 10) # new "
"ArrayBuffer(10)\n"
"\tprint(buf) # Prints [JavaScriptObject:OBJECT_ID]\n"
"\tvar uint8arr = JavaScriptBridge.create_object(\"Uint8Array\", buf) # new "
"Uint8Array(buf)\n"
"\tuint8arr[1] = 255\n"
"\tprints(uint8arr[1], uint8arr.byteLength) # Prints \"255 10\"\n"
"\n"
"\t# Prints \"Uint8Array(10) [ 0, 255, 0, 0, 0, 0, 0, 0, 0, 0 ]\" in the "
"browser's console.\n"
"\tconsole.log(uint8arr)\n"
"\n"
"\t# Equivalent of JavaScriptBridge: Array.from(uint8arr).forEach(myCallback)\n"
"\tJavaScriptBridge.get_interface(\"Array\").from(uint8arr).forEach(_my_js_callback)\n"
"\n"
"func myCallback(args):\n"
"\t# Will be called with the parameters passed to the \"forEach\" callback\n"
"\t# [0, 0, [JavaScriptObject:1173]]\n"
"\t# [255, 1, [JavaScriptObject:1173]]\n"
"\t# ...\n"
"\t# [0, 9, [JavaScriptObject:1180]]\n"
"\tprint(args)\n"
"[/codeblock]\n"
"[b]Note:[/b] Only available in the Web platform."
msgstr ""
"JavaScriptObject est utilisé pour interagir avec les objets JavaScript "
"récupérés ou créés avec [method JavaScriptBridge.get_interface], [method "
"JavaScriptBridge.create_object], ou [method "
"JavaScriptBridge.create_callback].\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"var _mon_callback_js = JavaScriptBridge.create_callback(monCallback) # Cette "
"référence doit être gardée\n"
"var console = JavaScriptBridge.get_interface(\"console\")\n"
"\n"
"func _init():\n"
"\tvar buffer = JavaScriptBridge.create_object(\"ArrayBuffer\", 10) # new "
"ArrayBuffer(10)\n"
"\tprint(buffer) # Affiche [JavaScriptObject:OBJECT_ID]\n"
"\tvar tableau_uint8 = JavaScriptBridge.create_object(\"Uint8Array\", buffer) "
"# new Uint8Array(buffer)\n"
"\ttableau_uint8[1] = 255\n"
"\tprints(tableau_uint8[1], tableau_uint8.byteLength) # Affiche \"255 10\"\n"
"\n"
"\t# Affiche \"Uint8Array(10) [ 0, 255, 0, 0, 0, 0, 0, 0, 0, 0 ]\" dans la "
"console du navigateur.\n"
"\tconsole.log(tableau_uint8)\n"
"\n"
"\t# Équivalent de JavaScriptBridge : "
"Array.from(tableau_uint8).forEach(monCallback)\n"
"\tJavaScriptBridge.get_interface(\"Array\").from(tableau_uint8).forEach(_mon_callback_js )\n"
"\n"
"func monCallback(args):\n"
"\t# Sera appellé avec les paramètres passés au callback \"forEach\"\n"
"\t# [0, 0, [JavaScriptObject:1173]]\n"
"\t# [255, 1, [JavaScriptObject:1173]]\n"
"\t# ...\n"
"\t# [0, 9, [JavaScriptObject:1180]]\n"
"\tprint(args)\n"
"[/codeblock]\n"
"[b]Note :[/b] Uniquement disponible pour la plateforme Web."

msgid ""
"Singleton that connects the engine with Android plugins to interface with "
"native Android code."
msgstr ""
"L'instance unique qui connecte le moteur de jeu avec les greffons Android "
"pour s'interfacer sur du code natif Android."

msgid "Creating Android plugins"
msgstr "Créer des greffons Android"

msgid "Abstract base class for all 2D physics joints."
msgstr "Classe de base abstraite pour toutes les liaisons physiques 2D."

msgid ""
"Abstract base class for all joints in 2D physics. 2D joints bind together two "
"physics bodies ([member node_a] and [member node_b]) and apply a constraint."
msgstr ""
"Classe de base abstraite pour toutes les liaisons physiques 2D. Les liaisons "
"2D lient ensemble deux corps physiques ([member node_a] et [member node_b]) "
"et appliquent une contrainte."

msgid "Returns the joint's internal [RID] from the [PhysicsServer2D]."
msgstr "Renvoie le [RID] interne de la liaison depuis le [PhysicsServer2D]."

msgid ""
"When [member node_a] and [member node_b] move in different directions the "
"[member bias] controls how fast the joint pulls them back to their original "
"position. The lower the [member bias] the more the two bodies can pull on the "
"joint.\n"
"When set to [code]0[/code], the default value from [member "
"ProjectSettings.physics/2d/solver/default_constraint_bias] is used."
msgstr ""
"Lorsque [member node_a] et [member node_b] se déplacent dans des directions "
"différentes, le biais [member bias] contrôle la vitesse à laquelle la liaison "
"les ramène vers leur position originale. Plus bas est le biais [member bias], "
"plus les deux corps peuvent tirer sur la liaison.\n"
"Quand défini à [code]0[/code], la valeur par défaut de [member "
"ProjectSettings.physics/2d/solver/default_constraint_bias] est utilisée."

msgid ""
"If [code]true[/code], the two bodies bound together do not collide with each "
"other."
msgstr ""
"Si [code]true[/code], les deux corps liés ensemble n'entrent pas en collision "
"l'un avec l'autre."

msgid ""
"Path to the first body (A) attached to the joint. The node must inherit "
"[PhysicsBody2D]."
msgstr ""
"Chemin vers le premier corps (A) attaché à la liaison. Le nœud doit hériter "
"de [PhysicsBody2D]."

msgid ""
"Path to the second body (B) attached to the joint. The node must inherit "
"[PhysicsBody2D]."
msgstr ""
"Chemin vers le second corps (B) attaché à la liaison. Le nœud doit hériter de "
"[PhysicsBody2D]."

msgid "Abstract base class for all 3D physics joints."
msgstr "Classe de base abstraite pour toutes les liaisons physiques 3D."

msgid ""
"Abstract base class for all joints in 3D physics. 3D joints bind together two "
"physics bodies ([member node_a] and [member node_b]) and apply a constraint. "
"If only one body is defined, it is attached to a fixed [StaticBody3D] without "
"collision shapes."
msgstr ""
"Classe de base abstraite pour toutes les liaisons physiques 3D. Les liaisons "
"3D lient ensemble deux corps physiques ([member node_a] et [member node_b]) "
"et appliquent une contrainte. Si un seul corps est défini, il est fixé à un "
"[StaticBody3D] fixe sans forme de collision."

msgid "3D Truck Town Demo"
msgstr "Démo 3D « Truck Town »"

msgid "Returns the joint's internal [RID] from the [PhysicsServer3D]."
msgstr "Renvoie le [RID] interne de la liaison depuis le [PhysicsServer3D]."

msgid ""
"Path to the first node (A) attached to the joint. The node must inherit "
"[PhysicsBody3D].\n"
"If left empty and [member node_b] is set, the body is attached to a fixed "
"[StaticBody3D] without collision shapes."
msgstr ""
"Chemin vers le premier corps (A) attaché à la liaison. Le nœud doit hériter "
"de [PhysicsBody3D].\n"
"Si laissé vide et [member node_b] est défini, le corps est attaché à un "
"[StaticBody3D] fixe sans forme de collision."

msgid ""
"Path to the second node (B) attached to the joint. The node must inherit "
"[PhysicsBody3D].\n"
"If left empty and [member node_a] is set, the body is attached to a fixed "
"[StaticBody3D] without collision shapes."
msgstr ""
"Chemin vers le second corps (B) attaché à la liaison. Le nœud doit hériter de "
"[PhysicsBody3D].\n"
"Si laissé vide et [member node_a] est défini, le corps est attaché à un "
"[StaticBody3D] fixe sans forme de collision."

msgid ""
"The priority used to define which solver is executed first for multiple "
"joints. The lower the value, the higher the priority."
msgstr ""
"La priorité utilisée pour définir quel solveur est exécuté en premier pour "
"plusieurs liaisons. Plus la valeur est faible, plus la priorité est élevée."

msgid "Helper class for creating and parsing JSON data."
msgstr "Classe d'aide pour créer et interpréter des données JSON."

msgid ""
"Attempts to parse the [param json_string] provided and returns the parsed "
"data. Returns [code]null[/code] if parse failed."
msgstr ""
"Essaie de parser le [param json_string] fourni et renvoie les données "
"parsées. Renvoie [code]null[/code] si le parsing a échoué."

msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
"serializing data to store or send over the network.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
"will convert all numerical values to [float] types.\n"
"[b]Note:[/b] If [param full_precision] is [code]true[/code], when "
"stringifying floats, the unreliable digits are stringified in addition to the "
"reliable digits to guarantee exact decoding.\n"
"The [param indent] parameter controls if and how something is indented; its "
"contents will be used where there should be an indent in the output. Even "
"spaces like [code]\"   \"[/code] will work. [code]\\t[/code] and [code]\\n[/"
"code] can also be used for a tab indent, or to make a newline for each indent "
"respectively.\n"
"[b]Example output:[/b]\n"
"[codeblock]\n"
"## JSON.stringify(my_dictionary)\n"
"{\"name\":\"my_dictionary\",\"version\":\"1.0.0\",\"entities\":[{\"name\":"
"\"entity_0\",\"value\":\"value_0\"},{\"name\":\"entity_1\",\"value\":"
"\"value_1\"}]}\n"
"\n"
"## JSON.stringify(my_dictionary, \"\\t\")\n"
"{\n"
"\t\"name\": \"my_dictionary\",\n"
"\t\"version\": \"1.0.0\",\n"
"\t\"entities\": [\n"
"\t\t{\n"
"\t\t\t\"name\": \"entity_0\",\n"
"\t\t\t\"value\": \"value_0\"\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"name\": \"entity_1\",\n"
"\t\t\t\"value\": \"value_1\"\n"
"\t\t}\n"
"\t]\n"
"}\n"
"\n"
"## JSON.stringify(my_dictionary, \"...\")\n"
"{\n"
"...\"name\": \"my_dictionary\",\n"
"...\"version\": \"1.0.0\",\n"
"...\"entities\": [\n"
"......{\n"
".........\"name\": \"entity_0\",\n"
".........\"value\": \"value_0\"\n"
"......},\n"
"......{\n"
".........\"name\": \"entity_1\",\n"
".........\"value\": \"value_1\"\n"
"......}\n"
"...]\n"
"}\n"
"[/codeblock]"
msgstr ""
"Convertit une variable [Variant] en texte JSON et renvoie le résultat. Utile "
"pour sérialiser les données pour les enregistrer ou les envoyer à travers le "
"réseau.\n"
"[b]Note :[/b] Les spécifications du JSON ne définissent pas de types entier "
"ou flottant, et ne définissent que le type commun [i]number[/i]. Donc, "
"convertir un Variant en JSON transformera tous les nombres en type [float].\n"
"[b]Note :[/b] Si [param full_precision] vaut [code]true[/code], lors de la "
"conversion des flottants, les chiffres non fiables sont convertis avec les "
"chiffres fiables pour garantir un décodage exact.\n"
"La paramètre [param indent] contrôle si et comment le JSON doit être indenté, "
"la chaine de caractères utilisé pour ce paramètre sera utilisé pour "
"l'indentation de la sortie, et même les espaces [code]\"   \"[/code] "
"fonctionneront. [code]\\t[/code] et [code]\\n[/code] peuvent aussi être "
"utilisé pour la tabulation, ou pour le retour à la ligne, respectivement.\n"
"[b]Exemples de sortie :[/b]\n"
"[codeblock]\n"
"## JSON.print(my_dictionary)\n"
"{\"name\":\"mon_dictionnaire\",\"version\":\"1.0.0\",\"entities\":[{\"name\":"
"\"élément_0\",\"value\":\"valeur_0\"},{\"name\":\"élément_1\",\"value\":"
"\"valeur_1\"}]}\n"
"\n"
"## JSON.print(my_dictionary, \"\\t\")\n"
"{\n"
"\t\"name\": \"mon_dictionnaire\",\n"
"\t\"version\": \"1.0.0\",\n"
"\t\"entities\": [\n"
"\t\t{\n"
"\t\t\t\"name\": \"élément_0\",\n"
"\t\t\t\"value\": \"valeur_0\"\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"name\": \"élément_1\",\n"
"\t\t\t\"value\": \"valeur_1\"\n"
"\t\t}\n"
"\t]\n"
"}\n"
"\n"
"## JSON.print(my_dictionary, \"...\")\n"
"{\n"
"...\"name\": \"mon_dictionnaire\",\n"
"...\"version\": \"1.0.0\",\n"
"...\"entities\": [\n"
"......{\n"
".........\"name\": \"élément_0\",\n"
".........\"value\": \"valeur_0\"\n"
"......},\n"
"......{\n"
".........\"name\": \"élément_1\",\n"
".........\"value\": \"valeur_1\"\n"
"......}\n"
"...]\n"
"}\n"
"[/codeblock]"

msgid "Holds collision data from the movement of a [PhysicsBody2D]."
msgstr ""
"Contient des données de collision dus au mouvement d'un [PhysicsBody2D]."

msgid ""
"Holds collision data from the movement of a [PhysicsBody2D], usually from "
"[method PhysicsBody2D.move_and_collide]. When a [PhysicsBody2D] is moved, it "
"stops if it detects a collision with another body. If a collision is "
"detected, a [KinematicCollision2D] object is returned.\n"
"The collision data includes the colliding object, the remaining motion, and "
"the collision position. This data can be used to determine a custom response "
"to the collision."
msgstr ""
"Contient des données de collision dues au mouvement d'un [PhysicsBody2D], "
"généralement depuis [method PhysicsBody2D.move_and_collide]. Lorsqu'un "
"[PhysicsBody2D] est déplacé, il s'arrête s'il détecte une collision avec un "
"autre corps. Si une collision est détectée, un objet [KinematicCollision2D] "
"est renvoyé.\n"
"Les données de collision comprennent l'objet en collision, le mouvement "
"restant et la position de la collision. Ces données peuvent être utilisées "
"pour déterminer une réponse personnalisée à la collision."

msgid ""
"Returns the collision angle according to [param up_direction], which is "
"[constant Vector2.UP] by default. This value is always positive."
msgstr ""
"Renvoie l'angle de collision selon la direction du haut [param up_direction], "
"qui vaut [constant Vector2.UP] par défaut. Cette valeur est toujours positive."

msgid "Returns the colliding body's attached [Object]."
msgstr "Renvoie l'[Object] attaché au corps en collision."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object]. See "
"[method Object.get_instance_id]."
msgstr ""
"Renvoie l'identifiant unique d'instance de l'[Object] attaché au corps en "
"collision. Voir [method Object.get_instance_id]."

msgid "Returns the colliding body's [RID] used by the [PhysicsServer2D]."
msgstr ""
"Renvoie le [RID] du corps en collision utilisé par le [PhysicsServer2D]."

msgid "Returns the colliding body's shape."
msgstr "Renvoie la forme du corps en collision."

msgid "Returns the colliding body's shape index. See [CollisionObject2D]."
msgstr ""
"Renvoie l'index de forme du corps en collision. Voir [CollisionObject2D]."

msgid "Returns the colliding body's velocity."
msgstr "Renvoie la vélocité du corps en collision."

msgid ""
"Returns the colliding body's length of overlap along the collision normal."
msgstr ""
"Renvoie la longueur de chevauchement du corps en collision le long de la "
"normale de collision."

msgid "Returns the moving object's colliding shape."
msgstr "Renvoie la forme en collision de l’objet en mouvement."

msgid "Returns the colliding body's shape's normal at the point of collision."
msgstr ""
"Renvoie la normale de la forme du corps en collision au point de collision."

msgid "Returns the point of collision in global coordinates."
msgstr "Renvoie le point de collision, dans les coordonnées globales."

msgid "Returns the moving object's remaining movement vector."
msgstr "Renvoie le vecteur de mouvement restant de l'objet mobile."

msgid "Holds collision data from the movement of a [PhysicsBody3D]."
msgstr ""
"Contient des données de collision dus au mouvement d'un [PhysicsBody3D]."

msgid ""
"Holds collision data from the movement of a [PhysicsBody3D], usually from "
"[method PhysicsBody3D.move_and_collide]. When a [PhysicsBody3D] is moved, it "
"stops if it detects a collision with another body. If a collision is "
"detected, a [KinematicCollision3D] object is returned.\n"
"The collision data includes the colliding object, the remaining motion, and "
"the collision position. This data can be used to determine a custom response "
"to the collision."
msgstr ""
"Contient des données de collision dues au mouvement d'un [PhysicsBody3D], "
"généralement depuis [method PhysicsBody3D.move_and_collide]. Lorsqu'un "
"[PhysicsBody3D] est déplacé, il s'arrête s'il détecte une collision avec un "
"autre corps. Si une collision est détectée, un objet [KinematicCollision3D] "
"est renvoyé.\n"
"Les données de collision comprennent l'objet en collision, le mouvement "
"restant et la position de la collision. Ces données peuvent être utilisées "
"pour déterminer une réponse personnalisée à la collision."

msgid ""
"Returns the collision angle according to [param up_direction], which is "
"[constant Vector3.UP] by default. This value is always positive."
msgstr ""
"Renvoie l'angle de collision selon la direction du haut [param up_direction], "
"qui vaut [constant Vector3.UP] par défaut. Cette valeur est toujours positive."

msgid ""
"Returns the colliding body's attached [Object] given a collision index (the "
"deepest collision by default)."
msgstr ""
"Renvoie l'[Object] attaché au corps en collision selon un index de collision "
"(par défaut, la collision la plus profonde)."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object] "
"given a collision index (the deepest collision by default). See [method "
"Object.get_instance_id]."
msgstr ""
"Renvoie l'identifiant d'instance unique de l'[Object] attaché au corps en "
"collision selon un index de collision (par défaut, la collision la plus "
"profonde). Voir [method Object.get_instance_id]."

msgid ""
"Returns the colliding body's [RID] used by the [PhysicsServer3D] given a "
"collision index (the deepest collision by default)."
msgstr ""
"Renvoie le [RID] du corps en collision utilisé par le [PhysicsServer3D] selon "
"un index de collision (par défaut, la collision la plus profonde)."

msgid ""
"Returns the colliding body's shape given a collision index (the deepest "
"collision by default)."
msgstr ""
"Renvoie la forme du corps en collision selon un index de collision (par "
"défaut, la collision la plus profonde)."

msgid ""
"Returns the colliding body's shape index given a collision index (the deepest "
"collision by default). See [CollisionObject3D]."
msgstr ""
"Renvoie l'index de forme du corps en collision selon un index de collision "
"(par défaut, la collision la plus profonde). Voir [CollisionObject3D]."

msgid ""
"Returns the colliding body's velocity given a collision index (the deepest "
"collision by default)."
msgstr ""
"Renvoie la vitesse du corps en collision selon un index de collision (par "
"défaut, la collision la plus profonde)."

msgid "Returns the number of detected collisions."
msgstr "Renvoie le nombre de collisions détectées."

msgid ""
"Returns the moving object's colliding shape given a collision index (the "
"deepest collision by default)."
msgstr ""
"Renvoie la forme en collision du corps en mouvement selon un index de "
"collision (par défaut, la collision la plus profonde)."

msgid ""
"Returns the colliding body's shape's normal at the point of collision given a "
"collision index (the deepest collision by default)."
msgstr ""
"Renvoie la normale à la forme du corps en collision selon un index de "
"collision (par défaut, la collision la plus profonde)."

msgid ""
"Returns the point of collision in global coordinates given a collision index "
"(the deepest collision by default)."
msgstr ""
"Renvoie le point de collision dans les coordonnées globales selon un index de "
"collision (par défaut, la collision la plus profonde)."

msgid "A control for displaying plain text."
msgstr "Un contrôle pour afficher du texte brut."

msgid ""
"A control for displaying plain text. It gives you control over the horizontal "
"and vertical alignment and can wrap the text inside the node's bounding "
"rectangle. It doesn't support bold, italics, or other rich text formatting. "
"For that, use [RichTextLabel] instead."
msgstr ""
"Un contrôle pour afficher du texte brut. Il vous donne le contrôle de "
"l'alignement horizontal et vertical et peut faire un retour à la ligne "
"automatique du texte à l'intérieur du rectangle délimitant du noeud. Il ne "
"supporte pas le gras, l'italique ou autre formatage de texte avancé. Pour "
"cela, utilisez [RichTextLabel] à la place."

msgid ""
"Returns the bounding rectangle of the character at position [param pos] in "
"the label's local coordinate system. If the character is a non-visual "
"character or [param pos] is outside the valid range, an empty [Rect2] is "
"returned. If the character is a part of a composite grapheme, the bounding "
"rectangle of the whole grapheme is returned."
msgstr ""
"Renvoie le rectangle délimitant du caractère en position [param pos] dans le "
"système de coordonnées local de l'étiquette. Si le caractère est un caractère "
"non-visuel ou [param pos] est hors de la plage valide, un [Rect2] vide est "
"renvoyé. Si le caractère fait partie d'un graphème composite, le rectangle "
"délimitant de l'ensemble du graphème est renvoyé."

msgid "Returns the number of lines of text the Label has."
msgstr "Renvoie le nombre de lignes de texte qu'a le Label."

msgid ""
"Returns the total number of printable characters in the text (excluding "
"spaces and newlines)."
msgstr ""
"Renvoie le nombre total de caractères affichables dans le texte (sauf les "
"espaces et les nouvelles lignes)."

msgid ""
"Returns the number of lines shown. Useful if the [Label]'s height cannot "
"currently display all lines."
msgstr ""
"Renvoie le nombre de lignes affichées. Utile si la hauteur du [Label] ne peut "
"pas afficher actuellement toutes les lignes."

msgid "Limits the lines of text the node shows on screen."
msgstr "Limite le nombre de lignes de texte que le nœud affiche à l'écran."

msgid "The text to display on screen."
msgstr "Le texte à afficher à l'écran."

msgid "If [code]true[/code], all the text displays as UPPERCASE."
msgstr "Si [code]true[/code], tous les textes seront en MAJUSCULE."

msgid "Default text [Color] of the [Label]."
msgstr "La [Color] par défaut du texte du [Label]."

msgid "The color of text outline."
msgstr "La couleur du contour du texte."

msgid "[Color] of the text's shadow effect."
msgstr "La [Color] de l'ombre du texte."

msgid "The horizontal offset of the text's shadow."
msgstr "Le décalage horizontal de l'ombre du texte."

msgid "The vertical offset of the text's shadow."
msgstr "Le décalage vertical de l'ombre du texte."

msgid "[Font] used for the [Label]'s text."
msgstr "[Font] utilisée pour le texte du [Label]."

msgid "Font size of the [Label]'s text."
msgstr "Taille de police du texte de [Label]."

msgid "Background [StyleBox] for the [Label]."
msgstr "Le [StyleBox] d'arrière-plan pour le [Label]."

msgid "3D text"
msgstr "3D text"

msgid "Threshold at which the alpha scissor will discard values."
msgstr "Le seuil à partir duquel le ciseau alpha ignorera les valeurs."

msgid "Text [Color] of the [Label3D]."
msgstr "La [Color] du texte du [Label3D]."

msgid "The tint of text outline."
msgstr "La teinte du contour du texte."

msgid ""
"Sets the render priority for the text outline. Higher priority objects will "
"be sorted in front of lower priority objects.\n"
"[b]Note:[/b] This only applies if [member alpha_cut] is set to [constant "
"ALPHA_CUT_DISABLED] (default value).\n"
"[b]Note:[/b] This only applies to sorting of transparent objects. This will "
"not impact how transparent objects are sorted relative to opaque objects. "
"This is because opaque objects are not sorted, while transparent objects are "
"sorted from back to front (subject to priority)."
msgstr ""
"Définit la priorité de rendu pour la bordure du texte. Les objets les plus "
"prioritaires seront affichés par-dessus des objets les moins prioritaires.\n"
"[b]Note :[/b] Cela ne s'applique que si [member alpha_cut] est défini à "
"[constant ALPHA_CUT_DISABLED] (c'est la valeur par défaut).\n"
"[b]Note :[/b] Cela ne s'applique qu'au tri des objets transparents. Cela "
"n'affectera pas la façon dont les objets transparents sont triés par rapport "
"aux objets opaques. C'est parce que les objets opaques ne sont pas triés, "
"alors que les objets transparents sont triés de l'arrière vers l'avant (et "
"suivant leur priorité)."

msgid "Text outline size."
msgstr "Taille du contour du texte."

msgid ""
"Sets the render priority for the text. Higher priority objects will be sorted "
"in front of lower priority objects.\n"
"[b]Note:[/b] This only applies if [member alpha_cut] is set to [constant "
"ALPHA_CUT_DISABLED] (default value).\n"
"[b]Note:[/b] This only applies to sorting of transparent objects. This will "
"not impact how transparent objects are sorted relative to opaque objects. "
"This is because opaque objects are not sorted, while transparent objects are "
"sorted from back to front (subject to priority)."
msgstr ""
"Définit la priorité de rendu pour le texte. Les objets les plus prioritaires "
"seront affichés par-dessus des objets les moins prioritaires.\n"
"[b]Note :[/b] Cela ne s'applique que si [member alpha_cut] est défini à "
"[constant ALPHA_CUT_DISABLED] (c'est la valeur par défaut).\n"
"[b]Note :[/b] Cela ne s'applique qu'au tri des objets transparents. Cela "
"n'affectera pas la façon dont les objets transparents sont triés par rapport "
"aux objets opaques. C'est parce que les objets opaques ne sont pas triés, "
"alors que les objets transparents sont triés de l'arrière vers l'avant (et "
"suivant leur priorité)."

msgid "Text width (in pixels), used for autowrap and fill alignment."
msgstr ""
"La largeur de texte (en pixels), utilisée pour les retours à la ligne et "
"l'alignement de remplissage."

msgid ""
"If set, text can be seen from the back as well. If not, the text is invisible "
"when looking at it from behind."
msgstr ""
"Si défini, le texte sera aussi visible de derrière. Sinon, le texte sera "
"invisible en regardant par derrière."

msgid ""
"Disables the depth test, so this object is drawn on top of all others. "
"However, objects drawn after it in the draw order may cover it."
msgstr ""
"Désactive le test de profondeur, de sorte que cet objet sera dessiné devant "
"tous les autres. Cependant, les objets dessinés après lui dans l'ordre "
"d'affichage peuvent être devant."

msgid ""
"Label is scaled by depth so that it always appears the same size on screen."
msgstr ""
"L'étiquette est mise à l'échelle suivant la distance pour qu'elle apparaisse "
"toujours à la même taille à l'écran."

msgid "Represents the size of the [enum DrawFlags] enum."
msgstr "Représente la taille de l'énumération [enum DrawFlags]."

msgid ""
"This mode draws fully opaque pixels in the depth prepass. This is slower than "
"[constant ALPHA_CUT_DISABLED] or [constant ALPHA_CUT_DISCARD], but it allows "
"displaying translucent areas and smooth edges while using proper sorting.\n"
"[b]Note:[/b] When using text with overlapping glyphs (e.g., cursive scripts), "
"this mode might have transparency sorting issues between the main text and "
"the outline."
msgstr ""
"Ce mode dessine des pixels entièrement opaques lors de la pré-passe de "
"profondeur. Ceci est plus lent que [constant ALPHA_CUT_DISABLED] ou [constant "
"ALPHA_CUT_DISCARD], mais ça permet d'afficher des zones translucides et des "
"bords lisses tout en utilisant le tri approprié.\n"
"[b]Note :[/b] Lors de l'utilisation de texte avec des caractères superposés "
"(par exemple des cursives), ce mode pourrait avoir des problèmes de tri de la "
"transparence entre le texte principal et le contour."

msgid ""
"This mode draws cuts off all values below a spatially-deterministic "
"threshold, the rest will remain opaque."
msgstr ""
"Ce mode coupe toutes les valeurs en dessous d'un seuil dépendant de la "
"position, le reste restera opaque."

msgid "[Font] used for the text."
msgstr "[Font] utilisée pour le texte."

msgid "Color of the text."
msgstr "Couleur du texte."

msgid "Size of the text."
msgstr "Taille du texte."

msgid "The color of the outline."
msgstr "La couleur du contour."

msgid "Size of the shadow effect."
msgstr "Taille de l'effet d'ombre."

msgid "Casts light in a 2D environment."
msgstr "Projette de la lumière dans un environnement 2D."

msgid ""
"Casts light in a 2D environment. A light is defined as a color, an energy "
"value, a mode (see constants), and various other parameters (range and "
"shadows-related)."
msgstr ""
"Projette de la lumière dans un environnement 2D. Une lumière est définie avec "
"une couleur, une valeur d'énergie, un mode (voir les constantes), et divers "
"autres paramètres (concernant la portée et les ombres)."

msgid ""
"Returns the light's height, which is used in 2D normal mapping. See [member "
"PointLight2D.height] and [member DirectionalLight2D.height]."
msgstr ""
"Renvoie la hauteur de la lumière, qui est utilisée dans les normal maps 2D. "
"Voir [member PointLight2D.height] et [member DirectionalLight2D.height]."

msgid ""
"Sets the light's height, which is used in 2D normal mapping. See [member "
"PointLight2D.height] and [member DirectionalLight2D.height]."
msgstr ""
"Définit la hauteur de la lumière, qui est utilisée dans les normal maps 2D. "
"Voir [member PointLight2D.height] et [member DirectionalLight2D.height]."

msgid "The Light2D's blend mode."
msgstr "Le mode de mélange de la Light2D."

msgid "The Light2D's [Color]."
msgstr "La [Color] de Light2D."

msgid "If [code]true[/code], Light2D will only appear when editing the scene."
msgstr ""
"Si [code]true[/code], la Light2D n'apparaitra que dans l'éditeur de scène."

msgid "If [code]true[/code], Light2D will emit light."
msgstr "Si [code]true[/code], la Light2D émettra de la lumière."

msgid ""
"The Light2D's energy value. The larger the value, the stronger the light."
msgstr ""
"L'énergie de la Light2D. Plus la valeur est élevée, plus la lumière est forte."

msgid ""
"The layer mask. Only objects with a matching [member CanvasItem.light_mask] "
"will be affected by the Light2D. See also [member shadow_item_cull_mask], "
"which affects which objects can cast shadows.\n"
"[b]Note:[/b] [member range_item_cull_mask] is ignored by "
"[DirectionalLight2D], which will always light a 2D node regardless of the 2D "
"node's [member CanvasItem.light_mask]."
msgstr ""
"Le masque de couche. Seuls les objets ayant un [member CanvasItem.light_mask] "
"correspondant seront affectés par la Light2D. Voir aussi [member "
"shadow_item_cull_mask], qui affecte les objets qui peuvent projeter des "
"ombres.\n"
"[b]Note :[/b] [member range_item_cull_mask] est ignoré par "
"[DirectionalLight2D], qui illumine toujours un nœud 2D indépendamment du "
"[member CanvasItem.light_mask] du nœud 2D."

msgid "Maximum layer value of objects that are affected by the Light2D."
msgstr ""
"La niveau de calque maximum pour qu'un objet soit éclairé par la Light2D."

msgid "Minimum layer value of objects that are affected by the Light2D."
msgstr ""
"La niveau de calque minimum pour qu'un objet soit éclairé par la Light2D."

msgid ""
"Maximum [code]z[/code] value of objects that are affected by the Light2D."
msgstr ""
"La valeur [code]z[/code] maximale pour que les objets soient affectés pour "
"les Light2D."

msgid ""
"Minimum [code]z[/code] value of objects that are affected by the Light2D."
msgstr ""
"La valeur [code]z[/code] minimale pour que les objets soient affectés pour "
"les Light2D."

msgid "[Color] of shadows cast by the Light2D."
msgstr "La [Color] de l'ombre affichée par la Light2D."

msgid "If [code]true[/code], the Light2D will cast shadows."
msgstr "Si [code]true[/code], la Light2D affichera les ombres."

msgid "Shadow filter type."
msgstr "Type de filtrage des ombres."

msgid ""
"Smoothing value for shadows. Higher values will result in softer shadows, at "
"the cost of visible streaks that can appear in shadow rendering. [member "
"shadow_filter_smooth] only has an effect if [member shadow_filter] is "
"[constant SHADOW_FILTER_PCF5] or [constant SHADOW_FILTER_PCF13]."
msgstr ""
"Valeur de lissage pour les ombres. Des valeurs plus élevées entraîneront des "
"ombres plus douces, au prix de stries visibles qui peuvent apparaître dans le "
"rendu des ombres. [member shadow_filter_smooth] a seulement un effet si "
"[member shadow_filter] vaut [constant SHADOW_FILTER_PCF5] ou [constant "
"SHADOW_FILTER_PCF13]."

msgid ""
"The shadow mask. Used with [LightOccluder2D] to cast shadows. Only occluders "
"with a matching [member CanvasItem.light_mask] will cast shadows. See also "
"[member range_item_cull_mask], which affects which objects can [i]receive[/i] "
"the light."
msgstr ""
"Le masque des ombres. Utilisé avec [LightOccluder2D] pour projeter des "
"ombres. Seuls les occulteurs avec un masque de lumière [member "
"CanvasItem.light_mask] correspondant projetteront des ombres. Voir aussi "
"[member range_item_cull_mask], qui affecte les objets qui peuvent "
"[i]recevoir[/i] la lumière."

msgid ""
"No filter applies to the shadow map. This provides hard shadow edges and is "
"the fastest to render. See [member shadow_filter]."
msgstr ""
"Aucun filtre ne s'applique à la carte des ombres. Cela fournit des bords "
"d'ombre nets et est le plus rapide à rendre. Voir [member shadow_filter]."

msgid ""
"Adds the value of pixels corresponding to the Light2D to the values of pixels "
"under it. This is the common behavior of a light."
msgstr ""
"Ajoute la valeur des pixels correspondant à la Light2D aux valeurs des pixels "
"sous elle. C'est le comportement classique des lumières."

msgid ""
"Subtracts the value of pixels corresponding to the Light2D to the values of "
"pixels under it, resulting in inversed light effect."
msgstr ""
"Soustrait la valeur des pixels correspondant à la Light2D aux valeurs des "
"pixels sous elle, ce qui entraîne un effet de lumière inversé."

msgid ""
"Mix the value of pixels corresponding to the Light2D to the values of pixels "
"under it by linear interpolation."
msgstr ""
"Mélange la valeur des pixels correspondant à la Light2D aux valeurs des "
"pixels sous elle, via une interpolation linéaire."

msgid "Provides a base class for different kinds of light nodes."
msgstr "Fourni une classe commune aux différents types de nœuds de lumière."

msgid ""
"Light3D is the [i]abstract[/i] base class for light nodes. As it can't be "
"instantiated, it shouldn't be used directly. Other types of light nodes "
"inherit from it. Light3D contains the common variables and parameters used "
"for lighting."
msgstr ""
"Light3D est la classe de base [i]abstraite[/i] pour les nœuds de lumière. "
"Puisque elle ne peut être instanciée, elle devrait pas être utilisée "
"directement. D'autres types de nœuds de lumière héritent d'elle. Light3D "
"contient les variables et paramètres communs utilisés pour l'éclairage."

msgid ""
"Returns the [Color] of an idealized blackbody at the given [member "
"light_temperature]. This value is calculated internally based on the [member "
"light_temperature]. This [Color] is multiplied by [member light_color] before "
"being sent to the [RenderingServer]."
msgstr ""
"Renvoie la [Color] d'un corps noir idéalisé à la température de lumière "
"[member light_temperature] donnée. Cette valeur est calculée en interne en "
"fonction de la [member light_temperature]. Cette [Color] est multipliée par "
"[member light_color] avant d'être envoyée au [RenderingServer]."

msgid "Returns the value of the specified [enum Light3D.Param] parameter."
msgstr "Renvoie la valeur du paramètre [enum Light3D.Param] spécifié."

msgid "Sets the value of the specified [enum Light3D.Param] parameter."
msgstr "Définit la valeur du paramètre [enum Light3D.Param] spécifié."

msgid ""
"The distance from the camera at which the light begins to fade away (in 3D "
"units).\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D]."
msgstr ""
"La distance à la caméra à partir de laquelle la lumière commence à "
"disparaître (en unités 3D).\n"
"[b]Note :[/b] Seulement effective pour [OmniLight3D] et [SpotLight3D]."

msgid ""
"If [code]true[/code], the light will smoothly fade away when far from the "
"active [Camera3D] starting at [member distance_fade_begin]. This acts as a "
"form of level of detail (LOD). The light will fade out over [member "
"distance_fade_begin] + [member distance_fade_length], after which it will be "
"culled and not sent to the shader at all. Use this to reduce the number of "
"active lights in a scene and thus improve performance.\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D]."
msgstr ""
"Si [code]true[/code], la lumière disparaîtra en douceur lorsqu'elle est loin "
"de la [Camera3D] active, à partir de [member distance_fade_begin]. Cela agit "
"comme une forme de niveau de détail (LOD). La lumière disparaîtra sur [member "
"distance_fade_begin] + [member distance_fade_length], après quoi elle sera "
"coupée et ne sera pas envoyée au shader du tout. Utilisez ceci pour réduire "
"le nombre de lumières actives dans une scène et ainsi améliorer les "
"performances.\n"
"[b]Note :[/b] Seulement effectif pour [OmniLight3D] et [SpotLight3D]."

msgid ""
"Distance over which the light and its shadow fades. The light's energy and "
"shadow's opacity is progressively reduced over this distance and is "
"completely invisible at the end.\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D]."
msgstr ""
"Distance sur laquelle la lumière et son ombre s'effacent. L'énergie de la "
"lumière et l'opacité de l'ombre sont progressivement réduites sur cette "
"distance et sont complètement invisibles à la fin.\n"
"[b]Note :[/b] Seulement effectif pour [OmniLight3D] et [SpotLight3D]."

msgid ""
"The distance from the camera at which the light's shadow cuts off (in 3D "
"units). Set this to a value lower than [member distance_fade_begin] + [member "
"distance_fade_length] to further improve performance, as shadow rendering is "
"often more expensive than light rendering itself.\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D], and only "
"when [member shadow_enabled] is [code]true[/code]."
msgstr ""
"La distance de la caméra à partir de laquelle l'ombre de la lumière est "
"coupée (en unités 3D). Définissez ceci à une valeur inférieure à [member "
"distance_fade_begin] + [member distance_fade_length] pour améliorer encore "
"les performances, car le rendu des ombres est souvent plus cher que le rendu "
"de la lumière elle-même.\n"
"[b]Note :[/b] Seulement effectif pour [OmniLight3D] et [SpotLight3D], et "
"seulement lorsque [member shadow_enabled] vaut [code]true[/code]."

msgid ""
"If [code]true[/code], the light only appears in the editor and will not be "
"visible at runtime. If [code]true[/code], the light will never be baked in "
"[LightmapGI] regardless of its [member light_bake_mode]."
msgstr ""
"Si [code]true[/code], la lumière n'apparaît que dans l'éditeur et ne sera pas "
"visible durant l'exécution. Si [code]true[/code], la lumière ne sera jamais "
"pré-calculée dans [LightmapGI] indépendamment de son [member light_bake_mode]."

msgid ""
"The light's angular size in degrees. Increasing this will make shadows softer "
"at greater distances (also called percentage-closer soft shadows, or PCSS). "
"Only available for [DirectionalLight3D]s. For reference, the Sun from the "
"Earth is approximately [code]0.5[/code]. Increasing this value above "
"[code]0.0[/code] for lights with shadows enabled will have a noticeable "
"performance cost due to PCSS.\n"
"[b]Note:[/b] [member light_angular_distance] is not affected by [member "
"Node3D.scale] (the light's scale or its parent's scale).\n"
"[b]Note:[/b] PCSS for directional lights is only supported in the Forward+ "
"rendering method, not Mobile or Compatibility."
msgstr ""
"La taille angulaire de la lumière en degrés. Augmenter cela rendra les ombres "
"plus douces à de plus grandes distances (également appelées PCSS : Percentage-"
"Closer Soft Shadows, litt. \"ombres douces en pourcentage de proximité\"). "
"Seulement disponible pour les [DirectionalLight3D]s. Pour référence, le "
"Soleil de la Terre est à environ [code]0.5[/code]. Augmenter cette valeur au-"
"dessus de [code]0.0[/code] pour les lumières avec des ombres activées aura un "
"coût de performance notable en raison du PCSS.\n"
"[b]Note :[/b] [member light_angular_distance] n'est pas affecté par [member "
"Node3D.scale] (l'échelle de la lumière ou l'échelle de ses parents).\n"
"[b]Note :[/b] Les PCSS pour les lumières directionnelles ne sont seulement "
"supportés que dans les méthodes de rendu Forward+, pas Mobile ou "
"Compatibilité."

msgid ""
"The light's bake mode. This will affect the global illumination techniques "
"that have an effect on the light's rendering.\n"
"[b]Note:[/b] Meshes' global illumination mode will also affect the global "
"illumination rendering. See [member GeometryInstance3D.gi_mode]."
msgstr ""
"Le mode de pré-calcul de la lumière. Cela affectera les techniques "
"d'éclairage global qui ont un effet sur le rendu de la lumière.\n"
"[b]Note :[/b] Le mode d'éclairage global des maillages affectera également le "
"rendu de l'éclairage global. Voir [member GeometryInstance3D.gi_mode]."

msgid ""
"The light's color in the nonlinear sRGB color space. An [i]overbright[/i] "
"color can be used to achieve a result equivalent to increasing the light's "
"[member light_energy]."
msgstr ""
"La couleur de la lumière dans l'espace de couleur sRGB non-linéaire. Une "
"couleur [i]sur-brillante[/i] peut être utilisée pour un résultant équivalent "
"à augmenter l'énergie [member light_energy] de la lumière."

msgid ""
"The light will affect objects in the selected layers.\n"
"[b]Note:[/b] The light cull mask is ignored by [VoxelGI], SDFGI, "
"[LightmapGI], and volumetric fog. These will always render lights in a way "
"that ignores the cull mask. See also [member VisualInstance3D.layers]."
msgstr ""
"La lumière affectera les objets dans les calques sélectionnés.\n"
"[b]Note :[/b] Le masque de light cull est ignoré par [VoxelGI], SDFGI, "
"[LightmapGI], et le brouillard volumétrique. Ceux-ci rendront toujours la "
"lumière en ignorant le masque de cull. Voir aussi [member "
"VisualInstance3D.layers]."

msgid ""
"The light's strength multiplier (this is not a physical unit). For "
"[OmniLight3D] and [SpotLight3D], changing this value will only change the "
"light color's intensity, not the light's radius."
msgstr ""
"Le multiplicateur de force de la lumière (ce n'est pas une unité physique). "
"Pour [OmniLight3D] et [SpotLight3D], changer cette valeur ne changera que "
"l'intensité de la couleur de la lumière, et non le rayon de la lumière."

msgid ""
"Secondary multiplier used with indirect light (light bounces). Used with "
"[VoxelGI] and SDFGI (see [member Environment.sdfgi_enabled]).\n"
"[b]Note:[/b] This property is ignored if [member light_energy] is equal to "
"[code]0.0[/code], as the light won't be present at all in the GI shader."
msgstr ""
"Multiplicateur secondaire utilisé avec la lumière indirecte (rebonds de la "
"lumière). Utilisé avec [VoxelGI] et SDFGI (voir [member "
"Environment.sdfgi_enabled]).\n"
"[b]Note :[/b] Cette propriété est ignorée si [member light_energy] est égal à "
"[code]0.0[/code], car la lumière ne sera pas présente du tout dans le shader "
"GI."

msgid ""
"Used by positional lights ([OmniLight3D] and [SpotLight3D]) when [member "
"ProjectSettings.rendering/lights_and_shadows/use_physical_light_units] is "
"[code]true[/code]. Sets the intensity of the light source measured in Lumens. "
"Lumens are a measure of luminous flux, which is the total amount of visible "
"light emitted by a light source per unit of time.\n"
"For [SpotLight3D]s, we assume that the area outside the visible cone is "
"surrounded by a perfect light absorbing material. Accordingly, the apparent "
"brightness of the cone area does not change as the cone increases and "
"decreases in size.\n"
"A typical household lightbulb can range from around 600 lumens to 1,200 "
"lumens, a candle is about 13 lumens, while a streetlight can be approximately "
"60,000 lumens."
msgstr ""
"Utilisé par les lumières positionnelles ([OmniLight3D] et [SpotLight3D]) "
"lorsque [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] vaut [code]true[/code]. Définit l'intensité de la "
"source de lumière mesurée en lumens. Les lumens sont une mesure du flux "
"lumineux, qui est la quantité totale de lumière visible émise par une source "
"lumineuse par unité de temps.\n"
"Pour les [SpotLight3D]s, nous supposons que la zone à l'extérieur du cône "
"visible est entourée d'un matériau absorbant parfaitement la lumière. Par "
"conséquent, la luminosité apparente de la zone du cône ne change pas à mesure "
"que le cône augmente et diminue en taille.\n"
"Une ampoule typique de maison peut aller d'environ 600 lumens à 1 200 lumens, "
"une bougie est d'environ 13 lumens, tandis qu'une lumière de rue peut être "
"d'environ 60 000 lumens."

msgid ""
"Used by [DirectionalLight3D]s when [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] is [code]true[/code]. Sets the "
"intensity of the light source measured in Lux. Lux is a measure of luminous "
"flux per unit area, it is equal to one lumen per square meter. Lux is the "
"measure of how much light hits a surface at a given time.\n"
"On a clear sunny day a surface in direct sunlight may be approximately "
"100,000 lux, a typical room in a home may be approximately 50 lux, while the "
"moonlit ground may be approximately 0.1 lux."
msgstr ""
"Utilisé par les [DirectionalLight3D]s lorsque [member "
"ProjectSettings.rendering/lights_and_shadows/use_physical_light_units] vaut "
"[code]true[/code]. Définit l'intensité de la source lumineuse mesurée en lux. "
"Le lux est une mesure du flux lumineux par zone unitaire, il est égal à un "
"lumen par mètre carré. Le lux est la mesure de combien de lumière frappe une "
"surface à un moment donné.\n"
"Sur une journée ensoleillée claire, une surface en plein soleil peut être "
"d'environ 100 000 lux, une pièce typique dans une maison peut être d'environ "
"50 lux, tandis que le sol éclairé par la lumière peut être d'environ 0,1 lux."

msgid ""
"If [code]true[/code], the light's effect is reversed, darkening areas and "
"casting bright shadows."
msgstr ""
"Si [code]true[/code], l'effet de la lumière est inversé, assombrissant les "
"zones et lançant des ombres lumineuses."

msgid ""
"[Texture2D] projected by light. [member shadow_enabled] must be on for the "
"projector to work. Light projectors make the light appear as if it is shining "
"through a colored but transparent object, almost like light shining through "
"stained-glass.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for light projector textures is set "
"globally with [member ProjectSettings.rendering/textures/light_projectors/"
"filter].\n"
"[b]Note:[/b] Light projector textures are only supported in the Forward+ and "
"Mobile rendering methods, not Compatibility."
msgstr ""
"[Texture2D] projetée par la lumière. [member shadow_enabled] doit être activé "
"pour que le projecteur fonctionne. Les projecteurs de lumière font apparaître "
"la lumière comme si elle brillait à travers un objet coloré mais transparent, "
"presque comme la lumière brillant à travers du verre teinté.\n"
"[b]Note :[/b] Contrairement à [BaseMaterial3D] dont le mode de filtrage peut "
"être ajusté selon le matériau, le mode de filtrage pour les textures de "
"projecteurs de lumière est défini globalement avec [member "
"ProjectSettings.rendering/textures/light_projectors/filter].\n"
"[b]Note :[/b] Les textures de projecteurs de lumière ne sont supportées que "
"dans les méthodes de rendu Forward+ et Mobile, pas Compatibilité."

msgid ""
"The size of the light in Godot units. Only available for [OmniLight3D]s and "
"[SpotLight3D]s. Increasing this value will make the light fade out slower and "
"shadows appear blurrier (also called percentage-closer soft shadows, or "
"PCSS). This can be used to simulate area lights to an extent. Increasing this "
"value above [code]0.0[/code] for lights with shadows enabled will have a "
"noticeable performance cost due to PCSS.\n"
"[b]Note:[/b] [member light_size] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale).\n"
"[b]Note:[/b] PCSS for positional lights is only supported in the Forward+ and "
"Mobile rendering methods, not Compatibility."
msgstr ""
"La taille de la lumière en unités de Godot. Seulement disponible pour les "
"[OmniLight3D]s et [SpotLight3D]s. Augmenter cette valeur fera que la lumière "
"disparaîtra plus lentement et que les ombres apparaîtront plus floues "
"(également appelées PCSS : Percentage-Closer Soft Shadows, litt. \"ombres "
"douces en pourcentage de proximité\"). Cela peut être utilisé pour simuler "
"des lumières de zone dans une certaine mesure. Augmenter cette valeur au-"
"dessus de [code]0.0[/code] pour les lumières avec des ombres activées aura un "
"coût de performance notable en raison des PCSS.\n"
"[b]Note :[/b] [member light_size] n'est pas affecté par [member Node3D.scale] "
"(l'échelle de la lumière ou l'échelle de ses parents).\n"
"[b]Note :[/b] Les PCSS pour les lumières positionnelles ne sont seulement "
"supportés que dans les méthodes de rendu Forward+ et Mobile, pas "
"Compatibilité."

msgid ""
"The intensity of the specular blob in objects affected by the light. At "
"[code]0[/code], the light becomes a pure diffuse light. When not baking "
"emission, this can be used to avoid unrealistic reflections when placing "
"lights above an emissive surface."
msgstr ""
"L'intensité du reflet spéculaire dans les objets touchés par la lumière. Avec "
"[code]0[/code], la lumière devient une lumière purement diffuse. Si ça n'est "
"pas une émission pré-calculée, cela peut être utilisé pour éviter des reflets "
"irréalistes lorsqu'on place des lumières au-dessus d'une surface émise."

msgid ""
"Sets the color temperature of the light source, measured in Kelvin. This is "
"used to calculate a correlated color temperature which tints the [member "
"light_color].\n"
"The sun on a cloudy day is approximately 6500 Kelvin, on a clear day it is "
"between 5500 to 6000 Kelvin, and on a clear day at sunrise or sunset it "
"ranges to around 1850 Kelvin."
msgstr ""
"Définit la température de couleur de la source lumineuse, mesurée en Kelvin. "
"Ceci est utilisé pour calculer une température de couleur corrélée qui teinte "
"la [member light_color].\n"
"Le soleil sur une journée nuageuse est à environ 6500 Kelvin, sur une journée "
"ensoleillée, il est entre 5500 à 6000 Kelvin, et sur un jour ensoleillé au "
"lever du soleil ou au coucher du soleil, il va jusqu'à environ 1850 Kelvin."

msgid ""
"Secondary multiplier multiplied with [member light_energy] then used with the "
"[Environment]'s volumetric fog (if enabled). If set to [code]0.0[/code], "
"computing volumetric fog will be skipped for this light, which can improve "
"performance for large amounts of lights when volumetric fog is enabled.\n"
"[b]Note:[/b] To prevent short-lived dynamic light effects from poorly "
"interacting with volumetric fog, lights used in those effects should have "
"[member light_volumetric_fog_energy] set to [code]0.0[/code] unless [member "
"Environment.volumetric_fog_temporal_reprojection_enabled] is disabled (or "
"unless the reprojection amount is significantly lowered)."
msgstr ""
"Multiplicateur secondaire multiplié avec [member light_energy] puis utilisé "
"avec le brouillard volumique de l'[Environment] (si activé). S'il est défini "
"à [code]0.0[/code], le calcul du brouillard volumétrique sera ignoré pour "
"cette lumière, ce qui peut améliorer les performances pour de grandes "
"quantités de lumières lorsque le brouillard volumétrique est activé.\n"
"[b]Note :[/b] Pour empêcher les effets de lumière dynamiques à courte durée "
"de mal interagir avec le brouillard volumétrique, les lumières utilisées dans "
"ces effets devraient avoir [member light_volumetric_fog_energy] défini à "
"[code]0.0[/code] à moins que [member "
"Environment.volumetric_fog_temporal_reprojection_enabled] ne soit désactivé "
"(ou que la quantité de reprojection soit fortement diminuée)."

msgid ""
"Used to adjust shadow appearance. Too small a value results in self-shadowing "
"(\"shadow acne\"), while too large a value causes shadows to separate from "
"casters (\"peter-panning\"). Adjust as needed."
msgstr ""
"Utilisé pour ajuster l'apparence de l'ombre. Une valeur trop petite résulte "
"au auto-ombrage (« shadow acne »), et quqand trop grande, ça provoque des "
"ombres séparées de l'objet qui crée l'ombre (« peter-panning »). Réglez selon "
"les besoins."

msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low-"
"resolution shadow maps. A high value can impact performance, make shadows "
"appear grainy and can cause other unwanted artifacts. Try to keep as near "
"default as possible."
msgstr ""
"Floute les bords de l'ombre. Peut être utilisé pour cacher des artéfacts de "
"pixels dans des shadow maps à basse résolution. Une haute valeur peut "
"impacter la performance, faire apparaître les ombres granuleuses et peut "
"causer d'autres artéfacts indésirables. Essayez de la garder le plus près "
"possible de la valeur par défaut."

msgid "The light will only cast shadows using objects in the selected layers."
msgstr ""
"La lumière ne projettera des ombres qu'en utilisant les objets des couches "
"sélectionnées."

msgid ""
"If [code]true[/code], the light will cast real-time shadows. This has a "
"significant performance cost. Only enable shadow rendering when it makes a "
"noticeable difference in the scene's appearance, and consider using [member "
"distance_fade_enabled] to hide the light when far away from the [Camera3D]."
msgstr ""
"Si [code]true[/code], la lumière projettera des ombres en temps réel. Cela a "
"un coût en performances important. N'activez le rendu des ombres que quand il "
"fait une différence notable dans l'apparence de la scène, et envisagez "
"d'utiliser [member distance_fade_enabled] pour cacher la lumière si elle est "
"loin de la [Camera3D]."

msgid ""
"Offsets the lookup into the shadow map by the object's normal. This can be "
"used to reduce self-shadowing artifacts without using [member shadow_bias]. "
"In practice, this value should be tweaked along with [member shadow_bias] to "
"reduce artifacts as much as possible."
msgstr ""
"Décale la recherche dans la lightmap par la normale de l'objet. Cela peut "
"être utilisé pour réduire les artefacts d'auto-shadowing (litt. \"auto-"
"ombrage\") sans utiliser [member shadow_bias]. En pratique, cette valeur "
"devrait être ajustée en même temps que [member shadow_bias] pour réduire "
"autant que possible les artéfacts."

msgid ""
"The opacity to use when rendering the light's shadow map. Values lower than "
"[code]1.0[/code] make the light appear through shadows. This can be used to "
"fake global illumination at a low performance cost."
msgstr ""
"L'opacité à utiliser pour rendre la shadow map de la lumière. Les valeurs "
"inférieures à [code]1.0[/code] font apparaître la lumière à travers les "
"ombres. Cela peut être utilisé pour truquer l'éclairage global avec un coût "
"de performance faible."

msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
"cast a shadow on both sides of the mesh, set the mesh to use double-sided "
"shadows with [constant "
"GeometryInstance3D.SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
msgstr ""
"Si [code]true[/code], inverse le backface culling du maillage. Cela peut être "
"utile lorsque vous avez un maillage plat qui a une lumière derrière lui. Si "
"vous avez besoin de projeter une ombre sur les deux côtés du maillage, "
"définissez le maillage pour utiliser des ombres double-faces avec [constant "
"GeometryInstance3D.SHADOW_CASTING_SETTING_DOUBLE_SIDED]."

msgid "Constant for accessing [member light_energy]."
msgstr "La constante pour accéder à [member light_energy]."

msgid "Constant for accessing [member light_indirect_energy]."
msgstr "La constante pour accéder à [member light_indirect_energy]."

msgid "Constant for accessing [member light_volumetric_fog_energy]."
msgstr "Constante pour accéder à [member light_volumetric_fog_energy]."

msgid "Constant for accessing [member light_specular]."
msgstr "La constante pour accéder à [member light_specular]."

msgid ""
"Constant for accessing [member OmniLight3D.omni_range] or [member "
"SpotLight3D.spot_range]."
msgstr ""
"Constante pour accéder à [member OmniLight3D.omni_range] ou [member "
"SpotLight3D.spot_range]."

msgid "Constant for accessing [member light_size]."
msgstr "La constante pour accéder à [member light_size]."

msgid ""
"Constant for accessing [member OmniLight3D.omni_attenuation] or [member "
"SpotLight3D.spot_attenuation]."
msgstr ""
"Constante pour accéder à [member OmniLight3D.omni_attenuation] ou [member "
"SpotLight3D.spot_attenuation]."

msgid "Constant for accessing [member SpotLight3D.spot_angle]."
msgstr "Constante pour accéder à [member SpotLight3D.spot_angle]."

msgid "Constant for accessing [member SpotLight3D.spot_angle_attenuation]."
msgstr "Constante pour accéder à [member SpotLight3D.spot_angle_attenuation]."

msgid ""
"Constant for accessing [member "
"DirectionalLight3D.directional_shadow_max_distance]."
msgstr ""
"Constante pour accéder à [member "
"DirectionalLight3D.directional_shadow_max_distance]."

msgid ""
"Constant for accessing [member DirectionalLight3D.directional_shadow_split_1]."
msgstr ""
"Constante pour accéder à [member "
"DirectionalLight3D.directional_shadow_split_1]."

msgid ""
"Constant for accessing [member DirectionalLight3D.directional_shadow_split_2]."
msgstr ""
"Constante pour accéder à [member "
"DirectionalLight3D.directional_shadow_split_2]."

msgid ""
"Constant for accessing [member DirectionalLight3D.directional_shadow_split_3]."
msgstr ""
"Constante pour accéder à [member "
"DirectionalLight3D.directional_shadow_split_3]."

msgid ""
"Constant for accessing [member "
"DirectionalLight3D.directional_shadow_fade_start]."
msgstr ""
"Constante pour accéder à [member "
"DirectionalLight3D.directional_shadow_fade_start]."

msgid "Constant for accessing [member shadow_normal_bias]."
msgstr "Constante pour accéder à [member shadow_normal_bias]."

msgid "Constant for accessing [member shadow_bias]."
msgstr "La constante pour accéder à [member shadow_bias]."

msgid ""
"Constant for accessing [member "
"DirectionalLight3D.directional_shadow_pancake_size]."
msgstr ""
"Constante pour accéder à [member "
"DirectionalLight3D.directional_shadow_pancake_size]."

msgid "Constant for accessing [member shadow_opacity]."
msgstr "Constante pour accéder à [member shadow_opacity]."

msgid "Constant for accessing [member shadow_blur]."
msgstr "Constante pour accéder à [member shadow_blur]."

msgid "Constant for accessing [member shadow_transmittance_bias]."
msgstr "Constante pour accéder à [member shadow_transmittance_bias]."

msgid ""
"Constant for accessing [member light_intensity_lumens] and [member "
"light_intensity_lux]. Only used when [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] is [code]true[/code]."
msgstr ""
"Constante pour accéder à [member light_intensity_lumens] et [member "
"light_intensity_lux]. Seulement utilisé lorsque [member "
"ProjectSettings.rendering/lights_and_shadows/use_physical_light_units] vaut "
"[code]true[/code]."

msgid ""
"Light is ignored when baking. This is the fastest mode, but the light will "
"not be taken into account when baking global illumination. This mode should "
"generally be used for dynamic lights that change quickly, as the effect of "
"global illumination is less noticeable on those lights.\n"
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking [LightmapGI]. "
"Hiding a light will still affect baking [VoxelGI] and SDFGI (see [member "
"Environment.sdfgi_enabled])."
msgstr ""
"La lumière est ignorée lors du pré-calcul. Il s'agit du mode le plus rapide, "
"mais la lumière ne sera pas prise en compte lors du pré-calcul de "
"l'illumination globale. Ce mode devrait généralement être utilisé pour les "
"lumières dynamiques qui changent rapidement, car l'effet de l'illumination "
"globale est moins visible sur ces lumières.\n"
"[b]Note :[/b] Cacher une lumière n'affecte [i]pas[/i] le pré-calcul des "
"[LightmapGI]. Cacher une lumière affectera toujours le pré-calcul des "
"[VoxelGI] et SDFGI (voir [member Environment.sdfgi_enabled])."

msgid ""
"Light is taken into account in static baking ([VoxelGI], [LightmapGI], SDFGI "
"([member Environment.sdfgi_enabled])). The light can be moved around or "
"modified, but its global illumination will not update in real-time. This is "
"suitable for subtle changes (such as flickering torches), but generally not "
"large changes such as toggling a light on and off.\n"
"[b]Note:[/b] The light is not baked in [LightmapGI] if [member editor_only] "
"is [code]true[/code]."
msgstr ""
"La lumière est prise en compte dans le pré-calcul statique ([VoxelGI], "
"[LightmapGI], SDFGI ([member Environment.sdfgi_enabled]). La lumière peut "
"être déplacée ou modifiée, mais son illumination globale ne sera pas mise à "
"jour en temps réel. Ceci est adapté aux changements subtils (comme des "
"torches vacillantes), mais généralement pas aux grands changements tels que "
"l'allumer ou éteindre une lumière.\n"
"[b]Note :[/b] La lumière n'est pas pré-calculée dans [LightmapGI] si [member "
"editor_only] vaut [code]true[/code]."

msgid ""
"Light is taken into account in dynamic baking ([VoxelGI] and SDFGI ([member "
"Environment.sdfgi_enabled]) only). The light can be moved around or modified "
"with global illumination updating in real-time. The light's global "
"illumination appearance will be slightly different compared to [constant "
"BAKE_STATIC]. This has a greater performance cost compared to [constant "
"BAKE_STATIC]. When using SDFGI, the update speed of dynamic lights is "
"affected by [member ProjectSettings.rendering/global_illumination/sdfgi/"
"frames_to_update_lights]."
msgstr ""
"La lumière est prise en compte dans le pré-calcul dynamique ([VoxelGI] et "
"SDFGI ([member Environment.sdfgi_enabled]) seulement). La lumière peut être "
"déplacée ou modifiée avec la mise à jour de l'illumination globale en temps "
"réel. L'apparence de l'illumination globale de la lumière sera légèrement "
"différente par rapport à [constant BAKE_STATIC]. Cela a un coût de "
"performance plus élevé par rapport à [constant BAKE_STATIC]. Lors de "
"l'utilisation du SDFGI, la vitesse de mise à jour des lumières dynamiques est "
"affectée par [member ProjectSettings.rendering/global_illumination/sdfgi/"
"frames_to_update_lights]."

msgid "Computes and stores baked lightmaps for fast global illumination."
msgstr ""
"Calcule et stocke les lightmaps pré-calculées pour une illumination globale "
"rapide."

msgid ""
"The [LightmapGI] node is used to compute and store baked lightmaps. Lightmaps "
"are used to provide high-quality indirect lighting with very little light "
"leaking. [LightmapGI] can also provide rough reflections using spherical "
"harmonics if [member directional] is enabled. Dynamic objects can receive "
"indirect lighting thanks to [i]light probes[/i], which can be automatically "
"placed by setting [member generate_probes_subdiv] to a value other than "
"[constant GENERATE_PROBES_DISABLED]. Additional lightmap probes can also be "
"added by creating [LightmapProbe] nodes. The downside is that lightmaps are "
"fully static and cannot be baked in an exported project. Baking a "
"[LightmapGI] node is also slower compared to [VoxelGI].\n"
"[b]Procedural generation:[/b] Lightmap baking functionality is only available "
"in the editor. This means [LightmapGI] is not suited to procedurally "
"generated or user-built levels. For procedurally generated or user-built "
"levels, use [VoxelGI] or SDFGI instead (see [member "
"Environment.sdfgi_enabled]).\n"
"[b]Performance:[/b] [LightmapGI] provides the best possible run-time "
"performance for global illumination. It is suitable for low-end hardware "
"including integrated graphics and mobile devices.\n"
"[b]Note:[/b] Due to how lightmaps work, most properties only have a visible "
"effect once lightmaps are baked again.\n"
"[b]Note:[/b] Lightmap baking on [CSGShape3D]s and [PrimitiveMesh]es is not "
"supported, as these cannot store UV2 data required for baking.\n"
"[b]Note:[/b] If no custom lightmappers are installed, [LightmapGI] can only "
"be baked from devices that support the Forward+ or Mobile renderers.\n"
"[b]Note:[/b] The [LightmapGI] node only bakes light data for child nodes of "
"its parent. Nodes further up the hierarchy of the scene will not be baked."
msgstr ""
"Le nœud [LightmapGI] est utilisé pour calculer et stocker des lightmaps pré-"
"calculées. Les lightmaps sont utilisées pour fournir un éclairage indirect de "
"haute qualité avec très peu de fuites de lumière. [LightmapGI] peut également "
"fournir des reflets rugueux en utilisant des harmoniques sphériques si "
"[member directional] est activé. Les objets dynamiques peuvent recevoir un "
"éclairage indirect grâce à des [i]sondes de lumière[/i], qui peuvent être "
"automatiquement placées en définissant [member generate_probes_subdiv] à une "
"valeur autre que [constant GENERATE_PROBES_DISABLED]. Des sondes de lightmap "
"supplémentaires peuvent également être ajoutées en créant des nœuds "
"[LightmapProbe]. Le désavantage est que les lightmaps sont entièrement "
"statiques et ne peuvent pas être pré-calculées dans un projet exporté. Pré-"
"calculer un nœud [LightmapGI] est également plus lent que [VoxelGI].\n"
"[b]Génération procédurale :[/b] La fonctionnalité de pré-calcul des lightmaps "
"est uniquement disponible dans l'éditeur. Cela signifie que [LightmapGI] "
"n'est pas adapté aux niveaux générés procéduralement ou construits par "
"l'utilisateur. Pour les niveaux générés procéduralement ou construits par "
"l'utilisateur, utilisez [VoxelGI] ou SDFGI (voir [member "
"Environment.sdfgi_enabled]).\n"
"[b]Performance :[/b] [LightmapGI] fournit la meilleure performance "
"d'exécution possible pour l'éclairage global. Il convient pour du matériel "
"bas de gamme, y compris les graphismes intégrés et les appareils mobiles.\n"
"[b]Note :[/b] En raison de la façon dont fonctionnent les lightmaps, la "
"plupart des propriétés n'ont qu'un effet visible qu'une fois que les "
"lightmaps sont de nouveau pré-calculées.\n"
"[b]Note :[/b] Le pré-calcul des lightmaps sur des [CSGShape3D]s et "
"[PrimitiveMesh]es n'est pas supporté, car ils ne peuvent pas stocker les "
"données UV2 requises pour le pré-calcul.\n"
"[b]Note :[/b] Si aucun lightmapper personnalisé n'est installé, [LightmapGI] "
"ne peut être pré-calculée qu'à partir d'appareils qui supportent les moteurs "
"de rendus Forward+ ou Mobile.\n"
"[b]Note :[/b] Le nœud [LightmapGI] ne fait que pré-calculer des données de "
"lumière pour les nœuds enfants de son parent. Les nœuds plus haut la "
"hiérarchie de la scène ne seront pas pré-calculés."

msgid "Using Lightmap global illumination"
msgstr "Utiliser l'illumination globale par Lightmap"

msgid ""
"The bias to use when computing shadows. Increasing [member bias] can fix "
"shadow acne on the resulting baked lightmap, but can introduce peter-panning "
"(shadows not connecting to their casters). Real-time [Light3D] shadows are "
"not affected by this [member bias] property."
msgstr ""
"Le biais à utiliser lors du calcul des ombres. Augmenter [member bias] peut "
"corriger le \"shadow acne\" (litt. \"acné des ombres\", des pointillés "
"apparaissant sur les ombres) sur les lightmap résultantes, mais peut "
"introduire du peter-panning (des ombres ne se connectant pas à leur "
"projeteur). Les ombres de [Light3D] en temps réel ne sont pas affectées par "
"cette propriété [member bias]."

msgid ""
"The energy multiplier for each bounce. Higher values will make indirect "
"lighting brighter. A value of [code]1.0[/code] represents physically accurate "
"behavior, but higher values can be used to make indirect lighting propagate "
"more visibly when using a low number of bounces. This can be used to speed up "
"bake times by lowering the number of [member bounces] then increasing [member "
"bounce_indirect_energy].\n"
"[b]Note:[/b] [member bounce_indirect_energy] only has an effect if [member "
"bounces] is set to a value greater than or equal to [code]1[/code]."
msgstr ""
"Le multiplicateur d'énergie pour chaque rebond. Des valeurs plus élevées "
"rendront l'éclairage indirect plus lumineux. Une valeur de [code]1.0[/code] "
"représente un comportement physiquement correct, mais des valeurs plus "
"élevées peuvent être utilisées pour que l'éclairage indirect se propage de "
"manière plus visible lors de l'utilisation d'un faible nombre de rebonds. "
"Cela peut être utilisé pour accélérer les temps de calcul en baissant le "
"nombre de rebonds [member bounces] puis en augmentant [member "
"bounce_indirect_energy].\n"
"[b]Note :[/b] [member bounce_indirect_energy] a seulement un effet si [member "
"bounces] est défini à une valeur supérieure ou égale à [code]1[/code]."

msgid ""
"Number of light bounces that are taken into account during baking. Higher "
"values result in brighter, more realistic lighting, at the cost of longer "
"bake times. If set to [code]0[/code], only environment lighting, direct light "
"and emissive lighting is baked."
msgstr ""
"Nombre de rebonds de la lumière qui sont pris en compte lors du pré-calcul. "
"Des valeurs plus élevées résultent en un éclairage plus lumineux et plus "
"réaliste, à un coût de temps de calcul plus long. S'il est défini à [code]0[/"
"code], seuls l'éclairage de l'environnement, la lumière directe et "
"l'éclairage d'émission sont pré-calculés."

msgid ""
"The [CameraAttributes] resource that specifies exposure levels to bake at. "
"Auto-exposure and non exposure properties will be ignored. Exposure settings "
"should be used to reduce the dynamic range present when baking. If exposure "
"is too high, the [LightmapGI] will have banding artifacts or may have over-"
"exposure artifacts."
msgstr ""
"La ressource [CameraAttributes] qui précise les niveaux d'exposition auxquels "
"pré-calculer. Les propriétés d'auto-exposition et de non-exposition seront "
"ignorées. Les paramètres d'exposition devraient être utilisés pour réduire la "
"plage dynamique présente lors du pré-calcul. Si l'exposition est trop élevée, "
"le [LightmapGI] aura des artéfacts de bande ou peut avoir des artéfacts de "
"sur-exposition."

msgid ""
"The distance in pixels from which the denoiser samples. Lower values preserve "
"more details, but may give blotchy results if the lightmap quality is not "
"high enough. Only effective if [member use_denoiser] is [code]true[/code] and "
"[member ProjectSettings.rendering/lightmapping/denoising/denoiser] is set to "
"JNLM."
msgstr ""
"La distance en pixels sur laquelle le dé-bruiteur échantillonne. Les valeurs "
"inférieures conservent plus de détails, mais peuvent donner des résultats en "
"tâches si la qualité de la lightmap n'est pas assez élevée. Seulement "
"effectif si [member use_denoiser] vaut [code]true[/code] et [member "
"ProjectSettings.rendering/lightmapping/denoising/denoiser] est défini à JNLM."

msgid ""
"The strength of denoising step applied to the generated lightmaps. Only "
"effective if [member use_denoiser] is [code]true[/code] and [member "
"ProjectSettings.rendering/lightmapping/denoising/denoiser] is set to JNLM."
msgstr ""
"La force de l'étape de suppression du bruit appliquée aux lightmaps générées. "
"Seulement effective si [member use_denoiser] vaut [code]true[/code] et "
"[member ProjectSettings.rendering/lightmapping/denoising/denoiser] est défini "
"à JNLM."

msgid ""
"If [code]true[/code], bakes lightmaps to contain directional information as "
"spherical harmonics. This results in more realistic lighting appearance, "
"especially with normal mapped materials and for lights that have their direct "
"light baked ([member Light3D.light_bake_mode] set to [constant "
"Light3D.BAKE_STATIC] and with [member Light3D.editor_only] set to "
"[code]false[/code]). The directional information is also used to provide "
"rough reflections for static and dynamic objects. This has a small run-time "
"performance cost as the shader has to perform more work to interpret the "
"direction information from the lightmap. Directional lightmaps also take "
"longer to bake and result in larger file sizes.\n"
"[b]Note:[/b] The property's name has no relationship with "
"[DirectionalLight3D]. [member directional] works with all light types."
msgstr ""
"Si [code]true[/code], pré-calcule les lightmaps pour qu'elles contiennent des "
"informations directionnelles en tant qu'harmoniques sphériques. Cela résulte "
"en une apparence plus réaliste de l'éclairage, en particulier avec des "
"matériaux avec des normal maps et pour les lumières qui ont leur lumière "
"directe pré-calculée ([member Light3D.light_bake_mode] défini à [constant "
"Light3D.BAKE_STATIC] et avec [member Light3D.editor_only] défini à "
"[code]false[/code]). L'information directionnelle est également utilisée pour "
"fournir des reflets rugueux pour les objets statiques et dynamiques. Ceci a "
"un petit coût de performance lors de l'exécution puisque le shader doit "
"effectuer plus de travail pour interpréter les informations de direction de "
"la lightmap. Les lightmaps directionnelles prennent également plus de temps "
"pour pré-calculer et résultent en des tailles de fichiers plus grandes.\n"
"[b]Note :[/b] Le nom de la propriété n'est pas lié à [DirectionalLight3D]. "
"[member directional] fonctionne avec tous les types de lumière."

msgid ""
"The color to use for environment lighting. Only effective if [member "
"environment_mode] is [constant ENVIRONMENT_MODE_CUSTOM_COLOR]."
msgstr ""
"La couleur à utiliser pour l'éclairage de l'environnement. Seulement "
"effective lorsque [member environment_mode] vaut [constant "
"ENVIRONMENT_MODE_CUSTOM_COLOR]."

msgid ""
"The color multiplier to use for environment lighting. Only effective if "
"[member environment_mode] is [constant ENVIRONMENT_MODE_CUSTOM_COLOR]."
msgstr ""
"Le multiplicateur de couleur à utiliser pour l'éclairage de l'environnement. "
"Seulement effectif si [member environment_mode] est [constant "
"ENVIRONMENT_MODE_CUSTOM_COLOR]."

msgid ""
"The sky to use as a source of environment lighting. Only effective if [member "
"environment_mode] is [constant ENVIRONMENT_MODE_CUSTOM_SKY]."
msgstr ""
"Le ciel à utiliser comme source d'éclairage de l'environnement. Seulement "
"effectif si [member environment_mode] vaut [constant "
"ENVIRONMENT_MODE_CUSTOM_SKY]."

msgid "The environment mode to use when baking lightmaps."
msgstr "Le mode d'environnement à utiliser lors du pré-calcul des lightmaps."

msgid ""
"The level of subdivision to use when automatically generating "
"[LightmapProbe]s for dynamic object lighting. Higher values result in more "
"accurate indirect lighting on dynamic objects, at the cost of longer bake "
"times and larger file sizes.\n"
"[b]Note:[/b] Automatically generated [LightmapProbe]s are not visible as "
"nodes in the Scene tree dock, and cannot be modified this way after they are "
"generated.\n"
"[b]Note:[/b] Regardless of [member generate_probes_subdiv], direct lighting "
"on dynamic objects is always applied using [Light3D] nodes in real-time."
msgstr ""
"Le niveau de sous-division à utiliser lors de la génération automatique de "
"[LightmapProbe]s pour l'éclairage dynamique des objets. Des valeurs plus "
"élevées résultent en un éclairage indirect plus précis sur les objets "
"dynamiques, avec un coût de temps de calcul plus long et des tailles de "
"fichiers plus grandes.\n"
"[b]Note :[/b] Les [LightmapProbe]s générées automatiquement ne sont pas "
"visibles comme des nœuds dans le dock Scène, et ne peuvent pas être modifiés "
"de cette façon après leur génération.\n"
"[b]Note :[/b] Indépendamment de [member generate_probes_subdiv], l'éclairage "
"direct sur les objets dynamiques est toujours appliqué en utilisant des nœuds "
"[Light3D] en temps réel."

msgid "If [code]true[/code], ignore environment lighting when baking lightmaps."
msgstr ""
"Si [code]true[/code], ignore la contribution de l'environnement lors du pré-"
"calcul des lightmaps."

msgid ""
"The [LightmapGIData] associated to this [LightmapGI] node. This resource is "
"automatically created after baking, and is not meant to be created manually."
msgstr ""
"La [LightmapGIData] associé à ce nœud [LightmapGI]. Cette ressource est créée "
"automatiquement après le pré-calcul, et n'est pas destinée à être créée "
"manuellement."

msgid ""
"The maximum texture size for the generated texture atlas. Higher values will "
"result in fewer slices being generated, but may not work on all hardware as a "
"result of hardware limitations on texture sizes. Leave [member "
"max_texture_size] at its default value of [code]16384[/code] if unsure."
msgstr ""
"La taille de texture maximale pour l'atlas de texture généré. Des valeurs "
"plus élevées résulteront en moins de tranches générées, mais ne "
"fonctionneront pas sur tout les matériels en raison des limitations "
"matérielles sur les tailles de texture. Laissez [member max_texture_size] à "
"sa valeur par défaut de [code]16384[/code] si vous n'êtes pas sur."

msgid ""
"The quality preset to use when baking lightmaps. This affects bake times, but "
"output file sizes remain mostly identical across quality levels.\n"
"To further speed up bake times, decrease [member bounces], disable [member "
"use_denoiser] and/or decrease [member texel_scale].\n"
"To further increase quality, enable [member supersampling] and/or increase "
"[member texel_scale]."
msgstr ""
"Le pré-réglage de qualité à utiliser lors du pré-calcul des lightmaps. Cela "
"affecte les temps de calcul, mais les tailles des fichiers de sortie restent "
"généralement identiques à tous les niveaux de qualité.\n"
"Pour accélérer davantage les temps de calcul, diminuez [member bounces], "
"désactivez [member use_denoiser] et/ou diminuez [member texel_scale].\n"
"Pour augmenter encore la qualité, activez [member supersampling] et/ou "
"augmentez [member texel_scale]."

msgid ""
"The shadowmasking policy to use for directional shadows on static objects "
"that are baked with this [LightmapGI] instance.\n"
"Shadowmasking allows [DirectionalLight3D] nodes to cast shadows even outside "
"the range defined by their [member "
"DirectionalLight3D.directional_shadow_max_distance] property. This is done by "
"baking a texture that contains a shadowmap for the directional light, then "
"using this texture according to the current shadowmask mode.\n"
"[b]Note:[/b] The shadowmask texture is only created if [member "
"shadowmask_mode] is not [constant LightmapGIData.SHADOWMASK_MODE_NONE]. To "
"see a difference, you need to bake lightmaps again after switching from "
"[constant LightmapGIData.SHADOWMASK_MODE_NONE] to any other mode."
msgstr ""
"La politique de shadowmasking à utiliser pour les ombres directionnelles sur "
"des objets statiques qui sont pré-calculés avec cette instance [LightmapGI].\n"
"Le shadowmasking permet aux nœuds [DirectionalLight3D] de projeter des ombres "
"même en dehors de la plage définie par leur propriété [member "
"DirectionalLight3D.directional_shadow_max_distance]. Ceci est fait en pré-"
"calculant une texture qui contient une shadowmap pour la lumière "
"directionnelle, puis en utilisant cette texture selon le mode de shadowmask "
"actuel.\n"
"[b]Note :[/b] La texture Shadowmask n'est créée que si [member "
"shadowmask_mode] ne vaut pas [constant LightmapGIData.SHADOWMASK_MODE_NONE]. "
"Pour voir une différence, vous devez de nouveau pré-calculer les lightmaps "
"après avoir changé de [constant LightmapGIData.SHADOWMASK_MODE_NONE] vers "
"tout autre mode."

msgid ""
"If [code]true[/code], lightmaps are baked with the texel scale multiplied "
"with [member supersampling_factor] and downsampled before saving the lightmap "
"(so the effective texel density is identical to having supersampling "
"disabled).\n"
"Supersampling provides increased lightmap quality with less noise, smoother "
"shadows and better shadowing of small-scale features in objects. However, it "
"may result in significantly increased bake times and memory usage while "
"baking lightmaps. Padding is automatically adjusted to avoid increasing light "
"leaking."
msgstr ""
"Si [code]true[/code], les lightmaps sont pré-calculées avec l'échelle de "
"texel multipliée par [member supersampling_factor] et sous-échantilionnées "
"avant d'enregistrer la lightmap (ainsi, la densité de texel effective est "
"identique à celle avec le Suréchantillonnage désactivé).\n"
"Le suréchantillonnage offre une qualité de lightmap accrue avec moins de "
"bruit, des ombres plus lisses et un meilleur ombrage de petites "
"caractéristiques d'objets. Cependant, il peut entraîner une augmentation "
"significative des temps de calcul et d'utilisation de la mémoire pendant le "
"pré-calcul des lightmaps. Le rembourrage est automatiquement ajusté pour "
"éviter d'augmenter les fuites de lumière."

msgid ""
"The factor by which the texel density is multiplied for supersampling. For "
"best results, use an integer value. While fractional values are allowed, they "
"can result in increased light leaking and a blurry lightmap.\n"
"Higher values may result in better quality, but also increase bake times and "
"memory usage while baking.\n"
"See [member supersampling] for more information."
msgstr ""
"Le facteur par lequel la densité de texel est multipliée pour le "
"suréchantillionnage. Pour les meilleurs résultats, utilisez une valeur "
"entière. Bien que les valeurs fractionnelles soient autorisées, elles peuvent "
"entraîner une fuite des lumières accrue et une lightmap floue.\n"
"Des valeurs plus élevées peuvent résulter en une meilleure qualité, mais "
"également augmenter les temps de calcul et l'utilisation de la mémoire "
"pendant le calcul.\n"
"Voir [member supersampling] pour plus d'informations."

msgid ""
"Scales the lightmap texel density of all meshes for the current bake. This is "
"a multiplier that builds upon the existing lightmap texel size defined in "
"each imported 3D scene, along with the per-mesh density multiplier (which is "
"designed to be used when the same mesh is used at different scales). Lower "
"values will result in faster bake times.\n"
"For example, doubling [member texel_scale] doubles the lightmap texture "
"resolution for all objects [i]on each axis[/i], so it will [i]quadruple[/i] "
"the texel count."
msgstr ""
"Redimensionne la densité de texel de lightmap de tous les maillages pour le "
"pré-calcul actuel. Il s'agit d'un multiplicateur qui s'appuie sur la taille "
"de texel de lightmap existante définie dans chaque scène 3D importée, ainsi "
"que sur le multiplicateur de densité par maillage (qui est conçu pour être "
"utilisé lorsque le même maillage est utilisé à différentes échelles). les "
"valeurs inférieures résulteront en des temps de calcul plus rapides.\n"
"Par exemple, doubler [member texel_scale] double la résolution de texture de "
"la lightmap pour tous les objets [i]sur chaque axe[/i], de sorte qu'il "
"[i]quadruple[/i] le compte de texels."

msgid ""
"If [code]true[/code], uses a GPU-based denoising algorithm on the generated "
"lightmap. This eliminates most noise within the generated lightmap at the "
"cost of longer bake times. File sizes are generally not impacted "
"significantly by the use of a denoiser, although lossless compression may do "
"a better job at compressing a denoised image."
msgstr ""
"Si [code]true[/code], utilise un algorithme de dé-bruitage basé sur le GPU "
"sur la lightmap générée. Cela élimine la plupart du bruit dans la lightmap "
"générée au coût d'un temps de calcul plus long. Les tailles de fichiers ne "
"sont généralement pas impactées significativement par l'utilisation d'un dé-"
"bruiteur, bien que la compression sans perte peut faire un meilleur travail "
"pour compresser une image dé-bruitée."

msgid ""
"If [code]true[/code], a texture with the lighting information will be "
"generated to speed up the generation of indirect lighting at the cost of some "
"accuracy. The geometry might exhibit extra light leak artifacts when using "
"low resolution lightmaps or UVs that stretch the lightmap significantly "
"across surfaces. Leave [member use_texture_for_bounces] at its default value "
"of [code]true[/code] if unsure.\n"
"[b]Note:[/b] [member use_texture_for_bounces] only has an effect if [member "
"bounces] is set to a value greater than or equal to [code]1[/code]."
msgstr ""
"Si [code]true[/code], une texture avec les informations d'éclairage sera "
"générée pour accélérer la génération de l'éclairage indirect avec un coût sur "
"la précision. La géométrie peut présenter des artéfacts de fuite de lumière "
"supplémentaires lors de l'utilisation de lightmaps basse résolution ou d'UVs "
"qui étirent significativement la lightmap sur les surfaces. Laissez [member "
"use_texture_for_bounces] à sa valeur par défaut de [code]true[/code] si vous "
"n'êtes pas sûr.\n"
"[b]Note :[/b] [member use_texture_for_bounces] a seulement un effet si "
"[member bounces] est défini à une valeur supérieure ou égale à [code]1[/code]."

msgid ""
"Low bake quality (fastest bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/low_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/low_quality_probe_ray_count]."
msgstr ""
"Qualité de calcul faible (temps de calcul les plus rapides). La qualité de ce "
"préréglage peut être ajustée en changeant [member ProjectSettings.rendering/"
"lightmapping/bake_quality/low_quality_ray_count] et [member "
"ProjectSettings.rendering/lightmapping/bake_quality/"
"low_quality_probe_ray_count]."

msgid ""
"Medium bake quality (fast bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/medium_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/medium_quality_probe_ray_count]."
msgstr ""
"Qualité de calcul moyenne (temps de calcul rapides). La qualité de ce "
"préréglage peut être ajustée en changeant [member ProjectSettings.rendering/"
"lightmapping/bake_quality/medium_quality_ray_count] et [member "
"ProjectSettings.rendering/lightmapping/bake_quality/"
"medium_quality_probe_ray_count]."

msgid ""
"High bake quality (slow bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/high_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/high_quality_probe_ray_count]."
msgstr ""
"Qualité de calcul élevée (temps de calcul lents). La qualité de ce préréglage "
"peut être ajustée en changeant [member ProjectSettings.rendering/lightmapping/"
"bake_quality/high_quality_ray_count] et [member ProjectSettings.rendering/"
"lightmapping/bake_quality/high_quality_probe_ray_count]."

msgid ""
"Highest bake quality (slowest bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/ultra_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/ultra_quality_probe_ray_count]."
msgstr ""
"Qualité de calcul la plus élevée (temps de calcul les plus lents). La qualité "
"de ce préréglage peut être ajustée en changeant [member "
"ProjectSettings.rendering/lightmapping/bake_quality/ultra_quality_ray_count] "
"et [member ProjectSettings.rendering/lightmapping/bake_quality/"
"ultra_quality_probe_ray_count]."

msgid "Don't generate lightmap probes for lighting dynamic objects."
msgstr ""
"Ne pas générer de sondes de lightmap pour éclairer les objets dynamiques."

msgid "Lowest level of subdivision (fastest bake times, smallest file sizes)."
msgstr ""
"Niveau le plus bas de sous-division (temps de calcul les plus rapides, "
"tailles de fichiers les plus petites)."

msgid "Low level of subdivision (fast bake times, small file sizes)."
msgstr ""
"Faible niveau de sous-division (temps de calcul rapide, petites tailles de "
"fichiers)."

msgid "High level of subdivision (slow bake times, large file sizes)."
msgstr ""
"Niveau élevé de sous-division (temps de calcul lent, tailles de fichiers "
"importantes)."

msgid "Highest level of subdivision (slowest bake times, largest file sizes)."
msgstr ""
"Niveau le plus élevé de sous-division (temps de calcul les plus lents, "
"tailles de fichiers les plus grandes)."

msgid "Lightmap baking was successful."
msgstr "Le pré-calcul de la lightmap a réussi."

msgid ""
"Lightmap baking failed because the root node for the edited scene could not "
"be accessed."
msgstr ""
"Le pré-calcul des lightmaps a échoué car il était impossible d'accéder au "
"nœud racine de la scène éditée."

msgid ""
"Lightmap baking failed as the lightmap data resource is embedded in a foreign "
"resource."
msgstr ""
"Le pré-calcul des lightmaps a échoué car la ressource des données de lightmap "
"est intégrée dans une ressource étrangère."

msgid ""
"Lightmap baking failed as there is no lightmapper available in this Godot "
"build."
msgstr ""
"Le pré-calcul des lightmaps a échoué car il n'y a pas de lightmapper "
"disponible dans cette compilation de Godot."

msgid ""
"Lightmap baking failed as the [LightmapGIData] save path isn't configured in "
"the resource."
msgstr ""
"Le pré-calcul des lightmaps a échoué car le chemin de sauvegarde des "
"[LightmapGIData] n'est pas configuré dans la ressource."

msgid ""
"Lightmap baking failed as there are no meshes whose [member "
"GeometryInstance3D.gi_mode] is [constant GeometryInstance3D.GI_MODE_STATIC] "
"and with valid UV2 mapping in the current scene. You may need to select 3D "
"scenes in the Import dock and change their global illumination mode "
"accordingly."
msgstr ""
"Le pré-calcul des lightmaps a échoué car il n'y a pas de maillage dont le "
"[member GeometryInstance3D.gi_mode] vaut [constant "
"GeometryInstance3D.GI_MODE_STATIC] et avec un mapping UV2 valide dans la "
"scène actuelle. Vous pourriez avoir besoin de sélectionner des scène 3D dans "
"le dock Import et changer leur mode d'illumination globale de manière "
"appropriée."

msgid ""
"Lightmap baking failed as the lightmapper failed to analyze some of the "
"meshes marked as static for baking."
msgstr ""
"Le pré-calcul des lightmaps a échoué car le lightmapper a échoué à analyser "
"certains des maillages marqués comme statique pour le pré-calcul."

msgid ""
"Lightmap baking failed as the resulting image couldn't be saved or imported "
"by Godot after it was saved."
msgstr ""
"Le pré-calcul des lightmaps a échoué car l'image résultante n'a pas pu être "
"sauvegardée ou importée par Godot après sa sauvegarde."

msgid ""
"The user aborted the lightmap baking operation (typically by clicking the "
"[b]Cancel[/b] button in the progress dialog)."
msgstr ""
"L'utilisateur a avorté l'opération de pré-calcul des lightmaps (généralement "
"en cliquant sur le bouton [b]Annuler[/b] dans le fenêtre de progression)."

msgid ""
"Lightmap baking failed as the maximum texture size is too small to fit some "
"of the meshes marked for baking."
msgstr ""
"Le pré-calcul des lightmaps a échoué car la taille de texture maximale est "
"trop petite pour faire rentrer certains des maillages marqués pour le pré-"
"calcul."

msgid "Lightmap baking failed as the lightmap is too small."
msgstr "Le pré-calcul de la lightmap a échoué car la lightmap est trop petite."

msgid "Lightmap baking failed as the lightmap was unable to fit into an atlas."
msgstr ""
"Le pré-calcul de la lightmap a échoué car la lightmap ne rentrait pas dans un "
"atlas (atlas trop petit)."

msgid "Ignore environment lighting when baking lightmaps."
msgstr ""
"Ignorer l'éclairage de l'environnement lors du pré-calcul des lightmaps."

msgid ""
"Use the scene's environment lighting when baking lightmaps.\n"
"[b]Note:[/b] If baking lightmaps in a scene with no [WorldEnvironment] node, "
"this will act like [constant ENVIRONMENT_MODE_DISABLED]. The editor's preview "
"sky and sun is [i]not[/i] taken into account by [LightmapGI] when baking "
"lightmaps."
msgstr ""
"Utiliser l'éclairage de l'environnement de la scène lors du pré-calcul des "
"lightmaps.\n"
"[b]Note :[/b] Si vous calculez des lightmaps dans une scène sans nœud "
"[WorldEnvironment], cela se comportera comme [constant "
"ENVIRONMENT_MODE_DISABLED]. Le ciel de prévisualisation de l'éditeur et le "
"soleil ne sont [i]pas[/i] pris en compte par [LightmapGI] lors du pré-calcul "
"des lightmaps."

msgid ""
"Use [member environment_custom_sky] as a source of environment lighting when "
"baking lightmaps."
msgstr ""
"Utiliser [member environment_custom_sky] comme source de l'éclairage de "
"l'environnement lors du pré-calcul des lightmaps."

msgid ""
"Use [member environment_custom_color] multiplied by [member "
"environment_custom_energy] as a constant source of environment lighting when "
"baking lightmaps."
msgstr ""
"Utiliser [member environment_custom_color] multiplié par [member "
"environment_custom_energy] comme source constante d'éclairage de "
"l'environnement lors du pré-calcul des lightmaps."

msgid "Contains baked lightmap and dynamic object probe data for [LightmapGI]."
msgstr ""
"Contient une lightmap pré-calculée et des données de sonde d'objet dynamique "
"pour [LightmapGI]."

msgid ""
"[LightmapGIData] contains baked lightmap and dynamic object probe data for "
"[LightmapGI]. It is replaced every time lightmaps are baked in [LightmapGI]."
msgstr ""
"[LightmapGIData] contient une lightmap pré-calculée et des données de sonde "
"d'objet dynamique pour [LightmapGI]. Elle est remplacée chaque fois que les "
"lightmaps sont pré-calculées dans [LightmapGI]."

msgid "Adds an object that is considered baked within this [LightmapGIData]."
msgstr ""
"Ajoute un objet qui est considéré comme pré-calculé dans cette "
"[LightmapGIData]."

msgid ""
"Clear all objects that are considered baked within this [LightmapGIData]."
msgstr ""
"Retire tous les objets qui sont considérés comme pré-calculés dans cette "
"[LightmapGIData]."

msgid ""
"Returns the number of objects that are considered baked within this "
"[LightmapGIData]."
msgstr ""
"Renvoie le nombre d'objets considérés comme pré-calculés dans cette "
"[LightmapGIData]."

msgid "Returns the [NodePath] of the baked object at index [param user_idx]."
msgstr ""
"Renvoie le [NodePath] de l'objet pré-calculé à l'index [param user_idx]."

msgid ""
"If [code]true[/code], lightmaps were baked with directional information. See "
"also [member LightmapGI.directional]."
msgstr ""
"Si [code]true[/code], les lightmaps ont été pré-calculées avec des "
"informations directionnelles. Voir aussi [member LightmapGI.directional]."

msgid ""
"If [param uses_spherical_harmonics] is [code]true[/code], tells the engine to "
"treat the lightmap data as if it was baked with directional information.\n"
"[b]Note:[/b] Changing this value on already baked lightmaps will not cause "
"them to be baked again. This means the material appearance will look "
"incorrect until lightmaps are baked again, in which case the value set here "
"is discarded as the entire [LightmapGIData] resource is replaced by the "
"lightmapper."
msgstr ""
"Si [param uses_spherical_harmonics] vaut [code]true[/code], indique au moteur "
"de traiter les données de la lightmap comme si elle était pré-calculée avec "
"des informations directionnelles.\n"
"[b]Note :[/b] Modifier cette valeur sur les lightmaps déjà pré-calculées ne "
"déclenchera pas un re-calcul. Cela signifie que l'apparence du matériau sera "
"incorrecte jusqu'à ce que les lightmaps soient re-calculées, auquel cas la "
"valeur définie ici est supprimée puisque la ressource [LightmapGIData] "
"entière est remplacée par le lightmapper."

msgid ""
"The lightmap atlas can now contain multiple textures. See [member "
"lightmap_textures]."
msgstr ""
"L'atlas des lightmap peut désormais contenir plusieurs textures. Voir [member "
"lightmap_textures]."

msgid "The lightmap atlas texture generated by the lightmapper."
msgstr "La texture de l'atlas des lightmaps générée par le lightmapper."

msgid "The lightmap atlas textures generated by the lightmapper."
msgstr "Les textures de l'atlas des lightmaps générées par le lightmapper."

msgid "The shadowmask atlas textures generated by the lightmapper."
msgstr "Les textures de l'atlas du shadowmask générées par le lightmapper."

msgid ""
"Shadowmasking is disabled. No shadowmask texture will be created when baking "
"lightmaps. Existing shadowmask textures will be removed during baking."
msgstr ""
"Le shadowmasking est désactivé. Aucune texture de shadowmask ne sera créée "
"lors du pré-calcul des lightmaps. Les textures de shadowmask existantes "
"seront retirées pendant le pré-calcul."

msgid ""
"Shadowmasking is enabled. Directional shadows that are outside the [member "
"DirectionalLight3D.directional_shadow_max_distance] will be rendered using "
"the shadowmask texture. Shadows that are inside the range will be rendered "
"using real-time shadows exclusively. This mode allows for more precise real-"
"time shadows up close, without the potential \"smearing\" effect that can "
"occur when using lightmaps with a high texel size. The downside is that when "
"the camera moves fast, the transition between the real-time light and "
"shadowmask can be obvious. Also, objects that only have shadows baked in the "
"shadowmask (and no real-time shadows) won't display any shadows up close."
msgstr ""
"Le shadowmasking est activé. Les ombres directionnelles qui sont à "
"l'extérieur de la [member DirectionalLight3D.directional_shadow_max_distance] "
"seront rendues en utilisant la texture de Shadowmask. Les ombres qui sont à "
"l'intérieur de l'intervalle seront rendues en utilisant des ombres en temps "
"réel exclusivement. Ce mode permet d'obtenir des ombres en temps réel plus "
"précises à proximité, sans l'effet potentiel de « barbouillage » qui peut se "
"produire lors de l'utilisation de lightmaps avec une taille élevée de texel. "
"Le désavantage est que lorsque la caméra se déplace rapidement, la transition "
"entre la lumière en temps réel et le shadowmask peut être évidente. De plus, "
"les objets qui n'ont que des ombres pré-calculées dans le shadowmask (et pas "
"d'ombres en temps réel) n'afficheront pas d'ombres lorsqu'ils sont proches."

msgid ""
"Shadowmasking is enabled. Directional shadows will be rendered with real-time "
"shadows overlaid on top of the shadowmask texture. This mode makes for "
"smoother shadow transitions when the camera moves fast, at the cost of a "
"potential smearing effect for directional shadows that are up close (due to "
"the real-time shadow being mixed with a low-resolution shadowmask). Objects "
"that only have shadows baked in the shadowmask (and no real-time shadows) "
"will keep their shadows up close."
msgstr ""
"Le shadowmasking est activé. Les ombres directionnelles sont rendues avec des "
"ombres en temps réel superposées sur la texture de shadowmask. Ce mode permet "
"des transitions d'ombre plus lisses lorsque la caméra se déplace rapidement, "
"au coût d'un effet de barbouillage potentiel pour les ombres directionnelles "
"qui sont proches (en raison de l'ombre en temps réel qui est mélangée avec un "
"shadowmask à basse résolution). Les objets qui n'ont que des ombres pré-"
"calculées dans le shadowmask (et pas d'ombres en temps réel) garderont leurs "
"ombres lorsqu'ils sont proches."

msgid "Abstract class extended by lightmappers, for use in [LightmapGI]."
msgstr ""
"Classe abstraite étendue par les lightmappers, pour utilisation dans "
"[LightmapGI]."

msgid ""
"This class should be extended by custom lightmapper classes. Lightmappers can "
"then be used with [LightmapGI] to provide fast baked global illumination in "
"3D.\n"
"Godot contains a built-in GPU-based lightmapper [LightmapperRD] that uses "
"compute shaders, but custom lightmappers can be implemented by C++ modules."
msgstr ""
"Cette classe devrait être étendue par des classes de lightmapper "
"personnalisées. Les lightmappers peuvent ensuite être utilisées avec "
"[LightmapGI] pour fournir un éclairage global rapide en 3D.\n"
"Godot contient un lightmapper basé sur le GPU intégré,[LightmapperRD], qui "
"utilise des shader de calcul, mais les lightmappers personnalisés peuvent "
"être implémentés par des modules en C++."

msgid "The built-in GPU-based lightmapper for use with [LightmapGI]."
msgstr "Le lightmapper intégré basé sur le GPU à utiliser avec [LightmapGI]."

msgid ""
"Represents a single manually placed probe for dynamic object lighting with "
"[LightmapGI]."
msgstr ""
"Représente une unique sonde placée manuellement pour l'éclairage des objets "
"dynamiques avec [LightmapGI]."

msgid ""
"[LightmapProbe] represents the position of a single manually placed probe for "
"dynamic object lighting with [LightmapGI]. Lightmap probes affect the "
"lighting of [GeometryInstance3D]-derived nodes that have their [member "
"GeometryInstance3D.gi_mode] set to [constant "
"GeometryInstance3D.GI_MODE_DYNAMIC].\n"
"Typically, [LightmapGI] probes are placed automatically by setting [member "
"LightmapGI.generate_probes_subdiv] to a value other than [constant "
"LightmapGI.GENERATE_PROBES_DISABLED]. By creating [LightmapProbe] nodes "
"before baking lightmaps, you can add more probes in specific areas for "
"greater detail, or disable automatic generation and rely only on manually "
"placed probes instead.\n"
"[b]Note:[/b] [LightmapProbe] nodes that are placed after baking lightmaps are "
"ignored by dynamic objects. You must bake lightmaps again after creating or "
"modifying [LightmapProbe]s for the probes to be effective."
msgstr ""
"[LightmapProbe] représente la position d'une unique sonde placée manuellement "
"pour l'éclairage d'objets dynamiques avec [LightmapGI]. Les sondes de "
"lightmaps affectent l'éclairage des nœuds dérivés de [GeometryInstance3D] qui "
"ont leur [member GeometryInstance3D.gi_mode] défini à [constant "
"GeometryInstance3D.GI_MODE_DYNAMIC].\n"
"Généralement, les sondes [LightmapGI] sont placées automatiquement en "
"définissant [member LightmapGI.generate_probes_subdiv] à une valeur autre que "
"[constant LightmapGI.GENERATE_PROBES_DISABLED]. En créant des nœuds "
"[LightmapProbe] avant de faire des lightmaps, vous pouvez ajouter plus de "
"sondes dans des zones spécifiques pour plus de détails, ou désactiver la "
"génération automatique et ne compter que sur des sondes placées "
"manuellement.\n"
"[b]Note :[/b] Les nœuds [LightmapProbe] placés que les lightmaps ont été "
"calculées sont ignorés par les objets dynamiques. Vous devez re-calculer les "
"lightmaps après avoir créé ou modifié des [LightmapProbe]s pour que les "
"sondes soient effectives."

msgid "Occludes light cast by a Light2D, casting shadows."
msgstr "Occlut la lumière projetée par une Light2D, projetant des ombres."

msgid ""
"Occludes light cast by a Light2D, casting shadows. The LightOccluder2D must "
"be provided with an [OccluderPolygon2D] in order for the shadow to be "
"computed."
msgstr ""
"Occlut la lumière projetée par une Light2D, projetant des ombres. Le "
"LightOccluder2D doit être fourni avec un [OccluderPolygon2D] pour que l'ombre "
"soit calculée."

msgid "The [OccluderPolygon2D] used to compute the shadow."
msgstr "Le [OccluderPolygon2D] utilisé pour calculer l'ombre."

msgid ""
"The LightOccluder2D's occluder light mask. The LightOccluder2D will cast "
"shadows only from Light2D(s) that have the same light mask(s)."
msgstr ""
"Le masque de lumière de l'occulteur du LightOccluder2D. Le LightOccluder2D ne "
"projettera des ombres que depuis le ou les Light2D qui ont le même masque de "
"lumière."

msgid ""
"If enabled, the occluder will be part of a real-time generated signed "
"distance field that can be used in custom shaders."
msgstr ""
"Si activé, l'occulteur fera parti d'un champ de distance signé généré en "
"temps réel qui peut être utilisé dans des shaders personnalisées."

msgid "A 2D polyline that can optionally be textured."
msgstr "Une polyligne 2D qui peut être optionnellement texturée."

msgid ""
"This node draws a 2D polyline, i.e. a shape consisting of several points "
"connected by segments. [Line2D] is not a mathematical polyline, i.e. the "
"segments are not infinitely thin. It is intended for rendering and it can be "
"colored and optionally textured.\n"
"[b]Warning:[/b] Certain configurations may be impossible to draw nicely, such "
"as very sharp angles. In these situations, the node uses fallback drawing "
"logic to look decent.\n"
"[b]Note:[/b] [Line2D] is drawn using a 2D mesh."
msgstr ""
"Ce nœud dessine une polyligne 2D, c'est-à-dire une forme composée de "
"plusieurs points reliés par des segments. [Line2D] n'est pas une polyligne "
"mathématique, c'est-à-dire que les segments ne sont pas infiniment minces. "
"Elle est destinée au rendu et peut être optionnellement coloriée et "
"texturée.\n"
"[b]Attention :[/b] Certaines configurations peuvent être impossibles à bien "
"dessiner, comme des angles très tranchants. Dans ces situations, le nœud "
"utilise une logique de dessin de repli pour paraître décent.\n"
"[b]Note :[/b] [Line2D] est dessiné à l'aide d'un maillage 2D."

msgid ""
"Adds a point with the specified [param position] relative to the polyline's "
"own position. If no [param index] is provided, the new point will be added to "
"the end of the points array.\n"
"If [param index] is given, the new point is inserted before the existing "
"point identified by index [param index]. The indices of the points after the "
"new point get increased by 1. The provided [param index] must not exceed the "
"number of existing points in the polyline. See [method get_point_count]."
msgstr ""
"Ajoute un point avec la position [param position] spécifiée par rapport à la "
"propre position de la polyligne. Si aucun [param index] n'est fourni, le "
"nouveau point sera ajouté à la fin du tableau de points.\n"
"Si [param index] est donné, le nouveau point est inséré avant le point "
"existant identifié par l'index [param index]. Les indices des points après le "
"nouveau point sont augmentés de 1. L'index [param index] fourni ne doit pas "
"dépasser le nombre de points existants dans la polyligne. Voir [method "
"get_point_count]."

msgid "Removes all points from the polyline, making it empty."
msgstr "Enlève tous les points de la polyligne, la rendant vide."

msgid "Returns the number of points in the polyline."
msgstr "Renvoie le nombre de points dans la polyligne."

msgid "Returns the position of the point at index [param index]."
msgstr "Renvoie la position du point à l'index [param index]."

msgid "Removes the point at index [param index] from the polyline."
msgstr "Supprime le point à l'index [param index] de la polyligne."

msgid ""
"Overwrites the position of the point at the given [param index] with the "
"supplied [param position]."
msgstr ""
"Remplace la position du point à l'[param index] donné par la [param position] "
"spécifiée."

msgid ""
"The style of the beginning of the polyline, if [member closed] is "
"[code]false[/code]."
msgstr ""
"Le style du début de la polyligne, si [member closed] vaut [code]false[/code]."

msgid ""
"If [code]true[/code] and the polyline has more than 2 points, the last point "
"and the first one will be connected by a segment.\n"
"[b]Note:[/b] The shape of the closing segment is not guaranteed to be "
"seamless if a [member width_curve] is provided.\n"
"[b]Note:[/b] The joint between the closing segment and the first segment is "
"drawn first and it samples the [member gradient] and the [member width_curve] "
"at the beginning. This is an implementation detail that might change in a "
"future version."
msgstr ""
"Si [code]true[/code] et que la polyligne a plus de 2 points, le dernier point "
"et le premier seront connectés par un segment.\n"
"[b]Note :[/b] La forme du segment de fermeture n'est pas garantie d'être "
"transparente si une courbe de largeur [member width_curve] est fournie.\n"
"[b]Note:[/b] La liaison entre le segment de fermeture et le premier segment "
"est dessinée en premier et échantillonne le [member gradient] et la [member "
"width_curve] au début. C'est un détail d'implémentation qui pourrait changer "
"dans une version future."

msgid "The color of the polyline. Will not be used if a gradient is set."
msgstr ""
"La couleur de la polyligne. Ne sera pas utilisé si un gradient est défini."

msgid ""
"The style of the end of the polyline, if [member closed] is [code]false[/"
"code]."
msgstr ""
"Le style de la fin de la polyligne, si [member closed] vaut [code]false[/"
"code]."

msgid ""
"The gradient is drawn through the whole line from start to finish. The "
"[member default_color] will not be used if this property is set."
msgstr ""
"Le gradient est dessiné sur toute la ligne du début à la fin. La couleur par "
"défaut [member default_color] ne sera pas utilisée si cette propriété est "
"définie."

msgid "The style of the connections between segments of the polyline."
msgstr "Le style des connexions entre les segments de la polyligne."

msgid ""
"The points of the polyline, interpreted in local 2D coordinates. Segments are "
"drawn between the adjacent points in this array."
msgstr ""
"Les points de la polyline, interprétés dans les coordonnées 2D locales. Les "
"segments sont dessinés entre les points adjacents dans ce tableau."

msgid ""
"The smoothness used for rounded joints and caps. Higher values result in "
"smoother corners, but are more demanding to render and update."
msgstr ""
"Le lissage utilisé pour les liaisons arrondies et les bouchons. Les valeurs "
"plus élevées entraînent des coins plus lisses, mais sont plus exigeantes pour "
"rendre et mettre à jour."

msgid ""
"The texture used for the polyline. Uses [member texture_mode] for drawing "
"style."
msgstr ""
"La texture utilisée pour la polyligne. Utilise [member texture_mode] pour le "
"style de dessin."

msgid "The style to render the [member texture] of the polyline."
msgstr "Le style de rendu de la [member texture] de la polyligne."

msgid "The polyline's width."
msgstr "La largeur de la polyligne."

msgid ""
"The polyline's width curve. The width of the polyline over its length will be "
"equivalent to the value of the width curve over its domain. The width curve "
"should be a unit [Curve]."
msgstr ""
"La courbe de largeur de la polyligne. La largeur de la polyligne sur sa "
"longueur sera équivalente à la valeur de la courbe de largeur sur son "
"domaine. La courbe de largeur devrait être une [Curve] unitaire."

msgid ""
"Makes the polyline's joints bevelled/chamfered, connecting the sides of the "
"two segments with a simple line."
msgstr ""
"Rend les liaisons de la polyligne biseautées/chanfreinées, reliant les côtés "
"des deux segments avec une ligne simple."

msgid ""
"Makes the polyline's joints rounded, connecting the sides of the two segments "
"with an arc. The detail of this arc depends on [member round_precision]."
msgstr ""
"Rend les liaisons de la polyligne arrondies, reliant les côtés des deux "
"segments avec un arc. Le détail de cet arc dépend de [member round_precision]."

msgid "Draws no line cap."
msgstr "Ne dessine pas de bouchon de ligne."

msgid "Draws the line cap as a box, slightly extending the first/last segment."
msgstr ""
"Dessine le bouchon de ligne comme une boîte, prolongeant légèrement le "
"premier / dernier segment."

msgid "Draws the line cap as a semicircle attached to the first/last segment."
msgstr ""
"Dessine le bouchon de ligne comme un demi-cercle attaché au premier/dernier "
"segment."

msgid "An input field for single-line text."
msgstr "Un champ de saisie pour du texte sur une seule ligne."

msgid ""
"[LineEdit] provides an input field for editing a single line of text.\n"
"- When the [LineEdit] control is focused using the keyboard arrow keys, it "
"will only gain focus and not enter edit mode.\n"
"- To enter edit mode, click on the control with the mouse, see also [member "
"keep_editing_on_text_submit].\n"
"- To exit edit mode, press [code]ui_text_submit[/code] or [code]ui_cancel[/"
"code] (by default [kbd]Escape[/kbd]) actions.\n"
"- Check [method edit], [method unedit], [method is_editing], and [signal "
"editing_toggled] for more information.\n"
"While entering text, it is possible to insert special characters using "
"Unicode, OEM or Windows alt codes:\n"
"- To enter Unicode codepoints, hold [kbd]Alt[/kbd] and type the codepoint on "
"the numpad. For example, to enter the character [code]á[/code] (U+00E1), hold "
"[kbd]Alt[/kbd] and type [kbd]+E1[/kbd] on the numpad (the leading zeroes can "
"be omitted).\n"
"- To enter OEM codepoints, hold [kbd]Alt[/kbd] and type the code on the "
"numpad. For example, to enter the character [code]á[/code] (OEM 160), hold "
"[kbd]Alt[/kbd] and type [code]160[/code] on the numpad.\n"
"- To enter Windows codepoints, hold [kbd]Alt[/kbd] and type the code on the "
"numpad. For example, to enter the character [code]á[/code] (Windows 0225), "
"hold [kbd]Alt[/kbd] and type [kbd]0[/kbd], [kbd]2[/kbd], [kbd]2[/kbd], "
"[kbd]5[/kbd] on the numpad. The leading zero here must [b]not[/b] be omitted, "
"as this is how Windows codepoints are distinguished from OEM codepoints.\n"
"[b]Important:[/b]\n"
"- Focusing the [LineEdit] with [code]ui_focus_next[/code] (by default "
"[kbd]Tab[/kbd]) or [code]ui_focus_prev[/code] (by default [kbd]Shift + Tab[/"
"kbd]) or [method Control.grab_focus] still enters edit mode (for "
"compatibility).\n"
"[LineEdit] features many built-in shortcuts that are always available "
"([kbd]Ctrl[/kbd] here maps to [kbd]Cmd[/kbd] on macOS):\n"
"- [kbd]Ctrl + C[/kbd]: Copy\n"
"- [kbd]Ctrl + X[/kbd]: Cut\n"
"- [kbd]Ctrl + V[/kbd] or [kbd]Ctrl + Y[/kbd]: Paste/\"yank\"\n"
"- [kbd]Ctrl + Z[/kbd]: Undo\n"
"- [kbd]Ctrl + ~[/kbd]: Swap input direction.\n"
"- [kbd]Ctrl + Shift + Z[/kbd]: Redo\n"
"- [kbd]Ctrl + U[/kbd]: Delete text from the caret position to the beginning "
"of the line\n"
"- [kbd]Ctrl + K[/kbd]: Delete text from the caret position to the end of the "
"line\n"
"- [kbd]Ctrl + A[/kbd]: Select all text\n"
"- [kbd]Up Arrow[/kbd]/[kbd]Down Arrow[/kbd]: Move the caret to the beginning/"
"end of the line\n"
"On macOS, some extra keyboard shortcuts are available:\n"
"- [kbd]Cmd + F[/kbd]: Same as [kbd]Right Arrow[/kbd], move the caret one "
"character right\n"
"- [kbd]Cmd + B[/kbd]: Same as [kbd]Left Arrow[/kbd], move the caret one "
"character left\n"
"- [kbd]Cmd + P[/kbd]: Same as [kbd]Up Arrow[/kbd], move the caret to the "
"previous line\n"
"- [kbd]Cmd + N[/kbd]: Same as [kbd]Down Arrow[/kbd], move the caret to the "
"next line\n"
"- [kbd]Cmd + D[/kbd]: Same as [kbd]Delete[/kbd], delete the character on the "
"right side of caret\n"
"- [kbd]Cmd + H[/kbd]: Same as [kbd]Backspace[/kbd], delete the character on "
"the left side of the caret\n"
"- [kbd]Cmd + A[/kbd]: Same as [kbd]Home[/kbd], move the caret to the "
"beginning of the line\n"
"- [kbd]Cmd + E[/kbd]: Same as [kbd]End[/kbd], move the caret to the end of "
"the line\n"
"- [kbd]Cmd + Left Arrow[/kbd]: Same as [kbd]Home[/kbd], move the caret to the "
"beginning of the line\n"
"- [kbd]Cmd + Right Arrow[/kbd]: Same as [kbd]End[/kbd], move the caret to the "
"end of the line\n"
"[b]Note:[/b] Caret movement shortcuts listed above are not affected by "
"[member shortcut_keys_enabled]."
msgstr ""
"[LineEdit] fournit un champ de saisie pour l'édition d'une seule ligne de "
"texte.\n"
"- Lorsque le contrôle [LineEdit] est ciblé à l'aide des touches "
"directionnelles du clavier, il gagnera seulement le focus et n'entrera pas en "
"mode édition.\n"
"- Pour entrer dans le mode édition, cliquez sur le contrôle avec la souris, "
"voir aussi [member keep_editing_on_text_submit].\n"
"- Pour quitter le mode édition, appuyez sur les actions [code]ui_text_submit[/"
"code] ou [code]ui_cancel[/code] (par défaut [kbd]Escape[/kbd]).\n"
"- Vérifiez [method edit], [method unedit], [method is_editing], et [signal "
"editing_toggled] pour plus d'informations.\n"
"En entrant le texte, il est possible d'insérer des caractères spéciaux à "
"l'aide de codes Alt Unicode, OEM ou Windows :\n"
"- Pour entrer les codes Unicode, maintenez [kbd]Alt[/kbd] et tapez le point "
"de code sur le pavé numérique. Par exemple, pour saisir le caractère [code]á[/"
"code] (U+00E1), maintenez [kbd]Alt[/kbd] et tapez [kbd]+E1[/kbd] sur le pavé "
"numérique (les zéros du début peuvent être omis).\n"
"- Pour entrer les codes OEM, maintenez [kbd]Alt[/kbd] et tapez le code sur le "
"pavé numérique. Par exemple, pour saisir le caractère [code]á[/code] (OEM "
"160), maintenez [kbd]Alt[/kbd] et tapez [code]160[/code] sur le pavé "
"numérique.\n"
"- Pour entrer les codes Windows, maintenez [kbd]Alt[/kbd] et tapez le code "
"sur le pavé numérique. Par exemple, pour saisir le caractère [code]á[/code] "
"(Windows 0225), maintenez [kbd]Alt[/kbd] et tapez [kbd]0[/kbd], [kbd]2[/kbd], "
"[kbd]2[/kbd], [kbd]5[/kbd] sur le pavé numérique. Les zéros du début ne "
"doivent ici [b]pas[/b] être omis, car c'est la façon dont les points de code "
"Windows se distinguent des points de code OEM.\n"
"[b]Important :[/b]\n"
"- Le focus sur [LineEdit] avec [code]ui_focus_next[/code] (par défaut "
"[kbd]Tab[/kbd]) ou [code]ui_focus_prev[/code] (par défaut [kbd]Shift + Tab[/"
"kbd]) ou [method Control.grab_focus] entre toujours en mode édition (pour la "
"compatibilité).\n"
"[LineEdit] dispose de nombreux raccourcis intégrés qui sont toujours "
"disponibles ([kbd]Ctrl[/kbd] ici est lié à [kbd]Cmd[/kbd] sur macOS) :\n"
"- [kbd]Ctrl + C[/kbd] : Copier\n"
"- [kbd]Ctrl + X[/kbd] : Couper\n"
"- [kbd]Ctrl + V[/kbd] ou [kbd]Ctrl + Y[/kbd] : Coller/\"yank\"\n"
"- [kbd]Ctrl + Z[/kbd] : Annuler\n"
"- [kbd]Ctrl + ~[/kbd] : Inverser la direction d'entrée.\n"
"- [kbd]Ctrl + Shift + Z[/kbd] : Refaire\n"
"- [kbd]Ctrl + U[/kbd] : Supprimer le texte depuis le curseur jusqu'au début "
"de la ligne\n"
"- [kbd]Ctrl + K[/kbd] : Supprimer le texte depuis le curseur jusqu'à la fin "
"de la ligne\n"
"- [kbd]Ctrl + A[/kbd] : Sélectionner tout le texte\n"
"- [kbd]Flèche haut[/kbd]/[kbd]Flèche bas[/kbd] : Déplace le curseur au début/"
"fin de la ligne\n"
"Sous macOS, d'autres raccourcis sont disponibles :\n"
"- [kbd]Cmd + F[/kbd] : Comme avec [kbd]Flèche droite[/kbd], déplace le "
"curseur d'un caractère vers la droite\n"
"- [kbd]Cmd + B[/kbd] : Comme avec [kbd]Flèche gauche[/kbd], déplace le "
"curseur d'un caractère vers la gauche\n"
"- [kbd]Cmd + P[/kbd] : Comme avec [kbd]Flèche haut[/kbd], déplace le curseur "
"à la ligne précédente\n"
"- [kbd]Cmd + N[/kbd] : Comme avec [kbd]Flèche bas[/kbd], déplace le curseur à "
"la ligne suivante\n"
"- [kbd]Cmd + D[/kbd] : Comme avec [kbd]Suppr[/kbd], supprime le caractère à "
"droite du curseur\n"
"- [kbd]Cmd + H[/kbd] : Comme avec [kbd]Retour arrière[/kbd], supprime le "
"caractère à gauche du curseur\n"
"- [kbd]Cmd + A[/kbd] : Comme avec [kbd]Home[/kbd], déplace le curseur au "
"début de la ligne\n"
"- [kbd]Cmd + E[/kbd] : Comme avec [kbd]End[/kbd], déplace le curseur à la fin "
"de la ligne\n"
"- [kbd]Cmd + Flèche gauche[/kbd] : Comme avec [kbd]Home[/kbd], déplace le "
"curseur au début de la ligne\n"
"- [kbd]Cmd + Flèche droite[/kbd] : Comme avec [kbd]End[/kbd], déplace le "
"curseur à la fin de la ligne\n"
"[b]Note :[/b] Les raccourcis de mouvements de curseur énumérés ci-dessus ne "
"sont pas affectés par [member shortcut_keys_enabled]."

msgid "Erases the [LineEdit]'s [member text]."
msgstr "Efface le [member text] du [LineEdit]."

msgid "Clears the current selection."
msgstr "Efface la sélection actuelle."

msgid "Returns the text inside the selection."
msgstr "Renvoie le texte de la sélection."

msgid "Returns the selection begin column."
msgstr "Renvoie la colonne de début de la sélection."

msgid "Returns the selection end column."
msgstr "Renvoie la colonne de fin de la sélection."

msgid "Returns [code]true[/code] if a \"redo\" action is available."
msgstr ""
"Renvoie [code]true[/code] si une action « refaire » (redo) est disponible."

msgid "Returns [code]true[/code] if the user has selected text."
msgstr "Renvoie [code]true[/code] si l'utilisateur a sélectionné du texte."

msgid "Returns [code]true[/code] if an \"undo\" action is available."
msgstr ""
"Renvoie [code]true[/code] si une action « annuler » (undo) est disponible."

msgid "Executes a given action as defined in the [enum MenuItems] enum."
msgstr ""
"Exécute l'action donnée comme définit par l'énumération [enum MenuItems]."

msgid "Selects the whole [String]."
msgstr "Sélectionne l’ensemble [String]."

msgid "If [code]true[/code], makes the caret blink."
msgstr "Si [code]true[/code], fait clignoter le curseur."

msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr "Si [code]true[/code], le menu contextuel apparaitra au clic-droit."

msgid ""
"If [code]true[/code], the selected text will be deselected when focus is lost."
msgstr ""
"Si [code]true[/code], le texte actuellement sélectionné sera désélectionné "
"quand le focus sera perdu."

msgid "If [code]true[/code], allow drag and drop of selected text."
msgstr "Si [code]true[/code], permet le déposé-glissé du texte sélectionné."

msgid "If [code]true[/code], control characters are displayed."
msgstr "Si [code]true[/code], les caractères de contrôle sont affichés."

msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
"Si [code]false[/code], le texte existant ne peut être modifié et du nouveau "
"texte ne peut être ajouté."

msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
"Si [code]true[/code], la largeur du [LineEdit] augmentera pour rester plus "
"longue que le texte [member text]. Elle ne se compressera [b]pas[/b] si "
"[member text] est raccourci."

msgid ""
"Maximum number of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit.\n"
"When a limit is defined, characters that would exceed [member max_length] are "
"truncated. This happens both for existing [member text] contents when setting "
"the max length, or for new text inserted in the [LineEdit], including "
"pasting.\n"
"If any input text is truncated, the [signal text_change_rejected] signal is "
"emitted with the truncated substring as a parameter:\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Hello world\"\n"
"max_length = 5\n"
"# `text` becomes \"Hello\".\n"
"max_length = 10\n"
"text += \" goodbye\"\n"
"# `text` becomes \"Hello good\".\n"
"# `text_change_rejected` is emitted with \"bye\" as a parameter.\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Hello world\";\n"
"MaxLength = 5;\n"
"// `Text` becomes \"Hello\".\n"
"MaxLength = 10;\n"
"Text += \" goodbye\";\n"
"// `Text` becomes \"Hello good\".\n"
"// `text_change_rejected` is emitted with \"bye\" as a parameter.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La quantité maximale de caractères qui peuvent être entrés dans le "
"[LineEdit]. Aucune limite si [code]0[/code].\n"
"Quand une limite est définie, les caractères qui dépassent les [member "
"max_length] premiers caractères sont tronqués. Cela s'applique au contenu du "
"[member text] existant lorsque la longueur maximale est définie ou quand un "
"nouveau texte est inséré dans le [LineEdit], en étant par exemple collé.\n"
"Si du texte est tronqué, le signal [signal text_change_rejected] est émis "
"avec la sous-chaîne tronquée en paramètre :\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Salut le monde\"\n"
"max_length = 5\n"
"# `text` est tronqué à \"Salut\".\n"
"max_length = 11\n"
"text += \" l'univers\"\n"
"# `text` devient \"Salut l'uni\".\n"
"# `text_change_rejected` est émis avec \"vers\" passé en paramètre.\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Salut le monde\";\n"
"MaxLength = 5;\n"
"// `Text` est tronqué à \"Salut\".\n"
"MaxLength = 11;\n"
"Text += \" l'univers\"\n"
"// `Text` devient \"Salut l'uni\".\n"
"// `text_change_rejected` est émis avec \"vers\" passé en paramètre.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
"Texte affiché lorsque le [LineEdit] est vide. Ce n'est [b]pas[/b] la valeur "
"par défaut du [LineEdit] (voir [member text])."

msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
"Définit l'icône qui apparaîtra à l'extrémité droite du [LineEdit] s'il n'y a "
"pas de texte [member text], ou toujours, si [member clear_button_enabled] est "
"défini à [code]false[/code]."

msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
"Si [code]true[/code], chaque caractère est remplacé par le caractère secret "
"(voir [member secret_character])."

msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
"Si [code]false[/code], il n'est pas possible de sélectionner le texte avec la "
"souris ou le clavier."

msgid ""
"If [code]true[/code], shortcut keys for context menu items are enabled, even "
"if the context menu is disabled."
msgstr ""
"Si [code]true[/code], les touches de raccourci pour les éléments de menu "
"contextuel sont activées, même si le menu contextuel est désactivé."

msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
"Valeur de la chaîne de caractères du [LineEdit].\n"
"[b]Note :[/b] Changer le texte en utilisant cette propriété n'émettra pas le "
"signal [signal text_changed]."

msgid "Specifies the type of virtual keyboard to show."
msgstr "Spécifie le type de clavier virtuel à afficher."

msgid "Emitted when the text changes."
msgstr "Émis lorsque le texte change."

msgid "Cuts (copies and clears) the selected text."
msgstr "Coupe (copie puis efface) le texte sélectionné."

msgid "Copies the selected text."
msgstr "Copie le texte sélectionné."

msgid "Erases the whole [LineEdit] text."
msgstr "Efface l’ensemble du texte [LineEdit]."

msgid "Selects the whole [LineEdit] text."
msgstr "Sélectionne l'ensemble du texte [LineEdit]."

msgid "Undoes the previous action."
msgstr "Annule l’action précédente."

msgid "Reverse the last undo action."
msgstr "Inverser la dernière action d'annulation."

msgid "Sets text direction to inherited."
msgstr "Definit la direction du texte à \"hérité\"."

msgid "Sets text direction to automatic."
msgstr "Définit la direction du texte à \"automatique\"."

msgid "Sets text direction to left-to-right."
msgstr "Définit la direction du texte à \"gauche à droite\"."

msgid "Sets text direction to right-to-left."
msgstr "Définit la direction du texte à \"droite à gauche\"."

msgid "Represents the size of the [enum MenuItems] enum."
msgstr "Représente la taille de l'énumération [enum MenuItems]."

msgid "Color used as default tint for the clear button."
msgstr "La couleur utilisée pour la teinte par défaut pour le bouton effacer."

msgid "Color used for the clear button when it's pressed."
msgstr "La couleur utilisée pour le bouton effacer quand il est appuyé."

msgid "Default font color."
msgstr "Couleur de police par défaut."

msgid "The tint of text outline of the [LineEdit]."
msgstr "La teinte du contour du texte du [LineEdit]."

msgid "Font color for [member placeholder_text]."
msgstr "Couleur de police pour [member placeholder_text]."

msgid "Font color for selected text (inside the selection rectangle)."
msgstr ""
"La couleur de la police du texte sélectionné (à l'intérieur du rectangle de "
"sélection)."

msgid "Font color when editing is disabled."
msgstr "La couleur de police quand l'édition est désactivée."

msgid "Color of the selection rectangle."
msgstr "La couleur du rectangle de sélection."

msgid "Font used for the text."
msgstr "Police utilisée pour le texte."

msgid "Font size of the [LineEdit]'s text."
msgstr "Taille de police du texte de [LineEdit]."

msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr "La texture pour le bouton effacer. Voir [member clear_button_enabled]."

msgid "Default background for the [LineEdit]."
msgstr "Arrière-plan par défaut pour le [LineEdit]."

msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
"Arrière-plan utilisé lorsque le [LineEdit] est en mode lecture seule ([member "
"editable] est défini à [code]false[/code])."

msgid "A button that represents a link."
msgstr "Un bouton qui représente un lien."

msgid "The LinkButton will always show an underline at the bottom of its text."
msgstr "Le LinkButton affichera toujours une ligne sous le texte."

msgid ""
"The LinkButton will show an underline at the bottom of its text when the "
"mouse cursor is over it."
msgstr ""
"Le LinkButton affichera une ligne sous le texte quand il sera survolé pour le "
"curseur de la souris."

msgid "The LinkButton will never show an underline at the bottom of its text."
msgstr "Le LinkButton n'affichera jamais de ligne sous le texte."

msgid "Default text [Color] of the [LinkButton]."
msgstr "La [Color] par défaut du texte pour le [LinkButton]."

msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr "La [Color] de texte utilisée quand le [LinkButton] est survolé."

msgid "The tint of text outline of the [LinkButton]."
msgstr "La teinte du contour du texte du [LinkButton]."

msgid "Text [Color] used when the [LinkButton] is being pressed."
msgstr "La [Color] de texte utilisée quand le [LinkButton] est pressé."

msgid "The vertical space between the baseline of text and the underline."
msgstr "L'espacement vertical entre la ligne de base du texte et le surlignage."

msgid "[Font] of the [LinkButton]'s text."
msgstr "La [Font] du texte du [LinkButton]."

msgid "Font size of the [LinkButton]'s text."
msgstr "Taille de police du texte de [LinkButton]."

msgid "The message received is a script error."
msgstr "Le message reçu est une erreur de script."

msgid "The message received is a shader error."
msgstr "Le message reçu est une erreur de shader."

msgid "The [LookAtModifier3D] rotates a bone to look at a target."
msgstr "Le [LookAtModifier3D] tourne un os pour regarder une cible."

msgid ""
"If [member origin_from] is [constant ORIGIN_FROM_SPECIFIC_BONE], the bone "
"global pose position specified for this is used as origin."
msgstr ""
"Si [member origin_from] vaut [constant ORIGIN_FROM_SPECIFIC_BONE], la "
"position de pose globale de l'os spécifié pour cela est utilisée comme "
"origine."

msgid ""
"If [member origin_from] is [constant ORIGIN_FROM_EXTERNAL_NODE], the global "
"position of the [Node3D] specified for this is used as origin."
msgstr ""
"Si [member origin_from] vaut [constant ORIGIN_FROM_EXTERNAL_NODE], la "
"position globale du [Node3D] spécifié pour cela est utilisée comme origine."

msgid ""
"This value determines from what origin is retrieved for use in the "
"calculation of the forward vector."
msgstr ""
"Cette valeur détermine de quoi l'origine est récupérée pour le calcul du "
"vecteur avant."

msgid ""
"The offset of the bone pose origin. Matching the origins by offset is useful "
"for cases where multiple bones must always face the same direction, such as "
"the eyes.\n"
"[b]Note:[/b] This value indicates the local position of the object set in "
"[member origin_from]."
msgstr ""
"Le décalage de l'origine de la pose de l'os. Faire correspondre les origines "
"par décalage est utile pour les cas où plusieurs os doivent toujours faire "
"face à la même direction, comme les yeux.\n"
"[b]Note :[/b] Cette valeur indique la position locale de l'objet défini dans "
"[member origin_from]."

msgid ""
"The threshold to start damping for [member secondary_negative_limit_angle]."
msgstr ""
"Le seuil pour commencer l'amortissement pour [member "
"secondary_negative_limit_angle]."

msgid ""
"The threshold to start damping for [member secondary_positive_limit_angle]."
msgstr ""
"Le seuil pour commencer l'amortissement pour [member "
"secondary_positive_limit_angle]."

msgid "If [code]true[/code], provides rotation by two axes."
msgstr "Si [code]true[/code], fournit une rotation à deux axes."

msgid "Abstract base class for the game's main loop."
msgstr "La classe abstraite de base pour la boucle principale du jeu."

msgid "Called before the program exits."
msgstr "Appelé avant que le programme se termine."

msgid "Called once during initialization."
msgstr "Appelé une fois lors de l’initialisation."

msgid "Emitted when a user responds to a permission request."
msgstr "Émis quand l'utilisateur répond à une demande de permission."

msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
"Notification reçue de l'OS lorsque l'application dépasse sa mémoire "
"attribuée.\n"
"Spécifique à la plate-forme iOS."

msgid ""
"Notification received when translations may have changed. Can be triggered by "
"the user changing the locale. Can be used to respond to language changes, for "
"example to change the UI strings on the fly. Useful when working with the "
"built-in translation support, like [method Object.tr]."
msgstr ""
"La notification reçue quand les traductions peuvent avoir changé. Peut être "
"déclenchée quand l'utilisateur modifie les paramètres régionaux. Permet de "
"réagir aux changements de langue, par exemple en modifiant le texte des "
"interfaces utilisateur à la volée. Pratique lorsque vous utilisez la prise en "
"charge intégrée des traductions, comme par le biais de [method Object.tr]."

msgid ""
"Notification received from the OS when a request for \"About\" information is "
"sent.\n"
"Specific to the macOS platform."
msgstr ""
"Notification reçue de l'OS lorsqu'une requête d'information \"À propos\"/"
"\"About\" est envoyée.\n"
"Spécifique à la plateforme macOS."

msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
"Notification reçue depuis le gestionnaire de plantage de Godot quand le "
"moteur est sur le point de planter.\n"
"Implémenté sur les environnements de bureau si le gestionnaire de plantage "
"est activé."

msgid ""
"Notification received from the OS when the application is resumed.\n"
"Specific to the Android and iOS platforms."
msgstr ""
"Notification reçue du système d'exploitation une fois de retour sur "
"l'application.\n"
"Spécifique aux plateformes Android et iOS."

msgid ""
"Notification received from the OS when the application is paused.\n"
"Specific to the Android and iOS platforms.\n"
"[b]Note:[/b] On iOS, you only have approximately 5 seconds to finish a task "
"started by this signal. If you go over this allotment, iOS will kill the app "
"instead of pausing it."
msgstr ""
"Notification reçue du système d'exploitation lorsque l'application est mise "
"en pause.\n"
"Spécifique aux plateformes Android et iOS.\n"
"[b]Note :[/b] Sur iOS, vous n'avez qu'environ 5 secondes pour terminer une "
"tâche commencée par ce signal. Si vous dépassez ce temps attribué, iOS va "
"tuer l'application au lieu de la mettre en pause."

msgid ""
"Notification received from the OS when the application is focused, i.e. when "
"changing the focus from the OS desktop or a thirdparty application to any "
"open window of the Godot instance.\n"
"Implemented on desktop and mobile platforms."
msgstr ""
"Notification reçue du système d'exploitation lorsque l'application prend le "
"focus, c.à.d. lors du changement de focus du bureau de l'OS ou d'une "
"application tierce vers n'importe quelle fenêtre de l'instance Godot.\n"
"Implémentée sur les plateformes mobiles et de bureau."

msgid ""
"Notification received from the OS when the application is defocused, i.e. "
"when changing the focus from any open window of the Godot instance to the OS "
"desktop or a thirdparty application.\n"
"Implemented on desktop and mobile platforms."
msgstr ""
"Notification reçue du système d'exploitation lorsque l'application perd le "
"focus, c.à.d. lors du changement de focus de n'importe quelle fenêtre de "
"l'instance Godot vers le bureau de l'OS ou une application tierce.\n"
"Implémentée sur les plateformes mobiles et de bureau."

msgid "A container that keeps a margin around its child controls."
msgstr "Un conteneur qui garde une marge autour de ses contrôles enfants."

msgid "Generic 2D position hint for editing."
msgstr "Un marqueur dans l'éditeur pour une position 2D quelconque."

msgid "Generic 3D position hint for editing."
msgstr "Un marqueur dans l'éditeur pour une position 3D quelconque."

msgid "Data transformation (marshaling) and encoding helpers."
msgstr "Transformation de données (\"marshalling\") et assistants d'encodage."

msgid "Provides data transformation and encoding utility functions."
msgstr ""
"Fournis des fonctions utilitaires pour la transformation et le codage des "
"données."

msgid ""
"Returns a decoded [PackedByteArray] corresponding to the Base64-encoded "
"string [param base64_str]."
msgstr ""
"Renvoie un [PackedByteArray] décodé correspondant à la chaîne de caractères "
"[param base64_str] encodée en Base64."

msgid ""
"Returns a decoded string corresponding to the Base64-encoded string [param "
"base64_str]."
msgstr ""
"Renvoie une chaîne de caractères décodée qui correspond à la chaîne de "
"caractères encodée en Base64 [param base64_str]."

msgid ""
"Returns a decoded [Variant] corresponding to the Base64-encoded string [param "
"base64_str]. If [param allow_objects] is [code]true[/code], decoding objects "
"is allowed.\n"
"Internally, this uses the same decoding mechanism as the [method "
"@GlobalScope.bytes_to_var] method.\n"
"[b]Warning:[/b] Deserialized objects can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats such as remote code execution."
msgstr ""
"Renvoie un [Variant] décodé correspondant à la chaîne encodée en Base64 "
"[param base64_str]. Si [param allow_objects] vaut [code]true[/code], le "
"décodage d'objets est autorisé.\n"
"En interne, cela utilise le même mécanisme de décodage que la méthode [method "
"@GlobalScope.bytes_to_var].\n"
"[b]Attention :[/b] Les objets désérialisés peuvent contenir du code qui va "
"être exécuté. N'utilisez pas cette option si l'objet sérialisé provient de "
"sources non approuvées pour éviter les menaces potentielles de sécurité "
"telles que l'exécution de code à distance."

msgid "Returns a Base64-encoded string of a given [PackedByteArray]."
msgstr ""
"Renvoie une chaine de caractères encodée en Base64 d'un [PackedByteArray] "
"donné."

msgid "Returns a Base64-encoded string of the UTF-8 string [param utf8_str]."
msgstr ""
"Renvoie une chaîne de caractères encodée en Base64 de la chaîne UTF-8 [param "
"utf8_str]."

msgid ""
"Returns a Base64-encoded string of the [Variant] [param variant]. If [param "
"full_objects] is [code]true[/code], encoding objects is allowed (and can "
"potentially include code).\n"
"Internally, this uses the same encoding mechanism as the [method "
"@GlobalScope.var_to_bytes] method."
msgstr ""
"Renvoie une chaîne de caractères encodée en Base64 du [Variant] [param "
"variant]. Si [param full_objects] vaut [code]true[/code], l'encodage d'objets "
"est autorisé (et ils peuvent alors éventuellement inclure du code).\n"
"En interne, cela utilise le même mécanisme d'encodage que la méthode [method "
"@GlobalScope.var_to_bytes]."

msgid ""
"Virtual base class for applying visual properties to an object, such as color "
"and roughness."
msgstr ""
"Classe de base virtuelle pour appliquer des propriétés visuelles à un objet, "
"comme la couleur et la rugosité."

msgid ""
"[Material] is a base resource used for coloring and shading geometry. All "
"materials inherit from it and almost all [VisualInstance3D] derived nodes "
"carry a [Material]. A few flags and parameters are shared between all "
"material types and are configured here.\n"
"Importantly, you can inherit from [Material] to create your own custom "
"material type in script or in GDExtension."
msgstr ""
"[Material] est une ressource de base utilisée pour colorer et ombrager la "
"géométrie. Tous les matériaux héritent d'elle et presque tous les nœuds "
"dérivés de [VisualInstance3D] portent un [Material]. Quelques drapeaux et "
"paramètres sont partagés entre tous les types de matériaux et sont configurés "
"ici.\n"
"Notamment, vous pouvez hériter de [Material] pour créer votre propre type de "
"matériau personnalisé dans un script ou dans une GDExtension."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally to determine if [member next_pass] should be shown "
"in the editor or not."
msgstr ""
"Seulement exposée dans le but de la redéfinir. Vous ne pouvez pas appeler "
"cette fonction directement. Utilisée en interne pour déterminer si [member "
"next_pass] doit être affiché dans l'éditeur ou non."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally to determine if [member render_priority] should be "
"shown in the editor or not."
msgstr ""
"Seulement exposée dans le but de la redéfinir. Vous ne pouvez pas appeler "
"cette fonction directement. Utilisée en interne pour déterminer si [member "
"render_priority] doit être affiché dans l'éditeur ou non."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally by various editor tools."
msgstr ""
"Seulement exposée dans le but de la redéfinir. Vous ne pouvez pas appeler "
"cette fonction directement. Utilisée en interne par plusieurs outils de "
"l'éditeur."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally by various editor tools. Used to access the RID of "
"the [Material]'s [Shader]."
msgstr ""
"Seulement exposée dans le but de la redéfinir. Vous ne pouvez pas appeler "
"cette fonction directement. Utilisée en interne par plusieurs outils de "
"l'éditeur. Utilisée pour accéder au RID du [Shader] de ce [Material]."

msgid "Creates a placeholder version of this resource ([PlaceholderMaterial])."
msgstr ""
"Crée une version placeholder de cette ressource ([PlaceholderMaterial])."

msgid ""
"Only available when running in the editor. Opens a popup that visualizes the "
"generated shader code, including all variants and internal shader code. See "
"also [method Shader.inspect_native_shader_code]."
msgstr ""
"Seulement disponible dans l'éditeur. Ouvre un popup qui visualise le code de "
"shader généré, y compris toutes les variantes et le code interne du shader. "
"Voir aussi [method Shader.inspect_native_shader_code]."

msgid ""
"Sets the [Material] to be used for the next pass. This renders the object "
"again using a different material.\n"
"[b]Note:[/b] [member next_pass] materials are not necessarily drawn "
"immediately after the source [Material]. Draw order is determined by material "
"properties, [member render_priority], and distance to camera.\n"
"[b]Note:[/b] This only applies to [StandardMaterial3D]s and [ShaderMaterial]s "
"with type \"Spatial\"."
msgstr ""
"Définit le [Material] à utiliser pour le prochain passe. Cela rend l'objet à "
"nouveau en utilisant un matériau différent.\n"
"[b]Note :[/b] Les matériaux [member next_pass] ne sont pas nécessairement "
"dessinés immédiatement après le [Material] source. L'ordre de dessin est "
"déterminé par les propriétés du matériau, [member render_priority], et la "
"distance à la caméra.\n"
"[b]Note :[/b] Ceci ne s'applique qu'aux [StandardMaterial3D]s et "
"[ShaderMaterial]s avec le type \"Spatial\"."

msgid ""
"Sets the render priority for objects in 3D scenes. Higher priority objects "
"will be sorted in front of lower priority objects. In other words, all "
"objects with [member render_priority] [code]1[/code] will render on top of "
"all objects with [member render_priority] [code]0[/code].\n"
"[b]Note:[/b] This only applies to [StandardMaterial3D]s and [ShaderMaterial]s "
"with type \"Spatial\".\n"
"[b]Note:[/b] This will not impact how transparent objects are sorted relative "
"to opaque objects or how dynamic meshes will be sorted relative to other "
"opaque meshes. This is because all transparent objects are drawn after all "
"opaque objects and all dynamic opaque meshes are drawn before other opaque "
"meshes."
msgstr ""
"Définit la priorité de rendu des objets dans les scènes 3D. Des objets "
"prioritaires plus élevés seront placés devant des objets prioritaires "
"inférieurs. En d'autres termes, tous les objets avec une [member "
"render_priority] de [code]1[/code] rendront au-dessus de tous les objets avec "
"une [member render_priority] de [code]0[/code].\n"
"[b]Note :[/b] Ceci ne s'applique qu'aux [StandardMaterial3D]s et "
"[ShaderMaterial]s avec le type \"Spatial\".\n"
"[b]Note :[/b] Cela n'aura pas d'impact sur la façon dont les objets "
"transparents sont triés par rapport aux objets opaques ou sur la façon dont "
"les maillages dynamiques seront triés par rapport aux autres maillages "
"opaques. C'est parce que tous les objets transparents sont dessinés après "
"tous les objets opaques et que tous les maillages opaques dynamiques sont "
"dessinés avant les autres maillages opaques."

msgid "Maximum value for the [member render_priority] parameter."
msgstr "La valeur maximale pour le paramètre [member render_priority]."

msgid "Minimum value for the [member render_priority] parameter."
msgstr "La valeur minimale pour le paramètre [member render_priority]."

msgid "A horizontal menu bar that creates a menu for each [PopupMenu] child."
msgstr ""
"Une barre de menu horizontale qui crée un menu pour chaque [PopupMenu] enfant."

msgid ""
"A horizontal menu bar that creates a menu for each [PopupMenu] child. New "
"items are created by adding [PopupMenu]s to this node. Item title is "
"determined by [member Window.title], or node name if [member Window.title] is "
"empty. Item title can be overridden using [method set_menu_title]."
msgstr ""
"Une barre de menu horizontale qui crée un menu pour chaque [PopupMenu] "
"enfant. Les nouveaux éléments sont créés en ajoutant des [PopupMenu]s à ce "
"nœud. Le titre de l'élément est déterminé par [member Window.title], ou le "
"nom du nœud si [member Window.title] est vide. Le titre de l'élément peut "
"être redéfini par [method set_menu_title]."

msgid "Returns number of menu items."
msgstr "Renvoie le nombre d'éléments de menu."

msgid "Returns [PopupMenu] associated with menu item."
msgstr "Renvoie le [PopupMenu] associé avec l'élément de menu."

msgid "Returns menu item title."
msgstr "Renvoie le titre de l'élément du menu."

msgid "Returns menu item tooltip."
msgstr "Renvoie l'info-bulle de l'élément du menu."

msgid "Returns [code]true[/code], if menu item is disabled."
msgstr "Renvoie [code]true[/code] si l'élément de menu est désactivé."

msgid "Returns [code]true[/code], if menu item is hidden."
msgstr "Renvoie [code]true[/code] si l'élément de menu est caché."

msgid ""
"Returns [code]true[/code], if system global menu is supported and used by "
"this [MenuBar]."
msgstr ""
"Renvoie [code]true[/code], si le menu global du système est supporté et "
"utilisé par ce [MenuBar]."

msgid ""
"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
"the button."
msgstr ""
"Si [code]true[/code], les raccourcis sont désactivés et ne peuvent pas être "
"utilisés pour déclencher le bouton."

msgid "If [code]true[/code], menu item is disabled."
msgstr "Si [code]true[/code], l'élément de menu est désactivé."

msgid "If [code]true[/code], menu item is hidden."
msgstr "Si [code]true[/code], l'élément de menu est caché."

msgid "Sets menu item title."
msgstr "Définit le titre de l'élément de menu."

msgid "Sets menu item tooltip."
msgstr "Définit l’info-bulle de l'élément du menu."

msgid "Flat [MenuBar] don't display item decoration."
msgstr ""
"Les [MenuBar]s \"flat\" (plats) n'affichent pas la décoration des éléments."

msgid ""
"If [code]true[/code], [MenuBar] will use system global menu when supported.\n"
"[b]Note:[/b] If [code]true[/code] and global menu is supported, this node is "
"not displayed, has zero size, and all its child nodes except [PopupMenu]s are "
"inaccessible.\n"
"[b]Note:[/b] This property overrides the value of the [member "
"PopupMenu.prefer_native_menu] property of the child nodes."
msgstr ""
"Si [code]true[/code], le [MenuBar] utilisera le menu global du système "
"lorsqu'il est supporté.\n"
"[b]Note :[/b] Si [code]true[/code] et que le menu global est suppporté, ce "
"nœud n'est pas affiché, a une taille zéro, et tous ses nœuds enfants sauf les "
"[PopupMenu]s sont inaccessibles.\n"
"[b]Note :[/b] Cette propriété redéfinit la valeur de la propriété [member "
"PopupMenu.prefer_native_menu] des nœuds enfants."

msgid ""
"Position order in the global menu to insert [MenuBar] items at. All menu "
"items in the [MenuBar] are always inserted as a continuous range. Menus with "
"lower [member start_index] are inserted first. Menus with [member "
"start_index] equal to [code]-1[/code] are inserted last."
msgstr ""
"L'ordre de position dans le menu global dans lequel insérer des éléments "
"[MenuBar]. Tous les éléments de menu dans le [MenuBar] sont toujours insérés "
"en une plage continue. Les menus avec [member start_index] bas sont insérés "
"en premier. Les menus avec des [member start_index] égaux à [code]-1[/code] "
"sont insérés en dernier."

msgid ""
"If [code]true[/code], when the cursor hovers above menu item, it will close "
"the current [PopupMenu] and open the other one."
msgstr ""
"Si [code]true[/code], lorsque le curseur survole un élément du menu, il "
"fermera le [PopupMenu] actuel et ouvrira l'autre menu."

msgid "Default text [Color] of the menu item."
msgstr "[Color] du texte par défaut de l'élément de menu."

msgid "Text [Color] used when the menu item is disabled."
msgstr "La [Color] du texte utilisée quand l'élément de menu est désactivé."

msgid ""
"Text [Color] used when the menu item is focused. Only replaces the normal "
"text color of the menu item. Disabled, hovered, and pressed states take "
"precedence over this color."
msgstr ""
"La [Color] du texte utilisée quand l'élément de menu a le focus. Remplace "
"seulement la couleur du texte normale de l'élément de menu. Les états "
"désactivés, survolés et appuyés sont prioritaires sur cette couleur."

msgid "Text [Color] used when the menu item is being hovered."
msgstr "La [Color] du texte utilisée quand l'élément de menu est survolé."

msgid "Text [Color] used when the menu item is being hovered and pressed."
msgstr ""
"La [Color] du texte utilisée quand l'élément de menu est survolé et appuyé."

msgid "The tint of text outline of the menu item."
msgstr "La teinte du contour du texte de l'élément de menu."

msgid "Text [Color] used when the menu item is being pressed."
msgstr "La [Color] du texte utilisée quand l'élément de menu est appuyé."

msgid "The horizontal space between menu items."
msgstr "L'espacement horizontal entre les éléments de menu."

msgid "[Font] of the menu item's text."
msgstr "[Font] du texte de l’élément de menu."

msgid "Font size of the menu item's text."
msgstr "Taille de police du texte de l'élément de menu."

msgid "[StyleBox] used when the menu item is disabled."
msgstr "La [StyleBox] utilisée quand l'élément de menu est désactivé."

msgid ""
"[StyleBox] used when the menu item is disabled (for right-to-left layouts)."
msgstr ""
"La [StyleBox] utilisée quand l'élément de menu est désactivé (pour les "
"dispositions de droite à gauche)."

msgid "[StyleBox] used when the menu item is being hovered."
msgstr "La [StyleBox] utilisée quand l'élément de menu est survolé."

msgid ""
"[StyleBox] used when the menu item is being hovered (for right-to-left "
"layouts)."
msgstr ""
"La [StyleBox] utilisée quand l'élément de menu est survolé (pour les "
"dispositions de droite à gauche)."

msgid ""
"[StyleBox] used when the menu item is being pressed and hovered at the same "
"time."
msgstr ""
"La [StyleBox] utilisée quand l'élément de menu est appuyé et survolé en même "
"temps."

msgid ""
"[StyleBox] used when the menu item is being pressed and hovered at the same "
"time (for right-to-left layouts)."
msgstr ""
"La [StyleBox] utilisée quand l'élément de menu est appuyé et survolé en même "
"temps (pour les dispositions de droite à gauche)."

msgid "Default [StyleBox] for the menu item."
msgstr "La [StyleBox] par défaut pour l'élément de menu."

msgid "Default [StyleBox] for the menu item (for right-to-left layouts)."
msgstr ""
"La [StyleBox] par défaut pour l'élément de menu (pour les dispositions de "
"droite à gauche)."

msgid "[StyleBox] used when the menu item is being pressed."
msgstr "La [StyleBox] utilisée quand l'élément de menu est appuyé."

msgid ""
"[StyleBox] used when the menu item is being pressed (for right-to-left "
"layouts)."
msgstr ""
"La [StyleBox] utilisée quand l'élément de menu est appuyé (pour les "
"dispositions de droite à gauche)."

msgid "A button that brings up a [PopupMenu] when clicked."
msgstr "Un bouton qui fait apparaître un [PopupMenu] quand il est cliqué."

msgid ""
"A button that brings up a [PopupMenu] when clicked. To create new items "
"inside this [PopupMenu], use [code]get_popup().add_item(\"My Item Name\")[/"
"code]. You can also create them directly from Godot editor's inspector.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node."
msgstr ""
"Un bouton qui fait apparaître un [PopupMenu] quand il est cliqué. Pour créer "
"de nouveaux éléments dans ce [PopupMenu], utilisez "
"[code]get_popup().add_item(\"Mon nom d'élément\")[/code]. Vous pouvez aussi "
"les créer directement auprès de l'inspecteur de l'éditeur Godot.\n"
"Voir aussi [BaseButton] qui contient des propriétés et des méthodes communes "
"associées à ce nœud."

msgid ""
"Returns the [PopupMenu] contained in this button.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Renvoie le [PopupMenu] contenu dans ce bouton.\n"
"[b]Avertissement :[/b] Il s'agit d'un nœud interne nécessaire, le retirer et "
"le libérer peut causer un plantage. Si vous voulez le cacher lui ou l'un de "
"ses enfants, utilisez plutôt la propriété [member Window.visible]."

msgid ""
"Adjusts popup position and sizing for the [MenuButton], then shows the "
"[PopupMenu]. Prefer this over using [code]get_popup().popup()[/code]."
msgstr ""
"Ajuste la position et la taille de la popup pour le [MenuButton], puis "
"affiche le [PopupMenu]. Préférez ceci plutôt que [code]get_popup().popup()[/"
"code]."

msgid ""
"If [code]true[/code], when the cursor hovers above another [MenuButton] "
"within the same parent which also has [member switch_on_hover] enabled, it "
"will close the current [MenuButton] and open the other one."
msgstr ""
"Si [code]true[/code], lorsque le curseur survole un autre [MenuButton] au "
"sein du même parent qui a également [member switch_on_hover] activé, il "
"fermera le [MenuButton] actuel et ouvrira l'autre bouton."

msgid "Emitted when the [PopupMenu] of this MenuButton is about to show."
msgstr ""
"Émis lorsque le [PopupMenu] de ce MenuButton est sur le point d'être affiché."

msgid "A [Resource] that contains vertex array-based geometry."
msgstr ""
"Une [Resource] qui contient une géométrie à base d'un tableau de sommets."

msgid ""
"Mesh is a type of [Resource] that contains vertex array-based geometry, "
"divided in [i]surfaces[/i]. Each surface contains a completely separate array "
"and a material used to draw it. Design wise, a mesh with multiple surfaces is "
"preferred to a single surface, because objects created in 3D editing software "
"commonly contain multiple materials. The maximum number of surfaces per mesh "
"is [constant RenderingServer.MAX_MESH_SURFACES]."
msgstr ""
"Mesh (litt. \"Maillage\") est un type de [Resource] qui contient de la "
"géométrie à base de tableaux de sommets, divisé en [i]surfaces[/i]. Chaque "
"surface contient un tableau complètement séparé et un matériau utilisé pour "
"le dessiner. Au niveau du design, un maillage avec plusieurs surfaces est "
"préféré à une seule surface, car les objets créés dans des logiciels "
"d'édition 3D contiennent généralement plusieurs matériaux. Le nombre maximal "
"de surfaces par maillage vaut [constant RenderingServer.MAX_MESH_SURFACES]."

msgid ""
"Virtual method to override the [AABB] for a custom class extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir la [AABB] pour une classe personnalisée "
"étendant [Mesh]."

msgid ""
"Virtual method to override the number of blend shapes for a custom class "
"extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir le nombre de blend shapes pour une classe "
"personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the retrieval of blend shape names for a custom "
"class extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir la récupération du nom des blend shapes pour "
"une classe personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the surface count for a custom class extending "
"[Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir le nombre de surfaces pour une classe "
"personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the names of blend shapes for a custom class "
"extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir les noms des blend shapes pour une classe "
"personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the surface array length for a custom class "
"extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir la longueur du tableau d'une surface pour "
"une classe personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the surface arrays for a custom class extending "
"[Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir le tableau des surfaces pour une classe "
"personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the blend shape arrays for a custom class "
"extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir les tableaux des blend shapes pour une "
"classe personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the surface format for a custom class extending "
"[Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir le format d'une surface pour une classe "
"personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the surface LODs for a custom class extending "
"[Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir les LODs d'une surface pour une classe "
"personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the surface material for a custom class extending "
"[Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir le matériau d'une surface pour une classe "
"personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the surface primitive type for a custom class "
"extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir le type de primitive d'une surface pour une "
"classe personnalisée étendant [Mesh]."

msgid ""
"Virtual method to override the setting of a [param material] at the given "
"[param index] for a custom class extending [Mesh]."
msgstr ""
"Méthode virtuelle pour redéfinir le paramètre d'un matériau [param material] "
"à l'[param index] donné pour une classe personnalisée étendant [Mesh]."

msgid ""
"Calculate a [ConvexPolygonShape3D] from the mesh.\n"
"If [param clean] is [code]true[/code] (default), duplicate and interior "
"vertices are removed automatically. You can set it to [code]false[/code] to "
"make the process faster if not needed.\n"
"If [param simplify] is [code]true[/code], the geometry can be further "
"simplified to reduce the number of vertices. Disabled by default."
msgstr ""
"Calcule un [ConvexPolygonShape3D] depuis le maillage.\n"
"Si [param clean] vaut [code]true[/code] (par défaut), les sommets intérieurs "
"et en double sont automatiquement supprimés. Vous pouvez le définir à "
"[code]false[/code] pour rendre le processus plus rapide si ce n'est pas "
"nécessaire.\n"
"Si [param simplify] vaut [code]true[/code], la géométrie peut être encore "
"plus simplifiée pour réduire la quantité de sommets. Désactivé par défaut."

msgid ""
"Calculate an outline mesh at a defined offset (margin) from the original "
"mesh.\n"
"[b]Note:[/b] This method typically returns the vertices in reverse order "
"(e.g. clockwise to counterclockwise)."
msgstr ""
"Calcule un maillage de contour avec un décalage défini (marge) du maillage "
"d'origine.\n"
"[b]Note :[/b] Cette méthode renvoie généralement les sommets en ordre inverse "
"(par ex., du sens horaire au sens anti-horaire)."

msgid "Creates a placeholder version of this resource ([PlaceholderMesh])."
msgstr "Crée une version placeholder de cette ressource ([PlaceholderMesh])."

msgid "Calculate a [ConcavePolygonShape3D] from the mesh."
msgstr "Calcule une [ConcavePolygonShape3D] à partir du maillage."

msgid ""
"Returns all the vertices that make up the faces of the mesh. Each three "
"vertices represent one triangle."
msgstr ""
"Renvoie tous les sommets qui composent les faces du maillage. Chaque triplet "
"de sommets représente un triangle."

msgid "Returns the blend shape arrays for the requested surface."
msgstr "Renvoie les tableaux de blend shape pour la surface demandée."

msgid "Render array as points (one vertex equals one point)."
msgstr "Rend le tableau avec des points (un sommet affiche un point)."

msgid "Render array as lines (every two vertices a line is created)."
msgstr "Rend le tableau en ligne (une ligne est créée tous les deux sommets)."

msgid "Render array as line strip."
msgstr "Fait le rendu du tableau comme une suite de lignes."

msgid "Render array as triangles (every three vertices a triangle is created)."
msgstr ""
"Rend le tableau en triangle (un triangle est créée tous les trois sommets)."

msgid "Render array as triangle strips."
msgstr "Fait le rendu du tableau comme une suite de triangles."

msgid ""
"[PackedVector3Array], [PackedVector2Array], or [Array] of vertex positions."
msgstr ""
"Un [PackedVector3Array], [PackedVector2Array] ou [Array] avec la position des "
"sommets."

msgid "[PackedColorArray] of vertex colors."
msgstr "Le [PackedColorArray] des couleurs des sommets."

msgid "[PackedVector2Array] for UV coordinates."
msgstr "Le [PackedVector2Array] pour les coordonnées UV."

msgid "[PackedVector2Array] for second UV coordinates."
msgstr "[PackedVector2Array] pour les secondes coordonnées UV."

msgid "Represents the size of the [enum ArrayType] enum."
msgstr "Représente la taille de l’enum [enum ArrayType]."

msgid "Represents the size of the [enum ArrayCustomFormat] enum."
msgstr "Représente la taille de l'énumération [enum ArrayCustomFormat]."

msgid ""
"Mesh array contains vertices. All meshes require a vertex array so this "
"should always be present."
msgstr ""
"Un maillage de points contient des sommets. Tous les maillages nécessitent un "
"tableau des sommets donc ce tableau doit être présent."

msgid "Mesh array contains normals."
msgstr "Un maillage de points contient des normales."

msgid "Mesh array contains tangents."
msgstr "Un maillage de points contient des tangentes."

msgid "Mesh array contains colors."
msgstr "Un maillage de points contient des couleurs."

msgid "Mesh array contains UVs."
msgstr "Un maillage de points contient des UV."

msgid "Mesh array contains second UV."
msgstr "Un maillage de points contient des UV secondaires."

msgid "Mesh array contains bones."
msgstr "Un maillage de points contient des os."

msgid "Mesh array contains bone weights."
msgstr "Un maillage de points contient des poids d'os."

msgid "Mesh array uses indices."
msgstr "Le tableau de maillage utilise des indices."

msgid "Number of format bits per custom channel. See [enum ArrayCustomFormat]."
msgstr ""
"Nombre de bits de format par canal personnalisé. Voir [enum "
"ArrayCustomFormat]."

msgid "Flag used to mark that the array contains 2D vertices."
msgstr "Un marqueur pour spécifier que ce tableau contient des sommets 2D."

msgid "Blend shapes are normalized."
msgstr "Les formes de fusion sont normalisées."

msgid "If [code]true[/code], uses approximation for computing convex hulls."
msgstr ""
"Si [code]true[/code], utilise des approximations pour calculer les enveloppes "
"convexes."

msgid "Mode for the approximate convex decomposition."
msgstr "Mode pour la décomposition convexe approximative."

msgid ""
"If [code]true[/code], normalizes the mesh before applying the convex "
"decomposition."
msgstr ""
"Si [code]true[/code], normalise le maillage avant d'appliquer la "
"décomposition convexe."

msgid ""
"Controls the granularity of the search for the \"best\" clipping plane. "
"Ranges from [code]1[/code] to [code]16[/code]."
msgstr ""
"Contrôle la granularité de la recherche du \"meilleur\" plan de coupe. "
"L'intervalle va de [code]1[/code] à [code]16[/code]."

msgid ""
"If [code]true[/code], projects output convex hull vertices onto the original "
"source mesh to increase floating-point accuracy of the results."
msgstr ""
"Si [code]true[/code], projette les sommets de l'enveloppe convexe de sortie "
"sur le maillage source d'origine pour augmenter la précision de virgule "
"flottante des résultats."

msgid "Maximum number of voxels generated during the voxelization stage."
msgstr "Nombre maximum de voxels générés pendant la phase de voxélisation."

msgid ""
"Controls the bias toward clipping along revolution axes. Ranges from "
"[code]0.0[/code] to [code]1.0[/code]."
msgstr ""
"Contrôle le biais vers la coupure le long des axes de révolution. "
"L'intervalle va de [code]0.0[/code] à [code]1.0[/code]."

msgid ""
"Controls the bias toward clipping along symmetry planes. Ranges from "
"[code]0.0[/code] to [code]1.0[/code]."
msgstr ""
"Contrôle le biais vers la coupure le long des plans de symétrie. L'intervalle "
"va de [code]0.0[/code] à [code]1.0[/code]."

msgid "Constant for voxel-based approximate convex decomposition."
msgstr ""
"Constante pour la décomposition convexe approximative basé sur les voxels."

msgid "Constant for tetrahedron-based approximate convex decomposition."
msgstr ""
"Constante pour la décomposition convexe approximative basé sur les tétraèdres."

msgid "Helper tool to access and edit [Mesh] data."
msgstr "Un outil d'aide pour accéder et modifier les données des [Mesh]."

msgid "Using the MeshDataTool"
msgstr "Utiliser le MeshDataTool"

msgid "Clears all data currently in MeshDataTool."
msgstr "Efface toutes les données actuellement dans le MeshDataTool."

msgid "Adds a new surface to specified [Mesh] with edited data."
msgstr ""
"Ajoute une nouvelle surface au [Mesh] spécifié avec les données modifiées."

msgid ""
"Uses specified surface of given [Mesh] to populate data for MeshDataTool.\n"
"Requires [Mesh] with primitive type [constant Mesh.PRIMITIVE_TRIANGLES]."
msgstr ""
"Utiliser la surface spécifiée de [Mesh] pour construire les données pour le "
"MeshDataTool.\n"
"Nécessite un [Mesh] de type primitif [constant Mesh.PRIMITIVE_TRIANGLES]."

msgid "Returns the number of edges in this [Mesh]."
msgstr "Renvoie le nombre d'arêtes dans ce [Mesh]."

msgid "Returns array of faces that touch given edge."
msgstr "Renvoie le tableau des faces qui touchent l'arête donnée."

msgid "Returns meta information assigned to given edge."
msgstr "Renvoie les méta-données assignées à l'arête donnée."

msgid "Returns the number of faces in this [Mesh]."
msgstr "Renvoie le nombre de faces dans ce [Mesh]."

msgid "Returns the metadata associated with the given face."
msgstr "Renvoie les méta-données associées à la face donnée."

msgid "Calculates and returns the face normal of the given face."
msgstr "Calcule et renvoie la normale de face de la face donnée."

msgid "Returns the material assigned to the [Mesh]."
msgstr "Renvoie la matériau assigné au [Mesh]."

msgid "Returns the position of the given vertex."
msgstr "Renvoie la position du sommet donné."

msgid "Returns the bones of the given vertex."
msgstr "Renvoie les os du sommet donné."

msgid "Returns the color of the given vertex."
msgstr "Renvoie la couleur du sommet donné."

msgid "Returns the total number of vertices in [Mesh]."
msgstr "Renvoie le nombre total de sommet dans le [Mesh]."

msgid "Returns an array of edges that share the given vertex."
msgstr "Renvoie une liste des arêtes partageant le sommet donné."

msgid "Returns an array of faces that share the given vertex."
msgstr "Renvoie le tableau des faces partageant le sommet donné."

msgid "Returns the metadata associated with the given vertex."
msgstr "Renvoie les méta-données associées au sommet donné."

msgid "Returns the normal of the given vertex."
msgstr "Renvoie la normale du sommet donné."

msgid "Returns the tangent of the given vertex."
msgstr "Renvoie la tangente du sommet donné."

msgid "Returns the UV of the given vertex."
msgstr "Renvoie l'UV du sommet donné."

msgid "Returns the UV2 of the given vertex."
msgstr "Renvoie l'UV2 du sommet donné."

msgid "Returns bone weights of the given vertex."
msgstr "Renvoie le poids des os du sommet donné."

msgid "Sets the metadata of the given edge."
msgstr "Définit les méta-données pour le sommet donné."

msgid "Sets the metadata of the given face."
msgstr "Définit les méta-données pour la face donnée."

msgid "Sets the material to be used by newly-constructed [Mesh]."
msgstr "Définit le matériau à utiliser pour le nouveau [Mesh] construit."

msgid "Sets the position of the given vertex."
msgstr "Définit la position du sommet donné."

msgid "Sets the bones of the given vertex."
msgstr "Définit les os du sommet donné."

msgid "Sets the color of the given vertex."
msgstr "Définit la couleur du sommet donné."

msgid "Sets the metadata associated with the given vertex."
msgstr "Définit les méta-données associées du sommet donné."

msgid "Sets the normal of the given vertex."
msgstr "Définit la normale du sommet donné."

msgid "Sets the tangent of the given vertex."
msgstr "Définit la tangente du sommet donné."

msgid "Sets the UV of the given vertex."
msgstr "Définit l'UV du sommet donné."

msgid "Sets the UV2 of the given vertex."
msgstr "Définit l'UV2 du sommet donné."

msgid "Sets the bone weights of the given vertex."
msgstr "Définit les poids des os du sommet donné."

msgid "Node used for displaying a [Mesh] in 2D."
msgstr "Un nœud utilisé pour afficher des [Mesh] en 2D."

msgid ""
"Node used for displaying a [Mesh] in 2D. A [MeshInstance2D] can be "
"automatically created from an existing [Sprite2D] via a tool in the editor "
"toolbar. Select the [Sprite2D] node, then choose [b]Sprite2D > Convert to "
"MeshInstance2D[/b] at the top of the 2D editor viewport."
msgstr ""
"Nœud utilisé pour afficher un [Mesh] en 2D. Un [MeshInstance2D] peut être "
"automatiquement créé à partir d'un [Sprite2D] existant via un outil dans la "
"barre d'outils de l'éditeur. Sélectionnez le nœud [Sprite2D], puis choisissez "
"[b]Sprite2D > Convertir en MeshInstance2D[/b] en haut du viewport de "
"l'éditeur 2D."

msgid "2D meshes"
msgstr "maillages 2D"

msgid "The [Mesh] that will be drawn by the [MeshInstance2D]."
msgstr "Le [Mesh] qui sera affiché par le [MeshInstance2D]."

msgid ""
"The [Texture2D] that will be used if using the default [CanvasItemMaterial]. "
"Can be accessed as [code]TEXTURE[/code] in CanvasItem shader."
msgstr ""
"La [Texture2D] qui sera utilisée si vous utilisez le [CanvasItemMaterial] par "
"défaut. Peut être accédée via [code]TEXTURE[/code] dans le shader du "
"CanvasItem."

msgid "Emitted when the [member texture] is changed."
msgstr "Émis quand la [member texture] a changé."

msgid "Node that instances meshes into a scenario."
msgstr "Nœud qui instancie des meshes dans un scénario."

msgid ""
"MeshInstance3D is a node that takes a [Mesh] resource and adds it to the "
"current scenario by creating an instance of it. This is the class most often "
"used to render 3D geometry and can be used to instance a single [Mesh] in "
"many places. This allows reusing geometry, which can save on resources. When "
"a [Mesh] has to be instantiated more than thousands of times at close "
"proximity, consider using a [MultiMesh] in a [MultiMeshInstance3D] instead."
msgstr ""
"MeshInstance3D est un nœud qui prend une ressource [Mesh] et l'ajoute au "
"scénario actuel en en créant une instance. Il s'agit de la classe la plus "
"souvent utilisée pour rendre de la géométrie 3D et peut être utilisée pour "
"instancier un seul [Mesh] dans de nombreux endroits. Cela permet de "
"réutiliser la géométrie et d'économiser des ressources. Lorsqu'un [Mesh] doit "
"être instancié plusieurs milliers de fois les uns proches des autres, "
"préférez plutôt un [MultiMesh] dans un [MultiMeshInstance3D]."

msgid ""
"Takes a snapshot from the current [ArrayMesh] with all blend shapes applied "
"according to their current weights and bakes it to the provided [param "
"existing] mesh. If no [param existing] mesh is provided a new [ArrayMesh] is "
"created, baked and returned. Mesh surface materials are not copied.\n"
"[b]Performance:[/b] [Mesh] data needs to be received from the GPU, stalling "
"the [RenderingServer] in the process."
msgstr ""
"Prend un instantané du [ArrayMesh] actuel avec toutes les blend shapes "
"appliquées selon leurs poids actuels et le calcule et stocke dans le maillage "
"fourni [param existing]. Si aucun maillage [param existing] n'est fourni, un "
"nouveau [ArrayMesh] est créé, calculé et renvoyé. Les matériaux de surface du "
"maillage ne sont pas copiés.\n"
"[b]Performance :[/b] Les données du [Mesh] doivent êtres reçues du GPU, "
"retardant ainsi le [RenderingServer]."

msgid ""
"This helper creates a [StaticBody3D] child node with a [ConvexPolygonShape3D] "
"collision shape calculated from the mesh geometry. It's mainly used for "
"testing.\n"
"If [param clean] is [code]true[/code] (default), duplicate and interior "
"vertices are removed automatically. You can set it to [code]false[/code] to "
"make the process faster if not needed.\n"
"If [param simplify] is [code]true[/code], the geometry can be further "
"simplified to reduce the number of vertices. Disabled by default."
msgstr ""
"Cette aide crée un nœud [StaticBody3D] enfant avec une forme de collision "
"[ConvexPolygonShape3D] calculée à partir de la géométrie du maillage. Elle "
"est principalement utilisée pour les essais.\n"
"Si [param clean] vaut [code]true[/code] (par défaut), les doublons et les "
"sommets intérieurs sont automatiquement supprimés. Vous pouvez le définir à "
"[code]false[/code] pour rendre le processus plus rapide si vous n'en avez pas "
"besoin.\n"
"Si [param simplify] vaut [code]true[/code], la géométrie pourra être "
"simplifiée pour réduire la quantité de sommets. Désactivé par défaut."

msgid ""
"This helper creates a [MeshInstance3D] child node with gizmos at every vertex "
"calculated from the mesh geometry. It's mainly used for testing."
msgstr ""
"Cette aide crée un nœud [MeshInstance3D] enfant avec des manipulateurs à "
"chaque sommet calculés à partir de la géométrie du maillage. Elle est "
"principalement utilisée pour les essais."

msgid ""
"This helper creates a [StaticBody3D] child node with multiple "
"[ConvexPolygonShape3D] collision shapes calculated from the mesh geometry via "
"convex decomposition. The convex decomposition operation can be controlled "
"with parameters from the optional [param settings]."
msgstr ""
"Cet assistant crée un nœuds enfant [StaticBody3D] avec plusieurs formes de "
"collision [ConvexPolygonShape3D] calculées à partir de la géométrie du "
"maillage via la décomposition convexe. L'opération de décomposition convexe "
"peut être contrôlée à partir des paramètres optionnels [param settings]."

msgid ""
"This helper creates a [StaticBody3D] child node with a "
"[ConcavePolygonShape3D] collision shape calculated from the mesh geometry. "
"It's mainly used for testing."
msgstr ""
"Cette aide crée un nœud [StaticBody3D] enfant avec une forme de collision "
"[ConcavePolygonShape3D] calculée à partir de la géométrie du maillage. Elle "
"est principalement utilisée pour les essais."

msgid ""
"Returns the index of the blend shape with the given [param name]. Returns "
"[code]-1[/code] if no blend shape with this name exists, including when "
"[member mesh] is [code]null[/code]."
msgstr ""
"Renvoie l'index de la blend shape avec le nom [param name] donné. Renvoie "
"[code]-1[/code] si aucune blend shape avec ce nom n'existe, y compris lorsque "
"[member mesh] est [code]null[/code]."

msgid ""
"Returns the [Material] that will be used by the [Mesh] when drawing. This can "
"return the [member GeometryInstance3D.material_override], the surface "
"override [Material] defined in this [MeshInstance3D], or the surface "
"[Material] defined in the [member mesh]. For example, if [member "
"GeometryInstance3D.material_override] is used, all surfaces will return the "
"override material.\n"
"Returns [code]null[/code] if no material is active, including when [member "
"mesh] is [code]null[/code]."
msgstr ""
"Renvoie le [Material] qui sera utilisé par le [Mesh] lors du dessin. Ceci "
"peut renvoyer le [member GeometryInstance3D.material_override], le [Material] "
"de surface redéfini de ce [MeshInstance3D], ou le [Material] de surface "
"défini dans le maillage [member mesh]. Par exemple, si [member "
"GeometryInstance3D.material_override] est utilisé, toutes les surfaces "
"renverront le matériau redéfini.\n"
"Renvoie [code]null[/code] si aucun matériau n'est actif, y compris lorsque "
"[member mesh] est [code]null[/code]."

msgid ""
"Returns the number of blend shapes available. Produces an error if [member "
"mesh] is [code]null[/code]."
msgstr ""
"Renvoie le nombre de blend shapes disponibles. Produit une erreur si [member "
"mesh] est [code]null[/code]."

msgid ""
"Returns the value of the blend shape at the given [param blend_shape_idx]. "
"Returns [code]0.0[/code] and produces an error if [member mesh] is "
"[code]null[/code] or doesn't have a blend shape at that index."
msgstr ""
"Renvoie la valeur de la blend shape à l'index [param blend_shape_idx] donné. "
"Renvoie [code]0.0[/code] et produit une erreur si [member mesh] est "
"[code]null[/code] ou n'a pas de blend shape à cet index."

msgid ""
"Returns the internal [SkinReference] containing the skeleton's [RID] attached "
"to this RID. See also [method Resource.get_rid], [method "
"SkinReference.get_skeleton], and [method "
"RenderingServer.instance_attach_skeleton]."
msgstr ""
"Renvoie la [SkinReference] interne contenant le [RID] du squelette attaché à "
"cet RID. Voir aussi [method Resource.get_rid], [method "
"SkinReference.get_skeleton], et [method "
"RenderingServer.instance_attach_skeleton]."

msgid ""
"Returns the override [Material] for the specified [param surface] of the "
"[Mesh] resource. See also [method get_surface_override_material_count].\n"
"[b]Note:[/b] This returns the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, not the material within the [Mesh] "
"resource. To get the material within the [Mesh] resource, use [method "
"Mesh.surface_get_material] instead."
msgstr ""
"Renvoie le [Material] de redéfinition pour la [param surface] spécifiée de la "
"ressource [Mesh]. Voir aussi [method get_surface_override_material_count].\n"
"[b]Note :[/b] Ceci renvoie le [Material] associé aux propriétés de "
"redéfinition du matériau de surface du [MeshInstance3D], et non le matériau "
"dans la ressource [Mesh]. Pour obtenir le matériau dans la ressource [Mesh], "
"utilisez [method Mesh.surface_get_material] à la place."

msgid ""
"Returns the number of surface override materials. This is equivalent to "
"[method Mesh.get_surface_count]. See also [method "
"get_surface_override_material]."
msgstr ""
"Renvoie le nombre de matériaux de surface redéfinis. Ceci est équivalent à "
"[method Mesh.get_surface_count]. Voir aussi [method "
"get_surface_override_material]."

msgid ""
"Sets the value of the blend shape at [param blend_shape_idx] to [param "
"value]. Produces an error if [member mesh] is [code]null[/code] or doesn't "
"have a blend shape at that index."
msgstr ""
"Définit la valeur de la blend shape à l'index [param blend_shape_idx] à la "
"valeur [param value]. Produit une erreur si [member mesh] est [code]null[/"
"code] ou n'a pas de blend shape à cet index."

msgid ""
"Sets the override [param material] for the specified [param surface] of the "
"[Mesh] resource. This material is associated with this [MeshInstance3D] "
"rather than with [member mesh].\n"
"[b]Note:[/b] This assigns the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, not the material within the [Mesh] "
"resource. To set the material within the [Mesh] resource, use [method "
"Mesh.surface_set_material] instead."
msgstr ""
"Définit le matériau de redéfinition [param material] pour la [param surface] "
"spécifiée de la ressource [Mesh]. Ce matériau est associé à ce "
"[MeshInstance3D] plutôt qu'à son maillage [member mesh].\n"
"[b]Note :[/b] Ceci renvoie le [Material] associé aux propriétés de "
"redéfinition du matériau de surface du [MeshInstance3D], et non le matériau "
"dans la ressource [Mesh]. Pour obtenir le matériau dans la ressource [Mesh], "
"utilisez [method Mesh.surface_get_material] à la place."

msgid "The [Mesh] resource for the instance."
msgstr "La ressource du [Mesh] pour cette instance."

msgid "[NodePath] to the [Skeleton3D] associated with the instance."
msgstr "[NodePath] vers le [Skeleton3D] associé à cette instance."

msgid "The [Skin] to be used by this instance."
msgstr "La [Skin] utilisée par cette instance."

msgid "Library of meshes."
msgstr "Bibliothèque de maillages."

msgid ""
"A library of meshes. Contains a list of [Mesh] resources, each with a name "
"and ID. Each item can also include collision and navigation shapes. This "
"resource is used in [GridMap]."
msgstr ""
"Une bibliothèque de maillages. Contient une liste des ressources [Mesh], "
"chacune avec un nom et un identifiant. Chaque article peut également inclure "
"des formes de collision et de navigation. Cette ressource est utilisée dans "
"[GridMap]."

msgid "Clears the library."
msgstr "Efface la bibliothèque."

msgid ""
"Creates a new item in the library with the given ID.\n"
"You can get an unused ID from [method get_last_unused_item_id]."
msgstr ""
"Crée un nouvel article dans la bibliothèque avec l'identifiant donné.\n"
"Vous pouvez obtenir un identifiant inutilisé via [method "
"get_last_unused_item_id]."

msgid "Returns the list of item IDs in use."
msgstr "Renvoie la liste des identifiants d'élément à utiliser."

msgid "Returns the item's mesh."
msgstr "Renvoie le maillage de l'élément."

msgid "Returns the transform applied to the item's mesh."
msgstr "Renvoie la transformation appliquée au maillage de l'objet."

msgid "Returns the item's name."
msgstr "Renvoie le nom de l'élément."

msgid "Returns the item's navigation mesh."
msgstr "Renvoie le maillage de navigation de l'élément."

msgid "Returns the transform applied to the item's navigation mesh."
msgstr ""
"Renvoie la transformation appliquée au maillage de navigation de l'élément."

msgid ""
"Returns an item's collision shapes.\n"
"The array consists of each [Shape3D] followed by its [Transform3D]."
msgstr ""
"Renvoie les formes de collision d'un objet.\n"
"Le tableau contient chaque [Shape3D] suivie de sa [Transform3D]."

msgid "Gets an unused ID for a new item."
msgstr "Obtient un identifiant inutilisé pour un nouvel élément."

msgid "Removes the item."
msgstr "Supprime l'élément."

msgid "Sets the item's mesh."
msgstr "Définit le maillage de l'élément."

msgid "Sets the transform to apply to the item's mesh."
msgstr "Régle la transformation à appliquer au maillage de l'objet."

msgid ""
"Sets the item's name.\n"
"This name is shown in the editor. It can also be used to look up the item "
"later using [method find_item_by_name]."
msgstr ""
"Définit le nom de l'objet.\n"
"Ce nom est indiqué dans l'éditeur. Il peut également être utilisé pour "
"retrouver l'élément par la suite en utilisant [method find_item_by_name]."

msgid "Sets the item's navigation mesh."
msgstr "Définit le maillage de navigation de l'élément."

msgid "Sets the transform to apply to the item's navigation mesh."
msgstr ""
"Définit la transformation appliquée au maillage de navigation de l'élément."

msgid "Sets a texture to use as the item's preview icon in the editor."
msgstr "Définit la texture pour l'icône d'aperçu de l'élément dans l'éditeur."

msgid ""
"Sets an item's collision shapes.\n"
"The array should consist of [Shape3D] objects, each followed by a "
"[Transform3D] that will be applied to it. For shapes that should not have a "
"transform, use [constant Transform3D.IDENTITY]."
msgstr ""
"Définit les formes de collision d'un objet.\n"
"Le tableau doit être composé d'objets [Shape3D], chacun aussitôt suivi d'une "
"[Transform3D] qui lui sera appliqué. Pour les formes qui ne devraient pas "
"avoir de transformation, utilisez [constant Transform3D.IDENTITY]."

msgid "Simple texture that uses a mesh to draw itself."
msgstr "Une simple texture qui utilise un maillage pour s'afficher elle-même."

msgid ""
"Simple texture that uses a mesh to draw itself. It's limited because flags "
"can't be changed and region drawing is not supported."
msgstr ""
"Une texture simple qui utilise un maillage pour se dessiner elle-même. C'est "
"assez limité parce que les drapeaux ne peuvent pas être modifiés et que "
"l'affichage uniquement de cette région n'est pas supporté."

msgid "Sets the base texture that the Mesh will use to draw."
msgstr "Définit la texture de base que le maillage utilisera pour l'affichage."

msgid "Sets the size of the image, needed for reference."
msgstr "Définit la taille de l'image, nécessaire pour garder une référence."

msgid "Sets the mesh used to draw. It must be a mesh using 2D vertices."
msgstr ""
"Définit le maillage à utiliser pour l'affichage. Doit être un maillage avec "
"des sommets en 2D."

msgid ""
"Interpolates an abstract value and supplies it to a method called over time."
msgstr ""
"Interpole une valeur abstraite et la fournit à une méthode appelée dans le "
"temps."

msgid ""
"Sets the time in seconds after which the [MethodTweener] will start "
"interpolating. By default there's no delay."
msgstr ""
"Définit le délai en secondes avant que le [MethodTweener] commence son "
"interpolation. Par défaut, il n'y a pas de délai."

msgid ""
"An internal editor class intended for keeping the data of unrecognized nodes."
msgstr ""
"Une classe d'éditeur interne destinée à conserver les données des nœuds non "
"reconnus."

msgid ""
"This is an internal editor class intended for keeping data of nodes of "
"unknown type (most likely this type was supplied by an extension that is no "
"longer loaded). It can't be manually instantiated or placed in a scene.\n"
"[b]Warning:[/b] Ignore missing nodes unless you know what you are doing. "
"Existing properties on a missing node can be freely modified in code, "
"regardless of the type they are intended to be."
msgstr ""
"Il s'agit d'une classe de l'éditeur interne destinée à conserver les données "
"de nœuds d'un type inconnu (le plus probable est que ce type a été fourni par "
"une extension qui n'est plus chargée). Il ne peut pas être manuellement "
"instantané ou placé dans une scène.\n"
"[b]Attention :[/b] Ignorez les nœuds manquants à moins que vous ne sachiez ce "
"que vous faites. Les propriétés existantes sur un nœud manquant peuvent être "
"librement modifiées dans le code, peu importe le type qu'elles sont censées "
"être."

msgid ""
"The name of the class this node was supposed to be (see [method "
"Object.get_class])."
msgstr ""
"Le nom de la classe dont ce nœud était supposé être (voir [method "
"Object.get_class])."

msgid "Returns the path of the scene this node was instance of originally."
msgstr ""
"Renvoie le chemin de la scène dans laquelle ce nœud était originellement une "
"instance."

msgid ""
"If [code]true[/code], allows new properties to be set along with existing "
"ones. If [code]false[/code], only existing properties' values can be set, and "
"new properties cannot be added."
msgstr ""
"Si [code]true[/code], permet de définir de nouvelles propriétés avec celles "
"existantes. Si [code]false[/code], seules les valeurs des propriétés "
"existantes peuvent être définies, et de nouvelles propriétés ne peuvent pas "
"être ajoutées."

msgid "Generic mobile VR implementation."
msgstr "Implémentation de RV mobile générique."

msgid ""
"This is a generic mobile VR implementation where you need to provide details "
"about the phone and HMD used. It does not rely on any existing framework. "
"This is the most basic interface we have. For the best effect, you need a "
"mobile phone with a gyroscope and accelerometer.\n"
"Note that even though there is no positional tracking, the camera will assume "
"the headset is at a height of 1.85 meters. You can change this by setting "
"[member eye_height].\n"
"You can initialize this interface as follows:\n"
"[codeblock]\n"
"var interface = XRServer.find_interface(\"Native mobile\")\n"
"if interface and interface.initialize():\n"
"\tget_viewport().use_xr = true\n"
"[/codeblock]\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_accelerometer], [member ProjectSettings.input_devices/sensors/"
"enable_gravity], [member ProjectSettings.input_devices/sensors/"
"enable_gyroscope] and [member ProjectSettings.input_devices/sensors/"
"enable_magnetometer] must be enabled."
msgstr ""
"Il s'agit d'une implémentation VR mobile générique où vous devez fournir des "
"détails sur le téléphone et le casque utilisés. Il ne repose sur aucune "
"bibliothèque existante. C'est l'interface la plus basique que nous avons. "
"Pour un meilleur résultat, vous avez besoin d'un téléphone mobile avec un "
"gyroscope et un accéléromètre intégrés.\n"
"Notez que même s'il n'y a pas de suivi de la position, la caméra suppose que "
"le casque est à une hauteur de 1.85 mètres. Vous pouvez changer cela en "
"définissant [member eye_height].\n"
"Vous pouvez initialiser cette interface ainsi :\n"
"[codeblock]\n"
"var interface = XRServer.find_interface(\"Native mobile\")\n"
"if interface and interface.initialize():\n"
"\tget_viewport().use_xr = true\n"
"[/codeblock]\n"
"[b]Note :[/b] Pour Android, [member ProjectSettings.input_devices/sensors/"
"enable_accelerometer], [member ProjectSettings.input_devices/sensors/"
"enable_gravity], [member ProjectSettings.input_devices/sensors/"
"enable_gyroscope] et [member ProjectSettings.input_devices/sensors/"
"enable_magnetometer] doivent être activés."

msgid ""
"The distance between the display and the lenses inside of the device in "
"centimeters."
msgstr ""
"La distance entre l’affichage et les lentilles à l’intérieur de l’appareil en "
"centimètres."

msgid "The width of the display in centimeters."
msgstr "La largeur de l'écran en centimètres."

msgid ""
"The height at which the camera is placed in relation to the ground (i.e. "
"[XROrigin3D] node)."
msgstr ""
"La hauteur à laquelle la caméra est placée par rapport au sol (c'est-à-dire "
"au nœud [XROrigin3D])."

msgid ""
"The interocular distance, also known as the interpupillary distance. The "
"distance between the pupils of the left and right eye."
msgstr ""
"La distance interoculaire, aussi appelée la distance interpupillaire. La "
"distance entre la pupille de l'œil gauche et celle du l'œil droit."

msgid ""
"The k1 lens factor is one of the two constants that define the strength of "
"the lens used and directly influences the lens distortion effect."
msgstr ""
"Le facteur de lentille k1 est l'une des deux constantes qui définisse "
"l'intensité de la lentille utilisée et influence directement l'effet de "
"déformation des lentilles."

msgid "The k2 lens factor, see k1."
msgstr "Le facteur k2 de lentille, voir k1."

msgid ""
"Set the offset rect relative to the area being rendered. A length of 1 "
"represents the whole rendering area on that axis."
msgstr ""
"Définit le rectangle de décalage par rapport à la zone en cours de rendu. Une "
"longueur de 1 représente l'ensemble de la zone de rendu sur cet axe."

msgid ""
"The oversample setting. Because of the lens distortion we have to render our "
"buffers at a higher resolution then the screen can natively handle. A value "
"between 1.5 and 2.0 often provides good results but at the cost of "
"performance."
msgstr ""
"Le paramètre de sur-échantillon. En raison de la distorsion de la lentille, "
"nous devons rendre nos buffers à une résolution plus élevée que l'écran peut "
"manipuler nativement. Une valeur entre 1.5 et 2.0 fournit souvent de bons "
"résultats, mais avec un coût sur les performances."

msgid ""
"The minimum radius around the focal point where full quality is guaranteed if "
"VRS is used as a percentage of screen size.\n"
"[b]Note:[/b] Mobile and Forward+ renderers only. Requires [member "
"Viewport.vrs_mode] to be set to [constant Viewport.VRS_XR]."
msgstr ""
"Le rayon minimal autour du point focal où la pleine qualité est garantie si "
"VRS est utilisé en tant que pourcentage de la taille de l'écran.\n"
"[b]Note :[/b] Moteurs de rendu Mobile et Forward+ seulement. Nécessite "
"[member Viewport.vrs_mode] d'être défini à [constant Viewport.VRS_XR]."

msgid ""
"The strength used to calculate the VRS density map. The greater this value, "
"the more noticeable VRS is. This improves performance at the cost of "
"quality.\n"
"[b]Note:[/b] Mobile and Forward+ renderers only. Requires [member "
"Viewport.vrs_mode] to be set to [constant Viewport.VRS_XR]."
msgstr ""
"La force utilisée pour calculer la carte de densité VRS. Plus cette valeur "
"est grande, plus le VRS est notable. Cela améliore la performance au coût de "
"la qualité.\n"
"[b]Note :[/b] Moteurs de rendu Mobile et Forward+ seulement. Nécessite "
"[member Viewport.vrs_mode] d'être défini à [constant Viewport.VRS_XR]."

msgid ""
"А node that dynamically copies the 3D transform of a bone in its parent "
"[Skeleton3D]."
msgstr ""
"Un nœud qui copie dynamiquement la transformation 3D d'un os de son "
"[Skeleton3D] parent."

msgid ""
"This node selects a bone in a [Skeleton3D] and attaches to it. This means "
"that the [ModifierBoneTarget3D] node will dynamically copy the 3D transform "
"of the selected bone.\n"
"The functionality is similar to [BoneAttachment3D], but this node adopts the "
"[SkeletonModifier3D] cycle and is intended to be used as another "
"[SkeletonModifier3D]'s target."
msgstr ""
"Ce nœud sélectionne un os dans un [Skeleton3D] et s'y attache. Cela signifie "
"que le nœud [ModifierBoneTarget3D] copiera dynamiquement la transformation 3D "
"de l'os sélectionné.\n"
"La fonctionnalité est similaire à [BoneAttachment3D], mais ce nœud adopte le "
"cycle de [SkeletonModifier3D] et est destiné à être utilisé comme cible d'un "
"autre [SkeletonModifier3D]."

msgid ""
"Called when the audio sample rate used for recording the audio is requested "
"by the engine. The value returned must be specified in Hz. Defaults to 48000 "
"Hz if [method _get_audio_mix_rate] is not overridden."
msgstr ""
"Appelée lorsque le taux d'échantillonnage audio utilisé pour enregistrer "
"l'audio est demandé par le moteur. La valeur renvoyée doit être spécifiée en "
"Hz. 48000 Hz par défaut si [method _get_audio_mix_rate] n'est pas redéfini."

msgid "Using MultiMeshInstance"
msgstr "Utilisation de MultiMeshInstance"

msgid "Optimization using MultiMeshes"
msgstr "Optimisation à l’aide de MultiMeshes"

msgid "Animating thousands of fish with MultiMeshInstance"
msgstr "Animer des milliers de poissons avec MultiMeshInstance"

msgid "Returns the custom data that has been set for a specific instance."
msgstr ""
"Renvoie les données personnalisées qui ont été définies pour cette instance "
"spécifique."

msgid "Returns the [Transform2D] of a specific instance."
msgstr "Renvoie la [Transform2D] de l'instance spécifiée."

msgid "Sets the [Transform2D] for a specific instance."
msgstr "Définit la [Transform2D] pour l'instance spécifiée."

msgid ""
"Accessing this property is very slow. Use [method set_instance_color] and "
"[method get_instance_color] instead."
msgstr ""
"Accéder à cette propriété est très lent. Utilisez [method set_instance_color] "
"et [method get_instance_color] à la place."

msgid ""
"Accessing this property is very slow. Use [method set_instance_custom_data] "
"and [method get_instance_custom_data] instead."
msgstr ""
"Accéder à cette propriété est très lent. Utilisez [method "
"set_instance_custom_data] et [method get_instance_custom_data] à la place."

msgid ""
"Accessing this property is very slow. Use [method set_instance_transform_2d] "
"and [method get_instance_transform_2d] instead."
msgstr ""
"Accéder à cette propriété est très lent. Utilisez [method "
"set_instance_transform_2d] et [method get_instance_transform_2d] à la place."

msgid ""
"Array containing each [Transform2D] value used by all instances of this mesh, "
"as a [PackedVector2Array]. Each transform is divided into 3 [Vector2] values "
"corresponding to the transforms' [code]x[/code], [code]y[/code], and "
"[code]origin[/code]."
msgstr ""
"Tableau contenant chaque valeur de [Transform2D] utilisées par toutes les "
"instances de ce maillage, en tant que [PackedVector2Array]. Chaque "
"transformation est divisée en 3 valeurs [Vector2] correspondant aux [code]x[/"
"code], [code]y[/code], et [code]origin[/code] de la transformation."

msgid ""
"Accessing this property is very slow. Use [method set_instance_transform] and "
"[method get_instance_transform] instead."
msgstr ""
"Accéder à cette propriété est très lent. Utilisez [method "
"set_instance_transform] et [method get_instance_transform] à la place."

msgid "Format of transform used to transform mesh, either 2D or 3D."
msgstr ""
"Le format de la transformation utilisée pour le transformation du maillage, "
"soit en 2D ou en 3D."

msgid ""
"If [code]true[/code], the [MultiMesh] will use custom data (see [method "
"set_instance_custom_data]). Can only be set when [member instance_count] is "
"[code]0[/code] or less. This means that you need to call this method before "
"setting the instance count, or temporarily reset it to [code]0[/code]."
msgstr ""
"Si [code]true[/code], [MultiMesh] utilisera des données personnalisées (voir "
"[method set_instance_custom_data]). Peut seulement être défini lorsque "
"[member instance_count] vaut [code]0[/code] ou moins. Cela signifie que vous "
"devez appeler cette méthode avant de définir le nombre d'instances, ou de le "
"réinitialiser temporairement à [code]0[/code]."

msgid ""
"Limits the number of instances drawn, -1 draws all instances. Changing this "
"does not change the sizes of the buffers."
msgstr ""
"Limite le nombre d'instances affichées, et -1 les dessine toutes. Changer "
"cela ne change pas la taille des mémoires tampons."

msgid "Use this when using 2D transforms."
msgstr "Utiliser ceci lors de transformations 2D."

msgid "Use this when using 3D transforms."
msgstr "Utiliser ceci lors de transformations 3D."

msgid "Node that instances a [MultiMesh] in 2D."
msgstr "Le nœud qui instancie un [MultiMesh] en 2D."

msgid ""
"[MultiMeshInstance2D] is a specialized node to instance a [MultiMesh] "
"resource in 2D.\n"
"Usage is the same as [MultiMeshInstance3D]."
msgstr ""
"Le [MultiMeshInstance2D] est un nœud spécialisé pour instancier une ressource "
"[MultiMesh] en 2D.\n"
"L'utilisation est la même qu'avec [MultiMeshInstance3D]."

msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
msgstr "Le [MultiMesh] qui sera affiché par ce [MultiMeshInstance2D]."

msgid "Node that instances a [MultiMesh]."
msgstr "Le nœud qui instancie un [MultiMesh]."

msgid ""
"[MultiMeshInstance3D] is a specialized node to instance [GeometryInstance3D]s "
"based on a [MultiMesh] resource.\n"
"This is useful to optimize the rendering of a high number of instances of a "
"given mesh (for example trees in a forest or grass strands)."
msgstr ""
"[MultiMeshInstance3D] est un nœud spécialisé pour instancier des "
"[GeometryInstance3D]s selon une ressource [MultiMesh].\n"
"Ceci est utile pour optimiser le rendu d'une grande quantité d'instances avec "
"un maillage donné (par exemple des arbres dans une forêt ou des brins "
"d'herbe)."

msgid ""
"The [MultiMesh] resource that will be used and shared among all instances of "
"the [MultiMeshInstance3D]."
msgstr ""
"La ressource [MultiMesh] qui sera utilisée et partagée entre toutes les "
"instances du [MultiMeshInstance3D]."

msgid "High-level multiplayer API interface."
msgstr "Interface API multijoueur de haut niveau."

msgid "Called when the [member MultiplayerAPI.multiplayer_peer] is retrieved."
msgstr ""
"Appelée lorsque le [member MultiplayerAPI.multiplayer_peer] est récupéré."

msgid "Callback for [method MultiplayerAPI.get_peers]."
msgstr "Fonction de rappel pour [method MultiplayerAPI.get_peers]."

msgid "Callback for [method MultiplayerAPI.get_remote_sender_id]."
msgstr "Fonction de rappel pour [method MultiplayerAPI.get_remote_sender_id]."

msgid "Callback for [method MultiplayerAPI.get_unique_id]."
msgstr "Fonction de rappel pour [method MultiplayerAPI.get_unique_id]."

msgid "Callback for [method MultiplayerAPI.object_configuration_add]."
msgstr ""
"Fonction de rappel pour [method MultiplayerAPI.object_configuration_add]."

msgid "Callback for [method MultiplayerAPI.object_configuration_remove]."
msgstr ""
"Fonction de rappel pour [method MultiplayerAPI.object_configuration_remove]."

msgid "Callback for [method MultiplayerAPI.poll]."
msgstr "Fonction de rappel pour [method MultiplayerAPI.poll]."

msgid "Callback for [method MultiplayerAPI.rpc]."
msgstr "Fonction de rappel pour [method MultiplayerAPI.rpc]."

msgid "Called when the [member MultiplayerAPI.multiplayer_peer] is set."
msgstr "Appelée lorsque le [member MultiplayerAPI.multiplayer_peer] est défini."

msgid ""
"Abstract class for specialized [PacketPeer]s used by the [MultiplayerAPI]."
msgstr ""
"Classe abstraite pour les [PacketPeer]s spécialisés utilisés par la "
"[MultiplayerAPI]."

msgid "Returns the current state of the connection."
msgstr "Renvoie l'état actuel de la connexion."

msgid "Waits up to 1 second to receive a new network event."
msgstr "Attend jusqu'à 1 seconde de recevoir un nouvel événement réseau."

msgid "Emitted when a remote peer has disconnected."
msgstr "Émis quand un pair distant a déconnecté."

msgid "The MultiplayerPeer is disconnected."
msgstr "Le MultiplayerPeer est déconnecté."

msgid "The MultiplayerPeer is currently connecting to a server."
msgstr "Le MultijoueurPeer se connecte actuellement à un serveur."

msgid "This MultiplayerPeer is connected."
msgstr "Ce MultiplayerPeer est connecté."

msgid "Packets are sent to all connected peers."
msgstr "Les paquets sont envoyés à tous les pairs connectés."

msgid "Packets are sent to the remote peer acting as server."
msgstr "Les paquets sont envoyés au pair distant agissant comme serveur."

msgid ""
"Packets are not acknowledged, no resend attempts are made for lost packets. "
"Packets may arrive in any order. Potentially faster than [constant "
"TRANSFER_MODE_UNRELIABLE_ORDERED]. Use for non-critical data, and always "
"consider whether the order matters."
msgstr ""
"Les paquets ne sont pas reconnus, aucune tentative de ré-envoi n'est faite "
"pour les paquets perdus. Les paquets peuvent arriver dans n'importe quelle "
"commande. Peut être plus rapide que [constant "
"TRANSFER_MODE_UNRELIABLE_ORDERED]. À utiliser pour des données non critiques, "
"et toujours à considérer si l'ordre compte."

msgid ""
"Packets are not acknowledged, no resend attempts are made for lost packets. "
"Packets are received in the order they were sent in. Potentially faster than "
"[constant TRANSFER_MODE_RELIABLE]. Use for non-critical data or data that "
"would be outdated if received late due to resend attempt(s) anyway, for "
"example movement and positional data."
msgstr ""
"Les paquets ne sont pas reconnus, aucune tentative de ré-envoi n'est faite "
"pour les paquets perdus. Les paquets sont reçus dans l'ordre où ils ont été "
"envoyés. Peut être plus rapide que [constant TRANSFER_MODE_RELIABLE]. À "
"utiliser pour les données non critiques ou qui seraient périmées si elles "
"étaient reçues tardivement à cause du ré-envoi, par exemple pour les données "
"de mouvement et de positionnement."

msgid ""
"Packets must be received and resend attempts should be made until the packets "
"are acknowledged. Packets must be received in the order they were sent in. "
"Most reliable transfer mode, but potentially the slowest due to the overhead. "
"Use for critical data that must be transmitted and arrive in order, for "
"example an ability being triggered or a chat message. Consider carefully if "
"the information really is critical, and use sparingly."
msgstr ""
"Les paquets doivent être reçus et les tentatives de ré-envoi doivent être "
"faites jusqu'à ce que les paquets soient reconnus. Les paquets doivent être "
"reçus dans l'ordre où ils ont été envoyés. C'est le mode de transfert le plus "
"fiable, mais potentiellement le plus lent en cause de la surcharge. À "
"utiliser pour les données critiques qui doivent être transmises et arriver en "
"ordre, par exemple un élément activé ou un message de discussion. À "
"considérez soigneusement si l'information est vraiment critique, et à "
"utiliser avec parcimonie."

msgid ""
"Class that can be inherited to implement custom multiplayer API networking "
"layers via GDExtension."
msgstr ""
"Classe qui peut être héritée pour implémenter des couches de réseau API "
"multijoueur personnalisées via GDExtension."

msgid ""
"Called when the \"is server\" status is requested on the [MultiplayerAPI]. "
"See [method MultiplayerAPI.is_server]."
msgstr ""
"Appelée lorsque le statut \"is server\" (\"est serveur\") est demandé sur la "
"[MultiplayerAPI]. Voir [method MultiplayerAPI.is_server]."

msgid ""
"Called to check if the server can act as a relay in the current "
"configuration. See [method MultiplayerPeer.is_server_relay_supported]."
msgstr ""
"Appelée pour vérifier si le serveur peut agir comme un relais dans la "
"configuration actuelle. Voir [method "
"MultiplayerPeer.is_server_relay_supported]."

msgid "Using multiple threads"
msgstr "Utiliser plusieurs fils d'exécution"

msgid "Thread-safe APIs"
msgstr "Les API sûres pour plusieurs fils d'exécution"

msgid ""
"Locks this [Mutex], blocks until it is unlocked by the current owner.\n"
"[b]Note:[/b] This function returns without blocking if the thread already has "
"ownership of the mutex."
msgstr ""
"Verrouille ce [Mutex], le bloque jusqu'à ce qu'il soit déverrouillé par le "
"propriétaire actuel.\n"
"[b]Note :[/b] Cette fonction renvoie sans bloquer si ce thread est déjà le "
"propriétaire du mutex."

msgid "A server interface for OS native menus."
msgstr "Une interface serveur pour les menus natifs d'OS."

msgid ""
"Returns the state of a multistate item. See [method add_multistate_item] for "
"details.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Renvoie l'état d'un objet multi-état. Voir [method add_multistate_item] pour "
"plus de détails.\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS et Windows."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is hidden.\n"
"See [method set_item_hidden] for more info on how to hide an item.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Renvoie [code]true[/code] si l'élément à l'index [param idx] est caché.\n"
"Voir [method set_item_hidden] pour plus d'informations sur la façon de cacher "
"un objet.\n"
"[b]Note :[/b] Cette méthode n’est implémentée que sur macOS."

msgid ""
"Sets the metadata of an item, which may be of any type. You can later get it "
"with [method get_item_tag], which provides a simple way of assigning context "
"data to items.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Définit les métadonnées d'un élément, qui peuvent être de tout type. Vous "
"pouvez ensuite les obtenir avec [method get_item_tag], qui fournit une "
"manière simple d'affecter les données de contexte aux éléments.\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS et Windows."

msgid ""
"Sets the text of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Définit le texte de l'élément à l'index [param idx].\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS et Windows."

msgid ""
"Sets the minimum width of the global menu.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit la largeur minimale du menu global.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur le macOS."

msgid "A 2D agent used to pathfind to a position while avoiding obstacles."
msgstr ""
"Un agent 2D utilisé pour rechercher un chemin vers une position tout en "
"évitant les obstacles."

msgid "Using NavigationAgents"
msgstr "Utilisation des NavigationAgents"

msgid ""
"Returns the distance to the target position, using the agent's global "
"position. The user must set [member target_position] in order for this to be "
"accurate."
msgstr ""
"Renvoie la distance jusqu'à l'emplacement cible, en utilisant la position "
"globale de l'agent. L'utilisateur doit définir la position cible avec [member "
"target_position] afin que ceci soit précis."

msgid ""
"Returns whether or not the specified layer of the [member avoidance_layers] "
"bitmask is enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Renvoie si la couche spécifiée du masque de bits [member avoidance_layers] "
"est activée, selon un numéro de couche [param layer_number] donné entre 1 et "
"32."

msgid ""
"Returns whether or not the specified mask of the [member avoidance_mask] "
"bitmask is enabled, given a [param mask_number] between 1 and 32."
msgstr ""
"Renvoie si le masque spécifié du masque de bits [member avoidance_mask] est "
"activée, selon un numéro de masque [param mask_number] donné entre 1 et 32."

msgid ""
"Returns this agent's current path from start to finish in global coordinates. "
"The path only updates when the target position is changed or the agent "
"requires a repath. The path array is not intended to be used in direct path "
"movement as the agent has its own internal path logic that would get "
"corrupted by changing the path array manually. Use the intended [method "
"get_next_path_position] once every physics frame to receive the next path "
"point for the agents movement as this function also updates the internal path "
"logic."
msgstr ""
"Renvoie le chemin actuel de cet agent du début à la fin dans les coordonnées "
"globales. Le chemin ne se met à jour que lorsque la position cible est "
"changée ou que l'agent requiert un nouveau chemin. Le tableau du chemin n'est "
"pas destiné à être utilisé pour modifier directement le chemin car l'agent a "
"sa propre logique de chemin interne qui serait corrompue en changeant le "
"tableau du chemin manuellement. Utilisez plutôt [method "
"get_next_path_position] une fois à chaque trame de physique pour recevoir le "
"point suivant du chemin pour le mouvement de l'agent car cette fonction met "
"également à jour la logique interne du chemin."

msgid ""
"Returns which index the agent is currently on in the navigation path's "
"[PackedVector2Array]."
msgstr ""
"Renvoie l'indice sur lequel l'agent est actuellement sur le "
"[PackedVector2Array] du chemin de navigation."

msgid ""
"Returns the path query result for the path the agent is currently following."
msgstr ""
"Renvoie le résultat de recherche de chemin pour le chemin que l'agent suit "
"actuellement."

msgid ""
"Returns the reachable final position of the current navigation path in global "
"coordinates. This position can change if the agent needs to update the "
"navigation path which makes the agent emit the [signal path_changed] signal."
msgstr ""
"Renvoie la position finale accessible du chemin de navigation actuel dans les "
"coordonnées globales. Cette position peut changer si l'agent doit mettre à "
"jour le chemin de navigation, ce qui fait que l'agent émet le signal [signal "
"path_changed]."

msgid ""
"Returns whether or not the specified layer of the [member navigation_layers] "
"bitmask is enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Renvoie si la couche spécifiée du masque de bits [member navigation_layers] "
"est activée, selon un numéro de couche [param layer_number] donné entre 1 et "
"32."

msgid ""
"Returns the [RID] of the navigation map for this NavigationAgent node. This "
"function returns always the map set on the NavigationAgent node and not the "
"map of the abstract agent on the NavigationServer. If the agent map is "
"changed directly with the NavigationServer API the NavigationAgent node will "
"not be aware of the map change. Use [method set_navigation_map] to change the "
"navigation map for the NavigationAgent and also update the agent on the "
"NavigationServer."
msgstr ""
"Renvoie le [RID] de la carte de navigation pour ce nœud NavigationAgent. "
"Cette fonction renvoie toujours la carte définie sur le nœud NavigationAgent "
"et non la carte de l'agent abstrait sur le serveur Navigation. Si la carte de "
"l'agent est changée directement avec l'API de NavigationServer, le nœud "
"NavigationAgent ne sera pas au courant du changement de carte. Utilisez "
"[method set_navigation_map] pour changer la carte de navigation pour le "
"NavigationAgent et mettre à jour l'agent sur le NavigationServer."

msgid ""
"Returns the next position in global coordinates that can be moved to, making "
"sure that there are no static objects in the way. If the agent does not have "
"a navigation path, it will return the position of the agent's parent. The use "
"of this function once every physics frame is required to update the internal "
"path logic of the NavigationAgent."
msgstr ""
"Renvoie la position suivante dans les coordonnées globales à laquelle il est "
"possible de se rendre, en s'assurant qu'il n'y a pas d'objets statiques sur "
"le chemin. Si l'agent n'a pas de chemin de navigation, il renverra la "
"position du parent de l'agent. L'utilisation de cette fonction une fois à "
"chaque trame de physique est nécessaire pour mettre à jour la logique interne "
"de chemin du NavigationAgent."

msgid "Returns the [RID] of this agent on the [NavigationServer2D]."
msgstr "Renvoie le [RID] de cet agent sur le [NavigationServer2D]."

msgid ""
"Returns [code]true[/code] if the agent's navigation has finished. If the "
"target is reachable, navigation ends when the target is reached. If the "
"target is unreachable, navigation ends when the last waypoint of the path is "
"reached.\n"
"[b]Note:[/b] While [code]true[/code] prefer to stop calling update functions "
"like [method get_next_path_position]. This avoids jittering the standing "
"agent due to calling repeated path updates."
msgstr ""
"Renvoie [code]true[/code] si la navigation de l'agent est finie. Si la cible "
"est atteignable, la navigation se termine lorsque la cible est atteinte. Si "
"la cible est inatteignable, la navigation se termine lorsque le dernier point "
"du chemin est atteint.\n"
"[b]Note :[/b] Lorsque cette propriété vaut [code]true[/code], préférez cesser "
"d'appeler les fonctions de mise à jour comme [method get_next_path_position]. "
"Cela évite des tremblements (jitter) chez l'agent fixe en raison de l'appel "
"répété à des mises à jour du chemin."

msgid ""
"Returns [code]true[/code] if [method get_final_position] is within [member "
"target_desired_distance] of the [member target_position]."
msgstr ""
"Renvoie [code]true[/code] si [method get_final_position] se trouve à une "
"distance à [member target_desired_distance] de la position cible [member "
"target_position]."

msgid ""
"Returns [code]true[/code] if the agent reached the target, i.e. the agent "
"moved within [member target_desired_distance] of the [member "
"target_position]. It may not always be possible to reach the target but it "
"should always be possible to reach the final position. See [method "
"get_final_position]."
msgstr ""
"Renvoie [code]true[/code] si l'agent a atteint la cible, c'est-à-dire que "
"l'agent s'est déplacé à une distance inférieure à [member "
"target_desired_distance] de la position cible [member target_position]. Il "
"peut ne pas toujours être possible d'atteindre la cible mais il devrait "
"toujours être possible d'atteindre la position finale. Voir [method "
"get_final_position]."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member avoidance_layers] bitmask, given a [param layer_number] between 1 and "
"32."
msgstr ""
"Selon [param value], active ou désactive la couche spécifiée dans le masque "
"de bits [member avoidance_layers], selon un numéro de couche [param "
"layer_number] donné entre 1 et 32."

msgid ""
"Based on [param value], enables or disables the specified mask in the [member "
"avoidance_mask] bitmask, given a [param mask_number] between 1 and 32."
msgstr ""
"Selon [param value], active ou désactive le masque spécifié dans le masque de "
"bits [member avoidance_mask], selon un numéro de masque [param mask_number] "
"donné entre 1 et 32."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member navigation_layers] bitmask, given a [param layer_number] between 1 "
"and 32."
msgstr ""
"Selon [param value], active ou désactive la couche spécifiée dans le masque "
"de bits [member navigation_layers], selon un numéro de couche [param "
"layer_number] donné entre 1 et 32."

msgid ""
"Sets the [RID] of the navigation map this NavigationAgent node should use and "
"also updates the [code]agent[/code] on the NavigationServer."
msgstr ""
"Définit le [RID] de la carte de navigation que ce nœud NavigationAgent "
"devrait utiliser et met à jour l'[code]agent[/code] sur le NavigationServer."

msgid ""
"Replaces the internal velocity in the collision avoidance simulation with "
"[param velocity]. When an agent is teleported to a new position this function "
"should be used in the same frame. If called frequently this function can get "
"agents stuck."
msgstr ""
"Remplace la vélocité interne dans la simulation d'évitement de collision par "
"[param velocity]. Lorsqu'un agent est téléporté à une nouvelle position, "
"cette fonction doit être utilisée dans la même trame. Si appelée fréquemment, "
"cette fonction peut coincer des agents."

msgid ""
"If [code]true[/code] the agent is registered for an RVO avoidance callback on "
"the [NavigationServer2D]. When [member velocity] is used and the processing "
"is completed a [code]safe_velocity[/code] Vector2 is received with a signal "
"connection to [signal velocity_computed]. Avoidance processing with many "
"registered agents has a significant performance cost and should only be "
"enabled on agents that currently require it."
msgstr ""
"Si [code]true[/code], l'agent est enregistré pour un rappel d'évitement RVO "
"sur le [NavigationServer2D]. Lorsque [member velocity] est utilisé et que le "
"traitement est terminé, un Vector2 [code]safe_velocity[/code] est reçu avec "
"une connexion au signal [signal velocity_computed]. Le traitement de "
"l'évitement avec de nombreux agents enregistrés a un coût de performance "
"important et ne devrait être activé que pour les agents qui en ont "
"actuellement besoin."

msgid ""
"A bitfield determining the avoidance layers for this NavigationAgent. Other "
"agents with a matching bit on the [member avoidance_mask] will avoid this "
"agent."
msgstr ""
"Un champ de bits déterminant les couches d'évitement pour ce NavigationAgent. "
"D'autres agents avec un bit correspondant sur leur [member avoidance_mask] "
"éviteront cet agent."

msgid ""
"A bitfield determining what other avoidance agents and obstacles this "
"NavigationAgent will avoid when a bit matches at least one of their [member "
"avoidance_layers]."
msgstr ""
"Un champ de bits déterminant quels autres agents et obstacles d'évitement ce "
"NavigationAgent évitera lorsqu'un bit correspond à au moins un de leurs "
"[member avoidance_layers]."

msgid ""
"The agent does not adjust the velocity for other agents that would match the "
"[member avoidance_mask] but have a lower [member avoidance_priority]. This in "
"turn makes the other agents with lower priority adjust their velocities even "
"more to avoid collision with this agent."
msgstr ""
"L'agent n'ajuste pas la vitesse pour d'autres agents qui correspondraient au "
"[member avoidance_mask], mais ayant un [member avoidance_priority] inférieur. "
"Cela fait que les autres agents de plus basse priorité ajusteront leurs "
"vitesses encore plus pour éviter la collision avec cet agent."

msgid "If [code]true[/code] shows debug visuals for this agent."
msgstr "Si [code]true[/code], affiche des visuels de débogage pour cet agent."

msgid ""
"If [member debug_use_custom] is [code]true[/code] uses this color for this "
"agent instead of global color."
msgstr ""
"Si [member debug_use_custom] vaut [code]true[/code], utilise cette couleur "
"pour cet agent au lieu de la couleur globale."

msgid ""
"If [member debug_use_custom] is [code]true[/code] uses this line width for "
"rendering paths for this agent instead of global line width."
msgstr ""
"Si [member debug_use_custom] vaut [code]true[/code], utilise cette largeur de "
"ligne pour rendre les chemins pour cet agent au lieu de la largeur de ligne "
"globale."

msgid ""
"If [member debug_use_custom] is [code]true[/code] uses this rasterized point "
"size for rendering path points for this agent instead of global point size."
msgstr ""
"Si [member debug_use_custom] vaut [code]true[/code], utilise cette taille de "
"point rasterisée pour rendre les points du chemin pour cet agent au lieu de "
"la taille de point globale."

msgid ""
"If [code]true[/code] uses the defined [member debug_path_custom_color] for "
"this agent instead of global color."
msgstr ""
"Si [code]true[/code], utilise la couleur [member debug_path_custom_color] "
"définie pour cet agent au lieu de la couleur globale."

msgid "The maximum number of neighbors for the agent to consider."
msgstr "Le nombre maximum de voisins à considérer par l'agent."

msgid "The maximum speed that an agent can move."
msgstr "La vitesse maximale à laquelle un agent peut se déplacer."

msgid ""
"A bitfield determining which navigation layers of navigation regions this "
"agent will use to calculate a path. Changing it during runtime will clear the "
"current navigation path and generate a new one, according to the new "
"navigation layers."
msgstr ""
"Un masque de bits déterminant quelles couches de navigation des régions de "
"navigation cet agent utilisera pour calculer un chemin. Le modifier durant "
"l'exécution permettra de vider le chemin de navigation actuel et d'en générer "
"un nouveau, correspondant aux nouvelles couches de navigation."

msgid "The distance to search for other agents."
msgstr "La distance pour chercher d'autres agents."

msgid ""
"The distance threshold before a path point is considered to be reached. This "
"allows agents to not have to hit a path point on the path exactly, but only "
"to reach its general area. If this value is set too high, the NavigationAgent "
"will skip points on the path, which can lead to it leaving the navigation "
"mesh. If this value is set too low, the NavigationAgent will be stuck in a "
"repath loop because it will constantly overshoot the distance to the next "
"point on each physics frame update."
msgstr ""
"Le seuil de distance avant qu'un point du chemin soit considéré comme "
"atteint. Cela permettra à un agent de ne pas avoir à atteindre un point du "
"chemin exactement sur le chemin, mais uniquement un zone autour. Si cette "
"valeur est trop élevée, le NavigationAgent sautera des points sur le chemin "
"ce qui peut conduire à quitter le maillage de navigation. Si cette valeur est "
"trop faible, le NavigationAgent sera coincé dans une boucle parce qu'il va "
"constamment dépasser la distance jusqu'au point suivant à chaque mise à jour "
"de trame de physique."

msgid ""
"The maximum distance the agent is allowed away from the ideal path to the "
"final position. This can happen due to trying to avoid collisions. When the "
"maximum distance is exceeded, it recalculates the ideal path."
msgstr ""
"La distance maximale du chemin idéal vers la position finale dont l'agent est "
"autorisé de s'éloigner. Cela peut arriver en essayant d'éviter des "
"collisions. Lorsque la distance maximale est dépassée, il recalcule le chemin "
"idéal."

msgid "Additional information to return with the navigation path."
msgstr "Informations supplémentaires à renvoyer avec le chemin de navigation."

msgid ""
"The path postprocessing applied to the raw path corridor found by the [member "
"pathfinding_algorithm]."
msgstr ""
"Le post-traitement du chemin appliqué au couloir de chemin brut trouvé par "
"[member pathfinding_algorithm]."

msgid "The pathfinding algorithm used in the path query."
msgstr ""
"L'algorithme de recherche de chemin utilisé dans la recherche de chemin."

msgid ""
"The radius of the avoidance agent. This is the \"body\" of the avoidance "
"agent and not the avoidance maneuver starting radius (which is controlled by "
"[member neighbor_distance]).\n"
"Does not affect normal pathfinding. To change an actor's pathfinding radius "
"bake [NavigationPolygon] resources with a different [member "
"NavigationPolygon.agent_radius] property and use different navigation maps "
"for each actor size."
msgstr ""
"Le rayon d'évitement de l'agent. Il s'agit du « corps » de l'agent "
"d'évitement et non le rayon de départ de la manœuvre d'évitement (qui est "
"contrôlé par [member neighbor_distance]).\n"
"N'affecte pas la recherche de chemin normale. Pour changer le rayon de "
"recherche de chemin d'un acteur, pré-calculez les ressources "
"[NavigationPolygon] avec une propriété [member "
"NavigationPolygon.agent_radius] différente et utilisez des cartes de "
"navigation différentes pour chaque taille d'acteur."

msgid "The path simplification amount in worlds units."
msgstr "Le montant de simplification du chemin en unités du monde."

msgid ""
"The distance threshold before the target is considered to be reached. On "
"reaching the target, [signal target_reached] is emitted and navigation ends "
"(see [method is_navigation_finished] and [signal navigation_finished]).\n"
"You can make navigation end early by setting this property to a value greater "
"than [member path_desired_distance] (navigation will end before reaching the "
"last waypoint).\n"
"You can also make navigation end closer to the target than each individual "
"path position by setting this property to a value lower than [member "
"path_desired_distance] (navigation won't immediately end when reaching the "
"last waypoint). However, if the value set is too low, the agent will be stuck "
"in a repath loop because it will constantly overshoot the distance to the "
"target on each physics frame update."
msgstr ""
"Le seuil de distance avant que la cible soit considérée comme atteinte. En "
"atteignant la cible, [signal target_reached] est émis et la navigation se "
"finit (voir [method is_navigation_finished] et [signal "
"navigation_finished]).\n"
"Vous pouvez faire que la navigation se termine tôt en définissant cette "
"propriété à une valeur supérieure à [member path_desired_distance] (la "
"navigation se terminera avant d'atteindre le dernier point du chemin).\n"
"Vous pouvez également faire que la navigation se termine plus proche de la "
"cible que n'importe quelle position de chemin individuelle en définissant "
"cette propriété à une valeur inférieure à [member path_desired_distance] (la "
"navigation ne se terminera pas immédiatement en atteignant le dernier point "
"du chemin). Cependant, si la valeur définie est trop basse, l'agent sera "
"coincé dans une boucle parce qu'il va constamment dépasser la distance "
"jusqu'à la cible à chaque mise à jour de trame de physique."

msgid ""
"If set, a new navigation path from the current agent position to the [member "
"target_position] is requested from the NavigationServer."
msgstr ""
"Si elle est définie, un nouveau chemin de navigation de la position actuelle "
"de l'agent vers la position cible [member target_position] est demandé au "
"NavigationServer."

msgid ""
"The minimal amount of time for which this agent's velocities, that are "
"computed with the collision avoidance algorithm, are safe with respect to "
"other agents. The larger the number, the sooner the agent will respond to "
"other agents, but less freedom in choosing its velocities. A too high value "
"will slow down agents movement considerably. Must be positive."
msgstr ""
"La quantité minimale de temps pour laquelle les vitesses de cet agent, "
"calculées avec l'algorithme d'évitement de collision, sont sûres par rapport "
"aux autres agents. Plus le nombre est élevé, plus tôt l'agent répondra à "
"d'autres agents, mais moins il aura la liberté de choisir sa vitesse. Une "
"valeur trop élevée ralentira considérablement le mouvement de l'agent. Doit "
"être positif."

msgid ""
"The minimal amount of time for which this agent's velocities, that are "
"computed with the collision avoidance algorithm, are safe with respect to "
"static avoidance obstacles. The larger the number, the sooner the agent will "
"respond to static avoidance obstacles, but less freedom in choosing its "
"velocities. A too high value will slow down agents movement considerably. "
"Must be positive."
msgstr ""
"La quantité minimale de temps pour laquelle les vitesses de cet agent, "
"calculées avec l'algorithme d'évitement de collision, sont sûres par rapport "
"aux obstacle d'évitement statiques. Plus le nombre est élevé, plus tôt "
"l'agent répondra aux obstacles d'évitement statiques, mais moins il aura la "
"liberté de choisir sa vitesse. Une valeur trop élevée ralentira "
"considérablement le mouvement de l'agent. Doit être positif."

msgid ""
"Sets the new wanted velocity for the agent. The avoidance simulation will try "
"to fulfill this velocity if possible but will modify it to avoid collision "
"with other agents and obstacles. When an agent is teleported to a new "
"position, use [method set_velocity_forced] as well to reset the internal "
"simulation velocity."
msgstr ""
"Définit la nouvelle vitesse désirée pour l'agent. La simulation d'évitement "
"tentera d'atteindre cette vitesse si possible, mais la modifiera pour éviter "
"toute collision avec d'autres agents et obstacles. Lorsqu'un agent est "
"téléporté à une nouvelle position, utilisez aussi [method "
"set_velocity_forced] pour réinitialiser la vitesse de simulation interne."

msgid ""
"Signals that the agent reached a navigation link. Emitted when the agent "
"moves within [member path_desired_distance] of the next position of the path "
"when that position is a navigation link.\n"
"The details dictionary may contain the following keys depending on the value "
"of [member path_metadata_flags]:\n"
"- [code]position[/code]: The start position of the link that was reached.\n"
"- [code]type[/code]: Always [constant "
"NavigationPathQueryResult2D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code]: The [RID] of the link.\n"
"- [code]owner[/code]: The object which manages the link (usually "
"[NavigationLink2D]).\n"
"- [code]link_entry_position[/code]: If [code]owner[/code] is available and "
"the owner is a [NavigationLink2D], it will contain the global position of the "
"link's point the agent is entering.\n"
"- [code]link_exit_position[/code]: If [code]owner[/code] is available and the "
"owner is a [NavigationLink2D], it will contain the global position of the "
"link's point which the agent is exiting."
msgstr ""
"Signale que l'agent a atteint un lien de navigation. Émis lorsque l'agent se "
"déplace à une distance de [member path_desired_distance] de la position "
"suivante du chemin lorsque cette position est un lien de navigation.\n"
"Le dictionnaire de détails peut contenir les clés suivantes selon la valeur "
"de [member path_metadata_flags]:\n"
"- [code]position[/code] : La position de départ du lien qui a été atteint.\n"
"- [code]type[/code] : Toujours [constant "
"NavigationPathQueryResult2D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code] : Le [RID] du lien.\n"
"- [code]owner[/code] : L'objet qui gère le lien (généralement "
"[NavigationLink2D]).\n"
"- [code]link_entry_position[/code] : Si [code]owner[/code] est disponible et "
"que le propriétaire est un [NavigationLink2D], il contiendra la position "
"globale du point de lien que l'agent entre.\n"
"- [code]link_exit_position[/code] : Si [code]owner[/code] est disponible et "
"que le propriétaire est un [NavigationLink2D], il contiendra la position "
"globale du point de lien que l'agent quitte."

msgid ""
"Signals that the agent's navigation has finished. If the target is reachable, "
"navigation ends when the target is reached. If the target is unreachable, "
"navigation ends when the last waypoint of the path is reached. This signal is "
"emitted only once per loaded path.\n"
"This signal will be emitted just after [signal target_reached] when the "
"target is reachable."
msgstr ""
"Signale que la navigation de l'agent est finie. Si la cible est atteinte, la "
"navigation se termine lorsque la cible est atteinte. Si la cible est "
"inatteignable, la navigation se termine lorsque le dernier point du chemin "
"est atteint. Ce signal n'est émis qu'une fois par chemin chargé.\n"
"Ce signal sera émis juste après [signal target_reached] lorsque la cible est "
"atteignable."

msgid ""
"Emitted when the agent had to update the loaded path:\n"
"- because path was previously empty.\n"
"- because navigation map has changed.\n"
"- because agent pushed further away from the current path segment than the "
"[member path_max_distance]."
msgstr ""
"Émis lorsque l'agent a dû mettre à jour le chemin chargé :\n"
"- parce que le chemin était précédemment vide.\n"
"- parce que la carte de navigation a changé.\n"
"- parce que l'agent s'est éloigné du segment de chemin actuel de plus que "
"[member path_max_distance]."

msgid ""
"Signals that the agent reached the target, i.e. the agent moved within "
"[member target_desired_distance] of the [member target_position]. This signal "
"is emitted only once per loaded path.\n"
"This signal will be emitted just before [signal navigation_finished] when the "
"target is reachable.\n"
"It may not always be possible to reach the target but it should always be "
"possible to reach the final position. See [method get_final_position]."
msgstr ""
"Signale que l'agent a atteint la cible, c'est-à-dire que l'agent s'est "
"déplacé à une distance inférieure à [member target_desired_distance] de la "
"position cible [member target_position]. Ce signal n'est émis qu'une fois par "
"chemin chargé.\n"
"Ce signal sera émis juste avant [signal navigation_finished] lorsque la cible "
"est atteignable.\n"
"Il peut ne pas toujours être possible d'atteindre la cible mais il devrait "
"toujours être possible d'atteindre la position finale. Voir [method "
"get_final_position]."

msgid ""
"Notifies when the collision avoidance velocity is calculated. Emitted every "
"update as long as [member avoidance_enabled] is [code]true[/code] and the "
"agent has a navigation map."
msgstr ""
"Notifie quand la vitesse d'évitement de collision est calculée. Émise à "
"chaque mise à jour tant que [member avoidance_enabled] vuat [code]true[/code] "
"et que l'agent a une carte de navigation."

msgid ""
"Signals that the agent reached a waypoint. Emitted when the agent moves "
"within [member path_desired_distance] of the next position of the path.\n"
"The details dictionary may contain the following keys depending on the value "
"of [member path_metadata_flags]:\n"
"- [code]position[/code]: The position of the waypoint that was reached.\n"
"- [code]type[/code]: The type of navigation primitive (region or link) that "
"contains this waypoint.\n"
"- [code]rid[/code]: The [RID] of the containing navigation primitive (region "
"or link).\n"
"- [code]owner[/code]: The object which manages the containing navigation "
"primitive (region or link)."
msgstr ""
"Signale que l'agent a atteint un point du chemin. Émis lorsque l'agent se "
"déplace à une distance inférieure à[member path_desired_distance] de la "
"position suivante du chemin.\n"
"Le dictionnaire de détails peut contenir les clés suivantes selon la valeur "
"de [member path_metadata_flags] :\n"
"- [code]position[/code] : La position du point du chemin qui a été atteint.\n"
"- [code]type[/code] : Le type de primitive de navigation (région ou lien) qui "
"contient ce point du chemin.\n"
"- [code]rid[/code] : Le [RID] de la primitive de navigation qui contient le "
"point (région ou lien).\n"
"- [code]owner[/code] : L'objet qui gère le la primitive de navigation qui "
"contient le point (région ou lien)."

msgid "A 3D agent used to pathfind to a position while avoiding obstacles."
msgstr ""
"Un agent 3D utiliser pour trouver un chemin vers une position en évitant des "
"obstacles."

msgid ""
"Returns which index the agent is currently on in the navigation path's "
"[PackedVector3Array]."
msgstr ""
"Renvoie l'index sur lequel l'agent est actuellement dans le "
"[PackedVector3Array] du chemin de navigation."

msgid "Returns the [RID] of this agent on the [NavigationServer3D]."
msgstr "Renvoie le [RID] de cet agent sur le [NavigationServer3D]."

msgid ""
"If [code]true[/code] the agent is registered for an RVO avoidance callback on "
"the [NavigationServer3D]. When [member velocity] is set and the processing is "
"completed a [code]safe_velocity[/code] Vector3 is received with a signal "
"connection to [signal velocity_computed]. Avoidance processing with many "
"registered agents has a significant performance cost and should only be "
"enabled on agents that currently require it."
msgstr ""
"Si [code]true[/code] l'agent est enregistré pour un rappel d'évitement RVO "
"sur le [NavigationServer3D]. Lorsque [member velocity] est utilisé et que le "
"traitement est terminé, un Vector3 [code]safe_velocity[/code] est reçu avec "
"une connexion du signal [signal velocity_computed]. Le traitement de "
"l'évitement avec de nombreux agents enregistrés a un coût de performance "
"important et ne devrait être activé que pour les agents qui en ont "
"actuellement besoin."

msgid ""
"The height of the avoidance agent. Agents will ignore other agents or "
"obstacles that are above or below their current position + height in 2D "
"avoidance. Does nothing in 3D avoidance which uses radius spheres alone."
msgstr ""
"La hauteur de l'agent d'évitement. Les agents ignoreront les autres agents ou "
"obstacles qui sont au dessus ou en dessous de leur position actuelle + "
"hauteur dans l'évitement 2D. Ne fait rien dans l'évitement 3D qui utilise "
"seulement des rayons de sphère."

msgid ""
"The height offset is subtracted from the y-axis value of any vector path "
"position for this NavigationAgent. The NavigationAgent height offset does not "
"change or influence the navigation mesh or pathfinding query result. "
"Additional navigation maps that use regions with navigation meshes that the "
"developer baked with appropriate agent radius or height values are required "
"to support different-sized agents."
msgstr ""
"Le décalage de hauteur est soustrait de la valeur de l'axe y de toute "
"position vectorielle de chemin pour ce NavigationAgent. Le décalage de "
"hauteur du NavigationAgent ne change pas ou n'influence pas le maillage de "
"navigation ou le résultat de la requête de recherche de chemin. Des cartes de "
"navigation supplémentaires qui utilisent des régions avec des maillages de "
"navigation que le développeur a pré-calculé avec un rayon d'agent ou des "
"valeurs de hauteur appropriés sont nécessaires pour supporter des agents de "
"tailles différentes."

msgid ""
"The radius of the avoidance agent. This is the \"body\" of the avoidance "
"agent and not the avoidance maneuver starting radius (which is controlled by "
"[member neighbor_distance]).\n"
"Does not affect normal pathfinding. To change an actor's pathfinding radius "
"bake [NavigationMesh] resources with a different [member "
"NavigationMesh.agent_radius] property and use different navigation maps for "
"each actor size."
msgstr ""
"Le rayon de l'agent d'évitement. C'est le \"corps\" de l'agent d'évitement et "
"non le rayon de départ de la manœuvre d'évitement (qui est contrôlée par "
"[member neighbor_distance]).\n"
"N'affecte pas la recherche de chemin normale. Pour changer le rayon de "
"recherche de chemin d'un acteur, pré-calculez [NavigationMesh] avec une "
"propriété [member NavigationMesh.agent_radius] différente et utilisez "
"différentes cartes de navigation pour chaque taille d'acteur."

msgid ""
"If [code]true[/code], the agent calculates avoidance velocities in 3D "
"omnidirectionally, e.g. for games that take place in air, underwater or "
"space. Agents using 3D avoidance only avoid other agents using 3D avoidance, "
"and react to radius-based avoidance obstacles. They ignore any vertex-based "
"obstacles.\n"
"If [code]false[/code], the agent calculates avoidance velocities in 2D along "
"the x and z-axes, ignoring the y-axis. Agents using 2D avoidance only avoid "
"other agents using 2D avoidance, and react to radius-based avoidance "
"obstacles or vertex-based avoidance obstacles. Other agents using 2D "
"avoidance that are below or above their current position including [member "
"height] are ignored."
msgstr ""
"Si [code]true[/code], l'agent calcule les vitesses d'évitement en 3D omni-"
"directionnellement, par exemple pour les jeux qui se déroulent dans l'air, "
"sous l'eau ou dans l'espace. Les agents utilisant l'évitement 3D n'évitent "
"que les autres agents utilisant l'évitement 3D, et réagissent aux obstacles "
"d'évitement basés sur le rayon. Ils ignorent tous les obstacles à base de "
"sommets.\n"
"Si [code]false[/code], l'agent calcule les vitesses d'évitement en 2D le long "
"des axes x et z, en ignorant l'axe y. Les agents utilisant l'évitement 2D "
"n'évitent que d'autres agents utilisant l'évitement 2D, et réagissent aux "
"obstacles d'évitement basés sur le rayon ou aux obstacles d'évitement à base "
"de sommets. Les autres agents utilisant l'évitement 2D qui sont inférieurs ou "
"supérieurs à leur position actuelle, y compris [member height], sont ignorés."

msgid ""
"Signals that the agent reached a navigation link. Emitted when the agent "
"moves within [member path_desired_distance] of the next position of the path "
"when that position is a navigation link.\n"
"The details dictionary may contain the following keys depending on the value "
"of [member path_metadata_flags]:\n"
"- [code]position[/code]: The start position of the link that was reached.\n"
"- [code]type[/code]: Always [constant "
"NavigationPathQueryResult3D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code]: The [RID] of the link.\n"
"- [code]owner[/code]: The object which manages the link (usually "
"[NavigationLink3D]).\n"
"- [code]link_entry_position[/code]: If [code]owner[/code] is available and "
"the owner is a [NavigationLink3D], it will contain the global position of the "
"link's point the agent is entering.\n"
"- [code]link_exit_position[/code]: If [code]owner[/code] is available and the "
"owner is a [NavigationLink3D], it will contain the global position of the "
"link's point which the agent is exiting."
msgstr ""
"Signale que l'agent a atteint un lien de navigation. Émis lorsque l'agent se "
"déplace à une distance inférieure à [member path_desired_distance] de la "
"position suivante du chemin lorsque cette position est un lien de "
"navigation.\n"
"Le dictionnaire de détails peut contenir les clés suivantes selon la valeur "
"de [member path_metadata_flags] :\n"
"- [code]position[/code] : La position de départ du lien qui a été atteint.\n"
"- [code]type[/code] : Toujours [constant "
"NavigationPathQueryResult3D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code] : Le [RID] du lien.\n"
"- [code]owner[/code] : L'objet qui gère le lien (généralement "
"[NavigationLink3D]).\n"
"- [code]link_entry_position[/code] : Si [code]owner[/code] est disponible et "
"que le propriétaire est un [NavigationLink3D], il contiendra la position "
"globale du point de lien où l'agent entre.\n"
"- [code]link_exit_position[/code] : Si [code]owner[/code] est disponible et "
"que le propriétaire est un [NavigationLink3D], il contiendra la position "
"globale du point de lien que l'agent quitte."

msgid "Using NavigationLinks"
msgstr "Utilisation de NavigationLinks"

msgid ""
"A navigation mesh is a collection of polygons that define which areas of an "
"environment are traversable to aid agents in pathfinding through complicated "
"spaces."
msgstr ""
"Un maillage de navigation est une collection de polygones qui définissent les "
"zones d'un environnement qui peuvent être traversés pour aider les agents "
"dans leur cheminement dans les espaces compliqués."

msgid "Using NavigationMeshes"
msgstr "Utiliser les NavigationMesh"

msgid "3D Navigation Demo"
msgstr "Démo de navigation 3D"

msgid ""
"Adds a polygon using the indices of the vertices you get when calling [method "
"get_vertices]."
msgstr ""
"Ajoute un polygone en utilisant les indices des sommets que obtenus avec "
"[method get_vertices]."

msgid ""
"Clears the array of polygons, but it doesn't clear the array of vertices."
msgstr ""
"Efface le tableau de polygones, mais n'efface pas le tableau de sommets."

msgid "Returns the number of polygons in the navigation mesh."
msgstr "Renvoie le nombre de polygones dans le maillage de navigation."

msgid ""
"Sets the vertices that can be then indexed to create polygons with the "
"[method add_polygon] method."
msgstr ""
"Définit les sommets qui peuvent ensuite être indexés pour créer des polygones "
"avec la méthode [method add_polygon]."

msgid ""
"The minimum floor to ceiling height that will still allow the floor area to "
"be considered walkable.\n"
"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
"multiple of [member cell_height]."
msgstr ""
"La hauteur minimale entre le sol et le plafond qui permettra toujours que la "
"surface au sol soit considérée comme pouvant être traversée.\n"
"[b]Note :[/b] Pendant le pré-calcul, cette valeur sera arrondie au multiple "
"le plus proche de [member cell_height]."

msgid ""
"The minimum ledge height that is considered to still be traversable.\n"
"[b]Note:[/b] While baking, this value will be rounded down to the nearest "
"multiple of [member cell_height]."
msgstr ""
"La hauteur minimale de haie qui est considérée comme toujours pouvant être "
"traversée.\n"
"[b]Note :[/b] Pendant le pré-calcul, cette valeur sera arrondie au multiple "
"le plus proche de [member cell_height]."

msgid "The maximum slope that is considered walkable, in degrees."
msgstr ""
"La pente maximale qui est considérée comme pouvant être traversée, en degrés."

msgid ""
"The sampling distance to use when generating the detail mesh, in cell unit."
msgstr ""
"La distance d'échantillonnage à utiliser pour générer le maillage de détail, "
"dans l'unité des cellules."

msgid ""
"The maximum distance the detail mesh surface should deviate from heightfield, "
"in cell unit."
msgstr ""
"La distance maximale de la surface de maillage de détail devrait s'écarter du "
"champ de hauteur, dans l'unité des cellules."

msgid "The position offset applied to the [member filter_baking_aabb] [AABB]."
msgstr ""
"Le décalage de position appliqué au [AABB] de [member filter_baking_aabb]."

msgid ""
"The physics layers to scan for static colliders.\n"
"Only used when [member geometry_parsed_geometry_type] is [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
msgstr ""
"Les calques de physique pour scanner les collisions statiques.\n"
"Seulement utilisé quand [member geometry_parsed_geometry_type] est [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] ou [constant PARSED_GEOMETRY_BOTH]."

msgid ""
"The name of the group to scan for geometry.\n"
"Only used when [member geometry_source_geometry_mode] is [constant "
"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant "
"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."
msgstr ""
"Le nom du groupe pour scanner la géométrie.\n"
"Seulement utilisé lorsque [member geometry_source_geometry_mode] est "
"[constant SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] ou [constant "
"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."

msgid ""
"Any regions with a size smaller than this will be merged with larger regions "
"if possible.\n"
"[b]Note:[/b] This value will be squared to calculate the number of cells. For "
"example, a value of 20 will set the number of cells to 400."
msgstr ""
"Toutes les régions ayant une taille inférieure à celle-ci seront fusionnées "
"avec des régions plus grandes si possible.\n"
"[b]Note :[/b] Cette valeur sera carrée pour calculer le nombre de cellules. "
"Par exemple, une valeur de 20 définira le nombre de cellules à 400."

msgid ""
"The minimum size of a region for it to be created.\n"
"[b]Note:[/b] This value will be squared to calculate the minimum number of "
"cells allowed to form isolated island areas. For example, a value of 8 will "
"set the number of cells to 64."
msgstr ""
"La taille minimale d'une région pour qu'elle soit créée.\n"
"[b]Note :[/b] Cette valeur sera fixée pour calculer le nombre minimum de "
"cellules autorisées à former des zones insulaires isolées. Par exemple, une "
"valeur de 8 définira le nombre de cellules à 64."

msgid ""
"The maximum number of vertices allowed for polygons generated during the "
"contour to polygon conversion process."
msgstr ""
"Le nombre maximal de sommets permis pour les polygones générés pendant le "
"contour du processus de conversion en polygones."

msgid ""
"Monotone partitioning. Use this if you want fast navigation mesh generation."
msgstr ""
"Partage monotone. Utilisez ceci si vous voulez une génération de maillages de "
"navigation rapide."

msgid ""
"Layer partitioning. Good choice to use for tiled navigation mesh with medium "
"and small sized tiles."
msgstr ""
"Le partitionnement du calque. Un bon choix à utiliser pour la maillage de "
"navigation en carreaux de taille moyenne et petite."

msgid "Represents the size of the [enum SamplePartitionType] enum."
msgstr "Représente la taille de l'énumération [enum SamplePartitionType]."

msgid ""
"Both [constant PARSED_GEOMETRY_MESH_INSTANCES] and [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS]."
msgstr ""
"À la fois [constant PARSED_GEOMETRY_MESH_INSTANCES] et [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS]."

msgid "Represents the size of the [enum ParsedGeometryType] enum."
msgstr "Représente la taille de l’enum [enum ParsedGeometryType]."

msgid ""
"Scans nodes in a group and their child nodes recursively for geometry. The "
"group is specified by [member geometry_source_group_name]."
msgstr ""
"Scanne les nœuds dans un groupe et leurs nœuds enfants récursivement pour la "
"géométrie. Le groupe est spécifié par [member geometry_source_group_name]."

msgid ""
"Uses nodes in a group for geometry. The group is specified by [member "
"geometry_source_group_name]."
msgstr ""
"Utilise des nœuds dans un groupe de géométrie. Le groupe est spécifié par "
"[member geometry_source_group_name]."

msgid "Represents the size of the [enum SourceGeometryMode] enum."
msgstr "Représente la taille de l'énumération [enum SourceGeometryMode]."

msgid "Helper class for creating and clearing navigation meshes."
msgstr ""
"Classe d'aide pour la création et la suppression des maillages de navigation."

msgid ""
"Removes all polygons and vertices from the provided [param navigation_mesh] "
"resource."
msgstr ""
"Retire tous les polygones et sommets de la ressource [param navigation_mesh] "
"fournie."

msgid "Clears the internal data."
msgstr "Efface les données internes."

msgid "Using NavigationObstacles"
msgstr "Utilisation de NavigationObstacles"

msgid "Using NavigationPathQueryObjects"
msgstr "Utilisation de NavigationPathQueryObjects"

msgid "Additional information to include with the navigation path."
msgstr "Informations supplémentaires à inclure avec le chemin de navigation."

msgid "Include all available metadata about the returned path."
msgstr "Inclure toutes les métadonnées disponibles sur le chemin renvoyé."

msgid "This segment of the path goes through a region."
msgstr "Ce segment du chemin traverse une région."

msgid "This segment of the path goes through a link."
msgstr "Ce segment du chemin traverse un lien."

msgid "Represents the result of a 3D pathfinding query."
msgstr "Représente le résultat d'une requête de recherche de chemin 3D."

msgid ""
"This class stores the result of a 3D navigation path query from the "
"[NavigationServer3D]."
msgstr ""
"Cette classe stocke le résultat d'une requête de recherche de chemin 3D du "
"[NavigationServer3D]."

msgid "Navigation Polygon 2D Demo"
msgstr "Démo de polygone de navigation 2D"

msgid ""
"Clears the array of the outlines, but it doesn't clear the vertices and the "
"polygons that were created by them."
msgstr ""
"Efface le tableau des contours, mais ça n'efface pas les sommets et les "
"polygones qui ont été créés par eux."

msgid ""
"Clears the array of polygons, but it doesn't clear the array of outlines and "
"vertices."
msgstr ""
"Efface le tableau des polygones, mais ça n'effacera pas le tableau des "
"contours et des sommets."

msgid ""
"Returns a [PackedVector2Array] containing the vertices of an outline that was "
"created in the editor or by script."
msgstr ""
"Renvoie un [PackedVector2Array] contenant les sommets d'un contour qui a été "
"créé dans l'éditeur ou par un script."

msgid ""
"Returns the number of outlines that were created in the editor or by script."
msgstr ""
"Renvoie le nombre de contours qui ont été créés dans l'éditeur ou par un "
"script."

msgid "Returns the count of all polygons."
msgstr "Renvoie le nombre de tous les polygones."

msgid ""
"Returns a [PackedVector2Array] containing all the vertices being used to "
"create the polygons."
msgstr ""
"Renvoie un [PackedVector2Array] contenant tous les sommets utilisés pour "
"créer les polygones."

msgid ""
"Use [method NavigationServer2D.parse_source_geometry_data] and [method "
"NavigationServer2D.bake_from_source_geometry_data] instead."
msgstr ""
"Utilisez [method NavigationServer2D.parse_source_geometry_data] et [method "
"NavigationServer2D.bake_from_source_geometry_data] à la place."

msgid ""
"Removes an outline created in the editor or by script. You have to call "
"[method make_polygons_from_outlines] for the polygons to update."
msgstr ""
"Enlève un aperçu créé dans l'éditeur ou par un script. Vous devez appeler "
"[method make_polygons_from_outlines] pour mettre à jour les polygones."

msgid ""
"Changes an outline created in the editor or by script. You have to call "
"[method make_polygons_from_outlines] for the polygons to update."
msgstr ""
"Change un aperçu créé dans l'éditeur ou par un script. Vous devez appeler "
"[method make_polygons_from_outlines] pour mettre à jour les polygones."

msgid ""
"The physics layers to scan for static colliders.\n"
"Only used when [member parsed_geometry_type] is [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
msgstr ""
"Les couches de physique à analyser pour des colliders statiques.\n"
"Seulement utilisé quand [member parsed_geometry_type] vaut [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] ou [constant PARSED_GEOMETRY_BOTH]."

msgid "Using NavigationRegions"
msgstr "Utilisation de NavigationRegions"

msgid "Use [method get_rid] instead."
msgstr "Utilisez [method get_rid] à la place."

msgid "The [NavigationPolygon] resource to use."
msgstr "La ressource [NavigationPolygon] à utiliser."

msgid ""
"Returns [code]true[/code] when the [NavigationMesh] is being baked on a "
"background thread."
msgstr ""
"Renvoie [code]true[/code] lorsque le [NavigationMesh] est en cours de pré-"
"calcul sur un thread d'arrière-plan."

msgid ""
"Sets the [RID] of the navigation map this region should use. By default the "
"region will automatically join the [World3D] default navigation map so this "
"function is only required to override the default map."
msgstr ""
"Définit le [RID] de la carte de navigation que cette région devrait utiliser. "
"Par défaut, la région se joindra automatiquement à la carte de navigation par "
"défaut du [World3D] de sorte à ce que cette fonction ne soit nécessaire que "
"pour redéfinir la carte par défaut."

msgid "Determines if the [NavigationRegion3D] is enabled or disabled."
msgstr "Détermine si la [NavigationRegion3D] est activée ou désactivée."

msgid "The [NavigationMesh] resource to use."
msgstr "La ressource [NavigationMesh] à utiliser."

msgid "Notifies when the navigation mesh bake operation is completed."
msgstr ""
"Notifie quand l'opération de pré-calcul de maillage de navigation est "
"terminée."

msgid "Notifies when the [NavigationMesh] has changed."
msgstr "Avertit quand le [NavigationMesh] a changé."

msgid "Using NavigationServer"
msgstr "Utilisation de NavigationServer"

msgid "Creates the agent."
msgstr "Crée un agent."

msgid "Set the agent's [code]avoidance_layers[/code] bitmask."
msgstr "Définit le masque de bits du [code]avoidance_layers[/code] de l'agent."

msgid "Set the agent's [code]avoidance_mask[/code] bitmask."
msgstr "Définit le masque de bits [code]avoidance_mask[/code] de l'agent."

msgid "Puts the agent in the map."
msgstr "Place l'agent sur la carte."

msgid ""
"Sets the maximum number of other agents the agent takes into account in the "
"navigation. The larger this number, the longer the running time of the "
"simulation. If the number is too low, the simulation will not be safe."
msgstr ""
"Définit le nombre maximal d'autres agents que cet agent prend en compte dans "
"la navigation. Plus ce nombre est grand, plus la durée de la simulation est "
"longue. Si le nombre est trop bas, la simulation ne sera pas fiable."

msgid "Sets the maximum speed of the agent. Must be positive."
msgstr "Définit la vitesse maximale de l'agent. Ça doit être positif."

msgid ""
"Sets the maximum distance to other agents this agent takes into account in "
"the navigation. The larger this number, the longer the running time of the "
"simulation. If the number is too low, the simulation will not be safe."
msgstr ""
"Définit la distance maximale avec d'autres agents que cet agent prend en "
"compte dans la navigation. Plus ce nombre est grand, plus la durée de la "
"simulation est longue. Si le nombre est trop bas, la simulation ne sera pas "
"fiable."

msgid "Sets the position of the agent in world space."
msgstr "Définit la position de l'agent dans l'espace global."

msgid "Sets the radius of the agent."
msgstr "Définit le rayon de l'agent."

msgid "Destroys the given RID."
msgstr "Supprimer le RID renseigné."

msgid "Returns [code]true[/code] when the NavigationServer has debug enabled."
msgstr ""
"Renvoie [code]true[/code] lorsque le NavigationServer a le débogage activé."

msgid ""
"Returns all created navigation map [RID]s on the NavigationServer. This "
"returns both 2D and 3D created navigation maps as there is technically no "
"distinction between them."
msgstr ""
"Renvoie tous les [RID] des cartes de navigation créées sur le "
"NavigationServer. Cela renvoie les cartes de navigation 2D et aussi 3D car il "
"n'y a techniquement aucune distinction entre elles."

msgid "Returns information about the current state of the NavigationServer."
msgstr "Renvoie des informations sur l'état actuel du NavigationServer."

msgid ""
"Returns [code]true[/code] when the provided navigation polygon is being baked "
"on a background thread."
msgstr ""
"Renvoie [code]true[/code] lorsque le polygone de navigation fourni est en "
"cours de pré-calcul sur un thread d'arrière-plan."

msgid "Create a new link between two positions on a map."
msgstr "Crée un nouveau lien entre deux positions sur une carte."

msgid "Returns [code]true[/code] if the specified [param link] is enabled."
msgstr "Renvoie [code]true[/code] si le lien [param link] spécifié est activé."

msgid "Returns the ending position of this [param link]."
msgstr "Renvoie la position finale de ce lien [param link]."

msgid "Returns the enter cost of this [param link]."
msgstr "Renvoie le coût d'entrée de ce lien [param link]."

msgid ""
"Returns the current iteration ID of the navigation link. Every time the "
"navigation link changes and synchronizes, the iteration ID increases. An "
"iteration ID of [code]0[/code] means the navigation link has never "
"synchronized.\n"
"[b]Note:[/b] The iteration ID will wrap around to [code]1[/code] after "
"reaching its range limit."
msgstr ""
"Renvoie l'identifiant d'itération actuelle du lien de navigation. Chaque fois "
"que le lien de navigation change et se synchronise, l'ID d'itération "
"augmente. Un identifiant d'itération de [code]0[/code] signifie que le lien "
"de navigation n'a jamais synchronisé.\n"
"[b]Note :[/b] L'ID d'itération bouclera à [code]1[/code] après avoir atteint "
"la limite de sa plage."

msgid "Returns the navigation layers for this [param link]."
msgstr "Renvoie les couches de navigation pour ce lien [param link]."

msgid "Returns the starting position of this [param link]."
msgstr "Renvoie la position de départ de ce lien [param link]."

msgid "Returns the travel cost of this [param link]."
msgstr "Renvoie le coût de voyage de ce lien [param link]."

msgid "Sets the exit position for the [param link]."
msgstr "Définit la position de sortie pour le lien [param link]."

msgid "Sets the [param enter_cost] for this [param link]."
msgstr "Définit le cout d'entrée [param enter_cost] pour ce lien [param link]."

msgid "Sets the entry position for this [param link]."
msgstr "Définit la position d'entrée pour ce lien [param link]."

msgid "Sets the [param travel_cost] for this [param link]."
msgstr ""
"Définit le coût de voyage [param travel_cost] pour ce lien [param link]."

msgid "Create a new map."
msgstr "Crée une nouvelle carte."

msgid ""
"Returns the edge connection margin of the map. The edge connection margin is "
"a distance used to connect two regions."
msgstr ""
"Renvoie la marge de raccordement du bord de la carte. La marge de "
"raccordement est une distance utilisée pour relier deux régions."

msgid "Returns [code]true[/code] if the map is active."
msgstr "Renvoie [code]true[/code] si la carte est active."

msgid "Sets the map active."
msgstr "Définit la carte comme active."

msgid ""
"Set the map edge connection margin used to weld the compatible region edges."
msgstr ""
"Définit la marge de connexion de bord de la carte utilisée pour fusionner les "
"bords compatibles de la région."

msgid "Creates a new navigation obstacle."
msgstr "Crée un nouvel obstacle de navigation."

msgid "Set the obstacles's [code]avoidance_layers[/code] bitmask."
msgstr ""
"Définit le masque de bits du [code]avoidance_layers[/code] de l'obstacle."

msgid "Creates a new region."
msgstr "Crée une nouvelle région."

msgid "Returns the enter cost of this [param region]."
msgstr "Renvoie le coût d'entrée de cette [param region]."

msgid "Returns the region's navigation layers."
msgstr "Renvoie les couches de navigation de la région."

msgid "Returns the travel cost of this [param region]."
msgstr "Renvoie le coût de voyage de cette [param region]."

msgid "Sets the [param enter_cost] for this [param region]."
msgstr "Définit le coût d'entrée [param enter_cost] pour cette [param region]."

msgid "Sets the map for the region."
msgstr "Définit la carte de la région."

msgid "Sets the [param navigation_polygon] for the region."
msgstr "Définit le [param navigation_polygon] pour la région."

msgid "Set the [code]ObjectID[/code] of the object which manages this region."
msgstr "Définit l'[code]ObjectID[/code] de l'objet qui gère cette région."

msgid "Sets the global transformation for the region."
msgstr "Définit la transformation globale de cette région."

msgid "Sets the [param travel_cost] for this [param region]."
msgstr ""
"Définit le coût de voyage [param travel_cost] pour cette [param region]."

msgid "Control activation of this server."
msgstr "Contrôle l'activation de ce serveur."

msgid ""
"Emitted when a navigation map is updated, when a region moves or is modified."
msgstr ""
"Émis quand une carte de navigation est mise à jour, ou quand une région se "
"déplace ou est modifiée."

msgid "Updates the provided [param agent] [param height]."
msgstr "Met à jour la hauteur [param height] de l'[param agent] fourni."

msgid ""
"Returns the edge connection margin of the map. This distance is the minimum "
"vertex distance needed to connect two edges from different regions."
msgstr ""
"Renvoie la marge de raccordement du bord de la carte. Cette distance est la "
"distance minimale nécessaire pour relier deux bords de différentes régions."

msgid "Returns the map's up direction."
msgstr "Renvoie la direction haut de la carte."

msgid "Sets the map up direction."
msgstr "Définit la direction haut de la carte."

msgid "Creates a new obstacle."
msgstr "Crée un nouvel obstacle."

msgid "Sets the navigation mesh for the region."
msgstr "Définit le polygone de navigation de la région."

msgid ""
"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
"borders."
msgstr ""
"Si [code]true[/code], dessine le centre du panneau. Sinon, ne dessine que les "
"bordures des 9 parties."

msgid ""
"The height of the 9-slice's bottom row. A margin of 16 means the 9-slice's "
"bottom corners and side will have a height of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders."
msgstr ""
"La hauteur de la ligne du bas des 9 parties. Une marge de 16 signifie que les "
"angles du bas des 9 parties et les côtés auront une hauteur de 16 pixels. "
"Vous pouvez définir les 4 valeurs de marge individuellement pour créer des "
"panneaux avec des bordures non uniformes."

msgid ""
"The width of the 9-slice's left column. A margin of 16 means the 9-slice's "
"left corners and side will have a width of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders."
msgstr ""
"La largeur de la colonne gauche des 9 parties. Une marge de 16 signifie que "
"les angles de gauche des 9 parties et les côtés auront une largeur de 16 "
"pixels. Vous pouvez définir les 4 valeurs de marge individuellement pour "
"créer des panneaux avec des bordures non uniformes."

msgid ""
"The width of the 9-slice's right column. A margin of 16 means the 9-slice's "
"right corners and side will have a width of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders."
msgstr ""
"La largeur de la colonne droite de 9 parties. Une marge de 16 signifie que "
"les angles de droite des 9 parties et le côté auront une largeur de 16 "
"pixels. Vous pouvez définir les 4 valeurs de marge individuellement pour "
"créer des panneaux avec des bordures non uniformes."

msgid ""
"The height of the 9-slice's top row. A margin of 16 means the 9-slice's top "
"corners and side will have a height of 16 pixels. You can set all 4 margin "
"values individually to create panels with non-uniform borders."
msgstr ""
"La hauteur de la ligne du haut de 9 parties. Une marge de 16 signifie que les "
"angles du haut des 9 parties et le côté auront une hauteur de 16 pixels. Vous "
"pouvez définir les 4 valeurs de marge individuellement pour créer des "
"panneaux avec des bordures non uniformes."

msgid ""
"Rectangular region of the texture to sample from. If you're working with an "
"atlas, use this property to define the area the 9-slice should use. All other "
"properties are relative to this one. If the rect is empty, NinePatchRect will "
"use the whole texture."
msgstr ""
"La région rectangulaire de la texture à utiliser. Si vous travaillez avec un "
"atlas, utilisez cette propriété pour définir la zone à utiliser. Toutes les "
"autres propriétés sont par rapport à celle-ci. Si le rectangle est vide, le "
"NinePatchRect utilisera la texture dans son entièreté."

msgid "The node's texture resource."
msgstr "La ressource de texture du nœud."

msgid "Emitted when the node's texture changes."
msgstr "Émis quand la texture d'un nœud change."

msgid ""
"Stretches the center texture across the NinePatchRect. This may cause the "
"texture to be distorted."
msgstr ""
"Étire la texture du centre sur tout le NinePatchRect. Cela peut entraîner une "
"distorsion de cette texture."

msgid "Base class for all scene objects."
msgstr "Classe de base pour les objets de scène."

msgid ""
"Nodes are Godot's building blocks. They can be assigned as the child of "
"another node, resulting in a tree arrangement. A given node can contain any "
"number of nodes as children with the requirement that all siblings (direct "
"children of a node) should have unique names.\n"
"A tree of nodes is called a [i]scene[/i]. Scenes can be saved to the disk and "
"then instantiated into other scenes. This allows for very high flexibility in "
"the architecture and data model of Godot projects.\n"
"[b]Scene tree:[/b] The [SceneTree] contains the active tree of nodes. When a "
"node is added to the scene tree, it receives the [constant "
"NOTIFICATION_ENTER_TREE] notification and its [method _enter_tree] callback "
"is triggered. Child nodes are always added [i]after[/i] their parent node, "
"i.e. the [method _enter_tree] callback of a parent node will be triggered "
"before its child's.\n"
"Once all nodes have been added in the scene tree, they receive the [constant "
"NOTIFICATION_READY] notification and their respective [method _ready] "
"callbacks are triggered. For groups of nodes, the [method _ready] callback is "
"called in reverse order, starting with the children and moving up to the "
"parent nodes.\n"
"This means that when adding a node to the scene tree, the following order "
"will be used for the callbacks: [method _enter_tree] of the parent, [method "
"_enter_tree] of the children, [method _ready] of the children and finally "
"[method _ready] of the parent (recursively for the entire scene tree).\n"
"[b]Processing:[/b] Nodes can override the \"process\" state, so that they "
"receive a callback on each frame requesting them to process (do something). "
"Normal processing (callback [method _process], toggled with [method "
"set_process]) happens as fast as possible and is dependent on the frame rate, "
"so the processing time [i]delta[/i] (in seconds) is passed as an argument. "
"Physics processing (callback [method _physics_process], toggled with [method "
"set_physics_process]) happens a fixed number of times per second (60 by "
"default) and is useful for code related to the physics engine.\n"
"Nodes can also process input events. When present, the [method _input] "
"function will be called for each input that the program receives. In many "
"cases, this can be overkill (unless used for simple projects), and the "
"[method _unhandled_input] function might be preferred; it is called when the "
"input event was not handled by anyone else (typically, GUI [Control] nodes), "
"ensuring that the node only receives the events that were meant for it.\n"
"To keep track of the scene hierarchy (especially when instantiating scenes "
"into other scenes), an \"owner\" can be set for the node with the [member "
"owner] property. This keeps track of who instantiated what. This is mostly "
"useful when writing editors and tools, though.\n"
"Finally, when a node is freed with [method Object.free] or [method "
"queue_free], it will also free all its children.\n"
"[b]Groups:[/b] Nodes can be added to as many groups as you want to be easy to "
"manage, you could create groups like \"enemies\" or \"collectables\" for "
"example, depending on your game. See [method add_to_group], [method "
"is_in_group] and [method remove_from_group]. You can then retrieve all nodes "
"in these groups, iterate them and even call methods on groups via the methods "
"on [SceneTree].\n"
"[b]Networking with nodes:[/b] After connecting to a server (or making one, "
"see [ENetMultiplayerPeer]), it is possible to use the built-in RPC (remote "
"procedure call) system to communicate over the network. By calling [method "
"rpc] with a method name, it will be called locally and in all connected peers "
"(peers = clients and the server that accepts connections). To identify which "
"node receives the RPC call, Godot will use its [NodePath] (make sure node "
"names are the same on all peers). Also, take a look at the high-level "
"networking tutorial and corresponding demos.\n"
"[b]Note:[/b] The [code]script[/code] property is part of the [Object] class, "
"not [Node]. It isn't exposed like most properties but does have a setter and "
"getter (see [method Object.set_script] and [method Object.get_script])."
msgstr ""
"Les nœuds sont les blocs de construction de Godot. Ils peuvent être assignés "
"comme enfant d'un autre nœud, ce qui résulte en un arrangement en arbre. Un "
"nœud donné peut contenir n'importe quel nombre de nœuds enfants mais tous ces "
"enfants doivent avoir des noms différents.\n"
"Une arborescence de nœuds est appelé une [i]scène[/i]. Les scènes peuvent "
"être sauvegardées sur le disque et ensuite instanciées dans d'autres scènes. "
"Cela permet une très grande flexibilité dans l'architecture et le modèle de "
"données des projets Godot.\n"
"[b]Arbre de scène :[/b] Le [SceneTree] contient l'arborescence des nœuds. "
"Lorsqu'un nœud est ajouté à l'arborescence de scène, il reçoit la "
"notification [constant NOTIFICATION_ENTER_TREE] et sa méthode [method "
"_enter_tree] est appelée. Les nœuds enfants sont toujours ajoutés [i]après[/"
"i] leur nœud parent, c'est-à-dire la méthode [method _enter_tree] d'un nœud "
"parent sera appelée avant celle de son enfant.\n"
"Une fois que tous les nœuds ont été ajoutés dans l'arborescence de la scène, "
"ils reçoivent la notification [constant NOTIFICATION_READY] et leurs méthodes "
"respectives [method _ready] sont appelées. Pour les groupes de nœuds, la "
"méthode [method _ready] est appelée en un ordre inversé, en commençant par "
"les enfants et en allant jusqu'aux nœuds parent.\n"
"Cela signifie qu'en ajoutant un nœud à l'arborescence de la scène, l'ordre "
"suivant sera utilisé pour les callbacks : [method _enter_tree] du parent, "
"[method _enter_tree] des enfants, [method _ready] des enfants et enfin "
"[method _ready] du parent (récursivement pour l'arborescence complète de la "
"scène).\n"
"[b]Traitement :[/b] Les nœuds peuvent redéfinir l'état \"traitement\", de "
"sorte qu'ils reçoivent un callback sur chaque trame leur demandant de traiter "
"(faire quelque chose). Le traitement normal (callback [method _process], "
"associé à [method set_process]) se produit le plus rapidement possible et "
"dépend du taux de rafraîchissement, de sorte que le temps de traitement "
"[i]delta[/i] (en secondes) est passé comme argument. Le traitement de la "
"physique (callback [method _physics_process], activé avec [method "
"set_physics_process]) se produit un nombre fixe de fois par seconde (60 par "
"défaut) et est utile pour du code lié au moteur physique.\n"
"Les nœuds peuvent également traiter les événements d'entrée. Lorsque "
"présente, la fonction [method _input] sera appelée pour chaque entrée que le "
"programme reçoit. Dans de nombreux cas, cela peut être overkill (sauf pour "
"des projets simples), et la fonction [method _unhandled_input] pourrait être "
"préférée. Elle est appelée lorsque l'événement d'entrée n'a pas été géré par "
"quelqu'un d'autre (généralement les nœuds GUI [Control]), en veillant à ce "
"que le nœud ne reçoive que les événements qui lui étaient destinés.\n"
"Pour suivre la hiérarchie de la scène (surtout lorsque des scènes "
"s'instancient dans d'autres scènes), un « propriétaire » peut être défini "
"pour le nœud avec la propriété [member owner]. Cela permet de savoir qui a "
"instancié quoi. Ceci est surtout utile lors de l'écriture des éditeurs et des "
"outils, cependant.\n"
"Enfin, lorsqu'un nœud est libéré avec [method Object.free] ou [method "
"queue_free], il libérera également tous ses enfants.\n"
"[b]Groupes :[/b] Les nœuds peuvent être ajoutés à autant de groupes que vous "
"voulez pour être faciles à gérer, vous pouvez créer des groupes comme "
"\"ennemis\" ou \"collectables\" par exemple, selon votre jeu. Voir [method "
"add_to_group], [method is_in_group] et [method remove_from_group]. Vous "
"pouvez alors récupérer tous les nœuds de ces groupes, itérer dessus et même "
"appeler les méthodes sur les groupes via les méthodes sur [SceneTree].\n"
"[b]Réseau avec des nœuds :[/b] Après la connexion à un serveur (ou la "
"création d'un serveur, voir [ENetMultiplayerPeer]), il est possible "
"d'utiliser le système RPC intégré (Remote Procedure Call, appel de procédure "
"à distance) pour communiquer sur le réseau. En appelant [method rpc] avec un "
"nom de méthode, elle sera appelée localement et dans tous les pairs connectés "
"(pairs = clients et le serveur qui accepte les connexions). Pour identifier "
"quel nœud reçoit l'appel RPC, Godot utilisera son [NodePath] (assurez vous "
"que les noms de nœud sont les mêmes pour tous les pairs). De plus, jetez un "
"coup d'œil au tutoriel de réseau de haut niveau et aux démos "
"correspondantes.\n"
"[b]Note :[/b] La propriété [code]script[/code] fait partie de la classe "
"[Object], et non [Node]. Elle n'est pas exposée comme la plupart des "
"propriétés mais a un setter et getter (voir [method Object.set_script] et "
"[method Object.get_script])."

msgid "Nodes and scenes"
msgstr "Nœuds et scènes"

msgid "All Demos"
msgstr "Toutes les démos"

msgid ""
"Called when the node enters the [SceneTree] (e.g. upon instantiating, scene "
"changing, or after calling [method add_child] in a script). If the node has "
"children, its [method _enter_tree] callback will be called first, and then "
"that of the children.\n"
"Corresponds to the [constant NOTIFICATION_ENTER_TREE] notification in [method "
"Object._notification]."
msgstr ""
"Appelé lorsque le nœud entre dans la [SceneTree] (par exemple en étant "
"instancié, au changement de scène, ou après avoir appelé [method add_child] "
"dans un script). Si le nœud a des enfants, sa méthode [method _enter_tree] "
"sera appelée d'abord, puis ensuite celle de ses enfants.\n"
"Correspond à la notification [constant NOTIFICATION_ENTER_TREE] dans [method "
"Object._notification]."

msgid ""
"Called when the node is about to leave the [SceneTree] (e.g. upon freeing, "
"scene changing, or after calling [method remove_child] in a script). If the "
"node has children, its [method _exit_tree] callback will be called last, "
"after all its children have left the tree.\n"
"Corresponds to the [constant NOTIFICATION_EXIT_TREE] notification in [method "
"Object._notification] and signal [signal tree_exiting]. To get notified when "
"the node has already left the active tree, connect to the [signal "
"tree_exited]."
msgstr ""
"Appelée lorsque le nœud va quitter la [SceneTree] (par exemple sur la "
"suppression, au changement de scène, ou après avoir appelé [method "
"remove_child] dans un script). Si le nœud a des enfants, sa méthode [method "
"_exit_tree] sera appelée en dernier, quand tous ses enfants auront quitté "
"l'arborescence.\n"
"Correspond à la notification [constant NOTIFICATION_EXIT_TREE] dans [method "
"Object._notification] et signal [signal tree_exiting]. Pour être notifié "
"lorsque le nœud a déjà quitté l'arborescence active, connectez-vous à [signal "
"tree_exited]."

msgid ""
"The elements in the array returned from this method are displayed as warnings "
"in the Scene dock if the script that overrides it is a [code]tool[/code] "
"script, and accessibility warnings are enabled in the editor settings.\n"
"Returning an empty array produces no warnings."
msgstr ""
"Les éléments du tableau renvoyé de cette méthode sont affichés comme "
"avertissements dans le dock Scène si le script qui la redéfinit est un script "
"[code]tool[/code], et les avertissements d'accessibilité sont activés dans "
"les paramètres de l'éditeur.\n"
"Renvoyer un tableau vide ne produit aucun avertissement."

msgid ""
"The elements in the array returned from this method are displayed as warnings "
"in the Scene dock if the script that overrides it is a [code]tool[/code] "
"script.\n"
"Returning an empty array produces no warnings.\n"
"Call [method update_configuration_warnings] when the warnings need to be "
"updated for this node.\n"
"[codeblock]\n"
"@export var energy = 0:\n"
"\tset(value):\n"
"\t\tenergy = value\n"
"\t\tupdate_configuration_warnings()\n"
"\n"
"func _get_configuration_warnings():\n"
"\tif energy < 0:\n"
"\t\treturn [\"Energy must be 0 or greater.\"]\n"
"\telse:\n"
"\t\treturn []\n"
"[/codeblock]"
msgstr ""
"Les éléments du tableau renvoyé par cette méthode sont affichés comme "
"avertissements dans le dock Scène si le script qui le redéfinit est un script "
"[code]tool[/code].\n"
"Le renvoi d'un tableau vide ne produit aucun avertissement.\n"
"Appelez [method update_configuration_warnings] lorsque les avertissements "
"doivent être mis à jour pour ce nœud.\n"
"[codeblock]\n"
"@export var energie = 0:\n"
"\tset(valeur):\n"
"\t\tenergie = valeur\n"
"\t\tupdate_configuration_warnings()\n"
"\n"
"func _get_configuration_warnings():\n"
"\tif energie < 0:\n"
"\t\treturn [\"L'énergie doit être supérieure ou égale à 0.\"]\n"
"\telse:\n"
"\t\treturn []\n"
"[/codeblock]"

msgid ""
"Called during accessibility information updates to determine the currently "
"focused sub-element, should return a sub-element RID or the value returned by "
"[method get_accessibility_element]."
msgstr ""
"Appelée lors des mises à jour d'information sur l'accessibilité pour "
"déterminer le sous-élément ayant actuellement le focus, devait renvoyer un "
"RID de sous-élément ou la valeur renvoyée par [method "
"get_accessibility_element]."

msgid ""
"Called when there is an input event. The input event propagates up through "
"the node tree until a node consumes it.\n"
"It is only called if input processing is enabled, which is done automatically "
"if this method is overridden, and can be toggled with [method "
"set_process_input].\n"
"To consume the input event and stop it propagating further to other nodes, "
"[method Viewport.set_input_as_handled] can be called.\n"
"For gameplay input, [method _unhandled_input] and [method "
"_unhandled_key_input] are usually a better fit as they allow the GUI to "
"intercept the events first.\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not an orphan)."
msgstr ""
"Appelée quand il y a un événement d'entrée. Cet événement se propage vers le "
"haut de l'arborescence jusqu'à ce qu'un nœud le consomme.\n"
"Elle n'est appelée que si le traitement des entrées est activé, ce qui est "
"fait automatiquement quand cette méthode est redéfinie, et peut être activé "
"avec [method set_process_input].\n"
"Pour consommer l'événement d'entrée et arrêter sa propagation vers les autres "
"nœuds, la méthode [method Viewport.set_input_as_handled] peut être appelée.\n"
"Pour les entrées de jeu, les méthodes [method _unhandled_input] et [method "
"_unhandled_key_input] sont généralement plus adaptées puisqu'elles permettent "
"aux éléments d'interface d'intercepter les événements en premier.\n"
"[b]Note :[/b] Cette méthode n'est seulement appelé que si le nœud est présent "
"dans l'arborescence (c-à-d n'est pas un orphelin)."

msgid ""
"Called when the node is \"ready\", i.e. when both the node and its children "
"have entered the scene tree. If the node has children, their [method _ready] "
"callbacks get triggered first, and the parent node will receive the ready "
"notification afterwards.\n"
"Corresponds to the [constant NOTIFICATION_READY] notification in [method "
"Object._notification]. See also the [code]@onready[/code] annotation for "
"variables.\n"
"Usually used for initialization. For even earlier initialization, [method "
"Object._init] may be used. See also [method _enter_tree].\n"
"[b]Note:[/b] This method may be called only once for each node. After "
"removing a node from the scene tree and adding it again, [method _ready] will "
"[b]not[/b] be called a second time. This can be bypassed by requesting "
"another call with [method request_ready], which may be called anywhere before "
"adding the node again."
msgstr ""
"Appelée lorsque le nœud est « prêt », c'est-à-dire lorsque le nœud et ses "
"enfants sont entrés dans l'arborescence de la scène. Si le nœud a des "
"enfants, leurs callbacks [method _ready] seront appelés en premier, et le "
"nœud parent recevra la notification « prêt » après cela.\n"
"Correspond à la notification [constant NOTIFICATION_READY] dans [method "
"Object._notification]. Voir aussi l'annotation [code]@onready[/code] pour les "
"variables.\n"
"Habituellement utilisé pour l'initialisation. Pour une initialisation encore "
"plus précoce, [method Object._init] peut être utilisé. Voir aussi [method "
"_enter_tree].\n"
"[b]Note :[/b] Cette méthode ne peut être appelée qu'une seule fois pour "
"chaque nœud. Après avoir retiré un nœud de l'arborescence de scène et "
"l'ajouté à nouveau, [method _ready] ne sera [b]pas[/b] appelé une deuxième "
"fois. Cela peut être changé en demandant un autre appel avec [method "
"request_ready], qui peut être appelé n'importe où avant d'ajouter le nœud à "
"nouveau."

msgid ""
"Called when an [InputEventKey], [InputEventShortcut], or "
"[InputEventJoypadButton] hasn't been consumed by [method _input] or any GUI "
"[Control] item. It is called before [method _unhandled_key_input] and [method "
"_unhandled_input]. The input event propagates up through the node tree until "
"a node consumes it.\n"
"It is only called if shortcut processing is enabled, which is done "
"automatically if this method is overridden, and can be toggled with [method "
"set_process_shortcut_input].\n"
"To consume the input event and stop it propagating further to other nodes, "
"[method Viewport.set_input_as_handled] can be called.\n"
"This method can be used to handle shortcuts. For generic GUI events, use "
"[method _input] instead. Gameplay events should usually be handled with "
"either [method _unhandled_input] or [method _unhandled_key_input].\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not orphan)."
msgstr ""
"Appelée quand un [InputEventKey], [InputEventShortcut] ou "
"[InputEventJoypadButton] n'a pas été traité par [method _input] ou n'importe "
"quel élément [Control] du GUI. Elle est appelée avant [method "
"_unhandled_key_input] et [method _unhandled_input]. L'événement d'entrée se "
"propage vers le haut de l'arborescence jusqu'à ce qu'un nœud le consomme.\n"
"Elle n'est appelée que si le processus de traitement des entrées est activé, "
"ce qui est fait automatiquement si cette méthode est redéfinie, et peut être "
"activé par [method set_process_shortcut_input].\n"
"Pour consommer l'événement d'entrée et arrêter sa propagation vers les autres "
"nœuds, la méthode [method Viewport.set_input_as_handled] peut être appelée.\n"
"Cette méthode peut-être utilisée pour gérer les raccourcis. Pour les "
"envenimements GUI génériques, utilisez plutôt [method _input]. Les évènement "
"de gameplay devraient plutôt être gérés avec [method _unhandled_input] ou "
"[method _unhandled_key_input].\n"
"[b]Note :[/b] Cette méthode n'est seulement appelé que si le nœud est présent "
"dans l'arborescence (c-à-d n'est pas un orphelin)."

msgid ""
"This function ensures that the calling of this function will succeed, no "
"matter whether it's being done from a thread or not. If called from a thread "
"that is not allowed to call the function, the call will become deferred. "
"Otherwise, the call will go through directly."
msgstr ""
"Cette fonction assure que l'appel de cette fonction réussira, peu importe si "
"elle est faite à partir d'un thread ou non. Si appelée d'un thread qui n'est "
"pas autorisé à appeler la fonction, l'appel sera reporté. Sinon, l'appel "
"passera directement."

msgid ""
"Creates a new [Tween] and binds it to this node.\n"
"This is the equivalent of doing:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_tree().create_tween().bind_node(self)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetTree().CreateTween().BindNode(this);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The Tween will start automatically on the next process frame or physics frame "
"(depending on [enum Tween.TweenProcessMode]). See [method Tween.bind_node] "
"for more info on Tweens bound to nodes.\n"
"[b]Note:[/b] The method can still be used when the node is not inside "
"[SceneTree]. It can fail in an unlikely case of using a custom [MainLoop]."
msgstr ""
"Crée un nouveau [Tween] et le lie à ce nœud.\n"
"C'est l'équivalent de faire :\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_tree().create_tween().bind_node(self)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetTree().CreateTween().BindNode(this);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Le Tween commencera automatiquement sur le prochain trame de traitement ou de "
"physique (selon [enum Tween.TweenProcessMode]). Voir [method Tween.bind_node] "
"pour plus d'informations sur les Tweens lié à des nœuds.\n"
"[b]Note :[/b] La méthode peut encore être utilisée lorsque le nœud n'est pas "
"à l'intérieur de [SceneTree]. Elle peut échouer dans un cas improbable "
"d'utilisation d'une boucle de traitement [MainLoop] personnalisée."

msgid ""
"Returns the number of children of this node.\n"
"If [param include_internal] is [code]false[/code], internal children are not "
"counted (see [method add_child]'s [code]internal[/code] parameter)."
msgstr ""
"Renvoie le nombre d'enfants de ce nœud.\n"
"Si [param include_internal] vaut [code]false[/code], les enfants internes ne "
"sont pas comptés (voir le paramètre [code]internal[/code] de [method "
"add_child])."

msgid ""
"Returns this node's order among its siblings. The first node's index is "
"[code]0[/code]. See also [method get_child].\n"
"If [param include_internal] is [code]false[/code], returns the index ignoring "
"internal children. The first, non-internal child will have an index of "
"[code]0[/code] (see [method add_child]'s [code]internal[/code] parameter)."
msgstr ""
"Renvoie l'ordre de ce nœud parmi ses frères. L'index du premier nœud est "
"[code]0[/code]. Voir aussi [method get_child].\n"
"Si [param include_internal] vaut [code]false[/code], renvoie l'index en "
"ignorant les enfants internes. Le premier enfant non interne aura un indice "
"de [code]0[/code] (voir le paramètre [code]internal[/code] de [method "
"add_child])."

msgid ""
"Returns the [Window] that contains this node, or the last exclusive child in "
"a chain of windows starting with the one that contains this node."
msgstr ""
"Renvoie la [Window] qui contient ce nœud, ou le dernier enfant exclusif dans "
"une chaîne de fenêtres commençant par celle qui contient ce nœud."

msgid ""
"Returns the peer ID of the multiplayer authority for this node. See [method "
"set_multiplayer_authority]."
msgstr ""
"Renvoie l'identifiant du pair de l'autorité multijoueur pour ce nœud. Voir "
"[method set_multiplayer_authority]."

msgid ""
"Fetches a node. The [NodePath] can either be a relative path (from this "
"node), or an absolute path (from the [member SceneTree.root]) to a node. If "
"[param path] does not point to a valid node, generates an error and returns "
"[code]null[/code]. Attempts to access methods on the return value will result "
"in an [i]\"Attempt to call <method> on a null instance.\"[/i] error.\n"
"[b]Note:[/b] Fetching by absolute path only works when the node is inside the "
"scene tree (see [method is_inside_tree]).\n"
"[b]Example:[/b] Assume this method is called from the Character node, inside "
"the following tree:\n"
"[codeblock lang=text]\n"
" ┖╴root\n"
"    ┠╴Character (you are here!)\n"
"    ┃  ┠╴Sword\n"
"    ┃  ┖╴Backpack\n"
"    ┃     ┖╴Dagger\n"
"    ┠╴MyGame\n"
"    ┖╴Swamp\n"
"       ┠╴Alligator\n"
"       ┠╴Mosquito\n"
"       ┖╴Goblin\n"
"[/codeblock]\n"
"The following calls will return a valid node:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_node(\"Sword\")\n"
"get_node(\"Backpack/Dagger\")\n"
"get_node(\"../Swamp/Alligator\")\n"
"get_node(\"/root/MyGame\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode(\"Sword\");\n"
"GetNode(\"Backpack/Dagger\");\n"
"GetNode(\"../Swamp/Alligator\");\n"
"GetNode(\"/root/MyGame\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Récupère un nœud. Le [NodePath] peut être un chemin relatif (depuis le nœud "
"actuel) ou absolu (depuis le [member SceneTree.root]) vers un nœud. Si le "
"[param path] ne pointe pas vers un nœud valide, [code]null[/code] est renvoyé "
"et une erreur est générée. Appeler une méthode sur la valeur retournée si le "
"nœud n'existe pas lancera une erreur comme [i]\"Attempt to call <method> on a "
"null instance.\"[/i].\n"
"[b]Note :[/b] Récupérer un nœud avec un chemin absolu ne fonctionne que si ce "
"nœud est dans l'arborescence (voir [method is_inside_tree]).\n"
"[b]Exemple :[/b] En assumant que le nœud actuel soit \"Personnage\" et que "
"l'arborescence soit la suivante :\n"
"[codeblock lang=text]\n"
" ┖╴root\n"
"    ┠╴Personnage (vous êtes ici !)\n"
"    ┃  ┠╴Épée\n"
"    ┃  ┖╴Sac-à-dos\n"
"    ┃     ┖╴Dague\n"
"    ┠╴MonJeu\n"
"    ┖╴Bassin\n"
"       ┠╴Alligator\n"
"       ┠╴Moustique\n"
"       ┖╴Goblin\n"
"[/codeblock]\n"
"Les chemins possibles sont :\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_node(\"Épée\")\n"
"get_node(\"Sac-à-dos/Dague\")\n"
"get_node(\"../Bassin/Alligator\")\n"
"get_node(\"/root/MonJeu\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode(\"Épée\");\n"
"GetNode(\"Sac-à-dos/Dague\");\n"
"GetNode(\"../Bassin/Alligator\");\n"
"GetNode(\"/root/MonJeu\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the node's absolute path, relative to the [member SceneTree.root]. If "
"the node is not inside the scene tree, this method fails and returns an empty "
"[NodePath]."
msgstr ""
"Renvoie le chemin absolu du nœud actuel, relatif à [member SceneTree.root]. "
"Si le nœud actuel n'est pas à l'intérieur de l'arborescence de la scène, "
"cette méthode échoue et renvoie un [NodePath] vide."

msgid ""
"Returns the tree as a [String]. Used mainly for debugging purposes. This "
"version displays the path relative to the current node, and is good for copy/"
"pasting into the [method get_node] function. It also can be used in game UI/"
"UX.\n"
"May print, for example:\n"
"[codeblock lang=text]\n"
"TheGame\n"
"TheGame/Menu\n"
"TheGame/Menu/Label\n"
"TheGame/Menu/Camera2D\n"
"TheGame/SplashScreen\n"
"TheGame/SplashScreen/Camera2D\n"
"[/codeblock]"
msgstr ""
"Renvoie l’arborescence en tant que [String]. Utilisée principalement à des "
"fins de débogage. Cette version affiche le chemin par rapport au nœud actuel, "
"et est pratique pour copier/coller dans la fonction [method get_node]. Elle "
"peut également être utilisé dans l'UI/UX du jeu.\n"
"Peut afficher, par exemple :\n"
"[codeblock lang=text]\n"
"LeJeu\n"
"LeJeu/Menu\n"
"LeJeu/Menu/Label\n"
"LeJeu/Menu/Camera2D\n"
"LeJeu/EcranDemarrage\n"
"LeJeu/EcranDemarrage/Camera2D\n"
"[/codeblock]"

msgid ""
"Similar to [method get_tree_string], this returns the tree as a [String]. "
"This version displays a more graphical representation similar to what is "
"displayed in the Scene Dock. It is useful for inspecting larger trees.\n"
"May print, for example:\n"
"[codeblock lang=text]\n"
" ┖╴TheGame\n"
"    ┠╴Menu\n"
"    ┃  ┠╴Label\n"
"    ┃  ┖╴Camera2D\n"
"    ┖╴SplashScreen\n"
"       ┖╴Camera2D\n"
"[/codeblock]"
msgstr ""
"Comme [method get_tree_string], cela renvoie l’arborescence en tant que "
"[String]. Cette version affiche une représentation plus graphique semblable à "
"ce qui est affiché dans le Dock Scène. Elle est utile pour inspecter de "
"grandes arborescences.\n"
"Peut afficher, par exemple:\n"
"[codeblock lang=text]\n"
" ┖╴LeJeu\n"
"    ┠╴Menu\n"
"    ┃  ┠╴Label\n"
"    ┃  ┖╴Camera2D\n"
"    ┖╴EcranDemarrage\n"
"       ┖╴Camera2D\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
"dock. This method is intended to be used in editor plugins and tools. See "
"also [method set_display_folded]."
msgstr ""
"Renvoie [code]true[/code] si le noeud est replié (réduit) dans le dock Scène. "
"Cette méthode est destinée à être utilisée dans les plugins et outils de "
"l'éditeur. Voir aussi [method set_display_folded]."

msgid ""
"Returns [code]true[/code] if the node is ready, i.e. it's inside scene tree "
"and all its children are initialized.\n"
"[method request_ready] resets it back to [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si le nœud est prêt, c'est-à-dire qu'il est dans "
"l'arborescence de la scène et que tous ses enfants sont initialisés.\n"
"[method request_ready] le réinitialise à [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the node is part of the scene currently opened "
"in the editor."
msgstr ""
"Renvoie [code]true[/code] si le nœud fait partie de la scène actuellement "
"ouverte dans l'éditeur."

msgid ""
"Returns [code]true[/code] if physics processing is enabled (see [method "
"set_physics_process])."
msgstr ""
"Renvoie [code]true[/code] si le traitement physique est activé (voir [method "
"set_physics_process])."

msgid ""
"Returns [code]true[/code] if internal physics processing is enabled (see "
"[method set_physics_process_internal])."
msgstr ""
"Renvoie [code]true[/code] si le traitement physique interne est activé (voir "
"[method set_physics_process_internal])."

msgid ""
"Returns [code]true[/code] if processing is enabled (see [method set_process])."
msgstr ""
"Renvoie [code]true[/code] si le traitement est activé (voir [method "
"set_process])."

msgid ""
"Returns [code]true[/code] if the node is processing input (see [method "
"set_process_input])."
msgstr ""
"Renvoie [code]true[/code] si le nœud gère les entrées (voir [method "
"set_process_input])."

msgid ""
"Returns [code]true[/code] if internal processing is enabled (see [method "
"set_process_internal])."
msgstr ""
"Renvoie [code]true[/code] si le traitement interne est activé (voir [method "
"set_process_internal])."

msgid ""
"Returns [code]true[/code] if the node is processing unhandled input (see "
"[method set_process_unhandled_input])."
msgstr ""
"Renvoie [code]true[/code] si le nœud gère les entrées non traitées (voir "
"[method set_process_unhandled_input])."

msgid ""
"Returns [code]true[/code] if the node is processing unhandled key input (see "
"[method set_process_unhandled_key_input])."
msgstr ""
"Renvoie [code]true[/code] si le nœud gère les entrées de touche non traitée "
"(voir [method set_process_unhandled_key_input])."

msgid "Similar to [method call_deferred_thread_group], but for notifications."
msgstr ""
"Similaire à [method call_deferred_thread_group], mais pour les notifications."

msgid "Similar to [method call_thread_safe], but for notifications."
msgstr "Similaire à [method call_thread_safe], mais pour les notifications."

msgid ""
"Prints all orphan nodes (nodes outside the [SceneTree]). Useful for "
"debugging.\n"
"[b]Note:[/b] This method only works in debug builds. Does nothing in a "
"project exported in release mode."
msgstr ""
"Affiche tous les nœuds orphelins (nœuds en dehors du [SceneTree]). Utile pour "
"le débogage.\n"
"[b]Note :[/b] Cette méthode ne fonctionne que dans les compilations de "
"débogage. Ne fait rien dans un projet exporté en mode release."

msgid ""
"Prints the node and its children to the console, recursively. The node does "
"not have to be inside the tree. This method outputs [NodePath]s relative to "
"this node, and is good for copy/pasting into [method get_node]. See also "
"[method print_tree_pretty].\n"
"May print, for example:\n"
"[codeblock lang=text]\n"
".\n"
"Menu\n"
"Menu/Label\n"
"Menu/Camera2D\n"
"SplashScreen\n"
"SplashScreen/Camera2D\n"
"[/codeblock]"
msgstr ""
"Affiche le nœud et ses enfants dans la console, récursivement. Le nœud ne "
"doit pas forcément être à l'intérieur de l'arbre. Cette méthode produit des "
"[NodePath] relatifs à ce nœud, et est bon pour copier/coller dans [method "
"get_node]. Voir aussi [method print_tree_pretty].\n"
"Peut afficher, par exemple :\n"
"[codeblock lang=text]\n"
".\n"
"Menu\n"
"Menu/Label\n"
"Menu/Camera2D\n"
"SplashScreen\n"
"SplashScreen/Camera2D\n"
"[/codeblock]"

msgid ""
"Calls the given [param method] name, passing [param args] as arguments, on "
"this node and all of its children, recursively.\n"
"If [param parent_first] is [code]true[/code], the method is called on this "
"node first, then on all of its children. If [code]false[/code], the "
"children's methods are called first."
msgstr ""
"Appelle le nom de méthode [param method] donné, en passant [param args] comme "
"arguments, sur ce nœud et tous ses enfants, de façon récursive.\n"
"Si [param parent_first] vaut [code]true[/code], la méthode est appelée "
"d'abord sur ce nœud, puis sur tous ses enfants. Si [code]false[/code], les "
"méthodes des enfants sont appelées en premier."

msgid ""
"Removes the node from the given [param group]. Does nothing if the node is "
"not in the [param group]. See also notes in the description, and the "
"[SceneTree]'s group methods."
msgstr ""
"Retire le nœud du groupe [param group] donné. Ne fait rien si le nœud n'est "
"pas dans le [param group]e. Voir aussi les notes dans la description, et les "
"méthodes de groupe de [SceneTree]."

msgid ""
"Similar to [method call_deferred_thread_group], but for setting properties."
msgstr ""
"Similaire à [method call_deferred_thread_group], mais pour définir des "
"propriétés."

msgid ""
"If set to [code]true[/code], the node appears folded in the Scene dock. As a "
"result, all of its children are hidden. This method is intended to be used in "
"editor plugins and tools, but it also works in release builds. See also "
"[method is_displayed_folded]."
msgstr ""
"Si défini à [code]true[/code], le nœud apparaît replié dans le dock Scène. En "
"conséquence, tous ses enfants sont cachés. Cette méthode est destinée à être "
"utilisée dans les plugins et les outils d'éditeur, mais elle fonctionne "
"également dans les compilations de release. Voir aussi [method "
"is_displayed_folded]."

msgid ""
"Set to [code]true[/code] to allow all nodes owned by [param node] to be "
"available, and editable, in the Scene dock, even if their [member owner] is "
"not the scene root. This method is intended to be used in editor plugins and "
"tools, but it also works in release builds. See also [method "
"is_editable_instance]."
msgstr ""
"Défini à [code]true[/code] pour permettre à tous les nœuds appartenant à "
"[param node] d'être disponibles, et modifiables, dans le dock Scène, même si "
"leur propriétaire [member owner] n'est pas la racine de scène. Cette méthode "
"est destinée à être utilisée dans les plugins et les outils d'éditeur, mais "
"elle fonctionne également dans les compilations de release. Voir aussi "
"[method is_editable_instance]."

msgid "Similar to [method call_thread_safe], but for setting properties."
msgstr ""
"Similaire à [method call_thread_safe], mais pour définir des propriétés."

msgid ""
"Defines if any text should automatically change to its translated version "
"depending on the current locale (for nodes such as [Label], [RichTextLabel], "
"[Window], etc.). Also decides if the node's strings should be parsed for POT "
"generation.\n"
"[b]Note:[/b] For the root node, auto translate mode can also be set via "
"[member ProjectSettings.internationalization/rendering/"
"root_node_auto_translate]."
msgstr ""
"Définir si un texte doit automatiquement changer à sa version traduite en "
"fonction de la langue actuelle (pour les nœuds tels que [Label], "
"[RichTextLabel], [Window], etc.). Décide également si les chaînes du noeud "
"doivent être parsées pour la génération POT.\n"
"[b]Note :[/b] Pour le noeud racine, le mode de traduction automatique peut "
"également être défini via [member ProjectSettings.internationalization/"
"rendering/root_node_auto_translate]."

msgid ""
"An optional description to the node. It will be displayed as a tooltip when "
"hovering over the node in the editor's Scene dock."
msgstr ""
"Une description facultative du nœud. Elle s'affichera sous forme d'info-bulle "
"lors du survol du noeud dans le dock Scene de l'éditeur."

msgid ""
"Emitted when this node is being replaced by the [param node], see [method "
"replace_by].\n"
"This signal is emitted [i]after[/i] [param node] has been added as a child of "
"the original parent node, but [i]before[/i] all original child nodes have "
"been reparented to [param node]."
msgstr ""
"Émis lorsque ce nœud est remplacé par le nœud [param node], voir [method "
"replace_by].\n"
"Ce signal est émis [i]après[/i] que [param node] a été ajouté en tant "
"qu'enfant du nœud parent d'origine, mais [i]avant[/i] tous les nœuds enfants "
"originaux ont été re-parentés avec [param node]."

msgid ""
"Emitted when the node enters the tree.\n"
"This signal is emitted [i]after[/i] the related [constant "
"NOTIFICATION_ENTER_TREE] notification."
msgstr ""
"Émis quand le nœud entre dans l'arborescence.\n"
"Ce signal est émis [i]après[/i] la notification correspondante [constant "
"NOTIFICATION_ENTER_TREE]."

msgid ""
"Emitted when the node is just about to exit the tree. The node is still "
"valid. As such, this is the right place for de-initialization (or a "
"\"destructor\", if you will).\n"
"This signal is emitted [i]after[/i] the node's [method _exit_tree], and "
"[i]before[/i] the related [constant NOTIFICATION_EXIT_TREE]."
msgstr ""
"Émis quand le nœud est sur le point de sortir de l’arborescence. Le noeud est "
"toujours valide. Ainsi, c'est le bon endroit pour la de-initialisation (ou un "
"\"destructeur\", si vous préférez).\n"
"Ce signal est émis [i]après[/i] la méthode [method _exit_tree] du nœud, et "
"[i]avant[/i] la notification liée [constant NOTIFICATION_EXIT_TREE]."

msgid ""
"Notification received when the node is about to exit a [SceneTree]. See "
"[method _exit_tree].\n"
"This notification is received [i]after[/i] the related [signal tree_exiting] "
"signal."
msgstr ""
"La notification reçue quand le nœud va quitter le [SceneTree]. Voir [method "
"_exit_tree].\n"
"Cette notification est émise [i]après[/i] le signal [signal tree_exiting] "
"correspondant."

msgid "Notification received when the node is ready. See [method _ready]."
msgstr "La notification reçue quand le nœud est prêt. Voir [method _ready]."

msgid ""
"Notification received when the parent node calls [method remove_child] on "
"this node.\n"
"[b]Note:[/b] This does [i]not[/i] mean that the node exited the [SceneTree]."
msgstr ""
"Notification reçue lorsque le nœud parent appelle [method remove_child] sur "
"ce nœud.\n"
"[b]Note :[/b] Cela ne signifie [i]pas[/i] que le nœud est sorti du "
"[SceneTree]."

msgid ""
"Notification received when a drag operation ends.\n"
"Use [method Viewport.gui_is_drag_successful] to check if the drag succeeded."
msgstr ""
"La notification reçue à la fin d'une opération de déposé-glissé.\n"
"Utilisez [method Viewport.gui_is_drag_successful] pour vérifier si "
"l'opération a réussi."

msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Implemented only on Android."
msgstr ""
"Notification reçue de l'OS lorsqu'une demande de retour est envoyée (p. ex. "
"appuyant sur le bouton « Retour » sur Android).\n"
"Implémentée uniquement sur Android."

msgid "Notification received when the window is moved."
msgstr "Notification reçue lorsque la fenêtre est déplacée."

msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms, if the crash handler is enabled."
msgstr ""
"Notification reçue du gestionnaire de plantage de Godot lorsque le moteur est "
"sur le point de planter.\n"
"Implémenté sur les plateformes de bureau, si le gestionnaire de plantage est "
"activé."

msgid "Notification received when the [TextServer] is changed."
msgstr "Notification reçue lorsque le [TextServer] est changé."

msgid "Duplicate the node's groups."
msgstr "Dupliquer les groupes du nœud."

msgid "The node will not be internal."
msgstr "Ce nœud ne sera pas interne."

msgid ""
"The node will be placed at the beginning of the parent's children, before any "
"non-internal sibling."
msgstr ""
"Le nœud sera placé au début des enfants du parent, avant tout frère non "
"interne."

msgid ""
"The node will be placed at the end of the parent's children, after any non-"
"internal sibling."
msgstr ""
"Le nœud sera placé à la fin des enfants du parent, après tout frère non "
"interne."

msgid ""
"Always automatically translate. This is the inverse of [constant "
"AUTO_TRANSLATE_MODE_DISABLED], and the default for the root node."
msgstr ""
"Toujours traduire automatiquement. Il s'agit de l'inverse de [constant "
"AUTO_TRANSLATE_MODE_DISABLED], et la valeur par défaut pour le nœud racine."

msgid ""
"A 2D game object, inherited by all 2D-related nodes. Has a position, "
"rotation, scale, and skew."
msgstr ""
"Un objet de jeu 2D, hérité par tous les nœuds relatifs à la 2D. A une "
"position, une rotation, une échelle et un cisaillement."

msgid ""
"A 2D game object, with a transform (position, rotation, and scale). All 2D "
"nodes, including physics objects and sprites, inherit from Node2D. Use Node2D "
"as a parent node to move, scale and rotate children in a 2D project. Also "
"gives control of the node's render order.\n"
"[b]Note:[/b] Since both [Node2D] and [Control] inherit from [CanvasItem], "
"they share several concepts from the class such as the [member "
"CanvasItem.z_index] and [member CanvasItem.visible] properties."
msgstr ""
"Un objet de jeu 2D, avec une transformation (position, rotation et échelle). "
"Tous les nœuds 2D, y compris les objets physiques et les sprites, héritent de "
"Node2D. Utilisez Node2D comme nœud parent pour déplacer, mettre à l'échelle "
"et pivoter des enfants dans un projet 2D. Donne également le contrôle sur "
"l'ordre de rendu des nœuds.\n"
"[b]Note :[/b] Comme [Node2D] et [Control] héritent de [CanvasItem], ils "
"partagent plusieurs concepts de la classe tels que les propriétés [member "
"CanvasItem.z_index] et [member CanvasItem.visible]."

msgid "All 2D Demos"
msgstr "Toutes les démos 2D"

msgid "Multiplies the current scale by the [param ratio] vector."
msgstr "Multiplie l'échelle actuelle par le vecteur [param ratio]."

msgid ""
"Returns the angle between the node and the [param point] in radians.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"node2d_get_angle_to.png]Illustration of the returned angle.[/url]"
msgstr ""
"Renvoie l'angle entre le nœud et le [param point] en radians.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"node2d_get_angle_to.png]Illustration de l'angle renvoyé.[/url]"

msgid "Returns the [Transform2D] relative to this node's parent."
msgstr "Renvoie la [Transform2D] relative au parent de ce nœud."

msgid "Adds the [param offset] vector to the node's global position."
msgstr ""
"Ajoute le vecteur de décalage [param offset] à la position globale du nœud."

msgid ""
"Rotates the node so that its local +X axis points towards the [param point], "
"which is expected to use global coordinates.\n"
"[param point] should not be the same as the node's position, otherwise the "
"node always looks to the right."
msgstr ""
"Tourne le nœud de sorte que son axe local +X pointe vers le [param point], "
"qui devrait utiliser les coordonnées globales.\n"
"[param point] ne devrait pas être identique à la position du nœud , sinon le "
"nœud regarderait toujours vers la droite."

msgid ""
"Applies a local translation on the node's X axis based on the [method "
"Node._process]'s [param delta]. If [param scaled] is [code]false[/code], "
"normalizes the movement."
msgstr ""
"Applique une translation locale selon l'axe X du nœud suivant le [param "
"delta] de [method Node._process]. Si [param scaled] vaut [code]false[/code], "
"le déplacement sera normalisé."

msgid ""
"Applies a local translation on the node's Y axis based on the [method "
"Node._process]'s [param delta]. If [param scaled] is [code]false[/code], "
"normalizes the movement."
msgstr ""
"Applique une translation locale selon l'axe Y du nœud suivant le [param "
"delta] de [method Node._process]. Si [param scaled] vaut [code]false[/code], "
"le déplacement sera normalisé."

msgid ""
"Applies a rotation to the node, in radians, starting from its current "
"rotation."
msgstr ""
"Applique une rotation au nœud, en radians, à partir de son actuelle rotation."

msgid ""
"Transforms the provided local position into a position in global coordinate "
"space. The input is expected to be local relative to the [Node2D] it is "
"called on. e.g. Applying this method to the positions of child nodes will "
"correctly transform their positions into the global coordinate space, but "
"applying it to a node's own position will give an incorrect result, as it "
"will incorporate the node's own transformation into its global position."
msgstr ""
"Transforme la position locale fournie en position dans l'espace de "
"coordonnées global. L'entrée devrait être locale par rapport au [Node2D] sur "
"lequel elle est appelée. Par ex., l'application de cette méthode aux "
"positions des nœuds enfants transformera correctement leurs positions dans "
"l'espace de coordonnées global, mais l'appliquer sur la propre position du "
"nœud donnera un résultat incorrect, car elle intégrera la propre "
"transformation du nœud dans sa position globale."

msgid ""
"Transforms the provided global position into a position in local coordinate "
"space. The output will be local relative to the [Node2D] it is called on. "
"e.g. It is appropriate for determining the positions of child nodes, but it "
"is not appropriate for determining its own position relative to its parent."
msgstr ""
"Transforme la position globale fournie en position dans l'espace de "
"coordonnées local. La sortie sera locale par rapport au [Node2D] sur lequel "
"elle est appelée. Cela signifie qu'elle est appropriée pour déterminer la "
"position des nœuds enfants, mais non appropriée pour déterminer la propre "
"position du nœud par rapport à son parent."

msgid "Translates the node by the given [param offset] in local coordinates."
msgstr ""
"Translate le nœud par le décalage [param offset] dans les coordonnées locales."

msgid "Global position. See also [member position]."
msgstr "Position globale. Voir aussi [member position]."

msgid "Global rotation in radians. See also [member rotation]."
msgstr "Rotation globale en radians. Voir aussi [member rotation]."

msgid ""
"Helper property to access [member global_rotation] in degrees instead of "
"radians. See also [member rotation_degrees]."
msgstr ""
"Propriété d'aide pour accéder à [member global_rotation] en degrés au lieu de "
"radians. Voir aussi [member rotation_degrees]."

msgid "Global scale. See also [member scale]."
msgstr "Échelle globale. Voir aussi [member scale]."

msgid "Global skew in radians. See also [member skew]."
msgstr "Cisaillement global en radians. Voir aussi [member skew]."

msgid "Global [Transform2D]. See also [member transform]."
msgstr "[Transform2D] globale. Voir aussi [member transform]."

msgid ""
"Position, relative to the node's parent. See also [member global_position]."
msgstr ""
"La position, relative au parent du nœud. Voir aussi [member global_position]."

msgid ""
"Rotation in radians, relative to the node's parent. See also [member "
"global_rotation].\n"
"[b]Note:[/b] This property is edited in the inspector in degrees. If you want "
"to use degrees in a script, use [member rotation_degrees]."
msgstr ""
"Rotation en radians, par rapport au parent du noeud. Voir aussi [member "
"global_rotation].\n"
"[b]Note :[/b] Cette propriété est modifiée en degrés dans l'inspecteur. Si "
"vous voulez utiliser des degrés dans un script, utilisez [member "
"rotation_degrees]."

msgid ""
"Helper property to access [member rotation] in degrees instead of radians. "
"See also [member global_rotation_degrees]."
msgstr ""
"Propriété d'aide pour accéder à [member rotation] en degrés au lieu de "
"radians. Voir aussi [member global_rotation_degrees]."

msgid ""
"The node's scale, relative to the node's parent. Unscaled value: [code](1, 1)"
"[/code]. See also [member global_scale].\n"
"[b]Note:[/b] Negative X scales in 2D are not decomposable from the "
"transformation matrix. Due to the way scale is represented with "
"transformation matrices in Godot, negative scales on the X axis will be "
"changed to negative scales on the Y axis and a rotation of 180 degrees when "
"decomposed."
msgstr ""
"L'échelle du noeud, relative au parent du noeud. Valeur sans échelle : [code]"
"(1, 1)[/code]. Voir aussi [member global_scale].\n"
"[b]Note :[/b] Les échelles X négatives en 2D ne sont pas décomposables de la "
"matrice de transformation. En raison de la façon dont l'échelle est "
"représentée avec des matrices de transformation dans Godot, les échelles "
"négatives sur l'axe X seront changées en échelles négatives sur l'axe Y et "
"une rotation de 180 degrés lors de la décomposition."

msgid ""
"If set to a non-zero value, slants the node in one direction or another. This "
"can be used for pseudo-3D effects. See also [member global_skew].\n"
"[b]Note:[/b] Skew is performed on the X axis only, and [i]between[/i] "
"rotation and scaling.\n"
"[b]Note:[/b] This property is edited in the inspector in degrees. If you want "
"to use degrees in a script, use [code]skew = deg_to_rad(value_in_degrees)[/"
"code]."
msgstr ""
"S'il s'agit d'une valeur non nulle, incline le nœud dans une direction ou une "
"autre. Cela peut être utilisé pour des effets de pseudo-3D. Voir aussi "
"[member global_skew].\n"
"[b]Note :[/b] Le cisaillement est effectué sur l'axe X seulement, et "
"[i]entre[/i] la rotation et la mise à l'échelle.\n"
"[b]Note :[/b] Cette propriété est modifiée en degrés par l'inspecteur. Si "
"vous voulez utiliser des degrés dans un script, utilisez [code]skew = "
"deg_to_rad(value_in_degrees)[/code]."

msgid ""
"The node's [Transform2D], relative to the node's parent. See also [member "
"global_transform]."
msgstr ""
"La [Transform2D] du nœud, par rapport au parent du nœud. Voir aussi [member "
"global_transform]."

msgid "Base object in 3D space, inherited by all 3D nodes."
msgstr "Objet de base dans l'espace 3D, hérité par tous les nœuds 3D."

msgid ""
"The [Node3D] node is the base representation of a node in 3D space. All other "
"3D nodes inherit from this class.\n"
"Affine operations (translation, rotation, scale) are calculated in the "
"coordinate system relative to the parent, unless the [Node3D]'s [member "
"top_level] is [code]true[/code]. In this coordinate system, affine operations "
"correspond to direct affine operations on the [Node3D]'s [member transform]. "
"The term [i]parent space[/i] refers to this coordinate system. The coordinate "
"system that is attached to the [Node3D] itself is referred to as object-local "
"coordinate system, or [i]local space[/i].\n"
"[b]Note:[/b] Unless otherwise specified, all methods that need angle "
"parameters must receive angles in [i]radians[/i]. To convert degrees to "
"radians, use [method @GlobalScope.deg_to_rad].\n"
"[b]Note:[/b] In Godot 3 and older, [Node3D] was named [i]Spatial[/i]."
msgstr ""
"Le nœud [Node3D] est la représentation de base d'un nœud dans l'espace 3D. "
"Tous les autres nœuds 3D héritent de cette classe.\n"
"Les opérations affines (translation, rotation, échelle) sont calculées dans "
"le système de coordonnées par rapport au parent, à moins que le [member "
"top_level] du [Node3D] vaille [code]true[/code]. Dans ce système de "
"coordonnées, les opérations affines correspondent à des opérations affines "
"directes sur la transformation [member transform] du [Node3D]. Le terme "
"d'[i]espace parent[/i] désigne ce système de coordonnées. Le système de "
"coordonnées joint au [Node3D] lui-même est appelé système de coordonnées "
"objet-local, ou [i]espace local[/i].\n"
"[b]Note :[/b] Sauf indication contraire, toutes les méthodes qui ont besoin "
"de paramètres d'angle doivent recevoir des angles en [i]radians[/i]. Pour "
"convertir des degrés en radians, utilisez [method @GlobalScope.deg_to_rad].\n"
"[b]Note :[/b] Dans Godot 3 et avant, [Node3D] était nommé [i]Spatial[/i]."

msgid "Introduction to 3D"
msgstr "Introduction à la 3D"

msgid "All 3D Demos"
msgstr "Toutes les démos 3D"

msgid ""
"Attaches the given [param gizmo] to this node. Only works in the editor.\n"
"[b]Note:[/b] [param gizmo] should be an [EditorNode3DGizmo]. The argument "
"type is [Node3DGizmo] to avoid depending on editor classes in [Node3D]."
msgstr ""
"Attache le manipulateur [param gizmo] donné à ce nœud. Fonctionne seulement "
"dans l'éditeur.\n"
"[b]Note :[/b] [param gizmo] devrait être un [EditorNode3DGizmo]. Le type "
"d'argument est [Node3DGizmo] pour éviter de dépendre sur des classes de "
"l'éditeur dans [Node3D]."

msgid ""
"Clears all [EditorNode3DGizmo] objects attached to this node. Only works in "
"the editor."
msgstr ""
"Retire tous les objets [EditorNode3DGizmo] attachés à ce nœud. Fonctionne "
"seulement dans l'éditeur."

msgid ""
"Deselects all subgizmos for this node. Useful to call when the selected "
"subgizmo may no longer exist after a property change. Only works in the "
"editor."
msgstr ""
"Désélectionne tous les sous-manipulateurs pour ce nœuds. Utile à appeler "
"lorsque le sous-manipulateur sélectionné peut ne plus exister après un "
"changement de propriété. Fonctionne seulement dans l'éditeur."

msgid ""
"Forces the node's [member global_transform] to update, by sending [constant "
"NOTIFICATION_TRANSFORM_CHANGED]. Fails if the node is not inside the tree.\n"
"[b]Note:[/b] For performance reasons, transform changes are usually "
"accumulated and applied [i]once[/i] at the end of the frame. The update "
"propagates through [Node3D] children, as well. Therefore, use this method "
"only when you need an up-to-date transform (such as during physics "
"operations)."
msgstr ""
"Force la transformation globale [member global_transform] du nœud à se mettre "
"à jour, en envoyant [constant NOTIFICATION_TRANSFORM_CHANGED]. Échoue si le "
"noeud n'est pas à l'intérieur de l'arboresence.\n"
"[b]Note :[/b] Pour des raisons de performance, les changements de "
"transformation sont généralement accumulés et appliqués [i]en une fois[/i] à "
"la fin de la trame. La mise à jour se propage aussi vers les enfants "
"[Node3D]. Par conséquent, utilisez cette méthode seulement lorsque vous avez "
"besoin d'une transformation à jour (comme pendant les opérations de physique)."

msgid ""
"Returns all the [EditorNode3DGizmo] objects attached to this node. Only works "
"in the editor."
msgstr ""
"Renvoie tous les objets [EditorNode3DGizmo] attachés à ce nœud. Fonctionne "
"seulement dans l'éditeur."

msgid ""
"Returns the parent [Node3D] that directly affects this node's [member "
"global_transform]. Returns [code]null[/code] if no parent exists, the parent "
"is not a [Node3D], or [member top_level] is [code]true[/code].\n"
"[b]Note:[/b] This method is not always equivalent to [method "
"Node.get_parent], which does not take [member top_level] into account."
msgstr ""
"Renvoie le [Node3D] parent qui affecte directement la [member "
"global_transform] de ce nœud. Renvoie [code]null[/code] si aucun parent "
"n'existe, le parent n'est pas un [Node3D], ou [member top_level] vaut "
"[code]true[/code].\n"
"[b]Note :[/b] Cette méthode n'est pas toujours équivalente à [method "
"Node.get_parent], qui ne prend pas en compte [member top_level]."

msgid ""
"Returns the [World3D] this node is registered to.\n"
"Usually, this is the same as the world used by this node's viewport (see "
"[method Node.get_viewport] and [method Viewport.find_world_3d])."
msgstr ""
"Renvoie le [World3D] avec lequel ce nœud est enregistré.\n"
"Habituellement, il est identique au monde utilisé par le viewport de ce nœud "
"(voir [method Node.get_viewport] et [method Viewport.find_world_3d])."

msgid ""
"Rotates this node's [member global_basis] around the global [param axis] by "
"the given [param angle], in radians. This operation is calculated in global "
"space (relative to the world) and preserves the [member global_position]."
msgstr ""
"Tourne la [member global_basis] de ce nœud autour de l'axe global [param "
"axis] avec un [param angle] donné, en radians. Cette opération est calculée "
"dans l'espace global (relatif au monde) et préserve la position globale "
"[member global_position]."

msgid ""
"Scales this node's [member global_basis] by the given [param scale] factor. "
"This operation is calculated in global space (relative to the world) and "
"preserves the [member global_position].\n"
"[b]Note:[/b] This method is not to be confused with the [member scale] "
"property."
msgstr ""
"Redimensionne la base globale [member global_basis] de ce nœud par le facteur "
"[param scale] donné. Cette opération est calculée dans l'espace global "
"(relatif au monde) et préserve la [member global_position].\n"
"[b]Note :[/b] Cette méthode ne doit pas être confondue avec la propriété "
"[member scale]."

msgid ""
"Adds the given translation [param offset] to the node's [member "
"global_position] in global space (relative to the world)."
msgstr ""
"Ajoute la translation [param offset] donnée à la position globale [member "
"global_position] du nœud, dans l'espace global (relatif au monde)."

msgid ""
"Prevents this node from being rendered. Equivalent to setting [member "
"visible] to [code]false[/code]. This is the opposite of [method show]."
msgstr ""
"Empêche ce nœud d'être rendu. Équivalent à définir [member visible] à "
"[code]false[/code]. Il s'agit du contraire de [method show]."

msgid ""
"Returns [code]true[/code] if the node receives [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever [member transform] changes. "
"This is enabled with [method set_notify_local_transform]."
msgstr ""
"Renvoie [code]true[/code] si le nœud reçoit [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] chaque fois que [member transform] "
"change. Ceci est activé avec [method set_notify_local_transform]."

msgid ""
"Returns [code]true[/code] if this node's [member global_transform] is "
"automatically orthonormalized. This results in this node not appearing "
"distorted, as if its global scale were set to [constant Vector3.ONE] (or its "
"negative counterpart). See also [method set_disable_scale] and [method "
"orthonormalize].\n"
"[b]Note:[/b] [member transform] is not affected by this setting."
msgstr ""
"Renvoie [code]true[/code] si le [member global_transform] du nœud est "
"automatiquement orthonormalisée. Cela résulte en ce nœud n'apparaissant pas "
"comme déformé, comme si son échelle globale était définie à [constant "
"Vector3.ONE] (ou son homologue négatif). Voir aussi [method "
"set_disable_scale] et [method orthonormalize].\n"
"[b]Note :[/b] [member transform] n'est pas affectée par ce paramètre."

msgid ""
"Returns [code]true[/code] if the node receives [constant "
"NOTIFICATION_TRANSFORM_CHANGED] whenever [member global_transform] changes. "
"This is enabled with [method set_notify_transform]."
msgstr ""
"Renvoie [code]true[/code] si le nœud reçoit [constant "
"NOTIFICATION_TRANSFORM_CHANGED] chaque fois que [member global_transform] "
"change. Ceci est activé avec [method set_notify_transform]."

msgid ""
"Rotates the node so that the local forward axis (-Z, [constant "
"Vector3.FORWARD]) points toward the [param target] position. This operation "
"is calculated in global space (relative to the world).\n"
"The local up axis (+Y) points as close to the [param up] vector as possible "
"while staying perpendicular to the local forward axis. The resulting "
"transform is orthogonal, and the scale is preserved. Non-uniform scaling may "
"not work correctly.\n"
"The [param target] position cannot be the same as the node's position, the "
"[param up] vector cannot be [constant Vector3.ZERO]. Furthermore, the "
"direction from the node's position to the [param target] position cannot be "
"parallel to the [param up] vector, to avoid an unintended rotation around the "
"local Z axis.\n"
"If [param use_model_front] is [code]true[/code], the +Z axis (asset front) is "
"treated as forward (implies +X is left) and points toward the [param target] "
"position. By default, the -Z axis (camera forward) is treated as forward "
"(implies +X is right).\n"
"[b]Note:[/b] This method fails if the node is not in the scene tree. If "
"necessary, use [method look_at_from_position] instead."
msgstr ""
"Tourne le nœud de sorte à ce que l'axe avant local (-Z, [constant "
"Vector3.FORWARD]) pointe vers la position cible [param target]. Cette "
"opération est calculée dans l'espace global (relatif au monde).\n"
"L'axe local haut (+Y) pointe aussi près du vecteur [param up] que possible "
"tout en restant perpendiculaire à l'axe avant local. La transformation "
"résultante est orthogonale, et l'échelle est préservée. Une échelle non "
"uniforme peut ne pas fonctionner correctement.\n"
"La position cible [param target] ne peut être la même que la position du "
"nœud, le vecteur [param up] ne peut être [constant Vector3.ZERO]. De plus, la "
"direction de la position du nœud vers [param target] ne peut pas être "
"parallèle au vecteur [param up], pour éviter une rotation intempestive autour "
"de l'axe Z local.\n"
"Si [param use_model_front] vaut [code]true[/code], l'axe +Z (avant des "
"ressources) est traité comme l'avant (implique que +X est la gauche) et "
"pointe vers [param target]. Par défaut, l'axe -Z (avant de la caméra) est "
"traité comme l'avant (implique que +X est la droite).\n"
"[b]Note :[/b] Cette méthode échoue si le nœud n'est pas dans l'arborescence "
"de scène. Si nécessaire, utilisez plutôt [method look_at_from_position]."

msgid ""
"Moves the node to the specified [param position], then rotates the node to "
"point toward the [param target] position, similar to [method look_at]. This "
"operation is calculated in global space (relative to the world)."
msgstr ""
"Déplace le nœud vers la [param position] spécifiée, puis pivote vers le nœud "
"pour pointer vers la position de la cible [param target], comme avec [method "
"look_at]. Cette opération est calculée dans l'espace global (relatif au "
"monde)."

msgid ""
"Orthonormalizes this node's [member basis]. This method sets this node's "
"[member scale] to [constant Vector3.ONE] (or its negative counterpart), but "
"preserves the [member position] and [member rotation]. See also [method "
"Transform3D.orthonormalized]."
msgstr ""
"Orthonormalise la base de ce nœud. Cette méthode définit l'échelle [member "
"scale] de ce nœud à [constant Vector3.ONE] (ou son homologue négatif), mais "
"conserve la [member position] et [member rotation]. Voir aussi [method "
"Transform3D.orthonormalized]."

msgid ""
"Rotates this node's [member basis] around the [param axis] by the given "
"[param angle], in radians. This operation is calculated in parent space "
"(relative to the parent) and preserves the [member position]."
msgstr ""
"Tourne la [member basis] de ce nœud autour de l'axe [param axis] avec un "
"[param angle] donné, en radians. Cette opération est calculée dans l'espace "
"parent (relatif au parent) et préserve la [member position]."

msgid ""
"Rotates this node's [member basis] around the [param axis] by the given "
"[param angle], in radians. This operation is calculated in local space "
"(relative to this node) and preserves the [member position]."
msgstr ""
"Tourne la [member basis] de ce nœud autour de l'axe [param axis] avec un "
"[param angle] donné, en radians. Cette opération est calculée dans l'espace "
"local (relatif à ce nœud) et préserve la [member position]."

msgid ""
"Rotates this node's [member basis] around the X axis by the given [param "
"angle], in radians. This operation is calculated in parent space (relative to "
"the parent) and preserves the [member position]."
msgstr ""
"Tourne la [member basis] de ce nœud autour de l'axe X avec un [param angle] "
"donné, en radians. Cette opération est calculée dans l'espace parent (relatif "
"au parent) et préserve la [member position]."

msgid ""
"Rotates this node's [member basis] around the Y axis by the given [param "
"angle], in radians. This operation is calculated in parent space (relative to "
"the parent) and preserves the [member position]."
msgstr ""
"Tourne la [member basis] de ce nœud autour de l'axe Y avec un [param angle] "
"donné, en radians. Cette opération est calculée dans l'espace parent (relatif "
"au parent) et préserve la [member position]."

msgid ""
"Rotates this node's [member basis] around the Z axis by the given [param "
"angle], in radians. This operation is calculated in parent space (relative to "
"the parent) and preserves the [member position]."
msgstr ""
"Tourne la [member basis] de ce nœud autour de l'axe Z avec un [param angle] "
"donné, en radians. Cette opération est calculée dans l'espace parent (relatif "
"au parent) et préserve la [member position]."

msgid ""
"Scales this node's [member basis] by the given [param scale] factor. This "
"operation is calculated in local space (relative to this node) and preserves "
"the [member position]."
msgstr ""
"Redimensionne la base [member basis] de ce nœud par le facteur [param scale] "
"donné. Cette opération est calculée dans l'espace local (relatif à ce nœud) "
"et préserve la [member position]."

msgid ""
"If [code]true[/code], this node's [member global_transform] is automatically "
"orthonormalized. This results in this node not appearing distorted, as if its "
"global scale were set to [constant Vector3.ONE] (or its negative "
"counterpart). See also [method is_scale_disabled] and [method "
"orthonormalize].\n"
"[b]Note:[/b] [member transform] is not affected by this setting."
msgstr ""
"Si [code]true[/code], la transformation globale [member global_transform] du "
"nœud est automatiquement orthonormalisée. Cela résulte en ce nœud "
"n'apparaissant pas comme déformé, comme si son échelle globale était définie "
"à [constant Vector3.ONE] (ou son homologue négatif). Voir aussi [method "
"is_scale_disabled] et [method orthonormalize].\n"
"[b]Note :[/b] [member transform] n'est pas affecté par ce paramètre."

msgid ""
"Sets this node's [member transform] to [constant Transform3D.IDENTITY], which "
"resets all transformations in parent space ([member position], [member "
"rotation], and [member scale])."
msgstr ""
"Définit la transformation [member transform] de ce nœud à [constant "
"Transform3D.IDENTITY], ce qui réinitialise toutes les transformations dans "
"l'espace parent ([member position], [member rotation] et [member scale])."

msgid ""
"If [code]true[/code], the node will not receive [constant "
"NOTIFICATION_TRANSFORM_CHANGED] or [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED].\n"
"It may useful to call this method when handling these notifications to "
"prevent infinite recursion."
msgstr ""
"Si [code]true[/code], le nœud ne recevra pas [constant "
"NOTIFICATION_TRANSFORM_CHANGED] ou [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED].\n"
"Il peut être utile d'appeler cette méthode lors de la manipulation de ces "
"notifications pour éviter une récursion infinie."

msgid ""
"If [code]true[/code], the node will receive [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever [member transform] changes.\n"
"[b]Note:[/b] Some 3D nodes such as [CSGShape3D] or [CollisionShape3D] "
"automatically enable this to function correctly."
msgstr ""
"Si [code]true[/code], le nœud recevra [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] chaque fois que [member transform] "
"change.\n"
"[b]Note :[/b] Certains nœuds 3D tels que [CSGShape3D] ou [CollisionShape3D] "
"activement automatiquement ceci pour fonctionner correctement."

msgid ""
"If [code]true[/code], the node will receive [constant "
"NOTIFICATION_TRANSFORM_CHANGED] whenever [member global_transform] changes.\n"
"[b]Note:[/b] Most 3D nodes such as [VisualInstance3D] or [CollisionObject3D] "
"automatically enable this to function correctly.\n"
"[b]Note:[/b] In the editor, nodes will propagate this notification to their "
"children if a gizmo is attached (see [method add_gizmo])."
msgstr ""
"Si [code]true[/code], le nœud recevra [constant "
"NOTIFICATION_TRANSFORM_CHANGED] à chaque fois que [member global_transform] "
"change.\n"
"[b]Note :[/b] La plupart des nœuds 3D tels que [VisualInstance3D] ou "
"[CollisionObject3D] activeront automatiquement ceci pour fonctionner "
"correctement.\n"
"[b]Note :[/b] Dans l'éditeur, les nœuds propagent cette notification à leurs "
"enfants si un manipulateur est attaché (voir [method add_gizmo])."

msgid ""
"Selects the [param gizmo]'s subgizmo with the given [param id] and sets its "
"transform. Only works in the editor.\n"
"[b]Note:[/b] The gizmo object would typically be an instance of "
"[EditorNode3DGizmo], but the argument type is kept generic to avoid creating "
"a dependency on editor classes in [Node3D]."
msgstr ""
"Sélectionne le sous-manipulateur [param gizmo] avec l'[param id] donné et "
"définit sa transformation. Fonctionne seulement dans l'éditeur.\n"
"[b]Note :[/b] L'objet manipulateur serait généralement une instance "
"d'[EditorNode3DGizmo], mais le type d'argument est gardé générique pour "
"éviter de créer une dépendance aux classes d'éditeur dans [Node3D]."

msgid ""
"Allows this node to be rendered. Equivalent to setting [member visible] to "
"[code]true[/code]. This is the opposite of [method hide]."
msgstr ""
"Autorise à ce noeud d'être rendu. Équivalent à définir [member visible] à "
"[code]true[/code]. Il s'agit du contraire de [method hide]."

msgid ""
"Returns the [param local_point] converted from this node's local space to "
"global space. This is the opposite of [method to_local]."
msgstr ""
"Renvoie le point local [param local_point] converti de l'espace local de ce "
"nœud vers l'espace global. Il s'agit du contraire de [method to_local]."

msgid ""
"Returns the [param global_point] converted from global space to this node's "
"local space. This is the opposite of [method to_global]."
msgstr ""
"Renvoie le point global [param global_point] converti de l'espace global vers "
"l'espace local de ce nœud. Il s'agit du contraire de [method to_global]."

msgid ""
"Adds the given translation [param offset] to the node's position, in local "
"space (relative to this node).\n"
"[b]Note:[/b] Prefer using [method translate_object_local], instead, as this "
"method may be changed in a future release.\n"
"[b]Note:[/b] Despite the naming convention, this operation is [b]not[/b] "
"calculated in parent space for compatibility reasons. To translate in parent "
"space, add [param offset] to the [member position] ([code]node_3d.position += "
"offset[/code])."
msgstr ""
"Ajoute la translation [param offset] donnée à la position du nœud, dans "
"l'espace local (relatif à ce noeud).\n"
"[b]Note :[/b] Préférez utiliser [method translate_object_local], car cette "
"méthode peut être changée dans une version future.\n"
"[b]Note :[/b] Malgré la convention de dénomination, cette opération n'est "
"[b]pas[/b] calculée dans l'espace parent pour des raisons de compatibilité. "
"Pour translater dans l'espace parent, ajoutez [param offset] à la [member "
"position] ([code]node_3d.position += offset[/code])."

msgid ""
"Adds the given translation [param offset] to the node's position, in local "
"space (relative to this node)."
msgstr ""
"Ajoute la translation [param offset] donnée à la position du nœud, dans "
"l'espace local (relatif à ce nœud)."

msgid ""
"Updates all the [EditorNode3DGizmo] objects attached to this node. Only works "
"in the editor."
msgstr ""
"Met à jour tous les objets [EditorNode3DGizmo] attachés à ce nœud. Fonctionne "
"seulement dans l'éditeur."

msgid ""
"Basis of the [member transform] property. Represents the rotation, scale, and "
"shear of this node in parent space (relative to the parent node)."
msgstr ""
"Base de la propriété [member transform]. Représente la rotation, l'échelle et "
"le cisaillement de ce nœud dans l'espace parent (relatif au nœud parent)."

msgid ""
"Basis of the [member global_transform] property. Represents the rotation, "
"scale, and shear of this node in global space (relative to the world).\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Basis.IDENTITY]."
msgstr ""
"Base de la propriété [member global_transform]. Représente la rotation, "
"l'échelle et le cisaillement de ce nœud dans l'espace global (relatif au "
"monde).\n"
"[b]Note :[/b] Si le nœud n'est pas à l'intérieur de l’arborescence, obtenir "
"cette propriété échoue et renvoie [constant Basis.IDENTITY]."

msgid ""
"Global position (translation) of this node in global space (relative to the "
"world). This is equivalent to the [member global_transform]'s [member "
"Transform3D.origin].\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Vector3.ZERO]."
msgstr ""
"Position globale (translation) de ce nœud dans l'espace global (relatif au "
"monde). Ceci est équivalent à l'origine [member Transform3D.origin] de "
"[member global_transform].\n"
"[b]Note :[/b] Si le nœud n'est pas à l'intérieur de l’arborescence, obtenir "
"cette propriété échoue et renvoie [constant Vector3.ZERO]."

msgid ""
"Global rotation of this node as [url=https://en.wikipedia.org/wiki/"
"Euler_angles]Euler angles[/url], in radians and in global space (relative to "
"the world). This value is obtained from [member global_basis]'s rotation.\n"
"- The [member Vector3.x] is the angle around the global X axis (pitch);\n"
"- The [member Vector3.y] is the angle around the global Y axis (yaw);\n"
"- The [member Vector3.z] is the angle around the global Z axis (roll).\n"
"[b]Note:[/b] Unlike [member rotation], this property always follows the YXZ "
"convention ([constant EULER_ORDER_YXZ]).\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Vector3.ZERO]."
msgstr ""
"La rotation globale de ce nœud en tant qu'[url=https://fr.wikipedia.org/wiki/"
"Angles_d%27Euler]angles d'Euler[/url], en radians et dans l'espace global "
"(relatif au monde). Cette valeur est obtenue à partir de la rotation de "
"[member global_basis].\n"
"- Le [member Vector3.x] est l'angle autour de l'axe X global (roulis);\n"
"- Le [member Vector3.y] est l'angle autour de l'axe Y global (tangage);\n"
"- Le [member Vector3.z] est l'angle autour de l'axe Z global (lacet).\n"
"[b]Note:[/b] Contrairement à [member rotation], cette propriété suit toujours "
"la convention YXZ ([constant EULER_ORDER_YXZ]).\n"
"[b]Note :[/b] Si le nœud n'est pas à l'intérieur de l’arborescence, obtenir "
"cette propriété échoue et renvoie [constant Vector3.ZERO]."

msgid ""
"The [member global_rotation] of this node, in degrees instead of radians.\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Vector3.ZERO]."
msgstr ""
"La rotation globale [member global_rotation] de ce nœud, en degrés au lieu de "
"radians.\n"
"[b]Note :[/b] Si le nœud n'est pas à l'intérieur de l’arborescence, obtenir "
"cette propriété échoue et renvoie [constant Vector3.ZERO]."

msgid ""
"The transformation of this node, in global space (relative to the world). "
"Contains and represents this node's [member global_position], [member "
"global_rotation], and global scale.\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Transform3D.IDENTITY]."
msgstr ""
"La transformation de ce nœud, dans l'espace global (relatif au monde). "
"Contient et représente la position globale [member global_position] de ce "
"nœud, la rotation globale[member global_rotation] et l'échelle globale.\n"
"[b]Note :[/b] Si le nœud n'est pas à l'intérieur de l’arborescence, obtenir "
"cette propriété échoue et renvoie [constant Transform3D.IDENTITY]."

msgid ""
"Position (translation) of this node in parent space (relative to the parent "
"node). This is equivalent to the [member transform]'s [member "
"Transform3D.origin]."
msgstr ""
"Position (translation) de ce nœud dans l'espace parent (relatif au nœud "
"parent). Il s'agit de l'équivalent de [member Transform3D.origin] de [member "
"transform]."

msgid ""
"Rotation of this node represented as a [Quaternion] in parent space (relative "
"to the parent node). This value is obtained from [member basis]'s rotation.\n"
"[b]Note:[/b] Quaternions are much more suitable for 3D math but are less "
"intuitive. Setting this property can be useful for interpolation (see [method "
"Quaternion.slerp])."
msgstr ""
"Rotation de ce noeud représentée en tant que [Quaternion] dans l'espace "
"parent (relatif au nœud parent). Cette valeur est obtenue à partir de la "
"rotation de [member basis].\n"
"[b]Note :[/b] Les quaternions sont beaucoup plus adaptés aux maths 3D mais "
"sont moins intuitifs. Définir cette propriété peut être utile pour interpoler "
"(voir [method Quaternion.slerp])."

msgid ""
"Rotation of this node as [url=https://en.wikipedia.org/wiki/"
"Euler_angles]Euler angles[/url], in radians and in parent space (relative to "
"the parent node). This value is obtained from [member basis]'s rotation.\n"
"- The [member Vector3.x] is the angle around the local X axis (pitch);\n"
"- The [member Vector3.y] is the angle around the local Y axis (yaw);\n"
"- The [member Vector3.z] is the angle around the local Z axis (roll).\n"
"The order of each consecutive rotation can be changed with [member "
"rotation_order] (see [enum EulerOrder] constants). By default, the YXZ "
"convention is used ([constant EULER_ORDER_YXZ]).\n"
"[b]Note:[/b] This property is edited in degrees in the inspector. If you want "
"to use degrees in a script, use [member rotation_degrees]."
msgstr ""
"La rotation de ce nœud en tant qu'[url=https://fr.wikipedia.org/wiki/"
"Angles_d%27Euler]angles d'Euler[/url], en radians et dans l'espace parent "
"(relatif au nœud parent). Cette valeur est obtenue à partir de la rotation de "
"[member basis].\n"
"- Le [member Vector3.x] est l'angle autour de l'axe X local (roulis);\n"
"- Le [member Vector3.y] est l'angle autour de l'axe Y local (tangage);\n"
"- Le [member Vector3.z] est l'angle autour de l'axe Z local (lacet).\n"
"L'ordre de chaque rotation consécutive peut être modifié avec [member "
"rotation_order] (voir les constantes [enum EulerOrder]). Par défaut, la "
"convention YXZ est utilisée ([constant EULER_ORDER_YXZ]).\n"
"[b]Note :[/b] Cette propriété est modifiée en degrés dans l'inspecteur. Si "
"vous voulez utiliser des degrés dans un script, utilisez [member "
"rotation_degrees]."

msgid ""
"The [member rotation] of this node, in degrees instead of radians.\n"
"[b]Note:[/b] This is [b]not[/b] the property available in the Inspector dock."
msgstr ""
"La [member rotation] de ce nœud, en degrés au lieu de radians.\n"
"[b]Note :[/b] Il ne s'agit [b]pas[/b] la propriété disponible dans le dock "
"Inspecteur."

msgid "How this node's rotation and scale are displayed in the Inspector dock."
msgstr ""
"La façon dont la rotation et l'échelle de ce nœud sont affichées dans le dock "
"Inspecteur."

msgid ""
"The axis rotation order of the [member rotation] property. The final "
"orientation is calculated by rotating around the local X, Y, and Z axis in "
"this order."
msgstr ""
"L'ordre de rotation des axes de la propriété [member rotation]. L'orientation "
"finale est calculée en tournant autour de l'axe local X, Y et Z dans cet "
"ordre."

msgid ""
"Scale of this node in local space (relative to this node). This value is "
"obtained from [member basis]'s scale.\n"
"[b]Note:[/b] The behavior of some 3D node types is not affected by this "
"property. These include [Light3D], [Camera3D], [AudioStreamPlayer3D], and "
"more.\n"
"[b]Warning:[/b] The scale's components must either be all positive or all "
"negative, and [b]not[/b] exactly [code]0.0[/code]. Otherwise, it won't be "
"possible to obtain the scale from the [member basis]. This may cause the "
"intended scale to be lost when reloaded from disk, and potentially other "
"unstable behavior."
msgstr ""
"Échelle de ce nœud dans l'espace local (relatif à ce nœud). Cette valeur est "
"obtenue à partir de l'échelle de [member basis].\n"
"[b]Note :[/b] Le comportement de certains types de nœud 3D n'est pas affecté "
"par cette propriété. Ceux-ci comprennent [Light3D], [Camera3D], "
"[AudioStreamPlayer3D], et d'autres.\n"
"[b]Attention :[/b] Les composantes de l'échelle doivent être toutes positives "
"ou toutes négatives, et [b]pas[/b] exactement [code]0.0[/code]. Sinon, il ne "
"sera pas possible d'obtenir l'échelle de la [member basis]. Cela peut "
"entraîner la perte de l'échelle prévue lorsqu'elle est rechargée depuis le "
"disque, et potentiellement d'autres comportements instables."

msgid ""
"If [code]true[/code], the node does not inherit its transformations from its "
"parent. As such, node transformations will only be in global space, which "
"also means that [member global_transform] and [member transform] will be "
"identical."
msgstr ""
"Si [code]true[/code], le nœud n'hérite pas ses transformations de son parent. "
"Ainsi, les transformations du nœud ne seront que dans l'espace global, ce qui "
"signifie également que [member global_transform] et [member transform] seront "
"identiques."

msgid ""
"The local transformation of this node, in parent space (relative to the "
"parent node). Contains and represents this node's [member position], [member "
"rotation], and [member scale]."
msgstr ""
"La transformation locale de ce nœud, dans l'espace parent (relatif au nœud "
"parent). Contient et représente la [member position], [member rotation] et "
"[member scale] de ce nœud."

msgid ""
"If [code]true[/code], this node can be visible. The node is only rendered "
"when all of its ancestors are visible, as well. That means [method "
"is_visible_in_tree] must return [code]true[/code]."
msgstr ""
"Si [code]true[/code], ce nœud peut être visible. Le nœud n'est rendu que si "
"tous ses parents le sont également. Cela signifie que [method "
"is_visible_in_tree] doit renvoyer [code]true[/code]."

msgid ""
"Emitted when this node's visibility changes (see [member visible] and [method "
"is_visible_in_tree]).\n"
"This signal is emitted [i]after[/i] the related [constant "
"NOTIFICATION_VISIBILITY_CHANGED] notification."
msgstr ""
"Émis lorsque la visibilité de ce nœud change (voir [member visible] et "
"[method is_visible_in_tree]).\n"
"Ce signal est émis [i]après[/i] la notification [constant "
"NOTIFICATION_VISIBILITY_CHANGED] correspondante."

msgid ""
"Notification received when this node's [member global_transform] changes, if "
"[method is_transform_notification_enabled] is [code]true[/code]. See also "
"[method set_notify_transform].\n"
"[b]Note:[/b] Most 3D nodes such as [VisualInstance3D] or [CollisionObject3D] "
"automatically enable this to function correctly.\n"
"[b]Note:[/b] In the editor, nodes will propagate this notification to their "
"children if a gizmo is attached (see [method add_gizmo])."
msgstr ""
"Notification reçue lorsque la [member global_transform] de ce nœud change, si "
"[method is_transform_notification_enabled] vaut [code]true[/code]. Voir aussi "
"[method set_notify_transform].\n"
"[b]Note :[/b] La plupart des nœuds 3D tels que [VisualInstance3D] ou "
"[CollisionObject3D] activent ceci automatiquement pour fonctionner "
"correctement.\n"
"[b]Note :[/b] Dans l'éditeur, les nœuds propagent cette notification à leurs "
"enfants si un manipulateur est attaché (voir [method add_gizmo])."

msgid ""
"Notification received when this node is registered to a new [World3D] (see "
"[method get_world_3d])."
msgstr ""
"Notification reçue lorsque ce nœud est enregistré avec un nouveau [World3D] "
"(voir [method get_world_3d])."

msgid ""
"Notification received when this node is unregistered from the current "
"[World3D] (see [method get_world_3d])."
msgstr ""
"Notification reçue lorsque ce nœud est dés-enregistré du [World3D] actuel "
"(voir [method get_world_3d])."

msgid ""
"Notification received when this node's [member transform] changes, if [method "
"is_local_transform_notification_enabled] is [code]true[/code]. This is not "
"received when a parent [Node3D]'s [member transform] changes. See also "
"[method set_notify_local_transform].\n"
"[b]Note:[/b] Some 3D nodes such as [CSGShape3D] or [CollisionShape3D] "
"automatically enable this to function correctly."
msgstr ""
"Notification reçue lorsque la [member transform] de ce nœud change, si "
"[method is_local_transform_notification_enabled] vaut [code]true[/code]. Ceci "
"n'est pas reçu lorsque la [member transform] d'un [Node3D] parent change. "
"Voir aussi [method set_notify_local_transform].\n"
"[b]Note :[/b] Quelques nœuds 3D tels que [CSGShape3D] ou [CollisionObject3D] "
"activent ceci automatiquement pour fonctionner correctement."

msgid ""
"The rotation is edited using a [Vector3] in [url=https://en.wikipedia.org/"
"wiki/Euler_angles]Euler angles[/url]."
msgstr ""
"La rotation est modifiée en utilisant un [Vector3] d'[url=https://"
"fr.wikipedia.org/wiki/Angles_d%27Euler]angles d'Euler[/url]."

msgid "The rotation is edited using a [Quaternion]."
msgstr "La rotation est éditée à l'aide d'un [Quaternion]."

msgid ""
"The rotation is edited using a [Basis]. In this mode, the raw [member "
"basis]'s axes can be freely modified, but the [member scale] property is not "
"available."
msgstr ""
"La rotation est modifiée en utilisant une [Basis]. Dans ce mode, les axes "
"bruts de [member basis] peuvent être librement modifiés, mais la propriété "
"[member scale] n'est pas disponible."

msgid "2D Role Playing Game (RPG) Demo"
msgstr "Démo de jeu de rôle 2D (RPG)"

msgid "Constructs an empty [NodePath]."
msgstr "Construit un [NodePath] vide."

msgid "Constructs a [NodePath] as a copy of the given [NodePath]."
msgstr "Construit un [NodePath] en tant que copie du [NodePath] donné."

msgid ""
"Constructs a [NodePath] from a [String]. The created path is absolute if "
"prefixed with a slash (see [method is_absolute]).\n"
"The \"subnames\" optionally included after the path to the target node can "
"point to properties, and can also be nested.\n"
"The following strings can be valid node paths:\n"
"[codeblock]\n"
"# Points to the Sprite2D node.\n"
"\"Level/RigidBody2D/Sprite2D\"\n"
"\n"
"# Points to the Sprite2D node and its \"texture\" resource.\n"
"# get_node() would retrieve the Sprite2D, while get_node_and_resource()\n"
"# would retrieve both the Sprite2D node and the \"texture\" resource.\n"
"\"Level/RigidBody2D/Sprite2D:texture\"\n"
"\n"
"# Points to the Sprite2D node and its \"position\" property.\n"
"\"Level/RigidBody2D/Sprite2D:position\"\n"
"\n"
"# Points to the Sprite2D node and the \"x\" component of its \"position\" "
"property.\n"
"\"Level/RigidBody2D/Sprite2D:position:x\"\n"
"\n"
"# Points to the RigidBody2D node as an absolute path beginning from the "
"SceneTree.\n"
"\"/root/Level/RigidBody2D\"\n"
"[/codeblock]\n"
"[b]Note:[/b] In GDScript, it's also possible to convert a constant string "
"into a node path by prefixing it with [code]^[/code]. [code]^\"path/to/"
"node\"[/code] is equivalent to [code]NodePath(\"path/to/node\")[/code]."
msgstr ""
"Construit un [NodePath] depuis une chaîne de caractères [String]. Le chemin "
"créé est absolu s'il commence par une barre oblique (\"/\") (voir [method "
"is_absolute]).\n"
"Les \"sous-noms\" facultatifs inclus après le chemin du nœud cible peuvent "
"pointer vers une ressource ou une propriété, et peuvent aussi être "
"imbriqués.\n"
"Les chaînes suivantes peuvent êtres des chemins de nœud valides :\n"
"[codeblock]\n"
"# Pointe vers le nœud Sprite2D.\n"
"\"Niveau/RigidBody2D/Sprite2D\"\n"
"\n"
"# Pointe vers le nœud Sprite2D et sa ressource \"texture\".\n"
"# \"get_node()\" récupérera le Sprite2D, alors que get_node_and_resource()\n"
"# récupérera à la fois le nœud Sprite2D et sa ressource \"texture\".\n"
"\"Niveau/RigidBody2D/Sprite2D:texture\"\n"
"\n"
"# Pointe vers le nœud Sprite2D et sa propriété \"position\".\n"
"\"Niveau/RigidBody2D/Sprite2D:position\"\n"
"\n"
"# Pointe vers le nœud Sprite2D et à la composante \"x\" de sa propriété "
"\"position\".\n"
"\"Niveau/RigidBody2D/Sprite2D:position:x\"\n"
"\n"
"# Pointe vers le nœud RigidBody2D avec un chemin absolu commençant du départ "
"du SceneTree.\n"
"\"/root/Niveau/RigidBody2D\"\n"
"[/codeblock]\n"
"[b]Note :[/b] En GDScript, il est également possible de convertir une chaîne "
"constante en chemin de nœud en la préfixant avec [code]^[/code]. "
"[code]^\"chemin/vers/noeud\"[/code] est équivalent à [code]NodePath(\"chemin/"
"vers/noeud\")[/code]."

msgid ""
"Returns a copy of this node path with a colon character ([code]:[/code]) "
"prefixed, transforming it to a pure property path with no node names "
"(relative to the current node).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# node_path points to the \"x\" property of the child node named "
"\"position\".\n"
"var node_path = ^\"position:x\"\n"
"\n"
"# property_path points to the \"position\" in the \"x\" axis of this node.\n"
"var property_path = node_path.get_as_property_path()\n"
"print(property_path) # Prints \":position:x\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// nodePath points to the \"x\" property of the child node named "
"\"position\".\n"
"var nodePath = new NodePath(\"position:x\");\n"
"\n"
"// propertyPath points to the \"position\" in the \"x\" axis of this node.\n"
"NodePath propertyPath = nodePath.GetAsPropertyPath();\n"
"GD.Print(propertyPath); // Prints \":position:x\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une copie de ce chemin de nœud avec un deux-points ([code]:[/code]) "
"en préfixe, le transformant en un chemin de propriété pur sans nom de nœud "
"(relatif au nœud actuel).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# chemin_noeud pointe vers la propriété \"x\" du nœud enfant nommé "
"\"position\".\n"
"var chemin_noeud = ^\"position:x\"\n"
"\n"
"# chemin_propriete pointe vers la \"position\" sur l'axe \"x\" de ce nœud.\n"
"var chemin_propriete = chemin_noeud.get_as_property_path()\n"
"print(chemin_propriete) # Affiche \":position:x\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// cheminNoeud pointe vers la propriété \"x\" du nœud enfant nommé "
"\"position\".\n"
"var cheminNoeud = new NodePath(\"position:x\");\n"
"\n"
"// cheminPropriete pointe vers la \"position\" sur l'axe \"x\" de ce nœud.\n"
"NodePath cheminPropriete = cheminNoeud.GetAsPropertyPath();\n"
"GD.Print(cheminPropriete); // Affiche \":position:x\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns all node names concatenated with a slash character ([code]/[/code]) "
"as a single [StringName]."
msgstr ""
"Renvoie tous les noms de nœuds concaténés avec un caractère slash ([code]/[/"
"code]) en un seul [StringName]."

msgid ""
"Returns all property subnames concatenated with a colon character ([code]:[/"
"code]) as a single [StringName].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node_path = ^\"Sprite2D:texture:resource_name\"\n"
"print(node_path.get_concatenated_subnames()) # Prints "
"\"texture:resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var nodePath = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(nodePath.GetConcatenatedSubnames()); // Prints "
"\"texture:resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie tous les sous-noms de propriété concaténés avec un deux-points "
"([code]:[/code]) en un seul [StringName].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var chemin_noeud = ^\"Sprite2D:texture:resource_name\"\n"
"print(chemin_noeud.get_concatenated_subnames()) # Affiche "
"\"texture:resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var cheminNoeud = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(cheminNoeud.GetConcatenatedSubnames()); // Affiche "
"\"texture:resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the node name indicated by [param idx], starting from 0. If [param "
"idx] is out of bounds, an error is generated. See also [method "
"get_subname_count] and [method get_name_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sprite_path = NodePath(\"../RigidBody2D/Sprite2D\")\n"
"print(sprite_path.get_name(0)) # Prints \"..\"\n"
"print(sprite_path.get_name(1)) # Prints \"RigidBody2D\"\n"
"print(sprite_path.get_name(2)) # Prints \"Sprite\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var spritePath = new NodePath(\"../RigidBody2D/Sprite2D\");\n"
"GD.Print(spritePath.GetName(0)); // Prints \"..\"\n"
"GD.Print(spritePath.GetName(1)); // Prints \"PathFollow2D\"\n"
"GD.Print(spritePath.GetName(2)); // Prints \"Sprite\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le nom du nœud indiqué par l'index [param idx], à partir de 0. Si "
"[param idx] est hors des limites, une erreur est générée. Voir aussi [method "
"get_subname_count] et [method get_name_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var chemin_sprite = NodePath()./RigidBody2D/Sprite2D\")\n"
"print(chemin_sprite.get_name(0)) # Affiche \"..\"\n"
"print(chemin_sprite.get_name(1)) # Affiche \"RigidBody2D\"\n"
"print(chemin_sprite.get_name(2)) # Affiche \"Sprite\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var cheminSprite = new NodePath(\"./RigidBody2D/Sprite2D\");\n"
"GD.Print(cheminSprite.GetName(0)); // Affiche \"..\"\n"
"GD.Print(cheminSprite.GetName(1)); // Affiche \"RigidBody2D\"\n"
"GD.Print(cheminSprite.GetName(2)); // Affiche \"Sprite\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of node names in the path. Property subnames are not "
"included.\n"
"For example, [code]\"../RigidBody2D/Sprite2D:texture\"[/code] contains 3 node "
"names."
msgstr ""
"Renvoie le nombre de noms de nœuds dans le chemin. Les sous-noms de propriété "
"ne sont pas inclus.\n"
"Par exemple, [code]\"../RigidBody2D/Sprite2D:texture\"[/code] contient 3 noms "
"de nœuds."

msgid ""
"Returns the property name indicated by [param idx], starting from 0. If "
"[param idx] is out of bounds, an error is generated. See also [method "
"get_subname_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var path_to_name = NodePath(\"Sprite2D:texture:resource_name\")\n"
"print(path_to_name.get_subname(0)) # Prints \"texture\"\n"
"print(path_to_name.get_subname(1)) # Prints \"resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var pathToName = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(pathToName.GetSubname(0)); // Prints \"texture\"\n"
"GD.Print(pathToName.GetSubname(1)); // Prints \"resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le nom de la propriété indiquée par l'index [param idx], à partir de "
"0. Si [param idx] est hors des limites, une erreur est générée. Voir aussi "
"[method get_subname_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var chemin_vers_nom = NodePath(\"Sprite2D:texture:resource_name\")\n"
"print(chemin_vers_nom.get_subname(0)) # Affiche \"texture\"\n"
"print(chemin_vers_nom.get_subname(1)) # Affiche \"resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var cheminVersNom = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(cheminVersNom.GetSubname(0)); // Affiche \"texture\"\n"
"GD.Print(cheminVersNom.GetSubname(1)); // Affiche \"resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of property names (\"subnames\") in the path. Each subname "
"in the node path is listed after a colon character ([code]:[/code]).\n"
"For example, [code]\"Level/RigidBody2D/Sprite2D:texture:resource_name\"[/"
"code] contains 2 subnames."
msgstr ""
"Renvoie le nombre de noms de propriété (« sous-noms ») dans le chemin. Chaque "
"sous-nom dans le chemin de nœud est listé après un deux-points ([code]:[/"
"code]).\n"
"Par exemple, [code]\"Niveau/RigidBody2D/Sprite2D:texture:resource_name\"[/"
"code] contient 2 sous-noms."

msgid ""
"Returns the 32-bit hash value representing the node path's contents.\n"
"[b]Note:[/b] Node paths with equal hash values are [i]not[/i] guaranteed to "
"be the same, as a result of hash collisions. Node paths with different hash "
"values are guaranteed to be different."
msgstr ""
"Renvoie la valeur de hachage sur 32 bits représentant le contenu du chemin de "
"nœud.\n"
"[b]Note :[/b] Les chemins de nœud avec des valeurs de hachage égales ne sont "
"[i]pas[/i] garantis pour être les mêmes, en raison des collisions de hachage. "
"Les chemins de nœud avec différentes valeurs de hachage sont garantis d'être "
"différents."

msgid ""
"Returns [code]true[/code] if the node path is absolute. Unlike a relative "
"path, an absolute path is represented by a leading slash character ([code]/[/"
"code]) and always begins from the [SceneTree]. It can be used to reliably "
"access nodes from the root node (e.g. [code]\"/root/Global\"[/code] if an "
"autoload named \"Global\" exists)."
msgstr ""
"Renvoie [code]true[/code] si le chemin de nœud est absolu. Contrairement à un "
"chemin relatif, un chemin absolu est représenté par un caractère de slash de "
"départ ([code]/[/code]) et commence toujours du [SceneTree]. Il peut être "
"utilisé pour accéder de façon fiable à des nœuds depuis le nœuds racine (par "
"exemple [code]\"/root/Global\"[/code] si un chargement automatique (autoload) "
"nommé «Global» existe)."

msgid ""
"Returns [code]true[/code] if the node path has been constructed from an empty "
"[String] ([code]\"\"[/code])."
msgstr ""
"Renvoie [code]true[/code] si le chemin de nœud a été construit à partir d'un "
"[String] vide ([code]\"[/code])."

msgid ""
"Returns the slice of the [NodePath], from [param begin] (inclusive) to [param "
"end] (exclusive), as a new [NodePath].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"sum of [method get_name_count] and [method get_subname_count], so the default "
"value for [param end] makes it slice to the end of the [NodePath] by default "
"(i.e. [code]path.slice(1)[/code] is a shorthand for [code]path.slice(1, "
"path.get_name_count() + path.get_subname_count())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the [NodePath] (i.e. [code]path.slice(0, -2)[/code] is a shorthand "
"for [code]path.slice(0, path.get_name_count() + path.get_subname_count() - 2)"
"[/code])."
msgstr ""
"Renvoie la tranche du [NodePath], de [param begin] (inclusive) à [param end] "
"(exclusive), en tant que nouveau [NodePath].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid "Returns [code]true[/code] if two node paths are not equal."
msgstr ""
"Renvoie [code]true[/code] si les deux chemins de nœud ne sont pas égaux."

msgid ""
"Returns [code]true[/code] if two node paths are equal, that is, they are "
"composed of the same node names and subnames in the same order."
msgstr ""
"Renvoie [code]true[/code] si les deux chemins de nœud sont égaux, c'est-à-"
"dire qu'ils sont composés des mêmes noms et sous-noms de nœuds dans le même "
"ordre."

msgid "Abstract base class for noise generators."
msgstr "Classe de base abstraite pour les générateurs de bruit."

msgid ""
"This class defines the interface for noise generation libraries to inherit "
"from.\n"
"A default [method get_seamless_image] implementation is provided for "
"libraries that do not provide seamless noise. This function requests a larger "
"image from the [method get_image] method, reverses the quadrants of the "
"image, then uses the strips of extra width to blend over the seams.\n"
"Inheriting noise classes can optionally override this function to provide a "
"more optimal algorithm."
msgstr ""
"Cette classe définit l'interface dont les bibliothèques de génération de "
"bruit doivent hériter.\n"
"Une implémentation de [method get_seamless_image] par défaut est fournie pour "
"les bibliothèques qui ne fournissent pas de bruit seamless (qui se répète "
"sans répétition apparente). Cette fonction demande une image plus grande avec "
"la méthode [method get_image], inverse les quadrants de l'image, puis utilise "
"les bandes de largeur supplémentaire pour mélanger sur les coutures.\n"
"Les classes de bruit héritantes peuvent éventuellement redéfinir cette "
"fonction pour fournir un algorithme plus optimal."

msgid ""
"Returns an [Image] containing 2D noise values.\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Renvoie une [Image] contenant des valeurs de bruit 2D.\n"
"[b]Note :[/b] Avec [param normalize] défini à [code]false[/code], "
"l'implémentation par défaut s'attend à ce que le générateur de bruit renvoie "
"des valeurs dans la plage [code]-1.0[/code] à [code]1.0[/code]."

msgid ""
"Returns an [Array] of [Image]s containing 3D noise values for use with "
"[method ImageTexture3D.create].\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Renvoie un [Array] d'[Image]s contenant des valeurs de bruit 3D à utiliser "
"avec [method ImageTexture3D.create].\n"
"[b]Note :[/b] Avec [param normalize] défini à [code]false[/code], "
"l'implémentation par défaut s'attend à ce que le générateur de bruit renvoie "
"des valeurs dans la plage [code]-1.0[/code] à [code]1.0[/code]."

msgid "Returns the 1D noise value at the given (x) coordinate."
msgstr "Renvoie la valeur du bruit 1D à la coordonnée (x) donnée."

msgid "Returns the 2D noise value at the given position."
msgstr "Renvoie la valeur du bruit 2D à la position donnée."

msgid "Returns the 3D noise value at the given position."
msgstr "Renvoie la valeur du bruit 3D à la position donnée."

msgid ""
"Returns an [Image] containing seamless 2D noise values.\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Renvoie une [Image] contenant des valeurs de bruit 2D seamless.\n"
"[b]Note :[/b] Avec [param normalize] défini à [code]false[/code], "
"l'implémentation par défaut s'attend à ce que le générateur de bruit renvoie "
"des valeurs dans la plage [code]-1.0[/code] à [code]1.0[/code]."

msgid ""
"Returns an [Array] of [Image]s containing seamless 3D noise values for use "
"with [method ImageTexture3D.create].\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Renvoie un [Array] d'[Image]s contenant des valeurs de bruit 3D seamless à "
"utiliser avec [method ImageTexture3D.create].\n"
"[b]Note :[/b] Avec [param normalize] défini à [code]false[/code], "
"l'implémentation par défaut s'attend à ce que le générateur de bruit renvoie "
"des valeurs dans la plage [code]-1.0[/code] à [code]1.0[/code]."

msgid "A 2D texture filled with noise generated by a [Noise] object."
msgstr "Une texture 2D remplie de bruit généré par un objet [Noise]."

msgid ""
"Uses the [FastNoiseLite] library or other noise generators to fill the "
"texture data of your desired size. [NoiseTexture2D] can also generate normal "
"map textures.\n"
"The class uses [Thread]s to generate the texture data internally, so [method "
"Texture2D.get_image] may return [code]null[/code] if the generation process "
"has not completed yet. In that case, you need to wait for the texture to be "
"generated before accessing the image and the generated byte data:\n"
"[codeblock]\n"
"var texture = NoiseTexture2D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var image = texture.get_image()\n"
"var data = image.get_data()\n"
"[/codeblock]"
msgstr ""
"Utilise la bibliothèque [FastNoiseLite] ou d'autres générateurs de bruit pour "
"remplir les données de texture à votre taille désirée. [NoiseTexture2D] peut "
"également générer des textures de normal map.\n"
"La classe utilise des [Thread]s pour générer les données de texture en "
"interne, donc [method Texture2D.get_image] peut renvoyer [code]null[/code] si "
"le processus de génération n'est pas encore terminé. Dans ce cas, vous devez "
"attendre que la texture soit générée avant d'accéder à l'image et aux données "
"d'octet générées :\n"
"[codeblock]\n"
"var texture = NoiseTexture2D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var image = texture.get_image()\n"
"var donnees = image.get_data()\n"
"[/codeblock]"

msgid ""
"If [code]true[/code], the resulting texture contains a normal map created "
"from the original noise interpreted as a bump map."
msgstr ""
"Si [code]true[/code], la texture résultante contient une carte normale créée "
"à partir du bruit original interprété comme une carte de bosse."

msgid ""
"Strength of the bump maps used in this texture. A higher value will make the "
"bump maps appear larger while a lower value will make them appear softer."
msgstr ""
"L'intensité des cartes de bosse utilisées dans cette texture. Une valeur plus "
"élevée rendra les cartes de bosse plus grandes alors qu'une valeur plus basse "
"les rendra plus douces."

msgid ""
"A [Gradient] which is used to map the luminance of each pixel to a color "
"value."
msgstr ""
"Un [Gradient] qui est utilisé pour associer la luminance de chaque pixel à "
"une valeur de couleur."

msgid ""
"Determines whether mipmaps are generated for this texture. Enabling this "
"results in less texture aliasing in the distance, at the cost of increasing "
"memory usage by roughly 33% and making the noise texture generation take "
"longer.\n"
"[b]Note:[/b] [member generate_mipmaps] requires mipmap filtering to be "
"enabled on the material using the [NoiseTexture2D] to have an effect."
msgstr ""
"Détermine si des mipmaps sont générées pour cette texture. Activer ceci "
"résulte en moins de crénelage de texture au loin, au coût d'augmenter "
"l'utilisation de mémoire d'environ 33% et de rendant la génération de texture "
"de bruit plus lente.\n"
"[b]Note :[/b] [member generate_mipmaps] nécessite que le filtrage de mipmap "
"soit activé sur le matériau utilisant le [NoiseTexture2D] pour avoir un effet."

msgid "Height of the generated texture (in pixels)."
msgstr "Hauteur de la texture générée (en pixels)."

msgid ""
"Determines whether the noise image is calculated in 3D space. May result in "
"reduced contrast."
msgstr ""
"Détermine si l'image de bruit est calculée dans l'espace 3D. Peut résulter en "
"un contraste réduit."

msgid ""
"If [code]true[/code], inverts the noise texture. White becomes black, black "
"becomes white."
msgstr ""
"Si [code]true[/code], inverse la texture de bruit. Le blanc devient noir, le "
"noir devient blanc."

msgid "The instance of the [Noise] object."
msgstr "L'instance de l'objet [Noise]."

msgid ""
"If [code]true[/code], the noise image coming from the noise generator is "
"normalized to the range [code]0.0[/code] to [code]1.0[/code].\n"
"Turning normalization off can affect the contrast and allows you to generate "
"non repeating tileable noise textures."
msgstr ""
"Si [code]true[/code], l'image de bruit provenant du générateur de bruit est "
"normalisée à la plage [code]0.0[/code] à [code]1.0[/code].\n"
"Retirer la normalisation peut affecter le contraste et vous permet de générer "
"des textures de bruit raccordables non répétées."

msgid ""
"Used for the default/fallback implementation of the seamless texture "
"generation. It determines the distance over which the seams are blended. High "
"values may result in less details and contrast. See [Noise] for further "
"details.\n"
"[b]Note:[/b] If using a [member width] or [member height] lower than the "
"default, you may need to increase [member seamless_blend_skirt] to make "
"seamless blending more effective."
msgstr ""
"Utilisé pour l'implémentation par défaut/de repli de la génération de "
"textures seamless (sans coutures). Il détermine la distance sur laquelle les "
"coutures sont mélangées. Les valeurs élevées peuvent résulter en moins de "
"détails et de contraste. Voir [Noise] pour plus de détails.\n"
"[b]Note :[/b] Si vous utilisez une largeur [member width] ou une hauteur "
"[member height] inférieure à la valeur par défaut, vous devrez peut-être "
"augmenter [member seamless_blend_skirt] pour rendre le mélange seamless plus "
"efficace."

msgid "Width of the generated texture (in pixels)."
msgstr "Largeur de la texture générée (en pixels)."

msgid "A 3D texture filled with noise generated by a [Noise] object."
msgstr "Une texture 3D remplie de bruit généré par un objet [Noise]."

msgid ""
"Uses the [FastNoiseLite] library or other noise generators to fill the "
"texture data of your desired size.\n"
"The class uses [Thread]s to generate the texture data internally, so [method "
"Texture3D.get_data] may return [code]null[/code] if the generation process "
"has not completed yet. In that case, you need to wait for the texture to be "
"generated before accessing the image:\n"
"[codeblock]\n"
"var texture = NoiseTexture3D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var data = texture.get_data()\n"
"[/codeblock]"
msgstr ""
"Utilise la bibliothèque [FastNoiseLite] ou d'autres générateurs de bruit pour "
"remplir les données de texture à votre taille désirée.\n"
"La classe utilise des [Thread]s pour générer les données de texture en "
"interne, donc [method Texture3D.get_data] peut renvoyer [code]null[/code] si "
"le processus de génération n'est pas encore terminé. Dans ce cas, vous devez "
"attendre que la texture soit générée avant d'accéder à l'image :\n"
"[codeblock]\n"
"var texture = NoiseTexture3D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var donnees = texture.get_data()\n"
"[/codeblock]"

msgid "Depth of the generated texture (in pixels)."
msgstr "Profondeur de la texture générée (en pixels)."

msgid ""
"Used for the default/fallback implementation of the seamless texture "
"generation. It determines the distance over which the seams are blended. High "
"values may result in less details and contrast. See [Noise] for further "
"details.\n"
"[b]Note:[/b] If using a [member width], [member height] or [member depth] "
"lower than the default, you may need to increase [member "
"seamless_blend_skirt] to make seamless blending more effective."
msgstr ""
"Utilisé pour l'implémentation par défaut/de repli de la génération de "
"textures seamless (sans coutures). Il détermine la distance sur laquelle les "
"coutures sont mélangées. Les valeurs élevées peuvent résulter en moins de "
"détails et de contraste. Voir [Noise] pour plus de détails.\n"
"[b]Note :[/b] Si vous utilisez une largeur [member width], une hauteur "
"[member height] ou une pronfondeur [member depth] inférieure à la valeur par "
"défaut, vous devrez peut-être augmenter [member seamless_blend_skirt] pour "
"rendre le mélange seamless plus efficace."

msgid "Base class for all other classes in the engine."
msgstr "Classe de base pour toutes les autres classes du moteur."

msgid ""
"An advanced [Variant] type. All classes in the engine inherit from Object. "
"Each class may define new properties, methods or signals, which are available "
"to all inheriting classes. For example, a [Sprite2D] instance is able to call "
"[method Node.add_child] because it inherits from [Node].\n"
"You can create new instances, using [code]Object.new()[/code] in GDScript, or "
"[code]new GodotObject[/code] in C#.\n"
"To delete an Object instance, call [method free]. This is necessary for most "
"classes inheriting Object, because they do not manage memory on their own, "
"and will otherwise cause memory leaks when no longer in use. There are a few "
"classes that perform memory management. For example, [RefCounted] (and by "
"extension [Resource]) deletes itself when no longer referenced, and [Node] "
"deletes its children when freed.\n"
"Objects can have a [Script] attached to them. Once the [Script] is "
"instantiated, it effectively acts as an extension to the base class, allowing "
"it to define and inherit new properties, methods and signals.\n"
"Inside a [Script], [method _get_property_list] may be overridden to customize "
"properties in several ways. This allows them to be available to the editor, "
"display as lists of options, sub-divide into groups, save on disk, etc. "
"Scripting languages offer easier ways to customize properties, such as with "
"the [annotation @GDScript.@export] annotation.\n"
"Godot is very dynamic. An object's script, and therefore its properties, "
"methods and signals, can be changed at run-time. Because of this, there can "
"be occasions where, for example, a property required by a method may not "
"exist. To prevent run-time errors, see methods such as [method set], [method "
"get], [method call], [method has_method], [method has_signal], etc. Note that "
"these methods are [b]much[/b] slower than direct references.\n"
"In GDScript, you can also check if a given property, method, or signal name "
"exists in an object with the [code]in[/code] operator:\n"
"[codeblock]\n"
"var node = Node.new()\n"
"print(\"name\" in node)         # Prints true\n"
"print(\"get_parent\" in node)   # Prints true\n"
"print(\"tree_entered\" in node) # Prints true\n"
"print(\"unknown\" in node)      # Prints false\n"
"[/codeblock]\n"
"Notifications are [int] constants commonly sent and received by objects. For "
"example, on every rendered frame, the [SceneTree] notifies nodes inside the "
"tree with a [constant Node.NOTIFICATION_PROCESS]. The nodes receive it and "
"may call [method Node._process] to update. To make use of notifications, see "
"[method notification] and [method _notification].\n"
"Lastly, every object can also contain metadata (data about data). [method "
"set_meta] can be useful to store information that the object itself does not "
"depend on. To keep your code clean, making excessive use of metadata is "
"discouraged.\n"
"[b]Note:[/b] Unlike references to a [RefCounted], references to an object "
"stored in a variable can become invalid without being set to [code]null[/"
"code]. To check if an object has been deleted, do [i]not[/i] compare it "
"against [code]null[/code]. Instead, use [method "
"@GlobalScope.is_instance_valid]. It's also recommended to inherit from "
"[RefCounted] for classes storing data instead of [Object].\n"
"[b]Note:[/b] The [code]script[/code] is not exposed like most properties. To "
"set or get an object's [Script] in code, use [method set_script] and [method "
"get_script], respectively.\n"
"[b]Note:[/b] In a boolean context, an [Object] will evaluate to [code]false[/"
"code] if it is equal to [code]null[/code] or it has been freed. Otherwise, an "
"[Object] will always evaluate to [code]true[/code]. See also [method "
"@GlobalScope.is_instance_valid]."
msgstr ""
"Un type de [Variant] avancé. Toutes les classes du moteur héritent d'Object. "
"Chaque classe peut définir de nouvelles propriétés, méthodes ou signaux, "
"disponibles pour toutes les classes héritantes. Par exemple, une instance de "
"[Sprite2D] peut appeler [method Node.add_child] parce qu'elle hérite de "
"[Node].\n"
"Vous pouvez créer de nouvelles instances en utilisant [code]Object.new()[/"
"code] en GDScript, ou [code]new GodotObject[/code] dans C#.\n"
"Pour supprimer une instance objet, appelez [method free]. Cela est nécessaire "
"pour la plupart des classes héritant d'Objet, parce qu'ils ne gèrent pas la "
"mémoire toute seules, et provoquera sinon des fuites de mémoire quand ils ne "
"sont plus utilisés. Il y a quelques classes qui effectuent la gestion de la "
"mémoire. Par exemple, [RefCounted] (et par extension [Resource]) se supprime "
"lorsqu'il n'est plus référencé, et [Node] supprime ses enfants lorsqu'il est "
"libéré.\n"
"Les objets peuvent avoir un [Script] attaché à eux. Une fois le [Script] "
"instancié, il agit efficacement comme une extension à la classe de base, lui "
"permettant de définir et d'hériter de nouvelles propriétés, méthodes et "
"signaux.\n"
"Dans un [Script], [method _get_property_list] peut être redéfini pour "
"personnaliser les propriétés de plusieurs façons. Cela leur permet d'être "
"disponibles pour l'éditeur, de les afficher sous forme de listes d'options, "
"de sous-diviser en groupes, d'enregistrer sur disque, etc. Les langages de "
"Scripting offrent des façons plus faciles de personnaliser les propriétés, "
"comme avec l'annotation [annotation @GDScript.@export].\n"
"Godot est très dynamique. Le script d'un objet, et donc ses propriétés, "
"méthodes et signaux, peuvent être modifiés à l'exécution. Pour cette raison, "
"il peut y avoir des occasions où, par exemple, une propriété requise par une "
"méthode peut ne pas exister. Pour éviter les erreurs durant l'exécution, voir "
"des méthodes telles que [method set], [method get], [method call], [method "
"has_method], [method has_signal], etc. Notez que ces méthodes sont "
"[b]beaucoup[/b] plus lentes que les références directes.\n"
"En GDScript, vous pouvez également vérifier si un nom de propriété, de "
"méthode ou de signal donné existe dans un objet avec l'opérateur [code]in[/"
"code] :\n"
"[codeblock]\n"
"var noeud = Node.new()\n"
"print(\"name\" in noeud)         # Affiche true\n"
"print(\"get_parent\" in noeud)   # Affiche true\n"
"print(\"tree_entered\" in noeud) # Affiche true\n"
"print(\"inconnu\" in noeud)      # Affiche false\n"
"[/codeblock]\n"
"Les notifications sont des constantes [int] généralement envoyées et reçues "
"par des objets. Par exemple, sur chaque trame rendue, le [SceneTree] notifie "
"les nœuds à l'intérieur de l'arbre avec un [constant "
"Node.NOTIFICATION_PROCESS]. Les nœuds la reçoivent et peuvent appeler [method "
"Node._process] pour se mettre à jour. Pour utiliser les notifications, voir "
"[method notification] et [method _notification].\n"
"Enfin, chaque objet peut également contenir des métadonnées (des données sur "
"des données). [method set_meta] peut être utile pour stocker des informations "
"sur lesquelles l'objet lui-même ne dépend pas. Pour garder votre code propre, "
"faire un usage excessif des métadonnées est déconseillé.\n"
"[b]Note :[/b] Contrairement aux références à un [RefCounted], les références "
"à un objet stocké dans une variable peuvent devenir invalides sans être "
"définies à [code]null[/code]. Pour vérifier si un objet a été supprimé, ne le "
"comparez [i]pas[/i] avec [code]null[/code]. Au lieu de cela, utilisez [method "
"@GlobalScope.is_instance_valid]. Il est également recommandé d'hériter de "
"[RefCounted] pour les classes qui stockent des données au lieu d'[Object].\n"
"[b]Note :[/b] Le [code]script[/code] n'est pas exposé comme la plupart des "
"propriétés. Pour définir ou obtenir le [Script] d'un objet dans le code, "
"utilisez [method set_script] et [method get_script] respectivement.\n"
"[b]Note :[/b] Dans un contexte booléen, un [Object] évaluera à [code]false[/"
"code] s'il est égal à [code]null[/code] ou s'il a été libéré. Dans le cas "
"contraire, un [Object] évaluera toujours à [code]true[/code]. Voir aussi "
"[method @GlobalScope.is_instance_valid]."

msgid "Object class introduction"
msgstr "Introduction au classes d'objets"

msgid "When and how to avoid using nodes for everything"
msgstr "Quand et comment éviter d'utiliser des nœuds pour tout"

msgid "Object notifications"
msgstr "Notifications d'objets"

msgid ""
"Override this method to customize the behavior of [method get]. Should return "
"the given [param property]'s value, or [code]null[/code] if the [param "
"property] should be handled normally.\n"
"Combined with [method _set] and [method _get_property_list], this method "
"allows defining custom properties, which is particularly useful for editor "
"plugins.\n"
"[b]Note:[/b] This method is not called when getting built-in properties of an "
"object, including properties defined with [annotation @GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get(property):\n"
"\tif property == \"fake_property\":\n"
"\t\tprint(\"Getting my property!\")\n"
"\t\treturn 4\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fake_property\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _Get(StringName property)\n"
"{\n"
"\tif (property == \"FakeProperty\")\n"
"\t{\n"
"\t\tGD.Print(\"Getting my property!\");\n"
"\t\treturn 4;\n"
"\t}\n"
"\treturn default;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FakeProperty\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Redéfinissez cette méthode pour personnaliser le comportement de [method "
"get]. Devrait renvoyer la valeur de la propriété [param property] donnée, ou "
"[code]null[/code] si [param property] devrait être traitée normalement.\n"
"Combiné avec [method _set] et [method _get_property_list], cette méthode "
"permet de définir des propriétés personnalisées, ce qui est particulièrement "
"utile pour les plugins éditeurs.\n"
"[b]Note :[/b] Cette méthode n'est pas appelée pour obtenir des propriétés "
"intégrées d'un objet, y compris les propriétés définies avec [annotation "
"@GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get(property):\n"
"\tif property == \"fausse_propriete\":\n"
"\t\tprint(\"Obtenir ma propriété !\")\n"
"\t\treturn 4\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fausse_propriete\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _Get(StringName property)\n"
"{\n"
"\tif (property == \"FaussePropriete\")\n"
"\t{\n"
"\t\tGD.Print(\"Obtenir ma propriété !\");\n"
"\t\treturn 4;\n"
"\t}\n"
"\treturn default;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FaussePropriete\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Override this method to provide a custom list of additional properties to "
"handle by the engine.\n"
"Should return a property list, as an [Array] of dictionaries. The result is "
"added to the array of [method get_property_list], and should be formatted in "
"the same way. Each [Dictionary] must at least contain the [code]name[/code] "
"and [code]type[/code] entries.\n"
"You can use [method _property_can_revert] and [method _property_get_revert] "
"to customize the default values of the properties added by this method.\n"
"The example below displays a list of numbers shown as words going from "
"[code]ZERO[/code] to [code]FIVE[/code], with [code]number_count[/code] "
"controlling the size of the list:\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var number_count = 3:\n"
"\tset(nc):\n"
"\t\tnumber_count = nc\n"
"\t\tnumbers.resize(number_count)\n"
"\t\tnotify_property_list_changed()\n"
"\n"
"var numbers = PackedInt32Array([0, 0, 0])\n"
"\n"
"func _get_property_list():\n"
"\tvar properties = []\n"
"\n"
"\tfor i in range(number_count):\n"
"\t\tproperties.append({\n"
"\t\t\t\"name\": \"number_%d\" % i,\n"
"\t\t\t\"type\": TYPE_INT,\n"
"\t\t\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\t\t\"hint_string\": \"ZERO,ONE,TWO,THREE,FOUR,FIVE\",\n"
"\t\t})\n"
"\n"
"\treturn properties\n"
"\n"
"func _get(property):\n"
"\tif property.begins_with(\"number_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\treturn numbers[index]\n"
"\n"
"func _set(property, value):\n"
"\tif property.begins_with(\"number_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\tnumbers[index] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate int _numberCount;\n"
"\n"
"\t[Export]\n"
"\tpublic int NumberCount\n"
"\t{\n"
"\t\tget => _numberCount;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_numberCount = value;\n"
"\t\t\t_numbers.Resize(_numberCount);\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\tprivate Godot.Collections.Array<int> _numbers = [];\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"\t{\n"
"\t\tGodot.Collections.Array<Godot.Collections.Dictionary> properties = [];\n"
"\n"
"\t\tfor (int i = 0; i < _numberCount; i++)\n"
"\t\t{\n"
"\t\t\tproperties.Add(new Godot.Collections.Dictionary()\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", $\"number_{i}\" },\n"
"\t\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t\t\t{ \"hint\", (int)PropertyHint.Enum },\n"
"\t\t\t\t{ \"hint_string\", \"Zero,One,Two,Three,Four,Five\" },\n"
"\t\t\t});\n"
"\t\t}\n"
"\n"
"\t\treturn properties;\n"
"\t}\n"
"\n"
"\tpublic override Variant _Get(StringName property)\n"
"\t{\n"
"\t\tstring propertyName = property.ToString();\n"
"\t\tif (propertyName.StartsWith(\"number_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(propertyName.Substring(\"number_\".Length));\n"
"\t\t\treturn _numbers[index];\n"
"\t\t}\n"
"\t\treturn default;\n"
"\t}\n"
"\n"
"\tpublic override bool _Set(StringName property, Variant value)\n"
"\t{\n"
"\t\tstring propertyName = property.ToString();\n"
"\t\tif (propertyName.StartsWith(\"number_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(propertyName.Substring(\"number_\".Length));\n"
"\t\t\t_numbers[index] = value.As<int>();\n"
"\t\t\treturn true;\n"
"\t\t}\n"
"\t\treturn false;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method is intended for advanced purposes. For most common "
"use cases, the scripting languages offer easier ways to handle properties. "
"See [annotation @GDScript.@export], [annotation @GDScript.@export_enum], "
"[annotation @GDScript.@export_group], etc. If you want to customize exported "
"properties, use [method _validate_property].\n"
"[b]Note:[/b] If the object's script is not [annotation @GDScript.@tool], this "
"method will not be called in the editor."
msgstr ""
"Redéfinissez cette méthode pour fournir une liste personnalisée des "
"propriétés supplémentaires à manipuler par le moteur.\n"
"Devrait renvoyer une liste de propriétés, en tant qu'[Array] de "
"dictionnaires. Le résultat est ajouté au tableau de [method "
"get_property_list], et devrait être formaté de la même manière. Chaque "
"[Dictionary] doit au moins contenir les entrées [code]name[/code] et "
"[code]type[/code].\n"
"Vous pouvez utiliser [method _property_can_revert] et [method "
"_property_get_revert] pour personnaliser les valeurs par défaut des "
"propriétés ajoutées par cette méthode.\n"
"L'exemple ci-dessous affiche une liste de nombres indiqués comme mots allant "
"de [code]ZERO[/code] à [code]CINQ[/code], avec [code]compte_nombre[/code] "
"contrôlant la taille de la liste :\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var compte_nombre = 3:\n"
"\tset(cn):\n"
"\t\tcompte_nombre = cn\n"
"\t\tnombres.resize(compte_nombre)\n"
"\t\tnotify_property_list_changed()\n"
"\n"
"var nombres = PackedInt32Array([0, 0, 0])\n"
"\n"
"func _get_property_list():\n"
"\tvar proprietes = []\n"
"\n"
"\tfor i in range(compte_nombre):\n"
"\t\tproprietes.append({\n"
"\t\t\t\"name\": \"nombre_%d\" % i,\n"
"\t\t\t\"type\": TYPE_INT,\n"
"\t\t\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\t\t\"hint_string\": \"ZERO,UN,DEUX,TROIS,QUATRE,CINQ\",\n"
"\t\t})\n"
"\n"
"\treturn proprietes\n"
"\n"
"func _get(property):\n"
"\tif property.begins_with(\"nombre_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\treturn nombres[index]\n"
"\n"
"func _set(property, value):\n"
"\tif property.begins_with(\"nombre_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\tnombres[index] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MonNoeud : Node\n"
"{\n"
"\tprivate int _compteNombre;\n"
"\n"
"\t[Export]\n"
"\tpublic int CompteNombre\n"
"\t{\n"
"\t\tget => _compteNombre;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_compteNombre = value;\n"
"\t\t\t_nombres.Resize(_compteNombre);\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\tprivate Godot.Collections.Array<int> _nombres = [];\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"\t{\n"
"\t\tGodot.Collections.Array<Godot.Collections.Dictionary> proprietes = [];\n"
"\n"
"\t\tfor (int i = 0; i < _compteNombre; i++)\n"
"\t\t{\n"
"\t\t\tproprietes.Add(new Godot.Collections.Dictionary()\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", $\"nombre_{i}\" },\n"
"\t\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t\t\t{ \"hint\", (int)PropertyHint.Enum },\n"
"\t\t\t\t{ \"hint_string\", \"Zero,Un,Deux,Trois,Quatre,Cinq\" },\n"
"\t\t\t});\n"
"\t\t}\n"
"\n"
"\t\treturn proprietes;\n"
"\t}\n"
"\n"
"\tpublic override Variant _Get(StringName property)\n"
"\t{\n"
"\t\tstring nomPropriete = property.ToString();\n"
"\t\tif (nomPropriete.StartsWith(\"nombre_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(nomPropriete.Substring(\"nombre_\".Length));\n"
"\t\t\treturn _nombres[index];\n"
"\t\t}\n"
"\t\treturn default;\n"
"\t}\n"
"\n"
"\tpublic override bool _Set(StringName property, Variant value)\n"
"\t{\n"
"\t\tstring nomPropriete = property.ToString();\n"
"\t\tif (nomPropriete.StartsWith(\"nombre_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(nomPropriete.Substring(\"nombre_\".Length));\n"
"\t\t\t_nombres[index] = value.As<int>();\n"
"\t\t\treturn true;\n"
"\t\t}\n"
"\t\treturn false;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Cette méthode est destinée à des fins avancées. Pour la plupart "
"des cas d'utilisation courants, les langages de script offrent des façons "
"plus faciles de gérer les propriétés. Voir [annotation @GDScript.@export], "
"[annotation @GDScript.@export_enum], [annotation @GDScript.@export_group], "
"etc... Si vous voulez personnaliser les propriétés exportées, utilisez "
"[method _validate_property].\n"
"[b]Note :[/b] Si le script de l'objet n'a pas l'annotation [annotation "
"@GDScript.@tool], cette méthode ne sera pas appelée dans l'éditeur."

msgid ""
"Called when the object's script is instantiated, oftentimes after the object "
"is initialized in memory (through [code]Object.new()[/code] in GDScript, or "
"[code]new GodotObject[/code] in C#). It can be also defined to take in "
"parameters. This method is similar to a constructor in most programming "
"languages.\n"
"[b]Note:[/b] If [method _init] is defined with [i]required[/i] parameters, "
"the Object with script may only be created directly. If any other means (such "
"as [method PackedScene.instantiate] or [method Node.duplicate]) are used, the "
"script's initialization will fail."
msgstr ""
"Appelé lorsque le script de l'objet est instancié, souvent après "
"l'initialisation de l'objet en mémoire (via [code]Object.new()[/code] en "
"GDScript, ou [code]new GodotObject[/code] en C#). Elle peut également être "
"définie pour prendre des paramètres. Cette méthode est semblable à un "
"constructeur dans la plupart des langages de programmation.\n"
"[b]Note :[/b] Si [method _init] est défini avec des paramètres "
"[i]obligatoires[/i], l'Object avec le script ne peut être créé que "
"directement. Si d'autres moyens (comme [method PackedScene.instantiate] ou "
"[method Node.duplicate]) sont utilisés, l'initialisation du script échouera."

msgid ""
"Returns the current iterable value. [param iter] stores the iteration state, "
"but unlike [method _iter_init] and [method _iter_next] the state is supposed "
"to be read-only, so there is no [Array] wrapper.\n"
"[b]Tip:[/b] In GDScript, you can use a subtype of [Variant] as the return "
"type for [method _iter_get]. The specified type will be used to set the type "
"of the iterator variable in [code]for[/code] loops, enhancing type safety."
msgstr ""
"Renvoie la valeur itérable courante. [param iter] stocke l'état de "
"l'itération, mais contrairement à [method _iter_init] et [method _iter_next], "
"l'état est censé être en lecture seule, donc il n'y a pas de wrapper "
"[Array].\n"
"[b]Astuce :[/b] En GDScript, vous pouvez utiliser un sous-type de [Variant] "
"comme type de retour pour [method _iter_get]. Le type spécifié sera utilisé "
"pour définir le type de la variable d'itération dans les boucles [code]for[/"
"code], améliorant la sûreté du typage."

msgid ""
"Initializes the iterator. [param iter] stores the iteration state. Since "
"GDScript does not support passing arguments by reference, a single-element "
"array is used as a wrapper. Returns [code]true[/code] so long as the iterator "
"has not reached the end.\n"
"[codeblock]\n"
"class MyRange:\n"
"\tvar _from\n"
"\tvar _to\n"
"\n"
"\tfunc _init(from, to):\n"
"\t\tassert(from <= to)\n"
"\t\t_from = from\n"
"\t\t_to = to\n"
"\n"
"\tfunc _iter_init(iter):\n"
"\t\titer[0] = _from\n"
"\t\treturn iter[0] < _to\n"
"\n"
"\tfunc _iter_next(iter):\n"
"\t\titer[0] += 1\n"
"\t\treturn iter[0] < _to\n"
"\n"
"\tfunc _iter_get(iter):\n"
"\t\treturn iter\n"
"\n"
"func _ready():\n"
"\tvar my_range = MyRange.new(2, 5)\n"
"\tfor x in my_range:\n"
"\t\tprint(x) # Prints 2, 3, 4.\n"
"[/codeblock]\n"
"[b]Note:[/b] Alternatively, you can ignore [param iter] and use the object's "
"state instead, see [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_advanced.html#custom-iterators]online docs[/url] for an example. "
"Note that in this case you will not be able to reuse the same iterator "
"instance in nested loops. Also, make sure you reset the iterator state in "
"this method if you want to reuse the same instance multiple times."
msgstr ""
"Initialise l'itérateur. [param iter] stocke l'état d'itération. Puisque "
"GDScript ne supporte pas le passage d'arguments par référence, un tableau "
"avec un seul élément est utilisé comme wrapper. Renvoie [code]true[/code] "
"tant que l'itérateur n'a pas atteint la fin.\n"
"[codeblock]\n"
"class MonIntervalle:\n"
"\tvar _de\n"
"\tvar _vers\n"
"\n"
"\tfunc _init(de, vers):\n"
"\t\tassert(de <= vers)\n"
"\t\t_de = de\n"
"\t\t_vers = vers\n"
"\n"
"\tfunc _iter_init(iter):\n"
"\t\titer[0] = _de\n"
"\t\treturn iter[0] < _vers\n"
"\n"
"\tfunc _iter_next(iter):\n"
"\t\titer[0] += 1\n"
"\t\treturn iter[0] < _vers\n"
"\n"
"\tfunc _iter_get(iter):\n"
"\t\treturn iter\n"
"\n"
"func _ready():\n"
"\tvar mon_intervalle = MonIntervalle.new(2, 5)\n"
"\tfor x in mon_intervalle:\n"
"\t\tprint(x) # Affiche 2, 3, 4.\n"
"[/codeblock]\n"
"[b]Note :[/b] Sinon, vous pouvez ignorer [param iter] et utiliser l'état de "
"l'objet à la place, voir [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_advanced.html#custom-iterators]la documentation en ligne[/url] par "
"exemple. Notez que dans ce cas vous ne serez pas en mesure de réutiliser la "
"même instance d'itérateur dans les boucles imbriquées. Assurez-vous également "
"de réinitialiser l'état de l'itérateur dans cette méthode si vous voulez "
"réutiliser la même instance plusieurs fois."

msgid ""
"Moves the iterator to the next iteration. [param iter] stores the iteration "
"state. Since GDScript does not support passing arguments by reference, a "
"single-element array is used as a wrapper. Returns [code]true[/code] so long "
"as the iterator has not reached the end."
msgstr ""
"Déplace l'itérateur à la prochaine itération. [param iter] stocke l'état de "
"l'itération. Puisque GDScript ne supporte pas les arguments de passés par "
"référence, un tableau avec un seul élément est utilisé comme wrapper. Renvoie "
"[code]true[/code] tant que l'itérateur n'a pas atteint la fin."

msgid ""
"Called when the object receives a notification, which can be identified in "
"[param what] by comparing it with a constant. See also [method "
"notification].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_PREDELETE:\n"
"\t\tprint(\"Goodbye!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Notification(int what)\n"
"{\n"
"\tif (what == NotificationPredelete)\n"
"\t{\n"
"\t\tGD.Print(\"Goodbye!\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The base [Object] defines a few notifications ([constant "
"NOTIFICATION_POSTINITIALIZE] and [constant NOTIFICATION_PREDELETE]). "
"Inheriting classes such as [Node] define a lot more notifications, which are "
"also received by this method.\n"
"[b]Note:[/b] Unlike other virtual methods, this method is called "
"automatically for every script that overrides it. This means that the base "
"implementation should not be called via [code]super[/code] in GDScript or its "
"equivalents in other languages."
msgstr ""
"Appelée lorsque l'objet reçoit une notification, qui peut être identifiée "
"dans [param what] en la comparant à une constante. Voir aussi [method "
"notification].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_PREDELETE:\n"
"\t\tprint(\"Au revoir !\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Notification(int what)\n"
"{\n"
"\tif (what == NotificationPredelete)\n"
"\t{\n"
"\t\tGD.Print(\"Au revoir !\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] L'[Object] de base définit quelques notifications ([constant "
"NOTIFICATION_POSTINITIALIZE] et [constant NOTIFICATION_PREDELETE]). Les "
"classes dérivées telles que [Node] définissent beaucoup plus de "
"notifications, qui sont également reçues par cette méthode.\n"
"[b]Note :[/b] Contrairement à d'autres méthodes virtuelles, cette méthode est "
"appelée automatiquement pour chaque script qui la redéfinit. Cela signifie "
"que l'implémentation de base ne doit pas être appelée via [code]super[/code] "
"en GDScript ou ses équivalents dans d'autres langages."

msgid ""
"Override this method to customize the given [param property]'s revert "
"behavior. Should return [code]true[/code] if the [param property] has a "
"custom default value and is revertible in the Inspector dock. Use [method "
"_property_get_revert] to specify the [param property]'s default value.\n"
"[b]Note:[/b] This method must return consistently, regardless of the current "
"value of the [param property]."
msgstr ""
"Redéfinissez cette méthode pour personnaliser le comportement de restauration "
"de la propriété [param property] donnée. Doit renvoyer [code]true[/code] si "
"la propriété [param property] a une valeur par défaut personnalisée et est "
"réversible dans le dock Inspecteur. Utilisez [method _property_get_revert] "
"pour spécifier la valeur par défaut de [param property].\n"
"[b]Note :[/b] Cette méthode doit renvoyer systématiquement, peu importe la "
"valeur actuelle de [param property]."

msgid ""
"Override this method to customize the given [param property]'s revert "
"behavior. Should return the default value for the [param property]. If the "
"default value differs from the [param property]'s current value, a revert "
"icon is displayed in the Inspector dock.\n"
"[b]Note:[/b] [method _property_can_revert] must also be overridden for this "
"method to be called."
msgstr ""
"Redéfinissez cette méthode pour personnaliser le comportement de restauration "
"de la propriété [param property] donnée. Devrait renvoyer la valeur par "
"défaut de [param property]. Si la valeur par défaut diffère de la valeur "
"actuele de [param property], une icône de restauration est affichée dans le "
"dock Inspecteur.\n"
"[b]Note :[/b] [method _property_can_revert] doit aussi être redéfinie pour "
"que cette méthode soit appelée."

msgid ""
"Override this method to customize the behavior of [method set]. Should set "
"the [param property] to [param value] and return [code]true[/code], or "
"[code]false[/code] if the [param property] should be handled normally. The "
"[i]exact[/i] way to set the [param property] is up to this method's "
"implementation.\n"
"Combined with [method _get] and [method _get_property_list], this method "
"allows defining custom properties, which is particularly useful for editor "
"plugins.\n"
"[b]Note:[/b] This method is not called when setting built-in properties of an "
"object, including properties defined with [annotation @GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var internal_data = {}\n"
"\n"
"func _set(property, value):\n"
"\tif property == \"fake_property\":\n"
"\t\t# Storing the value in the fake property.\n"
"\t\tinternal_data[\"fake_property\"] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fake_property\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"private Godot.Collections.Dictionary _internalData = new "
"Godot.Collections.Dictionary();\n"
"\n"
"public override bool _Set(StringName property, Variant value)\n"
"{\n"
"\tif (property == \"FakeProperty\")\n"
"\t{\n"
"\t\t// Storing the value in the fake property.\n"
"\t\t_internalData[\"FakeProperty\"] = value;\n"
"\t\treturn true;\n"
"\t}\n"
"\n"
"\treturn false;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FakeProperty\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Redéfinissez cette méthode pour personnaliser le comportement de [method "
"set]. Doit définir la propriété [param property] à la valeur [param value] et "
"renvoyer [code]true[/code], ou [code]false[/code] si la propriété [param "
"property] devrait être manipulée normalement. La façon [i]exacte[/i] de "
"configurer [param property] dépend de l'implémentation de cette méthode.\n"
"Combiné avec [method _get] et [method _get_property_list], cette méthode "
"permet de définir des propriétés personnalisées, ce qui est particulièrement "
"utile pour les plugins éditeurs.\n"
"[b]Note :[/b] Cette méthode n'est pas appelée lorsque vous définissez des "
"propriétés intégrées d'un objet, y compris les propriétés définies par "
"[annotation @GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var donnees_internes = {}\n"
"\n"
"func _set(property, value):\n"
"\tif property == \"fausse_propriete\":\n"
"\t\t# Stocker la valeur dans la fausse propriété.\n"
"\t\tdonnees_internes[\"fausse_propriete\"] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fausse_propriete\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"private Godot.Collections.Dictionary _donneesInternes= new "
"Godot.Collections.Dictionary();\n"
"\n"
"public override bool _Set(StringName property, Variant value)\n"
"{\n"
"\tif (property == \"FaussePropriete\")\n"
"\t{\n"
"\t\t// Stocker la valeur dans la fausse propriété.\n"
"\t\t_donneesInternes[\"FaussePropriete\"] = value;\n"
"\t\treturn true;\n"
"\t}\n"
"\n"
"\treturn false;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FaussePropriete\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Override this method to customize the return value of [method to_string], and "
"therefore the object's representation as a [String].\n"
"[codeblock]\n"
"func _to_string():\n"
"\treturn \"Welcome to Godot 4!\"\n"
"\n"
"func _init():\n"
"\tprint(self)       # Prints \"Welcome to Godot 4!\"\n"
"\tvar a = str(self) # a is \"Welcome to Godot 4!\"\n"
"[/codeblock]"
msgstr ""
"Redéfinissez cette méthode pour personnaliser la valeur de renvoi de [method "
"to_string], et donc la représentation de l'objet comme [String].\n"
"[codeblock]\n"
"func _to_string():\n"
"\treturn \"Bienvenue dans Godot 4!\"\n"
"\n"
"func _init():\n"
"\tprint(self)       # Affiche \"Bienvenue dans Godot 4!\n"
"\tvar a = str(self) # a vaut \"Bienvenue dans Godot 4!\n"
"[/codeblock]"

msgid ""
"Override this method to customize existing properties. Every property info "
"goes through this method, except properties added with [method "
"_get_property_list]. The dictionary contents is the same as in [method "
"_get_property_list].\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var is_number_editable: bool:\n"
"\tset(value):\n"
"\t\tis_number_editable = value\n"
"\t\tnotify_property_list_changed()\n"
"@export var number: int\n"
"\n"
"func _validate_property(property: Dictionary):\n"
"\tif property.name == \"number\" and not is_number_editable:\n"
"\t\tproperty.usage |= PROPERTY_USAGE_READ_ONLY\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate bool _isNumberEditable;\n"
"\n"
"\t[Export]\n"
"\tpublic bool IsNumberEditable\n"
"\t{\n"
"\t\tget => _isNumberEditable;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_isNumberEditable = value;\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\t[Export]\n"
"\tpublic int Number { get; set; }\n"
"\n"
"\tpublic override void _ValidateProperty(Godot.Collections.Dictionary "
"property)\n"
"\t{\n"
"\t\tif (property[\"name\"].AsStringName() == PropertyName.Number && !"
"IsNumberEditable)\n"
"\t\t{\n"
"\t\t\tvar usage = property[\"usage\"].As<PropertyUsageFlags>() | "
"PropertyUsageFlags.ReadOnly;\n"
"\t\t\tproperty[\"usage\"] = (int)usage;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Redéfinissez cette méthode pour personnaliser les propriétés existantes. "
"Chaque info de propriété passe par cette méthode, sauf les propriétés "
"ajoutées avec [method _get_property_list]. Le contenu du dictionnaire est le "
"même que dans [method _get_property_list].\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var le_nombre_est_modifiable: bool:\n"
"\tset(value):\n"
"\t\tle_nombre_est_modifiable = value\n"
"\t\tnotify_property_list_changed()\n"
"@export var nombre: int\n"
"\n"
"func _validate_property(property: Dictionary):\n"
"\tif property.name == \"nombre\" and not le_nombre_est_modifiable:\n"
"\t\tproperty.usage |= PROPERTY_USAGE_READ_ONLY\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate bool _leNombreEstModifiable;\n"
"\n"
"\t[Export]\n"
"\tpublic bool LeNombreEstModifiable;\n"
"\t{\n"
"\t\tget => _leNombreEstModifiable;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_leNombreEstModifiable = value;\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\t[Export]\n"
"\tpublic int Nombre { get; set; }\n"
"\n"
"\tpublic override void _ValidateProperty(Godot.Collections.Dictionary "
"property)\n"
"\t{\n"
"\t\tif (property[\"name\"].AsStringName() == PropertyName.Nombre && !"
"LeNombreEstModifiable)\n"
"\t\t{\n"
"\t\t\tvar usage = property[\"usage\"].As<PropertyUsageFlags>() | "
"PropertyUsageFlags.ReadOnly;\n"
"\t\t\tproperty[\"usage\"] = (int)usage;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Adds a user-defined signal named [param signal]. Optional arguments for the "
"signal can be added as an [Array] of dictionaries, each defining a "
"[code]name[/code] [String] and a [code]type[/code] [int] (see [enum "
"Variant.Type]). See also [method has_user_signal] and [method "
"remove_user_signal].\n"
"[codeblocks]\n"
"[gdscript]\n"
"add_user_signal(\"hurt\", [\n"
"\t{ \"name\": \"damage\", \"type\": TYPE_INT },\n"
"\t{ \"name\": \"source\", \"type\": TYPE_OBJECT }\n"
"])\n"
"[/gdscript]\n"
"[csharp]\n"
"AddUserSignal(\"Hurt\",\n"
"[\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"damage\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t},\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"source\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Object },\n"
"\t},\n"
"]);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Ajout d'un signal défini par l'utilisateur nommé [param signal]. Les "
"arguments optionnels du signal peuvent être ajoutés comme un [Array] de "
"dictionnaires, chacun définissant un [String] [code]name[/code] et un [int] "
"[code]type[/code] (voir [enum Variant.Type]). Voir aussi [method "
"has_user_signal] et [method remove_user_signal].\n"
"[codeblocks]\n"
"[gdscript]\n"
"add_user_signal(\"blesse\", [\n"
"\t{ \"name\": \"degats\", \"type\": TYPE_INT },\n"
"\t{ \"name\": \"source\", \"type\": TYPE_OBJECT }\n"
"])\n"
"[/gdscript]\n"
"[csharp]\n"
"AddUserSignal(\"Blesse\",\n"
"[\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"degats\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t},\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"source\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Object },\n"
"\t},\n"
"]);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Calls the [param method] on the object and returns the result. This method "
"supports a variable number of arguments, so parameters can be passed as a "
"comma separated list.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.call(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.Call(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), 1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Appelle la méthode [param method] sur l'objet et renvoie le résultat. Cette "
"méthode supporte un nombre variable d'arguments, ces paramètres étant passés "
"dans une liste séparée par des virgules.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node3D.new()\n"
"noeud.call(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud = new Node3D();\n"
"noeud.Call(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), 1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param method] doit être en snake_case si elle se réfère "
"à une méthode de Godot intégrée. Préférez utiliser les noms exposés dans la "
"classe [code]MethodName[/code] pour éviter d'allouer un nouveau [StringName] "
"à chaque appel."

msgid ""
"Calls the [param method] on the object during idle time. Always returns "
"[code]null[/code], [b]not[/b] the method's result.\n"
"Idle time happens mainly at the end of process and physics frames. In it, "
"deferred calls will be run until there are none left, which means you can "
"defer calls from other deferred calls and they'll still be run in the current "
"idle time cycle. This means you should not call a method deferred from itself "
"(or from a method called by it), as this causes infinite recursion the same "
"way as if you had called the method directly.\n"
"This method supports a variable number of arguments, so parameters can be "
"passed as a comma separated list.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.call_deferred(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.CallDeferred(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), "
"1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method Callable.call_deferred].\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call.\n"
"[b]Note:[/b] If you're looking to delay the function call by a frame, refer "
"to the [signal SceneTree.process_frame] and [signal SceneTree.physics_frame] "
"signals.\n"
"[codeblock]\n"
"var node = Node3D.new()\n"
"# Make a Callable and bind the arguments to the node's rotate() call.\n"
"var callable = node.rotate.bind(Vector3(1.0, 0.0, 0.0), 1.571)\n"
"# Connect the callable to the process_frame signal, so it gets called in the "
"next process frame.\n"
"# CONNECT_ONE_SHOT makes sure it only gets called once instead of every "
"frame.\n"
"get_tree().process_frame.connect(callable, CONNECT_ONE_SHOT)\n"
"[/codeblock]"
msgstr ""
"Appelle la méthode [param method] sur l'objet pendant le temps d'inaction. "
"Renvoie toujours [code]null[/code], [b]pas[/b] le résultat de la méthode.\n"
"Le temps d'inaction se produit principalement à la fin des trames de "
"traitement et de physique. Dans ce cas, les appels différés seront exécutés "
"jusqu'à ce qu'il n'y en ait plus, ce qui signifie que vous pouvez reporter "
"les appels d'autres appels différés et qu'ils seront toujours exécutés dans "
"le cycle de temps d'inaction actuel. Cela signifie que vous ne devriez pas "
"appeler une méthode différée depuis elle-même (ou d'une méthode qu'elle "
"appelle), car cela provoque une récursion infinie de la même manière que si "
"vous aviez appelé la méthode directement.\n"
"Cette méthode prend en charge un nombre variable d'arguments, de sorte que "
"les paramètres peuvent être passés en tant que liste séparée par des "
"virgules.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node3D.new()\n"
"noeud.call_deferred(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud = new Node3D();\n"
"noeud.CallDeferred(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), "
"1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Voir aussi [method Callable.call_deferred].\n"
"[b]Note :[/b] En C#, [param method] doit être en snake_case si elle se réfère "
"à une méthode de Godot intégrée. Préférez utiliser les noms exposés dans la "
"classe [code]MethodName[/code] pour éviter d'allouer un nouveau [StringName] "
"à chaque appel.\n"
"[b]Note :[/b] Si vous cherchez à différer l'appel de fonction d'une trame, "
"reportez-vous aux signaux [signal SceneTree.process_frame] et [signal "
"SceneTree.physics_frame].\n"
"[codeblock]\n"
"var noeud = Node3D.new()\n"
"# Faire un Callable et lier les arguments à l'appel de rotate() du nœud.\n"
"var callable = noeud.rotate.bind(Vector3(1.0, 0.0, 0.0), 1.571)\n"
"# Connecter le Callable au signal process_frame, ainsi, il est appelle à la "
"prochaine trame de traitement.\n"
"# CONNECT_ONE_SHOT s'assure qu'il n'est appelé qu'une fois au lieu de à "
"chaque trame.\n"
"get_tree().process_frame.connect(callable, CONNECT_ONE_SHOT)\n"
"[/codeblock]"

msgid ""
"Calls the [param method] on the object and returns the result. Unlike [method "
"call], this method expects all parameters to be contained inside [param "
"arg_array].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.callv(\"rotate\", [Vector3(1.0, 0.0, 0.0), 1.571])\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.Callv(Node3D.MethodName.Rotate, [new Vector3(1f, 0f, 0f), 1.571f]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Appelle la méthode [param method] sur l'objet et renvoie le résultat. "
"Contrairement à [method call], cette méthode s'attend à ce que tous les "
"paramètres soient dans le tableau [param arg_array] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node3D.new()\n"
"noeud.callv(\"rotate\", [Vector3(1.0, 0.0, 0.0), 1.571])\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud = new Node3D();\n"
"noeud.Callv(Node3D.MethodName.Rotate, [new Vector3(1f, 0f, 0f), 1.571f]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param method] doit être en snake_case si elle se réfère "
"à une méthode de Godot intégrée. Préférez utiliser les noms exposés dans la "
"classe [code]MethodName[/code] pour éviter d'allouer un nouveau [StringName] "
"à chaque appel."

msgid ""
"Returns [code]true[/code] if the object is allowed to translate messages with "
"[method tr] and [method tr_n]. See also [method set_message_translation]."
msgstr ""
"Renvoie [code]true[/code] si l'objet est autorisé à traduire des messages "
"avec [method tr] et [method tr_n]. Voir aussi [method "
"set_message_translation]."

msgid ""
"If this method is called during [constant NOTIFICATION_PREDELETE], this "
"object will reject being freed and will remain allocated. This is mostly an "
"internal function used for error handling to avoid the user from freeing "
"objects when they are not intended to."
msgstr ""
"Si cette méthode est appelée pendant [constant NOTIFICATION_PREDELETE], cet "
"objet rejettera sa libération et restera alloué. Il s'agit principalement "
"d'une fonction interne utilisée pour la manipulation des erreurs afin "
"d'éviter à l'utilisateur de libérer des objets lorsqu'ils ne sont pas "
"destinés à l'être."

msgid ""
"Connects a [param signal] by name to a [param callable]. Optional [param "
"flags] can be also added to configure the connection's behavior (see [enum "
"ConnectFlags] constants).\n"
"A signal can only be connected once to the same [Callable]. If the signal is "
"already connected, this method returns [constant ERR_INVALID_PARAMETER] and "
"generates an error, unless the signal is connected with [constant "
"CONNECT_REFERENCE_COUNTED]. To prevent this, use [method is_connected] first "
"to check for existing connections.\n"
"[b]Note:[/b] If the [param callable]'s object is freed, the connection will "
"be lost.\n"
"[b]Note:[/b] In GDScript, it is generally recommended to connect signals with "
"[method Signal.connect] instead.\n"
"[b]Note:[/b] This operation (and all other signal related operations) is "
"thread-safe."
msgstr ""
"Connecte un [param signal] par nom à un [param callable]. Des drapeaux [param "
"flags] optionnels peuvent aussi être ajoutés pour configurer le comportement "
"de la connexion (voir les constantes [enum ConnectFlags]).\n"
"Un signal ne peut être connecté qu'une fois au même [Callable]. Si le signal "
"est déjà connecté, cette méthode renvoie [constant ERR_INVALID_PARAMETER] et "
"génère une erreur, sauf si le signal est connecté avec [constant "
"CONNECT_REFERENCE_COUNTED]. Pour éviter cela, utilisez [method is_connected] "
"d'abord pour vérifier les connexions existantes.\n"
"[b]Note :[/b] Si l'objet de [param callable] est libéré, la connexion sera "
"perdue.\n"
"[b]Note :[/b] En GDScript, il est généralement recommandé de connecter des "
"signaux avec [method Signal.connect] à la place.\n"
"[b]Note :[/b] Cette opération (et toutes les autres opérations reliées au "
"signal) est thread-safe."

msgid ""
"Disconnects a [param signal] by name from a given [param callable]. If the "
"connection does not exist, generates an error. Use [method is_connected] to "
"make sure that the connection exists."
msgstr ""
"Déconnecte un [param signal] par nom depuis un [param callable] donné. Si la "
"connexion n'existe pas, génère une erreur. Utilisez [method is_connected] "
"pour vous assurer que la connexion existe."

msgid ""
"Emits the given [param signal] by name. The signal must exist, so it should "
"be a built-in signal of this class or one of its inherited classes, or a user-"
"defined signal (see [method add_user_signal]). This method supports a "
"variable number of arguments, so parameters can be passed as a comma "
"separated list.\n"
"Returns [constant ERR_UNAVAILABLE] if [param signal] does not exist or the "
"parameters are invalid.\n"
"[codeblocks]\n"
"[gdscript]\n"
"emit_signal(\"hit\", \"sword\", 100)\n"
"emit_signal(\"game_over\")\n"
"[/gdscript]\n"
"[csharp]\n"
"EmitSignal(SignalName.Hit, \"sword\", 100);\n"
"EmitSignal(SignalName.GameOver);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot signals. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Émet le [param signal] donné par nom. Le signal doit exister, ainsi il "
"devrait être un signal intégré de cette classe ou une de ses classes "
"héritées, ou un signal défini par l'utilisateur (voir [method "
"add_user_signal]). Cette méthode prend en charge un nombre variable "
"d'arguments, de sorte que les paramètres peuvent être passés en tant que "
"liste séparée par des virgules.\n"
"Renvoie [constant ERR_UNAVAILABLE] si [param signal] n'existe pas ou si les "
"paramètres sont invalides.\n"
"[codeblocks]\n"
"[gdscript]\n"
"emit_signal(\"touche\", \"epee\", 100)\n"
"emit_signal(\"game_over\")\n"
"[/gdscript]\n"
"[csharp]\n"
"EmitSignal(SignalName. Touche, \"Epee\", 100);\n"
"EmitSignal(SignalName.GameOver);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param signal] doit être en snake_case lorsqu'il s'agit "
"de signaux Godot intégrés. Préférez utiliser les noms exposés dans la classe "
"[code]SignalName[/code] pour éviter d'allouer un nouveau [StringName] à "
"chaque appel."

msgid ""
"Deletes the object from memory. Pre-existing references to the object become "
"invalid, and any attempt to access them will result in a runtime error. "
"Checking the references with [method @GlobalScope.is_instance_valid] will "
"return [code]false[/code]. This is equivalent to the [code]memdelete[/code] "
"function in GDExtension C++."
msgstr ""
"Supprime l'objet de la mémoire. Les références préexistantes à l'objet "
"deviennent invalides, et toute tentative d'y accéder entraînera une erreur "
"d'exécution. Vérifier les références avec [method "
"@GlobalScope.is_instance_valid] renverra [code]false[/code]. Ceci est "
"équivalent à la fonction [code]memdelete[/code] dans la GDExtension C++."

msgid ""
"Returns the [Variant] value of the given [param property]. If the [param "
"property] does not exist, this method returns [code]null[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.rotation = 1.5\n"
"var a = node.get(\"rotation\") # a is 1.5\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Rotation = 1.5f;\n"
"var a = node.Get(Node2D.PropertyName.Rotation); // a is 1.5\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Renvoie la valeur [Variant] de la propriété [param property] donnée. Si la "
"propriété [param property] n'existe pas, cette méthode renvoie [code]null[/"
"code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node2D.new()\n"
"noeud.rotation = 1.5\n"
"var a = noeud.get(\"rotation\") # a vaut 1.5\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud= new Node2D();\n"
"noeud.Rotation = 1.5f;\n"
"var a = noeud.Get(Node2D.PropertyName.Rotation); // a vaut 1.5\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param property] doit être en snake_case si elle se "
"réfère à une propriété de Godot intégrée. Préférez utiliser les noms exposés "
"dans la classe [code]PropertyName[/code] pour éviter d'allouer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Returns the object's built-in class name, as a [String]. See also [method "
"is_class].\n"
"[b]Note:[/b] This method ignores [code]class_name[/code] declarations. If "
"this object's script has defined a [code]class_name[/code], the base, built-"
"in class name is returned instead."
msgstr ""
"Renvoie le nom de la classe intégrée de l'objet, en tant que [String]. Voir "
"aussi [method is_class].\n"
"[b]Note :[/b] Cette méthode ignore les déclarations [code]class_name[/code]. "
"Si le script de cet objet a défini un [code]class_name[/code], le nom de la "
"classe intégrée de base est renvoyé à la place."

msgid ""
"Returns an [Array] of signal connections received by this object. Each "
"connection is represented as a [Dictionary] that contains three entries:\n"
"- [code]signal[/code] is a reference to the [Signal];\n"
"- [code]callable[/code] is a reference to the [Callable];\n"
"- [code]flags[/code] is a combination of [enum ConnectFlags]."
msgstr ""
"Renvoie un [Array] des connexions de signal reçues par cet objet. Chaque "
"connexion est représentée en tant que [Dictionary] contenant trois entrées :\n"
"- [code]signal[/code] est une référence au [Signal];\n"
"- [code]callable[/code] est une référence au [Callable];\n"
"- [code]flags[/code] est une combinaison de [enum ConnectFlags]."

msgid ""
"Gets the object's property indexed by the given [param property_path]. The "
"path should be a [NodePath] relative to the current object and can use the "
"colon character ([code]:[/code]) to access nested properties.\n"
"[b]Examples:[/b] [code]\"position:x\"[/code] or [code]"
"\"material:next_pass:blend_mode\"[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.position = Vector2(5, -10)\n"
"var a = node.get_indexed(\"position\")   # a is Vector2(5, -10)\n"
"var b = node.get_indexed(\"position:y\") # b is -10\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Position = new Vector2(5, -10);\n"
"var a = node.GetIndexed(\"position\");   // a is Vector2(5, -10)\n"
"var b = node.GetIndexed(\"position:y\"); // b is -10\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property_path] must be in snake_case when "
"referring to built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call.\n"
"[b]Note:[/b] This method does not support actual paths to nodes in the "
"[SceneTree], only sub-property paths. In the context of nodes, use [method "
"Node.get_node_and_resource] instead."
msgstr ""
"Obtient la propriété de l'objet indexée par le chemin [param property_path] "
"donné. Le chemin devrait être un [NodePath] par rapport à l'objet courant et "
"peut utiliser des deux-points ([code]:[/code]) pour accéder aux propriétés "
"imbriquées.\n"
"[b]Exemples :[/b] [code]\"position:x\"[/code] ou [code]"
"\"material:next_pass:blend_mode\"[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node2D.new()\n"
"noeud.position = Vector2(5, -10)\n"
"var a = noeud.get_indexed(\"position\")   # a vaut Vector2(5, -10)\n"
"var b = noeud.get_indexed(\"position:y\") # b vaut -10\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud = new Node2D();\n"
"noeud.Position = new Vector2(5, -10);\n"
"var a = noeud.GetIndexed(\"position\");   // a vaut Vector2(5, -10)\n"
"var b = noeud.GetIndexed(\"position:y\"); // b vaut -10\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param property_path] doit être en snake_case si elle se "
"réfère à une propriété de Godot intégrée. Préférez utiliser les noms exposés "
"dans la classe [code]PropertyName[/code] pour éviter d'allouer un nouveau "
"[StringName] à chaque appel.\n"
"[b]Note :[/b] Cette méthode ne supporte pas les chemins réels vers des nœuds "
"dans le [SceneTree], seulement les chemins de sous-propriété. Dans un "
"contexte de nœuds, utilisez plutôt [method Node.get_node_and_resource]."

msgid ""
"Returns the object's unique instance ID. This ID can be saved in "
"[EncodedObjectAsID], and can be used to retrieve this object instance with "
"[method @GlobalScope.instance_from_id].\n"
"[b]Note:[/b] This ID is only useful during the current session. It won't "
"correspond to a similar object if the ID is sent over a network, or loaded "
"from a file at a later time."
msgstr ""
"Renvoie l'identifiant d'instance unique de l'objet. Cet ID peut être "
"enregistré dans [EncodedObjectAsID], et peut être utilisé pour récupérer "
"cette instance objet avec [method @GlobalScope.instance_from_id].\n"
"[b]Note :[/b] Cet identifiant n'est utile que pendant la session en cours. Il "
"ne correspondra pas à un objet similaire si l'ID est envoyé sur un réseau, ou "
"chargé à partir d'un fichier ultérieurement."

msgid ""
"Returns the object's metadata value for the given entry [param name]. If the "
"entry does not exist, returns [param default]. If [param default] is "
"[code]null[/code], an error is also generated.\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Renvoie la valeur d'une métadonnée de l'objet pour le nom [param name] "
"d'entrée donné. Si l'entrée n'existe pas, renvoie [param default]. Si [param "
"default] vaut [code]null[/code], une erreur est également générée.\n"
"[b]Note :[/b] Le nom de la métadonnée doit être un identifiant valide selon "
"la méthode [method StringName.is_valid_identifier].\n"
"[b]Note :[/b] Les métadonnées qui ont un nom commençant par un tiret du bas "
"([code]_[/code]) sont considérées uniquement comme données de l'éditeur. Les "
"métadonnées d'éditeur ne sont pas affichées dans l'Inspecteur et ne doivent "
"pas être modifiées, bien qu'elles puissent encore être trouvées par cette "
"méthode."

msgid ""
"Returns the object's metadata entry names as an [Array] of [StringName]s."
msgstr "Renvoie les métadonnées de l'objet en tant qu'[Array] de [StringName]s."

msgid ""
"Returns the number of arguments of the given [param method] by name.\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Renvoie le nombre d'arguments de la méthode [param method] donnée par nom.\n"
"[b]Note :[/b] En C#, [param method] doit être en snake_case lorsqu'il s'agit "
"de méthodes Godot intégrées. Préférez en utilisant les noms exposés dans la "
"classe [code]MethodName[/code] pour éviter d'attribuer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Returns this object's methods and their signatures as an [Array] of "
"dictionaries. Each [Dictionary] contains the following entries:\n"
"- [code]name[/code] is the name of the method, as a [String];\n"
"- [code]args[/code] is an [Array] of dictionaries representing the "
"arguments;\n"
"- [code]default_args[/code] is the default arguments as an [Array] of "
"variants;\n"
"- [code]flags[/code] is a combination of [enum MethodFlags];\n"
"- [code]id[/code] is the method's internal identifier [int];\n"
"- [code]return[/code] is the returned value, as a [Dictionary];\n"
"[b]Note:[/b] The dictionaries of [code]args[/code] and [code]return[/code] "
"are formatted identically to the results of [method get_property_list], "
"although not all entries are used."
msgstr ""
"Renvoie les méthodes de cet objet et leurs signatures en tant qu'[Array] de "
"dictionnaires. Chaque [Dictionary] contient les entrées suivantes :\n"
"- [code]name[/code] est le nom de la méthode, en tant que [String];\n"
"- [code]args[/code] est un [Array] de dictionnaires représentant les "
"arguments;\n"
"- [code]default_args[/code] est les arguments par défaut comme [Array] de "
"Variants;\n"
"- [code]flags[/code] est une combinaison de [enum MethodFlags];\n"
"- [code]id[/code] est l'identifiant interne ([int]) de la méthode;\n"
"- [code]return[/code] est la valeur renvoyée, en tant que [Dictionary];\n"
"[b]Note :[/b] Les dictionnaires de [code]args[/code] et [code]return[/code] "
"sont formatés de façon identique aux résultats de [method get_property_list], "
"bien que toutes les entrées ne soient pas utilisées."

msgid ""
"Returns the object's property list as an [Array] of dictionaries. Each "
"[Dictionary] contains the following entries:\n"
"- [code]name[/code] is the property's name, as a [String];\n"
"- [code]class_name[/code] is an empty [StringName], unless the property is "
"[constant TYPE_OBJECT] and it inherits from a class;\n"
"- [code]type[/code] is the property's type, as an [int] (see [enum "
"Variant.Type]);\n"
"- [code]hint[/code] is [i]how[/i] the property is meant to be edited (see "
"[enum PropertyHint]);\n"
"- [code]hint_string[/code] depends on the hint (see [enum PropertyHint]);\n"
"- [code]usage[/code] is a combination of [enum PropertyUsageFlags].\n"
"[b]Note:[/b] In GDScript, all class members are treated as properties. In C# "
"and GDExtension, it may be necessary to explicitly mark class members as "
"Godot properties using decorators or attributes."
msgstr ""
"Renvoie la liste des propriétés de l'objet en tant qu'[Array] de "
"dictionnaires. Chaque [Dictionary] contient les entrées suivantes :\n"
"- [code]name[/code] est le nom de la propriété, en tant que [String];\n"
"- [code]class_name[/code] est un [StringName] vide, sauf si la propriété du "
"type [constant TYPE_OBJECT] et qu'elle hérite d'une classe;\n"
"- [code]type[/code] est le type de la propriété, en tant qu'[int] (voir [enum "
"Variant.Type]);\n"
"- [code]hint[/code] indique [i]comment[/i] la propriété est destinée à être "
"modifiée (voir [enum PropertyHint]);\n"
"- [code]hint_string[/code] dépend de \"hint\" (voir [enum PropertyHint]);\n"
"- [code]usage[/code] est une combinaison de drapeaux [enum "
"PropertyUsageFlags].\n"
"[b]Note :[/b] En GDScript, tous les membres de classe sont traités comme des "
"propriétés. En C# et en GDExtension, il peut être nécessaire de marquer "
"explicitement les membres de classe comme des propriétés Godot en utilisant "
"des décorateurs ou des attributs."

msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if no script is "
"attached."
msgstr ""
"Renvoie l'instance de [Script] de l'objet, ou [code]null[/code] si aucun "
"script n'est attaché."

msgid ""
"Returns an [Array] of connections for the given [param signal] name. Each "
"connection is represented as a [Dictionary] that contains three entries:\n"
"- [code skip-lint]signal[/code] is a reference to the [Signal];\n"
"- [code]callable[/code] is a reference to the connected [Callable];\n"
"- [code]flags[/code] is a combination of [enum ConnectFlags]."
msgstr ""
"Renvoie un [Array] des connexions pour le nom de signal [param signal] donné. "
"Chaque connexion est représentée en tant que [Dictionary] qui contient trois "
"entrées :\n"
"- [code skip-lint]signal[/code] est une référence au [Signal];\n"
"- [code]callable[/code] est une référence au [Callable] connecté;\n"
"- [code]flags[/code] est une combinaison de drapeaux [enum ConnectFlags]."

msgid ""
"Returns the list of existing signals as an [Array] of dictionaries.\n"
"[b]Note:[/b] Due of the implementation, each [Dictionary] is formatted very "
"similarly to the returned values of [method get_method_list]."
msgstr ""
"Renvoie la liste des signaux existants en tant qu'[Array] de dictionnaires.\n"
"[b]Note :[/b] À cause de l'implémentation, chaque [Dictionary] est formaté de "
"manière très similaire aux valeurs renvoyées par [method get_method_list]."

msgid ""
"Returns the name of the translation domain used by [method tr] and [method "
"tr_n]. See also [TranslationServer]."
msgstr ""
"Renvoie le nom du domaine de traduction utilisé par [method tr] et [method "
"tr_n]. Voir aussi [TranslationServer]."

msgid ""
"Returns [code]true[/code] if any connection exists on the given [param "
"signal] name.\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Renvoie [code]true[/code] si une connexion existe sur le nom de [param "
"signal] donné.\n"
"[b]Note :[/b] En C#, [param signal] doit être en snake_case lorsqu'il s'agit "
"de signaux Godot intégrés. Préférez utiliser les noms exposés dans la classe "
"[code]SignalName[/code] pour éviter d'allouer un nouveau [StringName] à "
"chaque appel."

msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given [param "
"name]. See also [method get_meta], [method set_meta] and [method "
"remove_meta].\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Renvoie [code]true[/code] si une entrée de métadonnées est trouvée avec le "
"nom [param name] donné. Voir aussi [method get_meta], [method set_meta] et "
"[method remove_meta].\n"
"[b]Note :[/b] Le nom d'une métadonnée doit être un identifiant valide selon "
"la méthode [method StringName.is_valid_identifier].\n"
"[b]Note :[/b] Les métadonnées qui ont un nom commençant par un tiret du bas "
"([code]_[/code]) sont considérées uniquement comme données de l'éditeur. Les "
"métadonnées d'éditeur ne sont pas affichées dans l'Inspecteur et ne doivent "
"pas être modifiées, bien qu'elles puissent encore être trouvées par cette "
"méthode."

msgid ""
"Returns [code]true[/code] if the given [param method] name exists in the "
"object.\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Renvoie [code]true[/code] si le nom de méthode [param method] donné existe "
"dans l'objet.\n"
"[b]Note :[/b] En C#, [param method] doit être en snake_case lorsqu'il s'agit "
"de méthodes Godot intégrées. Préférez utiliser les noms exposés dans la "
"classe [code]MethodName[/code] pour éviter d'attribuer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Returns [code]true[/code] if the given [param signal] name exists in the "
"object.\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot signals. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Renvoie [code]true[/code] si le nom de signal [param signal] donné existe "
"dans l'objet.\n"
"[b]Note :[/b] En C#, [param signal] doit être en snake_case lorsqu'il s'agit "
"de signaux Godot intégrés. Préférez utiliser les noms exposés dans la classe "
"[code]SignalName[/code] pour éviter d'attribuer un nouveau [StringName] à "
"chaque appel."

msgid ""
"Returns [code]true[/code] if the given user-defined [param signal] name "
"exists. Only signals added with [method add_user_signal] are included. See "
"also [method remove_user_signal]."
msgstr ""
"Renvoie [code]true[/code] si le nom de signal [param signal] défini par "
"l'utilisateur existe. Seuls les signaux ajoutés avec [method add_user_signal] "
"sont inclus. Voir aussi [method remove_user_signal]."

msgid ""
"Returns [code]true[/code] if the object is blocking its signals from being "
"emitted. See [method set_block_signals]."
msgstr ""
"Renvoie [code]true[/code] si l'objet bloque l'émission de ses signaux. Voir "
"[method set_block_signals]."

msgid ""
"Returns [code]true[/code] if the object inherits from the given [param "
"class]. See also [method get_class].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sprite2d = Sprite2D.new()\n"
"sprite2d.is_class(\"Sprite2D\") # Returns true\n"
"sprite2d.is_class(\"Node\")     # Returns true\n"
"sprite2d.is_class(\"Node3D\")   # Returns false\n"
"[/gdscript]\n"
"[csharp]\n"
"var sprite2D = new Sprite2D();\n"
"sprite2D.IsClass(\"Sprite2D\"); // Returns true\n"
"sprite2D.IsClass(\"Node\");     // Returns true\n"
"sprite2D.IsClass(\"Node3D\");   // Returns false\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method ignores [code]class_name[/code] declarations in the "
"object's script."
msgstr ""
"Renvoie [code]true[/code] si l'objet hérite de la [param class] donnée. Voir "
"aussi [method get_class].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sprite2d = Sprite2D.new()\n"
"sprite2d.is_class(\"Sprite2D\") # Renvoie true\n"
"sprite2d.is_class(\"Node\")     # Renvoie true\n"
"sprite2d.is_class(\"Node3D\")   # Renvoie false\n"
"[/gdscript]\n"
"[csharp]\n"
"var sprite2D = new Sprite2D();\n"
"sprite2D.IsClass(\"Sprite2D\"); // Renvoie true\n"
"sprite2D.IsClass(\"Node\");     // Renvoie true\n"
"sprite2D.IsClass(\"Node3D\");   // Renvoie false\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Cette méthode ignore les déclarations [code]class_name[/code] "
"dans le script de l'objet."

msgid ""
"Returns [code]true[/code] if a connection exists between the given [param "
"signal] name and [param callable].\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot signals. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Renvoie [code]true[/code] si une connexion existe entre le nom de [param "
"signal] et le [param callable] donnés.\n"
"[b]Note :[/b] En C#, [param signal] doit être en snake_case lorsqu'il s'agit "
"de signaux Godot intégrés. Préférez utiliser les noms exposés dans la classe "
"[code]SignalName[/code] pour éviter d'allouer un nouveau [StringName] à "
"chaque appel."

msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
"Renvoie [code]true[/code] si la méthode [method Node.queue_free] a été "
"appelée pour cet objet."

msgid ""
"Sends the given [param what] notification to all classes inherited by the "
"object, triggering calls to [method _notification], starting from the highest "
"ancestor (the [Object] class) and going down to the object's script.\n"
"If [param reversed] is [code]true[/code], the call order is reversed.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var player = Node2D.new()\n"
"player.set_script(load(\"res://player.gd\"))\n"
"\n"
"player.notification(NOTIFICATION_ENTER_TREE)\n"
"# The call order is Object -> Node -> Node2D -> player.gd.\n"
"\n"
"player.notification(NOTIFICATION_ENTER_TREE, true)\n"
"# The call order is player.gd -> Node2D -> Node -> Object.\n"
"[/gdscript]\n"
"[csharp]\n"
"var player = new Node2D();\n"
"player.SetScript(GD.Load(\"res://player.gd\"));\n"
"\n"
"player.Notification(NotificationEnterTree);\n"
"// The call order is GodotObject -> Node -> Node2D -> player.gd.\n"
"\n"
"player.Notification(NotificationEnterTree, true);\n"
"// The call order is player.gd -> Node2D -> Node -> GodotObject.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Envoie la notification [param what] donnée à toutes les classes héritées par "
"l'objet, déclenchant des appels à [method _notification], à partir du plus "
"haut ancêtre (la classe [Object]) et descendant vers le script de l'objet.\n"
"Si [param reversed] vaut [code]true[/code], l'ordre d'appel est inversé.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var joueur = Node2D.new()\n"
"joueur.set_script(load(\"res://joueur.gd\"))\n"
"\n"
"joueur.notification(NOTIFICATION_ENTER_TREE)\n"
"# L'ordre d'appel est Object -> Node -> Node2D -> joueur.gd.\n"
"\n"
"player.notification(NOTIFICATION_ENTER_TREE, true)\n"
"# L'ordre d'appel est joueur.gd -> Node2D -> Node -> Object.\n"
"[/gdscript]\n"
"[csharp]\n"
"var joueur = new Node2D();\n"
"joueur.SetScript(GD.Load(\"res://joueur.gd\"));\n"
"\n"
"joueur.Notification(NotificationEnterTree);\n"
"// L'ordre d'appel est GodotObject -> Node -> Node2D -> joueur.gd.\n"
"\n"
"joueur.Notification(NotificationEnterTree, true);\n"
"// L'ordre d'appel est joueur.gd -> Node2D -> Node -> GodotObject.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Emits the [signal property_list_changed] signal. This is mainly used to "
"refresh the editor, so that the Inspector and editor plugins are properly "
"updated."
msgstr ""
"Émet le signal [signal property_list_changed]. Ceci est principalement "
"utilisé pour rafraîchir l'éditeur, de sorte que l'Inspecteur et les plugins "
"éditeur sont correctement mis à jour."

msgid ""
"Returns [code]true[/code] if the given [param property] has a custom default "
"value. Use [method property_get_revert] to get the [param property]'s default "
"value.\n"
"[b]Note:[/b] This method is used by the Inspector dock to display a revert "
"icon. The object must implement [method _property_can_revert] to customize "
"the default value. If [method _property_can_revert] is not implemented, this "
"method returns [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si la propriété [param property] donnée a une "
"valeur par défaut personnalisée. Utilisez [method property_get_revert] pour "
"obtenir la valeur par défaut de [param property].\n"
"[b]Note :[/b] Cette méthode est utilisée par le dock Inspecteur pour afficher "
"une icône de restauration. L'objet doit implémenter [method "
"_property_can_revert] pour personnaliser la valeur par défaut. Si [method "
"_property_can_revert] n'est pas implémenté, cette méthode renvoie "
"[code]false[/code]."

msgid ""
"Returns the custom default value of the given [param property]. Use [method "
"property_can_revert] to check if the [param property] has a custom default "
"value.\n"
"[b]Note:[/b] This method is used by the Inspector dock to display a revert "
"icon. The object must implement [method _property_get_revert] to customize "
"the default value. If [method _property_get_revert] is not implemented, this "
"method returns [code]null[/code]."
msgstr ""
"Renvoie la valeur par défaut personnalisée de la propriété [param property] "
"donnée. Utilisez [method property_can_revert] pour vérifier si la propriété "
"[param property] a une valeur par défaut personnalisée.\n"
"[b]Note :[/b] Cette méthode est utilisée par le dock Inspecteur pour afficher "
"une icône de restauration. L'objet doit implémenter [method "
"_property_get_revert] pour personnaliser la valeur par défaut. Si [method "
"_property_get_revert] n'est pas implémenté, cette méthode renvoie [code]null[/"
"code]."

msgid ""
"Removes the given entry [param name] from the object's metadata. See also "
"[method has_meta], [method get_meta] and [method set_meta].\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Enlève l'entrée de nom [param name] donnée des métadonnées de l'objet. Voir "
"aussi [method has_meta], [method get_meta] et [method set_meta].\n"
"[b]Note :[/b] Le nom de la métadonnée doit être un identifiant valide selon "
"la méthode [method StringName.is_valid_identifier].\n"
"[b]Note :[/b] Les métadonnées qui ont un nom commençant par un tiret du bas "
"([code]_[/code]) sont considérées uniquement comme données de l'éditeur. Les "
"métadonnées d'éditeur ne sont pas affichées dans l'Inspecteur et ne doivent "
"pas être modifiées, bien qu'elles puissent encore être trouvées par cette "
"méthode."

msgid ""
"Removes the given user signal [param signal] from the object. See also "
"[method add_user_signal] and [method has_user_signal]."
msgstr ""
"Retire le signal utilisateur [param signal] donné de l'objet. Voir aussi "
"[method add_user_signal] et [method has_user_signal]."

msgid ""
"Assigns [param value] to the given [param property]. If the property does not "
"exist or the given [param value]'s type doesn't match, nothing happens.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.set(\"global_scale\", Vector2(8, 2.5))\n"
"print(node.global_scale) # Prints (8.0, 2.5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Set(Node2D.PropertyName.GlobalScale, new Vector2(8, 2.5f));\n"
"GD.Print(node.GlobalScale); // Prints (8, 2.5)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Assigne la valeur [param value] à la propriété [param property] donnée. Si la "
"propriété n'existe pas ou le type de la valeur [param value] donnée ne "
"correspond pas, rien ne se passe.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node2D.new()\n"
"noeud.set(\"global_scale\", Vector2(8, 2.5))\n"
"print(noeud.global_scale) # Affiche (8.0, 2.5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud = new Node2D();\n"
"noeud.Set(Node2D.PropertyName.GlobalScale, new Vector2(8, 2.5f));\n"
"GD.Print(noeud.GlobalScale); // Affiche (8, 2.5)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param property] doit être en snake_case s'il se réfère "
"à une propriété de Godot intégrée. Préférez utiliser les noms exposés dans la "
"classe [code]PropertyName[/code] pour éviter d'allouer un nouveau "
"[StringName] à chaque appel."

msgid ""
"If set to [code]true[/code], the object becomes unable to emit signals. As "
"such, [method emit_signal] and signal connections will not work, until it is "
"set to [code]false[/code]."
msgstr ""
"Si défini à [code]true[/code], l'objet devient incapable d'émettre des "
"signaux. Ainsi, [method emit_signal] et les connexions de signal ne "
"fonctionneront pas, jusqu'à ce que ceci soit défini sur [code]false[/code]."

msgid ""
"Assigns [param value] to the given [param property], at the end of the "
"current frame. This is equivalent to calling [method set] through [method "
"call_deferred].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"add_child(node)\n"
"\n"
"node.rotation = 1.5\n"
"node.set_deferred(\"rotation\", 3.0)\n"
"print(node.rotation) # Prints 1.5\n"
"\n"
"await get_tree().process_frame\n"
"print(node.rotation) # Prints 3.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Rotation = 1.5f;\n"
"node.SetDeferred(Node2D.PropertyName.Rotation, 3f);\n"
"GD.Print(node.Rotation); // Prints 1.5\n"
"\n"
"await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame);\n"
"GD.Print(node.Rotation); // Prints 3.0\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Attribue la valeur [param value] à la propriété [param property] donnée, à la "
"fin de la trame actuelle. Cela équivaut à appeler [method set] par [method "
"call_deferred].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node2D.new()\n"
"add_child(noeud)\n"
"\n"
"noeud.rotation = 1.5\n"
"noeud.set_deferred(\"rotation\", 3.0)\n"
"print(noeud.rotation) # Affiche 1.5\n"
"\n"
"await get_tree().process_frame\n"
"print(noeud.rotation) # Affiche 3.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud = new Node2D();\n"
"noeud.Rotation = 1.5f;\n"
"noeud.SetDeferred(Node2D.PropertyName.Rotation, 3f);\n"
"GD.Print(noeud.Rotation); // Affiche 1.5\n"
"\n"
"await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame);\n"
"GD.Print(noeud.Rotation); // Affiche 3.0\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param property] doit être en snake_case s'il se réfère "
"à une propriété de Godot intégrée. Préférez utiliser les noms exposés dans la "
"classe [code]PropertyName[/code] pour éviter d'allouer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Assigns a new [param value] to the property identified by the [param "
"property_path]. The path should be a [NodePath] relative to this object, and "
"can use the colon character ([code]:[/code]) to access nested properties.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.set_indexed(\"position\", Vector2(42, 0))\n"
"node.set_indexed(\"position:y\", -10)\n"
"print(node.position) # Prints (42.0, -10.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.SetIndexed(\"position\", new Vector2(42, 0));\n"
"node.SetIndexed(\"position:y\", -10);\n"
"GD.Print(node.Position); // Prints (42, -10)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property_path] must be in snake_case when "
"referring to built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Attribue une nouvelle valeur [param value] à la propriété identifiée par le "
"chemin [param property_path]. Le chemin devrait être un [NodePath] relatif à "
"cet objet, et peut utiliser les deux-points ([code]:[/code]) pour accéder à "
"des propriétés imbriquées.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud = Node2D.new()\n"
"noeud.set_indexed(\"position\", Vector2(42, 0))\n"
"noeud.set_indexed(\"position:y\", -10)\n"
"print(noeud.position) # Affiche (42.0, -10.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var noeud = new Node2D();\n"
"noeud.SetIndexed(\"position\", new Vector2(42, 0));\n"
"noeud.SetIndexed(\"position:y\", -10);\n"
"GD.Print(node.Position); // Affiche (42, -10)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, [param property_path] doit être en snake_case s'il se "
"réfère à une propriété de Godot intégrée. Préférez utiliser les noms exposés "
"dans la classe [code]PropertyName[/code] pour éviter d'allouer un nouveau "
"[StringName] à chaque appel."

msgid ""
"If set to [code]true[/code], allows the object to translate messages with "
"[method tr] and [method tr_n]. Enabled by default. See also [method "
"can_translate_messages]."
msgstr ""
"Si défini à [code]true[/code], autorise l'objet à traduire des messages avec "
"[method tr] et [method tr_n]. Activé par défaut. Voir aussi [method "
"can_translate_messages]."

msgid ""
"Adds or changes the entry [param name] inside the object's metadata. The "
"metadata [param value] can be any [Variant], although some types cannot be "
"serialized correctly.\n"
"If [param value] is [code]null[/code], the entry is removed. This is the "
"equivalent of using [method remove_meta]. See also [method has_meta] and "
"[method get_meta].\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Ajoute ou modifie l'entrée [param name] dans les métadonnées de l'objet. La "
"valeur [param value] de la métadonnée peut être n'importe quel [Variant], "
"même si certains types ne peuvent pas être sérialisés correctement.\n"
"Si [param value] vaut [code]null[/code], l'entrée est retirée. C'est "
"l'équivalent d'utiliser [method remove_meta]. Voir aussi [method has_meta] et "
"[method get_meta].\n"
"[b]Note :[/b] Le nom de la métadonnée doit être un identifiant valide selon "
"la méthode [method StringName.is_valid_identifier].\n"
"[b]Note :[/b] Les métadonnées qui ont un nom commençant par un tiret du bas "
"([code]_[/code]) sont considérées uniquement comme données de l'éditeur. Les "
"métadonnées d'éditeur ne sont pas affichées dans l'Inspecteur et ne doivent "
"pas être modifiées, bien qu'elles puissent encore être trouvées par cette "
"méthode."

msgid ""
"Attaches [param script] to the object, and instantiates it. As a result, the "
"script's [method _init] is called. A [Script] is used to extend the object's "
"functionality.\n"
"If a script already exists, its instance is detached, and its property values "
"and state are lost. Built-in property values are still kept."
msgstr ""
"Attache un [param script] à l'objet, et l'instancie. Par conséquent, "
"l'[method _init] du script est appelé. Un [Script] est utilisé pour étendre "
"la fonctionnalité de l'objet.\n"
"Si un script existe déjà, son instance est détachée, et ses valeurs de "
"propriété et son état sont perdus. Les valeurs de propriétés intégrées sont "
"toujours conservées."

msgid ""
"Sets the name of the translation domain used by [method tr] and [method "
"tr_n]. See also [TranslationServer]."
msgstr ""
"Définit le nom du domaine de traduction utilisé par [method tr] et [method "
"tr_n]. Voir aussi [TranslationServer]."

msgid ""
"Returns a [String] representing the object. Defaults to [code]"
"\"<ClassName#RID>\"[/code]. Override [method _to_string] to customize the "
"string representation of the object."
msgstr ""
"Renvoie un [String] représentant l'objet. Vaut par défaut [code]"
"\"<ClassName#RID>\"[/code]. Redéfinissez [method _to_string] pour "
"personnaliser la représentation en chaîne de l'objet."

msgid ""
"Translates a [param message], using the translation catalogs configured in "
"the Project Settings. Further [param context] can be specified to help with "
"the translation. Note that most [Control] nodes automatically translate their "
"strings, so this method is mostly useful for formatted strings or custom "
"drawn text.\n"
"If [method can_translate_messages] is [code]false[/code], or no translation "
"is available, this method returns the [param message] without changes. See "
"[method set_message_translation].\n"
"For detailed examples, see [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Internationalizing games[/url].\n"
"[b]Note:[/b] This method can't be used without an [Object] instance, as it "
"requires the [method can_translate_messages] method. To translate strings in "
"a static context, use [method TranslationServer.translate]."
msgstr ""
"Traduit un [param message], en utilisant les catalogues de traduction "
"configurés dans les Paramètres du projet. Du [param context]e peut être "
"spécifié pour aider à la traduction. Notez que la plupart des nœuds [Control] "
"traduisent automatiquement leurs chaînes, de sorte que cette méthode est "
"surtout utile pour des chaînes formatées ou du texte dessiné personnalisé.\n"
"Si [method can_translate_messages] vaut [code]false[/code], ou qu'aucune "
"traduction n'est disponible, cette méthode renvoie le [param message] sans "
"modification. Voir [method set_message_translation].\n"
"Pour des exemples détaillés, voir [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Internationalisation des jeux[/url].\n"
"[b]Note :[/b] Cette méthode ne peut pas être utilisée sans une instance "
"[Object], car elle nécessite la méthode [method can_translate_messages]. Pour "
"traduire les chaînes dans un contexte statique, utilisez [method "
"TranslationServer.translate]."

msgid ""
"Translates a [param message] or [param plural_message], using the translation "
"catalogs configured in the Project Settings. Further [param context] can be "
"specified to help with the translation.\n"
"If [method can_translate_messages] is [code]false[/code], or no translation "
"is available, this method returns [param message] or [param plural_message], "
"without changes. See [method set_message_translation].\n"
"The [param n] is the number, or amount, of the message's subject. It is used "
"by the translation system to fetch the correct plural form for the current "
"language.\n"
"For detailed examples, see [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]Localization using gettext[/url].\n"
"[b]Note:[/b] Negative and [float] numbers may not properly apply to some "
"countable subjects. It's recommended to handle these cases with [method tr].\n"
"[b]Note:[/b] This method can't be used without an [Object] instance, as it "
"requires the [method can_translate_messages] method. To translate strings in "
"a static context, use [method TranslationServer.translate_plural]."
msgstr ""
"Traduit un message [param message] ou plusieurs messages [param "
"plural_message], en utilisant les catalogues de traduction configurés dans "
"les paramètres du projet. Plus de contexte peut être spécifié avec [param "
"context] pour aider à la traduction.\n"
"Si [method can_translate_messages] vaut [code]false[/code], ou si aucune "
"traduction n'est disponible, cette méthode renvoie [param message] ou [param "
"plural_message], sans modifications. Voir [method set_message_translation].\n"
"Le [param n] est le numéro, ou le montant, du sujet du message. Il est "
"utilisé par le système de traduction pour obtenir la bonne forme plurielle "
"pour la langue actuelle.\n"
"Pour des exemples détaillés, voir [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]Localisation en utilisant gettext[/url].\n"
"[b]Note :[/b] Les nombres négatifs et [float] peuvent ne pas s'appliquer "
"correctement à certains sujets comptables. Il est recommandé de gérer ces cas "
"avec [method tr].\n"
"[b]Note :[/b] Cette méthode ne peut pas être utilisée sans une instance "
"d'[Object], car elle nécessite la méthode [method can_translate_messages]. "
"Pour traduire les chaînes dans un contexte statique, utilisez [method "
"TranslationServer.translate_plural]."

msgid "Emitted when [method notify_property_list_changed] is called."
msgstr "Émis lorsque [method notify_property_list_changed] est appelée."

msgid ""
"Emitted when the object's script is changed.\n"
"[b]Note:[/b] When this signal is emitted, the new script is not initialized "
"yet. If you need to access the new script, defer connections to this signal "
"with [constant CONNECT_DEFERRED]."
msgstr ""
"Émis lorsque le script de l'objet est changé.\n"
"[b]Note :[/b] Lorsque ce signal est émis, le nouveau script n'est pas encore "
"initialisé. Si vous devez accéder au nouveau script, reportez les connexions "
"à ce signal avec [constant CONNECT_DEFERRED]."

msgid ""
"Notification received when the object is initialized, before its script is "
"attached. Used internally."
msgstr ""
"Notification reçue lorsque l'objet est initialisé, avant que son script soit "
"attaché. Utilisé en interne."

msgid ""
"Notification received when the object is about to be deleted. Can be used "
"like destructors in object-oriented programming languages."
msgstr ""
"Notification reçue lorsque l'objet est sur le point d'être supprimé. Peut "
"être utilisé comme destructeurs dans des langages de programmation orientés "
"objet."

msgid ""
"Notification received when the object finishes hot reloading. This "
"notification is only sent for extensions classes and derived."
msgstr ""
"Notification reçue lorsque l'objet termine le rechargement à chaud. Cette "
"notification n'est envoyée que pour les classes d'extension et leurs dérivées."

msgid ""
"Persisting connections are stored when the object is serialized (such as when "
"using [method PackedScene.pack]). In the editor, connections created through "
"the Node dock are always persisting."
msgstr ""
"Les connexions persistantes sont stockées lorsque l'objet est sérialisé "
"(comme lors de l'utilisation de [method PackedScene.pack]). Dans l'éditeur, "
"les connexions créées par le Dock Nœud persistent toujours."

msgid "One-shot connections disconnect themselves after emission."
msgstr "Les connections uniques (one-shot) se déconnectent après l'émission."

msgid ""
"Reference-counted connections can be assigned to the same [Callable] multiple "
"times. Each disconnection decreases the internal counter. The signal fully "
"disconnects only when the counter reaches 0."
msgstr ""
"Les connexions comptées par référence peuvent être assignées au même "
"[Callable] plusieurs fois. Chaque déconnexion diminue le compteur interne. Le "
"signal se déconnecte entièrement seulement lorsque le compteur atteint 0."

msgid ""
"The source object is automatically bound when a [PackedScene] is "
"instantiated. If this flag bit is enabled, the source object will be appended "
"right after the original arguments of the signal."
msgstr ""
"L'objet source est automatiquement lié lorsqu'une [PackedScene] est "
"instanciée. Si ce bit de drapeau est activé, l'objet source sera ajouté juste "
"après les arguments originaux du signal."

msgid ""
"Occluder shape resource for use with occlusion culling in "
"[OccluderInstance3D]."
msgstr ""
"Ressource de forme d'occulteur pour utilisation avec l'occlusion culling dans "
"[OccluderInstance3D]."

msgid ""
"[Occluder3D] stores an occluder shape that can be used by the engine's "
"occlusion culling system.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[Occluder3D] stocke une forme d'occulteur qui peut être utilisée par le "
"système d'occlusion culling du moteur.\n"
"Voir la documentation de [OccluderInstance3D] pour les instructions sur la "
"mise en place de l'occlusion culling."

msgid "Returns the occluder shape's vertex indices."
msgstr "Renvoie les indices des sommets de la forme de l'occulteur."

msgid "Returns the occluder shape's vertex positions."
msgstr "Renvoie les positions des sommets de la forme de l'occulteur."

msgid ""
"Provides occlusion culling for 3D nodes, which improves performance in closed "
"areas."
msgstr ""
"Fournit de l'occlusion culling pour les nœuds 3D, ce qui améliore les "
"performances dans les zones fermées."

msgid ""
"Occlusion culling can improve rendering performance in closed/semi-open areas "
"by hiding geometry that is occluded by other objects.\n"
"The occlusion culling system is mostly static. [OccluderInstance3D]s can be "
"moved or hidden at run-time, but doing so will trigger a background "
"recomputation that can take several frames. It is recommended to only move "
"[OccluderInstance3D]s sporadically (e.g. for procedural generation purposes), "
"rather than doing so every frame.\n"
"The occlusion culling system works by rendering the occluders on the CPU in "
"parallel using [url=https://www.embree.org/]Embree[/url], drawing the result "
"to a low-resolution buffer then using this to cull 3D nodes individually. In "
"the 3D editor, you can preview the occlusion culling buffer by choosing "
"[b]Perspective > Display Advanced... > Occlusion Culling Buffer[/b] in the "
"top-left corner of the 3D viewport. The occlusion culling buffer quality can "
"be adjusted in the Project Settings.\n"
"[b]Baking:[/b] Select an [OccluderInstance3D] node, then use the [b]Bake "
"Occluders[/b] button at the top of the 3D editor. Only opaque materials will "
"be taken into account; transparent materials (alpha-blended or alpha-tested) "
"will be ignored by the occluder generation.\n"
"[b]Note:[/b] Occlusion culling is only effective if [member "
"ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] is "
"[code]true[/code]. Enabling occlusion culling has a cost on the CPU. Only "
"enable occlusion culling if you actually plan to use it. Large open scenes "
"with few or no objects blocking the view will generally not benefit much from "
"occlusion culling. Large open scenes generally benefit more from mesh LOD and "
"visibility ranges ([member GeometryInstance3D.visibility_range_begin] and "
"[member GeometryInstance3D.visibility_range_end]) compared to occlusion "
"culling.\n"
"[b]Note:[/b] Due to memory constraints, occlusion culling is not supported by "
"default in Web export templates. It can be enabled by compiling custom Web "
"export templates with [code]module_raycast_enabled=yes[/code]."
msgstr ""
"L'occlusion culling peut améliorer les performances de rendu dans les zones "
"fermées/semi-ouvertes en cachant la géométrie qui est cachée par d'autres "
"objets.\n"
"Le système d'occlusion culling est essentiellement statique. Des "
"[OccluderInstance3D]s peuvent être déplacés ou cachés durant l'exécution, "
"mais ceci déclenchera un re-calcul de fond qui peut prendre plusieurs trames. "
"Il est recommandé de ne déplacer les [OccluderInstance3D] que sporadiquement "
"(p. ex. à des fins de production procédurale), plutôt que de le faire à "
"chaque trame.\n"
"Le système d'occlusion culling fonctionne en rendant les occulteurs sur le "
"CPU en parallèle en utilisant [url=https://www.embree.org/]Embree[/url], "
"dessinant le résultat vers un buffer à basse résolution, puis en utilisant "
"ceci pour retirer les nœuds 3D individuellement. Dans l'éditeur 3D, vous "
"pouvez prévisualiser le buffer de l'occlusion culling en choisissant "
"[b]Perspective > Afficher avancés... > Buffer de l'occlusion culling[/b] dans "
"le coin supérieur gauche du viseur 3D. La qualité du buffer de l'occlusion "
"culling peut être ajustée dans les paramètres du projet.\n"
"[b]Pré-calculer :[/b] Sélectionnez un nœud [OccluderInstance3D], puis "
"utilisez le bouton [b]Précalculer les occulteurs[/b] en haut de l'éditeur 3D. "
"Seuls les matériaux opaques seront pris en compte, les matériaux transparents "
"(mélange alpha ou test alpha) seront ignorés par la génération d'occulteur.\n"
"[b]Note :[/b] L'occlusion culling n'est effective que si [member "
"ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] vaut "
"[code]true[/code]. Activer l'occlusion culling a un coût sur le CPU. Activez "
"seulement l'occlusion culling si vous envisagez réellement de l'utiliser. Les "
"grandes scènes ouvertes avec peu ou pas d'objets bloquant la vue ne "
"bénéficieront généralement pas beaucoup de l'occlusion culling. Les grandes "
"scènes ouvertes profitent généralement davantage des maillage LOD et des "
"plages de visibilité ([member GeometryInstance3D.visibility_range_begin] et "
"[member GeometryInstance3D.visibility_range_end]) par rapport à l'occlusion "
"culling.\n"
"[b]Note :[/b] En raison des contraintes de mémoire, l'occlusion culling n'est "
"pas supportée par défaut dans les modèles d'exportation Web. Elle peut être "
"activée en compilant des modèles d'exportation Web personnalisés avec "
"[code]module_raycast_enabled=yes[/code]."

msgid ""
"The visual layers to account for when baking for occluders. Only "
"[MeshInstance3D]s whose [member VisualInstance3D.layers] match with this "
"[member bake_mask] will be included in the generated occluder mesh. By "
"default, all objects with [i]opaque[/i] materials are taken into account for "
"the occluder baking.\n"
"To improve performance and avoid artifacts, it is recommended to exclude "
"dynamic objects, small objects and fixtures from the baking process by moving "
"them to a separate visual layer and excluding this layer in [member "
"bake_mask]."
msgstr ""
"Les couches visuelles à prendre en compte pour le pré-calcul des occulteurs. "
"Seuls les [MeshInstance3D]s dont [member VisualInstance3D.layers] correspond "
"à ce [member bake_mask] seront inclus dans le maillage d'occulteur généré. "
"Par défaut, tous les objets avec des matériaux [i]opaque[/i] sont pris en "
"compte pour le pré-calcul de l'occulteur.\n"
"Pour améliorer les performances et éviter les artéfacts, il est recommandé "
"d'exclure les objets dynamiques, les petits objets et autres accessoires du "
"processus de pré-calcul en les déplaçant sur une couche visuelle distincte et "
"en excluant cette couche dans [member bake_mask]."

msgid ""
"The simplification distance to use for simplifying the generated occluder "
"polygon (in 3D units). Higher values result in a less detailed occluder mesh, "
"which improves performance but reduces culling accuracy.\n"
"The occluder geometry is rendered on the CPU, so it is important to keep its "
"geometry as simple as possible. Since the buffer is rendered at a low "
"resolution, less detailed occluder meshes generally still work well. The "
"default value is fairly aggressive, so you may have to decrease it if you run "
"into false negatives (objects being occluded even though they are visible by "
"the camera). A value of [code]0.01[/code] will act conservatively, and will "
"keep geometry [i]perceptually[/i] unaffected in the occlusion culling buffer. "
"Depending on the scene, a value of [code]0.01[/code] may still simplify the "
"mesh noticeably compared to disabling simplification entirely.\n"
"Setting this to [code]0.0[/code] disables simplification entirely, but "
"vertices in the exact same position will still be merged. The mesh will also "
"be re-indexed to reduce both the number of vertices and indices.\n"
"[b]Note:[/b] This uses the [url=https://meshoptimizer.org/]meshoptimizer[/"
"url] library under the hood, similar to LOD generation."
msgstr ""
"La distance de simplification à utiliser pour simplifier le polygone "
"d'occulteur généré (en unités 3D). Des valeurs plus élevées résultent en un "
"maillage d'occulteur moins détaillé, ce qui améliore les performances mais "
"réduit la précision de l'occlusion culling.\n"
"La géométrie de l'occulteur est rendue sur le CPU, il est donc important de "
"garder sa géométrie aussi simple que possible. Comme le buffer est rendu à "
"basse résolution, les maillages d'occulteur moins détaillés fonctionnent "
"généralement toujours bien. La valeur par défaut est assez agressive, de "
"sorte que vous pouvez avoir besoin de la diminuer si vous rencontrez des faux "
"négatifs (objets étant considérés comme occlus même s'ils sont visibles par "
"la caméra). Une valeur de [code]0.01[/code] agira de façon conservatrice et "
"gardera la géométrie [i]perceptuellement[/i] non affectée dans le buffer de "
"l'occlusion culling. Selon la scène, une valeur de [code]0.01[/code] peut "
"encore simplifier le maillage de façon notable par rapport à la désactivation "
"totale de la simplification.\n"
"Définir ceci à [code]0.0[/code] désactive la simplification entièrement, mais "
"les sommets à la même position exacte seront toujours fusionnés. Le maillage "
"sera également ré-indexé pour réduire à la fois le nombre de sommets et "
"d'indices.\n"
"[b]Note :[/b] Ceci utilise la bibliothèque [url=https://"
"meshoptimizer.org/]meshoptimizer[/url] sous le capot, semblable à la "
"génération de LOD."

msgid ""
"The occluder resource for this [OccluderInstance3D]. You can generate an "
"occluder resource by selecting an [OccluderInstance3D] node then using the "
"[b]Bake Occluders[/b] button at the top of the editor.\n"
"You can also draw your own 2D occluder polygon by adding a new "
"[PolygonOccluder3D] resource to the [member occluder] property in the "
"Inspector.\n"
"Alternatively, you can select a primitive occluder to use: [QuadOccluder3D], "
"[BoxOccluder3D] or [SphereOccluder3D]."
msgstr ""
"La ressource d'occulteur pour ce [OccluderInstance3D]. Vous pouvez générer "
"une ressource d'occulteur en sélectionnant un nœud [OccluderInstance3D] puis "
"en utilisant le bouton [b]Pré-calculer les occulteurs[/b] en haut de "
"l'éditeur.\n"
"Vous pouvez également dessiner votre propre polygone occulteur 2D en ajoutant "
"une nouvelle ressource [PolygonOccluder3D] à la propriété [member occluder] "
"dans l'inspecteur.\n"
"Sinon, vous pouvez sélectionner un occulteur primitif à utiliser : "
"[QuadOccluder3D], [BoxOccluder3D] ou [SphereOccluder3D]."

msgid "Defines a 2D polygon for LightOccluder2D."
msgstr "Définit un polygone 2D pour LightOccluder2D."

msgid ""
"Editor facility that helps you draw a 2D polygon used as resource for "
"[LightOccluder2D]."
msgstr ""
"Aide de l'édition pour dessiner un polygone 2D utilisé comme ressource pour "
"un [LightOccluder2D]."

msgid ""
"If [code]true[/code], closes the polygon. A closed OccluderPolygon2D occludes "
"the light coming from any direction. An opened OccluderPolygon2D occludes the "
"light only at its outline's direction."
msgstr ""
"Si [code]true[/code], ferme (boucle) le polygone. Un OccluderPolygon2D fermé "
"bloque la lumière provenant de n'importe quelle direction. Un "
"OccluderPolygon2D ouvert ne bloque que la lumière qui vient en direction de "
"son alignement."

msgid "The culling mode to use."
msgstr "Le mode de culling à utiliser."

msgid "A [Vector2] array with the index for polygon's vertices positions."
msgstr ""
"Un tableau de [Vector2] avec les index des positions des sommets du polygone."

msgid "Culling is disabled. See [member cull_mode]."
msgstr "Le culling est désactivé. Voir [member cull_mode]."

msgid "Culling is performed in the clockwise direction. See [member cull_mode]."
msgstr "Le culling se fait dans le sens horaire. Voir [member cull_mode]."

msgid ""
"Culling is performed in the counterclockwise direction. See [member "
"cull_mode]."
msgstr ""
"Le culling se fait dans le sens horaire inversé. Voir [member cull_mode]."

msgid "A sequence of Ogg packets."
msgstr "Une séquence de paquets Ogg."

msgid "The length of this stream, in seconds."
msgstr "La longueur de ce flux, en secondes."

msgid "Contains the raw packets that make up this OggPacketSequence."
msgstr "Contient les paquets bruts qui composent ce OggPacketSequence."

msgid ""
"Holds sample rate information about this sequence. Must be set by another "
"class that actually understands the codec."
msgstr ""
"Contient des informations sur le taux d'échantillonnage de cette séquence. "
"Doit être défini par une autre classe qui comprend réellement le codec."

msgid "Omnidirectional light, such as a light bulb or a candle."
msgstr "Une lumière omnidirectionnelle, comme une ampoule ou une bougie."

msgid ""
"An Omnidirectional light is a type of [Light3D] that emits light in all "
"directions. The light is attenuated by distance and this attenuation can be "
"configured by changing its energy, radius, and attenuation parameters.\n"
"[b]Note:[/b] When using the Mobile rendering method, only 8 omni lights can "
"be displayed on each mesh resource. Attempting to display more than 8 omni "
"lights on a single mesh resource will result in omni lights flickering in and "
"out as the camera moves. When using the Compatibility rendering method, only "
"8 omni lights can be displayed on each mesh resource by default, but this can "
"be increased by adjusting [member ProjectSettings.rendering/limits/opengl/"
"max_lights_per_object].\n"
"[b]Note:[/b] When using the Mobile or Compatibility rendering methods, omni "
"lights will only correctly affect meshes whose visibility AABB intersects "
"with the light's AABB. If using a shader to deform the mesh in a way that "
"makes it go outside its AABB, [member GeometryInstance3D.extra_cull_margin] "
"must be increased on the mesh. Otherwise, the light may not be visible on the "
"mesh."
msgstr ""
"Une lumière omnidirectionnelle est un type de nœud [Light3D] qui émet de la "
"lumière dans toutes les directions. La lumière est atténuée avec la distance "
"et cette atténuation peut être configurée en changeant ses paramètres "
"d'énergie, de rayon et d'atténuation.\n"
"[b]Note :[/b] Lors de l'utilisation de la méthode de rendu Mobile, seulement "
"8 lumières omnidirectionnelles peuvent être affichés sur chaque ressource de "
"maillage. Essayer d'afficher plus de 8 lumières omnidirectionnelles sur une "
"seule ressource de maillage entraînera des lumières omnidirectionnelles qui "
"clignoteront quand la caméra se déplace. Lors de l'utilisation de la méthode "
"de rendu Compatibilité, seulement 8 lumières omnidirectionnelles peuvent être "
"affichés sur chaque ressource de maillage par défaut, mais cela peut être "
"augmenté en ajustant [member ProjectSettings.rendering/limits/opengl/"
"max_lights_per_object].\n"
"[b]Note:[/b] Lors de l'utilisation des méthodes de rendu Mobile ou "
"Compatibilité, les lumières omnidirectionnelles n'affecteront correctement "
"que les maillage dont l'AABB de visibilité intersecte avec l'AABB de la "
"lumière. Si l'utilisation d'un shader pour déformer le maillage le fait "
"sortir de sa AABB, [member GeometryInstance3D.extra_cull_margin] doit être "
"augmenté sur le maillage. Sinon, la lumière peut ne pas être visible sur le "
"maillage."

msgid ""
"Controls the distance attenuation function for omnilights.\n"
"A value of [code]0.0[/code] will maintain a constant brightness through most "
"of the range, but smoothly attenuate the light at the edge of the range. Use "
"a value of [code]2.0[/code] for physically accurate lights as it results in "
"the proper inverse square attenutation.\n"
"[b]Note:[/b] Setting attenuation to [code]2.0[/code] or higher may result in "
"distant objects receiving minimal light, even within range. For example, with "
"a range of [code]4096[/code], an object at [code]100[/code] units is "
"attenuated by a factor of [code]0.0001[/code]. With a default brightness of "
"[code]1[/code], the light would not be visible at that distance.\n"
"[b]Note:[/b] Using negative or values higher than [code]10.0[/code] may lead "
"to unexpected results."
msgstr ""
"Contrôle la fonction d'atténuation de distance pour les lumières "
"omnidirectionnelles.\n"
"Une valeur de [code]0.0[/code] maintiendra une luminosité constante à travers "
"la plupart de la plage, mais atténue doucement la lumière au bord de "
"l'intervalle. Utilisez une valeur de [code]2.0[/code] pour des lumières "
"physiquement précises, car cela entraîne une atténuation carrée inverse "
"appropriée.\n"
"[b]Note :[/b] Définir l'atténuation à [code]2.0[/code] ou plus peut résulter "
"en des objets distants recevant une lumière minimale, même dans l'intervalle. "
"Par exemple, avec un intervalle de [code]4096[/code], un objet à [code]100[/"
"code] unités est atténué par un facteur de [code]0.0001[/code]. Avec une "
"luminosité par défaut de [code]1[/code], la lumière ne serait pas visible à "
"cette distance.\n"
"[b]Note :[/b] L'utilisation de valeurs négatives ou supérieures à [code]10.0[/"
"code] peut entraîner des résultats inattendus."

msgid ""
"The light's radius. Note that the effectively lit area may appear to be "
"smaller depending on the [member omni_attenuation] in use. No matter the "
"[member omni_attenuation] in use, the light will never reach anything outside "
"this radius.\n"
"[b]Note:[/b] [member omni_range] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale)."
msgstr ""
"Le rayon de la lumière. Notez que la zone effectivement éclairée peut sembler "
"plus petite en fonction du [member omni_attenuation] utilisé. Peu importe le "
"[member omni_attenuation] utilisé, la lumière n'atteindra jamais rien à "
"l'extérieur de ce rayon.\n"
"[b]Note :[/b] [member omni_range] n'est pas affecté par [member Node3D.scale] "
"(l'échelle de la lumière ou l'échelle de ses parents)."

msgid ""
"Shadows are rendered to a dual-paraboloid texture. Faster than [constant "
"SHADOW_CUBE], but lower-quality."
msgstr ""
"Les ombres sont rendues dans une texture dual-paraboloïde. Plus rapide que "
"[constant SHADOW_CUBE], mais de qualité inférieure."

msgid ""
"Shadows are rendered to a cubemap. Slower than [constant "
"SHADOW_DUAL_PARABOLOID], but higher-quality."
msgstr ""
"Les ombres sont rendues dans une CubeMap. Plus lent que [constant "
"SHADOW_DUAL_PARABOLOID], mais de qualité supérieure."

msgid "An OpenXR action."
msgstr "Une action OpenXR."

msgid ""
"This resource defines an OpenXR action. Actions can be used both for inputs "
"(buttons, joysticks, triggers, etc.) and outputs (haptics).\n"
"OpenXR performs automatic conversion between action type and input type "
"whenever possible. An analog trigger bound to a boolean action will thus "
"return [code]false[/code] if the trigger is depressed and [code]true[/code] "
"if pressed fully.\n"
"Actions are not directly bound to specific devices, instead OpenXR recognizes "
"a limited number of top level paths that identify devices by usage. We can "
"restrict which devices an action can be bound to by these top level paths. "
"For instance an action that should only be used for hand held controllers can "
"have the top level paths \"/user/hand/left\" and \"/user/hand/right\" "
"associated with them. See the [url=https://www.khronos.org/registry/OpenXR/"
"specs/1.0/html/xrspec.html#semantic-path-reserved]reserved path section in "
"the OpenXR specification[/url] for more info on the top level paths.\n"
"Note that the name of the resource is used to register the action with."
msgstr ""
"Cette ressource définit une action OpenXR. Les actions peuvent être utilisées "
"pour les entrées (boutons, joysticks, gâchettes, etc.) et les sorties "
"(haptique).\n"
"OpenXR effectue une conversion automatique entre le type d'action et le type "
"d'entrée dès que possible. Une gâchette analogique liée à une action "
"booléenne renverra donc [code]false[/code] si la gâchette n'est pas enfoncée "
"et [code]true[/code] si la gâchette est complètement enfoncée.\n"
"Les actions ne sont pas directement liées à des périphériques spécifiques, à "
"la place, OpenXR reconnaît un nombre limité de chemins de haut-niveau qui "
"identifient les appareils par utilisation. Nous pouvons restreindre à quels "
"périphériques une action peut être liée par ces chemins de haut-niveau. Par "
"exemple, une action qui ne devrait être utilisée que pour les manettes "
"portables ayant les chemins de haut-niveau \"/user/hand/left\" et \"/user/"
"hand/right\" associés à eux. Voir [url=https://www.khronos.org/registry/"
"OpenXR/specs/1.0/html/xrspec.html#semantic-path-reserv] \"Path Tree and "
"Semantic Paths\" dans la spécification OpenXR[/url] pour plus d'informations "
"sur les chemins de haut-niveau.\n"
"Notez que le nom de la ressource est utilisé pour enregistrer l'action avec."

msgid "The type of action."
msgstr "Le type d'action."

msgid "The localized description of this action."
msgstr "La description localisée de cette action."

msgid "A collections of toplevel paths to which this action can be bound."
msgstr ""
"Une collection de chemins de haut niveau auxquels cette action peut être liée."

msgid "This action provides a boolean value."
msgstr "Cette action fournit une valeur booléenne."

msgid ""
"This action provides a float value between [code]0.0[/code] and [code]1.0[/"
"code] for any analog input such as triggers."
msgstr ""
"Cette action fournit une valeur de flottant entre [code]0.0[/code] et "
"[code]1.0[/code] pour toute entrée analogique comme des gâchettes."

msgid ""
"This action provides a [Vector2] value and can be bound to embedded trackpads "
"and joysticks."
msgstr ""
"Cette action fournit une valeur [Vector2] et peut être liée à des pavés "
"tactiles et des joysticks embarqués."

msgid ""
"Binding modifier that applies on individual actions related to an interaction "
"profile."
msgstr ""
"Modification de liaison qui s'applique aux actions individuelles liées à un "
"profil d'interaction."

msgid ""
"Collection of [OpenXRActionSet] and [OpenXRInteractionProfile] resources for "
"the OpenXR module."
msgstr ""
"Collection de ressources [OpenXRActionSet] et [OpenXRInteractionProfile] pour "
"le module OpenXR."

msgid ""
"OpenXR uses an action system similar to Godots Input map system to bind "
"inputs and outputs on various types of XR controllers to named actions. "
"OpenXR specifies more detail on these inputs and outputs than Godot "
"supports.\n"
"Another important distinction is that OpenXR offers no control over these "
"bindings. The bindings we register are suggestions, it is up to the XR "
"runtime to offer users the ability to change these bindings. This allows the "
"XR runtime to fill in the gaps if new hardware becomes available.\n"
"The action map therefore needs to be loaded at startup and can't be changed "
"afterwards. This resource is a container for the entire action map."
msgstr ""
"OpenXR utilise un système d'action similaire au système d'Input map de Godot "
"pour lier les entrées et les sorties sur différents types de contrôleurs XR à "
"des actions nommées. OpenXR spécifie plus de détails sur ces entrées et "
"sorties que Godot supporte.\n"
"Une autre distinction importante est qu'OpenXR n'offre aucun contrôle sur ces "
"associations. Les associations que nous enregistrons sont des suggestions, "
"c'est au runtime XR d'offrir aux utilisateurs la possibilité de changer ces "
"associations. Cela permet au runtime XR de combler les lacunes si du nouveau "
"matériel est disponible.\n"
"L'action map doit donc être chargée au démarrage et ne peut être changée "
"après. Cette ressource est un conteneur pour toute l'action map."

msgid "Add an action set."
msgstr "Ajouter un ensemble d'actions."

msgid "Add an interaction profile."
msgstr "Ajouter un profil d'interaction."

msgid "Setup this action set with our default actions."
msgstr "Configure cet ensemble d'actions avec nos actions par défaut."

msgid "Retrieve an action set by name."
msgstr "Récupère un ensemble d'actions par nom."

msgid "Find an interaction profile by its name (path)."
msgstr "Cherche un profil d'interaction par son nom (chemin)."

msgid "Retrieve the action set at this index."
msgstr "Récupère l'ensemble d'actions à cet index."

msgid "Retrieve the number of actions sets in our action map."
msgstr "Récupère le nombre d'ensembles d'actions dans notre action map."

msgid "Get the interaction profile at this index."
msgstr "Obtient le profil d'interaction à cet indice."

msgid "Retrieve the number of interaction profiles in our action map."
msgstr "Récupère le nombre de profils d'interaction dans notre action map."

msgid "Remove an action set."
msgstr "Supprime un ensemble d'actions."

msgid "Remove an interaction profile."
msgstr "Supprime un profil d'interaction."

msgid "Collection of [OpenXRActionSet]s that are part of this action map."
msgstr "Collection de [OpenXRActionSet]s qui font partie de cette action map."

msgid ""
"Collection of [OpenXRInteractionProfile]s that are part of this action map."
msgstr ""
"Collection de [OpenXRInteractionProfile]s qui font parti de cette action map."

msgid "Collection of [OpenXRAction] resources that make up an action set."
msgstr ""
"Collection de ressources [OpenXRAction] qui constituent un ensemble d'actions."

msgid ""
"Action sets in OpenXR define a collection of actions that can be activated in "
"unison. This allows games to easily change between different states that "
"require different inputs or need to reinterpret inputs. For instance we could "
"have an action set that is active when a menu is open, an action set that is "
"active when the player is freely walking around and an action set that is "
"active when the player is controlling a vehicle.\n"
"Action sets can contain the same action with the same name, if such action "
"sets are active at the same time the action set with the highest priority "
"defines which binding is active."
msgstr ""
"Les ensembles d'actions dans OpenXR définissent une collection d'actions qui "
"peuvent être activées à l'unisson. Cela permet aux jeux de changer facilement "
"entre différents états qui nécessitent des entrées différentes ou ont besoin "
"de réinterpréter les entrées. Par exemple, nous pourrions avoir un ensemble "
"d'actions qui est actif lorsqu'un menu est ouvert, un ensemble d'actions qui "
"est actif lorsque le joueur marche librement et un ensemble d'actions qui est "
"actif lorsque le joueur contrôle un véhicule.\n"
"Les ensembles d'actions peuvent contenir la même action avec le même nom, si "
"ces ensembles d'action sont actifs en même temps, l'action définie avec la "
"plus haute priorité définit quelle liaison est active."

msgid "Add an action to this action set."
msgstr "Ajoute une action à cet ensemble d'actions."

msgid "Retrieve the number of actions in our action set."
msgstr "Récupère le nombre d'actions dans notre ensemble d'actions."

msgid "Remove an action from this action set."
msgstr "Retire une action de cet ensemble d'actions."

msgid "Collection of actions for this action set."
msgstr "Collection d'actions pour cet ensemble d'actions."

msgid "The localized name of this action set."
msgstr "Le nom localisé de cet ensemble d'actions."

msgid "The priority for this action set."
msgstr "La priorité de cet ensemble d'actions."

msgid ""
"The analog threshold binding modifier can modify a float input to a boolean "
"input with specified thresholds."
msgstr ""
"Le modificateur de liaison de seuil analogique peut modifier une entrée de "
"flottant en une entrée booléenne grâce à des seuils spécifiés."

msgid ""
"The analog threshold binding modifier can modify a float input to a boolean "
"input with specified thresholds.\n"
"See [url=https://registry.khronos.org/OpenXR/specs/1.1/html/"
"xrspec.html#XR_VALVE_analog_threshold]XR_VALVE_analog_threshold[/url] for in-"
"depth details."
msgstr ""
"Le modificateur de liaison de seuil analogique peut modifier une entrée de "
"flottant en une entrée booléenne grâce à des seuils spécifiés.\n"
"Voir [url=https://registry.khronos.org/OpenXR/specs/1.1/html/"
"xrspec.html#XR_VALVE_analog_threshold]XR_VALVE_analog_threshold[/url] pour "
"des détails en profondeur."

msgid "Haptic pulse to emit when the user releases the input."
msgstr "L'impulsion haptique à émettre lorsque l'utilisateur relâche l'entrée."

msgid ""
"When our input value falls below this, our output becomes [code]false[/code]."
msgstr ""
"Lorsque notre valeur d'entrée tombe en dessous de ceci, notre sortie devient "
"[code]false[/code]."

msgid "Haptic pulse to emit when the user presses the input."
msgstr ""
"L'impulsion haptique à émettre lorsque l'utilisateur appuie sur l'entrée."

msgid ""
"When our input value is equal or larger than this value, our output becomes "
"[code]true[/code]. It stays [code]true[/code] until it falls under the "
"[member off_threshold] value."
msgstr ""
"Lorsque notre valeur d'entrée est égale ou supérieure à cette valeur, notre "
"sortie devient [code]true[/code]. Elle reste à [code]true[/code] jusqu'à ce "
"qu'elle tombe sous la valeur [member off_threshold]."

msgid "Makes the OpenXR API available for GDExtension."
msgstr "Rend l'API OpenXR disponible pour GDExtension."

msgid ""
"[OpenXRAPIExtension] makes OpenXR available for GDExtension. It provides the "
"OpenXR API to GDExtension through the [method get_instance_proc_addr] method, "
"and the OpenXR instance through [method get_instance].\n"
"It also provides methods for querying the status of OpenXR initialization, "
"and helper methods for ease of use of the API with GDExtension."
msgstr ""
"[OpenXRAPIExtension] rend OpenXR disponible pour GDExtension. Elle fournit "
"l'API OpenXR à GDExtension à travers la méthode [method "
"get_instance_proc_addr], et l'instance OpenXR à travers [method "
"get_instance].\n"
"Elle fournit également des méthodes pour demander l'état de l'initialisation "
"d'OpenXR, et des méthodes d'aide pour faciliter l'utilisation de l'API avec "
"GDExtension."

msgid "XrResult documentation"
msgstr "Documentation d'XrResult"

msgid "XrInstance documentation"
msgstr "Documentation d'XrInstance"

msgid "XrSpace documentation"
msgstr "Documentation d'XrSpace"

msgid "XrSession documentation"
msgstr "Documentation d'XrSession"

msgid "XrSystemId documentation"
msgstr "Documentation d'XrSystemId"

msgid "xrBeginSession documentation"
msgstr "Documentation d'xrBeginSession"

msgid "XrPosef documentation"
msgstr "Documentation d'XrPosef"

msgid ""
"Returns the corresponding [code]XrAction[/code] OpenXR handle for the given "
"action RID."
msgstr ""
"Renvoie le handle OpenXR [code]XrAction[/code] correspondant pour le RID "
"d'action donné."

msgid ""
"Returns [code]true[/code] if OpenXR is initialized for rendering with an XR "
"viewport."
msgstr ""
"Renvoie [code]true[/code] si OpenXR est initialisé pour le rendu avec une "
"fenêtre d'affichage XR."

msgid ""
"Returns the [RID] corresponding to an [code]Action[/code] of a matching name, "
"optionally limited to a specified action set."
msgstr ""
"Renvoie le [RID] correspondant à une [code]Action[/code] avec un nom "
"correspondant, optionnellement limité à un ensemble d'actions spécifié."

msgid ""
"Returns an error string for the given [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url]."
msgstr ""
"Renvoie une chaîne d'erreur pour le [url=https://registry.khronos.org/OpenXR/"
"specs/1.0/man/html/XrResult.html]XrResult[/url] donné."

msgid ""
"Returns the corresponding [code]XRHandTrackerEXT[/code] handle for the given "
"hand index value."
msgstr ""
"Renvoie le handle [code]XRHandTrackerEXT[/code] correspondant à la valeur "
"d'index de main donnée."

msgid ""
"Returns the [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/"
"XrInstance.html]XrInstance[/url] created during the initialization of the "
"OpenXR API."
msgstr ""
"Renvoie la [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/"
"XrInstance.html]XrInstance[/url] créée lors de l'initialisation de l'API "
"OpenXR."

msgid ""
"Returns the function pointer of the OpenXR function with the specified name, "
"cast to an integer. If the function with the given name does not exist, the "
"method returns [code]0[/code].\n"
"[b]Note:[/b] [code]openxr/util.h[/code] contains utility macros for acquiring "
"OpenXR functions, e.g. [code]GDEXTENSION_INIT_XR_FUNC_V(xrCreateAction)[/"
"code]."
msgstr ""
"Renvoie le pointeur de fonction de la fonction OpenXR avec le nom spécifié, "
"cast en un entier. Si la fonction avec le nom donné n'existe pas, la méthode "
"renvoie [code]0[/code].\n"
"[b]Note :[/b] [code]openxr/util.h[/code] contient des macros utilitaires pour "
"l'acquisition de fonctions OpenXR, par ex. "
"[code]GDEXTENSION_INIT_XR_FUNC_V(xrCreateAction)[/code]."

msgid "Returns the predicted display timing for the next frame."
msgstr "Renvoie le temps d'affichage prévu pour la prochaine trame."

msgid ""
"Returns the play space, which is an [url=https://registry.khronos.org/OpenXR/"
"specs/1.0/man/html/XrSpace.html]XrSpace[/url] cast to an integer."
msgstr ""
"Renvoie l’espace de jeu, qui est un [url=https://registry.khronos.org/OpenXR/"
"specs/1.0/man/html/XrSpace.html]XrSpace[/url] cast en entier."

msgid "Returns the predicted display timing for the current frame."
msgstr "Renvoie le temps d'affichage prévu pour la trame actuelle."

msgid ""
"Returns the OpenXR session, which is an [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrSession.html]XrSession[/url] cast to an integer."
msgstr ""
"Renvoie la session OpenXR, qui est un [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrSession.html]XrSession[/url] cast en un entier."

msgid "Returns an array of supported swapchain formats."
msgstr "Renvoie un tableau des formats de swapchain pris en charge."

msgid "Returns the name of the specified swapchain format."
msgstr "Renvoie le nom du format de swapchain spécifié."

msgid "Returns [code]true[/code] if OpenXR is initialized."
msgstr "Renvoie [code]true[/code] si OpenXR est initialisé."

msgid ""
"Returns [code]true[/code] if OpenXR is running ([url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/"
"xrBeginSession.html]xrBeginSession[/url] was successfully called and the "
"swapchains were created)."
msgstr ""
"Renvoie [code]true[/code] si OpenXR est en cours d'exécution ([url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/"
"xrBeginSession.html]xrBeginSession[/url] a été appelée avec succès et les "
"swapchains ont été créées)."

msgid "Returns [code]true[/code] if OpenXR is enabled."
msgstr "Renvoie [code]true[/code] si OpenXR est activé."

msgid "Acquires the image of the provided swapchain."
msgstr "Acquiert l'image de la swapchain fournie."

msgid ""
"Returns a pointer to a new swapchain created using the provided parameters."
msgstr ""
"Renvoie un pointeur vers une nouvelle swapchain créée en utilisant les "
"paramètres fournis."

msgid "Destroys the provided swapchain and frees it from memory."
msgstr "Détruit la swapchain fournie et la libère de la mémoire."

msgid "Returns the RID of the provided swapchain's image."
msgstr "Renvoie le RID de l'image de la swapchain fournie."

msgid "Returns the [code]XrSwapchain[/code] handle of the provided swapchain."
msgstr "Renvoie la handle [code]XrSwapchain[/code] de la swapchain fournie."

msgid "Releases the image of the provided swapchain."
msgstr "Libère l'image de la swapchain fournie."

msgid ""
"Registers the given extension as modifying frame info via the [method "
"OpenXRExtensionWrapper._set_frame_wait_info_and_get_next_pointer], [method "
"OpenXRExtensionWrapper._set_view_locate_info_and_get_next_pointer], or "
"[method OpenXRExtensionWrapper._set_frame_end_info_and_get_next_pointer] "
"virtual methods."
msgstr ""
"Enregistre l'extension donnée comme modificatrice des infos de trame via les "
"méthodes virtuelles [method "
"OpenXRExtensionWrapper._set_frame_wait_info_and_get_next_pointer], [method "
"OpenXRExtensionWrapper._set_view_locate_info_and_get_next_pointer], ou "
"[method OpenXRExtensionWrapper._set_frame_end_info_and_get_next_pointer]."

msgid ""
"Sets the reference space used by OpenXR to the given [url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/XrSpace.html]XrSpace[/url] "
"(cast to a [code]void *[/code])."
msgstr ""
"Définit l'espace de référence utilisé par OpenXR en le [url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/XrSpace.html]XrSpace[/url] "
"donné (cast en un [code]void *[/code])."

msgid ""
"If set to [code]true[/code], an OpenXR extension is loaded which is capable "
"of emulating the [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] blend "
"mode."
msgstr ""
"S'il est défini à [code]true[/code], une extension OpenXR est chargée qui est "
"capable d'émuler le mode de mélange [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND]."

msgid ""
"Set the object name of an OpenXR object, used for debug output. [param "
"object_type] must be a valid OpenXR [code]XrObjectType[/code] enum and [param "
"object_handle] must be a valid OpenXR object handle."
msgstr ""
"Définir le nom d'objet d'un objet OpenXR, utilisé pour la sortie de débogage. "
"[param object_type] doit être un enum [code]XrObjectType[/code] OpenXR valide "
"et [param object_handle] doit être un handle d'objet OpenXR valide."

msgid "Unregisters the given extension as a composition layer provider."
msgstr ""
"Désenregistre l'extension donnée en tant que fournisseur de calque de "
"composition."

msgid "Unregisters the given extension as modifying frame info."
msgstr ""
"Désenregistre l'extension donnée en tant que modificatrice d'info de trame."

msgid ""
"Unregisters the given extension as a provider of additional data structures "
"to projections views."
msgstr ""
"Désenregistre l'extension donnée en tant que fournisseur de structure de "
"données supplémentaire aux vues de projection."

msgid ""
"Means that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] isn't "
"supported at all."
msgstr ""
"Signifie que [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] n'est pas "
"supporté du tout."

msgid ""
"Means that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] is really "
"supported."
msgstr ""
"Signifie que [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] est "
"vraiment supporté."

msgid ""
"Means that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] is emulated."
msgstr ""
"Signifie que [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] est émulé."

msgid "Binding modifier base class."
msgstr "Classe de base de modificateur d'action."

msgid ""
"Binding modifier base class. Subclasses implement various modifiers that "
"alter how an OpenXR runtime processes inputs."
msgstr ""
"Classe de base de modificateur de liaison. Les sous-classes implémentent "
"divers modificateurs qui modifient la façon dont le runtime OpenXR traite les "
"entrées."

msgid ""
"Return the description of this class that is used for the title bar of the "
"binding modifier editor."
msgstr ""
"Renvoie la description de cette classe qui est utilisée pour la barre du "
"titre de l'éditeur de modificateur de liaison."

msgid ""
"Returns the data that is sent to OpenXR when submitting the suggested "
"interacting bindings this modifier is a part of.\n"
"[b]Note:[/b] This must be data compatible with an "
"[code]XrBindingModificationBaseHeaderKHR[/code] structure."
msgstr ""
"Renvoie les données qui sont envoyées à OpenXR lors de la soumission des "
"liaisons d'interaction suggérées dont ce modificateur fait partie.\n"
"[b]Note :[/b] Ces données doivent être compatibles avec une structure "
"[code]XrBindingModificationBaseHeaderKHR[/code]."

msgid "Binding modifier editor."
msgstr "Éditeur de modificateur de liaison."

msgid ""
"This is the default binding modifier editor used in the OpenXR action map."
msgstr ""
"Il s'agit de l'éditeur de modificateur par défaut utilisé dans l'action map "
"OpenXR."

msgid "Returns the [OpenXRBindingModifier] currently being edited."
msgstr "Renvoie le [OpenXRBindingModifier] actuellement en cours d'édition."

msgid ""
"Setup this editor for the provided [param action_map] and [param "
"binding_modifier]."
msgstr ""
"Configure cet éditeur pour l'[param action_map] et le modificateur [param "
"binding_modifier] spécifiés."

msgid ""
"Signal emitted when the user presses the delete binding modifier button for "
"this modifier."
msgstr ""
"Signal émis lorsque l'utilisateur appuie sur le bouton de suppression de "
"modificateur de liaison pour ce modificateur."

msgid "The parent class of all OpenXR composition layer nodes."
msgstr "La classe parente de tous les nœuds de composition de calque OpenXR."

msgid ""
"Composition layers allow 2D viewports to be displayed inside of the headset "
"by the XR compositor through special projections that retain their quality. "
"This allows for rendering clear text while keeping the layer at a native "
"resolution.\n"
"[b]Note:[/b] If the OpenXR runtime doesn't support the given composition "
"layer type, a fallback mesh can be generated with a [ViewportTexture], in "
"order to emulate the composition layer."
msgstr ""
"Les calques de composition permettent aux fenêtres d'affichage 2D d'être "
"d'affichés à l'intérieur du casque par le compositeur XR avec des projections "
"spéciales qui conservent leur qualité. Cela permet de rendre le texte "
"clairement tout en gardant le calque à une résolution native.\n"
"[b]Note :[/b] Si le runtime OpenXR ne supporte pas le type de calque de "
"composition donné, un maillage de repli peut être généré avec un "
"[ViewportTexture], afin d'émuler le calque de composition."

msgid ""
"Returns a [JavaObject] representing an [code]android.view.Surface[/code] if "
"[member use_android_surface] is enabled and OpenXR has created the surface. "
"Otherwise, this will return [code]null[/code].\n"
"[b]Note:[/b] The surface can only be created during an active OpenXR session. "
"So, if [member use_android_surface] is enabled outside of an OpenXR session, "
"it won't be created until a new session fully starts."
msgstr ""
"Renvoie un [JavaObject] représentant un [code]android.view.Surface[/code] si "
"[member use_android_surface] est activé et OpenXR a créé la surface. Sinon, "
"cela renverra [code]null[/code].\n"
"[b]Note :[/b] La surface ne peut être créée que lors d'une session OpenXR "
"active. Donc, si [member use_android_surface] est activé en dehors d'une "
"session OpenXR, elle ne sera pas créée jusqu'à ce qu'une nouvelle session "
"commence entièrement."

msgid ""
"Returns UV coordinates where the given ray intersects with the composition "
"layer. [param origin] and [param direction] must be in global space.\n"
"Returns [code]Vector2(-1.0, -1.0)[/code] if the ray doesn't intersect."
msgstr ""
"Renvoie les coordonnées UV où le rayon donné intersecte avec le calque de "
"composition. [param origin] et [param direction] doivent être dans l'espace "
"global.\n"
"Renvoie [code]Vector2(-1.0, -1.0)[/code] si le rayon n'intersecte pas."

msgid ""
"Returns [code]true[/code] if the OpenXR runtime natively supports this "
"composition layer type.\n"
"[b]Note:[/b] This will only return an accurate result after the OpenXR "
"session has started."
msgstr ""
"Renvoie [code]true[/code] si le runtime OpenXR prend en charge nativement ce "
"type de calque de composition.\n"
"[b]Note :[/b] Cela ne renverra un résultat fiable qu'après que la session "
"OpenXR ait commencé."

msgid ""
"Enables the blending the layer using its alpha channel.\n"
"Can be combined with [member Viewport.transparent_bg] to give the layer a "
"transparent background."
msgstr ""
"Permet le mélange du calque en utilisant son canal alpha.\n"
"Peut être combiné avec [member Viewport.transparent_bg] pour donner au calque "
"un fond transparent."

msgid ""
"The size of the Android surface to create if [member use_android_surface] is "
"enabled."
msgstr ""
"La taille de la surface Android à créer si [member use_android_surface] est "
"activé."

msgid ""
"Enables a technique called \"hole punching\", which allows putting the "
"composition layer behind the main projection layer (i.e. setting [member "
"sort_order] to a negative value) while \"punching a hole\" through everything "
"rendered by Godot so that the layer is still visible.\n"
"This can be used to create the illusion that the composition layer exists in "
"the same 3D space as everything rendered by Godot, allowing objects to appear "
"to pass both behind or in front of the composition layer."
msgstr ""
"Active une technique appelée \"hole punching\" (litt. perforation de trous), "
"qui permet de mettre le calque de composition derrière le calque de "
"projection principal(c.-à-d. définir [member sort_order] à une valeur "
"négative) tout en \"perforant un trou\" à travers tout ce qui est rendu par "
"Godot afin que le calque soit encore visible.\n"
"Cela peut être utilisé pour créer l'illusion que le calque de composition "
"existe dans le même espace 3D que tout ce qui est rendu par Godot, permettant "
"aux objets de passer à la fois derrière ou devant le calque de composition."

msgid "The [SubViewport] to render on the composition layer."
msgstr "Le [SubViewport] à rendre sur le calque de composition."

msgid ""
"The sort order for this composition layer. Higher numbers will be shown in "
"front of lower numbers.\n"
"[b]Note:[/b] This will have no effect if a fallback mesh is being used."
msgstr ""
"L'ordre de tri pour ce calque de composition. Les valeurs plus élevées seront "
"affichées devant les valeurs inférieures.\n"
"[b]Note :[/b] Cela n'aura aucun effet si un maillage de repli est utilisé."

msgid ""
"The swizzle value for the alpha channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"La valeur de permutation (swizzle) pour le canal alpha de l'état de la "
"swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The swizzle value for the blue channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"La valeur de permutation (swizzle) pour le canal bleu de l'état de la "
"swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The border color of the swapchain state that is used when the wrap mode "
"clamps to the border.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"La couleur de bordure de l'état de swapchain qui est utilisée lorsque le mode "
"de wrap est limité à la bordure.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The swizzle value for the green channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"La valeur de permutation (swizzle) pour le canal vert de l'état de la "
"swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The horizontal wrap mode of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Le mode de wrap horizontal de l'état de la swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The magnification filter of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Le filtre de grossissement de l'état de la swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The max anisotropy of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"L'anisotropie maximale de l'état de la swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The minification filter of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Le filtre de minification de l'état de la swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The mipmap mode of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Le mode de mipmap de l'état de la swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The swizzle value for the red channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"La valeur de permutation (swizzle) pour le canal rouge de l'état de la "
"swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The vertical wrap mode of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Le mode de wrap vertical de l'état de la swapchain.\n"
"[b]Note :[/b] Cette propriété a seulement un effet sur les appareils qui "
"supportent les extensions OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"If enabled, an Android surface will be created (with the dimensions from "
"[member android_surface_size]) which will provide the 2D content for the "
"composition layer, rather than using [member layer_viewport].\n"
"See [method get_android_surface] for information about how to get the surface "
"so that your application can draw to it.\n"
"[b]Note:[/b] This will only work in Android builds."
msgstr ""
"Si activé, une surface Android sera créée (avec les dimensions de [member "
"android_surface_size]) qui fournira le contenu 2D pour le calque de "
"composition, plutôt que d'utiliser [member layer_viewport].\n"
"Voir [method get_android_surface] pour obtenir des informations sur la façon "
"d'obtenir la surface afin que votre application puisse y dessiner.\n"
"[b]Note :[/b] Cela ne fonctionnera que dans les compilations Android."

msgid "Perform nearest-neighbor filtering when sampling the texture."
msgstr ""
"Effectue un filtrage du plus proche voisin lors de l’échantillonnage de la "
"texture."

msgid "Perform linear filtering when sampling the texture."
msgstr "Effectue un filtrage linéaire lors de l’échantillonnage de la texture."

msgid "Perform cubic filtering when sampling the texture."
msgstr "Effectue un filtrage cubique lors de l’échantillonnage de la texture."

msgid ""
"Disable mipmapping.\n"
"[b]Note:[/b] Mipmapping can only be disabled in the Compatibility renderer."
msgstr ""
"Désactive le mipmapping.\n"
"[b]Note :[/b] Le Mipmapping ne peut être désactivé que dans le moteur de "
"rendu Compatibilité."

msgid "Use the mipmap of the nearest resolution."
msgstr "Utilise la mipmap de la résolution la plus proche."

msgid "Use linear interpolation of the two mipmaps of the nearest resolution."
msgstr ""
"Utilise une interpolation linéaire entre les deux mipmaps de la résolution la "
"plus proche."

msgid "Clamp the texture to its specified border color."
msgstr "Borne la texture à sa couleur de bordure spécifiée."

msgid "Clamp the texture to its edge color."
msgstr "Borne la texture à sa couleur de bord."

msgid "Repeat the texture infinitely."
msgstr "Répète la texture infiniment."

msgid "Repeat the texture infinitely, mirroring it on each repeat."
msgstr "Répète la texture infiniment, la retournant à chaque répétition."

msgid ""
"Mirror the texture once and then clamp the texture to its edge color.\n"
"[b]Note:[/b] This wrap mode is not available in the Compatibility renderer."
msgstr ""
"Retourne la texture une fois et puis borne la texture à sa couleur de bord.\n"
"[b]Note :[/b] Ce mode d'enroulement n'est pas disponible dans le moteur de "
"rendu Compatibilité."

msgid "Maps a color channel to the value of the red channel."
msgstr "Associe un canal de couleur à la valeur du canal rouge."

msgid "Maps a color channel to the value of the green channel."
msgstr "Associe un canal de couleur à la valeur du canal vert."

msgid "Maps a color channel to the value of the blue channel."
msgstr "Associe un canal de couleur à la valeur du canal bleu."

msgid "Maps a color channel to the value of the alpha channel."
msgstr "Associe un canal de couleur à la valeur du canal alpha."

msgid "Maps a color channel to the value of zero."
msgstr "Associe un canal de couleur à la valeur zéro."

msgid "Maps a color channel to the value of one."
msgstr "Associe un canal de couleur à la valeur un."

msgid ""
"An OpenXR composition layer that is rendered as an internal slice of a "
"cylinder."
msgstr ""
"Un calque de composition OpenXR qui est rendu comme une tranche interne d'un "
"cylindre."

msgid ""
"An OpenXR composition layer that allows rendering a [SubViewport] on an "
"internal slice of a cylinder."
msgstr ""
"Un calque de composition OpenXR qui permet le rendu d'un [SubViewport] sur "
"une tranche interne d'un cylindre."

msgid ""
"The aspect ratio of the slice. Used to set the height relative to the width."
msgstr ""
"Le rapport d'aspect de la tranche. Utilisé pour définir la hauteur par "
"rapport à la largeur."

msgid "The central angle of the cylinder. Used to set the width."
msgstr "L'angle central du cylindre. Utilisé pour définir la largeur."

msgid "The number of segments to use in the fallback mesh."
msgstr "Le nombre de segments à utiliser dans le maillage de repli."

msgid ""
"An OpenXR composition layer that is rendered as an internal slice of a sphere."
msgstr ""
"Un calque de composition OpenXR qui est rendu comme une tranche interne d'une "
"sphère."

msgid ""
"An OpenXR composition layer that allows rendering a [SubViewport] on an "
"internal slice of a sphere."
msgstr ""
"Un calque de composition OpenXR qui permet le rendu d'un [SubViewport] sur "
"une tranche interne d'une sphère."

msgid "The central horizontal angle of the sphere. Used to set the width."
msgstr ""
"L'angle horizontal central de la sphère. Utilisé pour définir la largeur."

msgid ""
"The lower vertical angle of the sphere. Used (together with [member "
"upper_vertical_angle]) to set the height."
msgstr ""
"L'angle vertical inférieur de la sphère. Utilisé (avec [member "
"upper_vertical_angle]) pour définir la hauteur."

msgid "The radius of the sphere."
msgstr "Le rayon de la sphère."

msgid ""
"The upper vertical angle of the sphere. Used (together with [member "
"lower_vertical_angle]) to set the height."
msgstr ""
"L'angle vertical supérieur de la sphère. Utilisé (avec [member "
"lower_vertical_angle]) pour définir la hauteur."

msgid "An OpenXR composition layer that is rendered as a quad."
msgstr "Un calque de composition OpenXR qui est rendu comme un quadrilatère."

msgid ""
"An OpenXR composition layer that allows rendering a [SubViewport] on a quad."
msgstr ""
"Un calque de composition OpenXR qui permet le rendu d'un [SubViewport] sur un "
"quadrilatère."

msgid "The dimensions of the quad."
msgstr "Les dimensions du quadrilatère."

msgid "The DPad binding modifier converts an axis input to a dpad output."
msgstr ""
"Le modificateur de liaison DPad (croix directionnelle) convertit une entrée "
"d'axe en sortie de croix directionnelle."

msgid "Action set for which this dpad binding modifier is active."
msgstr ""
"Ensemble d'action pour lequel ce modificateur de liaison dpad est actif."

msgid ""
"Center region in which our center position of our dpad return [code]true[/"
"code]."
msgstr ""
"Région centrale dans laquelle notre position centrale de notre croix "
"directionnelle renvoie [code]true[/code]."

msgid "Input path for this dpad binding modifier."
msgstr "Chemin d'entrée pour ce modificateur de liaison dpad."

msgid ""
"If [code]false[/code], when the joystick enters a new dpad zone this becomes "
"[code]true[/code].\n"
"If [code]true[/code], when the joystick remains in active dpad zone, this "
"remains [code]true[/code] even if we overlap with another zone."
msgstr ""
"Si [code]false[/code], lorsque le joystick entre dans une nouvelle zone du "
"dpad, cela devient [code]true[/code].\n"
"Si [code]true[/code], lorsque le joystick reste dans la zone active du dpad, "
"cela reste [code]true[/code] même si nous nous chevauchons une autre zone."

msgid ""
"When our input value is equal or larger than this value, our dpad in that "
"direction becomes [code]true[/code]. It stays [code]true[/code] until it "
"falls under the [member threshold_released] value."
msgstr ""
"Lorsque notre valeur d'entrée est supérieure ou égale à cette valeur, notre "
"dpad dans cette direction devient [code]true[/code]. Il reste à [code]true[/"
"code] jusqu'à ce qu'il tombe sous la valeur de [member threshold_released]."

msgid ""
"The angle of each wedge that identifies the 4 directions of the emulated dpad."
msgstr "L'angle de chaque quart qui identifie les 4 directions du dpad émulé."

msgid "Allows implementing OpenXR extensions with GDExtension."
msgstr "Permet d'implémenter des extensions OpenXR avec GDExtension."

msgid ""
"[OpenXRExtensionWrapper] allows implementing OpenXR extensions with "
"GDExtension. The extension should be registered with [method "
"register_extension_wrapper]."
msgstr ""
"[OpenXRExtensionWrapper] permet d'implémenter des extensions OpenXR avec "
"GDExtension. L'extension doit être enregistrée avec [method "
"register_extension_wrapper]."

msgid "Called before the OpenXR instance is created."
msgstr "Appelé avant que l'instance OpenXR soit créée."

msgid ""
"Called when there is an OpenXR event to process. When implementing, return "
"[code]true[/code] if the event was handled, return [code]false[/code] "
"otherwise."
msgstr ""
"Appelée quand il y a un événement OpenXR à traiter. Lors de l'implémentation, "
"renvoyez [code]true[/code] si l'événement a été géré, renvoyez [code]false[/"
"code] autrement."

msgid "Called right after the OpenXR instance is created."
msgstr "Appelée juste après que l'instance OpenXR soit créée."

msgid "Called right before the OpenXR instance is destroyed."
msgstr "Appelée juste avant que l'instance OpenXR soit détruite."

msgid "Called right after the main swapchains are (re)created."
msgstr "Appelée juste après que les swapchain principales sont (re)créées."

msgid "Called right before the given viewport is rendered."
msgstr "Appelée juste avant que le viewport donné soit rendu."

msgid "Called right before the XR viewports begin their rendering step."
msgstr ""
"Appelée juste avant que les viewports XR commencent leur étape de rendu."

msgid "Called right after the OpenXR session is created."
msgstr "Appelée juste après que la session OpenXR soit créée."

msgid ""
"Called when a composition layer created via [OpenXRCompositionLayer] is "
"destroyed.\n"
"[param layer] is a pointer to an [code]XrCompositionLayerBaseHeader[/code] "
"struct."
msgstr ""
"Appelée quand un calque de composition créé via [OpenXRCompositionLayer] est "
"détruit.\n"
"[param layer] est un pointeur vers une struct "
"[code]XrCompositionLayerBaseHeader[/code]."

msgid ""
"Adds additional data structures to Android surface swapchains created by "
"[OpenXRCompositionLayer].\n"
"[param property_values] contains the values of the properties returned by "
"[method _get_viewport_composition_layer_extension_properties]."
msgstr ""
"Ajoute des structures de données supplémentaires aux swapchaines de surface "
"Android créées par [OpenXRCompositionLayer].\n"
"[param property_values] contient les valeurs des propriétés renvoyées par "
"[method _get_viewport_composition_layer_extension_properties]."

msgid ""
"Adds additional data structures to [code]XrReferenceSpaceCreateInfo[/code]."
msgstr ""
"Ajoute des structures de données supplémentaires à "
"[code]XrReferenceSpaceCreateInfo[/code]."

msgid "Adds additional data structures when creating OpenXR swapchains."
msgstr ""
"Ajoute des structures de données supplémentaires lors de la création des "
"swapchains OpenXR."

msgid "Use [OpenXRExtensionWrapper] instead."
msgstr "Utilisez [OpenXRExtensionWrapper] à la place."

msgid "The OpenXR Future extension allows for asynchronous APIs to be used."
msgstr "L'extension OpenXR Future permet d'utiliser des API asynchrones."

msgid ""
"Result object tracking the asynchronous result of an OpenXR Future object."
msgstr ""
"Objet de résultat suivant le résultat asynchrone d'un objet OpenXR Future."

msgid ""
"Result object tracking the asynchronous result of an OpenXR Future object, "
"you can use this object to track the result status."
msgstr ""
"Objet de résultat suivant le résultat asynchrone d'un objet OpenXR Future, "
"vous pouvez utiliser cet objet pour suivre le statut du résultat."

msgid ""
"Cancel this future, this will interrupt and stop the asynchronous function."
msgstr "Annule ce Future, cela interrompra et arrêtera la fonction asynchrone."

msgid "Return the [code]XrFutureEXT[/code] value this result relates to."
msgstr ""
"Renvoie la valeur [code]XrFutureEXT[/code] à laquelle ce résultat est lié."

msgid ""
"Returns the result value of our asynchronous function (if set by the "
"extension). The type of this result value depends on the function being "
"called. Consult the documentation of the relevant function."
msgstr ""
"Renvoie la valeur de résultat de notre fonction asynchrone (si définie par "
"l'extension). Le type de cette valeur de résultat dépend de la fonction "
"appelée. Consultez la documentation de la fonction pertinente."

msgid "Returns the status of this result."
msgstr "Renvoie le statut de ce résultat."

msgid ""
"Stores the result value we expose to the user.\n"
"[b]Note:[/b] This method should only be called by an OpenXR extension that "
"implements an asynchronous function."
msgstr ""
"Stocke la valeur de résultat que nous exposons à l'utilisateur.\n"
"[b]Note :[/b] Cette méthode ne devrait être appelée que par une extension "
"OpenXR qui implémente une fonction asynchrone."

msgid ""
"Emitted when the asynchronous function is finished or has been cancelled."
msgstr "Émis lorsque la fonction asynchrone est terminée ou a été annulée."

msgid "The asynchronous function is running."
msgstr "La fonction asynchrone est en cours d'exécution."

msgid "The asynchronous function has finished."
msgstr "La fonction asynchrone a fini."

msgid "The asynchronous function has been cancelled."
msgstr "La fonction asynchrone a été annulée."

msgid "Use [XRHandModifier3D] instead."
msgstr "Utilisez [XRHandModifier3D] à la place."

msgid "Node supporting hand and finger tracking in OpenXR."
msgstr "Nœud supportant le suivi des mains et des doigts dans OpenXR."

msgid ""
"This node enables OpenXR's hand tracking functionality. The node should be a "
"child node of an [XROrigin3D] node, tracking will update its position to the "
"player's tracked hand Palm joint location (the center of the middle finger's "
"metacarpal bone). This node also updates the skeleton of a properly skinned "
"hand or avatar model.\n"
"If the skeleton is a hand (one of the hand bones is the root node of the "
"skeleton), then the skeleton will be placed relative to the hand palm "
"location and the hand mesh and skeleton should be children of the OpenXRHand "
"node.\n"
"If the hand bones are part of a full skeleton, then the root of the hand will "
"keep its location with the assumption that IK is used to position the hand "
"and arm.\n"
"By default the skeleton hand bones are repositioned to match the size of the "
"tracked hand. To preserve the modeled bone sizes change [member bone_update] "
"to apply rotation only."
msgstr ""
"Ce nœud permet la fonctionnalité de suivi des mains d'OpenXR. Le nœud devrait "
"être un nœud enfant d'un nœud [XROrigin3D], le suivi mettra à jour sa "
"position à l'emplacement de l'articulation de la paume de la main suivie du "
"joueur (le centre de l'os métacarpien du majeur). Ce nœud met également à "
"jour le squelette d'une main ou d'un modèle d'avatar correctement skinné.\n"
"Si le squelette est une main (l'un des os de la main est le nœud racine du "
"squelette), alors le squelette sera placé par rapport à l'emplacement de la "
"paume de main et le maillage de la main et le squelette devraient être "
"enfants du nœuds OpenXRHand.\n"
"Si les os de la main font partie d'un squelette complet, alors la racine de "
"la main gardera son emplacement avec l'hypothèse que l'IK (Inverse "
"Kinematics, en fr : Cinématique inverse) est utilisée pour positionner la "
"main et le bras.\n"
"Par défaut, les os de la main du squelette sont repositionnés pour "
"correspondre à la taille de la main suivie. Pour préserver la taille des os "
"modélisés, changez [member bone_update] pour appliquer uniquement la rotation."

msgid "Specify the type of updates to perform on the bone."
msgstr "Spécifie le type de mises à jour à effectuer sur l'os."

msgid "Specifies whether this node tracks the left or right hand of the player."
msgstr "Spécifie si ce nœud suit la main gauche ou la main droite du joueur."

msgid "Set a [Skeleton3D] node for which the pose positions will be updated."
msgstr ""
"Définit un nœud [Skeleton3D] pour lequel les positions de pose seront mises à "
"jour."

msgid "Set the motion range (if supported) limiting the hand motion."
msgstr ""
"Définit la plage de mouvement (si supportée) limitant le mouvement de la main."

msgid ""
"Set the type of skeleton rig the [member hand_skeleton] is compliant with."
msgstr ""
"Définit le type de rig de squelette avec lequel le squelette de main [member "
"hand_skeleton] est compatible."

msgid "Tracking the player's left hand."
msgstr "Suit la main gauche du joueur."

msgid "Tracking the player's right hand."
msgstr "Suit la main droite du joueur."

msgid "Maximum supported hands."
msgstr "Nombre maximum de mains supportées."

msgid "Maximum supported motion ranges."
msgstr "Plages de mouvement maximales supportées."

msgid "An OpenXR compliant skeleton."
msgstr "Un squelette compatible OpenXR."

msgid "A [SkeletonProfileHumanoid] compliant skeleton."
msgstr "Un squelette compatible avec [SkeletonProfileHumanoid]."

msgid ""
"The skeletons bones are fully updated (both position and rotation) to match "
"the tracked bones."
msgstr ""
"Les os du squelette sont entièrement mis à jour (à la fois en position et en "
"rotation) pour correspondre aux os suivis."

msgid ""
"The skeletons bones are only rotated to align with the tracked bones, "
"preserving bone length."
msgstr ""
"Les os du squelette sont seulement pivotés pour s'aligner avec les os suivis, "
"préservant la longueur des os."

msgid "Maximum supported bone update mode."
msgstr "Mode maximum de mise à jour des os supportés."

msgid "OpenXR Haptic feedback base class."
msgstr "Classe de base de retour haptique OpenXR."

msgid "This is a base class for haptic feedback resources."
msgstr "C'est une classe de base pour les ressources de retour haptique."

msgid "Vibration haptic feedback."
msgstr "Retour de vibration haptique."

msgid ""
"This haptic feedback resource makes it possible to define a vibration based "
"haptic feedback pulse that can be triggered through actions in the OpenXR "
"action map."
msgstr ""
"Cette ressource de retour haptique permet de définir une impulsion de retour "
"haptique basée sur les vibrations qui peut être déclenchée par des actions "
"dans l'action map OpenXR."

msgid ""
"The amplitude of the pulse between [code]0.0[/code] and [code]1.0[/code]."
msgstr "L'amplitude de l'impulsion entre [code]0.0[/code] et [code]1.0[/code]."

msgid ""
"The duration of the pulse in nanoseconds. Use [code]-1[/code] for a minimum "
"duration pulse for the current XR runtime."
msgstr ""
"La durée de l'impulsion en nanosecondes. Utilisez [code]-1[/code] pour une "
"impulsion de durée minimale selon le runtime XR actuel."

msgid ""
"The frequency of the pulse in Hz. [code]0.0[/code] will let the XR runtime "
"chose an optimal frequency for the device used."
msgstr ""
"La fréquence de l'impulsion en Hz. [code]0.0[/code] permettra au runtime XR "
"de choisir une fréquence optimale pour l'appareil utilisé."

msgid "Suggested bindings object for OpenXR."
msgstr "Objet des liaisons suggérées pour OpenXR."

msgid ""
"This object stores suggested bindings for an interaction profile. Interaction "
"profiles define the metadata for a tracked XR device such as an XR "
"controller.\n"
"For more information see the [url=https://www.khronos.org/registry/OpenXR/"
"specs/1.0/html/xrspec.html#semantic-path-interaction-profiles]interaction "
"profiles info in the OpenXR specification[/url]."
msgstr ""
"Cet objet stocke les liaisons suggérées pour un profil d'interaction. Les "
"profils d'interaction définissent les métadonnées pour un périphérique XR "
"suivi, comme un contrôleur XR.\n"
"Pour plus d'informations, voir les [url=https://www.khronos.org/registry/"
"OpenXR/specs/1.0/html/xrspec.html#semantic-path-interaction-"
"profiles]informations sur les profils d'interaction dans la spécification "
"OpenXR[/url]."

msgid "Retrieve the binding at this index."
msgstr "Récupère la liaison à cet index."

msgid "Get the number of bindings in this interaction profile."
msgstr "Obtient le nombre de liaisons dans ce profil d'interaction."

msgid "Get the [OpenXRBindingModifier] at this index."
msgstr "Obtient le [OpenXRBindingModifier] à cet index."

msgid "Get the number of binding modifiers in this interaction profile."
msgstr ""
"Obtient le nombre de modificateurs de liaison dans ce profil d'interaction."

msgid "Binding modifiers for this interaction profile."
msgstr "Les modificateurs de liaison dans ce profil d'interaction."

msgid "Action bindings for this interaction profile."
msgstr "Les liaisons d'action dans ce profil d'interaction."

msgid "The interaction profile path identifying the XR device."
msgstr "Le chemin de profil d'interaction identifiant le périphérique XR."

msgid "Default OpenXR interaction profile editor."
msgstr "Éditeur de profil d'interaction OpenXR par défaut."

msgid ""
"This is the default OpenXR interaction profile editor that provides a generic "
"interface for editing any interaction profile for which no custom editor has "
"been defined."
msgstr ""
"Il s'agit de l'éditeur de profil d'interaction OpenXR par défaut qui fournit "
"une interface générique pour l'édition de tout profil d'interaction pour "
"lequel aucun éditeur personnalisé n'a été défini."

msgid "Base class for editing interaction profiles."
msgstr "Classe de base pour l'édition des profils d'interaction."

msgid ""
"This is a base class for interaction profile editors used by the OpenXR "
"action map editor. It can be used to create bespoke editors for specific "
"interaction profiles."
msgstr ""
"Il s'agit d'une classe de base pour les éditeurs de profil d'interaction "
"utilisé par l'éditeur d'action map OpenXR. Elle peut être utilisée pour créer "
"des éditeurs sur mesure pour des profils d'interaction spécifiques."

msgid ""
"Setup this editor for the provided [param action_map] and [param "
"interaction_profile]."
msgstr ""
"Configure cet éditeur pour l'[param action_map] et le profil d'interaction "
"[param interaction_profile] fournis."

msgid "Meta class registering supported devices in OpenXR."
msgstr "Classe méta enregistrant les périphériques supportés dans OpenXR."

msgid ""
"This class allows OpenXR core and extensions to register metadata relating to "
"supported interaction devices such as controllers, trackers, haptic devices, "
"etc. It is primarily used by the action map editor and to sanitize any action "
"map by removing extension-dependent entries when applicable."
msgstr ""
"Cette classe permet au noyau OpenXR et aux extensions d'enregistrer les "
"métadonnées relatives aux périphériques d'interaction supportés tels que les "
"contrôleurs, les trackers, les périphériques haptiques, etc. Elle est "
"principalement utilisée par l'éditeur d'action map et pour assainir toute "
"action map en supprimant les entrées dépendantes d'une extension le cas "
"échéant."

msgid ""
"Registers an interaction profile using its OpenXR designation (e.g. [code]/"
"interaction_profiles/khr/simple_controller[/code] is the profile for OpenXR's "
"simple controller profile).\n"
"[param display_name] is the description shown to the user. [param "
"openxr_path] is the interaction profile path being registered. [param "
"openxr_extension_name] optionally restricts this profile to the given "
"extension being enabled/available. If the extension is not available, the "
"profile and all related entries used in an action map are filtered out."
msgstr ""
"Enregistre un profil d'interaction en utilisant sa désignation OpenXR (p. ex. "
"[code]/interaction_profiles/khr/simple_controller[/code] est le profil pour "
"le profil de contrôleur simple d'OpenXR).\n"
"[param display_name] est la description affichée à l'utilisateur. [param "
"openxr_path] est le chemin du profil d'interaction enregistré. [param "
"openxr_extension_name] limite en option ce profil à l'activation/"
"disponibilité de l'action donnée. Si l'extension n'est pas disponible, le "
"profil et toutes les entrées connexes utilisées dans une action map sont "
"retirés."

msgid ""
"Allows for renaming old interaction profile paths to new paths to maintain "
"backwards compatibility with older action maps."
msgstr ""
"Permet de renommer les vieux chemins de profil d'interaction vers de nouveaux "
"chemins pour maintenir la rétrocompatibilité avec les action maps plus "
"anciennes."

msgid "Our OpenXR interface."
msgstr "Notre interface OpenXR."

msgid "Setting up XR"
msgstr "Configuration de la XR"

msgid ""
"Use [method XRHandTracker.get_hand_joint_angular_velocity] obtained from "
"[method XRServer.get_tracker] instead."
msgstr ""
"Utilisez [method XRHandTracker.get_hand_joint_angular_velocity] obtenue de "
"[method XRServer.get_tracker] à la place."

msgid ""
"If handtracking is enabled, returns the angular velocity of a joint ([param "
"joint]) of a hand ([param hand]) as provided by OpenXR. This is relative to "
"[XROrigin3D]!"
msgstr ""
"Si le suivi des mains est activé, renvoie la vélocité angulaire d'une "
"articulation ([param joint]) d'une main ([param hand]) comme fourni par "
"OpenXR. Elle est relative à la [XROrigin3D] !"

msgid ""
"Use [method XRHandTracker.get_hand_joint_flags] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Utilisez [method XRHandTracker.get_hand_joint_flags] obtenue de [method "
"XRServer.get_tracker] à la place."

msgid ""
"Use [method XRHandTracker.get_hand_joint_linear_velocity] obtained from "
"[method XRServer.get_tracker] instead."
msgstr ""
"Utilisez [method XRHandTracker.get_hand_joint_linear_velocity] obtenue de "
"[method XRServer.get_tracker] à la place."

msgid ""
"If handtracking is enabled, returns the linear velocity of a joint ([param "
"joint]) of a hand ([param hand]) as provided by OpenXR. This is relative to "
"[XROrigin3D] without worldscale applied!"
msgstr ""
"Si le suivi des mains est activé, renvoie la vélocité linéaire d'une "
"articulation ([param joint]) d'une main ([param hand]) comme fourni par "
"OpenXR. Elle est relative à la [XROrigin3D] sans échelle du monde appliquée !"

msgid ""
"Use [method XRHandTracker.get_hand_joint_transform] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Utilisez [method XRHandTracker.get_hand_joint_transform] obtenue de [method "
"XRServer.get_tracker] à la place."

msgid ""
"If handtracking is enabled, returns the position of a joint ([param joint]) "
"of a hand ([param hand]) as provided by OpenXR. This is relative to "
"[XROrigin3D] without worldscale applied!"
msgstr ""
"Si le suivi des mains est activé, renvoie la position d'une articulation "
"([param joint]) d'une main ([param hand]) comme fourni par OpenXR. Elle est "
"relative à la [XROrigin3D] sans échelle du monde appliquée !"

msgid ""
"Use [method XRHandTracker.get_hand_joint_radius] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Utilisez [method XRHandTracker.get_hand_joint_radius] obtenue de [method "
"XRServer.get_tracker] à la place."

msgid ""
"If handtracking is enabled, returns the radius of a joint ([param joint]) of "
"a hand ([param hand]) as provided by OpenXR. This is without worldscale "
"applied!"
msgstr ""
"Si le suivi des mains est activé, renvoie le rayon d'une articulation ([param "
"joint]) d'une main ([param hand]) comme fourni par OpenXR. Aucune échelle du "
"monde n'est appliquée dessus !"

msgid ""
"If handtracking is enabled, returns the rotation of a joint ([param joint]) "
"of a hand ([param hand]) as provided by OpenXR."
msgstr ""
"Si le suivi des mains est activé, renvoie la rotation d'une articulation "
"([param joint]) d'une main ([param hand]) comme fourni par OpenXR."

msgid ""
"Use [member XRHandTracker.hand_tracking_source] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Utilisez [member XRHandTracker.hand_tracking_source] obtenue de [method "
"XRServer.get_tracker] à la place."

msgid "Returns the current state of our OpenXR session."
msgstr "Renvoie l'état actuel de notre session OpenXR."

msgid "Returns [code]true[/code] if the given action set is active."
msgstr "Renvoie [code]true[/code] si l'ensemble d'actions donné est actif."

msgid ""
"Returns [code]true[/code] if OpenXR's hand interaction profile is supported "
"and enabled.\n"
"[b]Note:[/b] This only returns a valid value after OpenXR has been "
"initialized."
msgstr ""
"Renvoie [code]true[/code] si le profil d'interaction de mains d'OpenXR est "
"pris en charge et activé.\n"
"[b]Note :[/b] Cela ne renvoie qu'une valeur valide qu'après que OpenXR a été "
"initialisé."

msgid ""
"Returns [code]true[/code] if OpenXR's hand tracking is supported and "
"enabled.\n"
"[b]Note:[/b] This only returns a valid value after OpenXR has been "
"initialized."
msgstr ""
"Renvoie [code]true[/code] si le suivi de mains d'OpenXR est pris en charge et "
"activé.\n"
"[b]Note :[/b] Cela ne renvoie qu'une valeur valide qu'après que OpenXR a été "
"initialisé."

msgid "Sets the given action set as active or inactive."
msgstr "Définit l'ensemble d'actions donné comme actif ou inactif."

msgid "Sets the CPU performance level of the OpenXR device."
msgstr "Définit le niveau de performance CPU du périphérique OpenXR."

msgid "Sets the GPU performance level of the OpenXR device."
msgstr "Définit le niveau de performance GPU du périphérique OpenXR."

msgid "Informs our OpenXR instance is exiting."
msgstr "Informe que notre instance OpenXR est en train de quitter."

msgid "Informs our OpenXR session is stopping."
msgstr "Informe que notre session OpenXR s'arrête."

msgid ""
"The initial state after the OpenXR session is created or after the session is "
"destroyed."
msgstr ""
"L'état initial après que la session OpenXR soit créée ou après que la session "
"soit détruite."

msgid ""
"Our session is being stopped. [signal session_stopping] is emitted when we "
"change to this state."
msgstr ""
"Notre session est en train d'être arrêtée. [signal session_stopping] est émis "
"lorsque nous changeons vers cet état."

msgid ""
"The session is about to be lost. [signal session_loss_pending] is emitted "
"when we change to this state."
msgstr ""
"La session va être perdue. [signal session_loss_pending] est émis lorsque "
"nous changeons vers cet état."

msgid "Left hand."
msgstr "Main gauche."

msgid "Right hand."
msgstr "Main droite."

msgid "Maximum value for the hand enum."
msgstr "Valeur maximale pour l'énumération de la main."

msgid "Represents the size of the [enum HandTrackedSource] enum."
msgstr "Représente la taille de l'énumération [enum HandTrackedSource]."

msgid "Palm joint."
msgstr "Articulation de la paume."

msgid "Wrist joint."
msgstr "Articulation du poignet."

msgid "Thumb metacarpal joint."
msgstr "Articulation métacarpienne du pouce."

msgid "Thumb proximal joint."
msgstr "Articulation proximale du pouce."

msgid "Thumb distal joint."
msgstr "Articulation distale du pouce."

msgid "Thumb tip joint."
msgstr "Articulation du bout du pouce."

msgid "Index finger metacarpal joint."
msgstr "Articulation métacarpienne de l'index."

msgid "Index finger phalanx proximal joint."
msgstr "Articulation de la phalange proximale de l'index."

msgid "Index finger phalanx intermediate joint."
msgstr "Articulation de la phalange intermédiaire de l'index."

msgid "Index finger phalanx distal joint."
msgstr "Articulation de la phalange distale de l'index."

msgid "Index finger tip joint."
msgstr "Articulation du bout de l'index."

msgid "Middle finger metacarpal joint."
msgstr "Articulation métacarpale du majeur."

msgid "Middle finger phalanx proximal joint."
msgstr "Articulation de la phalange proximale du majeur."

msgid "Middle finger phalanx intermediate joint."
msgstr "Articulation de la phalange intermédiaire du majeur."

msgid "Middle finger phalanx distal joint."
msgstr "Articulation de la phalange distale du majeur."

msgid "Middle finger tip joint."
msgstr "Articulation du bout du majeur."

msgid "Ring finger metacarpal joint."
msgstr "Articulation métacarpienne de l'annulaire."

msgid "Ring finger phalanx proximal joint."
msgstr "Articulation de la phalange proximale de l'annulaire."

msgid "Ring finger phalanx intermediate joint."
msgstr "Articulation de la phalange intermédiaire de l'annulaire."

msgid "Ring finger phalanx distal joint."
msgstr "Articulation de la phalange distale de l'auriculaire."

msgid "Ring finger tip joint."
msgstr "Articulation du bout de l'annulaire."

msgid "Pinky finger metacarpal joint."
msgstr "Articulation métacarpienne de l'auriculaire."

msgid "Pinky finger phalanx proximal joint."
msgstr "Articulation de la phalange proximale de l'auriculaire."

msgid "Pinky finger phalanx intermediate joint."
msgstr "Articulation de la phalange intermédiaire de l'auriculaire."

msgid "Pinky finger phalanx distal joint."
msgstr "Articulation de la phalange distale de l'auriculaire."

msgid "Pinky finger tip joint."
msgstr "Articulation du bout de l'auriculaire."

msgid "Represents the size of the [enum HandJoints] enum."
msgstr "Représente la taille de l'énumération [enum HandJoints]."

msgid "No flags are set."
msgstr "Aucun drapeau n'est défini."

msgid ""
"If set, our linear velocity data is valid, otherwise, the linear velocity "
"data is unreliable and should not be used."
msgstr ""
"Si défini, nos données de vitesse linéaire sont valides, sinon, les données "
"de vitesse linéaire sont peu fiables et ne devraient pas être utilisées."

msgid ""
"If set, our angular velocity data is valid, otherwise, the angular velocity "
"data is unreliable and should not be used."
msgstr ""
"Si défini, nos données de vitesse angulaire sont valides, sinon, les données "
"de vitesse angulaire sont peu fiables et ne devraient pas être utilisées."

msgid "Defines a binding between an [OpenXRAction] and an XR input or output."
msgstr ""
"Définit une liaison entre une [OpenXRAction] et une entrée ou sortie XR."

msgid "Binding is for a single path."
msgstr "La liaison est pour un seul chemin."

msgid "Add an input/output path to this binding."
msgstr "Ajoute un lien d'entrée/sortie à cette liaison."

msgid "Get the number of binding modifiers for this binding."
msgstr "Obtient le nombre de modificateurs de liaison pour cette liaison."

msgid "Get the number of input/output paths in this binding."
msgstr "Obtient le nombre de chemins d'entrée/sortie dans cette liaison."

msgid "Removes this input/output path from this binding."
msgstr "Retire ce lien d'entrée/sortie de cette liaison."

msgid "Binding modifiers for this binding."
msgstr "Modificateurs de liaison pour cette liaison."

msgid "Use [member binding_path] instead."
msgstr "Utilisez [member binding_path] à la place."

msgid "Binding modifier that applies directly on an interaction profile."
msgstr ""
"Modificateur de liaison qui s'applique directement sur un profil "
"d'interaction."

msgid "This node will display an OpenXR render model."
msgstr "Ce nœud affichera un modèle de rendu OpenXR."

msgid "Draws a stereo correct visibility mask."
msgstr "Dessine un masque de visibilité de correction stéréo."

msgid ""
"The visibility mask allows us to black out the part of the render result that "
"is invisible due to lens distortion.\n"
"As this is rendered first, it prevents fragments with expensive lighting "
"calculations to be processed as they are discarded through z-checking."
msgstr ""
"Le masque de visibilité nous permet de noircir la partie du résultat du rendu "
"qui est invisible en raison de la distorsion de la lentille.\n"
"Comme cela est rendu en premier, il empêche les fragments avec des calculs "
"d'éclairage coûteux d'être traités car ils sont supprimés par du z-checking."

msgid "An optimized translation, used by default for CSV Translations."
msgstr "Une traduction optimisée, utilisée par défaut pour les traductions CSV."

msgid ""
"An optimized translation, used by default for CSV Translations. Uses real-"
"time compressed translations, which results in very small dictionaries."
msgstr ""
"Une traduction optimisée, utilisée par défaut pour les traductions CSV. "
"Utilise des traductions compressées en temps réel, ce qui résulte en de très "
"petits dictionnaires."

msgid ""
"Generates and sets an optimized translation from the given [Translation] "
"resource.\n"
"[b]Note:[/b] This method is intended to be used in the editor. It does "
"nothing when called from an exported project."
msgstr ""
"Génère et crée une traduction optimisée de la ressource [Translation] "
"donnée.\n"
"[b]Note :[/b] Cette méthode est destinée à être utilisée dans l'éditeur. Elle "
"ne fait rien lorsqu'on l'appelle depuis un projet exporté."

msgid "Clears all the items in the [OptionButton]."
msgstr "Retire tous les éléments du [OptionButton]."

msgid ""
"Retrieves the metadata of an item. Metadata may be any type and can be used "
"to store extra information about an item, such as an external string ID."
msgstr ""
"Récupère les méta-données d'un élément. Les méta-données peuvent être de "
"n'importe quel type et peuvent être utilisées pour enregistrer des "
"informations additionnelles sur un élément, comme un identifiant externe."

msgid "Returns the text of the item at index [param idx]."
msgstr "Renvoie le texte de l'élément à l'index [param idx]."

msgid "Returns the tooltip of the item at index [param idx]."
msgstr "Renvoie l'infobulle de l'élément à l'index [param idx]."

msgid ""
"Returns the ID of the selected item, or [code]-1[/code] if no item is "
"selected."
msgstr ""
"Renvoie l'identifiant de l’élément sélectionné, ou [code]-1[/code] si aucun "
"n'est sélectionné."

msgid ""
"Gets the metadata of the selected item. Metadata for items can be set using "
"[method set_item_metadata]."
msgstr ""
"Obtient les métadonnées de l'élément sélectionné. Les métadonnées peuvent "
"être définies en utilisant [method set_item_metadata]."

msgid "Removes the item at index [param idx]."
msgstr "Retire l'élément à l'index [param idx]."

msgid ""
"Selects an item by index and makes it the current item. This will work even "
"if the item is disabled.\n"
"Passing [code]-1[/code] as the index deselects any currently selected item."
msgstr ""
"Sélectionne un élément par son index et en fait l'élément actuel. Cela "
"fonctionnera même si l'élément est désactivé.\n"
"Passer [code]-1[/code] en index désélectionne tout élément actuellement "
"sélectionné."

msgid ""
"Sets the metadata of an item. Metadata may be of any type and can be used to "
"store extra information about an item, such as an external string ID."
msgstr ""
"Définit les métadonnées d'un élément. Les métadonnées peuvent être de "
"n'importe quel type et peuvent être utilisées pour stocker des informations "
"supplémentaires sur un élément, comme un identifiant de chaîne externe."

msgid ""
"The index of the currently selected item, or [code]-1[/code] if no item is "
"selected."
msgstr ""
"L'index de l'élément actuellement sélectionné, ou [code]-1[/code] si aucun "
"élément n'est sélectionné."

msgid ""
"The horizontal space between the arrow icon and the right edge of the button."
msgstr ""
"L'espace horizontal entre l'icône de la flèche et le bord droit du bouton."

msgid "The arrow icon to be drawn on the right end of the button."
msgstr "L'icône de la flèche qui est affichée au bord droit du bouton."

msgid ""
"A PBR (Physically Based Rendering) material to be used on 3D objects. Uses an "
"ORM texture."
msgstr ""
"Un matériau PBR (Physically Based Rendering, litt. \"Rendu basé sur la "
"physique\") à utiliser sur des objets 3D. Utilise une texture ORM."

msgid ""
"ORMMaterial3D's properties are inherited from [BaseMaterial3D]. Unlike "
"[StandardMaterial3D], ORMMaterial3D uses a single texture for ambient "
"occlusion, roughness and metallic maps, known as an ORM texture."
msgstr ""
"Les propriétés de ORMMaterial3D sont héritées de [BaseMaterial3D]. "
"Contrairement à [StandardMaterial3D], ORMMaterial3D utilise une texture "
"unique pour l'occlusion ambiante, la rugosité et les metallic maps, appelée "
"texture ORM."

msgid ""
"Returns the file path to the current engine executable.\n"
"[b]Note:[/b] On macOS, if you want to launch another instance of Godot, "
"always use [method create_instance] instead of relying on the executable path."
msgstr ""
"Renvoie le chemin de fichier vers l'exécutable actuel du moteur.\n"
"[b]Note :[/b] Sur macOS, si vous voulez lancer une autre instance de Godot, "
"utilisez toujours [method create_instance] au lieu de vous baser sur le "
"chemin de l'exécutable."

msgid ""
"Returns the number of [i]logical[/i] CPU cores available on the host machine. "
"On CPUs with HyperThreading enabled, this number will be greater than the "
"number of [i]physical[/i] CPU cores."
msgstr ""
"Renvoie le nombre de cœurs [i]logiques[/i] du CPU disponibles sur la machine "
"hôte. Sur les processeurs avec le mode HyperThreading activé, ce nombre sera "
"supérieur au nombre de cœurs [i]physiques[/i] du CPU."

msgid ""
"Returns the ID of the current thread. This can be used in logs to ease "
"debugging of multi-threaded applications.\n"
"[b]Note:[/b] Thread IDs are not deterministic and may be reused across "
"application restarts."
msgstr ""
"Renvoie l'identifiant du fil d'exécution actuel. Cela peut être utile dans "
"les journaux pour faciliter le débogage des applications à plusieurs fils "
"d'exécution.\n"
"[b]Note :[/b] Ces identifiants ne sont pas déterministes et peuvent être "
"réutilisés durant plusieurs lancement de l'application."

msgid ""
"Moves the file or directory at the given [param path] to the system's recycle "
"bin. See also [method DirAccess.remove].\n"
"The method takes only global paths, so you may need to use [method "
"ProjectSettings.globalize_path]. Do not use it for files in [code]res://[/"
"code] as it will not work in exported projects.\n"
"Returns [constant FAILED] if the file or directory cannot be found, or the "
"system does not support this method.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var file_to_remove = \"user://slot1.save\"\n"
"OS.move_to_trash(ProjectSettings.globalize_path(file_to_remove))\n"
"[/gdscript]\n"
"[csharp]\n"
"var fileToRemove = \"user://slot1.save\";\n"
"OS.MoveToTrash(ProjectSettings.GlobalizePath(fileToRemove));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and "
"Windows.\n"
"[b]Note:[/b] If the user has disabled the recycle bin on their system, the "
"file will be permanently deleted instead."
msgstr ""
"Déplace le fichier ou le répertoire au chemin [param path] donné vers la "
"corbeille du système. Voir aussi [method DirAccess.remove].\n"
"La méthode ne prend que des chemins globaux, donc vous pouvez avoir besoin "
"d'utiliser [method ProjectSettings.globalize_path]. Ne l'utilisez pas pour "
"les fichiers dans [code]res://[/code] car elle ne fonctionnera pas dans les "
"projets exportés.\n"
"Renvoie [constant FAILED] si le fichier ou le répertoire ne peut pas être "
"trouvé, ou si le système ne supporte pas cette méthode.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fichier_a_supprimer = \"user://slot1.save\"\n"
"OS.move_to_trash(ProjectSettings.globalize_path(fichier_a_supprimer))\n"
"[/gdscript]\n"
"[csharp]\n"
"var fichierASupprimer = \"user://slot1.save\";\n"
"OS.MoveToTrash(ProjectSettings.GlobalizePath(fichierASupprimer));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Cette méthode est implémentée sur Android, Linux, macOS et "
"Windows.\n"
"[b]Note :[/b] Si l'utilisateur a désactivé la corbeille sur son système, le "
"fichier sera définitivement supprimé à la place."

msgid ""
"Requests the OS to open a resource identified by [param uri] with the most "
"appropriate program. For example:\n"
"- [code]OS.shell_open(\"C:\\\\Users\\\\name\\\\Downloads\")[/code] on Windows "
"opens the file explorer at the user's Downloads folder.\n"
"- [code]OS.shell_open(\"C:/Users/name/Downloads\")[/code] also works on "
"Windows and opens the file explorer at the user's Downloads folder.\n"
"- [code]OS.shell_open(\"https://godotengine.org\")[/code] opens the default "
"web browser on the official Godot website.\n"
"- [code]OS.shell_open(\"mailto:example@example.com\")[/code] opens the "
"default email client with the \"To\" field set to [code]example@example.com[/"
"code]. See [url=https://datatracker.ietf.org/doc/html/rfc2368]RFC 2368 - The "
"[code]mailto[/code] URL scheme[/url] for a list of fields that can be added.\n"
"Use [method ProjectSettings.globalize_path] to convert a [code]res://[/code] "
"or [code]user://[/code] project path into a system path for use with this "
"method.\n"
"[b]Note:[/b] Use [method String.uri_encode] to encode characters within URLs "
"in a URL-safe, portable way. This is especially required for line breaks. "
"Otherwise, [method shell_open] may not work correctly in a project exported "
"to the Web platform.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux, macOS "
"and Windows."
msgstr ""
"Demande au système d'exploitation d'ouvrir une ressource identifiée par "
"[param uri] avec le programme le plus approprié. Par exemple :\n"
"- [code]OS.shell_open(\"C:\\\\Users\\\\nom\\\\Téléchargement\")[/code] sous "
"Windows ouvre le gestionnaire de fichiers dans le dossier de Téléchargements "
"de l'utilisateur.\n"
"- [code]OS.shell_open(\"C:/Users/nom/Téléchargement\")[/code] marche aussi "
"sous Windows et ouvre le gestionnaire de fichiers dans le dossier de "
"Téléchargements de l'utilisateur.\n"
"- [code]OS.shell_open(\"https://godotengine.org\")[/code] ouvre le site "
"officiel de Godot dans le navigateur web par défaut.\n"
"- [code]OS.shell_open(\"mailto:example@example.com\")[/code] ouvre le client "
"mail par défaut avec le champs destinataire définit à "
"[code]example@example.com[/code]. Voir [url=https://datatracker.ietf.org/doc/"
"html/rfc2368]RFC 2368 - The [code]mailto[/code] URL scheme[/url] pour la "
"liste des champs qui peuvent être ajoutés.\n"
"Utilisez [method ProjectSettings.globalize_path] pour convertir un chemin "
"[code]res://[/code] ou [code]user://[/code] en un chemin système qui peut "
"être utilisé avec cette méthode.\n"
"[b]Note :[/b] Utilisez [method String.uri_encode] pour encoder des caractères "
"dans une URL de manière lisible et portable pour une URL. Cela est "
"particulièrement requis pour les retours à la ligne. Sinon, [method "
"shell_open] pourrait ne pas fonctionner correctement dans un projet exporté "
"pour la plate-forme Web.\n"
"[b]Note :[/b] Cette méthode est implémentée sous Android, iOS, Web, Linux, "
"macOS et Windows."

msgid "The Metal rendering driver."
msgstr "Le driver de rendu Metal."

msgid "A packed array of bytes."
msgstr "Un tableau compacté d'octets."

msgid ""
"An array specifically designed to hold bytes. Packs data tightly, so it saves "
"memory for large array sizes.\n"
"[PackedByteArray] also provides methods to encode/decode various types to/"
"from bytes. The way values are encoded is an implementation detail and "
"shouldn't be relied upon when interacting with external apps.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Un tableau spécialement conçu pour contenir des octets. Compacte les données "
"de manière serrée, il sauve de la mémoire pour les grandes tailles de "
"tableaux.\n"
"[PackedByteArray] fournit également des méthodes pour encoder/décoder "
"différents types vers/depuis des octets. La façon dont les valeurs sont "
"encodées est un détail d'implémentation et ne devrait pas être utilisé lors "
"de l'interaction avec des applications externes.\n"
"[b]Note :[/b] Les tableaux compactés sont toujours passés par référence. Pour "
"obtenir une copie d'un tableau qui peut être modifié indépendamment du "
"tableau original, utilisez [method duplicate]. Ceci n'est [i]pas[/i] le cas "
"pour les propriétés et les méthodes intégrées. Le tableau compacté renvoyé de "
"ceux-ci est une copie, et le changer n'affectera [i]pas[/i] la valeur "
"originale. Pour mettre à jour une propriété intégrée, vous devez modifier le "
"tableau renvoyé, puis l'affecter à nouveau à la propriété."

msgid "Constructs an empty [PackedByteArray]."
msgstr "Construit un [PackedByteArray] vide."

msgid "Constructs a [PackedByteArray] as a copy of the given [PackedByteArray]."
msgstr ""
"Construit un [PackedByteArray] comme une copie du [PackedByteArray] donné."

msgid ""
"Constructs a new [PackedByteArray]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Construit un nouveau [PackedByteArray]. Optionnellement, vous pouvez passer "
"un [Array] générique qui sera converti."

msgid ""
"Appends an element at the end of the array (alias of [method push_back])."
msgstr ""
"Ajoute un élément à la fin du tableau (c'est un raccourci vers [method "
"push_back])."

msgid "Appends a [PackedByteArray] at the end of this array."
msgstr "Ajoute un [PackedByteArray] à la fin de ce tableau."

msgid ""
"Finds the index of an existing value (or the insertion index that maintains "
"sorting order, if the value is not yet present in the array) using binary "
"search. Optionally, a [param before] specifier can be passed. If [code]false[/"
"code], the returned index comes after all existing entries of the value in "
"the array.\n"
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior."
msgstr ""
"Cherche l'index d'une valeur existante (ou l'index d'insertion qui maintient "
"l'ordre de tri, si la valeur n'est pas encore présente dans le tableau) en "
"utilisant la recherche binaire. Optionnellement, un spécificateur [param "
"before] peut être passé. Si [code]false[/code], l'index renvoyé vient après "
"toutes les entrées existantes de la valeur dans le tableau.\n"
"[b]Note :[/b] Appeler [method bsearch] sur un tableau non trié résulte en un "
"comportement inattendu."

msgid ""
"Swaps the byte order of [param count] 16-bit segments of the array starting "
"at [param offset]. Swap is done in-place. If [param count] is less than zero, "
"all segments to the end of array are processed, if processed data size is not "
"a multiple of 2, the byte after the last processed 16-bit segment is not "
"modified."
msgstr ""
"Inverse l'ordre des octets de [param count] segments de 16-bit du tableau à "
"partir de [param offset]. L'inversion est faite en place. Si [param count] "
"est inférieur à zéro, tous les segments jusqu'à la fin du tableau sont "
"traités, et si la taille des données traitées n'est pas un multiple de 2, "
"l'octet après le dernier segment 16-bit traité n'est pas modifié."

msgid ""
"Swaps the byte order of [param count] 32-bit segments of the array starting "
"at [param offset]. Swap is done in-place. If [param count] is less than zero, "
"all segments to the end of array are processed, if processed data size is not "
"a multiple of 4, bytes after the last processed 32-bit segment are not "
"modified."
msgstr ""
"Inverse l'ordre des octets de [param count] segments de 32-bit du tableau à "
"partir de [param offset]. L'inversion est faite en place. Si [param count] "
"est inférieur à zéro, tous les segments jusqu'à la fin du tableau sont "
"traités, et si la taille des données traitées n'est pas un multiple de 4, "
"l'octet après le dernier segment 32-bit traité n'est pas modifié."

msgid ""
"Swaps the byte order of [param count] 64-bit segments of the array starting "
"at [param offset]. Swap is done in-place. If [param count] is less than zero, "
"all segments to the end of array are processed, if processed data size is not "
"a multiple of 8, bytes after the last processed 64-bit segment are not "
"modified."
msgstr ""
"Inverse l'ordre des octets de [param count] segments de 64-bit du tableau à "
"partir de [param offset]. L'inversion est faite en place. Si [param count] "
"est inférieur à zéro, tous les segments jusqu'à la fin du tableau sont "
"traités, et si la taille des données traitées n'est pas un multiple de 8, "
"l'octet après le dernier segment 64-bit traité n'est pas modifié."

msgid ""
"Clears the array. This is equivalent to using [method resize] with a size of "
"[code]0[/code]."
msgstr ""
"Efface le contenu du tableau. C'est équivalent à [method resize] avec une "
"taille de [code]0[/code]."

msgid ""
"Returns a new [PackedByteArray] with the data compressed. Set the compression "
"mode using one of [enum FileAccess.CompressionMode]'s constants."
msgstr ""
"Renvoie un nouveau [PackedByteArray] avec les données compressées. Définissez "
"le mode de compression en utilisant l'une des constantes de [enum "
"FileAccess.CompressionMode]."

msgid "Returns the number of times an element is in the array."
msgstr "Renvoie le nombre de fois qu'un élément apparaît dans le tableau."

msgid ""
"Decodes a 64-bit floating-point number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0.0[/"
"code] if a valid number can't be decoded."
msgstr ""
"Décode un nombre flottant de 64 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0.0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 32-bit floating-point number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0.0[/"
"code] if a valid number can't be decoded."
msgstr ""
"Décode un nombre flottant de 32 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0.0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 16-bit floating-point number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0.0[/"
"code] if a valid number can't be decoded."
msgstr ""
"Décode un nombre flottant de 16 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0.0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 8-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier signé de 8 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 16-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier signé de 16 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 32-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier signé de 32 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 64-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier signé de 64 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 8-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier non signé de 32 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 16-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier non signé de 16 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 32-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier non signé de 32 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a 64-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Décode un entier non signé de 64 bits à partir des octets commençant après le "
"décalage [param byte_offset]. Échoue si le nombre d'octets est insuffisant. "
"Renvoie [code]0[/code] si un nombre valide ne peut pas être décodé."

msgid ""
"Decodes a [Variant] from the bytes starting at [param byte_offset]. Returns "
"[code]null[/code] if a valid variant can't be decoded or the value is "
"[Object]-derived and [param allow_objects] is [code]false[/code]."
msgstr ""
"Décode un [Variant] à partir des octets commençant après le décalage [param "
"byte_offset]. Renvoie [code]null[/code] si un variant valide ne peut être "
"décodé ou si la valeur est dérivée d'[Object] et [param allow_objects] vaut "
"[code]false[/code]."

msgid ""
"Decodes a size of a [Variant] from the bytes starting at [param byte_offset]. "
"Requires at least 4 bytes of data starting at the offset, otherwise fails."
msgstr ""
"Décode la taille d'un [Variant] à partir des octets commençant après le "
"décalage [param byte_offset]. Requiert au moins 4 octets de données "
"commençant à partir du décalage, échoue sinon."

msgid ""
"Returns a new [PackedByteArray] with the data decompressed. Set [param "
"buffer_size] to the size of the uncompressed data. Set the compression mode "
"using one of [enum FileAccess.CompressionMode]'s constants.\n"
"[b]Note:[/b] Decompression is not guaranteed to work with data not compressed "
"by Godot, for example if data compressed with the deflate compression mode "
"lacks a checksum or header."
msgstr ""
"Renvoie un nouveau [PackedByteArray] avec les données décompressées. Définit "
"[param buffer_size] à la taille des données non compressées. Définit le mode "
"de compression en utilisant l'une des constantes de [enum "
"FileAccess.CompressionMode].\n"
"[b]Note :[/b] La décompression n'est pas garantie de marcher avec des données "
"non compressées par Godot, par exemple si les données compressées avec le "
"mode de compression deflate n'ont pas de checksum ou d'entête."

msgid ""
"Returns a new [PackedByteArray] with the data decompressed. Set the "
"compression mode using one of [enum FileAccess.CompressionMode]'s constants. "
"[b]This method only accepts brotli, gzip, and deflate compression modes.[/b]\n"
"This method is potentially slower than [method decompress], as it may have to "
"re-allocate its output buffer multiple times while decompressing, whereas "
"[method decompress] knows it's output buffer size from the beginning.\n"
"GZIP has a maximal compression ratio of 1032:1, meaning it's very possible "
"for a small compressed payload to decompress to a potentially very large "
"output. To guard against this, you may provide a maximum size this function "
"is allowed to allocate in bytes via [param max_output_size]. Passing -1 will "
"allow for unbounded output. If any positive value is passed, and the "
"decompression exceeds that amount in bytes, then an error will be returned.\n"
"[b]Note:[/b] Decompression is not guaranteed to work with data not compressed "
"by Godot, for example if data compressed with the deflate compression mode "
"lacks a checksum or header."
msgstr ""
"Renvoie un nouveau [PackedByteArray] avec les données décompressées. Réglez "
"le mode de compression en utilisant l'une des constantes de [enum "
"FileAccess.CompressionMode]. [b]Cette méthode n'accepte que les modes de "
"compression brotli, gzip et deflate[/b]\n"
"Cette méthode est potentiellement plus lente que [method decompress], car "
"elle peut avoir à réaffecter son tampon de sortie plusieurs fois en "
"décompressant, alors que [method decompress] sait sa taille du tampon de "
"sortie du début.\n"
"GZIP a un rapport de compression maximal de 1032:1, ce qui signifie qu'il est "
"très possible pour une petite charge utile comprimée de décompresser en une "
"sortie potentiellement très grande. Pour éviter cela, vous pouvez fournir une "
"taille maximale que cette fonction est autorisée à attribuer en octets via "
"[param max_output_size]. Passer -1 permettra une sortie non limitée. Si une "
"valeur positive est passée et que la décompression dépasse ce montant en "
"octets, une erreur sera renvoyée.\n"
"[b]Note :[/b] La décompression n'est pas garantie de marcher avec des données "
"non compressées par Godot, par exemple si les données compressées avec le "
"mode de compression deflate n'ont pas de checksum ou d'entête."

msgid "Creates a copy of the array, and returns it."
msgstr "Crée une copie du tableau, et le renvoie."

msgid ""
"Encodes a 64-bit floating-point number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 8 bytes of allocated space, "
"starting at the offset."
msgstr ""
"Encode un nombre flottant de 64 bits en octets à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 8 octets d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a 32-bit floating-point number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 4 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un nombre flottant de 32 bits en octets à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 4 octets d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a 16-bit floating-point number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 2 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un nombre flottant de 16 bits en octets à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 2 octets d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a 8-bit signed integer number (signed byte) at the index of [param "
"byte_offset] bytes. The array must have at least 1 byte of space, starting at "
"the offset."
msgstr ""
"Encode un entier signé de 8 bits (octet signé) à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 1 octet d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a 16-bit signed integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 2 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un entier signé de 16 bits en octets à l'index du [param byte_offset]-"
"ème octet. Le tableau doit avoir au moins 2 octets d'espace alloué à partir "
"du décalage."

msgid ""
"Encodes a 32-bit signed integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 4 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un entier signé de 32 bits en octets à l'index du [param byte_offset]-"
"ème octet. Le tableau doit avoir au moins 4 octets d'espace alloué à partir "
"du décalage."

msgid ""
"Encodes a 64-bit signed integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 8 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un entier signé de 64 bits en octets à l'index du [param byte_offset]-"
"ème octet. Le tableau doit avoir au moins 8 octets d'espace alloué à partir "
"du décalage."

msgid ""
"Encodes a 8-bit unsigned integer number (byte) at the index of [param "
"byte_offset] bytes. The array must have at least 1 byte of space, starting at "
"the offset."
msgstr ""
"Encode un entier non-signé de 8 bits (un octet) à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 1 octet d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a 16-bit unsigned integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 2 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un entier non-signé de 16 bits en octets à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 2 octets d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a 32-bit unsigned integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 4 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un entier non-signé de 32 bits en octets à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 4 octets d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a 64-bit unsigned integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 8 bytes of space, starting "
"at the offset."
msgstr ""
"Encode un entier non-signé de 64 bits en octets à l'index du [param "
"byte_offset]-ème octet. Le tableau doit avoir au moins 8 octets d'espace "
"alloué à partir du décalage."

msgid ""
"Encodes a [Variant] at the index of [param byte_offset] bytes. A sufficient "
"space must be allocated, depending on the encoded variant's size. If [param "
"allow_objects] is [code]false[/code], [Object]-derived values are not "
"permitted and will instead be serialized as ID-only."
msgstr ""
"Encode un [Variant] en octets à l'index du [param byte_offset]-ème octet. Une "
"taille suffisante doit être allouée, selon la taille du variant encodé. Si "
"[param allow_objects] vaut [code]false[/code], les valeurs dérivées "
"d'[Object] ne sont pas permises et seront sérialisées en tant qu'ID seulement."

msgid ""
"Removes the first occurrence of a value from the array and returns "
"[code]true[/code]. If the value does not exist in the array, nothing happens "
"and [code]false[/code] is returned. To remove an element by index, use "
"[method remove_at] instead."
msgstr ""
"Retire la première occurrence d'une valeur du tableau et renvoie [code]true[/"
"code]. Si la valeur n'existe pas dans le tableau, rien ne se passe et "
"[code]false[/code] est renvoyé. Pour supprimer un élément par index, utilisez "
"[method remove_at] à la place."

msgid ""
"Assigns the given value to all elements in the array. This can typically be "
"used together with [method resize] to create an array with a given size and "
"initialized elements."
msgstr ""
"Attribue la valeur donnée à tous les éléments du tableau. Cela peut "
"généralement être utilisé avec [method resize] pour créer un tableau avec une "
"taille donnée et des éléments initialisés."

msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed."
msgstr ""
"Recherche dans le tableau pour une valeur et renvoie son index ou [code]-1[/"
"code] si elle n'est pas trouvée. Optionnellement, l'index de recherche "
"initial peut être passé."

msgid ""
"Returns the byte at the given [param index] in the array. If [param index] "
"out-of-bounds or negative, this method fails and returns [code]0[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Renvoie l'octet à l'index [param index] donné dans le tableau. Si [param "
"index] est hors des limites ou négatif, cette méthode échoue et renvoie "
"[code]0[/code].\n"
"Cette méthode est similaire (mais pas identique) à l'opérateur [code][][/"
"code]. Plus particulièrement, lorsque cette méthode échoue, elle ne met pas "
"en pause l'exécution du projet s'il est exécuté depuis l'éditeur."

msgid ""
"Converts ASCII/Latin-1 encoded array to [String]. Fast alternative to [method "
"get_string_from_utf8] if the content is ASCII/Latin-1 only. Unlike the UTF-8 "
"function this function maps every byte to a character in the array. Multibyte "
"sequences will not be interpreted correctly. For parsing user input always "
"use [method get_string_from_utf8]. This is the inverse of [method "
"String.to_ascii_buffer]."
msgstr ""
"Convertit le tableau encodé ASCII/Latin-1 en [String]. Alternative rapide à "
"[method get_string_from_utf8] si le contenu est en ASCII/Latin-1 seulement. "
"Contrairement à la fonction UTF-8, cette fonction cartographie chaque octet à "
"un caractère dans le tableau. Les séquences multi-octets ne seront pas "
"interprétées correctement. Pour interpréter l'entrée utilisateur, utilisez "
"toujours [method get_string_from_utf8]. C'est l'inverse de [method "
"String.to_ascii_buffer]."

msgid ""
"Converts UTF-8 encoded array to [String]. Slower than [method "
"get_string_from_ascii] but supports UTF-8 encoded data. Use this function if "
"you are unsure about the source of the data. For user input this function "
"should always be preferred. Returns empty string if source array is not valid "
"UTF-8 string. This is the inverse of [method String.to_utf8_buffer]."
msgstr ""
"Convertit le tableau encodé UTF-8 en [String]. Plus lent que [method "
"get_string_from_ascii] mais prend en charge les données encodées UTF-8. "
"Utilisez cette fonction si vous n'êtes pas sûr de la source des données. Pour "
"l'entrée utilisateur, cette fonction doit toujours être préférée. Renvoie une "
"chaîne vide si le tableau source n'est pas une chaîne UTF-8 valide. C'est "
"l'inverse de [method String.to_utf8_buffer]."

msgid ""
"Converts UTF-16 encoded array to [String]. If the BOM is missing, little-"
"endianness is assumed. Returns empty string if source array is not valid "
"UTF-16 string. This is the inverse of [method String.to_utf16_buffer]."
msgstr ""
"Convertit le tableau encodé en UTF-16 en [String]. Si l'indicateur d'ordre "
"des octets (BOM) est absent, le petit-boutiste est supposé. Renvoie une "
"chaîne vide si le tableau source n'est pas une chaîne UTF-16 valide. C'est "
"l'inverse de [method String.to_utf16_buffer]."

msgid ""
"Converts UTF-32 encoded array to [String]. Returns empty string if source "
"array is not valid UTF-32 string. This is the inverse of [method "
"String.to_utf32_buffer]."
msgstr ""
"Convertit le tableau encodé UTF-32 en [String]. Renvoie une chaîne vide si le "
"tableau source n'est pas une chaîne UTF-32 valide. C'est l'inverse de [method "
"String.to_utf32_buffer]."

msgid ""
"Converts wide character ([code]wchar_t[/code], UTF-16 on Windows, UTF-32 on "
"other platforms) encoded array to [String]. Returns empty string if source "
"array is not valid wide string. This is the inverse of [method "
"String.to_wchar_buffer]."
msgstr ""
"Convertit un tableau de caractères larges ([code]wchar_t[/code], UTF-16 sur "
"Windows, UTF-32 sur d'autres plates-formes) en [String]. Renvoie une chaîne "
"vide si le tableau source n'est pas une chaîne large valide. C'est l'inverse "
"de [method String.to_wchar_buffer]."

msgid "Returns [code]true[/code] if the array contains [param value]."
msgstr "Renvoie [code]true[/code] si le tableau contient [param value]."

msgid ""
"Returns [code]true[/code] if a valid [Variant] value can be decoded at the "
"[param byte_offset]. Returns [code]false[/code] otherwise or when the value "
"is [Object]-derived and [param allow_objects] is [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si une valeur [Variant] valide peut être décodée au "
"décalage d'octets [param byte_offset]. Renvoie [code]false[/code] sinon ou "
"lorsque la valeur est dérivée d'[Object] et [param allow_objects] vaut "
"[code]false[/code]."

msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = PackedByteArray([11, 46, 255])\n"
"print(array.hex_encode()) # Prints \"0b2eff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"byte[] array = [11, 46, 255];\n"
"GD.Print(array.HexEncode()); // Prints \"0b2eff\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une représentation hexadécimale de ce tableau en tant que [String].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tableau = PackedByteArray([11, 46, 255])\n"
"print(array.hex_encode()) # Affiche \"0b2eff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"byte[] tableau = [11, 46, 255];\n"
"GD.Print(tableau.HexEncode()); // Affiche \"0b2eff\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
"Insérer un nouvel élément à une position donnée dans le tableau. La position "
"doit être valide, ou à la fin du tableau ([code]idx == size()[/code])."

msgid "Returns [code]true[/code] if the array is empty."
msgstr "Renvoie [code]true[/code] si le tableau est vide."

msgid "Appends an element at the end of the array."
msgstr "Ajoute un élément à la fin du tableau."

msgid "Removes an element from the array by index."
msgstr "Retire l'élément du tableau à l'index donné."

msgid ""
"Sets the size of the array. If the array is grown, reserves elements at the "
"end of the array. If the array is shrunk, truncates the array to the new "
"size. Calling [method resize] once and assigning the new values is faster "
"than adding new elements one by one.\n"
"Returns [constant OK] on success, or one of the following [enum Error] "
"constants if this method fails: [constant ERR_INVALID_PARAMETER] if the size "
"is negative, or [constant ERR_OUT_OF_MEMORY] if allocations fail. Use [method "
"size] to find the actual size of the array after resize."
msgstr ""
"Définit la taille du tableau. Si le tableau est agrandi, réserve des éléments "
"à la fin du tableau. Si le tableau est rétrécit, tronque le tableau à la "
"nouvelle taille. Appeler [method resize] une fois et attribuer les nouvelles "
"valeurs est plus rapide que l'ajout de nouveaux éléments un par un.\n"
"Renvoie [constant OK] sur le succès, ou une des constantes [enum Error] "
"suivantes si cette méthode échoue : [constant ERR_INVALID_PARAMETER] si la "
"taille est négative, ou [constant ERR_OUT_OF_MEMORY] si les allocations "
"échouent. Utilisez [method size] pour trouver la taille réelle du tableau "
"après le redimensionnement."

msgid "Reverses the order of the elements in the array."
msgstr "Inverse l'ordre des éléments du tableau."

msgid ""
"Searches the array in reverse order. Optionally, a start search index can be "
"passed. If negative, the start index is considered relative to the end of the "
"array."
msgstr ""
"Cherche le tableau en ordre inverse. Optionnellement, un index de démarrage "
"de recherche peut être passé. Si négatif, l'indice de démarrage est considéré "
"par rapport à la fin du tableau."

msgid "Changes the byte at the given index."
msgstr "Change l'octet à la position donnée."

msgid "Returns the number of elements in the array."
msgstr "Renvoie le nombre d'éléments dans le tableau."

msgid ""
"Returns the slice of the [PackedByteArray], from [param begin] (inclusive) to "
"[param end] (exclusive), as a new [PackedByteArray].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedByteArray], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedByteArray].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid "Sorts the elements of the array in ascending order."
msgstr "Tris les éléments du tableau dans l'ordre croissant."

msgid ""
"Returns a copy of the data converted to a [PackedFloat32Array], where each "
"block of 4 bytes has been converted to a 32-bit float (C++ [code skip-"
"lint]float[/code]).\n"
"The size of the input array must be a multiple of 4 (size of 32-bit float). "
"The size of the new array will be [code]byte_array.size() / 4[/code].\n"
"If the original data can't be converted to 32-bit floats, the resulting data "
"is undefined."
msgstr ""
"Renvoie une copie des données converties en un tableau [PackedFloat32Array], "
"où chaque bloc de 4 octets a été converti en un flottant de 32 bits ([code "
"skip-lint]float[/code] en C++).\n"
"La taille du tableau d'entrée doit être un multiple de 4 (taille d'un "
"flottant 32 bits). La taille du nouveau tableau sera de "
"[code]byte_array.size() / 4[/code].\n"
"Si les données d'origine ne peuvent pas être converties en flottants 32 bits, "
"les données résultantes ne sont pas définies."

msgid ""
"Returns a copy of the data converted to a [PackedFloat64Array], where each "
"block of 8 bytes has been converted to a 64-bit float (C++ [code]double[/"
"code], Godot [float]).\n"
"The size of the input array must be a multiple of 8 (size of 64-bit double). "
"The size of the new array will be [code]byte_array.size() / 8[/code].\n"
"If the original data can't be converted to 64-bit floats, the resulting data "
"is undefined."
msgstr ""
"Renvoie une copie des données converties en un tableau [PackedFloat64Array], "
"où chaque bloc de 8 octets a été converti en un flottant de 64 bits "
"([code]double[/code] en C++, [float] pour Godot).\n"
"La taille du tableau d'entrée doit être un multiple de 8 (taille d'un "
"flottant 64 bits). La taille du nouveau tableau sera de "
"[code]byte_array.size() / 8[/code].\n"
"Si les données d'origine ne peuvent pas être converties en flottants 64 bits, "
"les données résultantes ne sont pas définies."

msgid ""
"Returns a copy of the data converted to a [PackedInt32Array], where each "
"block of 4 bytes has been converted to a signed 32-bit integer (C++ "
"[code]int32_t[/code]).\n"
"The size of the input array must be a multiple of 4 (size of 32-bit integer). "
"The size of the new array will be [code]byte_array.size() / 4[/code].\n"
"If the original data can't be converted to signed 32-bit integers, the "
"resulting data is undefined."
msgstr ""
"Renvoie une copie des données converties en un tableau [PackedInt32Array], où "
"chaque bloc de 4 octets a été converti en un entier signé 32 bits "
"([code]int32_t[/code] en C++)\n"
"La taille du tableau d'entrée doit être un multiple de 4 (taille d'un entier "
"32 bits). La taille du nouveau tableau sera de [code]byte_array.size() / 4[/"
"code].\n"
"Si les données d'origine ne peuvent pas être converties en entiers signés 32 "
"bits, les données résultantes ne sont pas définies."

msgid ""
"Returns a copy of the data converted to a [PackedInt64Array], where each "
"block of 8 bytes has been converted to a signed 64-bit integer (C++ "
"[code]int64_t[/code], Godot [int]).\n"
"The size of the input array must be a multiple of 8 (size of 64-bit integer). "
"The size of the new array will be [code]byte_array.size() / 8[/code].\n"
"If the original data can't be converted to signed 64-bit integers, the "
"resulting data is undefined."
msgstr ""
"Renvoie une copie des données converties en un tableau [PackedInt64Array], où "
"chaque bloc de 8 octets a été converti en un entier signé 64 bits "
"([code]int64_t[/code] en C++, [int] dans Godot)\n"
"La taille du tableau d'entrée doit être un multiple de 8 (taille d'un entier "
"64 bits). La taille du nouveau tableau sera de [code]byte_array.size() / 8[/"
"code].\n"
"Si les données d'origine ne peuvent pas être converties en entiers signés 64 "
"bits, les données résultantes ne sont pas définies."

msgid "Returns [code]true[/code] if contents of the arrays differ."
msgstr "Renvoie [code]true[/code] si le contenu des tableaux diffère."

msgid ""
"Returns a new [PackedByteArray] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedByteArray] avec le contenu de [param right] ajouté "
"à la fin de ce tableau. Pour une meilleure performance, envisagez d'utiliser "
"[method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal bytes at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c'est-"
"à-dire qu'ils ont tous leurs octets égaux aux indices correspondants."

msgid ""
"Returns the byte at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error.\n"
"Note that the byte is returned as a 64-bit [int]."
msgstr ""
"Renvoie l'octet à la position [param index]. Les indices négatifs peuvent "
"être utilisés pour accéder aux éléments à partir de la fin. L'utilisation "
"d'un index hors des limites du tableau entraînera une erreur.\n"
"Notez que l'octet est renvoyé en tant qu'entier 64 bits [int]."

msgid "A packed array of [Color]s."
msgstr "Un tableau compacté de couleurs [Color]."

msgid "Constructs an empty [PackedColorArray]."
msgstr "Construit un [PackedColorArray] vide."

msgid ""
"Constructs a [PackedColorArray] as a copy of the given [PackedColorArray]."
msgstr ""
"Construit un [PackedColorArray] comme une copie du [PackedColorArray] donné."

msgid ""
"Constructs a new [PackedColorArray]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedColorArray] with elements, it must be "
"initialized with an [Array] of [Color] values:\n"
"[codeblock]\n"
"var array = PackedColorArray([Color(0.1, 0.2, 0.3), Color(0.4, 0.5, 0.6)])\n"
"[/codeblock]"
msgstr ""
"Construit un nouveau [PackedColorArray]. Optionnellement, vous pouvez passer "
"un tableau [Array] générique qui sera converti.\n"
"[b]Note :[/b] Lors de l'initialisation d'un [PackedColorArray] avec des "
"éléments, il doit être initialisé avec un [Array] de valeurs de [Color] :\n"
"[codeblock]\n"
"var tableau = PackedColorArray([Color(0.1, 0.2, 0.3), Color(0.4, 0.5, 0.6)]\n"
"[/codeblock]"

msgid "Appends a [PackedColorArray] at the end of this array."
msgstr "Ajoute un [PackedColorArray] à la fin de ce tableau."

msgid "Appends a value to the array."
msgstr "Ajoute une valeur à la fin du tableau."

msgid "Changes the [Color] at the given index."
msgstr "Change la [Color] à la position donnée."

msgid ""
"Returns the slice of the [PackedColorArray], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedColorArray].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedColorArray], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedColorArray].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid "Returns a [PackedByteArray] with each color encoded as bytes."
msgstr "Renvoie un [PackedByteArray] avec chaque couleur encodée en octets."

msgid ""
"Returns a new [PackedColorArray] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedColorArray] avec le contenu de [param right] ajouté "
"à la fin de ce tableau. Pour une meilleure performance, envisagez d'utiliser "
"[method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Color]s at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c'est-"
"à-dire qu'ils sont toutes leurs couleurs [Color] égales aux indices "
"correspondants."

msgid ""
"Returns the [Color] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Renvoie la [Color] à la position [param index]. Les indices négatifs peuvent "
"être utilisés pour accéder aux éléments à partir de la fin. L'utilisation "
"d'un index hors des limites du tableau entraînera une erreur."

msgid "Efficiently packs and serializes [Array] or [Dictionary]."
msgstr "Compacte et sérialise efficacement les [Array] ou [Dictionary]."

msgid ""
"[PackedDataContainer] can be used to efficiently store data from untyped "
"containers. The data is packed into raw bytes and can be saved to file. Only "
"[Array] and [Dictionary] can be stored this way.\n"
"You can retrieve the data by iterating on the container, which will work as "
"if iterating on the packed data itself. If the packed container is a "
"[Dictionary], the data can be retrieved by key names ([String]/[StringName] "
"only).\n"
"[codeblock]\n"
"var data = { \"key\": \"value\", \"another_key\": 123, \"lock\": Vector2() }\n"
"var packed = PackedDataContainer.new()\n"
"packed.pack(data)\n"
"ResourceSaver.save(packed, \"packed_data.res\")\n"
"[/codeblock]\n"
"[codeblock]\n"
"var container = load(\"packed_data.res\")\n"
"for key in container:\n"
"\tprints(key, container[key])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"key value\n"
"lock (0, 0)\n"
"another_key 123\n"
"[/codeblock]\n"
"Nested containers will be packed recursively. While iterating, they will be "
"returned as [PackedDataContainerRef]."
msgstr ""
"[PackedDataContainer] peut être utilisé pour stocker efficacement des données "
"à partir de conteneurs non-typés. Les données sont compactées en octets bruts "
"et peuvent être sauvegardées dans un fichier. Seuls [Array] et [Dictionary] "
"peuvent être stockés de cette façon.\n"
"Vous pouvez récupérer les données en itérant sur le conteneur, qui "
"fonctionnera comme s'il itérait sur les données compactées elles-même. Si le "
"conteneur compacté est un [Dictionary], les données peuvent être récupérées "
"par des noms de clés ([String]/[StringName] seulement).\n"
"[codeblock]\n"
"var donnees = { \"cle\": \"valeur\", \"autre_cle\": 123, \"verrou\": "
"Vector2() }\n"
"var compact = PackedDataContainer.new()\n"
"compact.pack(donnees)\n"
"ResourceSaver.save(compact, \"donnees_compactes.res\")\n"
"[/codeblock]\n"
"[codeblock]\n"
"var conteneur = load(\"donnees_compactes.res\")\n"
"for cle in conteneur:\n"
"\tprint(cle, conteneur[cle])\n"
"[/codeblock]\n"
"Affiche :\n"
"[codeblock lang=text]\n"
"cle valeur\n"
"verrou (0, 0)\n"
"autre_cle 123\n"
"[/codeblock]\n"
"Les conteneurs imbriqués seront compactés de façon récursive. Lors de "
"l'itération, ils seront renvoyés en tant que [PackedDataContainerRef]."

msgid ""
"Packs the given container into a binary representation. The [param value] "
"must be either [Array] or [Dictionary], any other type will result in invalid "
"data error.\n"
"[b]Note:[/b] Subsequent calls to this method will overwrite the existing data."
msgstr ""
"Compacte le conteneur donné en une représentation binaire. La valeur [param "
"value] doit être soit un [Array] ou un [Dictionary], tout autre type "
"entraînera une erreur de données invalides.\n"
"[b]Note :[/b] Les appels subséquents à cette méthode écraseront les données "
"existantes."

msgid ""
"Returns the size of the packed container (see [method Array.size] and [method "
"Dictionary.size])."
msgstr ""
"Renvoie la taille du conteneur compacté (voir [method Array.size] et [method "
"Dictionary.size])."

msgid ""
"An internal class used by [PackedDataContainer] to pack nested arrays and "
"dictionaries."
msgstr ""
"Une classe interne utilisée par [PackedDataContainer] pour compacter des "
"tableaux et des dictionnaires imbriqués."

msgid ""
"When packing nested containers using [PackedDataContainer], they are "
"recursively packed into [PackedDataContainerRef] (only applies to [Array] and "
"[Dictionary]). Their data can be retrieved the same way as from "
"[PackedDataContainer].\n"
"[codeblock]\n"
"var packed = PackedDataContainer.new()\n"
"packed.pack([1, 2, 3, [\"nested1\", \"nested2\"], 4, 5, 6])\n"
"\n"
"for element in packed:\n"
"\tif element is PackedDataContainerRef:\n"
"\t\tfor subelement in element:\n"
"\t\t\tprint(\"::\", subelement)\n"
"\telse:\n"
"\t\tprint(element)\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"1\n"
"2\n"
"3\n"
"::nested1\n"
"::nested2\n"
"4\n"
"5\n"
"6\n"
"[/codeblock]"
msgstr ""
"Lors du compactage de conteneurs imbriqués utilisant [PackedDataContainer], "
"ils sont compactés de façon récursive dans [PackedDataContainerRef] "
"(s'applique seulement pour [Array] et [Dictionary]). Leurs données peuvent "
"être récupérées de la même manière que depuis [PackedDataContainer].\n"
"[codeblock]\n"
"var compacte = PackedDataContainer.new()\n"
"compacte.pack([1, 2, 3, [\"imbrique1\", \"imbrique2\"], 4, 5, 6])\n"
"\n"
"for element in compacte:\n"
"\tif element is PackedDataContainerRef:\n"
"\t\tfor sous_element in element:\n"
"\t\t\tprint(\"::\", sous_element)\n"
"\telse:\n"
"\t\tprint(element)\n"
"[/codeblock]\n"
"Affiche :\n"
"[codeblock lang=text]\n"
"1\n"
"2\n"
"3\n"
"::imbrique1\n"
"::imbrique2\n"
"4\n"
"5\n"
"6\n"
"[/codeblock]"

msgid "A packed array of 32-bit floating-point values."
msgstr "Un tableau compacté de valeurs flottantes de 32 bits."

msgid "Constructs an empty [PackedFloat32Array]."
msgstr "Construit un [PackedFloat32Array] vide."

msgid ""
"Constructs a [PackedFloat32Array] as a copy of the given [PackedFloat32Array]."
msgstr ""
"Construit un [PackedFloat32Array] comme une copie du [PackedFloat32Array] "
"donné."

msgid ""
"Constructs a new [PackedFloat32Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Construit un nouveau [PackedFloat32Array]. Optionnellement, vous pouvez "
"passer un [Array] générique qui sera converti."

msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr "Ajoute un [PackedFloat32Array] à la fin de ce tableau."

msgid ""
"Finds the index of an existing value (or the insertion index that maintains "
"sorting order, if the value is not yet present in the array) using binary "
"search. Optionally, a [param before] specifier can be passed. If [code]false[/"
"code], the returned index comes after all existing entries of the value in "
"the array.\n"
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Cherche l'index d'une valeur existante (ou l'index d'insertion qui maintient "
"l'ordre de tri, si la valeur n'est pas encore présente dans le tableau) en "
"utilisant la recherche binaire. Optionnellement, un spécificateur [param "
"before] peut être passé. Si [code]false[/code], l'index renvoyé vient après "
"toutes les entrées existantes de la valeur dans le tableau.\n"
"[b]Note :[/b] Appeler [method bsearch] sur un tableau non trié résulte en un "
"comportement inattendu.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Par conséquent, les résultats de cette méthode peuvent ne pas être "
"corrects si des NaNs sont inclus."

msgid ""
"Returns the number of times an element is in the array.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Renvoie le nombre de fois qu'un élément apparaît dans le tableau.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Par conséquent, les résultats de cette méthode peuvent ne pas être "
"corrects si des NaNs sont inclus."

msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Cherche le tableau pour une valeur et renvoie son index ou [code]-1[/code] si "
"elle n'est pas trouvé. Optionnellement, l'index de recherche initial peut "
"être passé.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Par conséquent, les résultats de cette méthode peuvent ne pas être "
"corrects si des NaNs sont inclus."

msgid ""
"Returns [code]true[/code] if the array contains [param value].\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Renvoie [code]true[/code] si le tableau contient la valeur [param value].\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Par conséquent, les résultats de cette méthode peuvent ne pas être "
"corrects si des NaNs sont inclus."

msgid ""
"Searches the array in reverse order. Optionally, a start search index can be "
"passed. If negative, the start index is considered relative to the end of the "
"array.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Cherche le tableau en sens inverse. Optionnellement, un index de recherche "
"initial peut être passé. Si négatif, l'indice initial est considéré comme "
"relatif par rapport à la fin du tableau.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Par conséquent, les résultats de cette méthode peuvent ne pas être "
"corrects si des NaNs sont inclus."

msgid "Changes the float at the given index."
msgstr "Change la flottant à la position donnée."

msgid ""
"Returns the slice of the [PackedFloat32Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedFloat32Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedFloat32Array], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedFloat32Array].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Sorts the elements of the array in ascending order.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Trie les éléments du tableau dans l'ordre ascendant.\n"
"[b]Note :[/b] [constant @GDScript.NAN] ne se comporte pas comme les autres "
"nombres. Par conséquent, les résultats de cette méthode peuvent ne pas être "
"corrects si des NaNs sont inclus."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 4 bytes.\n"
"The size of the new array will be [code]float32_array.size() * 4[/code]."
msgstr ""
"Renvoie une copie des données converties en un [PackedByteArray], où chaque "
"élément a été encodé en 4 octets.\n"
"La taille du nouveau tableau sera de [code]float32_array.size() * 4[/code]."

msgid ""
"Returns a new [PackedFloat32Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedFloat32Array] avec le contenu de [param right] "
"ajouté à la fin de ce tableau. Pour une meilleure performance, envisagez "
"d'utiliser [method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal floats at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c.a.d. "
"qu'ils ont tous leurs flottants égaux aux indices correspondants."

msgid ""
"Returns the [float] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error.\n"
"Note that [float] type is 64-bit, unlike the values stored in the array."
msgstr ""
"Renvoie le flottant [float] à la position [param index]. Les indices négatifs "
"peuvent être utilisés pour accéder aux éléments à partir de la fin. "
"L'utilisation d'un index hors des limites du tableau entraînera une erreur.\n"
"Notez que le type [float] est en 64 bits, contrairement aux valeurs stockées "
"dans le tableau."

msgid "A packed array of 64-bit floating-point values."
msgstr "Un tableau compacté de valeurs flottantes de 64 bits."

msgid "Constructs an empty [PackedFloat64Array]."
msgstr "Construit un [PackedFloat64Array] vide."

msgid ""
"Constructs a [PackedFloat64Array] as a copy of the given [PackedFloat64Array]."
msgstr ""
"Construit un [PackedFloat64Array] comme une copie du [PackedFloat64Array] "
"donné."

msgid ""
"Constructs a new [PackedFloat64Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Construit un nouveau [PackedFloat64Array]. Optionnellement, vous pouvez "
"passer un [Array] générique qui sera converti."

msgid "Appends a [PackedFloat64Array] at the end of this array."
msgstr "Ajoute un [PackedFloat64Array] à la fin de ce tableau."

msgid ""
"Returns the slice of the [PackedFloat64Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedFloat64Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedFloat64Array], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedFloat64Array].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 8 bytes.\n"
"The size of the new array will be [code]float64_array.size() * 8[/code]."
msgstr ""
"Renvoie une copie des données converties en [PackedByteArray], où chaque "
"élément a été encodé en 8 octets.\n"
"La taille du nouveau tableau sera de [code]float64_array.size() * 8[/code]."

msgid ""
"Returns a new [PackedFloat64Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedFloat64Array] avec le contenu de [param right] "
"ajouté à la fin de ce tableau. Pour une meilleure performance, envisagez "
"d'utiliser [method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal doubles at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c.a.d. "
"qu'ils ont tous leurs doubles égaux aux indices correspondants."

msgid ""
"Returns the [float] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Renvoie le [float] à la position [param index]. Les indices négatifs peuvent "
"être utilisés pour accéder aux éléments à partir de la fin. L'utilisation "
"d'un index hors des limites du tableau entraînera une erreur."

msgid "A packed array of 32-bit integers."
msgstr "Un tableau compacté d'entiers 32 bits."

msgid "Constructs an empty [PackedInt32Array]."
msgstr "Construit un [PackedInt32Array] vide."

msgid ""
"Constructs a [PackedInt32Array] as a copy of the given [PackedInt32Array]."
msgstr ""
"Construit un [PackedInt32Array] comme une copie du [PackedInt32Array] donné."

msgid ""
"Constructs a new [PackedInt32Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Construit un nouveau [PackedInt32Array]. Optionnellement, vous pouvez passer "
"un [Array] générique qui sera converti."

msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr "Ajoute un [PackedFloat64Array] à la fin de ce tableau."

msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
"Insère un nouvel entier à la position donnée dans le tableau. Cette position "
"doit être valide, ou à la toute fin du tableau ([code]idx == size()[/code])."

msgid "Changes the integer at the given index."
msgstr "Modifie l'entier à l’index donné."

msgid ""
"Returns the slice of the [PackedInt32Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedInt32Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedInt32Array], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedInt32Array].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 4 bytes.\n"
"The size of the new array will be [code]int32_array.size() * 4[/code]."
msgstr ""
"Renvoie une copie des données converties en un [PackedByteArray], où chaque "
"élément a été encodé en 4 octets.\n"
"La taille du nouveau tableau sera de [code]int32_array.size() * 4[/code]."

msgid ""
"Returns a new [PackedInt32Array] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedInt32Array] avec le contenu de [param right] ajouté "
"à la fin de ce tableau. Pour de meilleures performances, envisagez d'utiliser "
"[method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal ints at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c'est-"
"à-dire qu'ils ont tous leurs entiers égaux aux indices correspondants."

msgid ""
"Returns the [int] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error.\n"
"Note that [int] type is 64-bit, unlike the values stored in the array."
msgstr ""
"Renvoie le [int] à la position [param index]. Les indices négatifs peuvent "
"être utilisés pour accéder aux éléments à partir de la fin. L'utilisation "
"d'un index hors des limites du tableau entraînera une erreur.\n"
"Notez que le type [int] est en 64 bits, contrairement aux valeurs stockées "
"dans le tableau."

msgid "A packed array of 64-bit integers."
msgstr "Un tableau compacté d'entiers 64 bits."

msgid "Constructs an empty [PackedInt64Array]."
msgstr "Construit un [PackedInt64Array] vide."

msgid ""
"Constructs a [PackedInt64Array] as a copy of the given [PackedInt64Array]."
msgstr ""
"Construit un [PackedInt64Array] comme une copie du [PackedInt64Array] donné."

msgid ""
"Constructs a new [PackedInt64Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Construit un nouveau [PackedInt64Array]. Optionnellement, vous pouvez passer "
"un [Array] générique qui sera converti."

msgid "Appends a [PackedInt64Array] at the end of this array."
msgstr "Ajoute un [PackedInt64Array] à la fin de ce tableau."

msgid ""
"Returns the slice of the [PackedInt64Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedInt64Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedInt64Array], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedInt64Array].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 8 bytes.\n"
"The size of the new array will be [code]int64_array.size() * 8[/code]."
msgstr ""
"Renvoie une copie des données converties en [PackedByteArray], où chaque "
"élément a été encodé en 8 octets.\n"
"La taille du nouveau tableau sera de [code]int64_array.size() * 8[/code]."

msgid ""
"Returns a new [PackedInt64Array] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedInt64Array] avec le contenu de [param right] ajouté "
"à la fin de ce tableau. Pour de meilleures performances, envisagez d'utiliser "
"[method append_array] à la place."

msgid ""
"Returns the [int] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Renvoie le [int] à la position [param index]. Les indices négatifs peuvent "
"être utilisés pour accéder aux éléments à partir de la fin. L'utilisation "
"d'un index hors des limites du tableau entraînera une erreur."

msgid "An abstraction of a serialized scene."
msgstr "Une abstraction d'une scène sérialisée."

msgid ""
"A simplified interface to a scene file. Provides access to operations and "
"checks that can be performed on the scene resource itself.\n"
"Can be used to save a node to a file. When saving, the node as well as all "
"the nodes it owns get saved (see [member Node.owner] property).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
"[b]Example:[/b] Load a saved scene:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Use load() instead of preload() if the path isn't known at compile-time.\n"
"var scene = preload(\"res://scene.tscn\").instantiate()\n"
"# Add the node as a child of the node the script is attached to.\n"
"add_child(scene)\n"
"[/gdscript]\n"
"[csharp]\n"
"// C# has no preload, so you have to always use "
"ResourceLoader.Load<PackedScene>().\n"
"var scene = ResourceLoader.Load<PackedScene>(\"res://"
"scene.tscn\").Instantiate();\n"
"// Add the node as a child of the node the script is attached to.\n"
"AddChild(scene);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Save a node with different owners. The following example "
"creates 3 objects: [Node2D] ([code]node[/code]), [RigidBody2D] ([code]body[/"
"code]) and [CollisionObject2D] ([code]collision[/code]). [code]collision[/"
"code] is a child of [code]body[/code] which is a child of [code]node[/code]. "
"Only [code]body[/code] is owned by [code]node[/code] and [method pack] will "
"therefore only save those two nodes, but not [code]collision[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Create the objects.\n"
"var node = Node2D.new()\n"
"var body = RigidBody2D.new()\n"
"var collision = CollisionShape2D.new()\n"
"\n"
"# Create the object hierarchy.\n"
"body.add_child(collision)\n"
"node.add_child(body)\n"
"\n"
"# Change owner of `body`, but not of `collision`.\n"
"body.owner = node\n"
"var scene = PackedScene.new()\n"
"\n"
"# Only `node` and `body` are now packed.\n"
"var result = scene.pack(node)\n"
"if result == OK:\n"
"\tvar error = ResourceSaver.save(scene, \"res://path/name.tscn\")  # Or "
"\"user://...\"\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred while saving the scene to disk.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Create the objects.\n"
"var node = new Node2D();\n"
"var body = new RigidBody2D();\n"
"var collision = new CollisionShape2D();\n"
"\n"
"// Create the object hierarchy.\n"
"body.AddChild(collision);\n"
"node.AddChild(body);\n"
"\n"
"// Change owner of `body`, but not of `collision`.\n"
"body.Owner = node;\n"
"var scene = new PackedScene();\n"
"\n"
"// Only `node` and `body` are now packed.\n"
"Error result = scene.Pack(node);\n"
"if (result == Error.Ok)\n"
"{\n"
"\tError error = ResourceSaver.Save(scene, \"res://path/name.tscn\"); // Or "
"\"user://...\"\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred while saving the scene to disk.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Une interface simplifiée pour un fichier de scène. Fournit l'accès aux "
"opérations et vérifications qui peuvent être faites sur la ressource de scène "
"elle-même.\n"
"Peut être utilisé pour enregistrer un nœud dans un fichier. À "
"l'enregistrement, le nœud tout comme tous les nœuds dont il est propriétaire "
"sont enregistrés dans le fichier (voir la propriété [member Node.owner]).\n"
"[b]Note :[/b] Le nœud n'a pas besoin d'être son propre propriétaire.\n"
"[b]Exemple :[/b] Chargement d'une scène enregistrée :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Utiliser `load()` plutôt que `preload()` si le chemin n'est pas connu à la "
"compilation.\n"
"var scene = preload(\"res://scene.tscn\").instance()\n"
"# Ajouter un nœud comme enfant du nœud auquel le script est attaché.\n"
"add_child(scene)\n"
"[/gdscript]\n"
"[csharp]\n"
"// C# n'a pas de `preload`, donc vous devez toujours utiliser "
"ResourceLoader.Load<PackedScene>().\n"
"var scene = ResourceLoader.Load<PackedScene>(\"res://"
"scene.tscn\").Instantiate();\n"
"// Ajouter un nœud comme enfant du nœud auquel le script est attaché.\n"
"AddChild(scene);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Exemple :[/b] Enregistrement d'un nœud avec différents propriétaires. "
"L'exemple suivant crée 3 objets : [Node2D] ([code]node[/code]), [RigidBody2D] "
"([code]body[/code]) et [CollisionObject2D] ([code]collision[/code]). "
"[code]collision[/code] est un enfant de [code]body[/code] qui est un enfant "
"de [code]node[/code]. Seul [code]body[/code] est la propriété de [code]node[/"
"code] et [method pack] n'enregistrera alors que ces deux nœuds, mais pas "
"[code]collision[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Créer les objets.\n"
"var node = Node2D.new()\n"
"var rigid = RigidBody2D.new()\n"
"var collision = CollisionShape2D.new()\n"
"\n"
"# Créer la hiérarchie des objets.\n"
"rigid.add_child(collision)\n"
"node.add_child(rigid)\n"
"\n"
"# Changer le propriétaire de `rigid`, mais pas de `collision`.\n"
"rigid.owner = node\n"
"var scene = PackedScene.new()\n"
"\n"
"# Seulement `node` and `rigid` sont compactés.\n"
"var result = scene.pack(node)\n"
"if result == OK:\n"
"\tvar error = ResourceSaver.save(\"res://chemin/nom.scn\", scene)  # Ou "
"\"user://...\"\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Une erreur est survenue à l'enregistrement de cette scène "
"sur le disque.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Créer les objets.\n"
"var node = new Node2D();\n"
"var body = new RigidBody2D();\n"
"var collision = new CollisionShape2D();\n"
"\n"
"// Créer la hiérarchie des objets.\n"
"body.AddChild(collision);\n"
"node.AddChild(body);\n"
"\n"
"// Changer le propriétaire de `rigid`, mais pas de `collision`.\n"
"body.Owner = node;\n"
"var scene = new PackedScene();\n"
"\n"
"// Seulement `node` and `rigid` sont compactés.\n"
"Error result = scene.Pack(node);\n"
"if (result == Error.Ok)\n"
"{\n"
"\tError error = ResourceSaver.Save(scene, \"res://path/name.tscn\"); // Or "
"\"user://...\"\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred while saving the scene to disk.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr "Renvoie [code]true[/code] si le fichier de scène a des nœuds."

msgid "Returns the [SceneState] representing the scene file contents."
msgstr "Renvoie le [SceneState] représentant le contenu du fichier de scène."

msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_SCENE_INSTANTIATED] "
"notification on the root node."
msgstr ""
"Instantancie la hiérarchie du nœud de la scène. Déclenche l’instanciation des "
"enfants de la scène. Déclenche une notification [constant "
"Node.NOTIFICATION_SCENE_INSTANTIATED] sur le nœud racine."

msgid ""
"Packs the [param path] node, and all owned sub-nodes, into this "
"[PackedScene]. Any existing data will be cleared. See [member Node.owner]."
msgstr ""
"Compacte le nœud [param path], et tous les sous-nodes lui appartenant, dans "
"cette [PackedScene]. Les données existantes seront effacées. Voir [member "
"Node.owner]."

msgid "If passed to [method instantiate], blocks edits to the scene state."
msgstr ""
"S'il est passé à [method instantiate], bloque les modifications à l'état de "
"la scène."

msgid ""
"If passed to [method instantiate], provides local scene resources to the "
"local scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"S'il est passé à [method instantiate], fournit des ressources de scène locale "
"à la scène locale.\n"
"[b]Note :[/b] Seulement disponible dans les compilations de l’éditeur."

msgid ""
"If passed to [method instantiate], provides local scene resources to the "
"local scene. Only the main scene should receive the main edit state.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"S'il est passé à [method instantiate], fournit des ressources de scène locale "
"à la scène locale. Seule la scène principale devrait recevoir l'état "
"principal d'édition.\n"
"[b]Note :[/b] Seulement disponible dans les compilations de l’éditeur."

msgid ""
"It's similar to [constant GEN_EDIT_STATE_MAIN], but for the case where the "
"scene is being instantiated to be the base of another one.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"C'est similaire à [constant GEN_EDIT_STATE_MAIN], mais pour le cas où la "
"scène est instanciée pour être la base d'une autre.\n"
"[b]Note :[/b] Seulement disponible dans les éditeurs."

msgid "A packed array of [String]s."
msgstr "Un tableau compacté de chaînes de caractères [String]."

msgid ""
"An array specifically designed to hold [String]s. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"If you want to join the strings in the array, use [method String.join].\n"
"[codeblock]\n"
"var string_array = PackedStringArray([\"hello\", \"world\"])\n"
"var string = \" \".join(string_array)\n"
"print(string) # \"hello world\"\n"
"[/codeblock]\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedStringArray] versus "
"[code]Array[String][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Un tableau spécialement conçu pour contenir des chaînes [String]. Compacte "
"les données de manière serrée, il sauve de la mémoire pour les grandes "
"tailles de tableaux.\n"
"Si vous voulez joindre des chaînes dans le tableau, utilisez [method "
"String.join].\n"
"[codeblock]\n"
"var tableau_string = PackedStringArray([\"bonjour\", \"monde\"])\n"
"var string = \" \".join(tableau_string)\n"
"print(string) # \"bonjour monde\"\n"
"[/codeblock]\n"
"[b]Différences entre les tableaux compactés, les tableaux typés et les "
"tableaux non typés :[/b] Les tableaux compactés sont généralement plus "
"rapides pour itérer et modifier par rapport à un tableau typé du même type "
"(par exemple [PackedStringArray] contre [code]Array[String][/code]). De plus, "
"les tableaux compactés consomment moins de mémoire. À l'inverse, les tableaux "
"compactés sont moins flexibles car ils ne proposent pas autant de méthodes de "
"commodité comme [method Array.map]. Les tableaux typés sont à leur tour plus "
"rapides pour itérer dessus et modifier que les tableaux non typés.\n"
"[b]Note :[/b] Les tableaux compactés sont toujours passés par référence. Pour "
"obtenir une copie d'un tableau qui peut être modifié indépendamment du "
"tableau original, utilisez [method duplicate]. Ceci n'est [i]pas[/i] le cas "
"pour les propriétés et les méthodes intégrées. Le tableau compacté renvoyé de "
"ceux-ci est une copie, et le changer n'affectera [i]pas[/i] la valeur "
"originale. Pour mettre à jour une propriété intégrée, vous devez modifier le "
"tableau renvoyé, puis l'affecter à nouveau à la propriété."

msgid "Constructs an empty [PackedStringArray]."
msgstr "Construit un [PackedStringArray] vide."

msgid ""
"Constructs a [PackedStringArray] as a copy of the given [PackedStringArray]."
msgstr ""
"Construit un [PackedStringArray] comme une copie du [PackedStringArray] donné."

msgid ""
"Constructs a new [PackedStringArray]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Construit un nouveau [PackedStringArray]. Optionnellement, vous pouvez passer "
"un [Array] générique qui sera converti."

msgid "Appends a [PackedStringArray] at the end of this array."
msgstr "Ajoute un [PackedStringArray] à la fin de ce tableau."

msgid ""
"Returns the [String] at the given [param index] in the array. Returns an "
"empty string and prints an error if the access is out of bounds. Negative "
"indices are not supported; they will always consider the value to be out of "
"bounds and return an empty string.\n"
"This is similar to using the [code][][/code] operator ([code]array[index][/"
"code]), except that operator supports negative indices and causes a debugger "
"break if out-of-bounds access is performed."
msgstr ""
"Renvoie le [String] à l'[param index] donné dans le tableau. Renvoie une "
"chaîne vide et affiche une erreur si l'accès est hors limites. Les indices "
"négatifs ne sont pas supportés, ils considéreront toujours la valeur hors "
"limites et renvoient une chaîne vide.\n"
"Ceci est similaire à l'utilisation de l'opérateur [code][][/code] "
"([code]array[index][/code]), sauf que l'opérateur supporte les indices "
"négatifs et provoque un stop du débogueur si un accès hors limites est "
"effectué."

msgid "Appends a string element at end of the array."
msgstr "Ajoute une chaine de caractère à la fin du tableau."

msgid "Changes the [String] at the given index."
msgstr "Change la [String] à la position donnée."

msgid ""
"Returns the slice of the [PackedStringArray], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedStringArray].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedStringArray], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedStringArray].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a [PackedByteArray] with each string encoded as UTF-8. Strings are "
"[code]null[/code] terminated."
msgstr ""
"Renvoie un [PackedByteArray] avec chaque chaîne encodée en UTF-8. Les chaînes "
"se terminent par [code]null[/code]."

msgid ""
"Returns a new [PackedStringArray] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedStringArray] avec le contenu de [param right] "
"ajouté à la fin de ce tableau. Pour de meilleures performances, envisagez "
"d'utiliser [method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [String]s at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c'est-"
"à-dire qu'ils ont tous leurs [String] égaux aux indices correspondants."

msgid ""
"Returns the [String] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Renvoie le [String] à la position [param index]. Les indices négatifs peuvent "
"être utilisés pour accéder aux éléments à partir de la fin. L'utilisation "
"d'un index hors des limites du tableau entraînera une erreur."

msgid "A packed array of [Vector2]s."
msgstr "Un tableau compacté de [Vector2]s."

msgid ""
"An array specifically designed to hold [Vector2]. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedVector2Array] versus "
"[code]Array[Vector2][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Un tableau spécialement conçu pour contenir des [Vector2]. Compacte les "
"données de manière serrée, il sauve de la mémoire pour les grandes tailles de "
"tableaux.\n"
"[b]Différences entre les tableaux compactés, les tableaux typés et les "
"tableaux non typés :[/b] Les tableaux compactés sont généralement plus "
"rapides pour itérer et modifier par rapport à un tableau typé du même type "
"(par exemple [PackedVector2Array] contre [code]Array[Vector2][/code]). De "
"plus, les tableaux compactés consomment moins de mémoire. À l'inverse, les "
"tableaux compactés sont moins flexibles car ils ne proposent pas autant de "
"méthodes de commodité comme [method Array.map]. Les tableaux typés sont à "
"leur tour plus rapides pour itérer dessus et modifier que les tableaux non "
"typés.\n"
"[b]Note :[/b] Les tableaux compactés sont toujours passés par référence. Pour "
"obtenir une copie d'un tableau qui peut être modifié indépendamment du "
"tableau original, utilisez [method duplicate]. Ceci n'est [i]pas[/i] le cas "
"pour les propriétés et les méthodes intégrées. Le tableau compacté renvoyé de "
"ceux-ci est une copie, et le changer n'affectera [i]pas[/i] la valeur "
"originale. Pour mettre à jour une propriété intégrée, vous devez modifier le "
"tableau renvoyé, puis l'affecter à nouveau à la propriété."

msgid "Constructs an empty [PackedVector2Array]."
msgstr "Construit un [PackedVector2Array] vide."

msgid ""
"Constructs a [PackedVector2Array] as a copy of the given [PackedVector2Array]."
msgstr ""
"Construit un [PackedVector2Array] en copie du [PackedVector2Array] donné."

msgid ""
"Constructs a new [PackedVector2Array]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedVector2Array] with elements, it must "
"be initialized with an [Array] of [Vector2] values:\n"
"[codeblock]\n"
"var array = PackedVector2Array([Vector2(12, 34), Vector2(56, 78)])\n"
"[/codeblock]"
msgstr ""
"Construit un nouveau [PackedVector2Array]. Optionnellement, vous pouvez "
"passer un tableau [Array] générique qui sera converti.\n"
"[b]Note :[/b] Lors de l'initialisation d'un [PackedVector2Array] avec des "
"éléments, il doit être initialisé avec un [Array] de valeurs de [Vector2] :\n"
"[codeblock]\n"
"var tableau = PackedVector2Array([Vector2(12, 34), Vector2(56, 78)])\n"
"[/codeblock]"

msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr "Ajoute un [PackedVector2Array] à la fin de ce tableau."

msgid ""
"Finds the index of an existing value (or the insertion index that maintains "
"sorting order, if the value is not yet present in the array) using binary "
"search. Optionally, a [param before] specifier can be passed. If [code]false[/"
"code], the returned index comes after all existing entries of the value in "
"the array.\n"
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Cherche l'index d'une valeur existante (ou l'index d'insertion qui maintient "
"l'ordre de tri, si la valeur n'est pas encore présente dans le tableau) en "
"utilisant la recherche binaire. Optionnellement, un spécificateur [param "
"before] peut être passé. Si [code]false[/code], l'index renvoyé vient après "
"toutes les entrées existantes de la valeur dans le tableau.\n"
"[b]Note :[/b] Appeler [method bsearch] sur un tableau non trié résulte en un "
"comportement inattendu.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Par conséquent, les résultats de "
"cette méthode peuvent ne pas être corrects si des NaNs sont inclus."

msgid ""
"Returns the number of times an element is in the array.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Renvoie le nombre de fois qu'un élément apparaît dans le tableau.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Par conséquent, les résultats de "
"cette méthode peuvent ne pas être corrects si des NaNs sont inclus."

msgid ""
"Removes the first occurrence of a value from the array and returns "
"[code]true[/code]. If the value does not exist in the array, nothing happens "
"and [code]false[/code] is returned. To remove an element by index, use "
"[method remove_at] instead.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Retire la première occurrence d'une valeur du tableau et renvoie [code]true[/"
"code]. Si la valeur n'existe pas dans le tableau, rien ne se passe et "
"[code]false[/code] est renvoyé. Pour supprimer un élément par index, utilisez "
"[method remove_at] à la place.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Par conséquent, les résultats de "
"cette méthode peuvent ne pas être corrects si des NaNs sont inclus."

msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Cherche le tableau pour une valeur et renvoie son index ou [code]-1[/code] si "
"elle n'est pas trouvé. Optionnellement, l'index de recherche initial peut "
"être passé.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Par conséquent, les résultats de "
"cette méthode peuvent ne pas être corrects si des NaNs sont inclus."

msgid ""
"Returns the [Vector2] at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns "
"[code]Vector2(0, 0)[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Renvoie le [Vector2] à l'[param index] donné dans le tableau. Si [param "
"index] est hors des limites ou négatif, cette méthode échoue et renvoie "
"[code]Vector2(0, 0)[/code].\n"
"Cette méthode est similaire (mais non identique) à l'opérateur [code][][/"
"code]. Plus particulièrement, lorsque cette méthode échoue, elle ne met pas "
"en pause l'exécution du projet s'il est exécuté depuis l'éditeur."

msgid ""
"Returns [code]true[/code] if the array contains [param value].\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si le tableau contient la valeur [param value].\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Par conséquent, les résultats de "
"cette méthode peuvent ne pas être corrects si des NaNs sont inclus."

msgid "Inserts a [Vector2] at the end."
msgstr "Insère un [Vector2] à la fin."

msgid ""
"Searches the array in reverse order. Optionally, a start search index can be "
"passed. If negative, the start index is considered relative to the end of the "
"array.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Cherche le tableau en sens inverse. Optionnellement, un index de recherche "
"initial peut être passé. Si négatif, l'indice initial est considéré comme "
"relatif par rapport à la fin du tableau.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Par conséquent, les résultats de "
"cette méthode peuvent ne pas être corrects si des NaNs sont inclus."

msgid "Changes the [Vector2] at the given index."
msgstr "Change la [Vector2] à la position donnée."

msgid ""
"Returns the slice of the [PackedVector2Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedVector2Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedVector2Array], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedVector2Array].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Sorts the elements of the array in ascending order.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Trie les éléments du tableau dans l'ordre ascendant.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Par conséquent, les résultats de "
"cette méthode peuvent ne pas être corrects si des NaNs sont inclus."

msgid "Returns a [PackedByteArray] with each vector encoded as bytes."
msgstr "Renvoie un [PackedByteArray] avec chaque vecteur encodé en octets."

msgid ""
"Returns a new [PackedVector2Array] with all vectors in this array inversely "
"transformed (multiplied) by the given [Transform2D] transformation matrix, "
"under the assumption that the transformation basis is orthonormal (i.e. "
"rotation/reflection is fine, scaling/skew is not).\n"
"[code]array * transform[/code] is equivalent to [code]transform.inverse() * "
"array[/code]. See [method Transform2D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * array[/code] can be used instead. See "
"[method Transform2D.affine_inverse]."
msgstr ""
"Renvoie un nouveau [PackedVector2Array] avec tous les vecteurs de ce tableau "
"transformés (multipliés) de manière inverse par la matrice de transformation "
"[Transform2D] donnée, avec la supposition que la base de la transformation "
"est orthonormée (c.a.d. une rotation/réflexion est OK, une échelle/un "
"cisaillement ne l'est pas).\n"
"[code]array * transform[/code] est équivalent à [code]transform.inverse() * "
"array[/code]. Voir [method Transform2D.inverse].\n"
"Pour transformer par l'inverse d'une transformation affine (par ex. avec une "
"mise à l'échelle), [code]transform.affine_inverse() * array[/code] peut être "
"utilisé à la place. Voir [method Transform2D.affine_inverse]."

msgid ""
"Returns a new [PackedVector2Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedVector2Array] avec le contenu de [param right] "
"ajouté à la fin de ce tableau. Pour de meilleurs performances, envisagez "
"d'utiliser [method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Vector2]s at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c'est-"
"à-dire qu'ils ont tous leurs [Vector2] égaux aux indices correspondants."

msgid ""
"Returns the [Vector2] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Renvoie le [Vector2] à la position [param index]. Les indices négatifs "
"peuvent être utilisés pour accéder aux éléments à partir de la fin. "
"L'utilisation d'un index hors des limites du tableau entraînera une erreur."

msgid "A packed array of [Vector3]s."
msgstr "Un tableau compacté de [Vector3]s."

msgid ""
"An array specifically designed to hold [Vector3]. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedVector3Array] versus "
"[code]Array[Vector3][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Un tableau spécialement conçu pour contenir des [Vector3]. Compacte les "
"données de manière serrée, il sauve de la mémoire pour les grandes tailles de "
"tableaux.\n"
"[b]Différences entre les tableaux compactés, les tableaux typés et les "
"tableaux non typés :[/b] Les tableaux compactés sont généralement plus "
"rapides pour itérer et modifier par rapport à un tableau typé du même type "
"(par exemple [PackedVector3Array] contre [code]Array[Vector3][/code]). De "
"plus, les tableaux compactés consomment moins de mémoire. À l'inverse, les "
"tableaux compactés sont moins flexibles car ils ne proposent pas autant de "
"méthodes de commodité comme [method Array.map]. Les tableaux typés sont à "
"leur tour plus rapides pour itérer dessus et modifier que les tableaux non "
"typés.\n"
"[b]Note :[/b] Les tableaux compactés sont toujours passés par référence. Pour "
"obtenir une copie d'un tableau qui peut être modifié indépendamment du "
"tableau original, utilisez [method duplicate]. Ceci n'est [i]pas[/i] le cas "
"pour les propriétés et les méthodes intégrées. Le tableau compacté renvoyé de "
"ceux-ci est une copie, et le changer n'affectera [i]pas[/i] la valeur "
"originale. Pour mettre à jour une propriété intégrée, vous devez modifier le "
"tableau renvoyé, puis l'affecter à nouveau à la propriété."

msgid "Constructs an empty [PackedVector3Array]."
msgstr "Construit un [PackedVector3Array] vide."

msgid ""
"Constructs a [PackedVector3Array] as a copy of the given [PackedVector3Array]."
msgstr ""
"Construit un [PackedVector3Array] comme une copie du [PackedVector3Array] "
"donné."

msgid ""
"Constructs a new [PackedVector3Array]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedVector3Array] with elements, it must "
"be initialized with an [Array] of [Vector3] values:\n"
"[codeblock]\n"
"var array = PackedVector3Array([Vector3(12, 34, 56), Vector3(78, 90, 12)])\n"
"[/codeblock]"
msgstr ""
"Construit un nouveau [PackedVector3Array]. Optionnellement, vous pouvez "
"passer un tableau [Array] générique qui sera converti.\n"
"[b]Note :[/b] Lors de l'initialisation d'un [PackedVector3Array] avec des "
"éléments, il doit être initialisé avec un [Array] de valeurs de [Vector3] :\n"
"[codeblock]\n"
"var tableau = PackedVector3Array([Vector3(12, 34, 56), Vector3(78, 90, 12)])\n"
"[/codeblock]"

msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr "Ajoute un [PackedVector3Array] à la fin de ce tableau."

msgid ""
"Returns the [Vector3] at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns "
"[code]Vector3(0, 0, 0)[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Renvoie le [Vector3] à l'[param index] donné dans le tableau. Si [param "
"index] est hors des limites ou négatif, cette méthode échoue et renvoie "
"[code]Vector3(0, 0, 0)[/code].\n"
"Cette méthode est similaire (mais non identique) à l'opérateur [code][][/"
"code]. Plus particulièrement, lorsque cette méthode échoue, elle ne met pas "
"en pause l'exécution du projet s'il est exécuté depuis l'éditeur."

msgid "Inserts a [Vector3] at the end."
msgstr "Insère un [Vector3] à la fin."

msgid "Changes the [Vector3] at the given index."
msgstr "Change la [Vector3] à la position donnée."

msgid ""
"Returns the slice of the [PackedVector3Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedVector3Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedVector3Array], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedVector3Array].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a new [PackedVector3Array] with all vectors in this array inversely "
"transformed (multiplied) by the given [Transform3D] transformation matrix, "
"under the assumption that the transformation basis is orthonormal (i.e. "
"rotation/reflection is fine, scaling/skew is not).\n"
"[code]array * transform[/code] is equivalent to [code]transform.inverse() * "
"array[/code]. See [method Transform3D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * array[/code] can be used instead. See "
"[method Transform3D.affine_inverse]."
msgstr ""
"Renvoie un nouveau [PackedVector3Array] avec tous les vecteurs de ce tableau "
"transformés (multipliés) de manière inverse par la matrice de transformation "
"[Transform3D] donnée, avec la supposition que la base de la transformation "
"est orthonormée (c.a.d. une rotation/réflexion est OK, une échelle/un "
"cisaillement ne l'est pas).\n"
"[code]array * transform[/code] est équivalent à [code]transform.inverse() * "
"array[/code]. Voir [method Transform3D.inverse].\n"
"Pour transformer par l'inverse d'une transformation affine (par ex. avec une "
"mise à l'échelle), [code]transform.affine_inverse() * array[/code] peut être "
"utilisé à la place. Voir [method Transform3D.affine_inverse]."

msgid ""
"Returns a new [PackedVector3Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedVector3Array] avec le contenu de [param right] "
"ajouté à la fin de ce tableau. Pour de meilleures performances, envisagez "
"d'utiliser [method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Vector3]s at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c'est-"
"à-dire qu'ils ont tous leurs [Vector3] égaux aux indices correspondants."

msgid ""
"Returns the [Vector3] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Renvoie le [Vector3] à la position [param index]. Les indices négatifs "
"peuvent être utilisés pour accéder aux éléments à partir de la fin. "
"L'utilisation d'un index hors des limites du tableau entraînera une erreur."

msgid "A packed array of [Vector4]s."
msgstr "Un tableau compacté de [Vector4]s."

msgid ""
"An array specifically designed to hold [Vector4]. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedVector4Array] versus "
"[code]Array[Vector4][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Un tableau spécialement conçu pour contenir des [Vector4]. Compacte les "
"données de manière serrée, il sauve de la mémoire pour les grandes tailles de "
"tableaux.\n"
"[b]Différences entre les tableaux compactés, les tableaux typés et les "
"tableaux non typés :[/b] Les tableaux compactés sont généralement plus "
"rapides pour itérer et modifier par rapport à un tableau typé du même type "
"(par exemple [PackedVector4Array] contre [code]Array[Vector4][/code]). De "
"plus, les tableaux compactés consomment moins de mémoire. À l'inverse, les "
"tableaux compactés sont moins flexibles car ils ne proposent pas autant de "
"méthodes de commodité comme [method Array.map]. Les tableaux typés sont à "
"leur tour plus rapides pour itérer dessus et modifier que les tableaux non "
"typés.\n"
"[b]Note :[/b] Les tableaux compactés sont toujours passés par référence. Pour "
"obtenir une copie d'un tableau qui peut être modifié indépendamment du "
"tableau original, utilisez [method duplicate]. Ceci n'est [i]pas[/i] le cas "
"pour les propriétés et les méthodes intégrées. Le tableau compacté renvoyé de "
"ceux-ci est une copie, et le changer n'affectera [i]pas[/i] la valeur "
"originale. Pour mettre à jour une propriété intégrée, vous devez modifier le "
"tableau renvoyé, puis l'affecter à nouveau à la propriété."

msgid "Constructs an empty [PackedVector4Array]."
msgstr "Construit un [PackedVector4Array] vide."

msgid ""
"Constructs a [PackedVector4Array] as a copy of the given [PackedVector4Array]."
msgstr ""
"Construit un [PackedVector4Array] comme une copie du [PackedVector4Array] "
"donné."

msgid ""
"Constructs a new [PackedVector4Array]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedVector4Array] with elements, it must "
"be initialized with an [Array] of [Vector4] values:\n"
"[codeblock]\n"
"var array = PackedVector4Array([Vector4(12, 34, 56, 78), Vector4(90, 12, 34, "
"56)])\n"
"[/codeblock]"
msgstr ""
"Construit un nouveau [PackedVector4Array]. Optionnellement, vous pouvez "
"passer un tableau [Array] générique qui sera converti.\n"
"[b]Note :[/b] Lors de l'initialisation d'un [PackedVector4Array] avec des "
"éléments, il doit être initialisé avec un [Array] de valeurs de [Vector4] :\n"
"[codeblock]\n"
"var tableau = PackedVector4Array([Vector4(12, 34, 56, 78), Vector4(90, 12, "
"34, 56)])\n"
"[/codeblock]"

msgid "Appends a [PackedVector4Array] at the end of this array."
msgstr "Ajoute un [PackedVector4Array] à la fin de ce tableau."

msgid ""
"Returns the [Vector4] at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns "
"[code]Vector4(0, 0, 0, 0)[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Renvoie le [Vector4] à l'[param index] donné dans le tableau. Si [param "
"index] est hors des limites ou négatif, cette méthode échoue et renvoie "
"[code]Vector3(0, 0, 0)[/code].\n"
"Cette méthode est similaire (mais non identique) à l'opérateur [code][][/"
"code]. Plus particulièrement, lorsque cette méthode échoue, elle ne met pas "
"en pause l'exécution du projet s'il est exécuté depuis l'éditeur."

msgid "Inserts a [Vector4] at the end."
msgstr "Insère un [Vector4] à la fin."

msgid "Changes the [Vector4] at the given index."
msgstr "Change la [Vector4] à l'index donné."

msgid ""
"Returns the slice of the [PackedVector4Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedVector4Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Renvoie la tranche du [PackedVector4Array], de [param begin] (inclusive) à "
"[param end] (exclusive), en tant que nouveau [PackedVector4Array].\n"
"La valeur absolue de [param begin] et [param end] sera bornée à la taille du "
"tableau, de sorte que la valeur par défaut pour [param end] le fait trancher "
"à la taille du tableau par défaut (c.a.d. [code]arr.slice(1)[/code] est un "
"raccourci pour [code]arr.slice(1, arr.size())[/code]).\n"
"Si [param begin] ou [param end] sont négatifs, ils seront par rapport à la "
"fin du tableau (c.a.d. [code]arr.slice(0, -2)[/code] est un raccourci pour "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a new [PackedVector4Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Renvoie un nouveau [PackedVector4Array] avec le contenu de [param right] "
"ajouté à la fin de ce tableau. Pour de meilleures performances, envisagez "
"d'utiliser [method append_array] à la place."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Vector4]s at the corresponding indices."
msgstr ""
"Renvoie [code]true[/code] si le contenu des deux tableaux est le même, c'est-"
"à-dire qu'ils ont tous leurs [Vector4] égaux aux indices correspondants."

msgid ""
"Returns the [Vector4] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Renvoie le [Vector4] à la position [param index]. Les indices négatifs "
"peuvent être utilisés pour accéder aux éléments à partir de la fin. "
"L'utilisation d'un index hors des limites du tableau entraînera une erreur."

msgid "Abstraction and base class for packet-based protocols."
msgstr "Abstraction et classe de base pour les protocoles à base de paquets."

msgid "Returns the number of packets currently available in the ring-buffer."
msgstr ""
"Renvoie le nombre de paquets actuellement disponibles dans le buffer "
"circulaire."

msgid "Gets a raw packet."
msgstr "Obtient un paquet brut."

msgid ""
"Returns the error state of the last packet received (via [method get_packet] "
"and [method get_var])."
msgstr ""
"Renvoie l'état d'erreur du dernier paquet reçu (via [method get_packet] et "
"[method get_var])."

msgid "Sends a raw packet."
msgstr "Envoie un paquet brut."

msgid "DTLS packet peer."
msgstr "Homologue du paquet DTLS."

msgid "Disconnects this peer, terminating the DTLS session."
msgstr "Déconnecte ce pair, finissant la session DTLS."

msgid "Returns the status of the connection."
msgstr "Renvoie le statut de la connexion."

msgid ""
"Poll the connection to check for incoming packets. Call this frequently to "
"update the status and keep the connection working."
msgstr ""
"Sondez la connexion pour vérifier les paquets entrants. Appelez cela "
"fréquemment pour mettre à jour le statut et garder la connexion fonctionnelle."

msgid "A status representing a [PacketPeerDTLS] that is disconnected."
msgstr "Un status représentant un [PacketPeerDTLS] qui est déconnecté."

msgid ""
"A status representing a [PacketPeerDTLS] that is currently performing the "
"handshake with a remote peer."
msgstr ""
"Un statut représentant un [PacketPeerDTLS] qui effectue actuellement la "
"poignée de main avec un pair distant."

msgid ""
"A status representing a [PacketPeerDTLS] that is connected to a remote peer."
msgstr ""
"Un status représentant un [PacketPeerDTLS] qui est connecté à un pair distant."

msgid "A status representing a [PacketPeerDTLS] in a generic error state."
msgstr ""
"Un status représentant un [PacketPeerDTLS] dans un état d'erreur générique."

msgid ""
"An error status that shows a mismatch in the DTLS certificate domain "
"presented by the host and the domain requested for validation."
msgstr ""
"Un statut d'erreur qui montre une erreur dans le domaine de certificat DTLS "
"présenté par l'hôte et le domaine demandé pour validation."

msgid "Wrapper to use a PacketPeer over a StreamPeer."
msgstr "Une encapsulation pour utiliser un PacketPeer dans une StreamPeer."

msgid "The wrapped [StreamPeer] object."
msgstr "L'objet [StreamPeer] enveloppé."

msgid "UDP packet peer."
msgstr "Homologue de paquet UDP."

msgid ""
"Returns the IP of the remote peer that sent the last packet(that was received "
"with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
msgstr ""
"Renvoie l'IP du pair distant qui a envoyé le dernier paquet (qui a été reçu "
"avec [method PacketPeer.get_packet] ou [method PacketPeer.get_var])."

msgid ""
"Returns the port of the remote peer that sent the last packet(that was "
"received with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
msgstr ""
"Renvoie le port du pair distant qui a envoyé le dernier paquet (qui a été "
"reçu avec [method PacketPeer.get_packet] ou [method PacketPeer.get_var])."

msgid ""
"Returns [code]true[/code] if the UDP socket is open and has been connected to "
"a remote address. See [method connect_to_host]."
msgstr ""
"Renvoie [code]true[/code] si le socket UDP est ouvert et a été connecté à une "
"adresse distante. Voir [method connect_to_host]."

msgid ""
"Enable or disable sending of broadcast packets (e.g. "
"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]. This option is "
"disabled by default.\n"
"[b]Note:[/b] Some Android devices might require the "
"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission and this option to be "
"enabled to receive broadcast packets too."
msgstr ""
"Active ou désactive l'envoi de paquets de diffusion (par exemple "
"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]. Cette option est "
"désactivée par défaut.\n"
"[b]Note :[/b] Certains appareils Android peuvent nécessiter la permission "
"[code]CHANGE_WIFI_MULTICAST_STATE[/code] et cette option pour être activée "
"pour recevoir aussi des paquets de diffusion."

msgid ""
"Sets the destination address and port for sending packets and variables. A "
"hostname will be resolved using DNS if needed.\n"
"[b]Note:[/b] [method set_broadcast_enabled] must be enabled before sending "
"packets to a broadcast address (e.g. [code]255.255.255.255[/code])."
msgstr ""
"Définit l'adresse de destination et le port pour envoyer des paquets et des "
"variables. Un nom d'hôte sera résolu en utilisant le DNS si nécessaire.\n"
"[b]Note :[/b] [method set_broadcast_enabled] doit être activé avant d'envoyer "
"des paquets à une adresse de diffusion (par exemple [code]255.255.255[/code])."

msgid "The [StyleBox] of this control."
msgstr "La [StyleBox] de ce contrôle."

msgid "The style of [PanelContainer]'s background."
msgstr "Le style de l'arrière-plan de [PanelContainer]."

msgid ""
"A resource referenced in a [Sky] that is used to draw a background. "
"[PanoramaSkyMaterial] functions similar to skyboxes in other engines, except "
"it uses an equirectangular sky map instead of a [Cubemap].\n"
"Using an HDR panorama is strongly recommended for accurate, high-quality "
"reflections. Godot supports the Radiance HDR ([code].hdr[/code]) and OpenEXR "
"([code].exr[/code]) image formats for this purpose.\n"
"You can use [url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/"
"cubemap_to_panorama.html]this tool[/url] to convert a cubemap to an "
"equirectangular sky map."
msgstr ""
"Une ressource référencée dans un ciel [Sky] qui est utilisée pour dessiner un "
"arrière-plan. Les fonctions de matériau de ciel en panorama "
"[PanoramaSkyMaterial] sont similaires aux skyboxes dans d'autre moteurs, à la "
"différence qu'ils utilisent une skymap équi-rectengulaire à la place d'une "
"[Cubemap].\n"
"Utiliser un panorama HDR est fortement recommandé pour des réflexions "
"précises et de haute qualité. Godot supporte les HDR de rayonnements "
"([code].hdr[/code]) et les formats d'images OpenEXR ([code].exr[/code]) dans "
"ce but.\n"
"Vous pouvez utiliser [url=https://danilw.github.io/GLSL-howto/"
"cubemap_to_panorama_js/cubemap_to_panorama.html]cet outil[/url] pour "
"convertir une cubemap en une skymap équi-rectengulaire."

msgid ""
"The sky's overall brightness multiplier. Higher values result in a brighter "
"sky."
msgstr ""
"Le multiplicateur de luminosité générale du ciel. Des valeurs plus élevées "
"résulteront en un ciel plus lumineux."

msgid ""
"A boolean value to determine if the background texture should be filtered or "
"not."
msgstr ""
"Une valeur booléenne pour déterminer si la texture de l'arrière-plan doit "
"être filtrée ou pas."

msgid "[Texture2D] to be applied to the [PanoramaSkyMaterial]."
msgstr "La [Texture2D] à appliquer au [PanoramaSkyMaterial]."

msgid "A node used to create a parallax scrolling background."
msgstr "Un nœud utilisé pour créer un arrière-plan à défilement parallaxe."

msgid "2D Parallax"
msgstr "Parallaxe 2D"

msgid "Use the [Parallax2D] node instead."
msgstr "Utilisez le nœud [Parallax2D] à la place."

msgid "The base position offset for all [ParallaxLayer] children."
msgstr ""
"Le décalage de la position de base pour tous les enfants du [ParallaxLayer]."

msgid "The base motion scale for all [ParallaxLayer] children."
msgstr "L'échelle du mouvement de base pour tous les [ParallaxLayer] enfants."

msgid ""
"If [code]true[/code], elements in [ParallaxLayer] child aren't affected by "
"the zoom level of the camera."
msgstr ""
"Si [code]true[/code], les éléments des [ParallaxLayer] enfants ne sont pas "
"touchés par le niveau de zoom de la caméra."

msgid "A parallax scrolling layer to be used with [ParallaxBackground]."
msgstr ""
"Une couche de défilement parallaxe à utiliser avec [ParallaxBackground]."

msgid ""
"The ParallaxLayer's offset relative to the parent ParallaxBackground's "
"[member ParallaxBackground.scroll_offset]."
msgstr ""
"Le décalage du ParallaxLayer par rapport au décalage de défilement [member "
"ParallaxBackground.scroll_offset] du ParallaxBackground parent."

msgid ""
"Multiplies the ParallaxLayer's motion. If an axis is set to [code]0[/code], "
"it will not scroll."
msgstr ""
"Multiplie le mouvement du ParallaxLayer. Si un axe est défini à [code]0[/"
"code], il ne défilera pas."

msgid ""
"Holds a particle configuration for [GPUParticles2D] or [GPUParticles3D] nodes."
msgstr ""
"Contient une configuration de particule pour les nœuds [GPUParticles2D] ou "
"[GPUParticles3D]."

msgid ""
"Returns the minimum and maximum values of the given [param param] as a "
"vector.\n"
"The [code]x[/code] component of the returned vector corresponds to minimum "
"and the [code]y[/code] component corresponds to maximum."
msgstr ""
"Renvoie les valeurs minimales et maximales du paramètre [param param] donné "
"en tant que vecteur.\n"
"La composante [code]x[/code] du vecteur renvoyé correspond au minimum et la "
"composante [code]y[/code] correspond au maximum."

msgid "Sets the [param particle_flag] to [param enable]."
msgstr "Définit [param particle_flag] à [param enable]."

msgid "Each particle's rotation will be animated along this [CurveTexture]."
msgstr ""
"La rotation de chaque particule sera animé suivant cette [CurveTexture]."

msgid "Each particle's animation offset will vary along this [CurveTexture]."
msgstr ""
"La position de l'animation de chaque particule variera suivant cette "
"[CurveTexture]."

msgid "Each particle's animation speed will vary along this [CurveTexture]."
msgstr ""
"La vitesse d'animation de chaque particule variera suivant cette "
"[CurveTexture]."

msgid ""
"Each particle's initial color will vary along this [GradientTexture1D] "
"(multiplied with [member color]).\n"
"[b]Note:[/b] [member color_initial_ramp] multiplies the particle mesh's "
"vertex colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"color_initial_ramp] will have no visible effect."
msgstr ""
"La couleur initiale de chaque particule variera selon ce [GradientTexture1D] "
"(multiplié avec [member color]).\n"
"[b]Note :[/b] [member color_initial_ramp] multiplie les couleurs des sommets "
"du maillage de la particule. Pour avoir un effet visible sur un "
"[BaseMaterial3D], [member BaseMaterial3D.vertex_color_use_as_albedo] [i]doit[/"
"i] valoir [code]true[/code]. Pour un [ShaderMaterial], [code]ALBEDO *= "
"COLOR.rgb;[/code] doit être inséré dans la fonction [code]fragment()[/code] "
"du shader. Sinon, [member color_initial_ramp] n'aura pas d'effet visible."

msgid ""
"Each particle's color will vary along this [GradientTexture1D] over its "
"lifetime (multiplied with [member color]).\n"
"[b]Note:[/b] [member color_ramp] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member color_ramp] "
"will have no visible effect."
msgstr ""
"La couleur initiale de chaque particule variera suivant ce "
"[GradientTexture1D] sur sa durée de vie (multiplié avec [member color]).\n"
"[b]Note :[/b] [member color_ramp] multiplie les couleurs des sommets du "
"maillage de la particule. Pour avoir un effet visible sur un "
"[BaseMaterial3D], [member BaseMaterial3D.vertex_color_use_as_albedo] [i]doit[/"
"i] valoir [code]true[/code]. Pour un [ShaderMaterial], [code]ALBEDO *= "
"COLOR.rgb;[/code] doit être inséré dans la fonction [code]fragment()[/code] "
"du shader. Sinon, [member color_ramp] n'aura pas d'effet visible."

msgid "Damping will vary along this [CurveTexture]."
msgstr "L’amortissement variera le long de cette [CurveTexture]."

msgid ""
"Particle velocity and rotation will be set by sampling this texture at the "
"same point as the [member emission_point_texture]. Used only in [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]. Can be created automatically from mesh or "
"node by selecting \"Create Emission Points from Mesh/Node\" under the "
"\"Particles\" tool in the toolbar."
msgstr ""
"La vitesse et la rotation des particules seront définies en échantillonnant "
"cette texture au même point que le [member emission_point_texture]. Utilisé "
"uniquement dans [constant EMISSION_SHAPE_DIRECTED_POINTS]. Peut être créée "
"automatiquement à partir de maillages ou de nœuds en sélectionnant \"Créer "
"points d'émission à partir d'un maillage/Nœud\" sous l'outil \"Particules\" "
"dans la barre d'outils."

msgid "Amount of [member spread] along the Y axis."
msgstr "La quantité de diffusion [member spread] le long de l'axe Y."

msgid "Each particle's hue will vary along this [CurveTexture]."
msgstr "La teinte de chaque particule variera suivant cette [CurveTexture]."

msgid "Each particle's linear acceleration will vary along this [CurveTexture]."
msgstr ""
"La vitesse linéaire de chaque particule variera suivant cette [CurveTexture]."

msgid "If [code]true[/code], particles will not move on the z axis."
msgstr ""
"Si [code]true[/code], les particules ne se déplaceront pas le long de l'axe Z."

msgid "Each particle's radial acceleration will vary along this [CurveTexture]."
msgstr ""
"L'accélération radiale de chaque particule variera suivant cette "
"[CurveTexture]."

msgid ""
"Each particle's scale will vary along this [CurveTexture] over its lifetime. "
"If a [CurveXYZTexture] is supplied instead, the scale will be separated per-"
"axis."
msgstr ""
"L'échelle de chaque particule variera suivant cette [CurveTexture] durant sa "
"durée de vie. Si une [CurveXYZTexture] est fournie à la place, l'échelle sera "
"séparée par axe."

msgid "Minimum equivalent of [member scale_max]."
msgstr "Équivalent pour le minimum de [member scale_max]."

msgid ""
"Either a [CurveTexture] or a [CurveXYZTexture] that scales each particle "
"based on its velocity."
msgstr ""
"Soit une [CurveTexture] ou une [CurveXYZTexture] qui dimensionne chaque "
"particule en fonction de sa vitesse."

msgid ""
"Each particle's tangential acceleration will vary along this [CurveTexture]."
msgstr ""
"L'accélération tangentielle de chaque particule variera suivant cette "
"[CurveTexture]."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set linear acceleration properties."
msgstr ""
"Utilisez la avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de l'accélération linéaire."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set radial acceleration properties."
msgstr ""
"Utilisez la avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de l'accélération radiale."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set tangential acceleration properties."
msgstr ""
"Utilisez la avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de l'accélération tangentielle."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set hue variation properties."
msgstr ""
"Utilisez la avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de la variation de teinte."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set animation speed properties."
msgstr ""
"Utilisez la avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de la vitesse d'animation."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set animation offset properties."
msgstr ""
"Utilisez la avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés du décalage de l'animation."

msgid "Represents the size of the [enum SubEmitterMode] enum."
msgstr "Représente la taille de l'énumération [enum SubEmitterMode]."

msgid "Represents the size of the [enum CollisionMode] enum."
msgstr "Représente la taille de l'énumération [enum CollisionMode]."

msgid "Contains a [Curve2D] path for [PathFollow2D] nodes to follow."
msgstr "Contient un chemin [Curve2D] que suivront les nœuds [PathFollow2D]."

msgid ""
"Can have [PathFollow2D] child nodes moving along the [Curve2D]. See "
"[PathFollow2D] for more information on usage.\n"
"[b]Note:[/b] The path is considered as relative to the moved nodes (children "
"of [PathFollow2D]). As such, the curve should usually start with a zero "
"vector ([code](0, 0)[/code])."
msgstr ""
"Peut avoir des nœuds enfants [PathFollow2D] se déplaçant le long de la "
"[Curve2D]. Voir [PathFollow3D] pour plus d'informations sur l'utilisation.\n"
"[b]Note :[/b] Le chemin est considéré comme relatif aux nœuds déplacés "
"(enfants du [PathFollow3D]). Ainsi, la courbe devrait généralement commencer "
"par un vecteur zéro [code](0, 0)[/code]."

msgid "A [Curve2D] describing the path."
msgstr "Une [Curve2D] décrivant le chemin."

msgid "Contains a [Curve3D] path for [PathFollow3D] nodes to follow."
msgstr "Contient un chemin [Curve3D] à suivre par les nœuds [PathFollow3D]."

msgid ""
"Can have [PathFollow3D] child nodes moving along the [Curve3D]. See "
"[PathFollow3D] for more information on the usage.\n"
"Note that the path is considered as relative to the moved nodes (children of "
"[PathFollow3D]). As such, the curve should usually start with a zero vector "
"[code](0, 0, 0)[/code]."
msgstr ""
"Peut avoir des nœuds enfants [PathFollow3D] se déplaçant le long de la "
"[Curve3D]. Voir [PathFollow3D] pour plus d'informations sur l'utilisation.\n"
"Notez que le chemin est considéré comme relatif aux nœuds déplacés (enfants "
"du [PathFollow3D]). Ainsi, la courbe devrait généralement commencer par un "
"vecteur zéro [code](0, 0, 0)[/code]."

msgid "A [Curve3D] describing the path."
msgstr "Une [Curve3D] décrivant le chemin."

msgid ""
"The custom color to use to draw the shape in the editor.\n"
"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
"EditorSettings is used."
msgstr ""
"La couleur personnalisée à utiliser pour dessiner la forme dans l'éditeur.\n"
"Si défini à [code]Color(0.0, 0.0, 0.0, 0.0)[/code] (par défaut), le jeu de "
"couleurs dans EditorSettings est utilisé."

msgid "Emitted when the [member curve] changes."
msgstr "Émis quand cette [member curve] change."

msgid "Emitted when the [member debug_custom_color] changes."
msgstr "Émis quand [member debug_custom_color] change."

msgid "Point sampler for a [Path2D]."
msgstr "Échantillonneur de points pour un [Path2D]."

msgid "The node's offset along the curve."
msgstr "Le décalage du nœud le long de la courbe."

msgid "The node's offset perpendicular to the curve."
msgstr "Le décalage du nœud perpendiculairement à la courbe."

msgid "Point sampler for a [Path3D]."
msgstr "Échantillonneur de points pour un [Path3D]."

msgid "Forbids the PathFollow3D to rotate."
msgstr "Interdit au PathFollow3D de pivoter."

msgid "Creates packages that can be loaded into a running project."
msgstr "Crée des paquets qui peuvent être chargés dans un projet lancé."

msgid ""
"The [PCKPacker] is used to create packages that can be loaded into a running "
"project using [method ProjectSettings.load_resource_pack].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var packer = PCKPacker.new()\n"
"packer.pck_start(\"test.pck\")\n"
"packer.add_file(\"res://text.txt\", \"text.txt\")\n"
"packer.flush()\n"
"[/gdscript]\n"
"[csharp]\n"
"var packer = new PckPacker();\n"
"packer.PckStart(\"test.pck\");\n"
"packer.AddFile(\"res://text.txt\", \"text.txt\");\n"
"packer.Flush();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The above [PCKPacker] creates package [code]test.pck[/code], then adds a file "
"named [code]text.txt[/code] at the root of the package.\n"
"[b]Note:[/b] PCK is Godot's own pack file format. To create ZIP archives that "
"can be read by any program, use [ZIPPacker] instead."
msgstr ""
"[PCKPacker] est utilisé pour créer des paquets qui peuvent être chargés dans "
"un projet en cours d'exécution en utilisant [method "
"ProjectSettings.load_resource_pack].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var packer = PCKPacker.new()\n"
"packer.pck_start(\"test.pck\")\n"
"packer.add_file(\"res://text.txt\", \"text.txt\")\n"
"packer.flush()\n"
"[/gdscript]\n"
"[csharp]\n"
"var packer = new PckPacker();\n"
"packer.PckStart(\"test.pck\");\n"
"packer.AddFile(\"res://text.txt\", \"text.txt\");\n"
"packer.Flush();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Le [PCKPacker] ci-dessus crée le paquet [code]test.pck[/code], puis ajoute un "
"fichier nommé [code]text.txt[/code] à la racine du paquet.\n"
"[b]Note :[/b] PCK est le format de fichier de paquet propre à Godot. Pour "
"créer des archives ZIP qui peuvent être lues par n'importe quel programme, "
"utilisez plutôt [ZIPPacker]."

msgid ""
"Adds the [param source_path] file to the current PCK package at the [param "
"target_path] internal path. The [code]res://[/code] prefix for [param "
"target_path] is optional and stripped internally. File content is immediately "
"written to the PCK."
msgstr ""
"Ajoute le fichier [param source_path] au paquet PCK actuel au chemin interne "
"[param target_path]. Le préfixe [code]res://[/code] pour [param target_path] "
"est facultatif et retiré en interne. Le contenu du fichier est immédiatement "
"écrit au PCK."

msgid ""
"Registers a file removal of the [param target_path] internal path to the PCK. "
"This is mainly used for patches. If the file at this path has been loaded "
"from a previous PCK, it will be removed. The [code]res://[/code] prefix for "
"[param target_path] is optional and stripped internally."
msgstr ""
"Enregistre une suppression de fichier au chemin interne [param target_path] "
"vers le PCK. Ceci est principalement utilisé pour les patches. Si le fichier "
"de ce chemin a été chargé d'un PCK précédent, il sera supprimé. Le préfixe "
"[code]res://[/code] pour [param target_path] est facultatif et retiré en "
"interne."

msgid ""
"Writes the file directory and closes the PCK. If [param verbose] is "
"[code]true[/code], a list of files added will be printed to the console for "
"easier debugging.\n"
"[b]Note:[/b] [PCKPacker] will automatically flush when it's freed, which "
"happens when it goes out of scope or when it gets assigned with [code]null[/"
"code]. In C# the reference must be disposed after use, either with the "
"[code]using[/code] statement or by calling the [code]Dispose[/code] method "
"directly."
msgstr ""
"Écrit le répertoire du fichier et ferme le PCK. Si [param verbose] vaut "
"[code]true[/code], une liste des fichiers ajoutés sera affichée à la console "
"pour faciliter le débogage.\n"
"[b]Note :[/b] [PCKPacker] appellera automatiquement cette méthode lorsqu'il "
"sera libéré, ce qui se produit quand il sort de la portée ou quand "
"[code]null[/code] lui est affecté. En C#, la référence doit être éliminée "
"après utilisation, soit avec l'instruction [code]using[/code], soit en "
"appelant la méthode [code]Dispose[/code] directement."

msgid ""
"Creates a new PCK file at the file path [param pck_path]. The [code].pck[/"
"code] file extension isn't added automatically, so it should be part of "
"[param pck_path] (even though it's not required)."
msgstr ""
"Crée un nouveau fichier PCK avec le chemin de fichier [param pck_path]. "
"L'extension de fichier [code].pck[/code] n'est pas ajoutée automatiquement, "
"elle doit donc être présente dans [param pck_path] (mais cela n'est pas "
"indispensable)."

msgid "Exposes performance-related data."
msgstr "Expose les données relatives aux performances."

msgid "Time it took to complete one frame, in seconds. [i]Lower is better.[/i]"
msgstr ""
"Le temps nécessaire pour compléter une trame, en secondes. [i]Plus c'est bas, "
"mieux c'est.[/i]"

msgid ""
"Time it took to complete one physics frame, in seconds. [i]Lower is better.[/"
"i]"
msgstr ""
"Le temps nécessaire pour compléter une trame physique, en secondes. [i]Plus "
"c'est bas, mieux c'est.[/i]"

msgid ""
"Time it took to complete one navigation step, in seconds. This includes "
"navigation map updates as well as agent avoidance calculations. [i]Lower is "
"better.[/i]"
msgstr ""
"Le temps pour terminer une étape de navigation, en secondes. Cela comprend "
"les mises à jour de la carte de navigation ainsi que les calculs d'évitement "
"des agents. [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"Static memory currently used, in bytes. Not available in release builds. "
"[i]Lower is better.[/i]"
msgstr ""
"La mémoire statique actuellement utilisée, en octets. N'est pas utilisable "
"dans les versions finales. [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"Available static memory. Not available in release builds. [i]Lower is better."
"[/i]"
msgstr ""
"La mémoire statique disponible. N'est pas utilisable dans les versions "
"finales. [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications. "
"[i]Lower is better.[/i]"
msgstr ""
"La plus grande quantité de mémoire que le tampon de queue de messages a "
"utilisé, en octets. La queue de messages est utilisée pour les appels et les "
"notifications de fonctions différées. [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"Number of objects currently instantiated (including nodes). [i]Lower is "
"better.[/i]"
msgstr ""
"Le nombre d'objets actuellement instanciés (nœuds inclus). [i]Plus c'est bas, "
"mieux c'est.[/i]"

msgid "Number of resources currently used. [i]Lower is better.[/i]"
msgstr ""
"Nombre de ressources actuellement utilisées. [i]Plus c'est bas, mieux c'est.[/"
"i]"

msgid ""
"Number of nodes currently instantiated in the scene tree. This also includes "
"the root node. [i]Lower is better.[/i]"
msgstr ""
"Nombre de nœuds actuellement instanciés dans l'arbre de scène. Cela inclut "
"également le nœud racine. [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree. [i]Lower is better.[/i]"
msgstr ""
"Nombre de nœuds orphelins, c'est-à-dire de nœuds qui ne sont pas parentés à "
"un nœud de l'arbre de scène. [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"The total number of objects in the last rendered frame. This metric doesn't "
"include culled objects (either via hiding nodes, frustum culling or occlusion "
"culling). [i]Lower is better.[/i]"
msgstr ""
"Le nombre total d'objets dans la dernière trame rendue. Cette métrique "
"n'inclut pas les objets éliminés (soit par la dissimulation des nœuds, le "
"frustum culling ou l'occlusion culling). [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"The total number of vertices or indices rendered in the last rendered frame. "
"This metric doesn't include primitives from culled objects (either via hiding "
"nodes, frustum culling or occlusion culling). Due to the depth prepass and "
"shadow passes, the number of primitives is always higher than the actual "
"number of vertices in the scene (typically double or triple the original "
"vertex count). [i]Lower is better.[/i]"
msgstr ""
"Le nombre total de sommets ou d'indices rendus dans la dernière trame rendue. "
"Cette métrique n'inclut pas les primitives d'objets éliminés (soit par la "
"dissimulation des nœuds, le frustum culling ou l'occlusion culling). À cause "
"de la pré-passe de profondeur et des passes d'ombres, le nombre de primitives "
"est toujours plus élevé que le nombre réel de sommets dans la scène "
"(généralement le double ou le triple du nombre de vertex d'origine). [i]Plus "
"c'est bas, mieux c'est.[/i]"

msgid ""
"The total number of draw calls performed in the last rendered frame. This "
"metric doesn't include culled objects (either via hiding nodes, frustum "
"culling or occlusion culling), since they do not result in draw calls. "
"[i]Lower is better.[/i]"
msgstr ""
"Le nombre total de draw calls effectués dans la dernière trame rendue. Cette "
"métrique ne comprend pas les objets éliminés (soit par la dissimulation de "
"nœuds, le frustum culling ou l'occlusion culling), car ils ne se traduisent "
"pas par des draw calls. [i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"The amount of video memory used (texture and vertex memory combined, in "
"bytes). Since this metric also includes miscellaneous allocations, this value "
"is always greater than the sum of [constant RENDER_TEXTURE_MEM_USED] and "
"[constant RENDER_BUFFER_MEM_USED]. [i]Lower is better.[/i]"
msgstr ""
"La quantité de mémoire vidéo utilisée (mémoire des sommets et des textures "
"combinés, en octets). Étant donné que cette mesure comprend également des "
"allocations diverses, cette valeur est toujours supérieure à la somme de "
"[constant RENDER_TEXTURE_MEM_USED] et [constant RENDER_BUFFER_MEM_USED]. "
"[i]Plus c'est bas, mieux c'est.[/i]"

msgid "The amount of texture memory used (in bytes). [i]Lower is better.[/i]"
msgstr ""
"La quantité de mémoire utilisée pour les textures (en octets). [i]Plus c'est "
"bas, mieux c'est.[/i]"

msgid ""
"The amount of render buffer memory used (in bytes). [i]Lower is better.[/i]"
msgstr ""
"La quantité de mémoire de tampon de rendu utilisée (en octets). [i]Plus c'est "
"bas, mieux c'est.[/i]"

msgid ""
"Number of active [RigidBody2D] nodes in the game. [i]Lower is better.[/i]"
msgstr ""
"Le nombre de nœuds [RigidBody2D] actifs dans le jeu. [i]Plus c'est bas, mieux "
"c'est.[/i]"

msgid ""
"Number of collision pairs in the 2D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Le nombre de paires de collision dans le moteur physique 2D. [i]Plus c'est "
"bas, mieux c'est.[/i]"

msgid "Number of islands in the 2D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Le nombre d'îles dans le moteur physique 2D. [i]Plus c'est bas, mieux c'est.[/"
"i]"

msgid ""
"Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game. "
"[i]Lower is better.[/i]"
msgstr ""
"Le nombre de nœuds [RigidBody3D] et [VehicleBody3D] actifs dans le jeu. "
"[i]Plus c'est bas, mieux c'est.[/i]"

msgid ""
"Number of collision pairs in the 3D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Le nombre de paires de collisions dans le moteur physique 3D. [i]Plus c'est "
"bas, mieux c'est.[/i]"

msgid "Number of islands in the 3D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Le nombre d'îles dans le moteur physique 3D. [i]Plus c'est bas, mieux c'est.[/"
"i]"

msgid "Represents the size of the [enum Monitor] enum."
msgstr "Représente la taille de l'énumération [enum Monitor]."

msgid ""
"A [RigidBody2D]-derived node used to make [Bone2D]s in a [Skeleton2D] react "
"to physics."
msgstr ""
"Un nœud dérivé de [RigidBody2D] utilisé pour faire réagir à la physique des "
"[Bone2D]s dans un [Skeleton2D]."

msgid ""
"The [PhysicalBone2D] node is a [RigidBody2D]-based node that can be used to "
"make [Bone2D]s in a [Skeleton2D] react to physics.\n"
"[b]Note:[/b] To make the [Bone2D]s visually follow the [PhysicalBone2D] node, "
"use a [SkeletonModification2DPhysicalBones] modification on the [Skeleton2D] "
"parent.\n"
"[b]Note:[/b] The [PhysicalBone2D] node does not automatically create a "
"[Joint2D] node to keep [PhysicalBone2D] nodes together. They must be created "
"manually. For most cases, you want to use a [PinJoint2D] node. The "
"[PhysicalBone2D] node will automatically configure the [Joint2D] node once "
"it's been added as a child node."
msgstr ""
"Le nœud [PhysicalBone2D] est un nœud dérivé de [RigidBody2D] utilisé pour "
"faire réagir à la physique des [Bone2D]s dans un [Skeleton2D].\n"
"[b]Note :[/b] Pour que les [Bone2D]s suivent visuellement le nœud "
"[PhysicalBone2D], utilisez une modification "
"[SkeletonModification2DPhysicalBones] sur le [Skeleton2D] parent.\n"
"[b]Note :[/b] Le nœud [PhysicalBone2D] ne crée pas automatiquement un nœud "
"[Joint2D] pour garder les nœuds [PhysicalBone2D] ensemble. Ils doivent être "
"créés manuellement. Pour la plupart des cas, vous voudrez utiliser un nœud "
"[PinJoint2D]. Le nœud [PhysicalBone2D] configurera automatiquement le nœud "
"[Joint2D] une fois qu'il a été ajouté comme nœud enfant."

msgid ""
"Returns the first [Joint2D] child node, if one exists. This is mainly a "
"helper function to make it easier to get the [Joint2D] that the "
"[PhysicalBone2D] is autoconfiguring."
msgstr ""
"Renvoie le premier nœud [Joint2D] enfant, s'il existe. Il s'agit "
"principalement d'une fonction d'aide pour obtenir facilement le [Joint2D] que "
"le [PhysicalBone2D] configure automatiquement."

msgid ""
"Returns a boolean that indicates whether the [PhysicalBone2D] is running and "
"simulating using the Godot 2D physics engine. When [code]true[/code], the "
"PhysicalBone2D node is using physics."
msgstr ""
"Renvoie un booléen indiquant si le [PhysicalBone2D] est actif et simule à "
"l'aide du moteur de physique 2D de Godot. Lorsque [code]true[/code], le nœud "
"PhysicalBone2D utilise la physique."

msgid ""
"If [code]true[/code], the [PhysicalBone2D] will automatically configure the "
"first [Joint2D] child node. The automatic configuration is limited to setting "
"up the node properties and positioning the [Joint2D]."
msgstr ""
"Si [code]true[/code], le [PhysicalBone2D] va configurer automatiquement le "
"premier nœud [Joint2D] enfant. La configuration automatique est limitée à la "
"configuration des propriétés du nœud et au positionnement du [Joint2D]."

msgid "The index of the [Bone2D] that this [PhysicalBone2D] should simulate."
msgstr "L'index du [Bone2D] que ce [PhysicalBone2D] devrait simuler."

msgid ""
"The [NodePath] to the [Bone2D] that this [PhysicalBone2D] should simulate."
msgstr "Le [NodePath] du [Bone2D] que ce [PhysicalBone2D] devrait simuler."

msgid ""
"If [code]true[/code], the [PhysicalBone2D] will keep the transform of the "
"bone it is bound to when simulating physics."
msgstr ""
"Si [code]true[/code], le [PhysicalBone2D] conservera la transformation de "
"l'os auquel il est lié lorsqu'il simule la physique."

msgid ""
"If [code]true[/code], the [PhysicalBone2D] will start simulating using "
"physics. If [code]false[/code], the [PhysicalBone2D] will follow the "
"transform of the [Bone2D] node.\n"
"[b]Note:[/b] To have the [Bone2D]s visually follow the [PhysicalBone2D], use "
"a [SkeletonModification2DPhysicalBones] modification on the [Skeleton2D] node "
"with the [Bone2D] nodes."
msgstr ""
"Si [code]true[/code], [PhysicalBone2D] commencera à simuler en utilisant la "
"physique. Si [code]false[/code], le [PhysicalBone2D] suivra la transformation "
"du nœud [Bone2D].\n"
"[b]Note :[/b] Pour que les [Bone2D]s suivent visuellement le "
"[PhysicalBone2D], utilisez un modificateur "
"[SkeletonModification2DPhysicalBones] sur le nœud [Skeleton2D] avec les nœuds "
"[Bone2D]."

msgid "A physics body used to make bones in a [Skeleton3D] react to physics."
msgstr ""
"Un corps physique utilisé pour faire que des os dans un [Skeleton3D] "
"réagissent à la physique."

msgid ""
"The [PhysicalBone3D] node is a physics body that can be used to make bones in "
"a [Skeleton3D] react to physics.\n"
"[b]Note:[/b] In order to detect physical bones with raycasts, the [member "
"SkeletonModifier3D.active] property of the parent [PhysicalBoneSimulator3D] "
"must be [code]true[/code] and the [Skeleton3D]'s bone must be assigned to "
"[PhysicalBone3D] correctly; it means that [method get_bone_id] should return "
"a valid id ([code]>= 0[/code])."
msgstr ""
"Le nœud [PhysicalBone3D] est un corps physique qui peut être utilisé pour "
"faire que des os dans un [Skeleton3D] réagissent à la physique.\n"
"[b]Note :[/b] Pour détecter des os physiques avec des raycasts, la propriété "
"[member SkeletonModifier3D.active] du [PhysicalBoneSimulator3D] parent doit "
"être [code]true[/code] et l'os du [Skeleton3D] doit être attribué au "
"[PhysicalBone3D] correctement, cela signifie que [method get_bone_id] devrait "
"renvoyer un identifiant valide ([code]>=0[/code])."

msgid ""
"Called during physics processing, allowing you to read and safely modify the "
"simulation state for the object. By default, it is called before the standard "
"force integration, but the [member custom_integrator] property allows you to "
"disable the standard force integration and do fully custom force integration "
"for a body."
msgstr ""
"Appelé pendant le traitement physique, vous permettant de lire et de modifier "
"en toute sécurité l'état de simulation de l'objet. Par défaut, elle est "
"appelée avant l'intégration des forces standardes, mais la propriété [member "
"custom_integrator] vous permet de désactiver l'intégration des forces "
"standardes et de faire une intégration des forces entièrement personnalisée "
"pour un corps."

msgid ""
"Applies a directional impulse without affecting rotation.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_integrate_forces\" functions "
"otherwise).\n"
"This is equivalent to using [method apply_impulse] at the body's center of "
"mass."
msgstr ""
"Applique une impulsion directionnelle n'affectant pas la rotation.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_integrate_forces\" sinon).\n"
"Ceci est équivalent à utiliser [method apply_impulse] au centre de masse du "
"corps."

msgid ""
"Applies a positioned impulse to the PhysicsBone3D.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_integrate_forces\" functions "
"otherwise).\n"
"[param position] is the offset from the PhysicsBone3D origin in global "
"coordinates."
msgstr ""
"Applique une impulsion positionnelle au PhysicalBone3D.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_integrate_forces\" sinon).\n"
"[param position] est le décalage depuis l'origine du [PhysicalBone3D] en "
"coordonnées globales."

msgid "Returns the unique identifier of the PhysicsBone3D."
msgstr "Renvoie l'identifiant unique du PhysicalBone3D."

msgid ""
"Returns [code]true[/code] if the PhysicsBone3D is allowed to simulate physics."
msgstr ""
"Renvoie [code]true[/code] si le PhysicalBone3D est autorisé à simuler la "
"physique."

msgid ""
"Returns [code]true[/code] if the PhysicsBone3D is currently simulating "
"physics."
msgstr ""
"Renvoie [code]true[/code] si le PhysicalBone3D simule actuellement la "
"physique."

msgid ""
"Damps the body's rotation. By default, the body will use the [member "
"ProjectSettings.physics/3d/default_angular_damp] project setting or any value "
"override set by an [Area3D] the body is in. Depending on [member "
"angular_damp_mode], you can set [member angular_damp] to be added to or to "
"replace the body's damping value.\n"
"See [member ProjectSettings.physics/3d/default_angular_damp] for more details "
"about damping."
msgstr ""
"Amortit la rotation du corps. Par défaut, le corps utilisera le paramètre de "
"projet [member ProjectSettings.physics/3d/default_angular_damp] ou toute "
"redéfinition de valeur définie par une [Area3D] où se trouve le corps. Selon "
"[member angular_damp_mode], vous pouvez définir que [member angular_damp] "
"soit ajouté à ou va remplacer la valeur d'amortissement du corps.\n"
"Voir [member ProjectSettings.physics/3d/default_angular_damp] pour plus de "
"détails sur l'amortissement."

msgid "Defines how [member angular_damp] is applied."
msgstr "Définit comment [member angular_damp] est appliqué."

msgid "The PhysicalBone3D's rotational velocity in [i]radians[/i] per second."
msgstr "La vitesse de rotation du PhysicalBone3D en [i]radians[/i] par seconde."

msgid "Sets the body's transform."
msgstr "Définit la transformation du corps."

msgid ""
"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
"[code]1[/code] (full bounciness).\n"
"[b]Note:[/b] Even with [member bounce] set to [code]1.0[/code], some energy "
"will be lost over time due to linear and angular damping. To have a "
"[PhysicalBone3D] that preserves all its energy over time, set [member bounce] "
"to [code]1.0[/code], [member linear_damp_mode] to [constant "
"DAMP_MODE_REPLACE], [member linear_damp] to [code]0.0[/code], [member "
"angular_damp_mode] to [constant DAMP_MODE_REPLACE], and [member angular_damp] "
"to [code]0.0[/code]."
msgstr ""
"La capacité du corps à rebondir. Les valeurs vont de [code]0[/code] (pas de "
"rebond) à [code]1[/code] (rebond complet).\n"
"[b]Note :[/b] Même avec [member bounce] défini à [code]1.0[/code], une partie "
"de l'énergie sera perdue au cours du temps en raison de l'amortissement "
"linéaire et angulaire. Pour avoir un [PhysicalBone3D] qui conserve toute son "
"énergie au cours du temps, définissez [member bounce] à [code]1.0[/code], "
"[member linear_damp_mode] à [constant DAMP_MODE_REPLACE] à [code]0.0[/code], "
"[member angular_damp_mode] à [constant DAMP_MODE_REPLACE], et [member "
"angular_damp] à [code]0.0[/code]."

msgid ""
"If [code]true[/code], the body is deactivated when there is no movement, so "
"it will not take part in the simulation until it is awakened by an external "
"force."
msgstr ""
"Si [code]true[/code], le corps est désactivé lorsqu'il n'y a pas de "
"mouvement, ainsi il ne participera pas à la simulation jusqu'à ce qu'il soit "
"réveillé par une force externe."

msgid ""
"If [code]true[/code], the standard force integration (like gravity or "
"damping) will be disabled for this body. Other than collision response, the "
"body will only move as determined by the [method _integrate_forces] method, "
"if that virtual method is overridden.\n"
"Setting this property will call the method [method "
"PhysicsServer3D.body_set_omit_force_integration] internally."
msgstr ""
"Si [code]true[/code], l'intégration des forces standardes (comme la gravité "
"ou l'amortissement) sera désactivée pour ce corps. En dehors de la réponse à "
"la collision, le corps ne se déplacera que selon la méthode [method "
"_integrate_forces], si cette méthode virtuelle est surchargée.\n"
"Définir cette propriété appellera la méthode [method "
"PhysicsServer3D.body_set_omit_force_integration] en interne."

msgid ""
"The body's friction, from [code]0[/code] (frictionless) to [code]1[/code] "
"(max friction)."
msgstr ""
"La friction du corps, de [code]0[/code] (sans friction) à [code]1[/code] "
"(friction maximale)."

msgid ""
"This is multiplied by [member ProjectSettings.physics/3d/default_gravity] to "
"produce this body's gravity. For example, a value of [code]1.0[/code] will "
"apply normal gravity, [code]2.0[/code] will apply double the gravity, and "
"[code]0.5[/code] will apply half the gravity to this body."
msgstr ""
"Ceci est multiplié par [member ProjectSettings.physics/3d/default_gravity] "
"pour produire la gravité de ce corps. Par exemple, une valeur de [code]1.0[/"
"code] appliquera la gravité normale, [code]2.0[/code] appliquera le double de "
"la gravité, et [code]0.5[/code] appliquera la moitié de la gravité à ce corps."

msgid "Sets the joint's transform."
msgstr "Définit la transformation de l'articulation."

msgid "Sets the joint's rotation in radians."
msgstr "Définit la rotation de la liaison en radians."

msgid "Sets the joint type."
msgstr "Définit le type de liaison."

msgid ""
"Damps the body's movement. By default, the body will use [member "
"ProjectSettings.physics/3d/default_linear_damp] or any value override set by "
"an [Area3D] the body is in. Depending on [member linear_damp_mode], [member "
"linear_damp] may be added to or replace the body's damping value.\n"
"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Amortit le mouvement du corps. Par défaut, le corps utilisera [member "
"ProjectSettings.physics/3d/default_linear_damp] ou toute redéfinition de "
"valeur définie par une [Area3D] où se trouve le corps. Selon [member "
"linear_damp_mode], [member linear_damp] peut être ajouté ou remplacer la "
"valeur d'amortissement du corps.\n"
"Voir [member ProjectSettings.physics/3d/default_linear_damp] pour plus de "
"détails sur l'amortissement."

msgid "Defines how [member linear_damp] is applied."
msgstr "Définit comment [member linear_damp] est appliqué."

msgid ""
"The body's linear velocity in units per second. Can be used sporadically, but "
"[b]don't set this every frame[/b], because physics may run in another thread "
"and runs at a different granularity. Use [method _integrate_forces] as your "
"process loop for precise control of the body state."
msgstr ""
"La vitesse linéaire du corps en unités par seconde. Peut être utilisé "
"sporadiquement, mais [b]ne pas définir à chaque trame[/b], car la physique "
"peut s'exécuter dans un autre fil d'exécution et s'exécute à une granularité "
"différente. Utilisez [method _integrate_forces] comme boucle de traitement "
"pour un contrôle précis de l'état du corps."

msgid "The body's mass."
msgstr "La masse du corps."

msgid ""
"In this mode, the body's damping value is added to any value set in areas or "
"the default value."
msgstr ""
"Dans ce mode, la valeur d'amortissement du corps est ajoutée à toute valeur "
"définie dans les zones ou la valeur par défaut."

msgid ""
"In this mode, the body's damping value replaces any value set in areas or the "
"default value."
msgstr ""
"Dans ce mode, la valeur d'amortissement du corps remplace toute valeur "
"définie dans les zones ou la valeur par défaut."

msgid "No joint is applied to the PhysicsBone3D."
msgstr "Aucune liaison n'est appliquée au PhysicalBone3D."

msgid "A cone joint is applied to the PhysicsBone3D."
msgstr "Une liaison conique est appliquée au PhysicalBone3D."

msgid "A hinge joint is applied to the PhysicsBone3D."
msgstr "Une liaison avec charnière est appliquée au PhysicalBone3D."

msgid "A slider joint is applied to the PhysicsBone3D."
msgstr "Une liaison glissière est appliquée au PhysicalBone3D."

msgid "A 6 degrees of freedom joint is applied to the PhysicsBone3D."
msgstr "Une liaison à 6 degrés de liberté est appliquée au PhysicalBone3D."

msgid ""
"Node that can be the parent of [PhysicalBone3D] and can apply the simulation "
"results to [Skeleton3D]."
msgstr ""
"Nœud qui peut être le parent des [PhysicalBone3D] et peut appliquer les "
"résultats de simulation au [Skeleton3D]."

msgid ""
"Returns a boolean that indicates whether the [PhysicalBoneSimulator3D] is "
"running and simulating."
msgstr ""
"Renvoie un booléen indiquant si le [PhysicalBoneSimulator3D] est en cours de "
"fonctionnement et de simulation."

msgid ""
"Adds a collision exception to the physical bone.\n"
"Works just like the [RigidBody3D] node."
msgstr ""
"Ajoute une exception de collision à l'os physique.\n"
"Fonctionne comme le nœud [RigidBody3D]."

msgid ""
"Removes a collision exception to the physical bone.\n"
"Works just like the [RigidBody3D] node."
msgstr ""
"Supprime une exception de collision à l'os physique.\n"
"Fonctionne comme le nœud [RigidBody3D]."

msgid ""
"Tells the [PhysicalBone3D] nodes in the Skeleton to start simulating and "
"reacting to the physics world.\n"
"Optionally, a list of bone names can be passed-in, allowing only the passed-"
"in bones to be simulated."
msgstr ""
"Indique aux nœuds [PhysicalBone3D] du Skeleton de commencer à simuler et à "
"réagir au monde physique.\n"
"Optionnellement, une liste de noms d'os peut être transmise, permettant "
"seulement aux os transmis d'être simulés."

msgid "Tells the [PhysicalBone3D] nodes in the Skeleton to stop simulating."
msgstr "Indique aux nœuds [PhysicalBone3D] du Skeleton d'arrêter de simuler."

msgid ""
"A material that defines a sky for a [Sky] resource by a set of physical "
"properties."
msgstr ""
"Un matériau qui définit un ciel pour une ressource [Sky] avec un ensemble de "
"propriétés physiques."

msgid ""
"The [PhysicalSkyMaterial] uses the Preetham analytic daylight model to draw a "
"sky based on physical properties. This results in a substantially more "
"realistic sky than the [ProceduralSkyMaterial], but it is slightly slower and "
"less flexible.\n"
"The [PhysicalSkyMaterial] only supports one sun. The color, energy, and "
"direction of the sun are taken from the first [DirectionalLight3D] in the "
"scene tree."
msgstr ""
"Le [PhysicalSkyMaterial] utilise le modèle de lumière du jour analytique de "
"Preetham pour dessiner un ciel selon des propriétés physiques. Cela résulte "
"en un ciel nettement plus réaliste que le [ProceduralSkyMaterial], mais il "
"est légèrement plus lent et moins flexible.\n"
"Le [PhysicalSkyMaterial] ne supporte qu'un seul soleil. La couleur, l'énergie "
"et la direction du soleil sont prises de la première [DirectionalLight3D] "
"dans l’arborescence de scène."

msgid ""
"Modulates the [Color] on the bottom half of the sky to represent the ground."
msgstr ""
"Module la [Color] sur la moitié inférieure du ciel pour représenter le sol."

msgid ""
"Controls the strength of [url=https://en.wikipedia.org/wiki/"
"Mie_scattering]Mie scattering[/url] for the sky. Mie scattering results from "
"light colliding with larger particles (like water). On earth, Mie scattering "
"results in a whitish color around the sun and horizon."
msgstr ""
"Contrôle la force de la [url=https://fr.wikipedia.org/wiki/"
"Th%C3%A9orie_de_Mie]diffusion de Mie[/url] pour le ciel. La diffusion de Mie "
"résulte de la lumière entrant en collision avec des particules plus grandes "
"(comme l'eau). Sur la terre, la diffusion de Mie résulte en une couleur "
"blanchâtre autour du soleil et de l'horizon."

msgid ""
"Controls the [Color] of the [url=https://en.wikipedia.org/wiki/"
"Mie_scattering]Mie scattering[/url] effect. While not physically accurate, "
"this allows for the creation of alien-looking planets."
msgstr ""
"Contrôle la [Color] de la [url=https://fr.wikipedia.org/wiki/"
"Th%C3%A9orie_de_Mie]diffusion de Mie[/url]. Bien que non physiquement valide, "
"cela permet la création de planètes extraterrestres."

msgid ""
"Controls the direction of the [url=https://en.wikipedia.org/wiki/"
"Mie_scattering]Mie scattering[/url]. A value of [code]1[/code] means that "
"when light hits a particle it's passing through straight forward. A value of "
"[code]-1[/code] means that all light is scatter backwards."
msgstr ""
"Contrôle la direction de la [url=https://fr.wikipedia.org/wiki/"
"Th%C3%A9orie_de_Mie]diffusion de Mie[/url]. Une valeur de [code]1[/code] "
"signifie que lorsque la lumière frappe une particule, elle la traverse sans "
"redirection. Une valeur de [code]-1[/code] signifie que toute la lumière est "
"dispersée en arrière."

msgid ""
"[Texture2D] for the night sky. This is added to the sky, so if it is bright "
"enough, it may be visible during the day."
msgstr ""
"[Texture2D] pour le ciel nocturne. Ceci est ajouté au ciel, donc s’il est "
"assez lumineux, il peut être visible pendant la journée."

msgid ""
"Controls the strength of the [url=https://en.wikipedia.org/wiki/"
"Rayleigh_scattering]Rayleigh scattering[/url]. Rayleigh scattering results "
"from light colliding with small particles. It is responsible for the blue "
"color of the sky."
msgstr ""
"Contrôle la force de la [url=https://fr.wikipedia.org/wiki/"
"Diffusion_Rayleigh]diffusion Rayleigh[/url]. La diffusion Rayleigh résulte en "
"la collision de la lumière avec de petites particules. Il est responsable de "
"la couleur bleue du ciel."

msgid ""
"Controls the [Color] of the [url=https://en.wikipedia.org/wiki/"
"Rayleigh_scattering]Rayleigh scattering[/url]. While not physically accurate, "
"this allows for the creation of alien-looking planets. For example, setting "
"this to a red [Color] results in a Mars-looking atmosphere with a "
"corresponding blue sunset."
msgstr ""
"Contrôle la [Color] de la [url=https://en.wikipedia.org/wiki/"
"Rayleigh_scattering]diffusion Rayleigh[/url]. Bien que non physiquement "
"valide, cela permet la création de planètes extraterrestres. Par exemple, "
"définir ceci à une [Color] rouge se traduit par une atmosphère ressemblant à "
"Mars avec un coucher de soleil bleu correspondant."

msgid ""
"Sets the size of the sun disk. Default value is based on Sol's perceived size "
"from Earth."
msgstr ""
"Définit la taille du disque du soleil. La valeur par défaut est basée sur la "
"taille perçue du Soleil depuis la Terre."

msgid ""
"Sets the thickness of the atmosphere. High turbidity creates a foggy-looking "
"atmosphere, while a low turbidity results in a clearer atmosphere."
msgstr ""
"Définit l'épaisseur de l'atmosphère. Une turbidité élevée crée une atmosphère "
"brumeuse, tandis qu'une turbidité basse résulte en une atmosphère plus claire."

msgid ""
"If [code]true[/code], enables debanding. Debanding adds a small amount of "
"noise which helps reduce banding that appears from the smooth changes in "
"color in the sky."
msgstr ""
"Si [code]true[/code], active le debanding. Le debanding ajoute une petite "
"quantité de bruit qui aide à réduire les bandes qui apparaissent suite aux "
"changements lisses de couleur dans le ciel."

msgid "Abstract base class for 2D game objects affected by physics."
msgstr ""
"Classe de base abstraite pour les objets du jeu 2D affectés par la physique."

msgid ""
"[PhysicsBody2D] is an abstract base class for 2D game objects affected by "
"physics. All 2D physics bodies inherit from it."
msgstr ""
"[PhysicsBody2D] est une classe de base abstraite pour les objets du jeu 2D "
"affectés par la physique. Tous les corps physiques 2D héritent de lui."

msgid "Adds a body to the list of bodies that this body can't collide with."
msgstr ""
"Ajoute un corps à la liste des corps avec lesquels ce corps ne peut entrer en "
"collision."

msgid ""
"Returns an array of nodes that were added as collision exceptions for this "
"body."
msgstr ""
"Renvoie un tableau de nœuds qui ont été ajoutés comme exceptions de collision "
"pour ce corps."

msgid ""
"Returns the gravity vector computed from all sources that can affect the "
"body, including all gravity overrides from [Area2D] nodes and the global "
"world gravity."
msgstr ""
"Renvoie le vecteur de gravité calculé à partir de toutes les sources qui "
"peuvent affecter le corps, y compris toutes les redéfinitions de gravité des "
"nœuds [Area2D] et la gravité du monde globale."

msgid ""
"Moves the body along the vector [param motion]. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"Returns a [KinematicCollision2D], which contains information about the "
"collision when stopped, or when touching another body along the motion.\n"
"If [param test_only] is [code]true[/code], the body does not move but the "
"would-be collision information is given.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody2D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is used e.g. by "
"[CharacterBody2D] for improving floor detection during floor snapping."
msgstr ""
"Déplace le corps le long du vecteur de mouvement [param motion]. Afin d'être "
"indépendant du taux de rafraichissement dans [method Node._physics_process] "
"ou [method Node._process], [param motion] doit être calculé en utilisant "
"[code]delta[/code].\n"
"Renvoie un [KinematicCollision2D], qui contient des informations sur la "
"collision lorsque le corps est arrêté, ou lorsqu'il touche un autre corps "
"durant le mouvement.\n"
"Si [param test_only] vaut [code]true[/code], le corps ne se déplace pas, mais "
"les informations de collision potentielles sont données.\n"
"[param safe_margin] est la marge supplémentaire utilisée pour le redressement "
"de collision (voir [member CharacterBody2D.safe_margin] pour plus de "
"détails).\n"
"Si [param recovery_as_collision] vaut [code]true[/code], toute dépénétration "
"de la phase de redressement est également signalée comme une collision, c'est "
"utilisé par ex. par [CharacterBody2D] pour améliorer la détection du sol lors "
"de l’aimantation au sol."

msgid ""
"Removes a body from the list of bodies that this body can't collide with."
msgstr ""
"Retire un corps de la liste des corps avec lesquels ce corps ne peut entrer "
"en collision."

msgid ""
"Checks for collisions without moving the body. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"Virtually sets the node's position, scale and rotation to that of the given "
"[Transform2D], then tries to move the body along the vector [param motion]. "
"Returns [code]true[/code] if a collision would stop the body from moving "
"along the whole path.\n"
"[param collision] is an optional object of type [KinematicCollision2D], which "
"contains additional information about the collision when stopped, or when "
"touching another body along the motion.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody2D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is useful for "
"checking whether the body would [i]touch[/i] any other bodies."
msgstr ""
"Vérifie les collisions sans déplacer le corps. Afin d'être indépendant du "
"taux de rafraichissement dans [method Node._physics_process] ou [method "
"Node._process], [param motion] devrait être calculé en utilisant [code]delta[/"
"code].\n"
"Définit virtuellement la position, l'échelle et la rotation du nœud à celle "
"de la [Transform2D] donnée, puis tente de déplacer le corps le long du "
"vecteur [param motion]. Renvoie [code]true[/code] si une collision "
"empêcherait le corps de se déplacer sur tout le chemin.\n"
"[param collision] est un objet optionnel de type [KinematicCollision2D], qui "
"contient des informations supplémentaires sur la collision lorsqu'il est "
"arrêté, ou lorsqu'il touche un autre corps le long du mouvement.\n"
"[param safe_margin] est la marge supplémentaire utilisée pour le redressement "
"de collision (voir [member CharacterBody2D.safe_margin] pour plus de "
"détails).\n"
"Si [param recovery_as_collision] est [code]true[/code], toute dépénétration "
"lors de la phase de redressement est également signalée comme une collision, "
"cela est utile pour vérifier si le corps [i]toucherait[/i] n'importe quel "
"autre corps."

msgid "Abstract base class for 3D game objects affected by physics."
msgstr ""
"Classe de base abstraite pour les objets du jeu 3D affectés par la physique."

msgid ""
"[PhysicsBody3D] is an abstract base class for 3D game objects affected by "
"physics. All 3D physics bodies inherit from it.\n"
"[b]Warning:[/b] With a non-uniform scale, this node will likely not behave as "
"expected. It is advised to keep its scale the same on all axes and adjust its "
"collision shape(s) instead."
msgstr ""
"[PhysicsBody3D] est une classe de base abstraite pour les objets de jeu 3D "
"affectés par la physique. Tous les corps physiques 3D en héritent.\n"
"[b]Attention :[/b] Avec une échelle non uniforme, ce nœud ne se comportera "
"probablement pas comme prévu. Il est conseillé de garder la même échelle sur "
"tous les axes et d'ajuster sa forme de collision à la place."

msgid ""
"Returns [code]true[/code] if the specified linear or rotational [param axis] "
"is locked."
msgstr ""
"Renvoie [code]true[/code] si l'axe linéaire ou de rotation spécifié ([param "
"axis]) est verrouillé."

msgid ""
"Returns the gravity vector computed from all sources that can affect the "
"body, including all gravity overrides from [Area3D] nodes and the global "
"world gravity."
msgstr ""
"Renvoie le vecteur de gravité calculé à partir de toutes les sources qui "
"peuvent affecter le corps, y compris toutes les redéfinitions de gravité des "
"nœuds [Area3D] et la gravité du monde globale."

msgid ""
"Moves the body along the vector [param motion]. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"The body will stop if it collides. Returns a [KinematicCollision3D], which "
"contains information about the collision when stopped, or when touching "
"another body along the motion.\n"
"If [param test_only] is [code]true[/code], the body does not move but the "
"would-be collision information is given.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody3D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is used e.g. by "
"[CharacterBody3D] for improving floor detection during floor snapping.\n"
"[param max_collisions] allows to retrieve more than one collision result."
msgstr ""
"Déplace le corps le long du vecteur de mouvement [param motion]. Afin d'être "
"indépendant du taux de rafraichissement dans [method Node._physics_process] "
"ou [method Node._process], [param motion] doit être calculé en utilisant "
"[code]delta[/code].\n"
"Le corps s'arrêtera s'il entre en collision. Renvoie un "
"[KinematicCollision3D], qui contient des informations sur la collision "
"lorsque le corps est arrêté, ou lorsqu'il touche un autre corps durant le "
"mouvement.\n"
"Si [param test_only] vaut [code]true[/code], le corps ne se déplace pas, mais "
"les informations de collision potentielles sont données.\n"
"[param safe_margin] est la marge supplémentaire utilisée pour le redressement "
"de collision (voir [member CharacterBody3D.safe_margin] pour plus de "
"détails).\n"
"Si [param recovery_as_collision] vaut [code]true[/code], toute dépénétration "
"de la phase de redressement est également signalée comme une collision, c'est "
"utilisé par ex. par [CharacterBody3D] pour améliorer la détection du sol lors "
"de l’aimantation au sol.\n"
"[param max_collisions] permet de récupérer plus d'un résultat de collision."

msgid ""
"Locks or unlocks the specified linear or rotational [param axis] depending on "
"the value of [param lock]."
msgstr ""
"Verrouille ou déverrouille l'axe linéaire ou de rotation [param axis] "
"spécifié en fonction de la valeur de [param lock]."

msgid ""
"Checks for collisions without moving the body. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"Virtually sets the node's position, scale and rotation to that of the given "
"[Transform3D], then tries to move the body along the vector [param motion]. "
"Returns [code]true[/code] if a collision would stop the body from moving "
"along the whole path.\n"
"[param collision] is an optional object of type [KinematicCollision3D], which "
"contains additional information about the collision when stopped, or when "
"touching another body along the motion.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody3D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is useful for "
"checking whether the body would [i]touch[/i] any other bodies.\n"
"[param max_collisions] allows to retrieve more than one collision result."
msgstr ""
"Vérifie les collisions sans déplacer le corps. Afin d'être indépendant du "
"taux de rafraichissement dans [method Node._physics_process] ou [method "
"Node._process], [param motion] devrait être calculé en utilisant [code]delta[/"
"code].\n"
"Définit virtuellement la position, l'échelle et la rotation du nœud à celle "
"de la [Transform3D] donnée, puis tente de déplacer le corps le long du "
"vecteur [param motion]. Renvoie [code]true[/code] si une collision "
"empêcherait le corps de se déplacer sur tout le chemin.\n"
"[param collision] est un objet optionnel de type [KinematicCollision3D], qui "
"contient des informations supplémentaires sur la collision lorsqu'il est "
"arrêté, ou lorsqu'il touche un autre corps le long du mouvement.\n"
"[param safe_margin] est la marge supplémentaire utilisée pour le redressement "
"de collision (voir [member CharacterBody3D.safe_margin] pour plus de "
"détails).\n"
"Si [param recovery_as_collision] est [code]true[/code], toute dépénétration "
"lors de la phase de redressement est également signalée comme une collision, "
"cela est utile pour vérifier si le corps [i]toucherait[/i] n'importe quel "
"autre corps.\n"
"[param max_collisions] permet de récupérer plus d'un résultat de collision."

msgid "Lock the body's rotation in the X axis."
msgstr "Verrouillez la rotation du corps dans l’axe X."

msgid "Lock the body's rotation in the Y axis."
msgstr "Verrouillez la rotation du corps dans l’axe Y."

msgid "Lock the body's rotation in the Z axis."
msgstr "Verrouillez la rotation du corps dans l’axe Z."

msgid "Lock the body's linear movement in the X axis."
msgstr "Verrouille le mouvement linéaire du corps sur l'axe X."

msgid "Lock the body's linear movement in the Y axis."
msgstr "Verrouille le mouvement linéaire du corps sur l'axe Y."

msgid "Lock the body's linear movement in the Z axis."
msgstr "Verrouille le mouvement linéaire du corps sur l'axe Z."

msgid "Provides direct access to a physics body in the [PhysicsServer2D]."
msgstr "Fournit un accès direct à un corps physique dans le [PhysicsServer2D]."

msgid ""
"Provides direct access to a physics body in the [PhysicsServer2D], allowing "
"safe changes to physics properties. This object is passed via the direct "
"state callback of [RigidBody2D], and is intended for changing the direct "
"state of that body. See [method RigidBody2D._integrate_forces]."
msgstr ""
"Fournit un accès direct à un corps physique dans le [PhysicsServer2D], "
"permettant des changements sécurisés aux propriétés physiques. Cet objet est "
"passé par le callback d'état direct de [RigidBody2D], et est pensé pour "
"changer l'état direct de ce corps. Voir [method "
"RigidBody2D._integrate_forces]."

msgid "Ray-casting"
msgstr "Lancer de rayons"

msgid ""
"Adds a constant directional force without affecting rotation that keeps being "
"applied over time until cleared with [code]constant_force = Vector2(0, 0)[/"
"code].\n"
"This is equivalent to using [method add_constant_force] at the body's center "
"of mass."
msgstr ""
"Ajoute une force directionnelle constante n'affectant pas la rotation, qui "
"continue d'être appliquée au cours du temps jusqu'à ce qu'elle soit enlevée "
"avec [code]constant_force = Vector2(0, 0)[/code].\n"
"Ceci est équivalent à utiliser [method add_constant_force] au centre de masse "
"du corps."

msgid ""
"Adds a constant positioned force to the body that keeps being applied over "
"time until cleared with [code]constant_force = Vector2(0, 0)[/code].\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Ajoute une force positionnée constante au corps qui continue d'être appliquée "
"au cours du temps jusqu'à ce qu'elle soit enlevée avec [code]constant_force = "
"Vector2(0, 0)[/code].\n"
"[param position] est le décalage depuis l'origine du corps dans les "
"coordonnées globales."

msgid ""
"Adds a constant rotational force without affecting position that keeps being "
"applied over time until cleared with [code]constant_torque = 0[/code]."
msgstr ""
"Ajoute une force de rotation constante n'affectant pas la positon, qui "
"continue d'être appliquée au cours du temps jusqu'à ce qu'elle soit enlevée "
"avec [code]constant_torque = 0[/code]."

msgid ""
"Applies a directional force without affecting rotation. A force is time "
"dependent and meant to be applied every physics update.\n"
"This is equivalent to using [method apply_force] at the body's center of mass."
msgstr ""
"Applique une force directionnelle n'affectant pas la rotation. Une force est "
"dépendante du temps et destinée à être appliquée chaque mise à jour "
"physique.\n"
"Ceci est équivalent à utiliser [method apply_force] au centre de masse du "
"corps."

msgid ""
"Applies a directional impulse without affecting rotation.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"This is equivalent to using [method apply_impulse] at the body's center of "
"mass."
msgstr ""
"Applique une impulsion directionnelle n'affectant pas la rotation.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_force\" sinon).\n"
"Ceci est équivalent à utiliser [method apply_impulse] au centre de masse du "
"corps."

msgid ""
"Applies a positioned force to the body. A force is time dependent and meant "
"to be applied every physics update.\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Applique une force positionnée au corps. Une force est dépendante du temps et "
"destinée à être appliquée à chaque mise à jour physique.\n"
"[param position] est le décalage depuis l'origine du corps dans les "
"coordonnées globales."

msgid ""
"Applies a positioned impulse to the body.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Applique une impulsion positionnée au corps.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_force\" sinon).\n"
"[param position] est le décalage depuis l'origine du corps dans les "
"coordonnées globales."

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape2D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Applique une force de rotation sans affecter la position. Une force est "
"dépendante du temps et destinée à être appliquée à chaque mise à jour "
"physique.\n"
"[b]Note :[/b] L'inverse de l'inertie ([member inverse_inertia]) est "
"nécessaire pour que cela fonctionne. Pour avoir de l'inverse de l'inertie "
"([member inverse_inertia]), un [CollisionShape2D] actif doit être un enfant "
"du nœud, ou vous pouvez définir manuellement [member inverse_inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape2D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Applique une impulsion de rotation au corps sans affecter la position.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_force\" sinon).\n"
"[b]Note :[/b] L'inverse de l'inertie ([member inverse_inertia]) est "
"nécessaire pour que cela fonctionne. Pour avoir de l'inverse de l'inertie "
"([member inverse_inertia]), un [CollisionShape2D] actif doit être un enfant "
"du nœud, ou vous pouvez définir manuellement [member inverse_inertia]."

msgid ""
"Returns the body's total constant positional forces applied during each "
"physics update.\n"
"See [method add_constant_force] and [method add_constant_central_force]."
msgstr ""
"Renvoie les forces positionnelles constantes totales du corps appliquées lors "
"de chaque mise à jour physique.\n"
"Voir [method add_constant_force] et [method add_constant_central_force]."

msgid ""
"Returns the body's total constant rotational forces applied during each "
"physics update.\n"
"See [method add_constant_torque]."
msgstr ""
"Renvoie les forces de rotation constantes totales du corps appliquées lors de "
"chaque mise à jour physique.\n"
"Voir [method add_constant_torque]."

msgid "Returns the collider's [RID]."
msgstr "Renvoie le [RID] du collisionneur."

msgid "Returns the collider's object id."
msgstr "Renvoie l’id de l’objet du collisionneur."

msgid ""
"Returns the collider object. This depends on how it was created (will return "
"a scene node if such was used to create it)."
msgstr ""
"Renvoie l'objet collider. Cela dépend de la façon dont il a été créé (va "
"renvoyer un nœud de scène si c'est ce qui a été utilisé pour le créer)."

msgid ""
"Returns the position of the contact point on the collider in the global "
"coordinate system."
msgstr ""
"Renvoie la position du point de contact sur le collideur dans le système de "
"coordonnées global."

msgid "Returns the collider's shape index."
msgstr "Renvoie l'index de forme du collisionneur."

msgid "Returns the velocity vector at the collider's contact point."
msgstr "Renvoie le vecteur de vélocité au point de contact du collider."

msgid ""
"Returns the number of contacts this body has with other bodies.\n"
"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
"monitor contacts. See [member RigidBody2D.contact_monitor]."
msgstr ""
"Renvoie le nombre de contacts que ce corps a avec d'autres corps.\n"
"[b]Note :[/b] Par défaut, cela renvoie 0 sauf si les corps sont configurés "
"pour surveiller les contacts. Voir [member RigidBody2D.contact_monitor]."

msgid "Returns the impulse created by the contact."
msgstr "Renvoie l'impulsion créée par le contact."

msgid "Returns the local normal at the contact point."
msgstr "Renvoie la normale locale au point de contact."

msgid ""
"Returns the position of the contact point on the body in the global "
"coordinate system."
msgstr ""
"Renvoie la position du point de contact sur le corps dans le système de "
"coordonnées global."

msgid "Returns the local shape index of the collision."
msgstr "Renvoie l'index de la forme locale de la collision."

msgid "Returns the velocity vector at the body's contact point."
msgstr "Renvoie le vecteur de vélocité au point de contact du corps."

msgid "Returns the current state of the space, useful for queries."
msgstr "Renvoie l'état actuel de l'espace, utile pour les requêtes."

msgid ""
"Returns the body's velocity at the given relative position, including both "
"translation and rotation."
msgstr ""
"Renvoie la vélocité du corps à la position relative donnée, y compris la "
"translation et la rotation."

msgid ""
"Updates the body's linear and angular velocity by applying gravity and "
"damping for the equivalent of one physics tick."
msgstr ""
"Met à jour la vitesse linéaire et angulaire du corps en appliquant la gravité "
"et l'amortissement pour l'équivalent d'un tic de calcul de la physique."

msgid ""
"Sets the body's total constant positional forces applied during each physics "
"update.\n"
"See [method add_constant_force] and [method add_constant_central_force]."
msgstr ""
"Définit les forces positionnelles constantes totales du corps appliquées lors "
"de chaque mise à jour physique.\n"
"Voir [method add_constant_force] et [method add_constant_central_force]."

msgid ""
"Sets the body's total constant rotational forces applied during each physics "
"update.\n"
"See [method add_constant_torque]."
msgstr ""
"Définit les forces de rotation constantes totales du corps appliquées lors de "
"chaque mise à jour physique.\n"
"Voir [method add_constant_torque]."

msgid "The body's rotational velocity in [i]radians[/i] per second."
msgstr "La vitesse de rotation du corps en [i]radians[/i] par seconde."

msgid ""
"The body's center of mass position relative to the body's center in the "
"global coordinate system."
msgstr ""
"Le centre de masse du corps relatif au centre du corps dans le système de "
"coordonnées global."

msgid ""
"The body's center of mass position in the body's local coordinate system."
msgstr ""
"La position du centre de masse du corps dans le système de coordonnées local "
"du corps."

msgid "The body's collision layer."
msgstr "La couche de collision du corps."

msgid "The body's collision mask."
msgstr "Le masque de collision du corps."

msgid "The inverse of the inertia of the body."
msgstr "L'inverse de l'inertie du corps."

msgid "The inverse of the mass of the body."
msgstr "L'inverse de la masse du corps."

msgid "The body's linear velocity in pixels per second."
msgstr "La vitesse linéaire d'un corps en pixels par seconde."

msgid "If [code]true[/code], this body is currently sleeping (not active)."
msgstr "Si [code]true[/code], le corps est actuellement au repos (inactif)."

msgid "The timestep (delta) used for the simulation."
msgstr "L'étape de temps (delta) utilisé pour la simulation."

msgid ""
"The rate at which the body stops rotating, if there are not any other forces "
"moving it."
msgstr ""
"Le vitesse à laquelle le corps cesse de tourner, s'il n'y a pas d'autres "
"forces qui le déplacent."

msgid "The total gravity vector being currently applied to this body."
msgstr "Le vecteur total de gravité actuellement appliqué à ce corps."

msgid ""
"The rate at which the body stops moving, if there are not any other forces "
"moving it."
msgstr ""
"Le vitesse à laquelle le corps cesse de se déplacer, s'il n'y a pas d'autres "
"forces qui le déplacent."

msgid "The body's transformation matrix."
msgstr "La matrice de transformation du corps."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectBodyState2D] implementations."
msgstr ""
"Fournit des méthodes virtuelles qui peuvent être redéfinies pour créer des "
"implémentations personnalisées de [PhysicsDirectBodyState2D]."

msgid ""
"This class extends [PhysicsDirectBodyState2D] by providing additional virtual "
"methods that can be overridden. When these methods are overridden, they will "
"be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectBodyState2D]."
msgstr ""
"Cette classe étend [PhysicsDirectBodyState2D] en fournissant des méthodes "
"virtuelles supplémentaires qui peuvent être redéfinies. Lorsque ces méthodes "
"sont redéfinies, elles seront appelées au lieu des méthodes internes du "
"serveur de physique.\n"
"Destinée à être utilisée avec GDExtension pour créer des implémentations "
"personnalisées de [PhysicsDirectBodyState2D]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.add_constant_central_force]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.add_constant_central_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.add_constant_force]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.add_constant_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.add_constant_torque]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.add_constant_torque]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.apply_central_force]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.apply_central_force]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.apply_central_impulse]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.apply_central_impulse]."

msgid "Overridable version of [method PhysicsDirectBodyState2D.apply_force]."
msgstr ""
"Version redéfinissable de [method PhysicsDirectBodyState2D.apply_force]."

msgid "Overridable version of [method PhysicsDirectBodyState2D.apply_impulse]."
msgstr ""
"Version redéfinissable de [method PhysicsDirectBodyState2D.apply_impulse]."

msgid "Overridable version of [method PhysicsDirectBodyState2D.apply_torque]."
msgstr ""
"Version redéfinissable de [method PhysicsDirectBodyState2D.apply_torque]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.apply_torque_impulse]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.apply_torque_impulse]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.angular_velocity] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.angular_velocity] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.center_of_mass] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.center_of_mass] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.center_of_mass_local] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.center_of_mass_local] et son getter respectif."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_constant_force]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_constant_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_constant_torque]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_constant_torque]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_contact_collider]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_collider]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_collider_id]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_object]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_collider_object]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_position]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_collider_position]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_shape]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_collider_shape]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_velocity_at_position]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_collider_velocity_at_position]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_contact_count]."
msgstr ""
"Version redéfinissable de [method PhysicsDirectBodyState2D.get_contact_count]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_contact_impulse]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_impulse]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_normal]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_local_normal]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_position]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_local_position]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_shape]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_local_shape]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_velocity_at_position]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_contact_local_velocity_at_position]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.inverse_inertia] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.inverse_inertia] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.inverse_mass] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.inverse_mass] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.linear_velocity] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.linear_velocity] et son getter respectif."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_space_state]."
msgstr ""
"Version redéfinissable de [method PhysicsDirectBodyState2D.get_space_state]."

msgid ""
"Implement to override the behavior of [member PhysicsDirectBodyState2D.step] "
"and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.step] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.total_angular_damp] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.total_angular_damp] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.total_gravity] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.total_gravity] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.total_linear_damp] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.total_linear_damp] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.transform] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.transform] et son getter respectif."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_velocity_at_local_position]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.get_velocity_at_local_position]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.integrate_forces]."
msgstr ""
"Version redéfinissable de [method PhysicsDirectBodyState2D.integrate_forces]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.sleeping] and its respective getter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.sleeping] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.angular_velocity] and its respective setter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.angular_velocity] et son getter respectif."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.set_constant_force]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.set_constant_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.set_constant_torque]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsDirectBodyState2D.set_constant_torque]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.linear_velocity] and its respective setter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.linear_velocity] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.sleeping] and its respective setter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.sleeping] et son getter respectif."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.transform] and its respective setter."
msgstr ""
"Implémentez pour redéfinir le comportement de [member "
"PhysicsDirectBodyState2D.transform] et son getter respectif."

msgid "Provides direct access to a physics body in the [PhysicsServer3D]."
msgstr "Fournit un accès direct à un corps physique dans le [PhysicsServer3D]."

msgid ""
"Provides direct access to a physics body in the [PhysicsServer3D], allowing "
"safe changes to physics properties. This object is passed via the direct "
"state callback of [RigidBody3D], and is intended for changing the direct "
"state of that body. See [method RigidBody3D._integrate_forces]."
msgstr ""
"Fournit un accès direct à un corps physique dans le [PhysicsServer3D], "
"permettant des changements sécurisés aux propriétés physiques. Cet objet est "
"passé par le callback d'état direct de [RigidBody3D], et est pensé pour "
"changer l'état direct de ce corps. Voir [method "
"RigidBody3D._integrate_forces]."

msgid ""
"Adds a constant directional force without affecting rotation that keeps being "
"applied over time until cleared with [code]constant_force = Vector3(0, 0, 0)[/"
"code].\n"
"This is equivalent to using [method add_constant_force] at the body's center "
"of mass."
msgstr ""
"Ajoute une force directionnelle constante n'affectant pas la rotation, qui "
"continue d'être appliquée au cours du temps jusqu'à ce qu'elle soit enlevée "
"avec [code]constant_force = Vector3(0, 0, 0)[/code].\n"
"Ceci est équivalent à utiliser [method add_constant_force] au centre de masse "
"du corps."

msgid ""
"Adds a constant positioned force to the body that keeps being applied over "
"time until cleared with [code]constant_force = Vector3(0, 0, 0)[/code].\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Ajoute une force positionnée constante au corps qui continue d'être appliquée "
"au cours du temps jusqu'à ce qu'elle soit nettoyée avec [code]constant_force "
"= Vector3(0, 0, 0)[/code].\n"
"[param position] est le décalage depuis l'origine du corps dans les "
"coordonnées globales."

msgid ""
"Adds a constant rotational force without affecting position that keeps being "
"applied over time until cleared with [code]constant_torque = Vector3(0, 0, 0)"
"[/code]."
msgstr ""
"Ajoute une force de rotation constante n'affectant pas la position, qui "
"continue d'être appliquée au cours du temps jusqu'à ce qu'elle soit enlevée "
"avec [code]constant_torque = Vector3(0, 0, 0)[/code]."

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape3D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Applique une force de rotation sans affecter la position. Une force est "
"dépendante du temps et destinée à être appliquée à chaque mise à jour "
"physique.\n"
"[b]Note :[/b] L'inverse de l'inertie ([member inverse_inertia]) est "
"nécessaire pour que cela fonctionne. Pour avoir de l'inverse de l'inertie "
"([member inverse_inertia]), un [CollisionShape3D] actif doit être un enfant "
"du nœud, ou vous pouvez définir manuellement [member inverse_inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape3D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Applique une impulsion de rotation au corps sans affecter la position.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_force\" sinon).\n"
"[b]Note :[/b] L'inverse de l'inertie ([member inverse_inertia]) est "
"nécessaire pour que cela fonctionne. Pour avoir de l'inverse de l'inertie "
"([member inverse_inertia]), un [CollisionShape3D] actif doit être un enfant "
"du nœud, ou vous pouvez définir manuellement [member inverse_inertia]."

msgid "Returns the collider object."
msgstr "Renvoie l'objet collisionneur."

msgid "Returns the linear velocity vector at the collider's contact point."
msgstr ""
"Renvoie le vecteur de vélocité linéaire au point de contact à la collision."

msgid ""
"Returns the number of contacts this body has with other bodies.\n"
"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
"monitor contacts. See [member RigidBody3D.contact_monitor]."
msgstr ""
"Renvoie le nombre de contacts que ce corps a avec d'autres corps.\n"
"[b]Note :[/b] Par défaut, cela renvoie 0 sauf si les corps sont configurés "
"pour surveiller les contacts. Voir [member RigidBody3D.contact_monitor]."

msgid "Impulse created by the contact."
msgstr "L'impulsion créée par le contact."

msgid "Returns the linear velocity vector at the body's contact point."
msgstr "Renvoie le vecteur de vélocité linéaire au point de contact du corps."

msgid "The inverse of the inertia tensor of the body."
msgstr "L'inverse du tenseur d'inertie du corps."

msgid "The body's linear velocity in units per second."
msgstr "La vitesse linéaire du corps en unités par secondes."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectBodyState3D] implementations."
msgstr ""
"Fournit des méthodes virtuelles qui peuvent être redéfinies pour créer des "
"implémentations personnalisées de [PhysicsDirectBodyState3D]."

msgid ""
"This class extends [PhysicsDirectBodyState3D] by providing additional virtual "
"methods that can be overridden. When these methods are overridden, they will "
"be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectBodyState3D]."
msgstr ""
"Cette classe étend [PhysicsDirectBodyState3D] en fournissant des méthodes "
"virtuelles supplémentaires qui peuvent être redéfinies. Lorsque ces méthodes "
"sont redéfinies, elles seront appelées au lieu des méthodes internes du "
"serveur de physique.\n"
"Destiné à être utilisée avec GDExtension pour créer des implémentations "
"personnalisées de [PhysicsDirectBodyState3D]."

msgid "Provides direct access to a physics space in the [PhysicsServer2D]."
msgstr "Fournit un accès direct à un espace physique dans le [PhysicsServer2D]."

msgid ""
"Provides direct access to a physics space in the [PhysicsServer2D]. It's used "
"mainly to do queries against objects and areas residing in a given space.\n"
"[b]Note:[/b] This class is not meant to be instantiated directly. Use [member "
"World2D.direct_space_state] to get the world's physics 2D space state."
msgstr ""
"Fournit un accès direct à un espace physique dans le [PhysicsServer2D]. Il "
"est utilisé principalement pour faire des requêtes contre des objets et des "
"zones résidant dans un espace donné.\n"
"[b]Note :[/b] Cette classe n'est pas destinée à être instanciée. Utilisez "
"[member World2D.direct_space_state] pour obtenir l'état de l'espace 2D "
"physique du monde."

msgid ""
"Checks how far a [Shape2D] can move without colliding. All the parameters for "
"the query, including the shape and the motion, are supplied through a "
"[PhysicsShapeQueryParameters2D] object.\n"
"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
"the motion. The safe proportion is the maximum fraction of the motion that "
"can be made without a collision. The unsafe proportion is the minimum "
"fraction of the distance that must be moved for a collision. If no collision "
"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
"[b]Note:[/b] Any [Shape2D]s that the shape is already colliding with e.g. "
"inside of, will be ignored. Use [method collide_shape] to determine the "
"[Shape2D]s that the shape is already colliding with."
msgstr ""
"Vérifie jusqu'où une [Shape2D] peut se déplacer sans entrer en collision. "
"Tous les paramètres de la requête, y compris la forme et le mouvement, sont "
"fournis par un objet [PhysicsShapeQueryParameters2D].\n"
"Renvoie un tableau avec les proportions sûres et dangereuses (entre 0 et 1) "
"du mouvement. La proportion sûre est la fraction maximale du mouvement qui "
"peut être effectué sans collision. La proportion dangereuse est la fraction "
"minimale de la distance dont l'objet doit se déplacer pour entrer en "
"collision. Si aucune collision n'est détectée, un résultat de [code][1.0, 1.0]"
"[/code] sera renvoyé.\n"
"[b]Note :[/b] Toute [Shape2D] avec laquelle la forme est déjà en collision, "
"par exemple à l'intérieur, sera ignorée. Utilisez [method collide_shape] pour "
"déterminer les [Shape2D]s avec lesquelles la forme est déjà en collision."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters2D] object, against the space. The resulting "
"array contains a list of points where the shape intersects another. Like with "
"[method intersect_shape], the number of returned results can be limited to "
"save processing time.\n"
"Returned points are a list of pairs of contact points. For each pair the "
"first one is in the shape passed in [PhysicsShapeQueryParameters2D] object, "
"second one is in the collided shape from the physics space."
msgstr ""
"Vérifie les intersections d'une forme, donnée à travers un objet "
"[PhysicsShapeQueryParameters2D], contre l'espace. Le tableau résultant "
"contient une liste de points où la forme en intersecte une autre. Comme avec "
"[method intersect_shape], le nombre de résultats renvoyés peut être limité "
"pour gagner du temps de traitement.\n"
"Les points renvoyés sont une liste de paires de points de contact. Pour "
"chaque paire, la premier est dans la forme passée dans l'objet "
"[PhysicsShapeQueryParameters2D], le deuxième est dans la forme en collision "
"de l'espace physique."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters2D] object, against the space. If it collides "
"with more than one shape, the nearest one is selected. The returned object is "
"a dictionary containing the following fields:\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]linear_velocity[/code]: The colliding object's velocity [Vector2]. If "
"the object is an [Area2D], the result is [code](0, 0)[/code].\n"
"[code]normal[/code]: The collision normal of the query shape at the "
"intersection point, pointing away from the intersecting object.\n"
"[code]point[/code]: The intersection point.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the shape did not intersect anything, then an empty dictionary is returned "
"instead."
msgstr ""
"Vérifie les intersections d'une forme, donnée avec un objet "
"[PhysicsShapeQueryParameters2D], contre l'espace. Si elle entre en collision "
"avec plus d'une forme, la plus proche est sélectionnée. L'objet renvoyé est "
"un dictionnaire contenant les champs suivants :\n"
"[code]collider_id[/code] : L'identifiant de l'objet en collision.\n"
"[code]linear_velocity[/code] : La vitesse de l'objet en collision en tant que "
"[Vector2]. Si l'objet est une [Area2D], le résultat est [code](0, 0)[/code].\n"
"[code]normal[/code] : La normale de collision de la forme de la requête au "
"point d'intersection, pointant hors de l'objet en intersection.\n"
"[code]point[/code] : Le point d'intersection.\n"
"[code]rid[/code] : Le [RID] de l’objet en intersection.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Si la forme n'intersecte rien, alors un dictionnaire vide est renvoyé à la "
"place."

msgid ""
"Checks whether a point is inside any solid shape. Position and other "
"parameters are defined through [PhysicsPointQueryParameters2D]. The shapes "
"the point is inside of are returned in an array containing dictionaries with "
"the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time.\n"
"[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in "
"[code]Segments[/code] build mode are not solid shapes. Therefore, they will "
"not be detected."
msgstr ""
"Vérifie si un point est à l'intérieur d'au moins une forme solide. La "
"position et les autres paramètres sont définis par "
"[PhysicsPointQueryParameters2D]. Les formes dans lesquelles se trouve le "
"point sont renvoyées dans un tableau contenant des dictionnaires avec les "
"champs suivants :\n"
"[code]collider[/code] : L'objet en collision.\n"
"[code]collider_id[/code] : L'ID de l'objet en collision.\n"
"[code]rid[/code] : Le [RID] de l'objet en intersection.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Le nombre d'intersections peut être limité avec le paramètre [param "
"max_results], pour réduire le temps de traitement.\n"
"[b]Note :[/b] Les [ConcavePolygonShape2D]s et les [CollisionPolygon2D]s dans "
"le mode de construction [code]Segments[/code] ne sont pas des formes solides. "
"Par conséquent, elles ne seront pas détectées."

msgid ""
"Intersects a ray in a given space. Ray position and other parameters are "
"defined through [PhysicsRayQueryParameters2D]. The returned object is a "
"dictionary with the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]normal[/code]: The object's surface normal at the intersection point, "
"or [code]Vector2(0, 0)[/code] if the ray starts inside the shape and [member "
"PhysicsRayQueryParameters2D.hit_from_inside] is [code]true[/code].\n"
"[code]position[/code]: The intersection point.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the ray did not intersect anything, then an empty dictionary is returned "
"instead."
msgstr ""
"Intersecte un rayon dans un espace donné. La position du rayon et les autres "
"paramètres sont définis par [PhysicsRayQueryParameters2D]. L'objet renvoyé "
"est un dictionnaire avec les champs suivants :\n"
"[code]collider[/code] : L'objet en collision.\n"
"[code]collider_id[/code] : L'ID de l'objet en collision.\n"
"[code]normal[/code] : La normale de surface de l'objet au point "
"d'intersection, ou [code]Vector2(0, 0)[/code] si le rayon commence à "
"l'intérieur de la forme et [member "
"PhysicsRayQueryParameters2D.hit_from_inside] vaut [code]true[/code].\n"
"[code]position[/code] : Le point intersectant.\n"
"[code]rid[/code] : Le [RID] de l'objet intersectant.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Si le rayon n'a rien intersecté, un dictionnaire vide est renvoyé à la place."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters2D] object, against the space. The intersected "
"shapes are returned in an array containing dictionaries with the following "
"fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time."
msgstr ""
"Vérifie les intersections d'une forme, donnée avec un objet "
"[PhysicsShapeQueryParameters2D], contre l'espace. Les formes intersectées "
"sont renvoyées dans un tableau contenant des dictionnaires avec les champs "
"suivants :\n"
"[code]collider[/code] : L'objet en collision.\n"
"[code]collider_id[/code] : L'ID de l'objet en collision.\n"
"[code]rid[/code] : Le [RID] de l'objet en intersection.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Le nombre d'intersections peut être limité avec le paramètre [param "
"max_results], pour réduire le temps de traitement."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectSpaceState2D] implementations."
msgstr ""
"Fournit des méthodes virtuelles qui peuvent être redéfinies pour créer des "
"implémentations personnalisées de [PhysicsDirectSpaceState2D]."

msgid ""
"This class extends [PhysicsDirectSpaceState2D] by providing additional "
"virtual methods that can be overridden. When these methods are overridden, "
"they will be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectSpaceState2D]."
msgstr ""
"Cette classe étend [PhysicsDirectSpaceState2D] en fournissant des méthodes "
"virtuelles supplémentaires qui peuvent être redéfinies. Lorsque ces méthodes "
"sont redéfinies, elles seront appelées au lieu des méthodes internes du "
"serveur de physique.\n"
"Conçu pour être utilisé avec GDExtension pour créer des implémentations "
"personnalisées de [PhysicsDirectSpaceState2D]."

msgid "Provides direct access to a physics space in the [PhysicsServer3D]."
msgstr "Fournit un accès direct à un espace physique dans le [PhysicsServer3D]."

msgid ""
"Provides direct access to a physics space in the [PhysicsServer3D]. It's used "
"mainly to do queries against objects and areas residing in a given space.\n"
"[b]Note:[/b] This class is not meant to be instantiated directly. Use [member "
"World3D.direct_space_state] to get the world's physics 3D space state."
msgstr ""
"Fournit un accès direct à un espace physique dans le [PhysicsServer3D]. Il "
"est utilisé principalement pour faire des requêtes sur des objets et des "
"zones résidant dans un espace donné.\n"
"[b]Note :[/b] Cette classe n'est pas destinée à être instanciée directement. "
"Utilisez [member World3D.direct_space_state] pour obtenir l'état de l'espace "
"3D physique du monde."

msgid ""
"Checks how far a [Shape3D] can move without colliding. All the parameters for "
"the query, including the shape and the motion, are supplied through a "
"[PhysicsShapeQueryParameters3D] object.\n"
"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
"the motion. The safe proportion is the maximum fraction of the motion that "
"can be made without a collision. The unsafe proportion is the minimum "
"fraction of the distance that must be moved for a collision. If no collision "
"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
"[b]Note:[/b] Any [Shape3D]s that the shape is already colliding with e.g. "
"inside of, will be ignored. Use [method collide_shape] to determine the "
"[Shape3D]s that the shape is already colliding with."
msgstr ""
"Vérifie jusqu'où un [Shape3D] peut se déplacer sans entrer en collision. Tous "
"les paramètres de la requête, y compris la forme et le mouvement, sont "
"fournis par un objet [PhysicsShapeQueryParameters3D].\n"
"Renvoie un tableau avec les proportions sûres et dangereuses (entre 0 et 1) "
"du mouvement. La proportion sûre est la fraction maximale du mouvement qui "
"peut être effectué sans collision. La proportion dangereuse est la fraction "
"minimale de la distance dont l'objet doit se déplacer pour entrer en "
"collision. Si aucune collision n'est détectée, un résultat de [code][1.0, 1.0]"
"[/code] sera renvoyé.\n"
"[b]Note :[/b] Toute [Shape3D] avec laquelle la forme est déjà en collision, "
"par exemple à l'intérieur, sera ignorée. Utilisez [method collide_shape] pour "
"déterminer les [Shape3D]s avec lesquelles la forme est déjà en collision."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters3D] object, against the space. The resulting "
"array contains a list of points where the shape intersects another. Like with "
"[method intersect_shape], the number of returned results can be limited to "
"save processing time.\n"
"Returned points are a list of pairs of contact points. For each pair the "
"first one is in the shape passed in [PhysicsShapeQueryParameters3D] object, "
"second one is in the collided shape from the physics space.\n"
"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
"property of the object."
msgstr ""
"Vérifie les intersections d'une forme, donné par un objet "
"[PhysicsShapeQueryParameters3D], contre l'espace. Le tableau résultant "
"contient une liste de points où la forme intersecte avec une autre. Comme "
"avec [method intersect_shape], le nombre de résultats renvoyés peut être "
"limité pour gagner du temps de traitement.\n"
"Les points renvoyés sont une liste de paires de points de contact. Pour "
"chaque paire, le premier est dans la forme passée dans l'objet "
"[PhysicsShapeQueryParameters3D], le second est dans la forme en collision de "
"l'espace physique.\n"
"[b]Note :[/b] Cette méthode ne tient pas compte de la propriété [code]motion[/"
"code] de l'objet."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters3D] object, against the space. If it collides "
"with more than one shape, the nearest one is selected. The returned object is "
"a dictionary containing the following fields:\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]linear_velocity[/code]: The colliding object's velocity [Vector3]. If "
"the object is an [Area3D], the result is [code](0, 0, 0)[/code].\n"
"[code]normal[/code]: The collision normal of the query shape at the "
"intersection point, pointing away from the intersecting object.\n"
"[code]point[/code]: The intersection point.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the shape did not intersect anything, then an empty dictionary is returned "
"instead.\n"
"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
"property of the object."
msgstr ""
"Vérifie les intersections d'une forme, donnée avec un objet "
"[PhysicsShapeQueryParameters3D], contre l'espace. Si elle entre en collision "
"avec plus d'une forme, la plus proche est sélectionnée. L'objet renvoyé est "
"un dictionnaire contenant les champs suivants :\n"
"[code]collider_id[/code] : L'identifiant de l'objet en collision.\n"
"[code]linear_velocity[/code] : La vitesse de l'objet en collision en tant que "
"[Vector3]. Si l'objet est une [Area3D], le résultat est [code](0, 0, 0)[/"
"code].\n"
"[code]normal[/code] : La normale de collision de la forme de la requête au "
"point d'intersection, pointant hors de l'objet en intersection.\n"
"[code]point[/code] : Le point d'intersection.\n"
"[code]rid[/code] : Le [RID] de l’objet en intersection.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Si la forme n'intersecte rien, alors un dictionnaire vide est renvoyé à la "
"place.\n"
"[b]Note:[/b] Cette méthode ne tient pas compte de la propriété [code]motion[/"
"code] de l'objet."

msgid ""
"Checks whether a point is inside any solid shape. Position and other "
"parameters are defined through [PhysicsPointQueryParameters3D]. The shapes "
"the point is inside of are returned in an array containing dictionaries with "
"the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time."
msgstr ""
"Vérifie si un point est à l'intérieur d'au moins une forme solide. La "
"position et les autres paramètres sont définis par "
"[PhysicsPointQueryParameters3D]. Les formes dans lesquelles se trouve le "
"point sont renvoyées dans un tableau contenant des dictionnaires avec les "
"champs suivants :\n"
"[code]collider[/code] : L'objet en collision.\n"
"[code]collider_id[/code] : L'ID de l'objet en collision.\n"
"[code]rid[/code] : Le [RID] de l'objet en intersection.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Le nombre d'intersections peut être limité avec le paramètre [param "
"max_results], pour réduire le temps de traitement."

msgid ""
"Intersects a ray in a given space. Ray position and other parameters are "
"defined through [PhysicsRayQueryParameters3D]. The returned object is a "
"dictionary with the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]normal[/code]: The object's surface normal at the intersection point, "
"or [code]Vector3(0, 0, 0)[/code] if the ray starts inside the shape and "
"[member PhysicsRayQueryParameters3D.hit_from_inside] is [code]true[/code].\n"
"[code]position[/code]: The intersection point.\n"
"[code]face_index[/code]: The face index at the intersection point.\n"
"[b]Note:[/b] Returns a valid number only if the intersected shape is a "
"[ConcavePolygonShape3D]. Otherwise, [code]-1[/code] is returned.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the ray did not intersect anything, then an empty dictionary is returned "
"instead."
msgstr ""
"Intersecte un rayon dans un espace donné. La position du rayon et les autres "
"paramètres sont définis par [PhysicsRayQueryParameters3D]. L'objet renvoyé "
"est un dictionnaire avec les champs suivants :\n"
"[code]collider[/code] : L'objet en collision.\n"
"[code]collider_id[/code] : L'ID de l'objet en collision.\n"
"[code]normal[/code] : La normale de surface de l'objet au point "
"d'intersection, ou [code]Vector3(0, 0, 0)[/code] si le rayon commence à "
"l'intérieur de la forme et [member "
"PhysicsRayQueryParameters3D.hit_from_inside] vaut [code]true[/code].\n"
"[code]position[/code] : Le point intersectant.\n"
"[code]face_index[/code] : L'index de face au point d'intersection.\n"
"[b]Note :[/b] Renvoie un nombre valide seulement si la forme intersectée est "
"un [ConcavePolygonShape3D]. Sinon, [code]-1[/code] est renvoyé.\n"
"[code]rid[/code] : Le [RID] de l'objet intersectant.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Si le rayon n'a rien intersecté, un dictionnaire vide est renvoyé à la place."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters3D] object, against the space. The intersected "
"shapes are returned in an array containing dictionaries with the following "
"fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time.\n"
"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
"property of the object."
msgstr ""
"Vérifie les intersections d'une forme, données avec un objet "
"[PhysicsShapeQueryParameters3D], contre l'espace. Les formes intersectées "
"sont renvoyées dans un tableau contenant des dictionnaires avec les champs "
"suivants :\n"
"[code]collider[/code] : L'objet en collision.\n"
"[code]collider_id[/code] : L'ID de l'objet en collision.\n"
"[code]rid[/code] : Le [RID] de l'objet en intersection.\n"
"[code]shape[/code] : L'indice de forme de la forme en collision.\n"
"Le nombre d'intersections peut être limité avec le paramètre [param "
"max_results], pour réduire le temps de traitement.\n"
"[b]Note :[/b] Cette méthode ne tient pas compte de la propriété [code]motion[/"
"code] de l'objet."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectSpaceState3D] implementations."
msgstr ""
"Fournit des méthodes virtuelles qui peuvent être redéfinies pour créer des "
"implémentations personnalisées de [PhysicsDirectSpaceState3D]."

msgid ""
"This class extends [PhysicsDirectSpaceState3D] by providing additional "
"virtual methods that can be overridden. When these methods are overridden, "
"they will be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectSpaceState3D]."
msgstr ""
"Cette classe étend [PhysicsDirectSpaceState3D] en fournissant des méthodes "
"virtuelles supplémentaires qui peuvent être redéfinies. Lorsque ces méthodes "
"sont redéfinies, elles seront appelées au lieu des méthodes internes du "
"serveur de physique.\n"
"Destinée à être utilisée avec GDExtension pour créer des implémentations "
"personnalisées de [PhysicsDirectSpaceState3D]."

msgid ""
"Holds physics-related properties of a surface, namely its roughness and "
"bounciness."
msgstr ""
"Détient des propriétés liées à la physique d'une surface, à savoir sa "
"rugosité et sa bounciness."

msgid ""
"Holds physics-related properties of a surface, namely its roughness and "
"bounciness. This class is used to apply these properties to a physics body."
msgstr ""
"Détient des propriétés liées à la physique d'une surface, à savoir sa "
"rugosité et sa bounciness. Cette classe est utilisée pour appliquer ces "
"propriétés à un corps physique."

msgid ""
"If [code]true[/code], subtracts the bounciness from the colliding object's "
"bounciness instead of adding it."
msgstr ""
"Si [code]true[/code], soustrait la bounciness de la bounciness de l'objet en "
"collision au lieu de l'additionner."

msgid ""
"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
"[code]1[/code] (full bounciness).\n"
"[b]Note:[/b] Even with [member bounce] set to [code]1.0[/code], some energy "
"will be lost over time due to linear and angular damping. To have a physics "
"body that preserves all its energy over time, set [member bounce] to "
"[code]1.0[/code], the body's linear damp mode to [b]Replace[/b] (if "
"applicable), its linear damp to [code]0.0[/code], its angular damp mode to "
"[b]Replace[/b] (if applicable), and its angular damp to [code]0.0[/code]."
msgstr ""
"La capacité du corps à rebondir. Les valeurs vont de [code]0[/code] (pas de "
"rebond) à [code]1[/code] (rebond complet).\n"
"[b]Note :[/b] Même avec [member bounce] défini à [code]1.0[/code], une partie "
"de l'énergie sera perdue au cours du temps en raison de l'amortissement "
"linéaire et angulaire. Pour avoir un corps physique qui conserve toute son "
"énergie au cours du temps, définissez [member bounce] à [code]1.0[/code], le "
"mode d'amortissement linéaire du corps à [b]Remplacer[/b] (si applicable), "
"son amortissement linéaire à [code]0.0[/code], son mode d'amortissement "
"angulaire à [b]Remplacer[/b] (si applicable), et son amortissement angulaire "
"à [code]0.0[/code]."

msgid ""
"The body's friction. Values range from [code]0[/code] (frictionless) to "
"[code]1[/code] (maximum friction)."
msgstr ""
"La friction du corps. La valeur va de [code]0[/code] (sans friction) à "
"[code]1[/code] (friction maximale)."

msgid ""
"If [code]true[/code], the physics engine will use the friction of the object "
"marked as \"rough\" when two objects collide. If [code]false[/code], the "
"physics engine will use the lowest friction of all colliding objects instead. "
"If [code]true[/code] for both colliding objects, the physics engine will use "
"the highest friction."
msgstr ""
"Si [code]true[/code], le moteur de physique utilisera la friction de l'objet "
"marqué comme \"rugueux\" lorsque deux objets entrent en collision. Si "
"[code]false[/code], le moteur de physique utilisera plutôt la friction le "
"plus basse de tous les objets en collision. Si [code]true[/code] pour les "
"deux objets en collision, le moteur de physique utilisera la plus haute "
"friction."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState2D.intersect_point]."
msgstr ""
"Fournit des paramètres pour [method "
"PhysicsDirectSpaceState2D.intersect_point]."

msgid ""
"By changing various properties of this object, such as the point position, "
"you can configure the parameters for [method "
"PhysicsDirectSpaceState2D.intersect_point]."
msgstr ""
"En changeant diverses propriétés de cet objet, comme la position du point, "
"vous pouvez configurer les paramètres pour [method "
"PhysicsDirectSpaceState2D.intersect_point]."

msgid ""
"If different from [code]0[/code], restricts the query to a specific canvas "
"layer specified by its instance ID. See [method Object.get_instance_id].\n"
"If [code]0[/code], restricts the query to the Viewport's default canvas layer."
msgstr ""
"Si différent de [code]0[/code], limite la requête à une couche de canevas "
"spécifique spécifiée par son ID d'instance. Voir [method "
"Object.get_instance_id].\n"
"Si [code]0[/code], limite la requête à la couche de canevas par défaut du "
"Viewport."

msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr "Si [code]true[/code], la requête prendra la [Area2D] en compte."

msgid "If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr "Si [code]true[/code], la requête prendra la [PhysicsBody2D] en compte."

msgid ""
"The physics layers the query will detect (as a bitmask). By default, all "
"collision layers are detected. See [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
"Les couches de physique que la requête détectera (en tant que masque de "
"bits). Par défaut, toutes les couches de collision sont détectées. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Niveaux et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"The list of object [RID]s that will be excluded from collisions. Use [method "
"CollisionObject2D.get_rid] to get the [RID] associated with a "
"[CollisionObject2D]-derived node.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then assign it to the property again."
msgstr ""
"La liste des [RID]s des objets qui seront exclus des collisions. Utilisez "
"[method CollisionObject2D.get_rid] pour obtenir le [RID] associé à un nœud "
"dérivé de [CollisionObject2D].\n"
"[b]Note :[/b] Le tableau renvoyé est copié et tout changement apporté à celui-"
"ci ne mettra pas à jour la valeur de la propriété originale. Pour mettre à "
"jour la valeur, vous devez modifier le tableau renvoyé, puis l'affecter à "
"nouveau à la propriété."

msgid "The position being queried for, in global coordinates."
msgstr ""
"La position faisant l'objet de la demande, dans les coordonnées globales."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState3D.intersect_point]."
msgstr ""
"Fournit des paramètres pour [method "
"PhysicsDirectSpaceState3D.intersect_point]."

msgid ""
"By changing various properties of this object, such as the point position, "
"you can configure the parameters for [method "
"PhysicsDirectSpaceState3D.intersect_point]."
msgstr ""
"En changeant diverses propriétés de cet objet, comme la position du point, "
"vous pouvez configurer les paramètres pour [method "
"PhysicsDirectSpaceState3D.intersect_point]."

msgid "If [code]true[/code], the query will take [Area3D]s into account."
msgstr "Si [code]true[/code], la requête prendra les [Area3D]s en compte."

msgid "If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr ""
"Si [code]true[/code], la requête prendra les [PhysicsBody3D]s en compte."

msgid ""
"The list of object [RID]s that will be excluded from collisions. Use [method "
"CollisionObject3D.get_rid] to get the [RID] associated with a "
"[CollisionObject3D]-derived node.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then assign it to the property again."
msgstr ""
"La liste des [RID]s des objets qui seront exclus des collisions. Utilisez "
"[method CollisionObject3D.get_rid] pour obtenir le [RID] associé à un nœud "
"dérivé de [CollisionObject3D].\n"
"[b]Note :[/b] Le tableau renvoyé est copié et tout changement apporté à celui-"
"ci ne mettra pas à jour la valeur de la propriété originale. Pour mettre à "
"jour la valeur, vous devez modifier le tableau renvoyé, puis l'affecter à "
"nouveau à la propriété."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState2D.intersect_ray]."
msgstr ""
"Fournit des paramètres pour [method PhysicsDirectSpaceState2D.intersect_ray]."

msgid ""
"By changing various properties of this object, such as the ray position, you "
"can configure the parameters for [method "
"PhysicsDirectSpaceState2D.intersect_ray]."
msgstr ""
"En changeant diverses propriétés de cet objet, comme la position du rayon, "
"vous pouvez configurer les paramètres pour [method "
"PhysicsDirectSpaceState2D.intersect_ray]."

msgid ""
"Returns a new, pre-configured [PhysicsRayQueryParameters2D] object. Use it to "
"quickly create query parameters using the most common options.\n"
"[codeblock]\n"
"var query = PhysicsRayQueryParameters2D.create(global_position, "
"global_position + Vector2(0, 100))\n"
"var collision = get_world_2d().direct_space_state.intersect_ray(query)\n"
"[/codeblock]"
msgstr ""
"Renvoie un nouvel objet préconfiguré [PhysicsRayQueryParameters2D]. Utilisez-"
"le pour créer rapidement des paramètres de requête en utilisant les options "
"les plus courantes.\n"
"[codeblock]\n"
"var requete = PhysiqueRayQueryParameters2D.create(position_globale, "
"position_globale + Vector2(0, 100)))\n"
"var collision = get_world_2d().direct_space_state.intersect_ray(requete)\n"
"[/codeblock]"

msgid "The starting point of the ray being queried for, in global coordinates."
msgstr "Le point de départ du rayon questionné, dans les coordonnées globales."

msgid ""
"If [code]true[/code], the query will detect a hit when starting inside "
"shapes. In this case the collision normal will be [code]Vector2(0, 0)[/code]. "
"Does not affect concave polygon shapes."
msgstr ""
"Si [code]true[/code], la requête détectera un choc lorsqu'elle démarre à "
"l'intérieur d'une forme. Dans ce cas, la normale de collision sera "
"[code]Vector2(0, 0)[/code]. N'affecte pas les formes de polygones concaves."

msgid "The ending point of the ray being queried for, in global coordinates."
msgstr "Le point de fin du rayon questionné, dans les coordonnées globales."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState3D.intersect_ray]."
msgstr ""
"Fournit des paramètres pour [method PhysicsDirectSpaceState3D.intersect_ray]."

msgid ""
"By changing various properties of this object, such as the ray position, you "
"can configure the parameters for [method "
"PhysicsDirectSpaceState3D.intersect_ray]."
msgstr ""
"En changeant diverses propriétés de cet objet, comme la position du rayon, "
"vous pouvez configurer les paramètres pour [method "
"PhysicsDirectSpaceState3D.intersect_ray]."

msgid ""
"Returns a new, pre-configured [PhysicsRayQueryParameters3D] object. Use it to "
"quickly create query parameters using the most common options.\n"
"[codeblock]\n"
"var query = PhysicsRayQueryParameters3D.create(position, position + "
"Vector3(0, -10, 0))\n"
"var collision = get_world_3d().direct_space_state.intersect_ray(query)\n"
"[/codeblock]"
msgstr ""
"Renvoie un nouvel objet préconfiguré [PhysicsRayQueryParameters3D]. Utilisez-"
"le pour créer rapidement des paramètres de requête en utilisant les options "
"les plus courantes.\n"
"[codeblock]\n"
"var requete = PhysicsRayQueryParameters3D.create(position, position + "
"Vector3(0, -10, 0)))\n"
"var collision = get_world_3d().direct_space_state.intersect_ray(requete)\n"
"[/codeblock]"

msgid ""
"If [code]true[/code], the query will hit back faces with concave polygon "
"shapes with back face enabled or heightmap shapes."
msgstr ""
"Si [code]true[/code], la requête va toucher les faces arrières des formes de "
"polygone concave avec les faces arrières activées ou des formes de heightmap."

msgid ""
"If [code]true[/code], the query will detect a hit when starting inside "
"shapes. In this case the collision normal will be [code]Vector3(0, 0, 0)[/"
"code]. Does not affect concave polygon shapes or heightmap shapes."
msgstr ""
"Si [code]true[/code], la requête détectera une collision lors du démarrage à "
"l'intérieur d'une forme. Dans ce cas, la normale de collision sera "
"[code]Vector3(0, 0, 0)[/code]. N'affecte pas les formes de polygones concaves "
"ou les formes de heightmap."

msgid ""
"PhysicsServer2D is the server responsible for all 2D physics. It can directly "
"create and manipulate all physics objects:\n"
"- A [i]space[/i] is a self-contained world for a physics simulation. It "
"contains bodies, areas, and joints. Its state can be queried for collision "
"and intersection information, and several parameters of the simulation can be "
"modified.\n"
"- A [i]shape[/i] is a geometric shape such as a circle, a rectangle, a "
"capsule, or a polygon. It can be used for collision detection by adding it to "
"a body/area, possibly with an extra transformation relative to the body/"
"area's origin. Bodies/areas can have multiple (transformed) shapes added to "
"them, and a single shape can be added to bodies/areas multiple times with "
"different local transformations.\n"
"- A [i]body[/i] is a physical object which can be in static, kinematic, or "
"rigid mode. Its state (such as position and velocity) can be queried and "
"updated. A force integration callback can be set to customize the body's "
"physics.\n"
"- An [i]area[/i] is a region in space which can be used to detect bodies and "
"areas entering and exiting it. A body monitoring callback can be set to "
"report entering/exiting body shapes, and similarly an area monitoring "
"callback can be set. Gravity and damping can be overridden within the area by "
"setting area parameters.\n"
"- A [i]joint[/i] is a constraint, either between two bodies or on one body "
"relative to a point. Parameters such as the joint bias and the rest length of "
"a spring joint can be adjusted.\n"
"Physics objects in [PhysicsServer2D] may be created and manipulated "
"independently; they do not have to be tied to nodes in the scene tree.\n"
"[b]Note:[/b] All the 2D physics nodes use the physics server internally. "
"Adding a physics node to the scene tree will cause a corresponding physics "
"object to be created in the physics server. A rigid body node registers a "
"callback that updates the node's transform with the transform of the "
"respective body object in the physics server (every physics update). An area "
"node registers a callback to inform the area node about overlaps with the "
"respective area object in the physics server. The raycast node queries the "
"direct state of the relevant space in the physics server."
msgstr ""
"PhysicsServer2D est le serveur responsable de toute la physique 2D. Il peut "
"directement créer et manipuler tous les objets physiques :\n"
"- Un [i]espace[/i] est un monde autonome pour une simulation de physique. Il "
"contient des corps, des zones et des articulations. Son état peut être "
"questionné pour les informations de collision et d'intersection, et plusieurs "
"paramètres de la simulation peuvent être modifiés.\n"
"- Une [i]forme[/i] est une forme géométrique comme un cercle, un rectangle, "
"une capsule ou un polygone. Elle peut être utilisée pour la détection de "
"collision en l'ajoutant à un corps/zone, éventuellement avec une "
"transformation supplémentaire par rapport à l'origine du corps/de la zone. "
"Les corps/zones peuvent avoir plusieurs formes (transformées) ajoutées à eux, "
"et une même forme peut être ajoutée aux corps/zones plusieurs fois avec "
"différentes transformations locales.\n"
"- Un [i]corps[/i] est un objet physique qui peut être en mode statique, "
"cinématique ou rigide. Son état (comme la position et la vitesse) peut être "
"mis à jour. Un callback d'intégration de la force peut être défini pour "
"personnaliser la physique du corps.\n"
"- Une [i]zone[/i] est une région dans l'espace qui peut être utilisée pour "
"détecter les corps et les zones qui en entrent et sortant. Un callback de "
"surveillance de corps peut être défini pour signaler l'entrée/sortie de "
"formes de corps, et de même un callback de surveillance de zone peut être "
"défini. La gravité et l'amortissement peuvent être redéfinis dans la zone en "
"définissant les paramètres de la zone.\n"
"- Une [i]jointure[/i] est une contrainte, soit entre deux corps ou sur un "
"corps par rapport à un point. Des paramètres tels que le biais de la jointure "
"ou la longueur au repos d'une jointure de ressort peuvent être ajustés.\n"
"Les objets physiques dans [PhysicsServer2D] peuvent être créés et manipulés "
"de façon indépendante, ils n'ont pas à être liés à des nœuds dans l'arbre de "
"scène.\n"
"[b]Note :[/b] Tous les nœuds physiques 2D utilisent le serveur physique "
"interne. L'ajout d'un nœud physique à l'arbre de scène provoquera la création "
"d'un objet physique correspondant dans le serveur de physique. Un nœud de "
"corps rigide enregistre un callback qui met à jour la transformation du nœud "
"avec la transformation de l'objet de corps respectif dans le serveur de "
"physique (chaque mise à jour physique). Un nœud de zone enregistre un "
"callback pour informer le nœud de zone sur les chevauchements avec l'objet de "
"zone correspondant dans le serveur de physique. Le nœud de raycast questionne "
"l'état direct de l'espace pertinent dans le serveur de physique."

msgid "Returns the body's mode."
msgstr "Renvoie le mode du corps."

msgid "Sets the body's mode."
msgstr "Définit le mode du corps."

msgid "Returns the joint's type."
msgstr "Renvoie le type du joint."

msgid "Returns the shape's type."
msgstr "Renvoie le type de forme."

msgid ""
"This is the constant for creating separation ray shapes. A separation ray is "
"defined by a length and separates itself from what is touching its far "
"endpoint. Useful for character controllers."
msgstr ""
"Il s'agit de la constante pour créer des formes de rayons de séparation. Un "
"rayon de séparation est défini par une longueur et se sépare de ce qui touche "
"son extrémité éloignée. Utile pour les contrôleurs de personnage."

msgid ""
"This is the constant for creating circle shapes. A circle shape only has a "
"radius. It can be used for intersections and inside/outside checks."
msgstr ""
"Il s'agit de la constante pour créer des formes de cercle. Une forme de "
"cercle n'a qu'un rayon. Elle peut être utilisée pour les intersections et les "
"vérifications intérieur/extérieur."

msgid ""
"This is the constant for creating rectangle shapes. A rectangle shape is "
"defined by a width and a height. It can be used for intersections and inside/"
"outside checks."
msgstr ""
"Il s'agit de la constante pour créer des formes de rectangle. Une forme de "
"rectangle est définie par une largeur et une hauteur. Elle peut être utilisée "
"pour les intersections et les vérifications intérieur/extérieur."

msgid "Represents the size of the [enum BodyParameter] enum."
msgstr "Représente la taille de l'énumération [enum BodyParameter]."

msgid "Constant to set/get the current transform matrix of the body."
msgstr ""
"La constante pour définir/obtenir la matrice de transformation actuelle du "
"corps."

msgid "Constant to set/get the current linear velocity of the body."
msgstr ""
"La constante pour définir/récupérer la vélocité linéaire actuelle de ce corps."

msgid "Constant to set/get the current angular velocity of the body."
msgstr ""
"La constante pour définir/récupérer la vélocité angulaire actuelle de ce "
"corps."

msgid "Constant to set/get whether the body can sleep."
msgstr "La constante pour définir/obtenir si le corps peut être au repos."

msgid "Constant to create pin joints."
msgstr "Constante pour créer des joints d’épingle."

msgid "Constant to create groove joints."
msgstr "Constante pour créer des joints de rainure."

msgid "Represents the size of the [enum JointType] enum."
msgstr "Représente la taille de l'énumération [enum JointType]."

msgid "Target speed for the motor. In radians per second."
msgstr "Vitesse cible pour le moteur. En radians par seconde."

msgid "Constant to get the number of objects that are not sleeping."
msgstr "La constante pour récupérer le nombre d'objets qui ne dorment pas."

msgid "Constant to get the number of possible collisions."
msgstr "La constante pour obtenir le nombre possible de collisions."

msgid "Overridable version of [method PhysicsServer2D.area_add_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_add_shape]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.area_attach_canvas_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.area_attach_canvas_instance_id]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.area_attach_object_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.area_attach_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.area_clear_shapes]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_clear_shapes]."

msgid "Overridable version of [method PhysicsServer2D.area_create]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_canvas_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.area_get_canvas_instance_id]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_collision_layer]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_get_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.area_get_collision_mask]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_get_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_object_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.area_get_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.area_get_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_get_param]."

msgid "Overridable version of [method PhysicsServer2D.area_get_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_get_shape]."

msgid "Overridable version of [method PhysicsServer2D.area_get_shape_count]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_get_shape_count]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_shape_transform]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_get_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.area_get_space]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_get_space]."

msgid "Overridable version of [method PhysicsServer2D.area_get_transform]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_get_transform]."

msgid "Overridable version of [method PhysicsServer2D.area_remove_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_remove_shape]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.area_set_area_monitor_callback]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.area_set_area_monitor_callback]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_set_collision_layer]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_set_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.area_set_collision_mask]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_set_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_set_monitor_callback]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_set_monitor_callback]."

msgid "Overridable version of [method PhysicsServer2D.area_set_monitorable]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_set_monitorable]."

msgid "Overridable version of [method PhysicsServer2D.area_set_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_set_param]."

msgid ""
"If set to [code]true[/code], allows the area with the given [RID] to detect "
"mouse inputs when the mouse cursor is hovering on it.\n"
"Overridable version of [PhysicsServer2D]'s internal [code]area_set_pickable[/"
"code] method. Corresponds to [member CollisionObject2D.input_pickable]."
msgstr ""
"Si défini à [code]true[/code], permet à la zone avec le [RID] donné de "
"détecter les entrées de la souris lorsque le curseur de la souris la "
"survole.\n"
"Version redéfinissable de la méthode interne [code]area_set_pickable[/code] "
"de [PhysicsServer2D]. Correspond à [member CollisionObject2D.input_pickable]."

msgid "Overridable version of [method PhysicsServer2D.area_set_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_set_shape]."

msgid "Overridable version of [method PhysicsServer2D.area_set_shape_disabled]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_set_shape_disabled]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_set_shape_transform]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.area_set_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.area_set_space]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_set_space]."

msgid "Overridable version of [method PhysicsServer2D.area_set_transform]."
msgstr "Version redéfinissable de [method PhysicsServer2D.area_set_transform]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_add_collision_exception]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_add_collision_exception]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_add_constant_central_force]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_add_constant_central_force]."

msgid "Overridable version of [method PhysicsServer2D.body_add_constant_force]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_add_constant_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_add_constant_torque]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_add_constant_torque]."

msgid "Overridable version of [method PhysicsServer2D.body_add_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_add_shape]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_apply_central_force]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_apply_central_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_apply_central_impulse]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_apply_central_impulse]."

msgid "Overridable version of [method PhysicsServer2D.body_apply_force]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_apply_force]."

msgid "Overridable version of [method PhysicsServer2D.body_apply_impulse]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_apply_impulse]."

msgid "Overridable version of [method PhysicsServer2D.body_apply_torque]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_apply_torque]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_apply_torque_impulse]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_apply_torque_impulse]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_attach_canvas_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_attach_canvas_instance_id]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_attach_object_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_attach_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.body_clear_shapes]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_clear_shapes]."

msgid ""
"Given a [param body], a [param shape], and their respective parameters, this "
"method should return [code]true[/code] if a collision between the two would "
"occur, with additional details passed in [param results].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]shape_collide[/"
"code] method. Corresponds to [method PhysicsDirectSpaceState2D.collide_shape]."
msgstr ""
"Compte tenu d'un corps [param body], d'une forme [param shape] et de leurs "
"paramètres respectifs, cette méthode devrait renvoyer [code]true[/code] si "
"une collision entre les deux se devrait se produire, avec les détails "
"supplémentaires passés dans [param results].\n"
"Version redéfinissable de la méthode interne [code]shape_collide[/code] de "
"[PhysicsServer2D]. Correspond à [method "
"PhysicsDirectSpaceState2D.collide_shape]."

msgid "Overridable version of [method PhysicsServer2D.body_create]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_canvas_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_get_canvas_instance_id]."

msgid ""
"Returns the [RID]s of all bodies added as collision exceptions for the given "
"[param body]. See also [method _body_add_collision_exception] and [method "
"_body_remove_collision_exception].\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]body_get_collision_exceptions[/code] method. Corresponds to [method "
"PhysicsBody2D.get_collision_exceptions]."
msgstr ""
"Renvoie les [RID] de tous les corps ajoutés comme exceptions de collision "
"pour le corps [param body] donné. Voir aussi [method "
"_body_add_collision_exception] et [method _body_remove_collision_exception].\n"
"Version redéfinissable de la méthode interne "
"[code]body_get_collision_exceptions[/code] de [PhysicsServer2D]. Correspond à "
"[method PhysicsBody2D.get_collision_exceptions]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_collision_layer]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_get_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.body_get_collision_mask]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_get_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_collision_priority]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_get_collision_priority]."

msgid "Overridable version of [method PhysicsServer2D.body_get_constant_force]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_get_constant_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_constant_torque]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_get_constant_torque]."

msgid ""
"Overridable version of [PhysicsServer2D]'s internal "
"[code]body_get_contacts_reported_depth_threshold[/code] method.\n"
"[b]Note:[/b] This method is currently unused by Godot's default physics "
"implementation."
msgstr ""
"Version redéfinissable de la méthode interne "
"[code]body_get_contacts_reported_depth_threshold[/code] de "
"[PhysicsServer2D].\n"
"[b]Note :[/b] Cette méthode est actuellement inutilisée par l'implémentation "
"de la physique par défaut de Godot."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_get_continuous_collision_detection_mode]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_get_continuous_collision_detection_mode]."

msgid "Overridable version of [method PhysicsServer2D.body_get_direct_state]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_get_direct_state]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_get_max_contacts_reported]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_get_max_contacts_reported]."

msgid "Overridable version of [method PhysicsServer2D.body_get_mode]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_get_mode]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_object_instance_id]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_get_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.body_get_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_get_param]."

msgid "Overridable version of [method PhysicsServer2D.body_get_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_get_shape]."

msgid "Overridable version of [method PhysicsServer2D.body_get_shape_count]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_get_shape_count]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_shape_transform]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_get_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.body_get_space]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_get_space]."

msgid "Overridable version of [method PhysicsServer2D.body_get_state]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_get_state]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_is_omitting_force_integration]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_is_omitting_force_integration]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_remove_collision_exception]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_remove_collision_exception]."

msgid "Overridable version of [method PhysicsServer2D.body_remove_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_remove_shape]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_reset_mass_properties]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_reset_mass_properties]."

msgid "Overridable version of [method PhysicsServer2D.body_set_axis_velocity]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_set_axis_velocity]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_collision_layer]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_set_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.body_set_collision_mask]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_set_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_collision_priority]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_set_collision_priority]."

msgid "Overridable version of [method PhysicsServer2D.body_set_constant_force]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_set_constant_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_constant_torque]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_set_constant_torque]."

msgid ""
"Overridable version of [PhysicsServer2D]'s internal "
"[code]body_set_contacts_reported_depth_threshold[/code] method.\n"
"[b]Note:[/b] This method is currently unused by Godot's default physics "
"implementation."
msgstr ""
"Version redéfinissable de la méthode interne "
"[code]body_set_contacts_reported_depth_threshold[/code] de "
"[PhysicsServer2D].\n"
"[b]Note :[/b] Cette méthode est actuellement inutilisée par l'implémentation "
"de la physique par défaut de Godot."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_continuous_collision_detection_mode]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_set_continuous_collision_detection_mode]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_force_integration_callback]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_set_force_integration_callback]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_max_contacts_reported]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_set_max_contacts_reported]."

msgid "Overridable version of [method PhysicsServer2D.body_set_mode]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_set_mode]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_omit_force_integration]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_set_omit_force_integration]."

msgid "Overridable version of [method PhysicsServer2D.body_set_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_set_param]."

msgid ""
"If set to [code]true[/code], allows the body with the given [RID] to detect "
"mouse inputs when the mouse cursor is hovering on it.\n"
"Overridable version of [PhysicsServer2D]'s internal [code]body_set_pickable[/"
"code] method. Corresponds to [member CollisionObject2D.input_pickable]."
msgstr ""
"Si défini à [code]true[/code], permet au corps avec le [RID] donné de "
"détecter les entrées de la souris lorsque le curseur de la souris la "
"survole.\n"
"Version redéfinissable de la méthode interne [code]body_set_pickable[/code] "
"de [PhysicsServer2D]. Correspond à [member CollisionObject2D.input_pickable]."

msgid "Overridable version of [method PhysicsServer2D.body_set_shape]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_set_shape]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_shape_as_one_way_collision]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.body_set_shape_as_one_way_collision]."

msgid "Overridable version of [method PhysicsServer2D.body_set_shape_disabled]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_set_shape_disabled]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_shape_transform]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.body_set_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.body_set_space]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_set_space]."

msgid "Overridable version of [method PhysicsServer2D.body_set_state]."
msgstr "Version redéfinissable de [method PhysicsServer2D.body_set_state]."

msgid ""
"Assigns the [param body] to call the given [param callable] during the "
"synchronization phase of the loop, before [method _step] is called. See also "
"[method _sync].\n"
"Overridable version of [method PhysicsServer2D.body_set_state_sync_callback]."
msgstr ""
"Assigne le corps [param body] à appeler le [param callable] donné pendant la "
"phase de synchronisation de la boucle, avant que [method _step] soit appelée. "
"Voir aussi [method _sync].\n"
"Version redéfinissable de [method "
"PhysicsServer2D.body_set_state_sync_callback]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_test_motion]. Unlike the "
"exposed implementation, this method does not receive all of the arguments "
"inside a [PhysicsTestMotionParameters2D]."
msgstr ""
"Version redéfinissable [method PhysicsServer2D.body_test_motion]. "
"Contrairement à l'implémentation exposée, cette méthode ne reçoit pas tous "
"les arguments dans un [PhysicsTestMotionParameters2D]."

msgid "Overridable version of [method PhysicsServer2D.capsule_shape_create]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.capsule_shape_create]."

msgid "Overridable version of [method PhysicsServer2D.circle_shape_create]."
msgstr "Version redéfinissable de [method PhysicsServer2D.circle_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.concave_polygon_shape_create]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.concave_polygon_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.convex_polygon_shape_create]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.convex_polygon_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.damped_spring_joint_get_param]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.damped_spring_joint_get_param]."

msgid ""
"Overridable version of [method PhysicsServer2D.damped_spring_joint_set_param]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.damped_spring_joint_set_param]."

msgid ""
"Called to indicate that the physics server has stopped synchronizing. It is "
"in the loop's iteration/physics phase, and can access physics objects even if "
"running on a separate thread. See also [method _sync].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]end_sync[/code] "
"method."
msgstr ""
"Appelée pour indiquer que le serveur de physique a cessé de se synchroniser. "
"Il est dans la phase d'itération/physique de la boucle, et peut accéder à des "
"objets physiques même s'il s'exécute sur un fil séparé. Voir aussi [method "
"_sync].\n"
"Version redéfinissable de la méthode interne [code]end_sync[/code] de "
"[PhysicsServer2D]."

msgid ""
"Called when the main loop finalizes to shut down the physics server. See also "
"[method MainLoop._finalize] and [method _init].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]finish[/code] "
"method."
msgstr ""
"Appelée lorsque la boucle principale finalise d’éteindre le serveur de "
"physique. Voir aussi [method MainLoop._finalize] et [method _init].\n"
"Version redéfinissable de la méthode interne [code]finish[/code] de "
"[PhysicsServer2D]."

msgid ""
"Called every physics step before [method _step] to process all remaining "
"queries.\n"
"Overridable version of [PhysicsServer2D]'s internal [code]flush_queries[/"
"code] method."
msgstr ""
"Appelée à chaque étape physique avant [method _step] pour traiter toutes les "
"requêtes restantes.\n"
"Version redéfinissable de la méthode interne [code]flush_queries[/code] de "
"[PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.free_rid]."
msgstr "Version redéfinissable de [method PhysicsServer2D.free_rid]."

msgid "Overridable version of [method PhysicsServer2D.get_process_info]."
msgstr "Version redéfinissable de [method PhysicsServer2D.get_process_info]."

msgid ""
"Called when the main loop is initialized and creates a new instance of this "
"physics server. See also [method MainLoop._initialize] and [method _finish].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]init[/code] method."
msgstr ""
"Appelée lorsque la boucle principale est initialisée et crée une nouvelle "
"instance de ce serveur de physique. Voir aussi [method MainLoop._initialize] "
"et [method _finish].\n"
"Version surchargeable de la méthode interne [code]init[/code] de "
"[PhysicsServer2D]."

msgid ""
"Overridable method that should return [code]true[/code] when the physics "
"server is processing queries. See also [method _flush_queries].\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]is_flushing_queries[/code] method."
msgstr ""
"Méthode redéfinissable qui devrait renvoyer [code]true[/code] lorsque le "
"serveur de physique traite des requêtes. Voir aussi [method _flush_queries].\n"
"Version redéfinissable de la méthode interne [code]is_flushing_queries[/code]."

msgid "Overridable version of [method PhysicsServer2D.joint_clear]."
msgstr "Version redéfinissable de [method PhysicsServer2D.joint_clear]."

msgid "Overridable version of [method PhysicsServer2D.joint_create]."
msgstr "Version redéfinissable de [method PhysicsServer2D.joint_create]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.joint_disable_collisions_between_bodies]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.joint_disable_collisions_between_bodies]."

msgid "Overridable version of [method PhysicsServer2D.joint_get_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.joint_get_param]."

msgid "Overridable version of [method PhysicsServer2D.joint_get_type]."
msgstr "Version redéfinissable de [method PhysicsServer2D.joint_get_type]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.joint_is_disabled_collisions_between_bodies]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.joint_is_disabled_collisions_between_bodies]."

msgid ""
"Overridable version of [method PhysicsServer2D.joint_make_damped_spring]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.joint_make_damped_spring]."

msgid "Overridable version of [method PhysicsServer2D.joint_make_groove]."
msgstr "Version redéfinissable de [method PhysicsServer2D.joint_make_groove]."

msgid "Overridable version of [method PhysicsServer2D.joint_make_pin]."
msgstr "Version redéfinissable de [method PhysicsServer2D.joint_make_pin]."

msgid "Overridable version of [method PhysicsServer2D.joint_set_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.joint_set_param]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_get_flag]."
msgstr "Version redéfinissable de [method PhysicsServer2D.pin_joint_get_flag]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_get_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.pin_joint_get_param]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_set_flag]."
msgstr "Version redéfinissable de [method PhysicsServer2D.pin_joint_set_flag]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_set_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.pin_joint_set_param]."

msgid "Overridable version of [method PhysicsServer2D.rectangle_shape_create]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.rectangle_shape_create]."

msgid "Overridable version of [method PhysicsServer2D.segment_shape_create]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.segment_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.separation_ray_shape_create]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.separation_ray_shape_create]."

msgid "Overridable version of [method PhysicsServer2D.set_active]."
msgstr "Version redéfinissable de [method PhysicsServer2D.set_active]."

msgid ""
"Given two shapes and their parameters, should return [code]true[/code] if a "
"collision between the two would occur, with additional details passed in "
"[param results].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]shape_collide[/"
"code] method. Corresponds to [method PhysicsDirectSpaceState2D.collide_shape]."
msgstr ""
"Compte tenu de deux formes et de leurs paramètres, devrait renvoyer "
"[code]true[/code] si une collision entre les deux pourrait se produire, avec "
"des détails supplémentaires passés dans [param results].\n"
"Version redéfinissable de la méthode interne [code]shape_collide[/code] de "
"[PhysicsServer2D]. Correspond à [method "
"PhysicsDirectSpaceState2D.collide_shape]."

msgid ""
"Should return the custom solver bias of the given [param shape], which "
"defines how much bodies are forced to separate on contact when this shape is "
"involved.\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]shape_get_custom_solver_bias[/code] method. Corresponds to [member "
"Shape2D.custom_solver_bias]."
msgstr ""
"Devrait renvoyer le biais du solveur personnalisé pour la forme [param shape] "
"donnée, qui définit à quel point les corps sont obligés de se séparer lors du "
"contact quand cette forme est impliquée.\n"
"Version redéfinissable de la méthode interne "
"[code]shape_get_custom_solver_bias[/code] de [PhysicsServer2D]. Correspond à "
"[member Shape2D.custom_solver_bias]."

msgid "Overridable version of [method PhysicsServer2D.shape_get_data]."
msgstr "Version redéfinissable de [method PhysicsServer2D.shape_get_data]."

msgid "Overridable version of [method PhysicsServer2D.shape_get_type]."
msgstr "Version redéfinissable de [method PhysicsServer2D.shape_get_type]."

msgid ""
"Should set the custom solver bias for the given [param shape]. It defines how "
"much bodies are forced to separate on contact.\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]shape_get_custom_solver_bias[/code] method. Corresponds to [member "
"Shape2D.custom_solver_bias]."
msgstr ""
"Devrait définir le biais de solveur personnalisé pour la forme [param shape] "
"donnée. Il définit à quel point les corps sont obligés de se séparer lors du "
"contact.\n"
"Version redéfinissable de la méthode interne "
"[code]shape_get_custom_solver_bias[/code] de [PhysicsServer2D]. Correspond à "
"[member Shape2D.custom_solver_bias]."

msgid "Overridable version of [method PhysicsServer2D.shape_set_data]."
msgstr "Version redéfinissable de [method PhysicsServer2D.shape_set_data]."

msgid "Overridable version of [method PhysicsServer2D.space_create]."
msgstr "Version redéfinissable de [method PhysicsServer2D.space_create]."

msgid ""
"Should return how many contacts have occurred during the last physics step in "
"the given [param space]. See also [method _space_get_contacts] and [method "
"_space_set_debug_contacts].\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]space_get_contact_count[/code] method."
msgstr ""
"Devrait renvoyer combien de contacts ont eu lieu lors de la dernière étape de "
"physique dans l'espace [param space] donné. Voir aussi [method "
"_space_get_contacts] et [method _space_set_debug_contacts].\n"
"Version redéfinissable de la méthode interne [code]space_get_contact_count[/"
"code] de [PhysicsServer2D]."

msgid ""
"Should return the positions of all contacts that have occurred during the "
"last physics step in the given [param space]. See also [method "
"_space_get_contact_count] and [method _space_set_debug_contacts].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]space_get_contacts[/"
"code] method."
msgstr ""
"Devrait renvoyer la position de tous les contacts qui ont eu lieu lors de la "
"dernière étape de physique dans l'espace [param space] donné. Voir aussi "
"[method _space_get_contact_count] et [method _space_set_debug_contacts].\n"
"Version redéfinissable de la méthode interne [code]space_get_contacts[/code] "
"de [PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.space_get_direct_state]."
msgstr ""
"Version redéfinissable de [method PhysicsServer2D.space_get_direct_state]."

msgid "Overridable version of [method PhysicsServer2D.space_get_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.space_get_param]."

msgid "Overridable version of [method PhysicsServer2D.space_is_active]."
msgstr "Version redéfinissable de [method PhysicsServer2D.space_is_active]."

msgid "Overridable version of [method PhysicsServer2D.space_set_active]."
msgstr "Version redéfinissable de [method PhysicsServer2D.space_set_active]."

msgid ""
"Used internally to allow the given [param space] to store contact points, up "
"to [param max_contacts]. This is automatically set for the main [World2D]'s "
"space when [member SceneTree.debug_collisions_hint] is [code]true[/code], or "
"by checking \"Visible Collision Shapes\" in the editor. Only works in debug "
"builds.\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]space_set_debug_contacts[/code] method."
msgstr ""
"Utilisée en interne pour permettre à l'espace [param space] donné de stocker "
"des points de contact, jusqu'à [param max_contacts]. Ceci est automatiquement "
"défini pour l'espace principal [World2D] lorsque [member "
"SceneTree.debug_collisions_hint] vaut [code]true[/code], ou en cochant "
"\"Formes de collision visibles\" dans l'éditeur. Ne marche que dans les "
"compilations de débogage.\n"
"Version redéfinissable de la méthode interne [code]space_set_debug_contacts[/"
"code] de [PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.space_set_param]."
msgstr "Version redéfinissable de [method PhysicsServer2D.space_set_param]."

msgid ""
"Called to indicate that the physics server is synchronizing and cannot access "
"physics states if running on a separate thread. See also [method _end_sync].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]sync[/code] method."
msgstr ""
"Appelée pour indiquer que le serveur de physique est synchronisé et ne peut "
"pas accéder aux états physiques s'il s'exécute sur un fil séparé. Voir aussi "
"[method _end_sync].\n"
"Version redéfinissable de la méthode interne [code]sync[/code] de "
"[PhysicsServer2D]."

msgid ""
"Overridable version of [method PhysicsServer2D.world_boundary_shape_create]."
msgstr ""
"Version redéfinissable de [method "
"PhysicsServer2D.world_boundary_shape_create]."

msgid ""
"PhysicsServer3D is the server responsible for all 3D physics. It can directly "
"create and manipulate all physics objects:\n"
"- A [i]space[/i] is a self-contained world for a physics simulation. It "
"contains bodies, areas, and joints. Its state can be queried for collision "
"and intersection information, and several parameters of the simulation can be "
"modified.\n"
"- A [i]shape[/i] is a geometric shape such as a sphere, a box, a cylinder, or "
"a polygon. It can be used for collision detection by adding it to a body/"
"area, possibly with an extra transformation relative to the body/area's "
"origin. Bodies/areas can have multiple (transformed) shapes added to them, "
"and a single shape can be added to bodies/areas multiple times with different "
"local transformations.\n"
"- A [i]body[/i] is a physical object which can be in static, kinematic, or "
"rigid mode. Its state (such as position and velocity) can be queried and "
"updated. A force integration callback can be set to customize the body's "
"physics.\n"
"- An [i]area[/i] is a region in space which can be used to detect bodies and "
"areas entering and exiting it. A body monitoring callback can be set to "
"report entering/exiting body shapes, and similarly an area monitoring "
"callback can be set. Gravity and damping can be overridden within the area by "
"setting area parameters.\n"
"- A [i]joint[/i] is a constraint, either between two bodies or on one body "
"relative to a point. Parameters such as the joint bias and the rest length of "
"a spring joint can be adjusted.\n"
"Physics objects in [PhysicsServer3D] may be created and manipulated "
"independently; they do not have to be tied to nodes in the scene tree.\n"
"[b]Note:[/b] All the 3D physics nodes use the physics server internally. "
"Adding a physics node to the scene tree will cause a corresponding physics "
"object to be created in the physics server. A rigid body node registers a "
"callback that updates the node's transform with the transform of the "
"respective body object in the physics server (every physics update). An area "
"node registers a callback to inform the area node about overlaps with the "
"respective area object in the physics server. The raycast node queries the "
"direct state of the relevant space in the physics server."
msgstr ""
"PhysicsServer3D est le serveur responsable de toute la physique 3D. Il peut "
"directement créer et manipuler tous les objets physiques :\n"
"- Un [i]espace[/i] est un monde autonome pour une simulation de physique. Il "
"contient des corps, des zones et des articulations. Son état peut être "
"questionné pour les informations de collision et d'intersection, et plusieurs "
"paramètres de la simulation peuvent être modifiés.\n"
"- Une [i]forme[/i] est une forme géométrique comme une sphère, une boîte, un "
"cylindre ou un polygone. Elle peut être utilisée pour la détection de "
"collision en l'ajoutant à un corps/zone, éventuellement avec une "
"transformation supplémentaire par rapport à l'origine du corps/de la zone. "
"Les corps/zones peuvent avoir plusieurs formes (transformées) ajoutées à eux, "
"et une même forme peut être ajoutée aux corps/zones plusieurs fois avec "
"différentes transformations locales.\n"
"- Un [i]corps[/i] est un objet physique qui peut être en mode statique, "
"cinématique ou rigide. Son état (comme la position et la vitesse) peut être "
"mis à jour. Un callback d'intégration de la force peut être défini pour "
"personnaliser la physique du corps.\n"
"- Une [i]zone[/i] est une région dans l'espace qui peut être utilisée pour "
"détecter les corps et les zones qui en entrent et sortant. Un callback de "
"surveillance de corps peut être défini pour signaler l'entrée/sortie de "
"formes de corps, et de même un callback de surveillance de zone peut être "
"défini. La gravité et l'amortissement peuvent être redéfinis dans la zone en "
"définissant les paramètres de la zone.\n"
"- Une [i]jointure[/i] est une contrainte, soit entre deux corps ou sur un "
"corps par rapport à un point. Des paramètres tels que le biais de la jointure "
"ou la longueur au repos d'une jointure de ressort peuvent être ajustés.\n"
"Les objets physiques dans [PhysicsServer3D] peuvent être créés et manipulés "
"de façon indépendante, ils n'ont pas à être liés à des nœuds dans l'arbre de "
"scène.\n"
"[b]Note :[/b] Tous les nœuds physiques 3D utilisent le serveur physique "
"interne. L'ajout d'un nœud physique à l'arbre de scène provoquera la création "
"d'un objet physique correspondant dans le serveur de physique. Un nœud de "
"corps rigide enregistre un callback qui met à jour la transformation du nœud "
"avec la transformation de l'objet de corps respectif dans le serveur de "
"physique (chaque mise à jour physique). Un nœud de zone enregistre un "
"callback pour informer le nœud de zone sur les chevauchements avec l'objet de "
"zone correspondant dans le serveur de physique. Le nœud de raycast questionne "
"l'état direct de l'espace pertinent dans le serveur de physique."

msgid ""
"Adds a shape to the area, along with a transform matrix. Shapes are usually "
"referenced by their index, so you should track which shape has a given index."
msgstr ""
"Ajoute une forme à la zone, avec une matrice de transformation. Les formes "
"sont généralement référencées par leur index, vous devez donc suivre quelle "
"forme a un index donné."

msgid ""
"Assigns the area to a descendant of [Object], so it can exist in the node "
"tree."
msgstr ""
"Assigne la zone à un descendant de [Object], afin qu'il puisse exister dans "
"l'arbre des nœuds."

msgid ""
"Removes all shapes from an area. It does not delete the shapes, so they can "
"be reassigned later."
msgstr ""
"Supprime toutes les formes d'une zone. Il ne supprime pas les formes, de "
"sorte qu'elles peuvent être réaffectées ultérieurement."

msgid "Gets the instance ID of the object the area is assigned to."
msgstr ""
"Obtient l'identifiant d'instance de l'objet auquel la zone est attribuée."

msgid "Returns the [RID] of the nth shape of an area."
msgstr "Renvoie le [RID] de la n-ième forme d'une zone."

msgid "Returns the number of shapes assigned to an area."
msgstr "Renvoie le nombre de formes assignées à une zone."

msgid "Returns the transform matrix of a shape within an area."
msgstr "Renvoie la matrice de transformation d’une forme dans une zone."

msgid "Returns the space assigned to the area."
msgstr "Renvoie l’espace affecté à la zone."

msgid "Returns the transform matrix for an area."
msgstr "Renvoie la matrice de transformation pour une zone."

msgid ""
"Removes a shape from an area. It does not delete the shape, so it can be "
"reassigned later."
msgstr ""
"Enlève une forme d’une zone. Il ne supprime pas la forme, de sorte qu'elle "
"peut être réaffectée plus tard."

msgid "Assigns the area to one or many physics layers."
msgstr "Affecte la zone à un ou plusieurs calques de physique."

msgid "Sets which physics layers the area will monitor."
msgstr "Définit les calques de physique que la zone surveillera."

msgid "Sets object pickable with rays."
msgstr "Définit l'objet comme sélectionnable par les rayons."

msgid "Sets the transform matrix for an area shape."
msgstr "Définit la matrice de transformation pour la forme de l'aire."

msgid "Assigns a space to the area."
msgstr "Assigne un espace pour l'aire."

msgid "Sets the transform matrix for an area."
msgstr "Définit la matrice de transformation pour l'aire."

msgid "Adds a body to the list of bodies exempt from collisions."
msgstr "Ajoute un corps à la liste de ceux ignorés lors des collisions."

msgid "Removes all shapes from a body."
msgstr "Retire toutes les formes du corps."

msgid "Returns the physics layer or layers a body belongs to."
msgstr "Renvoie le(s) couche(s) physique(s) auquel(s) ce corps appartient."

msgid "Returns the physics layer or layers a body can collide with."
msgstr ""
"Renvoie le(s) couche(s) physique(s) avec lesquelles un corps peut entrer en "
"collision."

msgid "Returns the body's collision priority."
msgstr "Renvoie la priorité de collision du corps."

msgid ""
"Returns the maximum contacts that can be reported. See [method "
"body_set_max_contacts_reported]."
msgstr ""
"Renvoie le nombre maximal de contacts qui peuvent être détectés. Voir [method "
"body_set_max_contacts_reported]."

msgid "Returns the body mode."
msgstr "Renvoie le mode du corps."

msgid "Returns the [RID] of the nth shape of a body."
msgstr "Renvoie le [RID] de la n-ième forme d'un corps."

msgid "Returns the number of shapes assigned to a body."
msgstr "Renvoie le nombre de formes associées à un corps."

msgid "Returns the transform matrix of a body shape."
msgstr "Renvoie la matrice de transformation pour la forme d'un corps."

msgid "Returns the [RID] of the space assigned to a body."
msgstr "Renvoie le [RID] de la forme assignée à un corps."

msgid "Returns a body state."
msgstr "Renvoie un état d'un corps."

msgid ""
"Sets an axis velocity. The velocity in the given vector axis will be set as "
"the given vector length. This is useful for jumping behavior."
msgstr ""
"Définit la vélocité d'un axe. La vélocité dans l'axe du vecteur donné sera "
"définie comme la longueur du vecteur donné. Utile pour le comportement lors "
"d'un saut."

msgid "Sets the physics layer or layers a body belongs to."
msgstr "Définit le(s) calque(s) physique(s) auquel(s) ce corps appartient."

msgid "Sets the physics layer or layers a body can collide with."
msgstr ""
"Définit le(s) calque(s) physique(s) où le corps peut entrer en collision."

msgid "Sets the body's collision priority."
msgstr "Définit la priorité de collision du corps."

msgid ""
"Sets the body's total constant rotational forces applied during each physics "
"update.\n"
"See [method body_add_constant_torque]."
msgstr ""
"Définit les forces de rotation constantes totales du corps appliquées lors de "
"chaque mise à jour physique.\n"
"Voir [method body_add_constant_torque]."

msgid ""
"If [code]true[/code], the continuous collision detection mode is enabled.\n"
"Continuous collision detection tries to predict where a moving body will "
"collide, instead of moving it and correcting its movement if it collided."
msgstr ""
"Si [code]true[/code], le mode de détection continue des collisions est "
"activé.\n"
"La détection continue des collisions tente de prédire où un corps mobile va "
"collisionner, au lieu de le déplacer et de corriger son mouvement s'il "
"collisionne."

msgid "Sets the body mode."
msgstr "Définit le mode du corps."

msgid ""
"Substitutes a given body shape by another. The old shape is selected by its "
"index, the new one by its [RID]."
msgstr ""
"Remplace la forme du corps par une autre. L'ancienne forme est choisie par "
"son index, et la nouvelle par son [RID]."

msgid "Sets the transform matrix for a body shape."
msgstr "Définit la matrice de transformation pour la forme du corps."

msgid "Assigns a space to the body (see [method space_create])."
msgstr "Assigne un espace au corps (voir [method space_create])."

msgid "Sets a body state."
msgstr "Définit un état du corps."

msgid ""
"Destroys any of the objects created by PhysicsServer3D. If the [RID] passed "
"is not one of the objects that can be created by PhysicsServer3D, an error "
"will be sent to the console."
msgstr ""
"Détruit l'un des objets créés par PhysicsServer3D. Si le [RID] passé n'est "
"pas un des objets qui peuvent être créés par PhysicsServer3D, une erreur sera "
"envoyée à la console."

msgid "Gets a hinge joint flag."
msgstr "Obtient un drapeau de liaison avec charnière."

msgid "Gets a hinge joint parameter."
msgstr "Obtient un paramètre de liaison avec charnière."

msgid "Sets a hinge joint flag."
msgstr "Définit un drapeau de liaison avec charnière."

msgid "Sets a hinge joint parameter."
msgstr "Définit un paramètre de liaison avec charnière."

msgid ""
"Sets whether the bodies attached to the [Joint3D] will collide with each "
"other."
msgstr ""
"Définit si les corps attachés au [Joint3D] entreront en collision l'un avec "
"l'autre."

msgid "Gets the priority value of the Joint3D."
msgstr "Définit la valeur de priorité du Joint3D."

msgid "Returns the type of the Joint3D."
msgstr "Renvoie le type du Joint3D."

msgid ""
"Returns whether the bodies attached to the [Joint3D] will collide with each "
"other."
msgstr ""
"Renvoie si les corps attachés au [Joint3D] entreront en collision l'un avec "
"l'autre."

msgid "Sets the priority value of the Joint3D."
msgstr "Définit la valeur de priorité du Joint3D."

msgid "Returns position of the joint in the local space of body a of the joint."
msgstr ""
"Renvoie la position de la liaison dans l'espace local du corps A de la "
"liaison."

msgid "Returns position of the joint in the local space of body b of the joint."
msgstr ""
"Renvoie la position de la liaison dans l'espace local du corps B de la "
"liaison."

msgid "Activates or deactivates the 3D physics engine."
msgstr "Active ou désactive le moteur physique 3D."

msgid "Returns the shape data."
msgstr "Renvoie les données de forme."

msgid "Returns the type of shape."
msgstr "Renvoie le type de forme."

msgid ""
"Sets the shape data that defines its shape and size. The data to be passed "
"depends on the kind of shape created [method shape_get_type]."
msgstr ""
"Définit les données de forme qui définissent sa forme et sa taille. Les "
"données à transmettre dépendent du type de forme créé (voir [method "
"shape_get_type])."

msgid ""
"Sets the collision margin for the shape.\n"
"[b]Note:[/b] This is not used in Godot Physics."
msgstr ""
"Définit la marge de collision pour la forme.\n"
"[b]Note :[/b] Ceci n'est pas utilisé dans Godot Physics."

msgid "Adds the given body to the list of bodies exempt from collisions."
msgstr "Ajoute le corps donné à la liste des corps exemptés des collisions."

msgid ""
"Distributes and applies a force to all points. A force is time dependent and "
"meant to be applied every physics update."
msgstr ""
"Distribue et applique une force à tous les points. Une force est dépendante "
"du temps et est destinée à être appliquée à chaque mise à jour physique."

msgid ""
"Distributes and applies an impulse to all points.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise)."
msgstr ""
"Distribue et applique une impulsion à tous les points.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utiliser les fonctions \"_force\" sinon)."

msgid ""
"Applies a force to a point. A force is time dependent and meant to be applied "
"every physics update."
msgstr ""
"Applique une force à un point. Une force est dépendante du temps et destinée "
"à être appliquée à chaque mise à jour physique."

msgid ""
"Applies an impulse to a point.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise)."
msgstr ""
"Applique une impulsion à un point.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraichissent. Pour cette "
"raison, elle ne devrait être utilisée que pour simuler des impacts ponctuels "
"(utiliser les fonctions \"_force\" sinon)."

msgid "Sets the mesh of the given soft body."
msgstr "Définit le maillage du corps souple donné."

msgid "Returns the value of a space parameter."
msgstr "Renvoie la valeur d'un paramètre de l'espace."

msgid "Returns whether the space is active."
msgstr "Renvoie si l'espace est actif."

msgid "The [Joint3D] is a [PinJoint3D]."
msgstr "Le [Joint3D] est un [PinJoint3D]."

msgid "The [Joint3D] is a [HingeJoint3D]."
msgstr "Le [Joint3D] est un [HingeJoint3D]."

msgid "The [Joint3D] is a [SliderJoint3D]."
msgstr "Le [Joint3D] est un [SliderJoint3D]."

msgid "The [Joint3D] is a [ConeTwistJoint3D]."
msgstr "Le [Joint3D] est un [ConeTwistJoint3D]."

msgid "The [Joint3D] is a [Generic6DOFJoint3D]."
msgstr "Le [Joint3D] est un [Generic6DOFJoint3D]."

msgid ""
"The strength with which the pinned objects try to stay in velocity relation "
"to each other.\n"
"The higher, the stronger."
msgstr ""
"La force avec laquelle les objets épinglés tentent de rester en vélocité les "
"uns par rapport aux autres.\n"
"Plus elle est élevée, plus elle est forte."

msgid "The maximum rotation across the Hinge."
msgstr "La rotation maximale à travers la charnière."

msgid "The minimum rotation across the Hinge."
msgstr "La rotation minimale à travers la charnière."

msgid ""
"The maximum difference between the pivot points on their X axis before "
"damping happens."
msgstr ""
"La différence maximale entre les points du pivot sur leur axe X avant que "
"l'amortissement se produit."

msgid ""
"The minimum difference between the pivot points on their X axis before "
"damping happens."
msgstr ""
"La différence minimale entre les points du pivot sur leur axe X avant que "
"l'amortissement se produit."

msgid ""
"A factor applied to the movement across the slider axis once the limits get "
"surpassed. The lower, the slower the movement."
msgstr ""
"Un facteur appliqué au mouvement sur l'axe de glissement une fois les limites "
"dépassées. Plus il est bas, plus le mouvement est lent."

msgid ""
"The amount of restitution once the limits are surpassed. The lower, the more "
"velocity-energy gets lost."
msgstr ""
"Le montant de la restitution une fois les limites dépassées. Plus il est bas, "
"plus l'énergie cinétique se perd."

msgid ""
"A factor applied to the movement across the slider axis as long as the slider "
"is in the limits. The lower, the slower the movement."
msgstr ""
"Un facteur appliqué au mouvement sur l'axe du glissement tant que la liaison "
"est dans les limites. Plus il est bas, plus le mouvement est lent."

msgid "The amount of restitution inside the slider limits."
msgstr "La quantité de restitution dans les limites du glissement."

msgid "The amount of damping inside the slider limits."
msgstr "La quantité d'amortissement dans les limites du glissement."

msgid "A factor applied to the movement across axes orthogonal to the slider."
msgstr ""
"Un facteur appliqué au mouvement sur les axes orthogonaux au glissement."

msgid ""
"The amount of restitution when movement is across axes orthogonal to the "
"slider."
msgstr ""
"La quantité de restitution lorsque le mouvement est sur les axes orthogonaux "
"au glissement."

msgid ""
"The amount of damping when movement is across axes orthogonal to the slider."
msgstr ""
"La quantité d'amortissement lorsque le mouvement est sur les axes orthogonaux "
"au glissement."

msgid "The upper limit of rotation in the slider."
msgstr "La limite haute de rotation du glissement."

msgid "The lower limit of rotation in the slider."
msgstr "La limite basse de rotation du glissement."

msgid "The amount of restitution of the rotation in the limits."
msgstr "La quantité de restitution de la rotation dans les limites."

msgid "The amount of damping of the rotation in the limits."
msgstr "La quantité d'amortissement de la rotation dans les limites."

msgid ""
"The amount of restitution of the rotation across axes orthogonal to the "
"slider."
msgstr ""
"La quantité de restitution de la rotation sur les axes orthogonaux au "
"glissement."

msgid ""
"The amount of damping of the rotation across axes orthogonal to the slider."
msgstr ""
"La quantité d'amortissement de la rotation est sur les axes orthogonaux au "
"glissement."

msgid "Represents the size of the [enum SliderJointParam] enum."
msgstr "Représente la taille de l'énumération [enum SliderJointParam]."

msgid ""
"The amount of restitution on the axes movement. The lower, the more velocity-"
"energy gets lost."
msgstr ""
"La quantité de restitution sur le mouvement de l'axe. Plus elle est bas, plus "
"l'énergie cinétique se perd."

msgid "Represents the size of the [enum G6DOFJointAxisParam] enum."
msgstr "Représente la taille de l'énumération [enum G6DOFJointAxisParam]."

msgid "If set, linear motion is possible within the given limits."
msgstr ""
"Si définit, le mouvement linéaire est possible dans les limites données."

msgid "If set, rotational motion is possible."
msgstr "Si définit, la rotation est possible."

msgid "Represents the size of the [enum G6DOFJointAxisFlag] enum."
msgstr "Représente la taille de l'énumération [enum G6DOFJointAxisFlag]."

msgid "The [Shape3D] is a [WorldBoundaryShape3D]."
msgstr "La [Shape3D] est une [WorldBoundaryShape3D]."

msgid "The [Shape3D] is a [SeparationRayShape3D]."
msgstr "La [Shape3D] est une [SeparationRayShape3D]."

msgid "The [Shape3D] is a [SphereShape3D]."
msgstr "La [Shape3D] est une [SphereShape3D]."

msgid "The [Shape3D] is a [BoxShape3D]."
msgstr "La [Shape3D] est une [BoxShape3D]."

msgid "The [Shape3D] is a [CapsuleShape3D]."
msgstr "La [Shape3D] est une [CapsuleShape3D]."

msgid "The [Shape3D] is a [CylinderShape3D]."
msgstr "La [Shape3D] est un [CylinderShape3D]."

msgid "The [Shape3D] is a [ConvexPolygonShape3D]."
msgstr "La [Shape3D] est un [ConvexPolygonShape3D]."

msgid "The [Shape3D] is a [ConcavePolygonShape3D]."
msgstr "La [Shape3D] est un [ConcavePolygonShape3D]."

msgid "The [Shape3D] is a [HeightMapShape3D]."
msgstr "La [Shape3D] est une [HeightMapShape3D]."

msgid "Constant to set/get gravity strength in an area."
msgstr "La constante pour définir/obtenir la force de gravité de l'aire."

msgid "Constant to set/get gravity vector/center in an area."
msgstr "La constante pour définir/obtenir le centre de gravité de l'aire."

msgid "Constant to set/get the priority (order of processing) of an area."
msgstr ""
"La constant pour définir/obtenir la priorité (l'ordre de gestion) de l'aire."

msgid "Constant to set/get a body's bounce factor."
msgstr "La constante pour définir/obtenir le facteur de rebond."

msgid "Constant to set/get a body's friction."
msgstr "Constante pour définir/récupérer la friction du corps."

msgid "Constant to set/get a body's mass."
msgstr "La constante pour définir/obtenir la masse du corps."

msgid "Constant to set/get a body's inertia."
msgstr "La constante pour définir/obtenir l'inertie du corps."

msgid "Constant to set/get a body's gravity multiplier."
msgstr ""
"La constante pour définir/obtenir le facteur de multiplication de la gravité "
"du corps."

msgid ""
"Constant to set/get the threshold linear velocity of activity. A body marked "
"as potentially inactive for both linear and angular velocity will be put to "
"sleep after the time given."
msgstr ""
"Constante pour définir/obtenir la vitesse linéaire seuil de l'activité. Un "
"corps marqué comme potentiellement inactif pour la vitesse linéaire et "
"angulaire sera endormi après le temps donné."

msgid ""
"Constant to set/get the threshold angular velocity of activity. A body marked "
"as potentially inactive for both linear and angular velocity will be put to "
"sleep after the time given."
msgstr ""
"Constante pour définir/obtenir la vitesse angulaire seuil de l'activité. Un "
"corps marqué comme potentiellement inactif pour la vitesse linéaire et "
"angulaire sera endormi après le temps donné."

msgid ""
"Constant to set/get the maximum time of activity. A body marked as "
"potentially inactive for both linear and angular velocity will be put to "
"sleep after this time."
msgstr ""
"Constante pour définir/obtenir la durée maximale d'activité. Un corps marqué "
"comme potentiellement inactif pour la vitesse linéaire et angulaire sera "
"endormi après cette durée."

msgid "Sets the bounding box for the [SoftBody3D]."
msgstr "Définit la boîte délimitante du [SoftBody3D]."

msgid "Provides parameters for [PhysicsDirectSpaceState2D]'s methods."
msgstr ""
"Fournit des paramètres pour les méthodes de [PhysicsDirectSpaceState2D]."

msgid ""
"By changing various properties of this object, such as the shape, you can "
"configure the parameters for [PhysicsDirectSpaceState2D]'s methods."
msgstr ""
"En changeant diverses propriétés de cet objet, comme la forme, vous pouvez "
"configurer les paramètres pour les méthodes de [PhysicsDirectSpaceState2D]."

msgid "The collision margin for the shape."
msgstr "La marge de collision de la forme."

msgid "The motion of the shape being queried for."
msgstr "Le mouvement de la forme qui a été demandée."

msgid ""
"The [Shape2D] that will be used for collision/intersection queries. This "
"stores the actual reference which avoids the shape to be released while being "
"used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
"La [Shape2D] qui sera utilisée pour les requêtes de collision/intersection. "
"Ceci stocke la référence réelle ce qui évite de libérer la forme tout en "
"l'utilisant pour les requêtes, donc toujours préférer utiliser ceci plutôt "
"que [member shape_rid]."

msgid ""
"The queried shape's [RID] that will be used for collision/intersection "
"queries. Use this over [member shape] if you want to optimize for performance "
"using the Servers API:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
"var radius = 64\n"
"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
"\n"
"var params = PhysicsShapeQueryParameters2D.new()\n"
"params.shape_rid = shape_rid\n"
"\n"
"# Execute physics queries here...\n"
"\n"
"# Release the shape when done with physics queries.\n"
"PhysicsServer2D.free_rid(shape_rid)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID shapeRid = PhysicsServer2D.CircleShapeCreate();\n"
"int radius = 64;\n"
"PhysicsServer2D.ShapeSetData(shapeRid, radius);\n"
"\n"
"var params = new PhysicsShapeQueryParameters2D();\n"
"params.ShapeRid = shapeRid;\n"
"\n"
"// Execute physics queries here...\n"
"\n"
"// Release the shape when done with physics queries.\n"
"PhysicsServer2D.FreeRid(shapeRid);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Le [RID] de la forme interrogée qui sera utilisée pour les requêtes de "
"collision/intersection. Utilisez ceci sur [member shape] si vous voulez "
"optimiser pour les performances en utilisant l'API Servers :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rid_forme = PhysicsServer2D.circle_shape_create()\n"
"var rayon = 64\n"
"PhysicsServer2D.shape_set_data(rid_forme, rayon)\n"
"\n"
"var parametres = PhysicsShapeQueryParameters2D.new()\n"
"parametres.shape_rid = rid_forme\n"
"\n"
"# Exécuter les requêtes de physique ici...\n"
"\n"
"# Libérer la forme lorsque les requêtes de physiques sont faites.\n"
"PhysicsServer2D.free_rid(shape_rid)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID ridForme = PhysicsServer2D.CircleShapeCreate();\n"
"int rayon = 64;\n"
"PhysicsServer2D.ShapeSetData(ridForme, rayon);\n"
"\n"
"var parametres = new PhysicsShapeQueryParameters2D();\n"
"parametres.ShapeRid = ridForme;\n"
"\n"
"// Exécuter les requêtes de physique ici...\n"
"\n"
"// Libérer la forme lorsque les requêtes de physiques sont faites.\n"
"PhysicsServer2D.FreeRid(ridForme);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "The queried shape's transform matrix."
msgstr "La matrice de transformation de la forme recherchée."

msgid "Provides parameters for [PhysicsDirectSpaceState3D]'s methods."
msgstr ""
"Fournit des paramètres pour les méthodes de [PhysicsDirectSpaceState3D]."

msgid ""
"By changing various properties of this object, such as the shape, you can "
"configure the parameters for [PhysicsDirectSpaceState3D]'s methods."
msgstr ""
"En changeant diverses propriétés de cet objet, comme la forme, vous pouvez "
"configurer les paramètres pour les méthodes de [PhysicsDirectSpaceState3D]."

msgid ""
"The [Shape3D] that will be used for collision/intersection queries. This "
"stores the actual reference which avoids the shape to be released while being "
"used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
"La [Shape3D] qui sera utilisée pour les requêtes de collision/intersection. "
"Ceci stocke la référence réelle ce qui évite de libérer la forme tout en "
"l'utilisant pour les requêtes, donc toujours préférer utiliser ceci plutôt "
"que [member shape_rid]."

msgid ""
"The queried shape's [RID] that will be used for collision/intersection "
"queries. Use this over [member shape] if you want to optimize for performance "
"using the Servers API:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var shape_rid = PhysicsServer3D.sphere_shape_create()\n"
"var radius = 2.0\n"
"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
"\n"
"var params = PhysicsShapeQueryParameters3D.new()\n"
"params.shape_rid = shape_rid\n"
"\n"
"# Execute physics queries here...\n"
"\n"
"# Release the shape when done with physics queries.\n"
"PhysicsServer3D.free_rid(shape_rid)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID shapeRid = PhysicsServer3D.SphereShapeCreate();\n"
"float radius = 2.0f;\n"
"PhysicsServer3D.ShapeSetData(shapeRid, radius);\n"
"\n"
"var params = new PhysicsShapeQueryParameters3D();\n"
"params.ShapeRid = shapeRid;\n"
"\n"
"// Execute physics queries here...\n"
"\n"
"// Release the shape when done with physics queries.\n"
"PhysicsServer3D.FreeRid(shapeRid);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Le [RID] de la forme interrogée qui sera utilisée pour les requêtes de "
"collision/intersection. Utilisez ceci plutôt que [member shape] si vous "
"voulez optimiser pour les performances en utilisant l'API Servers :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rid_forme = PhysicsServer3D.sphere_shape_create()\n"
"var rayon = 2.0\n"
"PhysicsServer3D.shape_set_data(rid_forme, rayon)\n"
"\n"
"var parametres = PhysicsShapeQueryParameters3D.new()\n"
"parametres.shape_rid = rid_forme\n"
"\n"
"# Exécuter les requêtes de physique ici...\n"
"\n"
"# Libérer la forme lorsque les requêtes de physiques sont faites.\n"
"PhysicsServer3D.free_rid(rid_forme)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID ridForme = PhysicsServer3D.SphereShapeCreate();\n"
"float rayon = 2.0f;\n"
"PhysicsServer3D.ShapeSetData(ridForme, rayon);\n"
"\n"
"var parametres = new PhysicsShapeQueryParameters3D();\n"
"parametres.ShapeRid = ridForme;\n"
"\n"
"// Exécuter les requêtes de physique ici...\n"
"\n"
"// Libérer la forme lorsque les requêtes de physiques sont faites.\n"
"PhysicsServer3D.FreeRid(ridForme);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Provides parameters for [method PhysicsServer2D.body_test_motion]."
msgstr "Fournit des paramètres pour [method PhysicsServer2D.body_test_motion]."

msgid ""
"By changing various properties of this object, such as the motion, you can "
"configure the parameters for [method PhysicsServer2D.body_test_motion]."
msgstr ""
"En changeant diverses propriétés de cet objet, comme le mouvement, vous "
"pouvez configurer les paramètres de [method PhysicsServer2D.body_test_motion]."

msgid ""
"If set to [code]true[/code], shapes of type [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] are used to detect collisions and can "
"stop the motion. Can be useful when snapping to the ground.\n"
"If set to [code]false[/code], shapes of type [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] are only used for separation when "
"overlapping with other bodies. That's the main use for separation ray shapes."
msgstr ""
"Si défini à [code]true[/code], les formes du type [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] sont utilisés pour détecter les "
"collisions et peuvent arrêter le mouvement. Peut être utile lors de "
"l'aimantation au sol.\n"
"Si défini à [code]false[/code], les formes du type [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] ne sont utilisées que pour la "
"séparation lors du chevauchement avec d'autres corps. C'est l'usage principal "
"des formes de rayons de séparation."

msgid ""
"Optional array of body [RID] to exclude from collision. Use [method "
"CollisionObject2D.get_rid] to get the [RID] associated with a "
"[CollisionObject2D]-derived node."
msgstr ""
"Tableau facultatif de [RID]s de corps à exclure de la collision. Utilisez "
"[method CollisionObject2D.get_rid] pour obtenir le [RID] associé à un nœud "
"dérivé de [CollisionObject2D]."

msgid ""
"Optional array of object unique instance ID to exclude from collision. See "
"[method Object.get_instance_id]."
msgstr ""
"Tableau optionnel d'identifiants d'instance uniques à exclure de la "
"collision. Voir [method Object.get_instance_id]."

msgid ""
"Transform in global space where the motion should start. Usually set to "
"[member Node2D.global_transform] for the current body's transform."
msgstr ""
"Transformation dans l'espace global où le mouvement devrait commencer. "
"Habituellement défini à [member Node2D.global_transform] pour la "
"transformation du corps actuel."

msgid "Increases the size of the shapes involved in the collision detection."
msgstr ""
"Augmente la taille des formes impliquées dans la détection de collision."

msgid "Motion vector to define the length and direction of the motion to test."
msgstr ""
"Vecteur de mouvement pour définir la longueur et la direction du mouvement à "
"tester."

msgid ""
"If set to [code]true[/code], any depenetration from the recovery phase is "
"reported as a collision; this is used e.g. by [CharacterBody2D] for improving "
"floor detection during floor snapping.\n"
"If set to [code]false[/code], only collisions resulting from the motion are "
"reported, which is generally the desired behavior."
msgstr ""
"S'il est défini à [code]true[/code], toute dé-pénétration de la phase de "
"redressement est rapportées comme une collision, ceci est par exemple utilisé "
"par [CharacterBody2D] pour améliorer la détection du sol lors de "
"l'aimantation au sol.\n"
"S'il est défini à [code]false[/code], seules les collisions résultant du "
"mouvement sont rapportées, ce qui est généralement le comportement souhaité."

msgid "Provides parameters for [method PhysicsServer3D.body_test_motion]."
msgstr "Fournit des paramètres pour [method PhysicsServer3D.body_test_motion]."

msgid ""
"By changing various properties of this object, such as the motion, you can "
"configure the parameters for [method PhysicsServer3D.body_test_motion]."
msgstr ""
"En changeant diverses propriétés de cet objet, comme le mouvement, vous "
"pouvez configurer les paramètres de [method PhysicsServer3D.body_test_motion]."

msgid ""
"If set to [code]true[/code], shapes of type [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] are used to detect collisions and can "
"stop the motion. Can be useful when snapping to the ground.\n"
"If set to [code]false[/code], shapes of type [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] are only used for separation when "
"overlapping with other bodies. That's the main use for separation ray shapes."
msgstr ""
"Si défini à [code]true[/code], les formes du type [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] sont utilisés pour détecter les "
"collisions et peuvent arrêter le mouvement. Peut être utile lors de "
"l'aimantation au sol.\n"
"Si défini à [code]false[/code], les formes du type [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] ne sont utilisées que pour la "
"séparation lors du chevauchement avec d'autres corps. C'est l'usage principal "
"des formes de rayons de séparation."

msgid ""
"Optional array of body [RID] to exclude from collision. Use [method "
"CollisionObject3D.get_rid] to get the [RID] associated with a "
"[CollisionObject3D]-derived node."
msgstr ""
"Tableau facultatif de [RID]s de corps à exclure de la collision. Utilisez "
"[method CollisionObject3D.get_rid] pour obtenir le [RID] associé à un nœud "
"dérivé de [CollisionObject3D]."

msgid ""
"Transform in global space where the motion should start. Usually set to "
"[member Node3D.global_transform] for the current body's transform."
msgstr ""
"Transformation dans l'espace global où le mouvement devrait commencer. "
"Habituellement défini à [member Node3D.global_transform] pour la "
"transformation du corps actuel."

msgid ""
"Maximum number of returned collisions, between [code]1[/code] and [code]32[/"
"code]. Always returns the deepest detected collisions."
msgstr ""
"Nombre maximal de collisions renvoyées , entre [code]1[/code] et [code]32[/"
"code]. Renvoie toujours les collisions les plus profondes."

msgid ""
"If set to [code]true[/code], any depenetration from the recovery phase is "
"reported as a collision; this is used e.g. by [CharacterBody3D] for improving "
"floor detection during floor snapping.\n"
"If set to [code]false[/code], only collisions resulting from the motion are "
"reported, which is generally the desired behavior."
msgstr ""
"S'il est défini à [code]true[/code], toute dé-pénétration de la phase de "
"redressement est rapportées comme une collision, ceci est par exemple utilisé "
"par [CharacterBody3D] pour améliorer la détection du sol lors de "
"l'aimantation au sol.\n"
"S'il est défini à [code]false[/code], seules les collisions résultant du "
"mouvement sont rapportées, ce qui est généralement le comportement souhaité."

msgid ""
"Describes the motion and collision result from [method "
"PhysicsServer2D.body_test_motion]."
msgstr ""
"Décrit le mouvement et la collision résultant de [method "
"PhysicsServer2D.body_test_motion]."

msgid "Returns the colliding body's attached [Object], if a collision occurred."
msgstr ""
"Renvoie l'[Object] attaché au corps en collision, si une collision s'est "
"produite."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object], if "
"a collision occurred. See [method Object.get_instance_id]."
msgstr ""
"Renvoie l'identifiant d'instance unique de l'[Object] attaché au corps en "
"collision, si une collision s'est produite. Voir [method "
"Object.get_instance_id]."

msgid ""
"Returns the colliding body's [RID] used by the [PhysicsServer2D], if a "
"collision occurred."
msgstr ""
"Renvoie le [RID] du corps en collision utilisé par le [PhysicsServer2D], si "
"une collision s'est produite."

msgid ""
"Returns the colliding body's shape index, if a collision occurred. See "
"[CollisionObject2D]."
msgstr ""
"Renvoie l'indice de forme du corps en collision, si une collision s'est "
"produite. Voir [CollisionObject2D]."

msgid "Returns the colliding body's velocity, if a collision occurred."
msgstr ""
"Renvoie la vélocité du corps en collision, si une collision s'est produite."

msgid ""
"Returns the length of overlap along the collision normal, if a collision "
"occurred."
msgstr ""
"Renvoie la longueur du chevauchement le long de la normale de collision, si "
"une collision s'est produite."

msgid "Returns the moving object's colliding shape, if a collision occurred."
msgstr ""
"Renvoie la forme de l'objet en collision en mouvement, si une collision s'est "
"produite."

msgid ""
"Returns the colliding body's shape's normal at the point of collision, if a "
"collision occurred."
msgstr ""
"Renvoie la normale à la forme du corps en collision au point de collision, si "
"une collision s'est produite."

msgid ""
"Returns the point of collision in global coordinates, if a collision occurred."
msgstr ""
"Renvoie le point de collision dans les coordonnées globales, si une collision "
"s'est produite."

msgid ""
"Returns the maximum fraction of the motion that can occur without a "
"collision, between [code]0[/code] and [code]1[/code]."
msgstr ""
"Renvoie la fraction maximale du mouvement qui peut se produire sans "
"collision, entre [code]0[/code] et [code]1[/code]."

msgid ""
"Returns the minimum fraction of the motion needed to collide, if a collision "
"occurred, between [code]0[/code] and [code]1[/code]."
msgstr ""
"Renvoie la fraction minimale du mouvement nécessaire pour entrer en "
"collision, si une collision s'est produite, entre [code]0[/code] et [code]1[/"
"code]."

msgid ""
"Describes the motion and collision result from [method "
"PhysicsServer3D.body_test_motion]."
msgstr ""
"Décrit le mouvement et la collision résultant de [method "
"PhysicsServer3D.body_test_motion]."

msgid ""
"Returns the colliding body's attached [Object] given a collision index (the "
"deepest collision by default), if a collision occurred."
msgstr ""
"Renvoie l'[Object] attaché au corps en collision selon un index de collision "
"(la collision la plus profonde par défaut), si une collision s'est produite."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object] "
"given a collision index (the deepest collision by default), if a collision "
"occurred. See [method Object.get_instance_id]."
msgstr ""
"Renvoie l'identifiant d'instance unique de l'[Object] attaché au corps en "
"collision selon un index de collision (la collision la plus profonde par "
"défaut), si une collision s'est produite. Voir [method "
"Object.get_instance_id]."

msgid ""
"Returns the colliding body's [RID] used by the [PhysicsServer3D] given a "
"collision index (the deepest collision by default), if a collision occurred."
msgstr ""
"Renvoie le [RID] du corps en collision utilisé par [PhysicsServer3D] selon un "
"index de collision (la collision la plus profonde par défaut), si une "
"collision s'est produite."

msgid ""
"Returns the colliding body's shape index given a collision index (the deepest "
"collision by default), if a collision occurred. See [CollisionObject3D]."
msgstr ""
"Renvoie l'index de forme de l'objet en collision selon un index de collision "
"(la collision la plus profonde par défaut), si une collision s'est produite. "
"Voir [CollisionObject3D]."

msgid ""
"Returns the colliding body's velocity given a collision index (the deepest "
"collision by default), if a collision occurred."
msgstr ""
"Renvoie la vitesse du corps en collision avec un indice de collision donné "
"(la collision la plus profonde par défaut), si une collision s'est produite."

msgid ""
"Returns the length of overlap along the collision normal given a collision "
"index (the deepest collision by default), if a collision occurred."
msgstr ""
"Renvoie la longueur du chevauchement le long de la normale de collision selon "
"un indice de collision donné (la collision la plus profonde par défaut), si "
"une collision s'est produite."

msgid ""
"Returns the moving object's colliding shape given a collision index (the "
"deepest collision by default), if a collision occurred."
msgstr ""
"Renvoie la forme de collision de l'objet en mouvement selon un index de "
"collision (la collision la plus profonde par défaut), si une collision s'est "
"produite."

msgid ""
"Returns the colliding body's shape's normal at the point of collision given a "
"collision index (the deepest collision by default), if a collision occurred."
msgstr ""
"Renvoie la normale au point de collision de la forme du corps en collision "
"selon un index de collision (la collision la plus profonde par défaut), si "
"une collision s'est produite."

msgid ""
"Returns the point of collision in global coordinates given a collision index "
"(the deepest collision by default), if a collision occurred."
msgstr ""
"Renvoie le point de collision dans les coordonnées avec un indice de "
"collision donné (la collision la plus profonde par défaut), si une collision "
"s'est produite."

msgid ""
"A physics joint that attaches two 2D physics bodies at a single point, "
"allowing them to freely rotate."
msgstr ""
"Une liaison physique qui attache deux corps physiques 2D en un seul point, "
"leur permettant de tourner librement."

msgid ""
"A physics joint that attaches two 2D physics bodies at a single point, "
"allowing them to freely rotate. For example, a [RigidBody2D] can be attached "
"to a [StaticBody2D] to create a pendulum or a seesaw."
msgstr ""
"Un liaison physique qui attache deux corps physiques 2D en un seul point, "
"leur permettant de tourner librement. Par un exemple, un [RigidBody2D] peut "
"être attaché à un [StaticBody2D] pour créer un pendule ou une balançoire."

msgid ""
"The minimum rotation. Only active if [member angular_limit_enabled] is "
"[code]true[/code]."
msgstr ""
"La rotation minimale. Uniquement active quand [member angular_limit_enabled] "
"vaut [code]true[/code]."

msgid ""
"The maximum rotation. Only active if [member angular_limit_enabled] is "
"[code]true[/code]."
msgstr ""
"La rotation minimale. Uniquement active quand [member angular_limit_enabled] "
"vaut [code]true[/code]."

msgid ""
"A physics joint that attaches two 3D physics bodies at a single point, "
"allowing them to freely rotate."
msgstr ""
"Un liaison physique qui attache deux corps physiques 3D en un seul point, "
"leur permettant de tourner librement."

msgid ""
"A physics joint that attaches two 3D physics bodies at a single point, "
"allowing them to freely rotate. For example, a [RigidBody3D] can be attached "
"to a [StaticBody3D] to create a pendulum or a seesaw."
msgstr ""
"Une liaison physique qui attache deux corps physiques 3D en un seul point, "
"leur permettant de tourner librement. Par un exemple, un [RigidBody3D] peut "
"être attaché à un [StaticBody3D] pour créer un pendule ou une balançoire."

msgid ""
"The force with which the pinned objects stay in positional relation to each "
"other. The higher, the stronger."
msgstr ""
"La force avec laquelle les objets attachés restent en position l'un par "
"rapport à l'autre. Plus la valeur est élevée, plus forte est la force."

msgid ""
"The force with which the pinned objects stay in velocity relation to each "
"other. The higher, the stronger."
msgstr ""
"La force avec laquelle les objets attachés restent en vitesse l'un par "
"rapport à l'autre. Plus la valeur est élevée, plus forte est la force."

msgid ""
"If above 0, this value is the maximum value for an impulse that this Joint3D "
"produces."
msgstr ""
"Si au-dessus de 0, cette valeur est la valeur maximale pour une impulsion que "
"ce Joint3D produit."

msgid "A [Cubemap] without image data."
msgstr "Un [Cubemap] sans données d'image."

msgid "A [CubemapArray] without image data."
msgstr "Un [CubemapArray] sans données d'image."

msgid "A plane in Hessian normal form."
msgstr "Un plan en form normale de Hesse."

msgid ""
"Represents a normalized plane equation. [member normal] is the normal of the "
"plane (a, b, c normalized), and [member d] is the distance from the origin to "
"the plane (in the direction of \"normal\"). \"Over\" or \"Above\" the plane "
"is considered the side of the plane towards where the normal is pointing."
msgstr ""
"Représente une équation du plan normalisé. [member normal] est la normale au "
"plan (a, b, c normalisés), et [member d] est la distance de l'origine au plan "
"(dans la direction de « normal »). \"Au-dessus\" ou \"Sur\" le plan est "
"considéré comme le côté du plan vers où la normale pointe."

msgid ""
"Constructs a default-initialized [Plane] with all components set to [code]0[/"
"code]."
msgstr ""
"Construit un [Plane] initialisé par défaut, avec toutes ses composantes "
"définies à [code]0[/code]."

msgid "Constructs a [Plane] as a copy of the given [Plane]."
msgstr "Construit un [Plane] comme une copie du [Plane] donné."

msgid ""
"Creates a plane from the four parameters. The three components of the "
"resulting plane's [member normal] are [param a], [param b] and [param c], and "
"the plane has a distance of [param d] from the origin."
msgstr ""
"Crée un plan à partir des quatre paramètres. Les trois composantes du vecteur "
"[member normal] du plan résultant sont [param a], [param b] et [param c], et "
"le plan est à une distance [param d] de l'origine."

msgid ""
"Creates a plane from the normal vector. The plane will intersect the origin.\n"
"The [param normal] of the plane must be a unit vector."
msgstr ""
"Crée un plan depuis le vecteur normal. Le plan intersectera l'origine.\n"
"Le vecteur [param normal] du plan doit être un vecteur unitaire."

msgid ""
"Creates a plane from the normal vector and the plane's distance from the "
"origin.\n"
"The [param normal] of the plane must be a unit vector."
msgstr ""
"Crée un plan depuis le vecteur normal et la distance du plan à l'origine.\n"
"Le vecteur [param normal] du plan doit être un vecteur unitaire."

msgid ""
"Creates a plane from the normal vector and a point on the plane.\n"
"The [param normal] of the plane must be a unit vector."
msgstr ""
"Crée un plan depuis le vecteur normal et un point du plan.\n"
"Le vecteur [param normal] du plan doit être un vecteur unitaire."

msgid "Creates a plane from the three points, given in clockwise order."
msgstr "Crée un plan à partir de trois points, spécifiés dans le sens horaire."

msgid ""
"Returns the shortest distance from the plane to the position [param point]. "
"If the point is above the plane, the distance will be positive. If below, the "
"distance will be negative."
msgstr ""
"Renvoie la plus courte distance entre le plan et la position [param point]. "
"Si le point est au-dessus du plan, la distance sera positive. S'il est ci-"
"dessous, la distance sera négative."

msgid "Returns the center of the plane."
msgstr "Renvoie le centre du plan."

msgid ""
"Returns [code]true[/code] if [param point] is inside the plane. Comparison "
"uses a custom minimum [param tolerance] threshold."
msgstr ""
"Renvoie [code]true[/code] si le [param point] est à l'intérieur du plan. La "
"comparaison utilise un seuil minimal de [param tolerance] personnalisé."

msgid ""
"Returns the intersection point of the three planes [param b], [param c] and "
"this plane. If no intersection is found, [code]null[/code] is returned."
msgstr ""
"Renvoie le point d'intersection des trois plans [param b], [param c] et ce "
"plan. Si aucune intersection n'est trouvée, [code]null[/code] est renvoyé."

msgid ""
"Returns the intersection point of a ray consisting of the position [param "
"from] and the direction normal [param dir] with this plane. If no "
"intersection is found, [code]null[/code] is returned."
msgstr ""
"Renvoie le point d'intersection d'un rayon composé de la position [param "
"from] et de la direction normale [param dir] avec ce plan. Si aucune "
"intersection n'est trouvée, [code]null[/code] est renvoyé."

msgid ""
"Returns the intersection point of a segment from position [param from] to "
"position [param to] with this plane. If no intersection is found, [code]null[/"
"code] is returned."
msgstr ""
"Renvoie le point d'intersection d'un segment de la position [param from] à la "
"position [param to] avec ce plan. Si aucune intersection n'est trouvée, "
"[code]null[/code] est renvoyé."

msgid ""
"Returns [code]true[/code] if this plane and [param to_plane] are "
"approximately equal, by running [method @GlobalScope.is_equal_approx] on each "
"component."
msgstr ""
"Renvoie [code]true[/code] si ce plan et [param to_plane] sont "
"approximativement égaux, en exécutant [method @GlobalScope.is_equal_approx] "
"sur chaque composante."

msgid ""
"Returns [code]true[/code] if this plane is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Renvoie [code]true[/code] si ce plan est fini, en appelant [method "
"@GlobalScope.is_finite] sur chaque composante."

msgid "Returns [code]true[/code] if [param point] is located above the plane."
msgstr "Renvoie [code]true[/code] si [param point] est situé au-dessus du plan."

msgid ""
"Returns a copy of the plane, with normalized [member normal] (so it's a unit "
"vector). Returns [code]Plane(0, 0, 0, 0)[/code] if [member normal] can't be "
"normalized (it has zero length)."
msgstr ""
"Renvoie une copie du plan, avec le vecteur [member normal] normalisé (c'est "
"donc un vecteur unitaire). Renvoie [code]Plane(0, 0, 0, 0)[/code] si [member "
"normal] ne peut être normalisé (il a une longueur de zéro)."

msgid ""
"Returns the orthogonal projection of [param point] into a point in the plane."
msgstr ""
"Renvoie la projection orthogonale de [param point] sur un point du plan."

msgid ""
"The distance from the origin to the plane, expressed in terms of [member "
"normal] (according to its direction and magnitude). Actual absolute distance "
"from the origin to the plane can be calculated as [code]abs(d) / "
"normal.length()[/code] (if [member normal] has zero length then this [Plane] "
"does not represent a valid plane).\n"
"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
"[code skip-lint]d[/code], while the [code](a, b, c)[/code] coordinates are "
"represented by the [member normal] property."
msgstr ""
"La distance entre l'origine et le plan, exprimée en termes de [member normal] "
"(selon sa direction et son longueur). La distance absolue réelle entre "
"l'origine et le plan peut être calculée avec [code]abs(d) / normal.length()[/"
"code] (si [member normal] a une longueur de zéro alors ce [Plane] ne "
"représente pas un plan valide).\n"
"Dans l'équation scalaire du plan [code]ax + by + cz = d[/code], il s’agit de "
"[code skip-lint]d[/code], tandis que les coordonnées [code](a, b, c)[/code] "
"sont représentées par la propriété [member normal]."

msgid ""
"The normal of the plane, typically a unit vector. Shouldn't be a zero vector "
"as [Plane] with such [member normal] does not represent a valid plane.\n"
"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
"the vector [code](a, b, c)[/code], where [code skip-lint]d[/code] is the "
"[member d] property."
msgstr ""
"La normale au plan, généralement un vecteur unitaire. Ne devrait pas être un "
"vecteur zéro car un [Plane] avec un tel vecteur [member normal] ne représente "
"pas un plan valide.\n"
"Dans l'équation scalaire du plan [code]ax + by + cz = d[/code], c'est le "
"vecteur [code](a, b, c)[/code], où [code skip-lint]d[/code] est la propriété "
"[member d]."

msgid "The X component of the plane's [member normal] vector."
msgstr "Le composant X du vecteur de la [member normal] du plan."

msgid "The Y component of the plane's [member normal] vector."
msgstr "Le composant Y du vecteur de la [member normal] du plan."

msgid "The Z component of the plane's [member normal] vector."
msgstr "Le composant Z du vecteur de la [member normal] du plan."

msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr "Un plan qui s'étend aux axes Y et Z (le vecteur normal pointe vers +X)."

msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr "Un plan qui s'étend aux axes X et Z (le vecteur normal pointe vers +Y)."

msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr "Un plan qui s'étend aux axes X et Y (le vecteur normal pointe vers +Z)."

msgid ""
"Returns [code]true[/code] if the planes are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les plans ne sont pas égaux.\n"
"[b]Note :[/b] En raison d'erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] qui est plus fiable."

msgid ""
"Inversely transforms (multiplies) the [Plane] by the given [Transform3D] "
"transformation matrix.\n"
"[code]plane * transform[/code] is equivalent to "
"[code]transform.affine_inverse() * plane[/code]. See [method "
"Transform3D.affine_inverse]."
msgstr ""
"Transforme (multiplie) de manière inverse le [Plane] par la matrice de "
"transformation [Transform3D] donnée.\n"
"[code]plane * transform[/code] est équivalent à "
"[code]transform.affine_inverse() * plane[/code]. Voir [method "
"Transform3D.affine_inverse]."

msgid ""
"Returns [code]true[/code] if the planes are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les plans sont exactement égaux.\n"
"[b]Note:[/b] En raison d'erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] qui est plus fiable."

msgid ""
"Returns the negative value of the [Plane]. This is the same as writing "
"[code]Plane(-p.normal, -p.d)[/code]. This operation flips the direction of "
"the normal vector and also flips the distance value, resulting in a Plane "
"that is in the same place, but facing the opposite direction."
msgstr ""
"Renvoie la valeur négative du [Plane]. Cela revient à écrire [code]Plane(-"
"p.normal, -p.d)[/code]. Cette opération retourne la direction du vecteur "
"normal et retourne également la valeur de distance, résultant en un plan qui "
"est au même endroit, mais fait face à la direction opposée."

msgid "Class representing a planar [PrimitiveMesh]."
msgstr "Classe représentant un planaire [PrimitiveMesh]."

msgid "Size of the generated plane."
msgstr "Taille du plan généré."

msgid "Number of subdivision along the Z axis."
msgstr "Le nombre de sous-divisions suivant l'axe Z."

msgid "Number of subdivision along the X axis."
msgstr "Le nombre de sous-divisions suivant l'axe X."

msgid "Positional 2D light source."
msgstr "Source de lumière 2D ponctuelle."

msgid ""
"Casts light in a 2D environment. This light's shape is defined by a (usually "
"grayscale) texture."
msgstr ""
"Projette de la lumière dans un environnement 2D. La forme de cette lumière "
"est définie par une texture (généralement en nuances de gris)."

msgid ""
"The height of the light. Used with 2D normal mapping. The units are in "
"pixels, e.g. if the height is 100, then it will illuminate an object 100 "
"pixels away at a 45° angle to the plane."
msgstr ""
"La hauteur de la lumière. Utilisé avec les normal maps 2D. Les unités sont en "
"pixels, par exemple, si la hauteur est de 100, alors elle illuminera un objet "
"à 100 pixels à un angle de 45° avec le plan."

msgid "The offset of the light's [member texture]."
msgstr "Le décalage de la [member texture] de la lumière."

msgid "[Texture2D] used for the light's appearance."
msgstr "La [Texture2D] utilisée pour l'apparence de la lumière."

msgid "The [member texture]'s scale factor."
msgstr "Le facteur d'échelle de la [member texture]."

msgid "A 2D polygon."
msgstr "Un polygone 2D."

msgid ""
"A Polygon2D is defined by a set of points. Each point is connected to the "
"next, with the final point being connected to the first, resulting in a "
"closed polygon. Polygon2Ds can be filled with color (solid or gradient) or "
"filled with a given texture."
msgstr ""
"Un Polygon2D est défini par un ensemble de points. Chaque point est connecté "
"au suivant, le point final étant relié au premier, ce qui résulte en un "
"polygone fermé. Les Polygon2Ds peuvent être remplis avec de la couleur "
"(solide ou gradient) ou une texture donnée."

msgid "Adds a bone with the specified [param path] and [param weights]."
msgstr ""
"Ajoute un os avec le chemin [param path] et les poids [param weights] "
"spécifiés."

msgid "Removes all bones from this [Polygon2D]."
msgstr "Retire tous les os pour ce [Polygon2D]."

msgid "Removes the specified bone from this [Polygon2D]."
msgstr "Retire les os spécifiés de ce [Polygon2D]."

msgid "Returns the number of bones in this [Polygon2D]."
msgstr "Renvoie le nombre d'os dans ce [Polygon2D]."

msgid "Returns the path to the node associated with the specified bone."
msgstr "Renvoie le chemin d’accès au nœud associé à l’os spécifié."

msgid "Returns the weight values of the specified bone."
msgstr "Renvoie les valeurs de poids de l'os spécifié."

msgid "Sets the path to the node associated with the specified bone."
msgstr "Définit le chemin du nœud associé avec l'os spécifié."

msgid "Sets the weight values for the specified bone."
msgstr "Définit les valeurs de poids pour l'os spécifié."

msgid "If [code]true[/code], polygon edges will be anti-aliased."
msgstr "Si [code]true[/code], les bords du polygone seront anti-crénelés."

msgid ""
"The polygon's fill color. If [member texture] is set, it will be multiplied "
"by this color. It will also be the default color for vertices not set in "
"[member vertex_colors]."
msgstr ""
"La couleur de remplissage du polygone. Si [member texture] est définie, elle "
"sera multipliée par cette couleur. Elle sera également la couleur par défaut "
"pour les sommets non définis dans [member vertex_colors]."

msgid "Number of internal vertices, used for UV mapping."
msgstr "Nombre de sommets internes, utilisé pour l'UV mapping."

msgid ""
"Added padding applied to the bounding box when [member invert_enabled] is set "
"to [code]true[/code]. Setting this value too small may result in a \"Bad "
"Polygon\" error."
msgstr ""
"Padding ajouté, appliqué à la boîte délimitante lorsque [member "
"invert_enabled] est défini à [code]true[/code]. Définir cette valeur trop "
"faiblement peut entraîner une erreur \"Bad Polygon\" (Mauvais polygone)."

msgid ""
"If [code]true[/code], the polygon will be inverted, containing the area "
"outside the defined points and extending to the [member invert_border]."
msgstr ""
"Si [code]true[/code], le polygone sera inversé, contenant la zone en dehors "
"des points définis et s'étendant à [member invert_border]."

msgid "The offset applied to each vertex."
msgstr "Le décalage appliqué à chaque sommet."

msgid ""
"The polygon's list of vertices. The final point will be connected to the "
"first."
msgstr ""
"La liste des sommets du polygone. Le dernier point sera connecté au premier."

msgid ""
"The list of polygons, in case more than one is being represented. Every "
"individual polygon is stored as a [PackedInt32Array] where each [int] is an "
"index to a point in [member polygon]. If empty, this property will be "
"ignored, and the resulting single polygon will be composed of all points in "
"[member polygon], using the order they are stored in."
msgstr ""
"La liste des polygones, au cas où plus d'un est représenté. Chaque polygone "
"individuel est stocké en tant que [PackedInt32Array] où chaque [int] est un "
"index vers un point dans [member polygon]. Si vide, cette propriété sera "
"ignorée, et le polygone unique résultant sera composé de tous les points dans "
"[member polygon], en utilisant l'ordre dans lequel ils sont stockés."

msgid ""
"Path to a [Skeleton2D] node used for skeleton-based deformations of this "
"polygon. If empty or invalid, skeletal deformations will not be used."
msgstr ""
"Chemin vers un nœud [Skeleton2D] utilisé pour les déformations basées sur le "
"squelette de ce polygone. Si vide ou invalide, les déformations de squelette "
"ne seront pas utilisées."

msgid "The polygon's fill texture. Use [member uv] to set texture coordinates."
msgstr ""
"La texture de remplissage du polygone. Utilisez [member uv] pour définir les "
"coordonnées de texture."

msgid ""
"Amount to offset the polygon's [member texture]. If set to [code]Vector2(0, 0)"
"[/code], the texture's origin (its top-left corner) will be placed at the "
"polygon's position."
msgstr ""
"Décalage de la [member texture] du polygone. Si définie à [code]Vector2(0, 0)"
"[/code], l'origine de la texture (son coin supérieur gauche) sera placée à la "
"position du polygone."

msgid "The texture's rotation in radians."
msgstr "La rotation de la texture en radians."

msgid ""
"Amount to multiply the [member uv] coordinates when using [member texture]. "
"Larger values make the texture smaller, and vice versa."
msgstr ""
"Montant pour multiplier les coordonnées [member uv] lors de l'utilisation "
"d'une [member texture]. Les valeurs plus grandes rendent la texture plus "
"petite, et vice versa."

msgid ""
"Texture coordinates for each vertex of the polygon. There should be one UV "
"value per polygon vertex. If there are fewer, undefined vertices will use "
"[code]Vector2(0, 0)[/code]."
msgstr ""
"Coordonnées de texture pour chaque sommet du polygone. Il devrait y avoir une "
"valeur UV par sommet du polygone. S'il y en a moins, les sommets indéfinis "
"utiliseront [code]Vector2(0, 0)[/code]."

msgid ""
"Color for each vertex. Colors are interpolated between vertices, resulting in "
"smooth gradients. There should be one per polygon vertex. If there are fewer, "
"undefined vertices will use [member color]."
msgstr ""
"Couleur pour chaque sommet. Les couleurs sont interpolées entre les sommets, "
"résultant en des gradients lisses. Il devrait y en avoir une par sommet du "
"polygone. S'il y en a moins, les sommets indéfinis utiliseront [member color]."

msgid ""
"Flat 2D polygon shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Forme de polygone 2D plat à utiliser avec l'occlusion culling dans "
"[OccluderInstance3D]."

msgid ""
"[PolygonOccluder3D] stores a polygon shape that can be used by the engine's "
"occlusion culling system. When an [OccluderInstance3D] with a "
"[PolygonOccluder3D] is selected in the editor, an editor will appear at the "
"top of the 3D viewport so you can add/remove points. All points must be "
"placed on the same 2D plane, which means it is not possible to create "
"arbitrary 3D shapes with a single [PolygonOccluder3D]. To use arbitrary 3D "
"shapes as occluders, use [ArrayOccluder3D] or [OccluderInstance3D]'s baking "
"feature instead.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[PolygonOccluder3D] stocke une forme de polygone qui peut être utilisée par "
"le système d'occlusion culling du moteur. Quand un [OccluderInstance3D] avec "
"un [PolygonOccluder3D] est sélectionné dans l'éditeur, un éditeur va "
"apparaître en haut du viewport3D afin que vous puissiez ajouter/supprimer des "
"points. Tous les points doivent être placés dans le même plan 2D, ce qui "
"signifie qu'il n'est pas possible de créer des formes 3D arbitraires avec un "
"seul [PolygonOccluder3D]. Pour utiliser des formes 3D arbitraires comme "
"occulteurs, utilisez [ArrayOccluder3D] ou la fonctionnalité de pré-calcul de "
"[OccluderInstance3D] à la place.\n"
"Voir la documentation d'[OccluderInstance3D] pour les instructions sur la "
"mise en place de l'occlusion culling."

msgid ""
"The polygon to use for occlusion culling. The polygon can be convex or "
"concave, but it should have as few points as possible to maximize "
"performance.\n"
"The polygon must [i]not[/i] have intersecting lines. Otherwise, triangulation "
"will fail (with an error message printed)."
msgstr ""
"Le polygone à utiliser pour l'occlusion culling. Le polygone peut être "
"convexe ou concave, mais il devrait avoir le moins de points possible pour "
"maximiser les performances.\n"
"Le polygone ne doit [i]pas[/i] avoir des lignes qui s'intersectent. Sinon, la "
"triangulation va échouer (avec un message d'erreur affiché)."

msgid ""
"Returns [code]true[/code] if [param point] falls inside the polygon area.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"print(polygon_path_finder.is_point_inside(Vector2(0.2, 0.2))) # Prints true\n"
"print(polygon_path_finder.is_point_inside(Vector2(1.0, 1.0))) # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(0.2f, 0.2f))); // Prints "
"True\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(1.0f, 1.0f))); // Prints "
"False\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie [code]true[/code] si [param point] tombe dans la zone du polygone.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"print(polygon_path_finder.is_point_inside(Vector2(0.2, 0.2))) # Prints true\n"
"print(polygon_path_finder.is_point_inside(Vector2(1.0, 1.0))) # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(0.2f, 0.2f))); // Prints "
"True\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(1.0f, 1.0f))); // Prints "
"False\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Sets up [PolygonPathFinder] with an array of points that define the vertices "
"of the polygon, and an array of indices that determine the edges of the "
"polygon.\n"
"The length of [param connections] must be even, returns an error if odd.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Configure [PolygonPathFinder] avec un tableau de points qui définissent les "
"sommets du polygone, et un tableau d'indices qui déterminent les bords du "
"polygone.\n"
"La longueur des [param connections] doit être paire, renvoie une erreur si "
"impaire.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Base class for contextual windows and panels with fixed position."
msgstr ""
"Classe de base pour les fenêtres et panneaux contextuels avec une position "
"fixe."

msgid "Emitted when the popup is hidden."
msgstr "Émis quand la fenêtre contextuelle est masquée."

msgid ""
"[PopupMenu] is a modal window used to display a list of options. Useful for "
"toolbars and context menus.\n"
"The size of a [PopupMenu] can be limited by using [member Window.max_size]. "
"If the height of the list of items is larger than the maximum height of the "
"[PopupMenu], a [ScrollContainer] within the popup will allow the user to "
"scroll the contents. If no maximum size is set, or if it is set to [code]0[/"
"code], the [PopupMenu] height will be limited by its parent rect.\n"
"All [code]set_*[/code] methods allow negative item indices, i.e. [code]-1[/"
"code] to access the last item, [code]-2[/code] to select the second-to-last "
"item, and so on.\n"
"[b]Incremental search:[/b] Like [ItemList] and [Tree], [PopupMenu] supports "
"searching within the list while the control is focused. Press a key that "
"matches the first letter of an item's name to select the first item starting "
"with the given letter. After that point, there are two ways to perform "
"incremental search: 1) Press the same key again before the timeout duration "
"to select the next item starting with the same letter. 2) Press letter keys "
"that match the rest of the word before the timeout duration to match to "
"select the item in question directly. Both of these actions will be reset to "
"the beginning of the list if the timeout duration has passed since the last "
"keystroke was registered. You can adjust the timeout duration by changing "
"[member ProjectSettings.gui/timers/incremental_search_max_interval_msec].\n"
"[b]Note:[/b] The ID values used for items are limited to 32 bits, not full 64 "
"bits of [int]. This has a range of [code]-2^32[/code] to [code]2^32 - 1[/"
"code], i.e. [code]-2147483648[/code] to [code]2147483647[/code]."
msgstr ""
"[PopupMenu] est une fenêtre modale utilisée pour afficher une liste "
"d'options. Utile pour les barres d'outils et les menus contextuels.\n"
"La taille d'un [PopupMenu] peut être limitée en utilisant [member "
"Window.max_size]. Si la hauteur de la liste des éléments est supérieure à la "
"hauteur maximale du [PopupMenu], un [ScrollContainer] dans le popup permettra "
"à l'utilisateur de faire défiler le contenu. Si aucune taille maximale n'est "
"définie, ou si elle est définie à [code]0[/code], la hauteur de [PopupMenu] "
"sera limitée par son rect parent.\n"
"Toutes les méthodes [code]set_*[/code] permettent des indices d'éléments "
"négatifs, c'est-à-dire [code]-1[/code] pour accéder au dernier élément, "
"[code]-2[/code] pour sélectionner le deuxième élément, et ainsi de suite.\n"
"[b]Recherche incrémentale :[/b] Comme [ItemList] et [Tree], [PopupMenu] prend "
"en charge la recherche dans la liste pendant que le contrôle est en focus. "
"Appuyez sur une touche qui correspond à la première lettre du nom d'un "
"article pour sélectionner le premier élément à partir de la lettre donnée. "
"Après ce point, il y a deux façons d'effectuer la recherche incrémentale : 1) "
"Appuyez à nouveau sur la même touche avant la fin de la durée d'attente pour "
"sélectionner l'élément suivant en commençant par la même lettre. 2) Appuyez "
"sur les touches de lettre qui correspondent au reste du mot avant la fin de "
"la durée d'attente pour sélectionner l'élément en question directement. Ces "
"deux actions seront réinitialisées jusqu'au début de la liste si la durée "
"d'attente est passée depuis que la dernière frappe a été enregistrée. Vous "
"pouvez ajuster la durée d'expiration en changeant [member ProjectSettings.gui/"
"timers/incremental_search_max_interval_msec].\n"
"[b]Note :[/b] Les valeurs d'identification utilisées pour les articles sont "
"limitées en 32 bits, pas les 64 bits de [int]. Il s'agit d'une plage de "
"[code]-2^32[/code] à [code]2^32 - 1[/code], c'est-à-dire [code]-2147483648[/"
"code] à [code]2147483647[/code]."

msgid "Same as [method add_icon_check_item], but uses a radio check button."
msgstr "Pareil que [method add_icon_check_item], mais utilise un bouton radio."

msgid "Same as [method add_icon_check_shortcut], but uses a radio check button."
msgstr ""
"Pareil que [method add_icon_check_shortcut], mais utilise un bouton radio."

msgid "Prefer using [method add_submenu_node_item] instead."
msgstr "Préférez utiliser [method add_submenu_node_item] à la place."

msgid ""
"Returns the index of the currently focused item. Returns [code]-1[/code] if "
"no item is focused."
msgstr ""
"Renvoie la position de l’élément qui a actuellement le focus. Ou renvoie "
"[code]-1[/code] si aucun n'a le focus."

msgid ""
"Returns the metadata of the specified item, which might be of any type. You "
"can set it with [method set_item_metadata], which provides a simple way of "
"assigning context data to items."
msgstr ""
"Renvoie les métadonnées de l'élément spécifié, qui peuvent être de n'importe "
"quel type. Vous pouvez les définir avec [method set_item_metadata], qui "
"fournit un moyen simple d'affecter des données de contexte aux éléments."

msgid "Returns the state of the item at the given [param index]."
msgstr "Renvoie l'état de l'élément à l'[param index] donné."

msgid "Prefer using [method get_item_submenu_node] instead."
msgstr "Préférez utiliser [method get_item_submenu_node] à la place."

msgid ""
"Sets the state of a multistate item. See [method add_multistate_item] for "
"details."
msgstr ""
"Définit l'état d'un objet multi-états. Voir [method add_multistate_item] pour "
"plus de détails."

msgid "Prefer using [method set_item_submenu_node] instead."
msgstr "Préférez utiliser [method set_item_submenu_node] à la place."

msgid ""
"Cycle to the next state of a multistate item. See [method "
"add_multistate_item] for details."
msgstr ""
"Cycle vers l'état suivant d'un objet multi-états. Voir [method "
"add_multistate_item] pour plus de détails."

msgid "If [code]true[/code], allows navigating [PopupMenu] with letter keys."
msgstr ""
"Si [code]true[/code], permet de naviguer dans le [PopupMenu] avec des touches "
"alphabétiques."

msgid ""
"If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button "
"is selected."
msgstr ""
"Si [code]true[/code], masque le [PopupMenu] quand une coche ou un bouton "
"radio est sélectionné."

msgid "If [code]true[/code], hides the [PopupMenu] when an item is selected."
msgstr ""
"Si [code]true[/code], cache le [PopupMenu] lorsqu'un élément est sélectionné."

msgid ""
"If [code]true[/code], hides the [PopupMenu] when a state item is selected."
msgstr ""
"Si [code]true[/code], cache le [PopupMenu] lorsqu'un élément d'état est "
"sélectionné."

msgid "The default text [Color] for menu items' names."
msgstr "La [Color] par défaut du texte pour les noms des éléments du menu."

msgid "[Color] used for disabled menu items' text."
msgstr "La [Color] utilisée pour le texte des éléments désactivés du menu."

msgid "[Color] used for the hovered text."
msgstr "La [Color] utilisée pour le texte survolé."

msgid "The horizontal space between the item's elements."
msgstr "L'espace horizontal entre les objets de l'élément."

msgid "The vertical space between each menu item."
msgstr "L’espace vertical entre chaque élément de menu."

msgid "[Font] used for the menu items."
msgstr "La [Font] utilisée pour les éléments du menu."

msgid "[Font] used for the labeled separator."
msgstr "La [Font] utilisée pour le séparateur avec texte."

msgid "[StyleBox] displayed when the [PopupMenu] item is hovered."
msgstr "Le [StyleBox] affiché quand un élément d'un [PopupMenu] est survolé."

msgid ""
"[StyleBox] for the left side of labeled separator. See [method add_separator]."
msgstr ""
"La [StyleBox] pour le côté gauche du séparateur avec label. Voir [method "
"add_separator]."

msgid ""
"[StyleBox] for the right side of labeled separator. See [method "
"add_separator]."
msgstr ""
"La [StyleBox] pour le côté droit du séparateur avec label. Voir [method "
"add_separator]."

msgid "[StyleBox] used for the separators. See [method add_separator]."
msgstr ""
"Le [StyleBox] utilisé pour les séparateurs. Voir [method add_separator]."

msgid "Return the compression mode used (valid after initialized)."
msgstr "Renvoie le mode de compression utilisé (valide après l'initialisation)."

msgid "Return the image format used (valid after initialized)."
msgstr "Renvoie le format d'image utilisé (valide après l'initialisation)."

msgid "The current [Material] of the primitive mesh."
msgstr "Le [Material] actuel du maillage primitif."

msgid "Class representing a prism-shaped [PrimitiveMesh]."
msgstr "Classe représentant un prisme en forme de [PrimitiveMesh]."

msgid "Size of the prism."
msgstr "Taille du prisme."

msgid "Number of added edge loops along the Z axis."
msgstr "Nombre de boucles d’arêtes ajoutées le long de l'axe Z."

msgid "Number of added edge loops along the Y axis."
msgstr "Nombre de boucles d’arêtes ajoutées le long de l'axe Y."

msgid "Number of added edge loops along the X axis."
msgstr "Nombre de boucles d’arêtes ajoutées le long de l'axe X."

msgid "A material that defines a simple sky for a [Sky] resource."
msgstr "Un matériau qui définit un ciel simple pour une ressource [Sky]."

msgid ""
"[ProceduralSkyMaterial] provides a way to create an effective background "
"quickly by defining procedural parameters for the sun, the sky and the "
"ground. The sky and ground are defined by a main color, a color at the "
"horizon, and an easing curve to interpolate between them. Suns are described "
"by a position in the sky, a color, and a max angle from the sun at which the "
"easing curve ends. The max angle therefore defines the size of the sun in the "
"sky.\n"
"[ProceduralSkyMaterial] supports up to 4 suns, using the color, and energy, "
"direction, and angular distance of the first four [DirectionalLight3D] nodes "
"in the scene. This means that the suns are defined individually by the "
"properties of their corresponding [DirectionalLight3D]s and globally by "
"[member sun_angle_max] and [member sun_curve].\n"
"[ProceduralSkyMaterial] uses a lightweight shader to draw the sky and is "
"therefore suited for real-time updates. This makes it a great option for a "
"sky that is simple and computationally cheap, but unrealistic. If you need a "
"more realistic procedural option, use [PhysicalSkyMaterial]."
msgstr ""
"[ProceduralSkyMaterial] fournit un moyen de créer un arrière-plan efficace "
"rapidement en définissant des paramètres procéduraux pour le soleil, le ciel "
"et le sol. Le ciel et le sol sont définis par une couleur principale, une "
"couleur à l'horizon, et une courbe d'assouplissement pour interpoler entre "
"eux. Les soleils sont décrits par une position dans le ciel, une couleur, et "
"un angle maximal depuis le soleil où se termine la courbe d'assoupissement. "
"L'angle maximal définit donc la taille du soleil dans le ciel.\n"
"[ProceduralSkyMaterial] prend en charge jusqu'à 4 soleils, en utilisant la "
"couleur, et l'énergie, la direction et la distance angulaire des quatre "
"premiers nœuds [DirectionalLight3D] dans la scène. Cela signifie que les "
"soleils sont définis individuellement par les propriétés de leurs "
"[DirectionalLight3D] et globalement par [member sun_angle_max] et [member "
"sun_curve].\n"
"[ProceduralSkyMaterial] utilise un shader léger pour dessiner le ciel et est "
"donc adapté aux mises à jour en temps réel. Cela en fait une excellente "
"option pour un ciel simple et peu cher en calculs, mais irréaliste. Si vous "
"avez besoin d'une option procédurale plus réaliste, utilisez "
"[PhysicalSkyMaterial]."

msgid ""
"Color of the ground at the bottom. Blends with [member ground_horizon_color]."
msgstr "Couleur du sol en bas. Est mélangé avec [member ground_horizon_color]."

msgid ""
"How quickly the [member ground_horizon_color] fades into the [member "
"ground_bottom_color]."
msgstr ""
"La rapidité avec laquelle la couleur [member ground_horizon_color] change en "
"[member ground_bottom_color]."

msgid ""
"Multiplier for ground color. A higher value will make the ground brighter."
msgstr ""
"Multiplicateur pour la couleur du sol. Une valeur plus élevée rendra le sol "
"plus lumineux."

msgid ""
"Color of the ground at the horizon. Blends with [member ground_bottom_color]."
msgstr "Couleur du sol à l'horizon. Mélangé avec [member ground_bottom_color]."

msgid ""
"The sky cover texture to use. This texture must use an equirectangular "
"projection (similar to [PanoramaSkyMaterial]). The texture's colors will be "
"[i]added[/i] to the existing sky color, and will be multiplied by [member "
"sky_energy_multiplier] and [member sky_cover_modulate]. This is mainly suited "
"to displaying stars at night, but it can also be used to display clouds at "
"day or night (with a non-physically-accurate look)."
msgstr ""
"La texture de couverture du ciel à utiliser. Cette texture doit utiliser une "
"projection équi-rectangulaire (similaire à [PanoramaSkyMaterial]). Les "
"couleurs de la texture seront [i]ajoutées[/i] à la couleur du ciel existante, "
"et seront multipliées par [member sky_energy_multiplier] et [member "
"sky_cover_modulate]. Ceci est principalement adapté à l'affichage d'étoiles "
"de nuit, mais il peut également être utilisé pour afficher des nuages de jour "
"ou de nuit (avec un aspect non physiquement valide)."

msgid ""
"The tint to apply to the [member sky_cover] texture. This can be used to "
"change the sky cover's colors or opacity independently of the sky energy, "
"which is useful for day/night or weather transitions. Only effective if a "
"texture is defined in [member sky_cover]."
msgstr ""
"La teinte à appliquer à la texture [member sky_cover]. Cela peut être utilisé "
"pour changer les couleurs ou l'opacité de la couverture du ciel "
"indépendamment de l'énergie du ciel, ce qui est utile pour les transitions "
"jour/nuit ou météo. Seulement effectif si une texture est définie dans "
"[member sky_cover]."

msgid ""
"How quickly the [member sky_horizon_color] fades into the [member "
"sky_top_color]."
msgstr ""
"La rapidité avec laquelle la couleur [member sky_horizon_color] change en "
"[member sky_top_color]."

msgid "Multiplier for sky color. A higher value will make the sky brighter."
msgstr ""
"Multiplicateur pour la couleur du ciel. Une valeur plus élevée rendra le ciel "
"plus clair."

msgid "Color of the sky at the horizon. Blends with [member sky_top_color]."
msgstr "Couleur du ciel à l'horizon. Se mélange avec [member sky_top_color]."

msgid "Color of the sky at the top. Blends with [member sky_horizon_color]."
msgstr "Couleur du ciel en haut. Se mélange avec [member sky_horizon_color]."

msgid "Distance from center of sun where it fades out completely."
msgstr "Distance depuis le centre du soleil où il s'éteint complètement."

msgid ""
"How quickly the sun fades away between the edge of the sun disk and [member "
"sun_angle_max]."
msgstr ""
"À point le soleil s'éteint rapidement entre le bord du disque du soleil et "
"[member sun_angle_max]."

msgid "A control used for visual representation of a percentage."
msgstr "Un contrôle utilisé pour représenter visuellement un pourcentage."

msgid ""
"A control used for visual representation of a percentage. Shows the fill "
"percentage in the center. Can also be used to show indeterminate progress. "
"For more fill modes, use [TextureProgressBar] instead."
msgstr ""
"Un contrôle utilisé pour représenter visuellement un pourcentage. Affiche le "
"pourcentage de remplissage au centre. Peut également être utilisé pour "
"afficher une progression indéterminée. Pour plus de modes de remplissage, "
"utilisez [TextureProgressBar] à la place."

msgid ""
"If [code]false[/code], the [member indeterminate] animation will be paused in "
"the editor."
msgstr ""
"Si [code]false[/code], l'animation [member indeterminate] sera mise en pause "
"dans l'éditeur."

msgid "The fill direction. See [enum FillMode] for possible values."
msgstr ""
"La direction de remplissage. Voir [enum FillMode] pour les valeurs possibles."

msgid ""
"When set to [code]true[/code], the progress bar indicates that something is "
"happening with an animation, but does not show the fill percentage or value."
msgstr ""
"Lorsque défini à [code]true[/code], la barre de progression indique que "
"quelque chose se passe avec une animation, mais ne montre pas le pourcentage "
"ou la valeur du remplissage."

msgid "If [code]true[/code], the fill percentage is displayed on the bar."
msgstr ""
"Si [code]true[/code], le pourcentage de progression (de remplissage) est "
"affiché dans la barre."

msgid ""
"The progress bar fills from begin to end horizontally, according to the "
"language direction. If [method Control.is_layout_rtl] returns [code]false[/"
"code], it fills from left to right, and if it returns [code]true[/code], it "
"fills from right to left."
msgstr ""
"La barre de progression se remplit du début à la fin horizontalement, selon "
"la direction de la langue. Si [method Control.is_layout_rtl] renvoie "
"[code]false[/code], elle se remplit de gauche à droite et s'il renvoie "
"[code]true[/code], elle se remplit de droite à gauche."

msgid ""
"The progress bar fills from end to begin horizontally, according to the "
"language direction. If [method Control.is_layout_rtl] returns [code]false[/"
"code], it fills from right to left, and if it returns [code]true[/code], it "
"fills from left to right."
msgstr ""
"La barre de progression se remplit de la fin au début horizontalement, selon "
"la direction de la langue. Si [method Control.is_layout_rtl] renvoie "
"[code]false[/code], elle se remplit de droite à gauche et s'il renvoie "
"[code]true[/code], elle se remplit de gauche à droite."

msgid "The progress fills from top to bottom."
msgstr "La barre de progression se remplit de haut en bas."

msgid "The progress fills from bottom to top."
msgstr "La barre de progression se remplit de bas en haut."

msgid "The color of the text."
msgstr "La couleur du texte."

msgid "The tint of text outline of the [ProgressBar]."
msgstr "La teinte du contour du texte de la [ProgressBar]."

msgid ""
"Font used to draw the fill percentage if [member show_percentage] is "
"[code]true[/code]."
msgstr ""
"Police utilisée pour afficher le pourcentage de remplissage si [member "
"show_percentage] vaut [code]true[/code]."

msgid ""
"Font size used to draw the fill percentage if [member show_percentage] is "
"[code]true[/code]."
msgstr ""
"Taille de police utilisée pour afficher le pourcentage de remplissage si "
"[member show_percentage] vaut [code]true[/code]."

msgid "The style of the background."
msgstr "Le style de l’arrière-plan."

msgid "The style of the progress (i.e. the part that fills the bar)."
msgstr "Le style de progression (c'est-à-dire la partie qui remplis la barre)."

msgid "A 4×4 matrix for 3D projective transformations."
msgstr "Une matrice 4×4 pour les transformations projectives 3D."

msgid ""
"A 4×4 matrix used for 3D projective transformations. It can represent "
"transformations such as translation, rotation, scaling, shearing, and "
"perspective division. It consists of four [Vector4] columns.\n"
"For purely linear transformations (translation, rotation, and scale), it is "
"recommended to use [Transform3D], as it is more performant and requires less "
"memory.\n"
"Used internally as [Camera3D]'s projection matrix."
msgstr ""
"Une matrice 4×4 utilisée pour les transformations projectives 3D. Elle peut "
"représenter des transformations telles que la translation, la rotation, "
"l'échelle, le cisaillement et la division de perspective. Elle se compose de "
"quatre colonnes [Vector4].\n"
"Pour des transformations purement linéaires (translation, rotation et "
"échelle), il est recommandé d'utiliser [Transform3D], car il est plus "
"performant et nécessite moins de mémoire.\n"
"Utilisé de manière interne comme matrice de projection pour [Camera3D]."

msgid ""
"Constructs a default-initialized [Projection] identical to [constant "
"IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Projection] identical to [constant "
"ZERO]."
msgstr ""
"Construit une [Projection] initialisé par défaut à [constant IDENTITY].\n"
"[b]Note :[/b] En C#, cela construit une [Projection] identique à [constant "
"ZERO]."

msgid "Constructs a [Projection] as a copy of the given [Projection]."
msgstr "Construit une [Projection] comme une copie de la [Projection] donnée."

msgid "Constructs a Projection as a copy of the given [Transform3D]."
msgstr "Construit une Projection comme une copie de la [Transform3D] donnée."

msgid "Constructs a Projection from four [Vector4] values (matrix columns)."
msgstr ""
"Construit une Projection à partir de quatre valeurs [Vector4] (colonnes de la "
"matrice)."

msgid ""
"Creates a new [Projection] that projects positions from a depth range of "
"[code]-1[/code] to [code]1[/code] to one that ranges from [code]0[/code] to "
"[code]1[/code], and flips the projected positions vertically, according to "
"[param flip_y]."
msgstr ""
"Crée une nouvelle [Projection] qui projette des positions allant d'une plage "
"de profondeur de [code]-1[/code] à [code]1[/code] à une plage qui va de "
"[code]0[/code] à [code]1[/code] et retourne les positions projetées "
"verticalement, selon [param flip_y]."

msgid ""
"Creates a new [Projection] for projecting positions onto a head-mounted "
"display with the given X:Y aspect ratio, distance between eyes, display "
"width, distance to lens, oversampling factor, and depth clipping planes.\n"
"[param eye] creates the projection for the left eye when set to 1, or the "
"right eye when set to 2."
msgstr ""
"Crée une nouvelle [Projection] pour la projection de positions sur un écran "
"monté sur la tête (Head Mounted Display) avec le rapport d'aspect X:Y, la "
"distance entre les yeux, la largeur de l'écran, la distance à la lentille, le "
"facteur de suréchantillonnage et les plans de coupe de profondeur donnés.\n"
"[param eye] crée la projection de l'œil gauche lorsqu'elle est fixée à 1, ou "
"l'œil droit lorsqu'elle est fixée à 2."

msgid ""
"Creates a new [Projection] that projects positions in a frustum with the "
"given clipping planes."
msgstr ""
"Crée une nouvelle [Projection] qui projette des positions dans un frustum "
"avec les plans de coupe donnés."

msgid ""
"Creates a new [Projection] that projects positions in a frustum with the "
"given size, X:Y aspect ratio, offset, and clipping planes.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Crée un nouveau [Projection] qui projette des positions dans un frustum avec "
"la taille, le rapport d'aspect X:Y, le décalage, et les plans de coupe "
"donnés.\n"
"[param flip_fov] détermine si le champ de vision de la projection est "
"renversé sur sa diagonale."

msgid ""
"Creates a new [Projection] that projects positions into the given [Rect2]."
msgstr ""
"Crée une nouvelle [Projection] qui projette des positions sur le [Rect2] "
"donné."

msgid ""
"Creates a new [Projection] that projects positions using an orthogonal "
"projection with the given clipping planes."
msgstr ""
"Crée une nouvelle [Projection] qui projette des positions à l'aide d'une "
"projection orthogonale avec les plans de coupe donnés."

msgid ""
"Creates a new [Projection] that projects positions using an orthogonal "
"projection with the given size, X:Y aspect ratio, and clipping planes.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Crée une nouvelle [Projection] qui projette des positions à l'aide d'une "
"projection orthogonale avec la taille, le rapport d'aspect X:Y et les plans "
"de coupe donnés.\n"
"[param flip_fov] détermine si le champ de vision de la projection est inversé "
"sur sa diagonale."

msgid ""
"Creates a new [Projection] that projects positions using a perspective "
"projection with the given Y-axis field of view (in degrees), X:Y aspect "
"ratio, and clipping planes.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Crée une nouvelle [Projection] qui projette des positions à l'aide d'une "
"projection de perspective avec le champ de vision en Y (en degrés), le "
"rapport d'aspect X:Y et les plans de coupe donnés.\n"
"[param flip_fov] détermine si le champ de vision de la projection est inversé "
"sur sa diagonale."

msgid ""
"Creates a new [Projection] that projects positions using a perspective "
"projection with the given Y-axis field of view (in degrees), X:Y aspect "
"ratio, and clipping distances. The projection is adjusted for a head-mounted "
"display with the given distance between eyes and distance to a point that can "
"be focused on.\n"
"[param eye] creates the projection for the left eye when set to 1, or the "
"right eye when set to 2.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Crée une nouvelle [Projection] qui projette des positions en utilisant une "
"projection de perspective avec le champ de vision en Y (en degrés), le "
"rapport d'aspect X:Y et les distances de coupe donnés. La projection est "
"ajustée pour un écran monté sur la tête (Head Mounted Display) avec la "
"distance entre les yeux et la distance à un point sur lequel se focaliser "
"donnés.\n"
"[param eye] crée la projection de l'œil gauche lorsqu'elle est fixée à 1, ou "
"l'œil droit lorsqu'elle est fixée à 2.\n"
"[param flip_fov] détermine si le champ de vision de la projection est inversé "
"sur sa diagonale."

msgid ""
"Returns a scalar value that is the signed factor by which areas are scaled by "
"this matrix. If the sign is negative, the matrix flips the orientation of the "
"area.\n"
"The determinant can be used to calculate the invertibility of a matrix or "
"solve linear systems of equations involving the matrix, among other "
"applications."
msgstr ""
"Renvoie une valeur scalaire qui est le facteur signé par lequel les aires "
"sont redimensionnées par cette matrice. Si le signe est négatif, la matrice "
"retourne l’orientation de la zone.\n"
"Le déterminant peut être utilisé pour calculer l’inversibilité d’une matrice "
"ou pour résoudre des systèmes linéaires d'équations impliquant la matrice, "
"ainsi que d’autres applications."

msgid ""
"Returns a copy of this [Projection] with the signs of the values of the Y "
"column flipped."
msgstr ""
"Renvoie une copie de cette [Projection] avec les signes des valeurs de la "
"colonne Y retournés."

msgid "Returns the X:Y aspect ratio of this [Projection]'s viewport."
msgstr "Renvoie le rapport d'aspect X:Y de la vue de cette [Projection]."

msgid ""
"Returns the dimensions of the far clipping plane of the projection, divided "
"by two."
msgstr ""
"Renvoie les dimensions du plan de coupe lointain de la projection, divisées "
"par deux."

msgid "Returns the horizontal field of view of the projection (in degrees)."
msgstr "Renvoie le champ de vision horizontal de la projection (en degrés)."

msgid "Stores globally-accessible variables."
msgstr "Stocke les variables globales."

msgid "Project Settings"
msgstr "Paramètres du projet"

msgid "Clears the whole configuration (not recommended, may break things)."
msgstr ""
"Efface complètement la configuration (non recommandé, peut casser des choses)."

msgid ""
"Returns an [Array] of registered global classes. Each global class is "
"represented as a [Dictionary] that contains the following entries:\n"
"- [code]base[/code] is a name of the base class;\n"
"- [code]class[/code] is a name of the registered global class;\n"
"- [code]icon[/code] is a path to a custom icon of the global class, if it has "
"any;\n"
"- [code]language[/code] is a name of a programming language in which the "
"global class is written;\n"
"- [code]path[/code] is a path to a file containing the global class.\n"
"[b]Note:[/b] Both the script and the icon paths are local to the project "
"filesystem, i.e. they start with [code]res://[/code]."
msgstr ""
"Renvoie un [Array] des classes globales enregistrées. Chaque classe globale "
"est représentée comme un [Dictionary] qui contient les entrées suivantes :\n"
"- [code]base[/code] est un nom de la classe de base;\n"
"- [code]class[/code] est un nom de la classe globale enregistrée;\n"
"- [code]icon[/code] est un chemin vers une icône personnalisée de la classe "
"globale, s'il existe;\n"
"- [code]language[/code] est un nom d'un langage de programmation dans lequel "
"la classe globale est écrite;\n"
"- [code]path[/code] est un chemin vers un fichier contenant la classe "
"globale.\n"
"[b]Note :[/b] Le script et les chemins d'icônes sont locaux au système de "
"fichiers de projet, c'est-à-dire qu'ils commencent par [code]res://[/code]."

msgid ""
"Returns the order of a configuration value (influences when saved to the "
"config file)."
msgstr ""
"Renvoie l'ordre d'une valeur de configuration (influence l'ordre lorsque le "
"paramètre est sauvegardé dans le fichier de configuration)."

msgid ""
"Returns the value of the setting identified by [param name]. If the setting "
"doesn't exist and [param default_value] is specified, the value of [param "
"default_value] is returned. Otherwise, [code]null[/code] is returned.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting(\"application/config/name\"))\n"
"print(ProjectSettings.get_setting(\"application/config/custom_description\", "
"\"No description specified.\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/name\"));\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/"
"custom_description\", \"No description specified.\"));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method doesn't take potential feature overrides into "
"account automatically. Use [method get_setting_with_override] to handle "
"seamlessly.\n"
"See also [method has_setting] to check whether a setting exists."
msgstr ""
"Renvoie la valeur du paramètre identifié par le nom [param name]. Si le "
"paramètre n'existe pas et [param default_value] est spécifié, la valeur de "
"[param default_value] est renvoyé. Sinon, [code]null[/code] est renvoyé.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting(\"application/config/name\"))\n"
"print(ProjectSettings.get_setting(\"application/config/custom_description\", "
"\"Pas de description spécifiée.\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/name\"));\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/"
"custom_description\", \"Pas de description spécifiée.\"));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Cette méthode ne prend pas en compte automatiquement les "
"potentielles redéfinition de fonctionnalité. Utilisez [method "
"get_setting_with_override] pour gérer cela facilement.\n"
"Voir aussi [method has_setting] pour vérifier si un paramètre existe."

msgid ""
"Similar to [method get_setting], but applies feature tag overrides if any "
"exists and is valid.\n"
"[b]Example:[/b] If the setting override [code]\"application/config/"
"name.windows\"[/code] exists, and the following code is executed on a "
"[i]Windows[/i] operating system, the overridden setting is printed instead:\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting_with_override(\"application/config/"
"name\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSettingWithOverride(\"application/config/"
"name\"));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Semblable à [method get_setting], mais applique les tags de fonctionnalité si "
"des tags valides existent.\n"
"[b]Exemple :[/b] Si la redéfinition du paramètre [code]\"application/config/"
"name.windows\"[/code] existe et que le code suivant est exécuté sur un "
"système d'exploitation [i]Windows[/i], le paramètre redéfini est affiché à la "
"place:\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting_with_override(\"application/config/"
"name\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSettingWithOverride(\"application/config/"
"name\"));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Similar to [method get_setting_with_override], but applies feature tag "
"overrides instead of current OS features."
msgstr ""
"Similaire à [method get_setting_with_override], mais applique une "
"redéfinition des balises de fonctionnalité au lieu des fonctionnalité de l'OS "
"actuel."

msgid ""
"Returns the absolute, native OS path corresponding to the localized [param "
"path] (starting with [code]res://[/code] or [code]user://[/code]). The "
"returned path will vary depending on the operating system and user "
"preferences. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in "
"Godot projects[/url] to see what those paths convert to. See also [method "
"localize_path].\n"
"[b]Note:[/b] [method globalize_path] with [code]res://[/code] will not work "
"in an exported project. Instead, prepend the executable's base directory to "
"the path when running from an exported project:\n"
"[codeblock]\n"
"var path = \"\"\n"
"if OS.has_feature(\"editor\"):\n"
"\t# Running from an editor binary.\n"
"\t# `path` will contain the absolute path to `hello.txt` located in the "
"project root.\n"
"\tpath = ProjectSettings.globalize_path(\"res://hello.txt\")\n"
"else:\n"
"\t# Running from an exported project.\n"
"\t# `path` will contain the absolute path to `hello.txt` next to the "
"executable.\n"
"\t# This is *not* identical to using `ProjectSettings.globalize_path()` with "
"a `res://` path,\n"
"\t# but is close enough in spirit.\n"
"\tpath = OS.get_executable_path().get_base_dir().path_join(\"hello.txt\")\n"
"[/codeblock]"
msgstr ""
"Renvoie un chemin du système d'exploitation absolu et natif correspondant au "
"chemin [param path] localisé (commençant par [code]res://[/code] ou "
"[code]user://[/code]). Le chemin renvoyé variera suivant le système "
"d'exploitation et les préférences utilisateur. Voir [url=$DOCS_URL/tutorials/"
"io/data_paths.html]Les chemins de fichiers dans les projets Godot[/url] pour "
"voir comment sont convertis ces chemins. Voir aussi [method localize_path].\n"
"[b]Note :[/b] [method globalize_path] avec [code]res://[/code] ne "
"fonctionnera pas dansun projet exporté. À la place, ajoutez au début le "
"dossier de base de l'exécutable au chemin renvoyé lors de l'exécution d'un "
"projet exporté :\n"
"[codeblock]\n"
"var path = \"\"\n"
"if OS.has_feature(\"editor\"):\n"
"\t# Exécuté depuis l'éditeur.\n"
"\t# Le chemin `path` contiendra le chemin absolu vers le fichier `hello.txt` "
"à la racine du projet.\n"
"\tpath = ProjectSettings.globalize_path(\"res://hello.txt\")\n"
"else:\n"
"\t# Exécuté depuis le projet exporté.\n"
"\t# Le chemin `path` contiendra le chemin absolu vers le fichier `hello.txt` "
"à côté de l'exécutable.\n"
"\t# Ça n'est *pas* identique à `ProjectSettings.globalize_path()` avec un "
"chemin `res://`,\n"
"\t# mais c'est assez proche dans le principe.\n"
"\tpath = OS.get_executable_path().get_base_dir().plus_file(\"hello.txt\")\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if a configuration value is present.\n"
"[b]Note:[/b] In order to be be detected, custom settings have to be either "
"defined with [method set_setting], or exist in the [code]project.godot[/code] "
"file. This is especially relevant when using [method set_initial_value]."
msgstr ""
"Renvoie [code]true[/code] si une valeur de configuration est présente.\n"
"[b]Note :[/b] Pour être détecté, les paramètres personnalisés doivent être "
"définis soit avec [method set_setting], soit en existant dans le fichier "
"[code]project.godot[/code]. Ceci est particulièrement pertinent lorsque vous "
"utilisez [method set_initial_value]."

msgid ""
"Loads the contents of the .pck or .zip file specified by [param pack] into "
"the resource filesystem ([code]res://[/code]). Returns [code]true[/code] on "
"success.\n"
"[b]Note:[/b] If a file from [param pack] shares the same path as a file "
"already in the resource filesystem, any attempts to load that file will use "
"the file from [param pack] unless [param replace_files] is set to "
"[code]false[/code].\n"
"[b]Note:[/b] The optional [param offset] parameter can be used to specify the "
"offset in bytes to the start of the resource pack. This is only supported "
"for .pck files.\n"
"[b]Note:[/b] [DirAccess] will not show changes made to the contents of "
"[code]res://[/code] after calling this function."
msgstr ""
"Charge le contenu du fichier .pck ou .zip spécifié par [param pack] dans le "
"système de fichiers de ressources ([code]res://[/code]). Renvoie [code]true[/"
"code] en cas de succès.\n"
"[b]Note :[/b] Si un fichier de [param pack] partage le même chemin qu'un "
"fichier déjà dans le système de fichiers de ressources, toute tentative de "
"charger ce fichier utilisera le fichier de [param pack] sauf si [param "
"replace_files] est défini à [code]false[/code].\n"
"[b]Note :[/b] Le paramètre optionnel [param offset] peut être utilisé pour "
"spécifier le décalage en octets au début du pack de ressources. Ceci n'est "
"pris en charge que pour les fichiers .pck.\n"
"[b]Note :[/b] [DirAccess] n'affichera pas les changements faits au contenu de "
"[code]res://[/code] après avoir appelé cette fonction."

msgid ""
"Returns the localized path (starting with [code]res://[/code]) corresponding "
"to the absolute, native OS [param path]. See also [method globalize_path]."
msgstr ""
"Renvoie le chemin localisé (démarrant par [code]res://[/code]) correspondant "
"au chemin [param path] absolu et natif du système d'exploitation. Voir aussi "
"[method globalize_path]."

msgid ""
"Saves the configuration to the [code]project.godot[/code] file.\n"
"[b]Note:[/b] This method is intended to be used by editor plugins, as "
"modified [ProjectSettings] can't be loaded back in the running app. If you "
"want to change project settings in exported projects, use [method "
"save_custom] to save [code]override.cfg[/code] file."
msgstr ""
"Enregistre la configuration du fichier [code]project.godot[/code].\n"
"[b]Note :[/b] Cette méthode est destinée à être utilisée par les greffons de "
"l'éditeur, puisque [ProjectSettings] ne peut pas être modifié puis chargé "
"directement dans une application lancée. Si vous voulez modifier les "
"paramètres de projet depuis un projet exporté, utilisez [method save_custom] "
"pour enregistrer le fichier [code]override.cfg[/code]."

msgid ""
"Saves the configuration to a custom file. The file extension must be "
"[code].godot[/code] (to save in text-based [ConfigFile] format) or "
"[code].binary[/code] (to save in binary format). You can also save "
"[code]override.cfg[/code] file, which is also text, but can be used in "
"exported projects unlike other formats."
msgstr ""
"Enregistre la configuration vers un fichier personnalisé. L'extension de "
"fichier doit être [code].godot[/code] (pour enregistrer dans le format "
"[ConfigFile] au format texte) ou [code].binary[/code] (pour enregistrer au "
"format binaire). Vous pouvez également enregistrer le fichier "
"[code]override.cfg[/code], qui est également au format texte, mais peut être "
"utilisé dans des projets exportés contrairement aux autres formats."

msgid ""
"Defines if the specified setting is considered basic or advanced. Basic "
"settings will always be shown in the project settings. Advanced settings will "
"only be shown if the user enables the \"Advanced Settings\" option."
msgstr ""
"Définit si le paramètre spécifié est considéré comme de base ou avancé. Les "
"paramètres de base seront toujours affichés dans les paramètres du projet. "
"Les paramètres avancés ne seront affichés que si l'utilisateur active "
"l'option « Paramètres avancés »."

msgid ""
"Defines if the specified setting is considered internal. An internal setting "
"won't show up in the Project Settings dialog. This is mostly useful for "
"addons that need to store their own internal settings without exposing them "
"directly to the user."
msgstr ""
"Définit si le paramètre spécifié est considéré comme interne ou non. Un "
"paramètre interne ne s'affichera pas dans la fenêtre Paramètres du projet. "
"Ceci est surtout utile pour les addons qui doivent stocker leurs propres "
"paramètres internes sans les exposer directement à l'utilisateur."

msgid ""
"Sets the specified setting's initial value. This is the value the setting "
"reverts to. The setting should already exist before calling this method. Note "
"that project settings equal to their default value are not saved, so your "
"code needs to account for that.\n"
"[codeblock]\n"
"extends EditorPlugin\n"
"\n"
"const SETTING_NAME = \"addons/my_setting\"\n"
"const SETTING_DEFAULT = 10.0\n"
"\n"
"func _enter_tree():\n"
"\tif not ProjectSettings.has_setting(SETTING_NAME):\n"
"\t\tProjectSettings.set_setting(SETTING_NAME, SETTING_DEFAULT)\n"
"\n"
"\tProjectSettings.set_initial_value(SETTING_NAME, SETTING_DEFAULT)\n"
"[/codeblock]\n"
"If you have a project setting defined by an [EditorPlugin], but want to use "
"it in a running project, you will need a similar code at runtime."
msgstr ""
"Définit la valeur initiale du paramètre spécifié. C'est la valeur à laquelle "
"le paramètre revient. Le réglage devrait déjà exister avant d'appeler cette "
"méthode. Notez que les paramètres du projet égaux à leur valeur par défaut ne "
"sont pas enregistrés, donc votre code doit tenir compte de cela.\n"
"[codeblock]\n"
"extends EditorPlugin\n"
"\n"
"const NOM_PARAMETRE = \"addons/mon_parametre\"\n"
"const DEFAUT_PARAMETRE = 10.0\n"
"\n"
"func _enter_tree():\n"
"\tif not ProjectSettings.has_setting(NOM_PARAMETRE):\n"
"\t\tProjectSettings.set_setting(NOM_PARAMETRE, DEFAUT_PARAMETRE)\n"
"\n"
"\tProjectSettings.set_initial_value(NOM_PARAMETRE, DEFAUT_PARAMETRE)\n"
"[/codeblock]\n"
"Si vous avez un paramètre de projet défini par un [EditorPlugin], mais que "
"vous voulez l'utiliser dans un projet durant l'exécution, vous aurez besoin "
"d'un code similaire durant l'exécution."

msgid ""
"Sets the order of a configuration value (influences when saved to the config "
"file)."
msgstr ""
"Définit l'ordre d'une valeur de configuration (qui a une influence quand "
"sauvegardée dans le fichier de configuration)."

msgid ""
"Sets whether a setting requires restarting the editor to properly take "
"effect.\n"
"[b]Note:[/b] This is just a hint to display to the user that the editor must "
"be restarted for changes to take effect. Enabling [method "
"set_restart_if_changed] does [i]not[/i] delay the setting being set when "
"changed."
msgstr ""
"Définit si un paramètre exige que l'éditeur soit redémarré afin d'être "
"correctement pris en compte.\n"
"[b]Note :[/b] Cela n'aura pour effet que d'indiquer (ou non) à l'utilisateur "
"que l'éditeur doit être redémarré pour que les changements prennent effet. "
"Activer [method set_restart_if_changed] [i]ne retarde pas[/i] l'affectation "
"d'une valeur à un paramètre lorsqu'il est modifié."

msgid ""
"Sets the value of a setting.\n"
"[codeblocks]\n"
"[gdscript]\n"
"ProjectSettings.set_setting(\"application/config/name\", \"Example\")\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.SetSetting(\"application/config/name\", \"Example\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This can also be used to erase custom project settings. To do this change the "
"setting value to [code]null[/code]."
msgstr ""
"Définit la valeur d'un paramètre.\n"
"[codeblocks]\n"
"[gdscript]\n"
"ProjectSettings.set_setting(\"application/config/name\", \"Exemple\")\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.SetSetting(\"application/config/name\", \"Exemple\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Cela permet aussi de supprimer des paramètres de projet personnalisés. Pour "
"ce faire, remplacez la valeur du paramètre par [code]null[/code]."

msgid ""
"Accessibility support mode:\n"
"- [b]Auto[/b] ([code]0[/code]): Accessibility support is enabled, but updates "
"to the accessibility information are processed only if an assistive app (such "
"as a screen reader or a Braille display) is active (default).\n"
"- [b]Always Active[/b] ([code]1[/code]): Accessibility support is enabled, "
"and updates to the accessibility information are always processed, regardless "
"of the status of assistive apps.\n"
"- [b]Disabled[/b] ([code]2[/code]): Accessibility support is fully disabled.\n"
"[b]Note:[/b] Accessibility debugging tools, such as Accessibility Insights "
"for Windows, Accessibility Inspector (macOS), or AT-SPI Browser (Linux/BSD) "
"do not count as assistive apps. To test your project with these tools, use "
"[b]Always Active[/b]."
msgstr ""
"Mode de support d'accessibilité :\n"
"- [b]Auto[/b] ([code]0[/code]) : Le support d'accessibilité est activé, mais "
"les mises à jour d'information d'accessibilité ne sont traitées que si une "
"application d'assistance (p. ex. lecteur d'écran ou affichage en braille) est "
"active (par défaut).\n"
"- [b]Toujours actif[/b] ([code]1[/code]) : Le support d'accessibilité est "
"activé et les mises à jour d'information d'accessibilité sont traitées "
"indépendamment du statut des applications d'assistance.\n"
"- [b]Désactivé[/b] ([code]2[/code]) : Le support d'accessibilité est "
"entièrement désactivé.\n"
"[b]Note :[/b] Les outils de débogage d'accessibilité, tels que Accessibility "
"Insights pour Windows, l'inspecteur d'accessibilité (macOS) ou le navigateur "
"AT-SPI (Linux/BDS) ne comptent pas comme des applications d'assistance. Pour "
"tester votre application avec ces outils, utilisez [code]Toujours actif[/"
"code]."

msgid "The number of accessibility information updates per second."
msgstr "Le nombre de mises à jour d'information d'accessibilité par seconde."

msgid ""
"If [code]true[/code], [AnimationMixer] prints the warning of interpolation "
"being forced to choose the shortest rotation path due to multiple angle "
"interpolation types being mixed in the [AnimationMixer] cache."
msgstr ""
"Si [code]true[/code], [AnimationMixer] affiche l'avertissement que "
"l'interpolation est forcée de choisir le chemin de rotation le plus court en "
"raison du fait que de multiples types d'interpolation d'angle sont mélangés "
"dans le cache de l'[AnimationMixer]."

msgid ""
"If [code]true[/code], [AnimationMixer] prints the warning of no matching "
"object of the track path in the scene."
msgstr ""
"Si [code]true[/code], [AnimationMixer] affiche l'avertissement d'aucun objet "
"correspondant au chemin de piste dans la scène."

msgid "Background color for the boot splash."
msgstr "La couleur d'arrière plan pour l'écran de lancement."

msgid ""
"If [code]true[/code], scale the boot splash image to the full window size "
"(preserving the aspect ratio) when the engine starts. If [code]false[/code], "
"the engine will leave it at the default pixel size."
msgstr ""
"Si [code]true[/code], étire l'image au lancement du jeu suivant la taille de "
"la fenêtre (et préserve le ratio). Si [code]false[/code], l'image sera "
"affichée par défaut suivant sa taille en pixels."

msgid ""
"Path to an image used as the boot splash. If left empty, the default Godot "
"Engine splash will be displayed instead.\n"
"[b]Note:[/b] Only effective if [member application/boot_splash/show_image] is "
"[code]true[/code].\n"
"[b]Note:[/b] The only supported format is PNG. Using another image format "
"will result in an error.\n"
"[b]Note:[/b] The image will also show when opening the project in the editor. "
"If you want to display the default splash image in the editor, add an empty "
"override for [code]editor_hint[/code] feature."
msgstr ""
"Chemin vers une image utilisée comme écran de démarrage. Si laissé vide, "
"l'écran du moteur Godot par défaut sera affiché à la place.\n"
"[b]Note :[/b] Seulement effectif si [member application/boot_splash/"
"show_image] vaut [code]true[/code].\n"
"[b]Note :[/b] Le seul format supporté est PNG. L'utilisation d'un autre "
"format d'image entraînera une erreur.\n"
"[b]Note :[/b] L'image s'affichera également lors de l'ouverture du projet "
"dans l'éditeur. Si vous voulez afficher l'image de démarrage par défaut dans "
"l'éditeur, ajoutez une redéfinition vide pour la fonctionnalité "
"[code]editor_hint[/code]."

msgid ""
"Minimum boot splash display time (in milliseconds). It is not recommended to "
"set too high values for this setting."
msgstr ""
"Temps minimum d'affichage de l'écran de démarrage (en millisecondes). Il "
"n'est pas recommandé de définir des valeurs trop élevées pour ce paramètre."

msgid ""
"If [code]true[/code], displays the image specified in [member application/"
"boot_splash/image] when the engine starts. If [code]false[/code], only "
"displays the plain color specified in [member application/boot_splash/"
"bg_color]."
msgstr ""
"Si [code]true[/code], affiche l'image spécifiée dans [member application/"
"boot_splash/image] lorsque le moteur démarre. Si [code]false[/code], affiche "
"seulement la couleur spécifiée dans [member application/boot_splash/bg_color]."

msgid ""
"If [code]true[/code], applies linear filtering when scaling the image "
"(recommended for high-resolution artwork). If [code]false[/code], uses "
"nearest-neighbor interpolation (recommended for pixel art)."
msgstr ""
"Si [code]true[/code], applique le filtrage linéaire pour l'étirement de "
"l'image (recommandé pour les images à haute résolution.) Si [code]false[/"
"code], utilise l'interpolation la plus proche (recommandée pour le pixel-art)."

msgid ""
"If [code]true[/code], the application automatically accepts quitting requests."
msgstr ""
"Si [code]true[/code], l'application accepte automatiquement les requêtes de "
"fermeture."

msgid ""
"This user directory is used for storing persistent data ([code]user://[/code] "
"filesystem). If a custom directory name is defined, this name will be "
"appended to the system-specific user data directory (same parent folder as "
"the Godot configuration folder documented in [method OS.get_user_data_dir]).\n"
"The [member application/config/use_custom_user_dir] setting must be enabled "
"for this to take effect.\n"
"[b]Note:[/b] If [member application/config/custom_user_dir_name] contains "
"trailing periods, they will be stripped as folder names ending with a period "
"are not allowed on Windows."
msgstr ""
"Ce répertoire utilisateur est utilisé pour stocker des données persistantes "
"(systèmes de fichiers [code]user://[/code]). Si un nom de répertoire "
"personnalisé est défini, ce nom sera ajouté au répertoire de données "
"utilisateur spécifique au système (même dossier parent que le dossier de "
"configuration Godot documenté dans [method OS.get_user_data_dir]).\n"
"Le paramètre [member application/config/use_custom_user_dir] doit être activé "
"pour que cela prenne effet.\n"
"[b]Note :[/b] Si [member application/config/custom_user_dir_name] contient "
"des points de fin, ils seront supprimés car les noms de dossiers se terminant "
"par des points ne sont pas autorisés sous Windows."

msgid ""
"The project's description, displayed as a tooltip in the Project Manager when "
"hovering the project."
msgstr ""
"La description du projet, affichée en tant qu'infobulle dans le Gestionnaire "
"de projet quand le projet est survolé."

msgid ""
"Icon used for the project, set when project loads. Exporters will also use "
"this icon as a fallback if necessary."
msgstr ""
"Icône utilisée pour le projet, définie au chargement du projet. Les "
"exportateurs utiliseront également cette icône comme repli si nécessaire."

msgid ""
"Icon set in [code].icns[/code] format used on macOS to set the game's icon. "
"This is done automatically on start by calling [method "
"DisplayServer.set_native_icon]."
msgstr ""
"Icône définie dans le format [code].icns[/code] utilisé sur macOS pour "
"définir l'icône du jeu. Ceci est fait automatiquement au lancement en "
"appelant [method DisplayServer.set_native_icon]."

msgid ""
"The project's name. It is used both by the Project Manager and by exporters. "
"The project name can be translated by translating its value in localization "
"files. The window title will be set to match the project name automatically "
"on startup.\n"
"[b]Note:[/b] Changing this value will also change the user data folder's path "
"if [member application/config/use_custom_user_dir] is [code]false[/code]. "
"After renaming the project, you will no longer be able to access existing "
"data in [code]user://[/code] unless you rename the old folder to match the "
"new project name. See [url=$DOCS_URL/tutorials/io/data_paths.html]Data paths[/"
"url] in the documentation for more information."
msgstr ""
"Le nom du projet. Il est utilisé à la fois par le gestionnaire de projet et "
"par les exportateurs. Le nom du projet peut être traduit en traduisant sa "
"valeur dans les fichiers de localisation. Le titre de la fenêtre sera défini "
"pour correspondre automatiquement au nom du projet au démarrage.\n"
"[b]Note :[/b] Modifier cette valeur va également changer le chemin du dossier "
"des données utilisateur si [member application/config/use_custom_user_dir] "
"vaut [code]false[/code]. Après avoir renommé le projet, vous ne pourrez plus "
"accéder aux données existantes dans [code]user://[/code], sauf si vous "
"renommez le vieux dossier pour correspondre au nouveau nom du projet. Voir "
"[url=$DOCS_URL/tutorials/io/data_paths.html]Les chemins de fichiers dans les "
"projets Godot[/url] dans la documentation pour plus d'informations."

msgid ""
"Translations of the project's name. This setting is used by OS tools to "
"translate application name on Android, iOS and macOS."
msgstr ""
"Traductions du nom du projet. Ce paramètre est utilisé en interne par le "
"système d'exploitation afin de traduire le nom de l'application sur Android, "
"iOS et macOS."

msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] class "
"description at the top for more information.\n"
"[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/"
"code] will still be read to override the project settings."
msgstr ""
"Spécifie un fichier pour redéfinir les paramètres du projet. Par exemple : "
"[code]user://custom_settings.cfg[/code]. Voir \"Redéfinition\" dans la "
"description de la classe [ProjectSettings] en haut pour plus d'informations.\n"
"[b]Note: [/b] Quelle que soit la valeur de ce paramètre, [code]res://"
"override.cfg[/code] sera toujours lu pour redéfinir les paramètres du projet."

msgid ""
"If [code]true[/code], the application quits automatically when navigating "
"back (e.g. using the system \"Back\" button on Android)."
msgstr ""
"Si [code]true[/code], l'application s'arrête automatiquement lorsque vous "
"naviguez en arrière (p. ex. en utilisant le bouton « Retour » du système sur "
"Android)."

msgid ""
"If [code]true[/code], the project will save user data to its own user "
"directory. If [member application/config/custom_user_dir_name] is empty, "
"[code]<OS user data directory>/<project name>[/code] directory will be used. "
"If [code]false[/code], the project will save user data to [code]<OS user data "
"directory>/Godot/app_userdata/<project name>[/code].\n"
"See also [url=$DOCS_URL/tutorials/io/data_paths.html#accessing-persistent-"
"user-data-user]File paths in Godot projects[/url]. This setting is only "
"effective on desktop platforms."
msgstr ""
"Si [code]true[/code], le projet enregistrera les données utilisateur dans son "
"propre répertoire utilisateur. Si [member application/config/"
"custom_user_dir_name] est vide, le répertoire [code]<dossier des données "
"utilisateur du système d'exploitation>/<nom du projet>[/code] sera utilisé. "
"Si [code]false[/code], le projet enregistrera les données d'utilisateurs dans "
"[code]<dossier des données utilisateur du système d'exploitation>/Godot/"
"app_userdata/<nom du projet>[/code].\n"
"Voir aussi [url=$DOCS_URL/tutorials/io/data_paths.html#accessing-persistent-"
"user-data-user]Les chemins de fichiers dans les projets Godot[/url]. Ce "
"réglage n'est effective que sur les plateformes de bureau."

msgid ""
"If [code]true[/code], the project will use a hidden directory ([code].godot[/"
"code]) for storing project-specific data (metadata, shader cache, etc.).\n"
"If [code]false[/code], a non-hidden directory ([code]godot[/code]) will be "
"used instead.\n"
"[b]Note:[/b] Restart the application after changing this setting.\n"
"[b]Note:[/b] Changing this value can help on platforms or with third-party "
"tools where hidden directory patterns are disallowed. Only modify this "
"setting if you know that your environment requires it, as changing the "
"default can impact compatibility with some external tools or plugins which "
"expect the default [code].godot[/code] folder."
msgstr ""
"Si [code]true[/code], le projet utilisera un dossier caché ([code].godot[/"
"code]) pour stocker des données spécifiques au projet (métadonnées, cache des "
"shaders, etc.)\n"
"Si [code]false[/code], un dossier non caché ([code]godot[/code]) sera utilisé "
"à la place.\n"
"[b]Note :[/b] Vous devez redémarrer l'application après avoir modifié ce "
"paramètre.\n"
"[b]Note :[/b] Changer cette valeur peut aider sur les plateformes ou avec des "
"outils tiers où les structures de dossier caché ne sont pas autorisés. Ne "
"modifiez ce paramètre si vous savez que votre environnement l'exige, car "
"changer la valeur par défaut peut impacter la compatibilité avec certains "
"outils ou plugins externes qui s'attendent au dossier [code].godot[/code] par "
"défaut."

msgid ""
"The project's human-readable version identifier. This is used by exporters if "
"the version identifier isn't overridden there. If [member application/config/"
"version] is an empty string and the version identifier isn't overridden in an "
"exporter, the exporter will use [code]1.0.0[/code] as a version identifier."
msgstr ""
"L'identificateur de version facilement visible du projet. Ceci est utilisé "
"par les exportateurs si l'identificateur de version n'est pas redéfini. Si "
"[member application/config/version] est une chaîne vide et que "
"l'identificateur de version n'est pas remplacé par un exportateur, "
"l'exportateur utilisera [code]1.0.0[/code] comme identificateur de version."

msgid ""
"Icon set in [code].ico[/code] format used on Windows to set the game's icon. "
"This is done automatically on start by calling [method "
"DisplayServer.set_native_icon]."
msgstr ""
"Icône défini dans le format [code].ico[/code] utilisé sur Windows pour "
"définir l'icône du jeu. Ceci est fait automatiquement au lancement en "
"appelant [method DisplayServer.set_native_icon]."

msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
"@GlobalScope.push_error] and [method @GlobalScope.push_warning]. See also "
"[member application/run/disable_stdout].\n"
"Changes to this setting will only be applied upon restarting the application. "
"To control this at runtime, use [member Engine.print_error_messages]."
msgstr ""
"Si [code]true[/code], désactive l'affichage vers l'erreur standard. Si "
"[code]true[/code], cela cache aussi les messages d'erreur et d'avertissement "
"affichés par [method @GlobalScope.push_error] et [method "
"@GlobalScope.push_warning]. Voir aussi [member application/run/"
"disable_stdout].\n"
"Les modifications apportées à ce paramètre ne seront appliquées qu'au "
"redémarrage de l'application. Pour le contrôler durant l'exécution, utilisez "
"[member Engine.print_error_messages]."

msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
"[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url]. See also [member application/run/disable_stderr].\n"
"Changes to this setting will only be applied upon restarting the application. "
"To control this at runtime, use [member Engine.print_to_stdout]."
msgstr ""
"Si [code]true[/code], désactive l'affichage vers la sortie standard. Ceci "
"équivaut à démarrer l'éditeur ou le projet avec l'[url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]argument de ligne de commande[/url] [code]--"
"quiet[/code]. Voir aussi [member application/run/disable_stderr].\n"
"Les modifications apportées à ce paramètre ne seront appliquées qu'au "
"redémarrage de l'application. Pour contrôler ceci durant l'exécution, "
"utilisez [member Engine.print_to_stdout]."

msgid ""
"If [code]true[/code], flushes the standard output stream every time a line is "
"printed. This affects both terminal logging and file logging.\n"
"When running a project, this setting must be enabled if you want logs to be "
"collected by service managers such as systemd/journalctl. This setting is "
"disabled by default on release builds, since flushing on every printed line "
"will negatively affect performance if lots of lines are printed in a rapid "
"succession. Also, if this setting is enabled, logged files will still be "
"written successfully if the application crashes or is otherwise killed by the "
"user (without being closed \"normally\").\n"
"[b]Note:[/b] Regardless of this setting, the standard error stream "
"([code]stderr[/code]) is always flushed when a line is printed to it.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
"Si [code]true[/code], vide le flux de la sortie standard chaque fois qu'une "
"ligne est affichée. Cela affecte à la fois le logging des terminaux et le "
"logging des fichiers.\n"
"Lors de l'exécution d'un projet, ce paramètre doit être activé si vous voulez "
"que les logs soient collectés par des gestionnaires de services tels que "
"systemd/journalctl. Ce paramètre est désactivé par défaut sur les "
"compilations de release, puisque vider lors de chaque ligne affichée "
"affectera les performances si beaucoup de lignes sont affichées en succession "
"rapide. En outre, si ce paramètre est activé, les logs enregistrés seront "
"toujours écrits avec succès si l'application plante ou est autrement arrêtée "
"par l'utilisateur (sans être fermée \"normalement\").\n"
"[b]Note :[/b] Indépendamment de ce paramètre, le flux d'erreur standard "
"([code]stderr[/code]) est toujours vidé lorsqu'une ligne lui est affichée.\n"
"Les modifications apportées à ce paramètre ne seront appliquées qu'au "
"redémarrage de l'application."

msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
"Redéfinition pour les compilations de débogage de [member application/run/"
"flush_stdout_on_print], car la performance est moins importante durant le "
"débogage.\n"
"Les modifications apportées à ce paramètre ne seront appliquées qu'au "
"redémarrage de l'application."

msgid ""
"Forces a [i]constant[/i] delay between frames in the main loop (in "
"milliseconds). In most situations, [member application/run/max_fps] should be "
"preferred as an FPS limiter as it's more precise.\n"
"This setting can be overridden using the [code]--frame-delay <ms;>[/code] "
"command line argument."
msgstr ""
"Force un délai [i]constant[/i] entre les trames de la boucle principale (en "
"millisecondes). Dans la plupart des cas, [member application/run/max_fps] "
"devrait être préféré comme limiteur de FPS car il est plus précis.\n"
"Ce paramètre peut être remplacé par l'argument de ligne de commande [code]--"
"frame-delay <ms;>[/code]."

msgid ""
"If [code]true[/code], loads the default shell and copies environment "
"variables set by the shell startup scripts to the app environment.\n"
"[b]Note:[/b] This setting is implemented on macOS for non-sandboxed "
"applications only."
msgstr ""
"Si [code]true[/code], charge le shell par défaut et copie les variables "
"d'environnement définies par les scripts de démarrage du shell vers "
"l'environnement de l'application.\n"
"[b]Note :[/b] Ce paramètre est implémenté sur macOS pour les applications non-"
"sandboxées seulement."

msgid ""
"If [code]true[/code], enables low-processor usage mode. When enabled, the "
"engine takes longer to redraw, but only redraws the screen if necessary. This "
"may lower power consumption, and is intended for editors or mobile "
"applications. For most games, because the screen needs to be redrawn every "
"frame, it is recommended to keep this setting disabled."
msgstr ""
"Si [code]true[/code], active le mode de faible utilisation du processeur. "
"Lorsqu'il est activé, le moteur prend plus de temps pour redessiner, mais ne "
"redessine l'écran que si nécessaire. Cela peut réduire la consommation "
"d'énergie et est destiné aux éditeurs ou aux applications mobiles. Pour la "
"plupart des jeux, comme l'écran doit être redessiné à chaque trame, il est "
"recommandé de garder ce paramètre désactivé."

msgid ""
"Amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
"Quantité de sommeil entre les trames lorsque le mode d'utilisation faible du "
"processeur est activé (en microsecondes). Des valeurs plus élevées "
"entraîneront une utilisation plus faible du processeur."

msgid "The name of the type implementing the engine's main loop."
msgstr "Le nom du type qui implémente la boucle principale du moteur."

msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
"Chemin vers le fichier de scène principale qui sera chargé lorsque le projet "
"sera exécuté."

msgid ""
"Maximum number of frames per second allowed. A value of [code]0[/code] means "
"\"no limit\". The actual number of frames per second may still be below this "
"value if the CPU or GPU cannot keep up with the project logic and rendering.\n"
"Limiting the FPS can be useful to reduce system power consumption, which "
"reduces heat and noise emissions (and improves battery life on mobile "
"devices).\n"
"If [member display/window/vsync/vsync_mode] is set to [code]Enabled[/code] or "
"[code]Adaptive[/code], it takes precedence and the forced FPS number cannot "
"exceed the monitor's refresh rate.\n"
"If [member display/window/vsync/vsync_mode] is [code]Enabled[/code], on "
"monitors with variable refresh rate enabled (G-Sync/FreeSync), using an FPS "
"limit a few frames lower than the monitor's refresh rate will [url=https://"
"blurbusters.com/howto-low-lag-vsync-on/]reduce input lag while avoiding "
"tearing[/url].\n"
"If [member display/window/vsync/vsync_mode] is [code]Disabled[/code], "
"limiting the FPS to a high value that can be consistently reached on the "
"system can reduce input lag compared to an uncapped framerate. Since this "
"works by ensuring the GPU load is lower than 100%, this latency reduction is "
"only effective in GPU-bottlenecked scenarios, not CPU-bottlenecked "
"scenarios.\n"
"See also [member physics/common/physics_ticks_per_second].\n"
"This setting can be overridden using the [code]--max-fps <fps>[/code] command "
"line argument (including with a value of [code]0[/code] for unlimited "
"framerate).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the rendering FPS cap at runtime, set [member Engine.max_fps] instead."
msgstr ""
"Nombre maximal de trames par seconde autorisé. Une valeur de [code]0[/code] "
"signifie « aucune limite ». Le nombre réel de trames par seconde peut encore "
"être inférieur à cette valeur si le CPU ou le GPU ne peuvent pas suivre avec "
"la logique du projet et le rendu.\n"
"Limiter les FPS peut être utile pour réduire la consommation d'énergie du "
"système, ce qui réduit les émissions de chaleur et de bruit (et améliore la "
"durée de vie de la batterie sur les appareils mobiles).\n"
"Si [member display/window/vsync/vsync_mode] est défini à [code]Enabled[/code] "
"ou [code]Adaptive[/code], il a la priorité et le nombre de FPS forcés ne peut "
"dépasser le taux de rafraîchissement du moniteur.\n"
"Si [member display/window/vsync/vsync_mode] est [code]Enabled[/code], sur les "
"moniteurs avec un taux de rafraîchissement variable activé (G-Sync/FreeSync), "
"utiliser une limite de FPS quelques trames inférieures à la vitesse de "
"rafraîchissement du moniteur [url=https://blurbusters.com/howto-low-lag-vsync-"
"on/]réduit l'input lag tout en évitant les déchirements[/url].\n"
"Si [member display/window/vsync/vsync_mode] est [code]Disabled[/code], "
"limiter les FPS à une valeur élevée qui peut être constamment atteinte sur le "
"système peut réduire l'input lag par rapport à un taux de rafraîchissement "
"non plafonné. Comme cela fonctionne en veillant à ce que la charge GPU soit "
"inférieure à 100%, cette réduction de latence n'est effective que dans les "
"scénarios limités par le GPU, et non dans les scénarios limités par le CPU.\n"
"Voir aussi [member physics/common/physics_ticks_per_second].\n"
"Ce paramètre peut être redéfini par l'argument de ligne de commande [code]--"
"max-fps <fps>[/code] (y compris avec une valeur de [code]0[/code] pour un "
"taux de rafraîchissement illimité).\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre. "
"Pour modifier la limite de FPS de rendu en cours d'exécution, définissez "
"[member Engine.max_fps] à la place."

msgid ""
"If [code]true[/code], the engine header is printed in the console on startup. "
"This header describes the current version of the engine, as well as the "
"renderer being used. This behavior can also be disabled on the command line "
"with the [code]--no-header[/code] option."
msgstr ""
"Si [code]true[/code], l'en-tête du moteur est affiché dans la console au "
"démarrage. Cet en-tête décrit la version actuelle du moteur, ainsi que le "
"moteur de rendu utilisé. Ce comportement peut également être désactivé sur la "
"ligne de commande avec l'option [code]--no-header[/code]."

msgid ""
"Audio buses will disable automatically when sound goes below a given dB "
"threshold for a given time. This saves CPU as effects assigned to that bus "
"will no longer do any processing."
msgstr ""
"Les bus audio seront désactivés automatiquement lorsque le son se trouve en "
"dessous d'un seuil de dB donné pour un temps donné. Cela économise le CPU car "
"les effets assignés à ce bus ne feront plus aucun traitement."

msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
"Ficher de ressource [AudioBusLayout] par défaut à utiliser dans le projet, à "
"moins d'être redéfini par la scène."

msgid ""
"Specifies the audio driver to use. This setting is platform-dependent as each "
"platform supports different audio drivers. If left empty, the default audio "
"driver will be used.\n"
"The [code]Dummy[/code] audio driver disables all audio playback and "
"recording, which is useful for non-game applications as it reduces CPU usage. "
"It also prevents the engine from appearing as an application playing audio in "
"the OS' audio mixer.\n"
"To query the value that is being used at run-time (which may be overridden by "
"command-line arguments or headless mode), use [method "
"AudioServer.get_driver_name].\n"
"[b]Note:[/b] The driver in use can be overridden at runtime via the [code]--"
"audio-driver[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Spécifie le pilote audio à utiliser. Ce réglage est dépendant de la "
"plateforme car chaque plateforme prend en charge des pilotes audio "
"différents. Si laissé vide, le pilote audio par défaut sera utilisé.\n"
"Le pilote audio [code]Dummy[/code] désactive toute lecture audio et "
"enregistrement, ce qui est utile pour les applications qui ne sont pas des "
"jeux car cela réduit l'utilisation du processeur. Cela empêche également le "
"moteur d'apparaître comme une application jouant l'audio dans le mixeur audio "
"de l'OS.\n"
"Pour demander la valeur qui est utilisée à l'exécution (qui peut être "
"redéfinie par des arguments en ligne de commande ou le mode sans tête), "
"utilisez [method AudioServer.get_driver_name].\n"
"[b]Note :[/b] Le pilote utilisé peut être redéfini lors de l'exécution via "
"l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url]. [code]--audio-driver[/code]."

msgid ""
"If [code]true[/code], microphone input will be allowed. This requires "
"appropriate permissions to be set when exporting to Android or iOS.\n"
"[b]Note:[/b] If the operating system blocks access to audio input devices "
"(due to the user's privacy settings), audio capture will only return silence. "
"On Windows, make sure that apps are allowed to access the microphone in the "
"OS' privacy settings."
msgstr ""
"Si [code]true[/code], l'entrée du microphone sera autorisée. Cela nécessite "
"des autorisations appropriées à définir lors de l'exportation vers Android ou "
"iOS.\n"
"[b]Note :[/b] Si le système d'exploitation bloque l'accès aux appareils "
"d'entrée audio (en raison des paramètres de confidentialité de "
"l'utilisateur), la capture audio ne fera que renvoyer du silence. Sur "
"Windows, assurez-vous que les applications sont autorisées à accéder au "
"microphone dans les paramètres de confidentialité de l'OS."

msgid ""
"Target mixing rate used for audio (in Hz). In general, it's better to not "
"touch this and leave it to the host operating system.\n"
"[b]Note:[/b] On iOS and macOS, mixing rate is determined by audio driver, "
"this value is ignored.\n"
"[b]Note:[/b] Input and output mixing rates might be different. Use [method "
"AudioServer.get_mix_rate] and [method AudioServer.get_input_mix_rate] to get "
"actual values."
msgstr ""
"Taux de mixage ciblé utilisé pour l'audio (en Hz). En général, il vaut mieux "
"ne pas toucher cela et le laisser au système d'exploitation hôte.\n"
"[b]Note :[/b] Sur iOS et macOS, le taux de mixage est déterminé par le pilote "
"audio, cette valeur est ignorée.\n"
"[b]Note :[/b] Les taux de mixage d'entrée et de sortie peuvent être "
"différents. Utilisez [method AudioServer.get_mix_rate] et [method "
"AudioServer.get_input_mix_rate] pour obtenir les valeurs réelles."

msgid ""
"Safer override for [member audio/driver/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
"Redéfinition plus sûre pour [member audio/driver/mix_rate] pour la plateforme "
"Web. Ici [code]0[/code] signifie \"laisser le navigateur choisir\" (puisque "
"certains navigateurs n'aiment pas quand le taux de mixage est forcé)."

msgid ""
"Specifies the preferred output latency in milliseconds for audio. Lower "
"values will result in lower audio latency at the cost of increased CPU usage. "
"Low values may result in audible crackling on slower hardware.\n"
"Audio output latency may be constrained by the host operating system and "
"audio hardware drivers. If the host can not provide the specified audio "
"output latency then Godot will attempt to use the nearest latency allowed by "
"the host. As such you should always use [method "
"AudioServer.get_output_latency] to determine the actual audio output "
"latency.\n"
"Audio output latency can be overridden using the [code]--audio-output-latency "
"<ms>[/code] command line argument.\n"
"[b]Note:[/b] This setting is ignored on Android."
msgstr ""
"Spécifie la latence de sortie préférée pour l'audio en millisecondes. Des "
"valeurs inférieures entraîneront une diminution de latence audio au coût "
"d'une utilisation accrue du processeur. Les valeurs faibles peuvent entraîner "
"du craquement audible sur les matériels plus lents.\n"
"La latence de sortie audio peut être limitée par le système d'exploitation "
"hôte et les drivers audio du matériel. Si l'hôte ne peut pas fournir la "
"latence de sortie audio spécifiée, Godot tentera d'utiliser la latence la "
"plus proche autorisée par l'hôte. Ainsi, vous devriez toujours utiliser "
"[method AudioServer.get_output_latency] pour déterminer la latence de sortie "
"audio réelle.\n"
"La latence de sortie audio peut être redéfinie en utilisant l'argument de "
"ligne de commande [code]--audio-output-latency <ms>[/code].\n"
"[b]Note :[/b] Ce paramètre est ignoré sur Android."

msgid ""
"Safer override for [member audio/driver/output_latency] in the Web platform, "
"to avoid audio issues especially on mobile devices."
msgstr ""
"Redéfinition plus sûre pour [member audio/driver/output_latency] dans la "
"plateforme Web, pour éviter les problèmes audio, surtout sur les appareils "
"mobiles."

msgid ""
"The base strength of the panning effect for all [AudioStreamPlayer2D] nodes. "
"The panning strength can be further scaled on each Node using [member "
"AudioStreamPlayer2D.panning_strength]. A value of [code]0.0[/code] disables "
"stereo panning entirely, leaving only volume attenuation in place. A value of "
"[code]1.0[/code] completely mutes one of the channels if the sound is located "
"exactly to the left (or right) of the listener.\n"
"The default value of [code]0.5[/code] is tuned for headphones. When using "
"speakers, you may find lower values to sound better as speakers have a lower "
"stereo separation compared to headphones."
msgstr ""
"La force de base de l'effet de balance pour tous les nœuds "
"[AudioStreamPlayer2D]. La force de balance peut être encore accrue sur chaque "
"nœud en utilisant [member AudioStreamPlayer2D.panning_strength]. Une valeur "
"de [code]0.0[/code] désactive entièrement la balance stéréo, laissant "
"seulement l'atténuation du volume en place. Une valeur de [code]1.0[/code] "
"mute complètement l'un des canaux si le son est situé exactement à gauche (ou "
"à droite) de l'auditeur.\n"
"La valeur par défaut de [code]0.5[/code] est ajustée pour des écouteurs. "
"Lorsque vous utilisez des haut-parleurs, vous pouvez penser que des valeurs "
"inférieures vont avoir un meilleur son car les haut-parleurs ont une "
"séparation stéréo inférieure par rapport à des écouteurs."

msgid ""
"The base strength of the panning effect for all [AudioStreamPlayer3D] nodes. "
"The panning strength can be further scaled on each Node using [member "
"AudioStreamPlayer3D.panning_strength]. A value of [code]0.0[/code] disables "
"stereo panning entirely, leaving only volume attenuation in place. A value of "
"[code]1.0[/code] completely mutes one of the channels if the sound is located "
"exactly to the left (or right) of the listener.\n"
"The default value of [code]0.5[/code] is tuned for headphones which means "
"that the opposite side channel goes no lower than 50% of the volume of the "
"nearside channel. You may find that you can set this value higher for "
"speakers to have the same effect since both ears can hear from each speaker."
msgstr ""
"La force de base de l'effet de balance pour tous les nœuds "
"[AudioStreamPlayer3D]. La force de balance peut être encore accrue sur chaque "
"nœud en utilisant [member AudioStreamPlayer3D.panning_strength]. Une valeur "
"de [code]0.0[/code] désactive entièrement la balance stéréo, laissant "
"seulement l'atténuation du volume en place. Une valeur de [code]1.0[/code] "
"mute complètement l'un des canaux si le son est situé exactement à gauche (ou "
"à droite) de l'auditeur.\n"
"La valeur par défaut de [code]0.5[/code] est ajustée pour des écouteurs, ce "
"qui signifie que le canal opposé au son ne va pas en dessous de 50% du volume "
"du canal du côté proche du son. Vous pouvez vouloir fixer cette valeur plus "
"haut pour les haut-parleurs afin d'avoir le même effet car les deux oreilles "
"peuvent entendre le son de chaque haut-parleur."

msgid ""
"Specifies the default playback type of the platform.\n"
"The default value is set to [b]Stream[/b], as most platforms have no issues "
"mixing streams."
msgstr ""
"Spécifie le type de lecture par défaut de la plateforme.\n"
"La valeur par défaut est définie à [b]Stream[/b], car la plupart des "
"plateformes n'ont aucun problème pour mixer des flux."

msgid ""
"Specifies the default playback type of the Web platform.\n"
"The default value is set to [b]Sample[/b] as the Web platform is not suited "
"to mix audio streams outside of the Web Audio API, especially when exporting "
"a single-threaded game. [b]Sample[/b] allows for lower latency on the web "
"platform at the cost of flexibility ([AudioEffect]s are not supported).\n"
"[b]Warning:[/b] Forcing [b]Stream[/b] on the Web platform may cause high "
"audio latency and crackling, especially when exporting a multi-threaded game."
msgstr ""
"Spécifie le type de lecture par défaut de la plateforme Web.\n"
"La valeur par défaut est définie à [b]Sample[/b] car la plate-forme Web n'est "
"pas adaptée pour mixer des flux audio en dehors de l'API Audio Web, surtout "
"lorsque vous exportez un jeu single-thread. [b]Sample[/b] permet de réduire "
"la latence sur la plateforme Web à un coût de flexibilité (les [AudioEffect]s "
"ne sont pas pris en charge).\n"
"[b]Avertissement :[/b] Forcer [b]Stream[/b] sur la plateforme Web peut causer "
"une latence audio élevée et des craquements, surtout lors de l'export d'un "
"jeu multi-threaded."

msgid ""
"Sets the [url=https://developer.apple.com/documentation/avfaudio/"
"avaudiosession/categoryoptions/1616611-mixwithothers]mixWithOthers[/url] "
"option for the AVAudioSession on iOS. This will override the mix behavior, if "
"the category is set to [code]Play and Record[/code], [code]Playback[/code], "
"or [code]Multi Route[/code].\n"
"[code]Ambient[/code] always has this set per default."
msgstr ""
"Définit l'option [url=https://developer.apple.com/documentation/avfaudio/"
"avaudiosession/categoryoptions/1616611-mixwithothers]mixWithOthers[/url] pour "
"la AVAudioSession sur iOS. Cela redéfinira le comportement du mixage, si la "
"catégorie est définie à [code]Play and Record[/code], [code]Playback[/code], "
"ou [code]Multi Route[/code].\n"
"[code]Ambient[/code] a toujours ceci défini par défaut."

msgid ""
"Sets the [url=https://developer.apple.com/documentation/avfaudio/"
"avaudiosessioncategory]AVAudioSessionCategory[/url] on iOS. Use the "
"[code]Playback[/code] category to get sound output, even if the phone is in "
"silent mode."
msgstr ""
"Définit la [url=https://developer.apple.com/documentation/avfaudio/"
"avaudiosessioncategory]AVAudioSessionCategory[/url] sur iOS. Utilisez la "
"catégorie [code]Playback[/code] pour obtenir la sortie sonore, même si le "
"téléphone est en mode silencieux."

msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"unchanged unless you know what you are doing."
msgstr ""
"Paramètre pour fixer le délai audio lors de la lecture d'une vidéo. Mieux "
"vaut laisser cela inchangé à moins que vous ne sachiez ce que vous faites."

msgid ""
"If [code]true[/code], ambient lights will be imported from COLLADA models as "
"[DirectionalLight3D]. If [code]false[/code], ambient lights will be ignored."
msgstr ""
"Si [code]true[/code], les lumières ambiantes seront importés des modèles "
"COLLADA comme des [DirectionalLight3D]. Si [code]false[/code], les lumières "
"ambiants seront ignorées."

msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level. "
"[code]-1[/code] uses the default gzip compression level, which is identical "
"to [code]6[/code] but could change in the future due to underlying zlib "
"updates."
msgstr ""
"Le niveau de compression par défaut pour gzip. Affecte les scènes et les "
"ressources compressées. Des niveaux plus élevés résultent en des fichiers "
"plus petits au coût de la vitesse de compression. La vitesse de décompression "
"n'est généralement pas affectée par le niveau de compression. [code]-1[/code] "
"utilise le niveau de compression gzip par défaut, qui est identique à "
"[code]6[/code] mais pourrait changer à l'avenir en raison des mises à jour de "
"la bibliothèque zlib sous-jacente."

msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level. "
"[code]-1[/code] uses the default gzip compression level, which is identical "
"to [code]6[/code] but could change in the future due to underlying zlib "
"updates."
msgstr ""
"Le niveau de compression par défaut pour Zlib. Affecte les scènes et les "
"ressources compressées. Des niveaux plus élevés résultent en des fichiers "
"plus petits au coût de la vitesse de compression. La vitesse de décompression "
"n'est généralement pas affectée par le niveau de compression. [code]-1[/code] "
"utilise le niveau de compression gzip par défaut, qui est identique à "
"[code]6[/code] mais pourrait changer à l'avenir en raison des mises à jour de "
"la bibliothèque zlib sous-jacente."

msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
"Le niveau de compression par défaut pour Zstandard. Affecte les scènes et les "
"ressources compressées. Des niveaux plus élevés résultent en des fichiers "
"plus petits au coût de la vitesse de compression. La vitesse de décompression "
"n'est généralement pas affectée par le niveau de compression."

msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
"Active le [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] dans Zstandard."

msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
"Limite de taille la plus grande (en puissance de 2) autorisée lors de la "
"compression utilisant le long-distance matching avec Zstandard. Des valeurs "
"plus élevées peuvent entraîner une meilleure compression, mais nécessiteront "
"plus de mémoire lors de la compression et de la décompression."

msgid ""
"If [code]true[/code], logs all output and error messages to files. See also "
"[member debug/file_logging/log_path], [member debug/file_logging/"
"max_log_files], and [member application/run/flush_stdout_on_print]."
msgstr ""
"Si [code]true[/code], enregistre tous les messages de sortie et d'erreur vers "
"des fichiers. Voir aussi [member debug/file_logging/log_path], [member debug/"
"file_logging/max_log_files], et [member application/run/"
"flush_stdout_on_print]."

msgid ""
"Desktop override for [member debug/file_logging/enable_file_logging], as log "
"files are not readily accessible on mobile/Web platforms."
msgstr ""
"Redéfinition de bureau pour [member debug/file_logging/enable_file_logging], "
"car les fichiers journaux ne sont pas facilement accessibles sur les "
"plateformes mobiles/Web."

msgid ""
"Path at which to store log files for the project. Using a path under "
"[code]user://[/code] is recommended.\n"
"This can be specified manually on the command line using the [code]--log-file "
"<file>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]. If this command line "
"argument is specified, log rotation is automatically disabled (see [member "
"debug/file_logging/max_log_files])."
msgstr ""
"Chemin où stocker les fichiers logs pour le projet. Il est recommandé "
"d'utiliser un chemin sous [code]user://[/code].\n"
"Ceci peut être spécifié manuellement sur la ligne de commande en utilisant "
"l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url] [code]--log-file <fichier>[/code]. Si cet argument de "
"ligne de commande est spécifié, la rotation des logs est automatiquement "
"désactivée (voir [member debug/file_logging/max_log_files])."

msgid ""
"Specifies the maximum number of log files allowed (used for rotation). Set to "
"[code]1[/code] to disable log file rotation.\n"
"If the [code]--log-file <file>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url] is used, log rotation "
"is always disabled."
msgstr ""
"Spécifie le nombre maximal de fichiers logs autorisés (utilisé pour la "
"rotation). Définissez à [code]1[/code] pour désactiver la rotation des logs.\n"
"Si l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url] [code]--log-file <fichier>[/code] est utilisé, la "
"rotation des logs est toujours désactivée."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an [code]assert[/code] call always evaluates to "
"[code]false[/code]."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un appel à [code]assert[/"
"code] est toujours évalué à [code]false[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an [code]assert[/code] call always evaluates to "
"[code]true[/code]."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un appel à [code]assert[/"
"code] est toujours évalué à [code]true[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable captured by a lambda is reassigned, "
"since this does not modify the outer local variable."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une variable locale "
"capturée par une fonction lambda est réaffectée, car cela ne modifie par la "
"variable locale extérieure."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an identifier contains characters that can be "
"confused with something else, like when mixing different alphabets."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un identifiant contient "
"des caractères qui peuvent être confondus avec quelque chose d'autre, comme "
"lors du mélange d'alphabets différents."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an identifier declared in the nested block has the "
"same name as an identifier declared below in the parent block."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un identifiant est "
"déclaré dans le bloc imbriqué a le même nom qu'un identifiant dans le bloc "
"parent."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an identifier that will be shadowed below in the "
"block is used."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un identifiant qui sera "
"masqué plus bas dans le bloc est utilisé."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when deprecated keywords are used.\n"
"[b]Note:[/b] There are currently no deprecated keywords, so this warning is "
"never produced."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque des mots-clés obsolètes "
"sont utilisés.\n"
"[b]Note :[/b] Il n'y a actuellement aucun mot-clé obsolète, donc cet "
"avertissement n'arrive jamais."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an empty file is parsed."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un fichier vide est "
"analysé."

msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
"Si [code]true[/code], actives des avertissements GDScript spécifiques (voir "
"les paramètres [code]debug/gdscript/warnings/*[/code]). Si [code]false[/"
"code], désactive tous les avertissements GDScript."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a variable has an enum type but no explicit default "
"value, but only if the enum does not contain [code]0[/code] as a valid value."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une variable qui a un "
"type enum mais aucune valeur par défaut explicite, mais seulement si "
"l'énumération ne contient pas [code]0[/code] comme valeur valide."

msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
"Si [code]true[/code], les scripts dans le dossier [code]res://addons[/code] "
"ne généreront pas d'avertissements."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when [method Node.get_node] (or the shorthand [code]$[/"
"code]) is used as default value of a class variable without the "
"[code]@onready[/code] annotation."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque [method Node.get_node] "
"(ou le raccourci [code]$[/code]) est utilisé comme valeur par défaut d'une "
"variable de classe sans l'annotation [code]@onready[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a ternary operator may emit values with incompatible "
"types."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un opérateur ternaire "
"peut émettre des valeurs avec des types incompatibles."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a static inferred type uses a [Variant] as initial "
"value, which makes the static type to also be Variant."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un type statique inféré "
"utilise un [Variant] comme valeur initiale, ce qui fait que le type statique "
"devient aussi un Variant."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when trying to use an integer as an enum without an "
"explicit cast."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un entier est utilisé "
"comme un enum sans cast explicite."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when trying to use an integer as an enum when there is no "
"matching enum member for that numeric value."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un entier est utilisé "
"comme un enum quand il n'y a pas de numéro d'énumération pour cette valeur "
"numérique."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when dividing an integer by another integer (the decimal "
"part will be discarded)."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de la division d'un entier "
"par un autre entier (la partie décimale sera ignorée)."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when the base class script has the [code]@tool[/code] "
"annotation, but the current class script does not have it."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque la classe de base du "
"script a l'annotation [code]@tool[/code], mais la classe du script actuel ne "
"l'a pas."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when passing a floating-point value to a function that "
"expects an integer (it will be converted and lose precision)."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors du passage d'un flottant à "
"une fonction qui s'attend à un entier (il sera converti et perdra en "
"précision)."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a method in the script overrides a native method, "
"because it may not behave as expected."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une méthode dans le "
"script redéfinit une méthode native, car cela peut ne pas se comporter comme "
"attendu."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when the [code]@onready[/code] annotation is used together "
"with the [code]@export[/code] annotation, since it may not behave as expected."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque l'annotation "
"[code]@onready[/code] est utilisée avec l'annotation [code]@export[/code], "
"car cela peut ne pas se comporter comme prévu."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a function that is not a coroutine is called with "
"await."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une fonction qui n'est "
"pas une coroutine est appelée avec le mot-clé await."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when the [code]@static_unload[/code] annotation is used in "
"a script without any static variables."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque l'annotation "
"[code]@static_unload[/code] est utilisée dans un script sans variable "
"statique."

msgid ""
"When enabled, using a property, enum, or function that was renamed since "
"Godot 3 will produce a hint if an error occurs."
msgstr ""
"Lorsque activé, utiliser une propriété, un énumération ou une fonction qui a "
"été renommée depuis Godot 3 produira une aide si une erreur survient."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a function without using its return value (by "
"assigning it to a variable or using it as a function argument). These return "
"values are sometimes used to indicate possible errors using the [enum Error] "
"enum."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque de l'appel d'une "
"fonction sans utiliser sa valeur renvoyée (en l'assignant à une variable ou "
"l'utiliser comme un argument de fonction). Ces valeurs renvoyées sont parfois "
"utilisées pour indiquer des erreurs possibles à l'aide de l'énumération [enum "
"Error]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when defining a local or member variable, signal, or enum "
"that would have the same name as a built-in function or global class name, "
"thus shadowing it."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque de la définition d'un "
"signal, d'une énumération ou d'une variable membre ou locale qui aurait le "
"même nom qu'une fonction intégrée et un nom de classe globale, ce qui la "
"masquerait."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable or local constant shadows a member "
"declared in the current class."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une variable locale ou "
"une constante locale masque un membre déclaré dans la classe actuelle."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable or local constant shadows a member "
"declared in a base class."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une variable locale ou "
"une constante locale masque un membre déclaré dans une classe de base."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling an expression that may have no effect on the "
"surrounding code, such as writing [code]2 + 2[/code] as a statement."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'appel d'une "
"expression qui pourrait n'avoir aucun effet sur le code environnant, comme "
"par exemple écrire [code]2+2[/code] comme instruction."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a ternary expression that may have no effect "
"on the surrounding code, such as writing [code]42 if active else 0[/code] as "
"a statement."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'appel d'une "
"expression ternaire qui pourrait n'avoir aucun effet sur le code environnant, "
"comme par exemple écrire [code]42 if active else 0[/code] comme instruction."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a static method from an instance of a class "
"instead of from the class directly."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'appel à une méthode "
"statique depuis une instance d'une classe au lieu de directement depuis la "
"classe."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when using a variable that wasn't previously assigned."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'utilisation d'une "
"variable qui n'a pas été précédemment assignée."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when assigning a variable using an assignment operator "
"like [code]+=[/code] if the variable wasn't previously assigned."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'assignation d'une "
"variable en utilisant un opérateur d'assignation comme [code]+=[/code] si la "
"variable n'a pas été précédemment assignée."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when unreachable code is detected (such as after a "
"[code]return[/code] statement that will always be executed)."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsque du code inatteignable "
"est détecté (comme par exemple après une instruction [code]return[/code] qui "
"sera toujours exécutée)."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an unreachable [code]match[/code] pattern is detected."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un pattern [code]match[/"
"code] inatteignable est détecté."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when using an expression whose type may not be compatible "
"with the function parameter expected."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'utilisation d'une "
"expression dont le type peut ne pas être compatible avec le paramètre de "
"fonction attendu."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a [Variant] value is cast to a non-Variant."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une valeur [Variant] est "
"cast en un non-Variant."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a method whose presence is not guaranteed at "
"compile-time in the class."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'appel à une méthode "
"dont la présence dans la classe n'est pas garantie durant la compilation."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when accessing a property whose presence is not guaranteed "
"at compile-time in the class."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors de l'accession à une "
"propriété dont la présence dans la classe n'est pas garantie durant la "
"compilation."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when returning a call from a [code]void[/code] function "
"when such call cannot be guaranteed to be also [code]void[/code]."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lors du renvoi d'un appel dans "
"une fonction [code]void[/code] lorsque cet appel ne peut être garanti d'être "
"aussi [code]void[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a variable or parameter has no static type, or if a "
"function has no static return type.\n"
"[b]Note:[/b] This warning is recommended together with [member "
"EditorSettings.text_editor/completion/add_type_hints] to help achieve type "
"safety."
msgstr ""
"Quand défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur quand une variable ou un "
"paramètre n'a pas de type statique, ou si une fonction n'a pas de type de "
"retour statique.\n"
"[b]Note :[/b] Cet avertissement est recommandé avec [member "
"EditorSettings.text_editor/completion/add_type_hints] pour aider à la sûreté "
"du typage."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local constant is never used."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une constante locale "
"n'est jamais utilisée."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a function parameter is never used."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un paramètre de fonction "
"n'est jamais utilisé."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a private member variable is never used."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une variable membre "
"privée n'est jamais utilisée."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a signal is declared but never explicitly used in the "
"class."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'un signal est déclaré "
"mais jamais utilisé explicitement dans la classe."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable is unused."
msgstr ""
"Lorsque défini à [code]warn[/code] ou [code]error[/code], produit "
"respectivement un avertissement ou une erreur lorsqu'une variable locale "
"n'est pas utilisée."

msgid ""
"Message to be displayed before the backtrace when the engine crashes. By "
"default, this message is only used in exported projects due to the editor-"
"only override applied to this setting."
msgstr ""
"Message à afficher avant la trace d'appels lorsque le moteur plante. Par "
"défaut, ce message n'est utilisé que dans les projets exportés en raison de "
"la redéfinition appliquée seulement dans l'éditeur à ce paramètre."

msgid ""
"Editor-only override for [member debug/settings/crash_handler/message]. Does "
"not affect exported projects in debug or release mode."
msgstr ""
"Redéfinition seulement pour l'éditeur de [member debug/settings/crash_handler/"
"message]. N'affecte pas les projets exportés en mode de débogage ou de "
"release."

msgid ""
"Whether GDScript local variables will be tracked in all builds, including "
"export builds, thus allowing [method Engine.capture_script_backtraces] to "
"capture them when enabling its [code]include_variables[/code] parameter.\n"
"Enabling this comes at the cost of roughly 50 bytes of memory per local "
"variable, for every compiled class in the entire project, so can be several "
"MiB in larger projects.\n"
"[b]Note:[/b] This setting has no effect when running the game from the "
"editor, where GDScript local variables are tracked regardless."
msgstr ""
"Si les variables locales GDScript vont être suivies dans toutes les "
"compilations, y compris les compilations exportées, permettant ainsi à "
"[method Engine.capture_script_backtraces] de les capturer lorsque son "
"paramètre [code]include_variables[/code] est actif.\n"
"Activer ceci a un coût d'environ 50 octets de mémoire par variable locale, "
"pour chaque classe compilée dans tout le projet, et peut donc être de "
"quelques Mio dans des projets plus larges.\n"
"[b]Note :[/b] Ce paramètre n'a aucun effet sur lors de l'exécution du jeu "
"depuis l'éditeur, où les variables locales GDScript sont toujours suivies."

msgid "Maximum call stack allowed for debugging GDScript."
msgstr "Pile d’appels maximale autorisée pour le débogage du GDScript."

msgid ""
"If [code]true[/code], enables warnings which can help pinpoint where nodes "
"are being incorrectly updated, which will result in incorrect interpolation "
"and visual glitches.\n"
"When a node is being interpolated, it is essential that the transform is set "
"during [method Node._physics_process] (during a physics tick) rather than "
"[method Node._process] (during a frame)."
msgstr ""
"Si [code]true[/code], active des avertissements qui peuvent aider à "
"déterminer où des nœuds sont mal mis à jour, ce qui entraînera une "
"interpolation incorrecte et des glitchs visuels.\n"
"Lorsqu'un nœud est interpolé, il est essentiel que la transformation soit "
"définie pendant [method Node._physics_process] (durant un tic de calcul de la "
"physique) plutôt que [method Node._process] (durant une trame)."

msgid "Maximum number of functions per frame allowed when profiling."
msgstr "Nombre maximal de fonctions par trame autorisées lors du profilage."

msgid ""
"Maximum number of timestamp query elements allowed per frame for visual "
"profiling."
msgstr ""
"Nombre maximum d'éléments de requête de timestamp autorisés par trame pour le "
"profilage visuel."

msgid "Print frames per second to standard output every second."
msgstr ""
"Afficher le nombre de trames par seconde dans la sortie standard chaque "
"seconde."

msgid ""
"Print GPU profile information to standard output every second. This includes "
"how long each frame takes the GPU to render on average, broken down into "
"different steps of the render pipeline, such as CanvasItems, shadows, glow, "
"etc."
msgstr ""
"Afficher des informations sur le profil GPU par seconde dans la sortie "
"standard chaque seconde. Cela inclut combien de temps prend en moyenne le GPU "
"pour rendre une trame, divisé en diverses étapes de la pipeline de rendu, "
"comme les CanvasItems, les ombres, le glow, etc..."

msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc. This can also be enabled using the [code]--verbose[/code] or "
"[code]-v[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url], even on an exported "
"project. See also [method OS.is_stdout_verbose] and [method "
"@GlobalScope.print_verbose]."
msgstr ""
"Affiche plus d'informations sur la sortie standard lors de l'exécution. "
"Affiche des informations telles que les fuites de mémoire, quelles scènes et "
"ressources sont chargées, etc. Cela peut également être activé en utilisant "
"l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url] [code]--verbose[/code] ou [code]-v[/code], même sur "
"un projet exporté. Voir aussi [method OS.is_stdout_verbose] et [method "
"@GlobalScope.print_verbose]."

msgid ""
"When set to [code]true[/code], produces a warning when the shader exceeds "
"certain device limits. Currently, the only device limit checked is the limit "
"on uniform buffer size. More device limits will be added in the future."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsque le "
"shader dépasse certaines limites du périphérique. Actuellement, la seule "
"limite de périphérique vérifiée est la limite de taille du buffer uniforme. À "
"l'avenir, d'autres limites de périphériques seront ajoutées."

msgid ""
"If [code]true[/code], enables specific shader warnings (see [code]debug/"
"shader_language/warnings/*[/code] settings). If [code]false[/code], disables "
"all shader warnings."
msgstr ""
"Si [code]true[/code], active des avertissements de shader spécifiques (voir "
"les paramètres [code]debug/shader_language/warnings/*[/code]). Si "
"[code]false[/code], désactive tous les avertissements de shader."

msgid ""
"When set to [code]true[/code], produces a warning when two floating-point "
"numbers are compared directly with the [code]==[/code] operator or the [code]!"
"=[/code] operator."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsque deux "
"nombres flottants sont comparés directement avec l'opérateur [code]==[/code] "
"ou l'opérateur [code]!=[/code]."

msgid ""
"When set to [code]true[/code], produces a warning upon encountering certain "
"formatting errors. Currently this only checks for empty statements. More "
"formatting errors may be added over time."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lors de la "
"rencontre de certaines erreurs de formatage. Actuellement, cela ne vérifie "
"que les instructions vides. D'autres erreurs de formatage pourront être "
"ajoutées dans le futur."

msgid "When set to [code]true[/code], warnings are treated as errors."
msgstr ""
"Lorsque défini à [code]true[/code], les avertissements sont traités comme des "
"erreurs."

msgid ""
"When set to [code]true[/code], produces a warning when a constant is never "
"used."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsqu'une "
"constante n'est jamais utilisée."

msgid ""
"When set to [code]true[/code], produces a warning when a function is never "
"used."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsqu'une "
"fonction n'est jamais utilisée."

msgid ""
"When set to [code]true[/code], produces a warning when a local variable is "
"never used."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsqu'une "
"variable locale n'est jamais utilisée."

msgid ""
"When set to [code]true[/code], produces a warning when a struct is never used."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsqu'une "
"struct n'est jamais utilisée."

msgid ""
"When set to [code]true[/code], produces a warning when a uniform is never "
"used."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsqu'un "
"uniform n'est jamais utilisé."

msgid ""
"When set to [code]true[/code], produces a warning when a varying is never "
"used."
msgstr ""
"Lorsque défini à [code]true[/code], produit un avertissement lorsqu'un "
"varying n'est jamais utilisé."

msgid ""
"Color of the avoidance agents radius, visible when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Couleur du rayon des agents d'évidement, visible lorsque \"Évitement "
"visible\" est activé dans le menu Débogage."

msgid ""
"If enabled, displays avoidance agents radius when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Si activé, affiche le rayon des agents d'évitement lorsque \"Évitement "
"visible\" est activé dans le menu Débogage."

msgid ""
"If enabled, displays avoidance obstacles radius when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Si activé, affiche le rayon des obstacle d'évitement lorsque \"Évitement "
"visible\" est activé dans le menu Débogage."

msgid ""
"If enabled, displays static avoidance obstacles when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Si activé, affiche le rayon des obstacle d'évitement statiques lorsque "
"\"Évitement visible\" est activé dans le menu Débogage."

msgid ""
"Color of the avoidance obstacles radius, visible when \"Visible Avoidance\" "
"is enabled in the Debug menu."
msgstr ""
"Couleur du rayon des obstacles d'évidement, visible lorsque \"Évitement "
"visible\" est activé dans le menu Débogage."

msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
"Couleur des points de contact entre les formes de collision, visible lorsque "
"\"Formes de collision visibles\" est activé dans le menu Débogage."

msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
"Définit si la physique 2D affichera les contours de collision dans le jeu "
"lorsque \"Formes de collision visibles\" est activé dans le menu Débogage."

msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
"Le nombre maximal de points de contact entre les formes de collision à "
"afficher lorsque \"Formes de collision visibles\" est activé dans le menu "
"Débogage."

msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
"Couleur des formes de collision, visible lorsque \"Formes de collision "
"visibles\" est activé dans le menu Débogage."

msgid ""
"Color to display enabled navigation agent paths when an agent has debug "
"enabled."
msgstr ""
"Couleur pour afficher les chemins d'agent de navigation activés lorsqu'un "
"agent a le débogage activé."

msgid ""
"Rasterized size (pixel) used to render navigation agent path points when an "
"agent has debug enabled."
msgstr ""
"Taille rastérisée (en pixels) utilisée pour rendre les points du chemin de "
"l'agent de navigation lorsqu'un agent a le débogage activé."

msgid ""
"Color to display edge connections between navigation regions, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Couleur pour afficher les connexions de bords entre les régions de "
"navigation, visibles lorsque \"Visible Navigation\" est activé dans le menu "
"Débogage."

msgid ""
"If enabled, displays navigation agent paths when an agent has debug enabled."
msgstr ""
"Si activé, affiche les chemins d'agent de navigation lorsqu'un agent a le "
"débogage activé."

msgid ""
"If enabled, displays edge connections between navigation regions when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Si activé, affiche les arrêtes des connexions entre les régions de navigation "
"lorsque « Navigation visible » est activé dans le menu Débogage."

msgid ""
"If enabled, displays navigation mesh polygon edges when \"Visible "
"Navigation\" is enabled in the Debug menu."
msgstr ""
"Si activé, affiche les arrêtes des polygones de maillage de navigation "
"lorsque « Navigation visible » est activé dans le menu Débogage."

msgid ""
"If enabled, colorizes each navigation mesh polygon face with a random color "
"when \"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Si activé, colorie chaque face des polygones de maillage de navigation avec "
"une couleur aléatoire lorsque « Navigation visible » est activé dans le menu "
"Débogage."

msgid ""
"If enabled, displays navigation link connections when \"Visible Navigation\" "
"is enabled in the Debug menu."
msgstr ""
"Si activé, affiche les connexions de lien de navigation lorsque « Navigation "
"visible » est activé dans le menu Débogage."

msgid ""
"Color to display enabled navigation mesh polygon edges, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Couleur pour afficher les arrêtes de polygones de maillage de navigation "
"activés, visibles lorsque \"Navigation visible\" est activé dans le menu "
"Débogage."

msgid ""
"Color to display disabled navigation mesh polygon edges, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Couleur pour afficher les arrêtes de polygones de maillage de navigation "
"désactivés, visibles lorsque \"Navigation visible\" est activé dans le menu "
"Débogage."

msgid ""
"Color to display enabled navigation mesh polygon faces, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Couleur pour afficher les faces de polygone de maillage de navigation "
"activés, visibles lorsque \"Navigation visible\" est activé dans le menu "
"Débogage."

msgid ""
"Color to display disabled navigation mesh polygon faces, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Couleur pour afficher les faces de polygone de maillage de navigation "
"désactivés, visibles lorsque \"Navigation visible\" est activé dans le menu "
"Débogage."

msgid ""
"Color to use to display navigation link connections, visible when \"Visible "
"Navigation\" is enabled in the Debug menu."
msgstr ""
"Couleur pour afficher les connections de lien de navigation, visibles lorsque "
"\"Navigation visible\" est activé dans le menu Débogage."

msgid ""
"Color to use to display disabled navigation link connections, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Couleur pour afficher les connections de lien de navigation désactivés, "
"visibles lorsque \"Navigation visible\" est activé dans le menu Débogage."

msgid ""
"If enabled, displays navigation agent paths through geometry when an agent "
"has debug enabled."
msgstr ""
"Si activé, affiche les chemins d'agent de navigation à travers la géométrie "
"lorsqu'un agent a le débogage activé."

msgid ""
"If enabled, displays edge connections between navigation regions through "
"geometry when \"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Si activé, affiche les arrêtes de connexion entre les régions de navigation à "
"travers la géométrie lorsque « Navigation visible » est activé dans le menu "
"Débogage."

msgid ""
"If enabled, displays navigation mesh polygon edges through geometry when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Si activé, affiche les arrêtes des polygones de maillage de navigation à "
"travers la géométrie lorsque « Navigation visible » est activé dans le menu "
"Débogage."

msgid ""
"If enabled, displays navigation link connections through geometry when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Si activé, affiche les connexions de lien de navigation à travers la "
"géométrie lorsque « Navigation visible » est activé dans le menu Débogage."

msgid ""
"Color of the curve path geometry, visible when \"Visible Paths\" is enabled "
"in the Debug menu."
msgstr ""
"Couleur de la géométrie du chemin de courbe, visible lorsque « Chemins "
"visibles » est activé dans le menu Débogage."

msgid ""
"Line width of the curve path geometry, visible when \"Visible Paths\" is "
"enabled in the Debug menu."
msgstr ""
"Largeur de ligne de la géométrie du chemin de courbe, visible lorsque "
"« Chemins visibles » est activé dans le menu Débogage."

msgid ""
"Sets the driver to be used by the display server. This property can not be "
"edited directly, instead, set the driver using the platform-specific "
"overrides."
msgstr ""
"Définit le pilote utilisé par le serveur d'affichage. Cette propriété ne peut "
"pas être modifiée directement, à la place, définissez le driver en utilisant "
"les redéfinitions spécifiques aux plateformes."

msgid "Android override for [member display/display_server/driver]."
msgstr "Redéfinition Android pour [member display/display_server/driver]."

msgid "iOS override for [member display/display_server/driver]."
msgstr "Redéfinition iOS pour [member display/display_server/driver]."

msgid "LinuxBSD override for [member display/display_server/driver]."
msgstr "Redéfinition LinuxBSD pour [member display/display_server/driver]."

msgid "MacOS override for [member display/display_server/driver]."
msgstr "Redéfinition MacOS pour [member display/display_server/driver]."

msgid "visionOS override for [member display/display_server/driver]."
msgstr "Redéfinition visionOS pour [member display/display_server/driver]."

msgid "Windows override for [member display/display_server/driver]."
msgstr "Redéfinition Windows pour [member display/display_server/driver]."

msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
"L'image personnalisée pour le curseur de la souris (limitée à 256x256 pixels)."

msgid "Hotspot for the custom mouse cursor image."
msgstr "Point d'activation pour l’image de curseur de souris personnalisée."

msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
"Le décalage de la position des infobulles, relatif au point d'activation du "
"curseur de la souris."

msgid ""
"Enable Swappy for stable frame pacing on Android. Highly recommended.\n"
"[b]Note:[/b] This option will be forced off when using OpenXR."
msgstr ""
"Active Swappy pour du frame pacing stable sur Android. Très recommandé.\n"
"[b]Note :[/b] Cette option sera forcée d'être désactivée lorsque vous "
"utilisez OpenXR."

msgid ""
"The default screen orientation to use on mobile devices. See [enum "
"DisplayServer.ScreenOrientation] for possible values.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
"not flip the project resolution's width and height automatically. Instead, "
"you have to set [member display/window/size/viewport_width] and [member "
"display/window/size/viewport_height] accordingly."
msgstr ""
"L'orientation par défaut de l'écran à utiliser sur les appareils mobiles. "
"Voir [enum DisplayServer.ScreenOrientation] pour les valeurs possibles.\n"
"[b]Note :[/b] Lors d'une orientation en portrait, ce paramètre n'inverse pas "
"automatiquement la largeur et la hauteur de la résolution du projet. Au lieu "
"de cela, vous devez définir [member display/window/size/viewport_width] et "
"[member display/window/size/viewport_height] en conséquence."

msgid ""
"If [code]true[/code], iOS devices that support high refresh rate/"
"\"ProMotion\" will be allowed to render at up to 120 frames per second."
msgstr ""
"Si [code]true[/code], les appareils iOS qui supportent un taux de "
"rafraîchissement /\"ProMotion\" élevé seront autorisés à rendre jusqu'à 120 "
"trames par seconde."

msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
"Si [code]true[/code], l'indicateur Home est automatiquement caché. Cela "
"n'affecte que les appareils iOS sans bouton Home physique."

msgid "If [code]true[/code], the status bar is hidden while the app is running."
msgstr ""
"Si [code]true[/code], la barre de statut est cachée pendant que l'application "
"fonctionne."

msgid ""
"If [code]true[/code], it will require two swipes to access iOS UI that uses "
"gestures.\n"
"[b]Note:[/b] This setting has no effect on the home indicator if "
"[code]hide_home_indicator[/code] is [code]true[/code]."
msgstr ""
"Si [code]true[/code], il faudra deux swipes pour accéder à l'interface "
"utilisateur iOS qui utilise des gestes.\n"
"[b]Note :[/b] Ce paramètre n'a pas d'effet sur l'indicateur Home si "
"[code]hide_home_indicator[/code] vaut [code]true[/code]."

msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
"unless you need it. See also [member display/window/size/transparent] and "
"[member rendering/viewport/transparent_background]."
msgstr ""
"Si [code]true[/code], permet la transparence par pixel pour l'arrière-plan de "
"la fenêtre. Cela affecte la performance, alors laissez-le sur [code]false[/"
"code] à moins que vous en ayez besoin. Voir aussi [member display/window/size/"
"transparent] et [member rendering/viewport/transparent_background]."

msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and Web."
msgstr ""
"Force la fenêtre principale à toujours être au dessus des autres.\n"
"[b]Note :[/b] Ce paramètre est ignoré sur iOS, Android et Web."

msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and Web."
msgstr ""
"Force la fenêtre principale à être sans bordures.\n"
"[b]Note :[/b] Ce paramètre est ignoré sur iOS, Android et Web."

msgid ""
"Main window content is expanded to the full size of the window. Unlike a "
"borderless window, the frame is left intact and can be used to resize the "
"window, and the title bar is transparent, but has minimize/maximize/close "
"buttons.\n"
"[b]Note:[/b] This setting is implemented only on macOS."
msgstr ""
"Le contenu principal de la fenêtre est élargi à la taille complète de la "
"fenêtre. Contrairement à une fenêtre sans frontières, le cadre est laissé "
"intact et peut être utilisé pour redimensionner la fenêtre, et la barre de "
"titre est transparente, mais a les boutons minimiser/maximiser/fermer.\n"
"[b]Note :[/b] Ce paramètre n'est implémenté que sur macOS."

msgid ""
"Main window initial position (in virtual desktop coordinates), this setting "
"is used only if [member display/window/size/initial_position_type] is set to "
"\"Absolute\" ([code]0[/code]).\n"
"[b]Note:[/b] This setting only affects the exported project, or when the "
"project is run from the command line. In the editor, the value of [member "
"EditorSettings.run/window_placement/rect_custom_position] is used instead."
msgstr ""
"Position initiale de la fenêtre principale (dans les coordonnées de bureau "
"virtuel), ce paramètre est utilisé seulement si [member display/window/size/"
"initial_position_type] est défini à \"Absolute\" ([code]0[/code]).\n"
"[b]Note :[/b] Ce paramètre n'affecte que le projet exporté, ou lorsque le "
"projet est exécuté depuis la ligne de commande. Dans l'éditeur, la valeur de "
"[member EditorSettings.run/window_placement/rect_custom_position] est "
"utilisée à la place."

msgid ""
"Main window initial position.\n"
"[code]0[/code] - \"Absolute\", [member display/window/size/initial_position] "
"is used to set window position.\n"
"[code]1[/code] - \"Primary Screen Center\".\n"
"[code]2[/code] - \"Other Screen Center\", [member display/window/size/"
"initial_screen] is used to set the screen.\n"
"[b]Note:[/b] This setting only affects the exported project, or when the "
"project is run from the command line. In the editor, the value of [member "
"EditorSettings.run/window_placement/rect] is used instead."
msgstr ""
"Position initiale de la fenêtre principale.\n"
"[code]0[/code] - \"Absolute\", [member display/window/size/initial_position] "
"est utilisé pour définir la position de la fenêtre.\n"
"[code]1[/code] - \"Primary Screen Center\" : centre de l'écran principal.\n"
"[code]2[/code] - \"Autre Screen Center\" : au centre de l'écran défini par "
"[member display/window/size/initial_screen].\n"
"[b]Note :[/b] Ce paramètre n'affecte que le projet exporté, ou lorsque le "
"projet est exécuté depuis la ligne de commande. Dans l'éditeur, la valeur de "
"[member EditorSettings.run/window_placement/rect] est utilisée à la place."

msgid ""
"Main window initial screen, this setting is used only if [member display/"
"window/size/initial_position_type] is set to \"Other Screen Center\" "
"([code]2[/code]).\n"
"[b]Note:[/b] This setting only affects the exported project, or when the "
"project is run from the command line. In the editor, the value of [member "
"EditorSettings.run/window_placement/screen] is used instead."
msgstr ""
"Écran initial de la fenêtre principale, ce paramètre est utilisé seulement si "
"[member display/window/size/initial_position_type] est défini à \"Other "
"Screen Center\" ([code]1[/code]).\n"
"[b]Note :[/b] Ce paramètre n'affecte que le projet exporté, ou lorsque le "
"projet est exécuté depuis la ligne de commande. Dans l'éditeur, la valeur de "
"[member EditorSettings.run/window_placement/screen] est utilisée à la place."

msgid "If [code]true[/code], the main window's maximize button is disabled."
msgstr ""
"Si [code]true[/code], le bouton de maximisation de la fenêtre principale est "
"désactivé."

msgid "If [code]true[/code], the main window's minimize button is disabled."
msgstr ""
"Si [code]true[/code], le bouton de minimisation de la fenêtre principale est "
"désactivé."

msgid ""
"Main window mode. See [enum DisplayServer.WindowMode] for possible values and "
"how each mode behaves.\n"
"[b]Note:[/b] Game embedding is available only in the \"Windowed\" mode."
msgstr ""
"Mode de la fenêtre principale. Voir [enum DisplayServer.WindowMode] pour les "
"valeurs possibles et comment chaque mode se comporte.\n"
"[b]Note :[/b] Le jeu en mode intégré n'est disponible que dans le mode "
"\"Windowed\"."

msgid ""
"Main window can't be focused. No-focus window will ignore all input, except "
"mouse clicks."
msgstr ""
"La fenêtre principale ne peut pas avoir le focus. Une fenêtre sans focus "
"ignorera toutes les entrées, sauf les clics de souris."

msgid ""
"If [code]true[/code], allows the window to be resizable by default.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"whether the window is resizable at runtime, set [member Window.unresizable] "
"instead on the root Window, which can be retrieved using "
"[code]get_viewport().get_window()[/code]. [member Window.unresizable] takes "
"the opposite value of this setting.\n"
"[b]Note:[/b] Certain window managers can be configured to ignore the non-"
"resizable status of a window. Do not rely on this setting as a guarantee that "
"the window will [i]never[/i] be resizable.\n"
"[b]Note:[/b] This setting is ignored on iOS."
msgstr ""
"Si [code]true[/code], permet à la fenêtre d'être redimensionnable par "
"défaut.\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre. "
"Pour changer si la fenêtre est redimensionnable durant l'exécution, "
"définissez [member Window.unresizable] sur la fenêtre racine à la place, qui "
"peut être récupérée en utilisant [code]get_viewport().get_window()[/code]. "
"[member Window.unresizable] prend la valeur opposée de ce paramètre.\n"
"[b]Note :[/b] Certains gestionnaires de fenêtre peuvent être configurés pour "
"ignorer le statut non-redimensionnable d'une fenêtre. Ne comptez pas sur ce "
"paramètre comme une garantie que la fenêtre ne sera [i]jamais[/i] sera "
"redimensionnable.\n"
"[b]Note :[/b] Ce paramètre est ignoré sur iOS."

msgid ""
"If [code]true[/code], the main window uses sharp corners by default.\n"
"[b]Note:[/b] This property is implemented only on Windows (11)."
msgstr ""
"Si [code]true[/code], la fenêtre principale utilise des coins pointus par "
"défaut.\n"
"[b]Note :[/b] Cette propriété est implémentée seulement sous Windows (11)."

msgid ""
"Sets the game's main viewport height. On desktop platforms, this is also the "
"initial window height, represented by an indigo-colored rectangle in the 2D "
"editor. Stretch mode settings also use this as a reference when using the "
"[code]canvas_items[/code] or [code]viewport[/code] stretch modes. See also "
"[member display/window/size/viewport_width], [member display/window/size/"
"window_width_override] and [member display/window/size/"
"window_height_override]."
msgstr ""
"Définit la hauteur du viewport principal du jeu. Sur les plates-formes de "
"bureau, c'est aussi la hauteur initiale de la fenêtre, représentée par un "
"rectangle de couleur indigo dans l'éditeur 2D. Les réglages du mode "
"d'étirement utilisent également ceci comme référence lors de l'utilisation "
"des modes d'étirement [code]canvas_items[/code] ou [code]viewport[/code]. "
"Voir aussi [member display/window/size/viewport_width], [member display/"
"window/size/window_width_override] et [member display/window/size/"
"window_height_override]."

msgid ""
"Sets the game's main viewport width. On desktop platforms, this is also the "
"initial window width, represented by an indigo-colored rectangle in the 2D "
"editor. Stretch mode settings also use this as a reference when using the "
"[code]canvas_items[/code] or [code]viewport[/code] stretch modes. See also "
"[member display/window/size/viewport_height], [member display/window/size/"
"window_width_override] and [member display/window/size/"
"window_height_override]."
msgstr ""
"Définit la largeur du viewport principal du jeu. Sur les plates-formes de "
"bureau, c'est aussi la largeur initiale de la fenêtre, représentée par un "
"rectangle de couleur indigo dans l'éditeur 2D. Les réglages du mode "
"d'étirement utilisent également ceci comme référence lors de l'utilisation "
"des modes d'étirement [code]canvas_items[/code] ou [code]viewport[/code]. "
"Voir aussi [member display/window/size/window_width_override] et [member "
"display/window/size/window_height_override]."

msgid ""
"On desktop platforms, overrides the game's initial window height. See also "
"[member display/window/size/window_width_override], [member display/window/"
"size/viewport_width] and [member display/window/size/viewport_height].\n"
"[b]Note:[/b] By default, or when set to [code]0[/code], the initial window "
"height is the [member display/window/size/viewport_height]. This setting is "
"ignored on iOS, Android, and Web."
msgstr ""
"Sur les plateformes de bureau, redéfinit la hauteur initiale de la fenêtre du "
"jeu. Voir aussi [member display/window/size/window_width_override], [member "
"display/window/size/viewport_width] et [member display/window/size/"
"viewport_height].\n"
"[b]Note :[/b] Par défaut, ou lorsqu'elle est définie à [code]0[/code], la "
"hauteur initiale de la fenêtre est la hauteur du viewport, [member display/"
"window/size/viewport_height]. Ce paramètre est ignoré sur iOS, Android et Web."

msgid ""
"On desktop platforms, overrides the game's initial window width. See also "
"[member display/window/size/window_height_override], [member display/window/"
"size/viewport_width] and [member display/window/size/viewport_height].\n"
"[b]Note:[/b] By default, or when set to [code]0[/code], the initial window "
"width is the [member display/window/size/viewport_width]. This setting is "
"ignored on iOS, Android, and Web."
msgstr ""
"Sur les plateformes de bureau, redéfinit la largeur initiale de la fenêtre du "
"jeu. Voir aussi [member display/window/size/window_height_override], [member "
"display/window/size/viewport_width] et [member display/window/size/"
"viewport_height].\n"
"[b]Note :[/b] Par défaut, ou lorsqu'elle est définie à [code]0[/code], la "
"largeur initiale de la fenêtre est la largeur du viewport, [member display/"
"window/size/viewport_width]. Ce paramètre est ignoré sur iOS, Android et Web."

msgid ""
"Defines how the base size is stretched to fit the resolution of the window or "
"screen.\n"
"[b]\"disabled\"[/b]: No stretching happens. One unit in the scene corresponds "
"to one pixel on the screen. In this mode, [member display/window/stretch/"
"aspect] has no effect. Recommended for non-game applications.\n"
"[b]\"canvas_items\"[/b]: The base size specified in width and height in the "
"project settings is stretched to cover the whole screen (taking [member "
"display/window/stretch/aspect] into account). This means that everything is "
"rendered directly at the target resolution. 3D is unaffected, while in 2D, "
"there is no longer a 1:1 correspondence between sprite pixels and screen "
"pixels, which may result in scaling artifacts. Recommended for most games "
"that don't use a pixel art aesthetic, although it is possible to use this "
"stretch mode for pixel art games too (especially in 3D).\n"
"[b]\"viewport\"[/b]: The size of the root [Viewport] is set precisely to the "
"base size specified in the Project Settings' Display section. The scene is "
"rendered to this viewport first. Finally, this viewport is scaled to fit the "
"screen (taking [member display/window/stretch/aspect] into account). "
"Recommended for games that use a pixel art aesthetic."
msgstr ""
"Définit comment la taille de base est étirée pour correspondre à la "
"résolution de la fenêtre ou de l'écran.\n"
"[b]\"disabled\"[/b] : Pas d'étirement. Une unité dans la scène correspond à "
"un pixel sur l'écran. Dans ce mode, [member display/window/stretch/aspect] "
"n'a aucun effet. Recommandé pour les applications qui ne sont pas des jeux.\n"
"[b]\"canvas_items\"[/b] : La taille de base spécifiée en largeur et en "
"hauteur dans les paramètres du projet est étirée pour couvrir l'écran entier "
"(en tenant compte de [member display/window/stretch/aspect]). Cela signifie "
"que tout est rendu directement à la résolution cible. La 3D n'est pas "
"affectée, alors qu'en 2D, il n'y a plus de correspondance 1:1 entre les "
"pixels des sprites et les pixels de l'écran, ce qui peut entraîner des "
"artéfacts dus à la mise à l'échelle. Recommandé pour la plupart des jeux qui "
"n'utilisent pas une esthétique pixel art, bien qu'il soit possible d'utiliser "
"ce mode d'étirement pour les jeux en pixel art aussi (surtout en 3D).\n"
"[b]\"viewport\"[/b] : La taille du [Viewport] racine est définie précisément "
"à la taille de base spécifiée dans la section Affichage des Paramètres du "
"projet. La scène est rendue vers ce viewport d'abord. Enfin, ce viewport est "
"redimensionné pour s'adapter à l'écran (en tenant compte de [member display/"
"window/stretch/aspect]). Recommandé pour les jeux qui utilisent une "
"esthétique pixel art."

msgid ""
"The scale factor multiplier to use for 2D elements. This multiplies the final "
"scale factor determined by [member display/window/stretch/mode]. If using the "
"[b]Disabled[/b] stretch mode, this scale factor is applied as-is. This can be "
"adjusted to make the UI easier to read on certain displays."
msgstr ""
"Le multiplicateur de facteur d'échelle à utiliser pour les éléments 2D. Ceci "
"multiplie le facteur d'échelle final déterminé par [member display/window/"
"stretch/mode]. Si vous utilisez le mode d'étirement [b]Disabled[/b], ce "
"facteur d'échelle est appliqué tel quel. Cela peut être ajusté pour rendre "
"l'interface utilisateur plus facile à lire sur certains écrans."

msgid ""
"If [code]true[/code], subwindows are embedded in the main window (this is "
"also called single-window mode). Single-window mode can be faster as it does "
"not need to create a separate window for every popup and tooltip, which can "
"be a slow operation depending on the operating system and rendering method in "
"use.\n"
"If [code]false[/code], subwindows are created as separate windows (this is "
"also called multi-window mode). This allows them to be moved outside the main "
"window and use native operating system window decorations.\n"
"This is equivalent to [member EditorSettings.interface/editor/"
"single_window_mode] in the editor, except the setting's value is inverted."
msgstr ""
"Si [code]true[/code], les sous-fenêtres sont intégrées dans la fenêtre "
"principale (aussi appelé mode mono-fenêtre). Le mode mono-fenêtre peut être "
"plus rapide car il n'est pas nécessaire de créer une fenêtre séparée pour "
"chaque popup et info-bulle, ce qui peut être une opération lente selon le "
"système d'exploitation et la méthode de rendu utilisée.\n"
"Si [code]false[/code], les sous-fenêtres sont créées comme des fenêtres "
"séparées (aussi appelé multi-fenêtre). Cela leur permet d'être déplacées à "
"l'extérieur de la fenêtre principale et d'utiliser des décorations de fenêtre "
"natives du système d'exploitation.\n"
"Cela équivaut à [member EditorSettings.interface/editor/single_window_mode] "
"dans l'éditeur, sauf que la valeur du paramètre est inversée."

msgid ""
"Sets the V-Sync mode for the main game window. The editor's own V-Sync mode "
"can be set using [member EditorSettings.interface/editor/vsync_mode].\n"
"See [enum DisplayServer.VSyncMode] for possible values and how they affect "
"the behavior of your application.\n"
"Depending on the platform and rendering method, the engine will fall back to "
"[b]Enabled[/b] if the desired mode is not supported.\n"
"V-Sync can be disabled on the command line using the [code]--disable-vsync[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url].\n"
"[b]Note:[/b] The [b]Adaptive[/b] and [b]Mailbox[/b] V-Sync modes are only "
"supported in the Forward+ and Mobile rendering methods, not Compatibility.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the V-Sync mode at runtime, call [method DisplayServer.window_set_vsync_mode] "
"instead."
msgstr ""
"Définit le mode de V-Sync (synchronisation verticale) pour la fenêtre "
"principale du jeu. Le mode de V-Sync de l'éditeur peut être défini en "
"utilisant [member EditorSettings.interface/editor/vsync_mode].\n"
"Voir [enum DisplayServer.VSyncMode] pour les valeurs possibles et comment "
"elles affectent le comportement de votre application.\n"
"Selon la plate-forme et la méthode de rendu, le moteur revient sur "
"[b]Enabled[/b] si le mode souhaité n'est pas supporté.\n"
"La V-Sync peut être désactivé sur la ligne de commande en utilisant "
"l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url] [code]--disable-vsync[/code].\n"
"[b]Note :[/b] Les modes [b]Adaptive[/b] et [b]Mailbox[/b] de la V-Sync sont "
"uniquement supportés dans les méthodes de rendu Forward+ et Mobile, et non "
"dans Compatibilité.\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre. "
"Pour modifier le mode de V-Sync durant l'exécution, appelez [method "
"DisplayServer.window_set_vsync_mode] à la place."

msgid ""
"Name of the .NET assembly. This name is used as the name of the "
"[code].csproj[/code] and [code].sln[/code] files. By default, it's set to the "
"name of the project ([member application/config/name]) allowing to change it "
"in the future without affecting the .NET assembly."
msgstr ""
"Nom de l'assembly .NET. Ce nom est utilisé comme nom des fichiers "
"[code].csproj[/code] et [code].sln[/code]. Par défaut, il est défini au nom "
"du projet ([member application/config/name]) permettant de le modifier à "
"l'avenir sans affecter l'assembly .NET."

msgid ""
"Number of times to attempt assembly reloading after rebuilding .NET "
"assemblies. Effectively also the timeout in seconds to wait for unloading of "
"script assemblies to finish."
msgstr ""
"Nombre de fois pour tenter de recharger l'assembly après la re-compilation "
"des assemblies .NET. Effectivement aussi le timeout en secondes durant "
"l'attente de la fin du déchargement des assemblies de scripts."

msgid ""
"Directory that contains the [code].sln[/code] file. By default, the "
"[code].sln[/code] files is in the root of the project directory, next to the "
"[code]project.godot[/code] and [code].csproj[/code] files.\n"
"Changing this value allows setting up a multi-project scenario where there "
"are multiple [code].csproj[/code]. Keep in mind that the Godot project is "
"considered one of the C# projects in the workspace and it's root directory "
"should contain the [code]project.godot[/code] and [code].csproj[/code] next "
"to each other."
msgstr ""
"Répertoire qui contient le fichier [code].sln[/code]. Par défaut, les "
"fichiers [code].sln[/code] se trouvent à la racine du répertoire du projet, à "
"côté des fichiers [code]project.godot[/code] et [code].csproj[/code].\n"
"Changer cette valeur permet de configurer un scénario multi-projet où il "
"existe plusieurs [code].csproj[/code]. Gardez à l'esprit que le projet Godot "
"est considéré comme l'un des projets C# dans l'espace de travail et son "
"répertoire racine devrait contenir les fichiers [code]project.godot[/code] et "
"[code].csproj[/code] l'un à côté de l'autre."

msgid ""
"If [code]true[/code], text resource ([code]tres[/code]) and text scene "
"([code]tscn[/code]) files are converted to their corresponding binary format "
"on export. This decreases file sizes and speeds up loading slightly.\n"
"[b]Note:[/b] Because a resource's file extension may change in an exported "
"project, it is heavily recommended to use [method @GDScript.load] or "
"[ResourceLoader] instead of [FileAccess] to load resources dynamically.\n"
"[b]Note:[/b] The project settings file ([code]project.godot[/code]) will "
"always be converted to binary on export, regardless of this setting."
msgstr ""
"Si [code]true[/code], les fichiers de ressource texte ([code]tres[/code]) et "
"de scène texte ([code]tscn[/code]) sont convertis au format binaire "
"correspondant durant l'export. Cela diminue les tailles de fichiers et "
"accélère légèrement le chargement.\n"
"[b]Note :[/b] Comme l'extension de fichier d'une ressource peut changer dans "
"un projet exporté, il est fortement recommandé d'utiliser [method "
"@GDScript.load] ou [ResourceLoader] au lieu de [FileAccess] pour charger des "
"ressources de façon dynamique.\n"
"[b]Note :[/b] Le fichier des paramètres du projet ([code]project.godot[/"
"code]) sera toujours converti en binaire durant l'export, peu importe ce "
"paramètre."

msgid ""
"The maximum width to use when importing textures as an atlas. The value will "
"be rounded to the nearest power of two when used. Use this to prevent "
"imported textures from growing too large in the other direction."
msgstr ""
"La largeur maximale à utiliser lors de l'importation de textures comme atlas. "
"La valeur sera arrondie à la puissance de deux la plus proche lorsqu'elle "
"sera utilisée. Utilisez ceci pour éviter que les textures importées ne "
"grandissent trop dans l'autre direction."

msgid "If [code]true[/code] importing of resources is run on multiple threads."
msgstr ""
"Si [code]true[/code], l'importation de ressources est effectuée sur plusieurs "
"threads."

msgid ""
"If [code]true[/code], requests V-Sync to be disabled when writing a movie "
"(similar to setting [member display/window/vsync/vsync_mode] to [b]Disabled[/"
"b]). This can speed up video writing if the hardware is fast enough to "
"render, encode and save the video at a framerate higher than the monitor's "
"refresh rate.\n"
"[b]Note:[/b] [member editor/movie_writer/disable_vsync] has no effect if the "
"operating system or graphics driver forces V-Sync with no way for "
"applications to disable it."
msgstr ""
"Si [code]true[/code], demande que la V-Sync soit désactivée lors de "
"l'écriture d'un film (similaire à définir [member display/window/vsync/"
"vsync_mode] à [b]Disabled[/b]). Cela peut accélérer l'écriture vidéo si le "
"matériel est assez rapide pour rendre, encoder et enregistrer la vidéo à un "
"taux de rafraîchissement plus élevé que le taux de rafraîchissement du "
"moniteur.\n"
"[b]Note :[/b] [member editor/movie_writer/disable_vsync] n'a aucun effet si "
"le système d'exploitation ou le pilote graphique force la V-Sync sans aucune "
"possibilité pour applications de la désactiver."

msgid ""
"The number of frames per second to record in the video when writing a movie. "
"Simulation speed will adjust to always match the specified framerate, which "
"means the engine will appear to run slower at higher [member editor/"
"movie_writer/fps] values. Certain FPS values will require you to adjust "
"[member editor/movie_writer/mix_rate] to prevent audio from desynchronizing "
"over time.\n"
"This can be specified manually on the command line using the [code]--fixed-"
"fps <fps>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Le nombre de trames par seconde à enregistrer dans la vidéo lors de "
"l'écriture d'un film. La vitesse de simulation s'ajustera pour toujours "
"correspondre au taux de rafraîchissement spécifié, ce qui signifie que le "
"moteur semble fonctionner plus lentement à des valeurs de [member editor/"
"movie_writer/fps] supérieures. Certaines valeurs de FPS vous obligeront à "
"ajuster [member editor/movie_writer/mix_rate] pour empêcher le son de se "
"désynchroniser avec le temps.\n"
"Ceci peut être spécifié manuellement sur la ligne de commande en utilisant "
"l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url] [code]--fixed-fps <fps>[/code]."

msgid ""
"The audio mix rate to use in the recorded audio when writing a movie (in Hz). "
"This can be different from [member audio/driver/mix_rate], but this value "
"must be divisible by [member editor/movie_writer/fps] to prevent audio from "
"desynchronizing over time."
msgstr ""
"Le taux de mixage audio à utiliser dans l'audio enregistré lors de l'écriture "
"d'un film (en Hz). Cela peut être différent de [member audio/driver/"
"mix_rate], mais cette valeur doit être divisible par [member editor/"
"movie_writer/fps] pour empêcher l'audio de se désynchroniser au cours du "
"temps."

msgid ""
"The speaker mode to use in the recorded audio when writing a movie. See [enum "
"AudioServer.SpeakerMode] for possible values."
msgstr ""
"Le mode de haut-parleur à utiliser dans l'audio enregistré lors de l'écriture "
"d'un film. Voir [enum AudioServer.SpeakerMode] pour les valeurs possibles."

msgid ""
"The format of the default signal callback name (in the Signal Connection "
"Dialog). The following substitutions are available: [code]{NodeName}[/code], "
"[code]{nodeName}[/code], [code]{node_name}[/code], [code]{SignalName}[/code], "
"[code]{signalName}[/code], and [code]{signal_name}[/code]."
msgstr ""
"Le format du nom de callback de signal par défaut (dans le fenêtre de "
"Connexion de Signal). Les substitutions suivantes sont disponibles : [code]"
"{NodeName}[/code], [code]{nodeName}[/code], [code]{node_name}[/code], [code]"
"{SignalName}[/code], [code]{signalName}[/code], et [code]{signal_name}[/code]."

msgid ""
"When creating node names automatically, set the type of casing to use in this "
"project. This is mostly an editor setting."
msgstr ""
"Lorsque vous créez des noms de nœuds automatiquement, définissez le type de "
"notation à utiliser dans ce projet. C'est surtout un paramètre de l'éditeur."

msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
"Quoi utiliser pour séparer le nom de nœud du numéro. C'est surtout un "
"paramètre de l'éditeur."

msgid ""
"When generating scene file names from scene root node, set the type of casing "
"to use in this project. This is mostly an editor setting."
msgstr ""
"Lors de la génération de noms de fichiers de scène depuis le nœud racine de "
"la scène, définit le type de notation à utiliser dans ce projet. C'est "
"surtout un paramètre de l’éditeur."

msgid ""
"When generating script file names from the selected node, set the type of "
"casing to use in this project. This is mostly an editor setting."
msgstr ""
"Lors de la génération de noms de script depuis le nœud sélectionné, définit "
"le type de notation à utiliser dans ce projet. C'est surtout un paramètre de "
"l’éditeur."

msgid ""
"The command-line arguments to append to Godot's own command line when running "
"the project. This doesn't affect the editor itself.\n"
"It is possible to make another executable run Godot by using the [code]"
"%command%[/code] placeholder. The placeholder will be replaced with Godot's "
"own command line. Program-specific arguments should be placed [i]before[/i] "
"the placeholder, whereas Godot-specific arguments should be placed [i]after[/"
"i] the placeholder.\n"
"For example, this can be used to force the project to run on the dedicated "
"GPU in an NVIDIA Optimus system on Linux:\n"
"[codeblock lang=text]\n"
"prime-run %command%\n"
"[/codeblock]"
msgstr ""
"Les arguments en ligne de commande à ajouter à la ligne de commande de Godot "
"lors de l'exécution du projet. Cela n'affecte pas l'éditeur lui-même.\n"
"Il est possible de faire qu'un autre exécutable démarre Godot en utilisant le "
"placeholder [code]%command%[/code]. Le placeholder sera remplacé par la "
"propre ligne de commande de Godot. Les arguments spécifiques au programme "
"devraient être placés [i]avant[/i] le placeholder, alors que les arguments "
"spécifiques à Godot devraient être placés [i]après[/i] le placeholder.\n"
"Par exemple, cela peut être utilisé pour forcer le projet à s'exécuter sur le "
"GPU dédié dans un système NVIDIA Optimus sur Linux:\n"
"[codeblock lang=text]\n"
"prime-run %command%\n"
"[/codeblock]"

msgid ""
"Text-based file extensions to include in the script editor's \"Find in "
"Files\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
"your scene files, especially if you use built-in scripts which are serialized "
"in the scene files."
msgstr ""
"Extensions de fichiers basés sur du texte à inclure dans la fonction "
"\"Rechercher dans les fichiers\" de l'éditeur de script. Vous pouvez ajouter "
"par exemple [code]tscn[/code] si vous souhaitez également analyser vos "
"fichiers de scène, surtout si vous utilisez des scripts intégrés qui sont "
"sérialisés dans les fichiers de scène."

msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
"Chemin de recherche de modèles de script spécifique au projet. Godot "
"cherchera des modèles de script à la fois dans le chemin spécifique à "
"l'éditeur et dans ce chemin spécifique au projet."

msgid ""
"If [code]true[/code], Blender 3D scene files with the [code].blend[/code] "
"extension will be imported by converting them to glTF 2.0.\n"
"This requires configuring a path to a Blender executable in the [member "
"EditorSettings.filesystem/import/blender/blender_path] setting. Blender 3.0 "
"or later is required."
msgstr ""
"Si [code]true[/code], les fichiers de scène 3D Blender avec l'extension "
"[code].blend[/code] seront importés en les convertissant en glTF 2.0.\n"
"Cela nécessite de configurer un chemin vers un exécutable Blender dans le "
"paramètre [member EditorSettings.filesystem/import/blender/blender_path]. "
"Blender 3.0 ou ultérieur est nécessaire."

msgid ""
"Override for [member filesystem/import/blender/enabled] on Android where "
"Blender can't easily be accessed from Godot."
msgstr ""
"Redéfinition pour [member filesystem/import/blender/enabled] sur Android où "
"Blender ne peut pas être facilement accessible depuis Godot."

msgid ""
"Override for [member filesystem/import/blender/enabled] on the Web where "
"Blender can't easily be accessed from Godot."
msgstr ""
"Redéfinition pour [member filesystem/import/blender/enabled] sur le Web où "
"Blender ne peut pas être facilement accessible depuis Godot."

msgid ""
"If [code]true[/code], Autodesk FBX 3D scene files with the [code].fbx[/code] "
"extension will be imported by converting them to glTF 2.0.\n"
"This requires configuring a path to an FBX2glTF executable in the editor "
"settings at [member EditorSettings.filesystem/import/fbx/fbx2gltf_path]."
msgstr ""
"Si [code]true[/code], les fichiers de scène 3D FBX Autodesk avec l'extension "
"[code].fbx[/code] seront importés en les convertissant en glTF 2.0.\n"
"Cela nécessite de configurer un chemin vers un exécutable FBX2glTF dans les "
"paramètres de l'éditeur avec le paramètre [member EditorSettings.filesystem/"
"import/fbx/fbx2gltf_path]."

msgid ""
"Override for [member filesystem/import/fbx2gltf/enabled] on Android where "
"FBX2glTF can't easily be accessed from Godot."
msgstr ""
"Redéfinition pour [member filesystem/import/fbx2gltf/enabled] sur Android où "
"FBX2glTF ne peut pas être facilement accessible depuis Godot."

msgid ""
"Override for [member filesystem/import/fbx2gltf/enabled] on the Web where "
"FBX2glTF can't easily be accessed from Godot."
msgstr ""
"Redéfinition pour [member filesystem/import/fbx2gltf/enabled] sur le Web où "
"FBX2glTF ne peut pas être facilement accessible depuis Godot."

msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
"La valeur par défaut pour [member ScrollContainer.scroll_deadzone], qui sera "
"utilisé pour tous les [ScrollContainer] à moins d'être surchargé."

msgid ""
"If [code]true[/code], snaps [Control] node vertices to the nearest pixel to "
"ensure they remain crisp even when the camera moves or zooms."
msgstr ""
"Si [code]true[/code], attache les sommets des nœuds [Control] au pixel le "
"plus proche pour s'assurer qu'ils restent nettes même lorsque la caméra se "
"déplace ou zoome."

msgid ""
"How to position the Cancel and OK buttons in the project's [AcceptDialog]s. "
"Different platforms have different standard behaviors for this, which can be "
"overridden using this setting.\n"
"- [b]Auto[/b] ([code]0[/code]) follows the platform convention: OK first on "
"Windows, KDE, and LXQt, Cancel first on macOS and other Linux desktop "
"environments. [method DisplayServer.get_swap_cancel_ok] can be used to query "
"whether buttons are swapped at run-time.\n"
"- [b]Cancel First[/b] ([code]1[/code]) forces the ordering Cancel/OK.\n"
"- [b]OK First[/b] ([code]2[/code]) forces the ordering OK/Cancel.\n"
"[b]Note:[/b] This doesn't affect native dialogs such as the ones spawned by "
"[method DisplayServer.dialog_show]."
msgstr ""
"Comment positionner les boutons Annuler et OK dans les [AcceptDialog]s du "
"projet. Différentes plates-formes ont différents comportements standards pour "
"cela, qui peuvent être redéfinis en utilisant ce réglage.\n"
"- [b]Auto[/b] ([code]0[/code]) suit la convention de la plateforme : OK "
"d'abord sur Windows, KDE et LXQt, Annuler d'abord sur macOS et d'autres "
"environnements de bureau Linux. [method DisplayServer.get_swap_cancel_ok] "
"peut être utilisé pour demander si les boutons sont échangés durant "
"l'exécution.\n"
"- [b]Cancel First[/b] ([code]1[/code]) force l'ordre Annuler/OK.\n"
"- [b]OK First[/b] ([code]2[/code]) force l'ordre OK/Annuler.\n"
"[b]Note :[/b] Cela n'affecte pas les dialogues natifs tels que ceux générés "
"par [method DisplayServer.dialog_show]."

msgid "Maximum undo/redo history size for [TextEdit] fields."
msgstr ""
"Taille maximale de l'historique annuler/refaire pour les champs [TextEdit]."

msgid ""
"Path to a custom [Theme] resource file to use for the project ([code].theme[/"
"code] or generic [code].tres[/code]/[code].res[/code] extension)."
msgstr ""
"Chemin vers un fichier de ressources [Theme] personnalisé à utiliser pour le "
"projet (extension [code].theme[/code] ou extension générique [code].tres[/"
"code]/[code].res[/code])."

msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
"Chemin vers une [Font] personnalisée à utiliser par défaut pour tous les "
"éléments graphiques du projet."

msgid ""
"Font anti-aliasing mode for the default project font. See [member "
"FontFile.antialiasing].\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.antialiasing])."
msgstr ""
"Mode d’anti-crénelage de police pour la police par défaut du projet. Voir "
"[member FontFile.antialiasing].\n"
"[b]Note :[/b] Ce paramètre n'affecte pas les [Font] personnalisées utilisées "
"dans le projet. Utilisez plutôt le dock [b]Import[/b] pour cela (voir [member "
"ResourceImporterDynamicFont.antialiasing])."

msgid ""
"If set to [code]true[/code], the default font will have mipmaps generated. "
"This prevents text from looking grainy when a [Control] is scaled down, or "
"when a [Label3D] is viewed from a long distance (if [member "
"Label3D.texture_filter] is set to a mode that displays mipmaps).\n"
"Enabling [member gui/theme/default_font_generate_mipmaps] increases font "
"generation time and memory usage. Only enable this setting if you actually "
"need it.\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.generate_mipmaps])."
msgstr ""
"Si défini à [code]true[/code], la police par défaut aura des mipmaps "
"générées. Cela empêche le texte d'avoir un aspect granuleux lorsqu'un "
"[Control] est réduit, ou lorsqu'un [Label3D] est vu à une longue distance (si "
"[member Label3D.texture_filter] est défini à un mode qui affiche des "
"mipmaps).\n"
"Activer [member gui/theme/default_font_generate_mipmaps] augmente le temps de "
"génération de polices et l'utilisation de la mémoire. Activez seulement ce "
"paramètre si vous en avez réellement besoin.\n"
"[b]Note :[/b] Ce paramètre n'affecte pas les [Font] personnalisées utilisées "
"dans le projet. Utilisez le dock [b]Import[/b] pour cela à la place (voir "
"[member ResourceImporterDynamicFont.generate_mipmaps])."

msgid ""
"Font hinting mode for the default project font. See [member "
"FontFile.hinting].\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.hinting])."
msgstr ""
"Mode d'hinting de police pour la police par défaut du projet. Voir [member "
"FontFile.hinting].\n"
"[b]Note :[/b] Ce paramètre n'affecte pas les [Font] personnalisées utilisées "
"dans le projet. Utilisez plutôt le dock [b]Import[/b] pour cela (voir [member "
"ResourceImporterDynamicFont.hinting])."

msgid ""
"If set to [code]true[/code], the default font will use multichannel signed "
"distance field (MSDF) for crisp rendering at any size. Since this approach "
"does not rely on rasterizing the font every time its size changes, this "
"allows for resizing the font in real-time without any performance penalty. "
"Text will also not look grainy for [Control]s that are scaled down (or for "
"[Label3D]s viewed from a long distance).\n"
"MSDF font rendering can be combined with [member gui/theme/"
"default_font_generate_mipmaps] to further improve font rendering quality when "
"scaled down.\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.multichannel_signed_distance_field])."
msgstr ""
"Si elle est définie à [code]true[/code], la police par défaut utilisera le "
"champ de distance signé multicanal (ou MSDF, pour Multichannel Signed "
"Distance Field) pour être rendue de manière nette à n'importe quelle taille. "
"Puisque cette approche ne repose pas sur la rastérisation de la police à "
"chaque fois que sa taille change, cela permet de redimensionner la police en "
"temps réel sans aucune pénalité de performance. Le texte n'aura pas non plus "
"l'air granuleux pour les [Control]s qui sont rétrécis (ou pour les [Label3D]s "
"vus à une longue distance).\n"
"Le rendu de police MSDF peut être combiné avec [member gui/theme/"
"default_font_generate_mipmaps] pour améliorer encore la qualité du rendu de "
"la police lorsqu'elle est rétrécie.\n"
"[b]Note :[/b] Ce paramètre n'affecte pas les [Font] personnalisées utilisées "
"dans le projet. Utilisez le dock [b]Import[/b] pour cela à la place (voir "
"[member ResourceImporterDynamicFont.multichannel_signed_distance_field])."

msgid ""
"Font glyph subpixel positioning mode for the default project font. See "
"[member FontFile.subpixel_positioning].\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.subpixel_positioning])."
msgstr ""
"Mode de positionnement sub-pixel des glyphes de police pour la police par "
"défaut du projet. Voir [member FontFile.subpixel_positioning].\n"
"[b]Note :[/b] Ce paramètre n'affecte pas les [Font] personnalisées utilisées "
"dans le projet. Utilisez plutôt le dock [b]Import[/b] pour cela (voir [member "
"ResourceImporterDynamicFont.subpixel_positioning])."

msgid ""
"The default scale factor for [Control]s, when not overridden by a [Theme].\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default scale at runtime, set [member ThemeDB.fallback_base_scale] "
"instead."
msgstr ""
"Le facteur d'échelle par défaut pour les [Control]s, lorsqu'il n'est pas "
"redéfini par un [Theme].\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre. "
"Pour modifier l'échelle par défaut lors de l'exécution, définissez [member "
"ThemeDB.fallback_base_scale] à la place."

msgid ""
"LCD subpixel layout used for font anti-aliasing. See [enum "
"TextServer.FontLCDSubpixelLayout]."
msgstr ""
"Disposition de sous-pixel LCD utilisée pour l'anti-crénelage de police. Voir "
"[enum TextServer.FontLCDSubpixelLayout]."

msgid ""
"When [member BaseButton.shortcut_feedback] is enabled, this is the time the "
"[BaseButton] will remain highlighted after a shortcut."
msgstr ""
"Lorsque [member BaseButton.shortcut_feedback] est activé, il s'agit du temps "
"pendant lequel [BaseButton] restera mis en évidence après un raccourci."

msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls (in "
"milliseconds)."
msgstr ""
"Les préférences du minuteur pour les recherches incrémentale dans les "
"contrôles [Tree], [ItemList], etc. (en millisecondes)."

msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
"Le minuteur pour la détection de l'inactivité dans le [TextEdit] (en "
"secondes)."

msgid "Default delay for tooltips (in seconds)."
msgstr "Le délai par défaut pour les infobulles (en secondes)."

msgid "Delay for tooltips in the editor."
msgstr "Délai pour les infobulles dans l'éditeur."

msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, or "
"validate input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour confirmer un bouton, menu ou élément de "
"liste ayant le focus, pour valider l'entrée.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to start or end a drag-and-drop operation without "
"using mouse.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour commencer ou finir une opération glisser/"
"déposer sans utiliser la souris.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to delete a color preset in a [ColorPicker].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer un préréglage de couleur dans "
"un [ColorPicker].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to copy a selection to the clipboard.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour copier une sélection vers le presse-"
"papiers.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to cut a selection to the clipboard.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour couper une sélection vers le presse-"
"papiers.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour se déplacer vers le bas dans "
"l'interface.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
"KEY_END] on typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour se déplacer à la position de fin d'un "
"[Control] (par ex. dernier élément d'une [ItemList] ou d'un [Tree]), "
"correspondant au comportement de [constant KEY_END] sur la plupart des "
"systèmes d'UI de bureau.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to refresh the contents of the current directory "
"of a [FileDialog].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour rafraîchir le contenu du répertoire "
"courant d'un [FileDialog].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to toggle showing hidden files and directories in "
"a [FileDialog].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour afficher/cacher les fichiers et "
"répertoires cachés dans un [FileDialog].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to go up one directory in a [FileDialog].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour remonter d'un répertoire dans un "
"[FileDialog].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"La [InputEventAction] par défaut pour donner le focus au [Control] suivant de "
"la scène. Le comportement du focus peut être configuré avec [member "
"Control.focus_next].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"La [InputEventAction] par défaut pour donner le focus au [Control] précédent "
"de la scène. Le comportement du focus peut être configuré avec [member "
"Control.focus_previous].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to delete a [GraphNode] in a [GraphEdit].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer un [GraphNode] dans un "
"[GraphEdit].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to duplicate a [GraphNode] in a [GraphEdit].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour dupliquer un [GraphNode] dans un "
"[GraphEdit].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to follow a [GraphNode] input port connection.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour suivre la connexion du port d'entrée "
"d'un [GraphNode].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to follow a [GraphNode] input port "
"connection."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour suivre une connexion du "
"port d'entrée d'un [GraphNode]."

msgid ""
"Default [InputEventAction] to follow a [GraphNode] output port connection.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"La [InputEventAction] par défaut pour suivre la connexion du port de sortie "
"d'un [GraphNode].\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to follow a [GraphNode] output port "
"connection."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour suivre une connexion du "
"port de sortie d'un [GraphNode]."

msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
"KEY_HOME] on typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour se déplacer à la position de début d'un "
"[Control] (par ex. premier élément d'une [ItemList] ou d'un [Tree]), "
"correspondant au comportement de [constant KEY_HOME] sur la plupart des "
"systèmes d'UI de bureau.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour se déplacer vers la gauche dans "
"l'interface.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to open a context menu in a text field.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour ouvrir un menu contextuel dans un champ "
"de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
"typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour descendre d'une page dans un [Control] "
"(par ex. dans une [ItemList] ou un [Tree]), correspondant au comportement de "
"[constant KEY_PAGEDOWN] sur la plupart des systèmes d'UI de bureau.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
"typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour monter d'une page dans un [Control] (par "
"ex. dans une [ItemList] ou un [Tree]), correspondant au comportement de "
"[constant KEY_PAGEUP] sur la plupart des systèmes d'UI de bureau.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to paste from the clipboard.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour coller depuis le presse-papiers.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to redo an undone action.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"La [InputEventAction] par défaut pour refaire une action annulée.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]. Mais les événements assignés aux actions peuvent modifiés."

msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour se déplacer vers la droite dans "
"l'interface.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour sélectionner un élément dans un "
"[Control] (par ex. dans un [ItemList] ou un [Tree]).\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to swap input direction, i.e. change between left-"
"to-right to right-to-left modes. Affects text-editing controls ([LineEdit], "
"[TextEdit])."
msgstr ""
"L'[InputEventAction] par défaut pour inverser la direction de l'entrée, c-à-d "
"changer entre les modes gauche-vers-droite et droite-vers-gauche. Affecte les "
"contrôles d'édition de texte ([LineEdit], [TextEdit])."

msgid ""
"Default [InputEventAction] to delete the character before the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer le caractère avant le curseur "
"de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to delete [b]all[/b] text before the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer [b]tout[/b] le texte avant le "
"curseur de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to delete all text before the text "
"cursor."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour supprimer tout le texte "
"avant le curseur de texte."

msgid ""
"Default [InputEventAction] to delete all characters before the cursor up "
"until a whitespace or punctuation character.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer tous les caractères avant le "
"curseur jusqu'à un caractère d'espacement ou un caractère de ponctuation.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid "macOS specific override for the shortcut to delete a word."
msgstr "Redéfinition macOS spécifique pour le raccourci pour supprimer un mot."

msgid ""
"Default [InputEventAction] to add an additional caret above every caret of a "
"text."
msgstr ""
"L'[InputEventAction] par défaut pour ajouter un curseur supplémentaire au-"
"dessus de tous les curseurs d'un texte."

msgid ""
"macOS specific override for the shortcut to add a caret above every caret."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour ajouter un curseur au "
"dessus de chaque curseur."

msgid ""
"Default [InputEventAction] to add an additional caret below every caret of a "
"text."
msgstr ""
"L'[InputEventAction] par défaut pour ajouter un curseur supplémentaire en-"
"dessous de tous les curseurs d'un texte."

msgid ""
"macOS specific override for the shortcut to add a caret below every caret."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour ajouter un curseur en "
"dessous de chaque curseur."

msgid ""
"Default [InputEventAction] to move the text cursor to the end of the text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur de texte à la fin du "
"texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the end "
"of the text."
msgstr ""
"Redéfinition macOS spécifique pour le raccourci pour déplacer le curseur de "
"texte à la fin du texte."

msgid ""
"Default [InputEventAction] to move the text cursor to the start of the text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur du texte au début du "
"texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the start "
"of the text."
msgstr ""
"Redéfinition macOS spécifique pour le raccourci pour déplacer le curseur de "
"texte au début du texte."

msgid ""
"Default [InputEventAction] to move the text cursor down.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur du texte vers le "
"bas.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move the text cursor left.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur du texte vers la "
"gauche.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move the text cursor to the end of the line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur du texte à la fin de "
"la ligne.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the end "
"of the line."
msgstr ""
"Redéfinition macOS spécifique pour le raccourci pour déplacer le curseur de "
"texte à la fin de la ligne."

msgid ""
"Default [InputEventAction] to move the text cursor to the start of the line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur du texte au début de "
"la ligne.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the start "
"of the line."
msgstr ""
"Redéfinition macOS spécifique pour le raccourci pour déplacer le curseur de "
"texte au début de la ligne."

msgid ""
"Default [InputEventAction] to move the text cursor down one page.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour descendre le curseur de texte d'une "
"page.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move the text cursor up one page.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour monter le curseur de texte d'une page.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move the text cursor right.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur de texte vers la "
"droite.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move the text cursor up.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur de texte vers le "
"haut.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move the text cursor left to the next "
"whitespace or punctuation.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur de texte à gauche du "
"prochain caractère d'espacement ou de ponctuation.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to move the text cursor back one "
"word."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour déplacer le curseur de "
"texte d'un mot en arrière."

msgid ""
"Default [InputEventAction] to move the text cursor right to the next "
"whitespace or punctuation.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour déplacer le curseur de texte à droite du "
"prochain caractère d'espacement ou de ponctuation.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to move the text cursor forward one "
"word."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour déplacer le curseur de "
"texte d'un mot en avant."

msgid ""
"If there's only one caret active and with a selection, clears the selection.\n"
"In case there's more than one caret active, removes the secondary carets and "
"clears their selections.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"S'il n'y a qu'un seul curseur actif et avec une sélection, vide la "
"sélection.\n"
"Dans la cas où il y a plus d'un curseur actif, supprime les curseurs "
"secondaires et vide leurs sélections.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to accept an autocompletion hint.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour accepter un conseil d'autocomplétion.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to request autocompletion.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour demander l'autocomplétion.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to accept an autocompletion hint, replacing "
"existing text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour accepter un conseil d'autocomplétion, "
"remplaçant le texte existant.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to unindent text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour désindenter du texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to delete the character after the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer le caractère après le curseur "
"de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to delete [b]all[/b] text after the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer [b]tout[/b] le texte après le "
"curseur de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to delete all text after the text "
"cursor."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour supprimer tout le texte "
"après le curseur de texte."

msgid ""
"Default [InputEventAction] to delete all characters after the cursor up until "
"a whitespace or punctuation character.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour supprimer tous les caractères après le "
"curseur de texte jusqu'à un caractère d'espacement ou de ponctuation.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to delete a word after the text "
"cursor."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour supprimer un mot après "
"le curseur de texte."

msgid ""
"Default [InputEventAction] to indent the current line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour indenter la ligne actuelle.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to insert a new line at the position of the text "
"cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour insérer une nouvelle ligne à la position "
"du curseur de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to insert a new line before the current one.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour insérer une nouvelle ligne avant la "
"ligne actuelle.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to insert a new line after the current one.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour insérer une nouvelle ligne après la "
"ligne actuelle.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to scroll down one line of text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour défiler d'une ligne de texte vers le "
"bas.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid "macOS specific override for the shortcut to scroll down one line."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour défiler d'une ligne vers "
"le bas."

msgid ""
"Default [InputEventAction] to scroll up one line of text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour défiler d'une ligne de texte vers le "
"haut.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid "macOS specific override for the shortcut to scroll up one line."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour défiler d'une ligne vers "
"le haut."

msgid ""
"Default [InputEventAction] to select all text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour sélectionner tout le texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"If no selection is currently active, selects the word currently under the "
"caret in text fields. If a selection is currently active, deselects the "
"current selection.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"Si aucune sélection n'est actuellement active, sélectionne le mot "
"actuellement sous le curseur dans des champs de texte. Si une sélection est "
"actuellement active, désélectionne la sélection actuelle.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"macOS specific override for the shortcut to select the word currently under "
"the caret."
msgstr ""
"Redéfinition spécifique macOS pour le raccourci pour sélectionner le mot "
"actuellement sous le curseur."

msgid ""
"Default [InputEventAction] to submit a text field.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour soumettre un champ de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to toggle [i]insert mode[/i] in a text field. "
"While in insert mode, inserting new text overrides the character after the "
"cursor, unless the next character is a new line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour activer/désactiver le [i]mode insertion[/"
"i] dans un champ de texte. En mode insertion, insérer du nouveau texte "
"remplace le caractère après le curseur, sauf si le prochain caractère est une "
"nouvelle ligne.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to undo the most recent action.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour annuler l'action la plus récente.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to start Unicode character hexadecimal code input "
"in a text field.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour commencer une entrée de code hexadécimal "
"de caractère Unicode dans un champ de texte.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"L'[InputEventAction] par défaut pour se déplacer vers le haut dans "
"l'interface.\n"
"[b]Note :[/b] Les actions [code]ui_*[/code] par défaut ne peuvent pas être "
"supprimées car elles sont nécessaires à la logique interne de nombreux "
"[Control]s. Les événements assignés aux actions peuvent cependant être "
"modifiés."

msgid ""
"If [code]true[/code], [method Input.is_action_just_pressed] and [method "
"Input.is_action_just_released] will only return [code]true[/code] if the "
"action is still in the respective state, i.e. an action that is pressed "
"[i]and[/i] released on the same frame will be missed.\n"
"If [code]false[/code], no input will be lost.\n"
"[b]Note:[/b] You should in nearly all cases prefer the [code]false[/code] "
"setting. The legacy behavior is to enable supporting old projects that rely "
"on the old logic, without changes to script."
msgstr ""
"Si [code]true[/code], [method Input.is_action_just_pressed] et [method "
"Input.is_action_just_released] ne renverront [code]true[/code] que si "
"l'action est toujours dans l'état respectif, c'est-à-dire qu'une action "
"appuyée [i]et[/i] libérée pendant la même trame sera perdue..\n"
"Si [code]false[/code], aucune entrée ne sera perdue.\n"
"[b]Note :[/b] Vous devriez dans presque tous les cas préférer le paramètre à "
"[code]false[/code]. Le comportement legacy est là pour permettre de soutenir "
"des projets anciens qui dépendent de l'ancienne logique, sans changement aux "
"scripts."

msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will be "
"used.\n"
"[b]Note:[/b] The driver in use can be overridden at runtime via the [code]--"
"tablet-driver[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url].\n"
"[b]Note:[/b] Use [method DisplayServer.tablet_set_current_driver] to switch "
"tablet driver in runtime."
msgstr ""
"Spécifie le pilote de tablette à utiliser. Si laissé vide, le pilote par "
"défaut sera utilisé.\n"
"[b]Note :[/b] Le pilote utilisé peut être redéfini lors de l'exécution via "
"l'[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]argument de "
"ligne de commande[/url] [code]--tablet-driver[/code].\n"
"[b]Note :[/b] Utilisez [method DisplayServer.tablet_set_current_driver] pour "
"changer de pilote de tablette durant l'exécution."

msgid ""
"Override for [member input_devices/pen_tablet/driver] on Windows. Supported "
"values are:\n"
"- [code]auto[/code] (default), uses [code]wintab[/code] if Windows Ink is "
"disabled in the Wacom Tablet Properties or system settings, [code]winink[/"
"code] otherwise.\n"
"- [code]winink[/code], uses Windows native \"Windows Ink\" driver.\n"
"- [code]wintab[/code], uses Wacom \"WinTab\" driver.\n"
"- [code]dummy[/code], tablet input is disabled."
msgstr ""
"Redéfinition pour [member input_devices/pen_tablet/driver] sur Windows. Les "
"valeurs supportées sont :\n"
"- [code]auto[/code] (par défaut), utilise [code]wintab[/code] si Windows Ink "
"est désactivé dans les propriétés de Tablette Wacom ou les paramètres du "
"système, [code]winink[/code] sinon.\n"
"- [code]winink[/code], utilise le pilote Windows natif \"Windows Ink\".\n"
"- [code]wintab[/code], utilise le pilote Wacom \"WinTab\".\n"
"- [code]dummy[/code], l'entrée tablette est désactivée."

msgid ""
"If [code]true[/code], disables the scroll deadzone on Android, allowing even "
"very small scroll movements to be registered. This may increase scroll "
"sensitivity but can also lead to unintended scrolling from slight finger "
"movements."
msgstr ""
"Si [code]true[/code], désactive la zone morte du défilement sur Android, "
"permettant à de très petits mouvements de défilement d'être enregistrés. Cela "
"peut augmenter la sensibilité du défilement, mais peut également conduire à "
"un défilement non intentionnel à cause de légers mouvements de doigts."

msgid ""
"If [code]true[/code], long press events on an Android touchscreen are "
"transformed into right click events."
msgstr ""
"Si [code]true[/code], les évènements d'appui long sur un écran tactile "
"Android sont transformés en événements de clic droit."

msgid ""
"If [code]true[/code], system volume changes are disabled when the buttons are "
"used within the app."
msgstr ""
"Si [code]true[/code], les changements de volume du système sont désactivés "
"lorsque les boutons sont utilisés dans l'application."

msgid ""
"On Wear OS devices, defines which axis of the mouse wheel rotary input is "
"mapped to. This rotary input is usually performed by rotating the physical or "
"virtual (touch-based) bezel on a smartwatch."
msgstr ""
"Sur les appareils Wear OS, définit à quel axe de la molette de souris les "
"entrées rotationnelles sont associées. Cette entrée rotationnelle est "
"généralement effectuée en tournant la lunette physique ou virtuelle (basée "
"sur le toucher) d'une montre intelligente."

msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on the "
"touchscreen."
msgstr ""
"Si [code]true[/code], envoie des événements d'entrée de la souris lors du "
"tapotement ou du glissement sur l'écran tactile."

msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
"Si [code]true[/code], envoie des événements d'entrée tactile lors du clic ou "
"du glissement de la souris."

msgid ""
"If [code]true[/code], the accelerometer sensor is enabled and [method "
"Input.get_accelerometer] returns valid data."
msgstr ""
"Si [code]true[/code], l'accéléromètre est activé et [method "
"Input.get_accelerometer] renvoie des données valides."

msgid ""
"If [code]true[/code], the gravity sensor is enabled and [method "
"Input.get_gravity] returns valid data."
msgstr ""
"Si [code]true[/code], le capteur de gravité est activé et [method "
"Input.get_gravity] renvoie des données valides."

msgid ""
"If [code]true[/code], the gyroscope sensor is enabled and [method "
"Input.get_gyroscope] returns valid data."
msgstr ""
"Si [code]true[/code], le gyroscope est activé et [method Input.get_gyroscope] "
"renvoie des données valides."

msgid ""
"If [code]true[/code], the magnetometer sensor is enabled and [method "
"Input.get_magnetometer] returns valid data."
msgstr ""
"Si [code]true[/code], le magnétomètre est activé et [method "
"Input.get_magnetometer] renvoie des données valides."

msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used.\n"
"[b]Note:[/b] Not to be confused with [TextServerFallback]."
msgstr ""
"La langue de repli si une traduction n'est pas disponible dans une langue "
"donnée. Si laissé vide, [code]en[/code] (anglais) sera utilisé.\n"
"[b]Note :[/b] À ne pas confondre avec [TextServerFallback]."

msgid ""
"If non-empty, this locale will be used instead of the automatically detected "
"system locale.\n"
"[b]Note:[/b] This setting also applies to the exported project. To only "
"affect testing within the editor, override this setting with an [code]editor[/"
"code] [url=$DOCS_URL/tutorials/export/feature_tags.html]feature tag[/url] for "
"localization testing purposes."
msgstr ""
"Si non-vide, cette langue sera utilisée au lieu de la langue du système "
"automatiquement détectée.\n"
"[b]Note :[/b] Ce paramètre s'applique également au projet exporté. Pour "
"n'affecter que les tests dans l'éditeur, redéfinissez ce réglage avec un "
"[url=$DOCS_URL/tutorials/export/feature_tags.html]tag de fonctionnalité[/url] "
"[code]editor[/code] pour les tests de localisation."

msgid ""
"Double vowels in strings during pseudolocalization to simulate the "
"lengthening of text due to localization."
msgstr ""
"Double les voyelles des chaînes pendant la pseudolocalisation pour simuler "
"l'allongement du texte en raison de la localisation."

msgid ""
"The expansion ratio to use during pseudolocalization. A value of [code]0.3[/"
"code] is sufficient for most practical purposes, and will increase the length "
"of each string by 30%."
msgstr ""
"Le facteur d'extension à utiliser lors de la pseudolocalisation. Une valeur "
"de [code]0.3[/code] est suffisante la plupart du temps, et augmentera la "
"longueur de chaque chaîne de 30 %."

msgid ""
"If [code]true[/code], emulate bidirectional (right-to-left) text when "
"pseudolocalization is enabled. This can be used to spot issues with RTL "
"layout and UI mirroring that will crop up if the project is localized to RTL "
"languages such as Arabic or Hebrew. See also [member internationalization/"
"rendering/force_right_to_left_layout_direction]."
msgstr ""
"Si [code]true[/code], émule du texte bidirectionnel (droite-vers-gauche) "
"lorsque la pseudolocalisation est activée. Cela peut être utilisé pour "
"repérer des problèmes avec la disposition droite-vers-gauche et la mise en "
"miroir de l'interface utilisateur qui apparaîtra si le projet est localisé en "
"des langues droite-vers-gauche comme l'arabe ou l'hébreu. Voir aussi [member "
"internationalization/rendering/force_right_to_left_layout_direction]."

msgid ""
"Replace all characters in the string with [code]*[/code]. Useful for finding "
"non-localizable strings."
msgstr ""
"Remplace tous les caractères des chaînes par [code]*[/code]. Utile pour "
"trouver des chaînes non-localisables."

msgid "Prefix that will be prepended to the pseudolocalized string."
msgstr "Préfixe qui sera ajouté au début de la chaîne pseudolocalisée."

msgid ""
"Replace all characters with their accented variants during pseudolocalization."
msgstr ""
"Remplacer tous les caractères par leurs variantes accentuées lors de la "
"pseudolocalisation."

msgid ""
"Skip placeholders for string formatting like [code]%s[/code] or [code]%f[/"
"code] during pseudolocalization. Useful to identify strings which need "
"additional control characters to display correctly."
msgstr ""
"Saute les placeholders pour le formatage des chaînes comme [code]%s[/code] ou "
"[code]%f[/code] durant la pseudolocalisation. Utile pour identifier les "
"chaînes qui ont besoin de caractères de contrôle supplémentaires pour "
"s'afficher correctement."

msgid "Suffix that will be appended to the pseudolocalized string."
msgstr "Suffixe qui sera ajouté à la fin de la chaîne pseudolocalisée."

msgid ""
"If [code]true[/code], enables pseudolocalization for the project. This can be "
"used to spot untranslatable strings or layout issues that may occur once the "
"project is localized to languages that have longer strings than the source "
"language.\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle "
"pseudolocalization at run-time, use [member "
"TranslationServer.pseudolocalization_enabled] instead."
msgstr ""
"Si [code]true[/code], active la pseudolocalisation du projet. Cela peut être "
"utilisé pour repérer des chaînes intraduisibles ou des problèmes de mise en "
"page qui peuvent survenir une fois le projet localisé en des langues qui ont "
"des chaînes plus longues que la langue source.\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre. "
"Pour activer/désactiver la pseudolocalisation en cours d'exécution, utilisez "
"[member TranslationServer.pseudolocalization_enabled] à la place."

msgid ""
"Force layout direction and text writing direction to RTL for all controls, "
"even if the current locale is intended to use a left-to-right layout and text "
"writing direction. This should be enabled for testing purposes only. See also "
"[member internationalization/pseudolocalization/fake_bidi]."
msgstr ""
"Force la direction de la mise en page et la direction d'écriture de texte en "
"droite à gauche pour tous les contrôles, même si la langue actuelle est "
"destinée à utiliser une mise en page et une direction d'écriture de texte de "
"gauche à droite. Cela ne devrait être activé qu'à des fins de test. Voir "
"aussi [member internationalization/pseudolocalization/fake_bidi]."

msgid ""
"If [code]true[/code], root node will use [constant "
"Node.AUTO_TRANSLATE_MODE_ALWAYS], otherwise [constant "
"Node.AUTO_TRANSLATE_MODE_DISABLED] will be used.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the auto translate mode at runtime, set [member Node.auto_translate_mode] of "
"[member SceneTree.root] instead."
msgstr ""
"Si [code]true[/code], le nœud racine utilisera [constant "
"Node.AUTO_TRANSLATE_MODE_ALWAYS], sinon [constant "
"Node.AUTO_TRANSLATE_MODE_DISABLED] sera utilisé.\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre. "
"Pour modifier le mode de traduction automatique durant l'exécution, "
"définissez le [member Node.auto_translate_mode] de [member SceneTree.root] à "
"la place."

msgid "Root node default layout direction."
msgstr "Direction de mise en page par défaut du nœud racine."

msgid ""
"Optional name for the 2D navigation layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 1. Si laissé vide, la "
"couche s'affichera comme \"Couche 1\"."

msgid ""
"Optional name for the 2D navigation layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 2. Si laissé vide, la "
"couche s'affichera comme \"Couche 2\"."

msgid ""
"Optional name for the 2D navigation layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 3. Si laissé vide, la "
"couche s'affichera comme \"Couche 3\"."

msgid ""
"Optional name for the 2D navigation layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 4. Si laissé vide, la "
"couche s'affichera comme \"Couche 4\"."

msgid ""
"Optional name for the 2D navigation layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 5. Si laissé vide, la "
"couche s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the 2D navigation layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 6. Si laissé vide, la "
"couche s'affichera comme \"Couche 6\"."

msgid ""
"Optional name for the 2D navigation layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 7. Si laissé vide, la "
"couche s'affichera comme \"Couche 7\"."

msgid ""
"Optional name for the 2D navigation layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 1. Si laissé vide, la "
"couche s'affichera comme \"Couche 8\"."

msgid ""
"Optional name for the 2D navigation layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 9. Si laissé vide, la "
"couche s'affichera comme \"Couche 9\"."

msgid ""
"Optional name for the 2D navigation layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 10. Si laissé vide, la "
"couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the 2D navigation layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 11. Si laissé vide, la "
"couche s'affichera comme \"Couche 11\"."

msgid ""
"Optional name for the 2D navigation layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 12. Si laissé vide, la "
"couche s'affichera comme \"Couche 12\"."

msgid ""
"Optional name for the 2D navigation layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 13. Si laissé vide, la "
"couche s'affichera comme \"Couche 13\"."

msgid ""
"Optional name for the 2D navigation layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 14. Si laissé vide, la "
"couche s'affichera comme \"Couche 14\"."

msgid ""
"Optional name for the 2D navigation layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 15. Si laissé vide, la "
"couche s'affichera comme \"Couche 15\"."

msgid ""
"Optional name for the 2D navigation layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 16. Si laissé vide, la "
"couche s'affichera comme \"Couche 16\"."

msgid ""
"Optional name for the 2D navigation layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 17. Si laissé vide, la "
"couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the 2D navigation layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 18. Si laissé vide, la "
"couche s'affichera comme \"Couche 18\"."

msgid ""
"Optional name for the 2D navigation layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 19. Si laissé vide, la "
"couche s'affichera comme \"Couche 19\"."

msgid ""
"Optional name for the 2D navigation layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 20. Si laissé vide, la "
"couche s'affichera comme \"Couche 20\"."

msgid ""
"Optional name for the 2D navigation layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 21. Si laissé vide, la "
"couche s'affichera comme \"Couche 21\"."

msgid ""
"Optional name for the 2D navigation layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 22. Si laissé vide, la "
"couche s'affichera comme \"Couche 22\"."

msgid ""
"Optional name for the 2D navigation layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 23. Si laissé vide, la "
"couche s'affichera comme \"Couche 23\"."

msgid ""
"Optional name for the 2D navigation layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 24. Si laissé vide, la "
"couche s'affichera comme \"Couche 24\"."

msgid ""
"Optional name for the 2D navigation layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 25. Si laissé vide, la "
"couche s'affichera comme \"Couche 25\"."

msgid ""
"Optional name for the 2D navigation layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 26. Si laissé vide, la "
"couche s'affichera comme \"Couche 26\"."

msgid ""
"Optional name for the 2D navigation layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 27. Si laissé vide, la "
"couche s'affichera comme \"Couche 27\"."

msgid ""
"Optional name for the 2D navigation layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 28. Si laissé vide, la "
"couche s'affichera comme \"Couche 28\"."

msgid ""
"Optional name for the 2D navigation layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 29. Si laissé vide, la "
"couche s'affichera comme \"Couche 29\"."

msgid ""
"Optional name for the 2D navigation layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 30. Si laissé vide, la "
"couche s'affichera comme \"Couche 30\"."

msgid ""
"Optional name for the 2D navigation layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 31. Si laissé vide, la "
"couche s'affichera comme \"Couche 31\"."

msgid ""
"Optional name for the 2D navigation layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Nom facultatif pour la couche de navigation 2D numéro 32. Si laissé vide, la "
"couche s'affichera comme \"Couche 32\"."

msgid ""
"Optional name for the 2D physics layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 1. Si laissé vide, la "
"couche s'affichera comme \"Couche 1\"."

msgid ""
"Optional name for the 2D physics layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 2. Si laissé vide, la "
"couche s'affichera comme \"Couche 2\"."

msgid ""
"Optional name for the 2D physics layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 3. Si laissé vide, la "
"couche s'affichera comme \"Couche 3\"."

msgid ""
"Optional name for the 2D physics layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 4. Si laissé vide, la "
"couche s'affichera comme \"Couche 4\"."

msgid ""
"Optional name for the 2D physics layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 5. Si laissé vide, la "
"couche s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the 2D physics layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 6. Si laissé vide, la "
"couche s'affichera comme \"Couche 6\"."

msgid ""
"Optional name for the 2D physics layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 7. Si laissé vide, la "
"couche s'affichera comme \"Couche 7\"."

msgid ""
"Optional name for the 2D physics layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 8. Si laissé vide, la "
"couche s'affichera comme \"Couche 8\"."

msgid ""
"Optional name for the 2D physics layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 9. Si laissé vide, la "
"couche s'affichera comme \"Couche 9\"."

msgid ""
"Optional name for the 2D physics layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 10. Si laissé vide, la "
"couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the 2D physics layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 11. Si laissé vide, la "
"couche s'affichera comme \"Couche 11\"."

msgid ""
"Optional name for the 2D physics layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 12. Si laissé vide, la "
"couche s'affichera comme \"Couche 12\"."

msgid ""
"Optional name for the 2D physics layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 13. Si laissé vide, la "
"couche s'affichera comme \"Couche 13\"."

msgid ""
"Optional name for the 2D physics layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 14. Si laissé vide, la "
"couche s'affichera comme \"Couche 14\"."

msgid ""
"Optional name for the 2D physics layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 15. Si laissé vide, la "
"couche s'affichera comme \"Couche 15\"."

msgid ""
"Optional name for the 2D physics layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 16. Si laissé vide, la "
"couche s'affichera comme \"Couche 16\"."

msgid ""
"Optional name for the 2D physics layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 17. Si laissé vide, la "
"couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the 2D physics layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 18. Si laissé vide, la "
"couche s'affichera comme \"Couche 18\"."

msgid ""
"Optional name for the 2D physics layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 19. Si laissé vide, la "
"couche s'affichera comme \"Couche 19\"."

msgid ""
"Optional name for the 2D physics layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 20. Si laissé vide, la "
"couche s'affichera comme \"Couche 20\"."

msgid ""
"Optional name for the 2D physics layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 21. Si laissé vide, la "
"couche s'affichera comme \"Couche 21\"."

msgid ""
"Optional name for the 2D physics layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 22. Si laissé vide, la "
"couche s'affichera comme \"Couche 22\"."

msgid ""
"Optional name for the 2D physics layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 23. Si laissé vide, la "
"couche s'affichera comme \"Couche 23\"."

msgid ""
"Optional name for the 2D physics layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 24. Si laissé vide, la "
"couche s'affichera comme \"Couche 24\"."

msgid ""
"Optional name for the 2D physics layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 25. Si laissé vide, la "
"couche s'affichera comme \"Couche 25\"."

msgid ""
"Optional name for the 2D physics layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 26. Si laissé vide, la "
"couche s'affichera comme \"Couche 26\"."

msgid ""
"Optional name for the 2D physics layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 27. Si laissé vide, la "
"couche s'affichera comme \"Couche 27\"."

msgid ""
"Optional name for the 2D physics layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 28. Si laissé vide, la "
"couche s'affichera comme \"Couche 28\"."

msgid ""
"Optional name for the 2D physics layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 29. Si laissé vide, la "
"couche s'affichera comme \"Couche 29\"."

msgid ""
"Optional name for the 2D physics layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 30. Si laissé vide, la "
"couche s'affichera comme \"Couche 30\"."

msgid ""
"Optional name for the 2D physics layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 31. Si laissé vide, la "
"couche s'affichera comme \"Couche 31\"."

msgid ""
"Optional name for the 2D physics layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Nom facultatif pour la couche de physique 2D numéro 32. Si laissé vide, la "
"couche s'affichera comme \"Couche 32\"."

msgid ""
"Optional name for the 2D render layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 1. Si laissé vide, la couche "
"s'affichera comme \"Couche 1\"."

msgid ""
"Optional name for the 2D render layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 2. Si laissé vide, la couche "
"s'affichera comme \"Couche 2\"."

msgid ""
"Optional name for the 2D render layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 3. Si laissé vide, la couche "
"s'affichera comme \"Couche 3\"."

msgid ""
"Optional name for the 2D render layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 4. Si laissé vide, la couche "
"s'affichera comme \"Couche 4\"."

msgid ""
"Optional name for the 2D render layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 5. Si laissé vide, la couche "
"s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the 2D render layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 6. Si laissé vide, la couche "
"s'affichera comme \"Couche 6\"."

msgid ""
"Optional name for the 2D render layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 7. Si laissé vide, la couche "
"s'affichera comme \"Couche 7\"."

msgid ""
"Optional name for the 2D render layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 8. Si laissé vide, la couche "
"s'affichera comme \"Couche 8\"."

msgid ""
"Optional name for the 2D render layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 9. Si laissé vide, la couche "
"s'affichera comme \"Couche 9\"."

msgid ""
"Optional name for the 2D render layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 10. Si laissé vide, la "
"couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the 2D render layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 11. Si laissé vide, la "
"couche s'affichera comme \"Couche 11\"."

msgid ""
"Optional name for the 2D render layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 12. Si laissé vide, la "
"couche s'affichera comme \"Couche 12\"."

msgid ""
"Optional name for the 2D render layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 13. Si laissé vide, la "
"couche s'affichera comme \"Couche 13\"."

msgid ""
"Optional name for the 2D render layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 14. Si laissé vide, la "
"couche s'affichera comme \"Couche 14\"."

msgid ""
"Optional name for the 2D render layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 15. Si laissé vide, la "
"couche s'affichera comme \"Couche 15\"."

msgid ""
"Optional name for the 2D render layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 16. Si laissé vide, la "
"couche s'affichera comme \"Couche 16\"."

msgid ""
"Optional name for the 2D render layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 17. Si laissé vide, la "
"couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the 2D render layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 18. Si laissé vide, la "
"couche s'affichera comme \"Couche 18\"."

msgid ""
"Optional name for the 2D render layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 19. Si laissé vide, la "
"couche s'affichera comme \"Couche 19\"."

msgid ""
"Optional name for the 2D render layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Nom facultatif pour la couche de rendu 2D numéro 20. Si laissé vide, la "
"couche s'affichera comme \"Couche 20\"."

msgid ""
"Optional name for the 3D navigation layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 10. Si laissé vide, la "
"couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the 3D navigation layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 2. Si laissé vide, la "
"couche s'affichera comme \"Couche 2\"."

msgid ""
"Optional name for the 3D navigation layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 3. Si laissé vide, la "
"couche s'affichera comme \"Couche 3\"."

msgid ""
"Optional name for the 3D navigation layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 4. Si laissé vide, la "
"couche s'affichera comme \"Couche 4\"."

msgid ""
"Optional name for the 3D navigation layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 5. Si laissé vide, la "
"couche s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the 3D navigation layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 6. Si laissé vide, la "
"couche s'affichera comme \"Couche 6\"."

msgid ""
"Optional name for the 3D navigation layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 7. Si laissé vide, la "
"couche s'affichera comme \"Couche 7\"."

msgid ""
"Optional name for the 3D navigation layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 8. Si laissé vide, la "
"couche s'affichera comme \"Couche 8\"."

msgid ""
"Optional name for the 3D navigation layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 9. Si laissé vide, la "
"couche s'affichera comme \"Couche 9\"."

msgid ""
"Optional name for the 3D navigation layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 10. Si laissé vide, la "
"couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the 3D navigation layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 11. Si laissé vide, la "
"couche s'affichera comme \"Couche 11\"."

msgid ""
"Optional name for the 3D navigation layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 12. Si laissé vide, la "
"couche s'affichera comme \"Couche 12\"."

msgid ""
"Optional name for the 3D navigation layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 13. Si laissé vide, la "
"couche s'affichera comme \"Couche 13\"."

msgid ""
"Optional name for the 3D navigation layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 14. Si laissé vide, la "
"couche s'affichera comme \"Couche 14\"."

msgid ""
"Optional name for the 3D navigation layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 15. Si laissé vide, la "
"couche s'affichera comme \"Couche 15\"."

msgid ""
"Optional name for the 3D navigation layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 16. Si laissé vide, la "
"couche s'affichera comme \"Couche 16\"."

msgid ""
"Optional name for the 3D navigation layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 17. Si laissé vide, la "
"couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the 3D navigation layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 18. Si laissé vide, la "
"couche s'affichera comme \"Couche 18\"."

msgid ""
"Optional name for the 3D navigation layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 19. Si laissé vide, la "
"couche s'affichera comme \"Couche 19\"."

msgid ""
"Optional name for the 3D navigation layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 20. Si laissé vide, la "
"couche s'affichera comme \"Couche 20\"."

msgid ""
"Optional name for the 3D navigation layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 21. Si laissé vide, la "
"couche s'affichera comme \"Couche 21\"."

msgid ""
"Optional name for the 3D navigation layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 22. Si laissé vide, la "
"couche s'affichera comme \"Couche 22\"."

msgid ""
"Optional name for the 3D navigation layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 23. Si laissé vide, la "
"couche s'affichera comme \"Couche 23\"."

msgid ""
"Optional name for the 3D navigation layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 24. Si laissé vide, la "
"couche s'affichera comme \"Couche 24\"."

msgid ""
"Optional name for the 3D navigation layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 25. Si laissé vide, la "
"couche s'affichera comme \"Couche 25\"."

msgid ""
"Optional name for the 3D navigation layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 26. Si laissé vide, la "
"couche s'affichera comme \"Couche 26\"."

msgid ""
"Optional name for the 3D navigation layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 27. Si laissé vide, la "
"couche s'affichera comme \"Couche 27\"."

msgid ""
"Optional name for the 3D navigation layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 28. Si laissé vide, la "
"couche s'affichera comme \"Couche 28\"."

msgid ""
"Optional name for the 3D navigation layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 29. Si laissé vide, la "
"couche s'affichera comme \"Couche 29\"."

msgid ""
"Optional name for the 3D navigation layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 30. Si laissé vide, la "
"couche s'affichera comme \"Couche 30\"."

msgid ""
"Optional name for the 3D navigation layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 31. Si laissé vide, la "
"couche s'affichera comme \"Couche 31\"."

msgid ""
"Optional name for the 3D navigation layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Nom facultatif pour la couche de navigation 3D numéro 32. Si laissé vide, la "
"couche s'affichera comme \"Couche 32\"."

msgid ""
"Optional name for the 3D physics layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 1. Si laissé vide, la "
"couche s'affichera comme \"Couche 1\"."

msgid ""
"Optional name for the 3D physics layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 2. Si laissé vide, la "
"couche s'affichera comme \"Couche 2\"."

msgid ""
"Optional name for the 3D physics layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 3. Si laissé vide, la "
"couche s'affichera comme \"Couche 3\"."

msgid ""
"Optional name for the 3D physics layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 4. Si laissé vide, la "
"couche s'affichera comme \"Couche 4\"."

msgid ""
"Optional name for the 3D physics layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 5. Si laissé vide, la "
"couche s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the 3D physics layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 6. Si laissé vide, la "
"couche s'affichera comme \"Couche 6\"."

msgid ""
"Optional name for the 3D physics layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 7. Si laissé vide, la "
"couche s'affichera comme \"Couche 7\"."

msgid ""
"Optional name for the 3D physics layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 8. Si laissé vide, la "
"couche s'affichera comme \"Couche 8\"."

msgid ""
"Optional name for the 3D physics layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 9. Si laissé vide, la "
"couche s'affichera comme \"Couche 9\"."

msgid ""
"Optional name for the 3D physics layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 10. Si laissé vide, la "
"couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the 3D physics layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 11. Si laissé vide, la "
"couche s'affichera comme \"Couche 11\"."

msgid ""
"Optional name for the 3D physics layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 12. Si laissé vide, la "
"couche s'affichera comme \"Couche 12\"."

msgid ""
"Optional name for the 3D physics layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 13. Si laissé vide, la "
"couche s'affichera comme \"Couche 13\"."

msgid ""
"Optional name for the 3D physics layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 14. Si laissé vide, la "
"couche s'affichera comme \"Couche 14\"."

msgid ""
"Optional name for the 3D physics layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 15. Si laissé vide, la "
"couche s'affichera comme \"Couche 15\"."

msgid ""
"Optional name for the 3D physics layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 16. Si laissé vide, la "
"couche s'affichera comme \"Couche 16\"."

msgid ""
"Optional name for the 3D physics layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 17. Si laissé vide, la "
"couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the 3D physics layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 18. Si laissé vide, la "
"couche s'affichera comme \"Couche 18\"."

msgid ""
"Optional name for the 3D physics layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 19. Si laissé vide, la "
"couche s'affichera comme \"Couche 19\"."

msgid ""
"Optional name for the 3D physics layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 20. Si laissé vide, la "
"couche s'affichera comme \"Couche 20\"."

msgid ""
"Optional name for the 3D physics layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 21. Si laissé vide, la "
"couche s'affichera comme \"Couche 21\"."

msgid ""
"Optional name for the 3D physics layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 22. Si laissé vide, la "
"couche s'affichera comme \"Couche 22\"."

msgid ""
"Optional name for the 3D physics layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 23. Si laissé vide, la "
"couche s'affichera comme \"Couche 23\"."

msgid ""
"Optional name for the 3D physics layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 24. Si laissé vide, la "
"couche s'affichera comme \"Couche 24\"."

msgid ""
"Optional name for the 3D physics layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 25. Si laissé vide, la "
"couche s'affichera comme \"Couche 25\"."

msgid ""
"Optional name for the 3D physics layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 26. Si laissé vide, la "
"couche s'affichera comme \"Couche 26\"."

msgid ""
"Optional name for the 3D physics layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 27. Si laissé vide, la "
"couche s'affichera comme \"Couche 27\"."

msgid ""
"Optional name for the 3D physics layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 28. Si laissé vide, la "
"couche s'affichera comme \"Couche 28\"."

msgid ""
"Optional name for the 3D physics layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 29. Si laissé vide, la "
"couche s'affichera comme \"Couche 29\"."

msgid ""
"Optional name for the 3D physics layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 30. Si laissé vide, la "
"couche s'affichera comme \"Couche 30\"."

msgid ""
"Optional name for the 3D physics layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 31. Si laissé vide, la "
"couche s'affichera comme \"Couche 31\"."

msgid ""
"Optional name for the 3D physics layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Nom facultatif pour la couche de physique 3D numéro 32. Si laissé vide, la "
"couche s'affichera comme \"Couche 32\"."

msgid ""
"Optional name for the 3D render layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 1. Si laissé vide, la couche "
"s'affichera comme \"Couche 1\"."

msgid ""
"Optional name for the 3D render layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 2. Si laissé vide, la couche "
"s'affichera comme \"Couche 2\"."

msgid ""
"Optional name for the 3D render layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 3. Si laissé vide, la couche "
"s'affichera comme \"Couche 3\"."

msgid ""
"Optional name for the 3D render layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 4. Si laissé vide, la couche "
"s'affichera comme \"Couche 4\"."

msgid ""
"Optional name for the 3D render layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 5. Si laissé vide, la couche "
"s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the 3D render layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 6. Si laissé vide, la couche "
"s'affichera comme \"Couche 6\"."

msgid ""
"Optional name for the 3D render layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 7. Si laissé vide, la couche "
"s'affichera comme \"Couche 7\"."

msgid ""
"Optional name for the 3D render layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 8. Si laissé vide, la couche "
"s'affichera comme \"Couche 8\"."

msgid ""
"Optional name for the 3D render layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 9. Si laissé vide, la couche "
"s'affichera comme \"Couche 9\"."

msgid ""
"Optional name for the 3D render layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 10. Si laissé vide, la "
"couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the 3D render layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 11. Si laissé vide, la "
"couche s'affichera comme \"Couche 11\"."

msgid ""
"Optional name for the 3D render layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 12. Si laissé vide, la "
"couche s'affichera comme \"Couche 12\"."

msgid ""
"Optional name for the 3D render layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 13. Si laissé vide, la "
"couche s'affichera comme \"Couche 13\"."

msgid ""
"Optional name for the 3D render layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 14. Si laissé vide, la "
"couche s'affichera comme \"Couche 14\"."

msgid ""
"Optional name for the 3D render layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 5. Si laissé vide, la couche "
"s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the 3D render layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 17. Si laissé vide, la "
"couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the 3D render layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 17. Si laissé vide, la "
"couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the 3D render layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 18. Si laissé vide, la "
"couche s'affichera comme \"Couche 18\"."

msgid ""
"Optional name for the 3D render layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 19. Si laissé vide, la "
"couche s'affichera comme \"Couche 19\"."

msgid ""
"Optional name for the 3D render layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Nom facultatif pour la couche de rendu 3D numéro 20. Si laissé vide, la "
"couche s'affichera comme \"Couche 20\"."

msgid ""
"Optional name for the navigation avoidance layer 1. If left empty, the layer "
"will display as \"Layer 1\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 1. Si laissé "
"vide, la couche s'affichera comme \"Couche 1\"."

msgid ""
"Optional name for the navigation avoidance layer 2. If left empty, the layer "
"will display as \"Layer 2\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 2. Si laissé "
"vide, la couche s'affichera comme \"Couche 2\"."

msgid ""
"Optional name for the navigation avoidance layer 3. If left empty, the layer "
"will display as \"Layer 3\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 3. Si laissé "
"vide, la couche s'affichera comme \"Couche 3\"."

msgid ""
"Optional name for the navigation avoidance layer 4. If left empty, the layer "
"will display as \"Layer 4\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 4. Si laissé "
"vide, la couche s'affichera comme \"Couche 4\"."

msgid ""
"Optional name for the navigation avoidance layer 5. If left empty, the layer "
"will display as \"Layer 5\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 5. Si laissé "
"vide, la couche s'affichera comme \"Couche 5\"."

msgid ""
"Optional name for the navigation avoidance layer 6. If left empty, the layer "
"will display as \"Layer 6\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 6. Si laissé "
"vide, la couche s'affichera comme \"Couche 6\"."

msgid ""
"Optional name for the navigation avoidance layer 7. If left empty, the layer "
"will display as \"Layer 7\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 7. Si laissé "
"vide, la couche s'affichera comme \"Couche 7\"."

msgid ""
"Optional name for the navigation avoidance layer 8. If left empty, the layer "
"will display as \"Layer 8\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 8. Si laissé "
"vide, la couche s'affichera comme \"Couche 8\"."

msgid ""
"Optional name for the navigation avoidance layer 9. If left empty, the layer "
"will display as \"Layer 9\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 9. Si laissé "
"vide, la couche s'affichera comme \"Couche 9\"."

msgid ""
"Optional name for the navigation avoidance layer 10. If left empty, the layer "
"will display as \"Layer 10\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 10. Si laissé "
"vide, la couche s'affichera comme \"Couche 10\"."

msgid ""
"Optional name for the navigation avoidance layer 11. If left empty, the layer "
"will display as \"Layer 11\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 11. Si laissé "
"vide, la couche s'affichera comme \"Couche 11\"."

msgid ""
"Optional name for the navigation avoidance layer 12. If left empty, the layer "
"will display as \"Layer 12\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 12. Si laissé "
"vide, la couche s'affichera comme \"Couche 12\"."

msgid ""
"Optional name for the navigation avoidance layer 13. If left empty, the layer "
"will display as \"Layer 13\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 13. Si laissé "
"vide, la couche s'affichera comme \"Couche 13\"."

msgid ""
"Optional name for the navigation avoidance layer 14. If left empty, the layer "
"will display as \"Layer 14\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 14. Si laissé "
"vide, la couche s'affichera comme \"Couche 14\"."

msgid ""
"Optional name for the navigation avoidance layer 15. If left empty, the layer "
"will display as \"Layer 15\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 15. Si laissé "
"vide, la couche s'affichera comme \"Couche 15\"."

msgid ""
"Optional name for the navigation avoidance layer 16. If left empty, the layer "
"will display as \"Layer 16\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 16. Si laissé "
"vide, la couche s'affichera comme \"Couche 16\"."

msgid ""
"Optional name for the navigation avoidance layer 17. If left empty, the layer "
"will display as \"Layer 17\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 17. Si laissé "
"vide, la couche s'affichera comme \"Couche 17\"."

msgid ""
"Optional name for the navigation avoidance layer 18. If left empty, the layer "
"will display as \"Layer 18\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 18. Si laissé "
"vide, la couche s'affichera comme \"Couche 18\"."

msgid ""
"Optional name for the navigation avoidance layer 19. If left empty, the layer "
"will display as \"Layer 19\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 19. Si laissé "
"vide, la couche s'affichera comme \"Couche 19\"."

msgid ""
"Optional name for the navigation avoidance layer 20. If left empty, the layer "
"will display as \"Layer 20\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 20. Si laissé "
"vide, la couche s'affichera comme \"Couche 20\"."

msgid ""
"Optional name for the navigation avoidance layer 21. If left empty, the layer "
"will display as \"Layer 21\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 21. Si laissé "
"vide, la couche s'affichera comme \"Couche 21\"."

msgid ""
"Optional name for the navigation avoidance layer 22. If left empty, the layer "
"will display as \"Layer 22\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 22. Si laissé "
"vide, la couche s'affichera comme \"Couche 22\"."

msgid ""
"Optional name for the navigation avoidance layer 23. If left empty, the layer "
"will display as \"Layer 23\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 23. Si laissé "
"vide, la couche s'affichera comme \"Couche 23\"."

msgid ""
"Optional name for the navigation avoidance layer 24. If left empty, the layer "
"will display as \"Layer 24\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 24. Si laissé "
"vide, la couche s'affichera comme \"Couche 24\"."

msgid ""
"Optional name for the navigation avoidance layer 25. If left empty, the layer "
"will display as \"Layer 25\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 25. Si laissé "
"vide, la couche s'affichera comme \"Couche 25\"."

msgid ""
"Optional name for the navigation avoidance layer 26. If left empty, the layer "
"will display as \"Layer 26\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 26. Si laissé "
"vide, la couche s'affichera comme \"Couche 26\"."

msgid ""
"Optional name for the navigation avoidance layer 27. If left empty, the layer "
"will display as \"Layer 27\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 27. Si laissé "
"vide, la couche s'affichera comme \"Couche 27\"."

msgid ""
"Optional name for the navigation avoidance layer 28. If left empty, the layer "
"will display as \"Layer 28\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 28. Si laissé "
"vide, la couche s'affichera comme \"Couche 28\"."

msgid ""
"Optional name for the navigation avoidance layer 29. If left empty, the layer "
"will display as \"Layer 29\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 29. Si laissé "
"vide, la couche s'affichera comme \"Couche 29\"."

msgid ""
"Optional name for the navigation avoidance layer 30. If left empty, the layer "
"will display as \"Layer 30\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 30. Si laissé "
"vide, la couche s'affichera comme \"Couche 30\"."

msgid ""
"Optional name for the navigation avoidance layer 31. If left empty, the layer "
"will display as \"Layer 31\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 31. Si laissé "
"vide, la couche s'affichera comme \"Couche 31\"."

msgid ""
"Optional name for the navigation avoidance layer 32. If left empty, the layer "
"will display as \"Layer 32\"."
msgstr ""
"Nom facultatif pour la couche d'évitement de navigation numéro 32. Si laissé "
"vide, la couche s'affichera comme \"Couche 32\"."

msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
"Godot utilise une file de messages pour reporter certains appels de fonction. "
"Si vous n'avez pas assez d'espace dessus (vous verrez une erreur), vous "
"pouvez augmenter la taille ici."

msgid ""
"Default cell size for 2D navigation maps. See [method "
"NavigationServer2D.map_set_cell_size]."
msgstr ""
"Taille de cellule par défaut pour les cartes de navigation 2D. Voir [method "
"NavigationServer2D.map_set_cell_size]."

msgid ""
"Default edge connection margin for 2D navigation maps. See [method "
"NavigationServer2D.map_set_edge_connection_margin]."
msgstr ""
"Marge de connexion des arêtes par défaut pour les cartes de navigation 2D. "
"Voir [method NavigationServer2D.map_set_edge_connection_margin]."

msgid ""
"Default link connection radius for 2D navigation maps. See [method "
"NavigationServer2D.map_set_link_connection_radius]."
msgstr ""
"Rayon de connexion de lien par défaut pour les cartes de navigation 2D. Voir "
"[method NavigationServer2D.map_set_link_connection_radius]."

msgid ""
"Default cell height for 3D navigation maps. See [method "
"NavigationServer3D.map_set_cell_height]."
msgstr ""
"Hauteur de cellule par défaut pour les cartes de navigation 3D. Voir [method "
"NavigationServer3D.map_set_cell_height]."

msgid ""
"Default cell size for 3D navigation maps. See [method "
"NavigationServer3D.map_set_cell_size]."
msgstr ""
"Taille de cellule par défaut pour les cartes de navigation 3D. Voir [method "
"NavigationServer3D.map_set_cell_size]."

msgid ""
"Default edge connection margin for 3D navigation maps. See [method "
"NavigationServer3D.map_set_edge_connection_margin]."
msgstr ""
"Marge de connexion des arêtes par défaut pour les cartes de navigation 3D. "
"Voir [method NavigationServer3D.map_set_edge_connection_margin]."

msgid ""
"Default link connection radius for 3D navigation maps. See [method "
"NavigationServer3D.map_set_link_connection_radius]."
msgstr ""
"Rayon de connexion de lien par défaut pour les cartes de navigation 3D. Voir "
"[method NavigationServer3D.map_set_link_connection_radius]."

msgid ""
"Default up orientation for 3D navigation maps. See [method "
"NavigationServer3D.map_set_up]."
msgstr ""
"Orientation du haut par défaut pour les cartes de navigation 3D. Voir [method "
"NavigationServer3D.map_set_up]."

msgid ""
"If enabled and avoidance calculations use multiple threads the threads run "
"with high priority."
msgstr ""
"Si activé et que les calculs d'évitement utilisent plusieurs threads, les "
"threads fonctionnent avec une priorité élevée."

msgid "If enabled the avoidance calculations use multiple threads."
msgstr "Si activé, les calculs d'évitement utilise plusieurs threads."

msgid ""
"If enabled and async navmesh baking uses multiple threads the threads run "
"with high priority."
msgstr ""
"Si activé et que le pré-calcul asynchrone des maillages de navigation utilise "
"plusieurs threads, les threads fonctionnent avec une priorité élevée."

msgid "If enabled the async navmesh baking uses multiple threads."
msgstr ""
"Si activé, le pré-calcul de maillage de navigation asynchrone utilise "
"plusieurs threads."

msgid ""
"If enabled, and baking would potentially lead to an engine crash, the baking "
"will be interrupted and an error message with explanation will be raised."
msgstr ""
"Si activé, et que le pré-calcul pourrait conduire à un plantage moteur, le "
"pré-calcul sera interrompu et un message d'erreur avec explication sera levé."

msgid ""
"Maximum number of threads that can run pathfinding queries simultaneously on "
"the same pathfinding graph, for example the same navigation map. Additional "
"threads increase memory consumption and synchronization time due to the need "
"for extra data copies prepared for each thread. A value of [code]-1[/code] "
"means unlimited and the maximum available OS processor count is used. "
"Defaults to [code]1[/code] when the OS does not support threads."
msgstr ""
"Nombre maximal de threads qui peuvent exécuter des requêtes de recherche de "
"chemin simultanément sur le même graphe de recherche de chemin, par exemple "
"la même carte de navigation. Les threads supplémentaires augmentent la "
"consommation de mémoire et le temps de synchronisation en raison du besoin de "
"copies de données supplémentaires préparées pour chaque thread. Une valeur de "
"[code]-1[/code] signifie illimité et le nombre maximal de processeurs "
"disponibles de l'OS est utilisé. Défaut à [code]1[/code] lorsque le système "
"d'exploitation ne supporte pas les threads."

msgid ""
"If enabled, navigation map synchronization uses an async process that runs on "
"a background thread. This avoids stalling the main thread but adds an "
"additional delay to any navigation map change."
msgstr ""
"Si activé, la synchronisation de la carte de navigation utilise un processus "
"asynchrone qui fonctionne sur un thread de fond. Cela évite de retarder le "
"thread principal mais ajoute un délai supplémentaire à tout changement de "
"carte de navigation."

msgid ""
"Maximum number of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
"Nombre maximal de caractères autorisés à être envoyés comme sortie depuis le "
"débogueur. Une fois cette valeur dépassée, le nouveau contenu est ignoré. "
"Cela aide à ne pas bloquer la connexion du déboguer."

msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
"Nombre maximal d'erreurs autorisées à être envoyées depuis le débogueur. Une "
"fois cette valeur dépassée, le nouveau contenu est ignoré. Cela aide à ne pas "
"bloquer la connexion du déboguer."

msgid ""
"Maximum number of messages in the debugger queue. Over this value, content is "
"dropped. This helps to limit the debugger memory usage."
msgstr ""
"Nombre maximal de messages dans la file du débogueur. Une fois cette valeur "
"dépassée, le nouveau contenu est ignoré. Cela aide à limiter l'utilisation de "
"mémoire du débogueur."

msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
"Nombre maximal d'avertissements autorisés à être envoyés au débogueur. Une "
"fois cette valeur dépassée, le nouveau contenu est ignoré. Cela aide à ne pas "
"bloquer la connexion du déboguer."

msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr "Temps maximum (en secondes) pour les tentatives de connexion via TCP."

msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
"Taille maximale (en Kio) de la mémoire du buffer d'entrée du "
"[WebRTCDataChannel]."

msgid ""
"The CA certificates bundle to use for TLS connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
"github.com/godotengine/godot/blob/master/thirdparty/certs/ca-"
"certificates.crt]Mozilla certificate bundle[/url]. If left empty, the default "
"certificate bundle will be used.\n"
"If in doubt, leave this setting empty."
msgstr ""
"Le pack de certificats CA à utiliser pour les connexions TLS. Si cela est "
"défini à une valeur non vide, cela [i]redéfinira[/i] les certificats par "
"défaut de Godot venant du [url=https://github.com/godotengine/godot/blob/"
"master/thirdparty/certs/ca-certificates.crt]Pack de certificats de Mozilla[/"
"url]. Si laissé vide, le pack de certificat par défaut sera utilisé.\n"
"En cas de doute, laissez ce paramètre vide."

msgid ""
"The default rotational motion damping in 2D. Damping is used to gradually "
"slow down physical objects over time. RigidBodies will fall back to this "
"value when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the linear velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code]. "
"By default, bodies combine damp factors: [code]combined_damp[/code] is the "
"sum of the damp value of the body and this value or the area's value the body "
"is in. See [enum RigidBody2D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"L'amortissement du mouvement de rotation par défaut en 2D. L'amortissement "
"est utilisé pour ralentir progressivement les objets physiques au fil du "
"temps. Les corps rigides vont se replier vers cette valeur lors de la "
"combinaison de leur propre valeur d'amortissement avec une valeur "
"d'amortissement de zone non présente.\n"
"Les valeurs suggérées sont dans l'intervalle [code]0[/code] à [code]30[/"
"code]. À [code]0[/code], les objets continueront de se déplacer avec la même "
"vitesse. De plus grandes valeurs vont arrêter l'objet plus rapidement. Une "
"valeur supérieur ou égale à celle du taux de tics physiques ([member physics/"
"common/physics_ticks_per_second]) amènera l'objet à s'arrêter en une "
"itération.\n"
"[b]Note :[/b] Les calculs d'amortissement de Godot dépendent de la vitesse, "
"ce qui signifie que les corps se déplaçant plus rapidement prendront plus de "
"temps pour s'arrêter. Ils ne simulent pas l'inertie, la friction ou la "
"résistance de l'air. Par conséquent, les corps plus lourds ou plus grands "
"perdront de la vitesse à la même proportion que les corps plus légers ou plus "
"petits.\n"
"Lors de chaque tic physique, Godot multipliera la vitesse linéaire des corps "
"physiques par [code]1.0 - amortissement_combine / tics_physiques_par_seconde "
"[/code]. Par défaut, les corps combinent les facteurs d'amortissement : "
"[code]amortissement_combine[/code] est la somme de la valeur d'amortissement "
"du corps et de cette valeur ou de la valeur de la zone dans laquelle le corps "
"se trouve. Voir [enum RigidBody2D.DampMode].\n"
"[b]Avertissement :[/b] Les calculs d'amortissement de Godot dépendent du taux "
"de tic de simulation. Changer [member physics/common/"
"physics_ticks_per_second] peut changer considérablement les résultats et la "
"sensation de votre simulation. Ceci est vrai pour toute la gamme de valeurs "
"d'amortissement supérieures à 0. Pour revenir à une sensation similaire, vous "
"devez également changer vos valeurs d'amortissement. Ce changement nécessaire "
"n'est pas proportionnel et diffère au cas par cas."

msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity strength to 980.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY, 980)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity strength to 980.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.Gravity, 980);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La force de gravité par défaut en 2D (en pixels par seconde au carré).\n"
"[b]Note :[/b] Cette propriété est seulement lue au démarrage du projet. Pour "
"modifier la gravité par défaut durant l'exécution, utilisez le bout de code "
"suivant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Définir la force de gravité par défaut à 980.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY, 980)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Définir la force de gravité par défaut à 980.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.Gravity, 980);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity vector at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity direction to `Vector2(0, 1)`.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY_VECTOR, Vector2.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity direction to `Vector2(0, 1)`.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.GravityVector, Vector2.Down)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La direction de la gravité par défaut en 2D.\n"
"[b]Note :[/b] Cette propriété est seulement lue au démarrage du projet. Pour "
"modifier la gravité par défaut durant l'exécution, utilisez le bout de code "
"suivant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Définir la direction de la gravité par défaut à `Vector2(0, 1)`.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY_VECTOR, Vector2.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Définir la direction de la gravité par défaut à `Vector2(0, 1)`.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.GravityVector, Vector2.Down)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default linear motion damping in 2D. Damping is used to gradually slow "
"down physical objects over time. RigidBodies will fall back to this value "
"when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the linear velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code], "
"where [code]combined_damp[/code] is the sum of the linear damp of the body "
"and this value, or the area's value the body is in, assuming the body "
"defaults to combine damp values. See [enum RigidBody2D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"L'amortissement du mouvement linéaire par défaut en 2D. L'amortissement est "
"utilisé pour ralentir progressivement les objets physiques au fil du temps. "
"Les corps rigides vont se replier vers cette valeur lors de la combinaison de "
"leur propre valeur d'amortissement avec une valeur d'amortissement de zone "
"non présente.\n"
"Les valeurs suggérées sont dans l'intervalle [code]0[/code] à [code]30[/"
"code]. À [code]0[/code], les objets continueront de se déplacer avec la même "
"vitesse. De plus grandes valeurs vont arrêter l'objet plus rapidement. Une "
"valeur supérieur ou égale à celle de taux de tics physiques ([member physics/"
"common/physics_ticks_per_second]) amènera l'objet à s'arrêter en une "
"itération.\n"
"[b]Note :[/b] Les calculs d'amortissement de Godot dépendent de la vitesse, "
"ce qui signifie que les corps se déplaçant plus rapidement prendront plus de "
"temps pour s'arrêter. Ils ne simulent pas l'inertie, la friction ou la "
"résistance de l'air. Par conséquent, les corps plus lourds ou plus grands "
"perdront de la vitesse à la même proportion que les corps plus légers ou plus "
"petits.\n"
"Lors de chaque tic physique, Godot multipliera la vitesse linéaire des corps "
"physiques par [code]1.0 - amortissement_combine / tics_physiques_par_seconde "
"[/code]. Par défaut, les corps combinent les facteurs d'amortissement : "
"[code]amortissement_combine[/code] est la somme de la valeur d'amortissement "
"du corps et de cette valeur ou de la valeur de la zone dans laquelle le corps "
"se trouve. Voir [enum RigidBody2D.DampMode].\n"
"[b]Avertissement :[/b] Les calculs d'amortissement de Godot dépendent du taux "
"de tic de simulation. Changer [member physics/common/"
"physics_ticks_per_second] peut changer considérablement les résultats et la "
"sensation de votre simulation. Ceci est vrai pour toute la gamme de valeurs "
"d'amortissement supérieures à 0. Pour revenir à une sensation similaire, vous "
"devez également changer vos valeurs d'amortissement. Ce changement nécessaire "
"n'est pas proportionnel et diffère au cas par cas."

msgid ""
"Sets which physics engine to use for 2D physics.\n"
"[b]DEFAULT[/b] is currently equivalent to [b]GodotPhysics2D[/b], but may "
"change in future releases. Select an explicit implementation if you want to "
"ensure that your project stays on the same engine.\n"
"[b]GodotPhysics2D[/b] is Godot's internal 2D physics engine.\n"
"[b]Dummy[/b] is a 2D physics server that does nothing and returns only dummy "
"values, effectively disabling all 2D physics functionality.\n"
"Third-party extensions and modules can add other physics engines to select "
"with this setting."
msgstr ""
"Définit le moteur de physique à utiliser pour la physique 2D.\n"
"[b]DEFAULT[/b] est actuellement équivalent à [b]GodotPhysics2D[/b], mais peut "
"changer dans les versions futures. Sélectionnez une implémentation explicite "
"si vous voulez vous assurer que votre projet reste sur le même moteur.\n"
"[b]GodotPhysics2D[/b] est le moteur de physique 2D interne de Godot.\n"
"[b]Dummy[/b] est un serveur de physique 2D qui ne fait rien et ne renvoie que "
"des valeurs factices, désactivant effectivement toutes les fonctionnalités de "
"physique 2D.\n"
"Les extensions et modules tiers peuvent ajouter d'autres moteurs de physique "
"à sélectionner avec ce paramètre."

msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Vitesse angulaire de seuil sous laquelle un corps physique 2D sera considéré "
"comme inactif. Voir [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Vitesse linéaire de seuil sous laquelle un corps physique 2D sera considéré "
"comme inactif. Voir [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Maximum distance a shape can penetrate another shape before it is considered "
"a collision. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."
msgstr ""
"Distance maximale à laquelle une forme peut pénétrer une autre forme avant "
"que ce ne soit considéré comme une collision. Voir [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."

msgid ""
"Maximum distance a shape can be from another before they are considered "
"separated and the contact is discarded. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."
msgstr ""
"Distance maximale à laquelle une forme peut être d'une autre forme avant "
"qu'elles ne soient considérées comme séparées et que le contact soit "
"supprimé. Voir [constant PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."

msgid ""
"Maximum distance a pair of bodies has to move before their collision status "
"has to be recalculated. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."
msgstr ""
"Distance maximale à laquelle une paire corps peut se déplacer avant que leur "
"statut de collision soit re-calculé. Voir [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."

msgid ""
"Default solver bias for all physics constraints. Defines how much bodies "
"react to enforce constraints. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS].\n"
"Individual constraints can have a specific bias value (see [member "
"Joint2D.bias])."
msgstr ""
"Le biais du solveur par défaut pour toutes les contraintes physiques. Définit "
"de combien les corps réagissent pour faire respecter les contraintes. Voir "
"[constant PhysicsServer2D.SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS].\n"
"Les contraintes individuelles peuvent avoir une valeur de biais spécifique "
"(voir [member Joint2D.bias])."

msgid ""
"Default solver bias for all physics contacts. Defines how much bodies react "
"to enforce contact separation. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Individual shapes can have a specific bias value (see [member "
"Shape2D.custom_solver_bias])."
msgstr ""
"Le biais du solveur par défaut pour toutes les contacts physiques. Définit de "
"combien les corps réagissent pour assurer la séparation des contacts. Voir "
"[constant PhysicsServer2D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Les formes individuelles peuvent avoir une valeur de biais spécifique (voir "
"[member Shape2D.custom_solver_bias])."

msgid ""
"Number of solver iterations for all contacts and constraints. The greater the "
"number of iterations, the more accurate the collisions will be. However, a "
"greater number of iterations requires more CPU power, which can decrease "
"performance. See [constant PhysicsServer2D.SPACE_PARAM_SOLVER_ITERATIONS]."
msgstr ""
"Nombre d'itérations du solveur pour tous les contacts et contraintes. Plus le "
"nombre d'itérations est élevé, plus les collisions seront précises. "
"Cependant, un plus grand nombre d'itérations nécessite plus de puissance CPU, "
"ce qui peut diminuer les performances. Voir [constant "
"PhysicsServer2D.SPACE_PARAM_SOLVER_ITERATIONS]."

msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
"Temps (en secondes) d'inactivité avant lequel un corps physique 2D sera "
"endormi. Voir [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."

msgid ""
"The default rotational motion damping in 3D. Damping is used to gradually "
"slow down physical objects over time. RigidBodies will fall back to this "
"value when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the angular velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code]. "
"By default, bodies combine damp factors: [code]combined_damp[/code] is the "
"sum of the damp value of the body and this value or the area's value the body "
"is in. See [enum RigidBody3D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"L'amortissement du mouvement de rotation par défaut en 3D. L'amortissement "
"est utilisé pour ralentir progressivement les objets physiques au fil du "
"temps. Les corps rigides vont se replier vers cette valeur lors de la "
"combinaison de leur propre valeur d'amortissement avec une valeur "
"d'amortissement de zone non présente.\n"
"Les valeurs suggérées sont dans l'intervalle [code]0[/code] à [code]30[/"
"code]. À [code]0[/code], les objets continueront de se déplacer avec la même "
"vitesse. De plus grandes valeurs vont arrêter l'objet plus rapidement. Une "
"valeur supérieur ou égale à celle du taux de tics physiques ([member physics/"
"common/physics_ticks_per_second]) amènera l'objet à s'arrêter en une "
"itération.\n"
"[b]Note :[/b] Les calculs d'amortissement de Godot dépendent de la vitesse, "
"ce qui signifie que les corps se déplaçant plus rapidement prendront plus de "
"temps pour s'arrêter. Ils ne simulent pas l'inertie, la friction ou la "
"résistance de l'air. Par conséquent, les corps plus lourds ou plus grands "
"perdront de la vitesse à la même proportion que les corps plus légers ou plus "
"petits.\n"
"Lors de chaque tic physique, Godot multipliera la vitesse linéaire des corps "
"physiques par [code]1.0 - amortissement_combine / tics_physiques_par_seconde "
"[/code]. Par défaut, les corps combinent les facteurs d'amortissement : "
"[code]amortissement_combine[/code] est la somme de la valeur d'amortissement "
"du corps et de cette valeur ou de la valeur de la zone dans laquelle le corps "
"se trouve. Voir [enum RigidBody3D.DampMode].\n"
"[b]Avertissement :[/b] Les calculs d'amortissement de Godot dépendent du taux "
"de tic de simulation. Changer [member physics/common/"
"physics_ticks_per_second] peut changer considérablement les résultats et la "
"sensation de votre simulation. Ceci est vrai pour toute la gamme de valeurs "
"d'amortissement supérieures à 0. Pour revenir à une sensation similaire, vous "
"devez également changer vos valeurs d'amortissement. Ce changement nécessaire "
"n'est pas proportionnel et diffère au cas par cas."

msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity strength to 9.8.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity strength to 9.8.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.Gravity, 9.8);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La force de gravité par défaut en 2D (en mètres par seconde au carré).\n"
"[b]Note :[/b] Cette propriété est seulement lue au démarrage du projet. Pour "
"modifier la gravité par défaut durant l'exécution, utilisez le bout de code "
"suivant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Définir la force de gravité par défaut à 9.8.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Définir la force de gravité par défaut à 9.8.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.Gravity, 9.8);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity vector at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity direction to `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity direction to `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.GravityVector, Vector3.Down)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La direction de la gravité par défaut en 3D.\n"
"[b]Note :[/b] Cette propriété est seulement lue au démarrage du projet. Pour "
"modifier la gravité par défaut durant l'exécution, utilisez le bout de code "
"suivant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Définir la direction de la gravité par défaut à `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Définir la direction de la gravité par défaut à `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.GravityVector, Vector3.Down)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default linear motion damping in 3D. Damping is used to gradually slow "
"down physical objects over time. RigidBodies will fall back to this value "
"when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the linear velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code]. "
"By default, bodies combine damp factors: [code]combined_damp[/code] is the "
"sum of the damp value of the body and this value or the area's value the body "
"is in. See [enum RigidBody3D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"L'amortissement du mouvement linéaire par défaut en 3D. L'amortissement est "
"utilisé pour ralentir progressivement les objets physiques au fil du temps. "
"Les corps rigides vont se replier vers cette valeur lors de la combinaison de "
"leur propre valeur d'amortissement avec une valeur d'amortissement de zone "
"non présente.\n"
"Les valeurs suggérées sont dans l'intervalle [code]0[/code] à [code]30[/"
"code]. À [code]0[/code], les objets continueront de se déplacer avec la même "
"vitesse. De plus grandes valeurs vont arrêter l'objet plus rapidement. Une "
"valeur supérieur ou égale à celle de taux de tics physiques ([member physics/"
"common/physics_ticks_per_second]) amènera l'objet à s'arrêter en une "
"itération.\n"
"[b]Note :[/b] Les calculs d'amortissement de Godot dépendent de la vitesse, "
"ce qui signifie que les corps se déplaçant plus rapidement prendront plus de "
"temps pour s'arrêter. Ils ne simulent pas l'inertie, la friction ou la "
"résistance de l'air. Par conséquent, les corps plus lourds ou plus grands "
"perdront de la vitesse à la même proportion que les corps plus légers ou plus "
"petits.\n"
"Lors de chaque tic physique, Godot multipliera la vitesse linéaire des corps "
"physiques par [code]1.0 - amortissement_combine / tics_physiques_par_seconde "
"[/code]. Par défaut, les corps combinent les facteurs d'amortissement : "
"[code]amortissement_combine[/code] est la somme de la valeur d'amortissement "
"du corps et de cette valeur ou de la valeur de la zone dans laquelle le corps "
"se trouve. Voir [enum RigidBody3D.DampMode].\n"
"[b]Avertissement :[/b] Les calculs d'amortissement de Godot dépendent du taux "
"de tic de simulation. Changer [member physics/common/"
"physics_ticks_per_second] peut changer considérablement les résultats et la "
"sensation de votre simulation. Ceci est vrai pour toute la gamme de valeurs "
"d'amortissement supérieures à 0. Pour revenir à une sensation similaire, vous "
"devez également changer vos valeurs d'amortissement. Ce changement nécessaire "
"n'est pas proportionnel et diffère au cas par cas."

msgid ""
"Sets which physics engine to use for 3D physics.\n"
"[b]DEFAULT[/b] is currently equivalent to [b]GodotPhysics3D[/b], but may "
"change in future releases. Select an explicit implementation if you want to "
"ensure that your project stays on the same engine.\n"
"[b]GodotPhysics3D[/b] is Godot's internal 3D physics engine.\n"
"[b]Jolt Physics[/b] is an alternative physics engine that is generally faster "
"and more reliable than [b]GodotPhysics3D[/b]. As it was recently implemented, "
"it is currently considered experimental and its behavior may change in future "
"releases.\n"
"[b]Dummy[/b] is a 3D physics server that does nothing and returns only dummy "
"values, effectively disabling all 3D physics functionality.\n"
"Third-party extensions and modules can add other physics engines to select "
"with this setting."
msgstr ""
"Définit le moteur de physique à utiliser pour la physique 23.\n"
"[b]DEFAULT[/b] est actuellement équivalent à [b]GodotPhysics3D[/b], mais peut "
"changer dans les versions futures. Sélectionnez une implémentation explicite "
"si vous voulez vous assurer que votre projet reste sur le même moteur.\n"
"[b]GodotPhysics3D[/b] est le moteur de physique 3D interne de Godot.\n"
"[b]Jolt Physics[/b] est un moteur de physique alternatif qui est généralement "
"plus rapide et plus fiable que [b]GodotPhysics3D[/b]. Comme il a été "
"récemment implémenté, il est actuellement considéré comme expérimental et son "
"comportement peut changer dans les versions futures.\n"
"[b]Dummy[/b] est un serveur de physique 3D qui ne fait rien et ne renvoie que "
"des valeurs factices, désactivant effectivement toutes les fonctionnalités de "
"physique 2D.\n"
"Les extensions et modules tiers peuvent ajouter d'autres moteurs de physique "
"à sélectionner avec ce paramètre."

msgid ""
"The approach used for 3D scene traversal when physics interpolation is "
"enabled.\n"
"- [code]DEFAULT[/code]: The default optimized method.\n"
"- [code]Legacy[/code]: The previous reference method used for scene tree "
"traversal, which is slower.\n"
"- [code]Debug[/code]: Swaps between [code]DEFAULT[/code] and [code]Legacy[/"
"code] methods on alternating frames, and provides logging information (which "
"in turn makes it slower). Intended for debugging only; you should use the "
"[code]DEFAULT[/code] method in most cases."
msgstr ""
"L'approche utilisée pour la traversée de scène 3D lorsque l'interpolation "
"physique est activée.\n"
"- [code]DEFAULT[/code]: La méthode optimisée par défaut.\n"
"- [code]Legacy[/code]: La méthode de référence précédente utilisée pour la "
"traversée de arborescence de scène, qui est plus lente.\n"
"- [code]Debug[/code]: Échange entre les méthodes [code]DEFAULT[/code] et "
"[code]Legacy[/code] alternativement entre chaque trame, et fournit des "
"informations de logging (ce qui, à son tour, la rend plus lente). Pensée pour "
"du débogage seulement, vous devriez utiliser la méthode [code]DEFAULT[/code] "
"dans la plupart des cas."

msgid ""
"Threshold angular velocity under which a 3D physics body will be considered "
"inactive. See [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Vitesse linéaire de seuil sous laquelle un corps physique 3D sera considéré "
"comme inactif. Voir [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Threshold linear velocity under which a 3D physics body will be considered "
"inactive. See [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Vitesse linéaire de seuil sous laquelle un corps physique 3D sera considéré "
"comme inactif. Voir [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Maximum distance a shape can penetrate another shape before it is considered "
"a collision. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."
msgstr ""
"Distance maximale qu'une forme peut pénétrer une autre forme avant que ce ne "
"soit considéré comme une collision. Voir [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."

msgid ""
"Maximum distance a shape can be from another before they are considered "
"separated and the contact is discarded. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."
msgstr ""
"Distance maximale à laquelle une forme peut être d'une autre forme avant "
"qu'elles ne soient considérées comme séparées et que le contact soit "
"supprimé. Voir [constant PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."

msgid ""
"Maximum distance a pair of bodies has to move before their collision status "
"has to be recalculated. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."
msgstr ""
"Distance maximale à laquelle une paire corps peut se déplacer avant que leur "
"statut de collision soit re-calculé. Voir [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."

msgid ""
"Default solver bias for all physics contacts. Defines how much bodies react "
"to enforce contact separation. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Individual shapes can have a specific bias value (see [member "
"Shape3D.custom_solver_bias])."
msgstr ""
"Le biais du solveur par défaut pour toutes les contacts physiques. Définit de "
"combien les corps réagissent pour assurer la séparation des contacts. Voir "
"[constant PhysicsServer3D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Les formes individuelles peuvent avoir une valeur de biais spécifique (voir "
"[member Shape3D.custom_solver_bias])."

msgid ""
"Number of solver iterations for all contacts and constraints. The greater the "
"number of iterations, the more accurate the collisions will be. However, a "
"greater number of iterations requires more CPU power, which can decrease "
"performance. See [constant PhysicsServer3D.SPACE_PARAM_SOLVER_ITERATIONS]."
msgstr ""
"Nombre d'itérations du solveur pour tous les contacts et contraintes. Plus le "
"nombre d'itérations est élevé, plus les collisions seront précises. "
"Cependant, un plus grand nombre d'itérations nécessite plus de puissance CPU, "
"ce qui peut diminuer les performances. Voir [constant "
"PhysicsServer3D.SPACE_PARAM_SOLVER_ITERATIONS]."

msgid ""
"Time (in seconds) of inactivity before which a 3D physics body will put to "
"sleep. See [constant PhysicsServer3D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
"Temps (en secondes) d'inactivité avant lequel un corps physique 3D sera "
"endormi. Voir [constant PhysicsServer3D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."

msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr "Active [member Viewport.physics_object_picking] sur le viewport racine."

msgid ""
"If [code]true[/code], the renderer will interpolate the transforms of objects "
"(both physics and non-physics) between the last two transforms, so that "
"smooth motion is seen even when physics ticks do not coincide with rendered "
"frames. See also [method Node.reset_physics_interpolation].\n"
"[b]Note:[/b] Although this is a global setting, finer control of individual "
"branches of the [SceneTree] is possible using [member "
"Node.physics_interpolation_mode].\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle "
"physics interpolation at runtime, set [member "
"SceneTree.physics_interpolation] instead.\n"
"[b]Note:[/b] Property [member physics/common/physics_jitter_fix] is "
"automatically disabled if [member physics/common/physics_interpolation] is "
"set to [code]true[/code], as the two methods are incompatible."
msgstr ""
"Si [code]true[/code], le moteur de rendu interpolera les transformations "
"d'objets (objets physiques et non physiques) entre les deux dernières "
"transformations, de sorte que le mouvement lisse soit vu même lorsque les "
"tics de physique ne coïncident pas avec les trames rendues. Voir aussi "
"[method Node.reset_physics_interpolation].\n"
"[b]Note :[/b] Bien qu'il s'agisse d'un paramètre global, un contrôle plus fin "
"des branches individuelles du [SceneTree] est possible en utilisant [member "
"Node.physics_interpolation_mode].\n"
"[b]Note :[/b] Cette propriété n'est lue qu’au démarrage du projet. Pour "
"modifier l'interpolation physique durant l'exécution, définissez [member "
"SceneTree.physics_interpolation] à la place.\n"
"[b]Note :[/b] La propriété [member physics/common/physics_jitter_fix] est "
"automatiquement désactivée si [member physics/common/physics_interpolation] "
"est défini à [code]true[/code], car les deux méthodes sont incompatibles."

msgid ""
"The maximum angle, in radians, between two adjacent triangles in a "
"[ConcavePolygonShape3D] or [HeightMapShape3D] for which the edge between "
"those triangles is considered inactive.\n"
"Collisions against an inactive edge will have its normal overridden to "
"instead be the surface normal of the triangle. This can help alleviate ghost "
"collisions.\n"
"[b]Note:[/b] Setting this too high can result in objects not depenetrating "
"properly.\n"
"[b]Note:[/b] This applies to all shape queries, as well as physics bodies "
"within the simulation.\n"
"[b]Note:[/b] This does not apply when enabling Jolt's enhanced internal edge "
"removal, which supersedes this."
msgstr ""
"L'angle maximal, en radians, entre deux triangles adjacents dans un "
"[ConcavePolygonShape3D] ou [HeightMapShape3D] pour lesquels l'arrête entre "
"ces triangles est considérée comme inactive.\n"
"Les collisions contre une arrête inactive auront leur normale remplacée par "
"la normale de la surface du triangle. Cela peut aider à atténuer les "
"collisions fantômes.\n"
"[b]Note :[/b] Définir ceci trop haut peut résulter en des objets qui ne se "
"dépénètrent pas correctement.\n"
"[b]Note :[/b] Cela s'applique à toutes les requêtes de forme, ainsi qu'aux "
"corps physiques dans la simulation.\n"
"[b]Note :[/b] Cela ne s'applique pas lors de l'activation de la suppression "
"des arrêtes internes améliorée de Jolt, qui a la priorité sur ceci."

msgid ""
"The amount of collision margin to use for certain convex collision shapes, "
"such as [BoxShape3D], [CylinderShape3D] and [ConvexPolygonShape3D], as a "
"fraction of the shape's shortest axis, with [member Shape3D.margin] as the "
"upper bound. This is mainly used to speed up collision detection with convex "
"shapes.\n"
"[b]Note:[/b] Collision margins in Jolt do not add any extra size to the "
"shape. Instead the shape is first shrunk by the margin and then expanded by "
"the same amount, resulting in a shape with rounded corners.\n"
"[b]Note:[/b] Setting this value too close to [code]0.0[/code] may also "
"negatively affect the accuracy of the collision detection with convex shapes."
msgstr ""
"La quantité de marge de collision à utiliser pour certaines formes de "
"collision convexes, telles que [BoxShape3D], [CylinderShape3D] et "
"[ConvexPolygonShape3D], en tant que fraction de l'axe le plus court de la "
"forme, avec [member Shape3D.margin] comme limite supérieure. Ceci est "
"principalement utilisé pour accélérer la détection de collision avec des "
"formes convexes.\n"
"[b]Note :[/b] Les marges de collision dans Jolt n'ajoutent aucune taille "
"supplémentaire à la forme. Au lieu de cela, la forme est d'abord rétrécie de "
"la marge, puis agrandie par la même quantité, résultant en une forme avec des "
"coins arrondis.\n"
"[b]Note :[/b] Définir cette valeur trop proche de [code]0.0[/code] peut "
"également nuire à l'exactitude de la détection de collision avec des formes "
"convexes."

msgid ""
"Which of the two nodes bound by a joint should represent the world when one "
"of the two is omitted, as either [member Joint3D.node_a] or [member "
"Joint3D.node_b]. This can be thought of as having the omitted node be a "
"[StaticBody3D] at the joint's position. Joint limits are more easily "
"expressed when [member Joint3D.node_a] represents the world.\n"
"[b]Note:[/b] In Godot Physics, only [member Joint3D.node_b] can represent the "
"world."
msgstr ""
"Lequel des deux nœuds liés par une liaison devrait représenter le monde "
"lorsque l'un des deux est omis, entre [member Joint3D.node_a] ou [member "
"Joint3D.node_b]. Cela peut être pensé comme si le nœud omis était un "
"[StaticBody3D] à la position de la liaison. Les limites de liaisons sont plus "
"facilement exprimées lorsque [member Joint3D.node_a] représente le monde.\n"
"[b]Note :[/b] Dans Godot Physics, seul [member Joint3D.node_b] peut "
"représenter le monde."

msgid ""
"The maximum angular velocity that a [RigidBody3D] can reach, in radians per "
"second.\n"
"This is mainly used as a fail-safe, to prevent the simulation from exploding, "
"as fast-moving objects colliding with complex physics structures can "
"otherwise cause them to go out of control. Fast-moving objects can also cause "
"a lot of stress on the collision detection system, which can slow down the "
"simulation considerably."
msgstr ""
"La vitesse angulaire maximale qu'un [RigidBody3D] peut atteindre, en radians "
"par seconde.\n"
"Ceci est principalement utilisé comme un dispositif de sécurité, pour "
"empêcher la simulation d'exploser, car les objets se déplaçant rapidement "
"entrant en collision avec des structures physiques complexes peuvent sinon "
"leur faire perdre le contrôle. Les objets se déplaçant rapidement peuvent "
"également causer beaucoup de stress sur le système de détection de collision, "
"ce qui peut ralentir considérablement la simulation."

msgid ""
"The maximum number of [PhysicsBody3D] to support at the same time, awake or "
"sleeping. When this limit is exceeded, an error is reported and anything past "
"that point is undefined behavior.\n"
"[b]Note:[/b] This limit also applies within the editor."
msgstr ""
"Le nombre maximum de [PhysicsBody3D] à supporter en même temps, éveillés ou "
"endormis. Lorsque cette limite est dépassée, une erreur est signalée et tout "
"ce qui se passe après cela est du comportement indéfini.\n"
"[b]Note :[/b] Cette limite s'applique également à l'éditeur."

msgid ""
"The maximum number of body pairs to allow processing of. When this limit is "
"exceeded, a warning is reported and collisions will randomly be ignored while "
"bodies pass through each other."
msgstr ""
"Le nombre maximum de paires de corps dont le traitement est autorisé. Lorsque "
"cette limite est dépassée, un avertissement est signalé et les collisions "
"seront ignorées aléatoirement pendant que les corps passent l'un à travers "
"l'autre."

msgid ""
"The maximum number of contact constraints to allow processing of. When this "
"limit is exceeded, a warning is reported and collisions will randomly be "
"ignored while bodies pass through each other."
msgstr ""
"Le nombre maximum de contraintes de contact dont le traitement est autorisé. "
"Lorsque cette limite est dépassée, un avertissement est signalé et les "
"collisions seront ignorées aléatoirement pendant que les corps passent l'un à "
"travers l'autre."

msgid ""
"The maximum linear velocity that a [RigidBody3D] can reach, in meters per "
"second.\n"
"This is mainly used as a fail-safe, to prevent the simulation from exploding, "
"as fast-moving objects colliding with complex physics structures can "
"otherwise cause them to go out of control. Fast-moving objects can also cause "
"a lot of stress on the collision detection system, which can slow down the "
"simulation considerably."
msgstr ""
"La vitesse linéaire maximale qu'un [RigidBody3D] peut atteindre, en mètres "
"par seconde.\n"
"Ceci est principalement utilisé comme un dispositif de sécurité, pour "
"empêcher la simulation d'exploser, car les objets se déplaçant rapidement "
"entrant en collision avec des structures physiques complexes peuvent sinon "
"leur faire perdre le contrôle. Les objets se déplaçant rapidement peuvent "
"également causer beaucoup de stress sur le système de détection de collision, "
"ce qui peut ralentir considérablement la simulation."

msgid ""
"The amount of memory to pre-allocate for the stack allocator used within "
"Jolt, in MiB. This allocator is used within the physics step to store things "
"that are only needed during it, like which bodies are in contact, how they "
"form islands and the data needed to solve the contacts."
msgstr ""
"La quantité de mémoire à pré-allouer pour l'allocateur de pile utilisé dans "
"Jolt, en Mio. Cet allocateur est utilisé dans l'étape physique pour stocker "
"les choses qui ne sont nécessaires que pendant celle-ci, comme quels corps "
"sont en contact, comment ils forment des îles et les données nécessaires pour "
"résoudre les contacts."

msgid ""
"The size of [WorldBoundaryShape3D] boundaries, for all three dimensions. The "
"plane is effectively centered within a box of this size, and anything outside "
"of the box will not collide with it. This is necessary as "
"[WorldBoundaryShape3D] is not unbounded when using Jolt, in order to prevent "
"precision issues.\n"
"[b]Note:[/b] Setting this value too high can make collision detection less "
"accurate.\n"
"[b]Note:[/b] Collisions against the effective edges of a "
"[WorldBoundaryShape3D] will be inconsistent."
msgstr ""
"La taille des limites du [WorldBoundaryShape3D], pour les trois dimensions. "
"Le plan est centré dans une boîte de cette taille, et quoi que ce soit à "
"l'extérieur de la boîte n'entrera pas en collision avec elle. Cela est "
"nécessaire car les limites du [WorldBoundaryShape3D] ne sont pas retirées "
"lors de l'utilisation de Jolt, afin d'éviter des problèmes de précision.\n"
"[b]Note :[/b] Définir cette valeur trop haut peut rendre la détection de "
"collision moins exacte.\n"
"[b]Note :[/b] Les collisions contre les arrêtes effectives d'un "
"[WorldBoundaryShape3D] seront inconsistantes."

msgid ""
"Fraction of the total penetration to depenetrate per iteration during motion "
"queries.\n"
"[b]Note:[/b] This affects methods [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] and "
"[method PhysicsServer3D.body_test_motion]."
msgstr ""
"Fraction de la pénétration totale à dé-pénetrer par itération lors des "
"requêtes de mouvement.\n"
"[b]Note :[/b] Cela affecte les méthodes [method "
"CharacterBody3D.move_and_slide], [method PhysicsBody3D.move_and_collide], "
"[method PhysicsBody3D.test_move] et [method PhysicsServer3D.body_test_motion]."

msgid ""
"The number of iterations to run when depenetrating during motion queries.\n"
"[b]Note:[/b] This affects methods [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] and "
"[method PhysicsServer3D.body_test_motion]."
msgstr ""
"Le nombre d'itérations à exécuter lors de la dé-pénétration lors des requêtes "
"de mouvement.\n"
"[b]Note :[/b] Cela affecte les méthodes [method "
"CharacterBody3D.move_and_slide], [method PhysicsBody3D.move_and_collide], "
"[method PhysicsBody3D.test_move] et [method PhysicsServer3D.body_test_motion]."

msgid ""
"If [code]true[/code], enables Jolt's enhanced internal edge removal during "
"motion queries. This can help alleviate ghost collisions, but only with edges "
"within a single body, meaning edges between separate bodies can still cause "
"ghost collisions.\n"
"[b]Note:[/b] This affects methods [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] and "
"[method PhysicsServer3D.body_test_motion]."
msgstr ""
"Si [code]true[/code], active la suppression des arrêtes internes améliorée de "
"Jolt lors des requêtes de mouvement. Cela peut aider à atténuer les "
"collisions fantômes, mais seulement avec des arrêtes dans un seul corps, ce "
"qui signifie que les arrêtes entre des corps séparés peuvent encore causer "
"des collisions fantômes.\n"
"[b]Note :[/b] Cela affecte les méthodes [method "
"CharacterBody3D.move_and_slide], [method PhysicsBody3D.move_and_collide], "
"[method PhysicsBody3D.test_move] et [method PhysicsServer3D.body_test_motion]."

msgid ""
"If [code]true[/code], populates the [code]face_index[/code] field in the "
"results of [method PhysicsDirectSpaceState3D.intersect_ray], also accessed "
"through [method RayCast3D.get_collision_face_index]. If [code]false[/code], "
"the [code]face_index[/code] field will be left at its default value of "
"[code]-1[/code].\n"
"[b]Note:[/b] Enabling this setting will increase Jolt's memory usage for "
"[ConcavePolygonShape3D] by around 25%."
msgstr ""
"Si [code]true[/code], peuple le champ [code]face_index[/code] dans les "
"résultats de [method PhysicsDirectSpaceState3D.intersect_ray], également "
"accessible par [method RayCast3D.get_collision_face_index]. Si [code]false[/"
"code], le champ [code]face_index[/code] sera laissé à sa valeur par défaut de "
"[code]-1[/code].\n"
"[b]Note :[/b] Activer ce paramètre augmentera l'utilisation de mémoire de "
"Jolt pour [ConcavePolygonShape3D] d'environ 25%."

msgid ""
"If [code]true[/code], enables Jolt's enhanced internal edge removal during "
"shape queries. This can help alleviate ghost collisions when using shape "
"queries for things like character movement, but only with edges within a "
"single body, meaning edges between separate bodies can still cause ghost "
"collisions.\n"
"[b]Note:[/b] This affects methods [method "
"PhysicsDirectSpaceState3D.cast_motion], [method "
"PhysicsDirectSpaceState3D.collide_shape], [method "
"PhysicsDirectSpaceState3D.get_rest_info] and [method "
"PhysicsDirectSpaceState3D.intersect_shape].\n"
"[b]Note:[/b] Enabling this setting can cause certain shapes to be culled from "
"the results entirely, but you will get at least one intersection per body."
msgstr ""
"Si [code]true[/code], active la suppression des arrêtes internes améliorée de "
"Jolt lors des requêtes de mouvement. Cela peut aider à atténuer les "
"collisions fantômes lors de l'utilisation de requêtes de mouvement pour des "
"choses comme les mouvements de personnage, mais seulement avec des arrêtes "
"dans un seul corps, ce qui signifie que les arrêtes entre des corps séparés "
"peuvent encore causer des collisions fantômes.\n"
"[b]Note :[/b] Cela affecte les méthodes [method "
"PhysicsDirectSpaceState3D.cast_motion], [method "
"PhysicsDirectSpaceState3D.collide_shape], [method "
"PhysicsDirectSpaceState3D.get_rest_info] et [method "
"PhysicsDirectSpaceState3D.intersect_shape].\n"
"[b]Note :[/b] Activer ce paramètre peut causer que certaines formes soient "
"entièrement supprimées des résultats, mais vous obtiendrez au moins une "
"intersection par corps."

msgid ""
"If [code]true[/code], [RigidBody3D] nodes are allowed to go to sleep if their "
"velocity is below the threshold defined in [member physics/jolt_physics_3d/"
"simulation/sleep_velocity_threshold] for the duration set in [member physics/"
"jolt_physics_3d/simulation/sleep_time_threshold]. This can improve physics "
"simulation performance when there are non-moving [RigidBody3D] nodes, at the "
"cost of some nodes possibly failing to wake up in certain scenarios. Consider "
"disabling this temporarily to troubleshoot [RigidBody3D] nodes not moving "
"when they should."
msgstr ""
"Si [code]true[/code], les nœuds [RigidBody3D] sont autorisés à s'endormir si "
"leur vitesse est inférieure au seuil défini dans [member physics/"
"jolt_physics_3d/simulation/sleep_velocity_threshold] pour la durée définie "
"dans [member physics/jolt_physics_3d/simulation/sleep_time_threshold]. Cela "
"peut améliorer les performances de simulation physique lorsqu'il y a des "
"nœuds [RigidBody3D] à l'arrêt, au coût de certains nœuds qui peuvent ne pas "
"se réveiller dans certains scénarios. Envisagez de désactiver temporairement "
"ceci pour dépanner des nœuds [RigidBody3D] qui ne bougent pas quand ils le "
"devraient."

msgid ""
"How much of the position error of a [RigidBody3D] to fix during a physics "
"step, where [code]0.0[/code] is none and [code]1.0[/code] is the full amount. "
"This affects things like how quickly bodies depenetrate.\n"
"[b]Note:[/b] Setting this value too high can make [RigidBody3D] nodes "
"unstable."
msgstr ""
"De combien corriger l'erreur de position d'un [RigidBody3D] lors d'une étape "
"de physique, où [code]0.0[/code] est de rien et [code]1.0[/code] est la "
"quantité complète. Cela affecte des choses comme la vitesse de dépénetération "
"des corps.\n"
"[b]Note :[/b] Définir cette valeur trop haut peut rendre des nœuds "
"[RigidBody3D] instables."

msgid ""
"The maximum relative angle by which a body pair can move and still reuse the "
"collision results from the previous physics step, in radians."
msgstr ""
"L'angle relatif maximal duquel une paire de corps peut se déplacer et "
"réutiliser encore les résultats de collision de l'étape physique précédente, "
"en radians."

msgid ""
"The maximum relative distance by which a body pair can move and still reuse "
"the collision results from the previous physics step, in meters."
msgstr ""
"La distance relative maximale dont laquelle une paire de corps peut se "
"déplacer et réutiliser encore les résultats de collision de l'étape physique "
"précédente, en mètres."

msgid ""
"If [code]true[/code], enables the body pair contact cache, which removes the "
"need for potentially expensive collision detection when the relative "
"orientation between two bodies hasn't changed much."
msgstr ""
"Si [code]true[/code], active le cache de contact de paire de corps, qui "
"supprime le besoin de détection de collision potentiellement coûteuse lorsque "
"l'orientation relative entre deux corps n'a pas beaucoup changé."

msgid ""
"The minimum velocity needed before a collision can be bouncy, in meters per "
"second."
msgstr ""
"La vitesse minimale nécessaire avant qu'une collision peut être "
"rebondissante, en mètres par seconde."

msgid ""
"Fraction of a body's inner radius that may penetrate another body while using "
"continuous collision detection."
msgstr ""
"Fraction du rayon intérieur d'un corps qui peut pénétrer un autre corps lors "
"de l'utilisation de la détection de collision continue."

msgid ""
"Fraction of a body's inner radius that the body must move per step to make "
"use of continuous collision detection."
msgstr ""
"Fraction du rayon intérieur d'un corps dont un corps doit se déplacer par pas "
"pour utiliser la détection de collision continue."

msgid ""
"If [code]true[/code], a [RigidBody3D] frozen with [constant "
"RigidBody3D.FREEZE_MODE_KINEMATIC] is able to collide with other kinematic "
"and static bodies, and therefore generate contacts for them.\n"
"[b]Note:[/b] This setting can come at a heavy CPU and memory cost if you "
"allow many/large frozen kinematic bodies with a non-zero [member "
"RigidBody3D.max_contacts_reported] to overlap with complex static geometry, "
"such as [ConcavePolygonShape3D] or [HeightMapShape3D]."
msgstr ""
"Si [code]true[/code], un [RigidBody3D] gelé avec [constant "
"RigidBody3D.FREEZE_MODE_KINEMATIC] est capable d'entrer en collision avec "
"d'autres corps cinématiques et statiques, et donc de générer des contacts "
"pour eux.\n"
"[b]Note :[/b] Ce paramètre peut venir avec un coût CPU et de mémoire élevés "
"si vous autorisez de nombreux/grands corps cinématiques gelés avec un [member "
"RigidBody3D.max_contacts_reported] non nul à se chevaucher avec une géométrie "
"statique complexe, comme [ConcavePolygonShape3D] ou [HeightMapShape3D]."

msgid "How much bodies are allowed to penetrate each other, in meters."
msgstr "De combien de corps sont autorisés se à pénétrer entre eux, en mètres."

msgid ""
"Number of solver position iterations. The greater the number of iterations, "
"the more accurate the simulation will be, at the cost of CPU performance."
msgstr ""
"Nombre d'itérations de position du solveur. Plus le nombre d'itérations est "
"élevé, plus la simulation sera précise, au coût des performances du "
"processeur."

msgid ""
"Time in seconds a [RigidBody3D] will spend below the sleep velocity threshold "
"before going to sleep."
msgstr ""
"Temps en secondes qu'un [RigidBody3D] passera sous le seuil de vitesse du "
"sommeil avant d'être endormi."

msgid ""
"The linear velocity of specific points on the bounding box of a "
"[RigidBody3D], below which it can be put to sleep, in meters per second. "
"These points help capture both the linear and angular motion of a "
"[RigidBody3D]."
msgstr ""
"La vitesse linéaire des points spécifiques sur la boîte délimitante d'un "
"[RigidBody3D], en dessous duquel il peut être endormi, en mètres par seconde. "
"Ces points permettent de capturer à la fois le mouvement linéaire et "
"angulaire d'un [RigidBody3D]."

msgid ""
"Radius around physics bodies, inside which speculative contact points will be "
"detected, in meters. This is mainly used to prevent tunneling/penetration for "
"[RigidBody3D] nodes during simulation.\n"
"[b]Note:[/b] Setting this too high may result in ghost collisions, as "
"speculative contacts are based on the closest points during the collision "
"detection step which may not be the actual closest points by the time the two "
"bodies hit."
msgstr ""
"Rayon autour des corps physiques, à l'intérieur duquel des points de contact "
"spéculatifs seront détectés, en mètres. Ceci est principalement utilisé pour "
"prévenir le tunneling et les pénétrations pour les nœuds [RigidBody3D] lors "
"de la simulation.\n"
"[b]Note :[/b] Définir ceci trop haut peut entraîner des collisions fantômes, "
"car les contacts spéculatifs sont basés sur les points les plus proches "
"pendant l'étape de détection de collision qui ne sont peut-être pas les "
"points les plus proches au moment où les deux corps se touchent."

msgid ""
"If [code]true[/code], enables Jolt's enhanced internal edge removal for "
"[RigidBody3D]. This can help alleviate ghost collisions when, for example, a "
"[RigidBody3D] collides with the edges of two perfectly joined [BoxShape3D]. "
"The removal only applies to edges internal to a single body, meaning edges "
"between separate bodies can still cause ghost collisions."
msgstr ""
"Si [code]true[/code], active la suppression des arrêtes internes améliorée de "
"Jolt lors les [RigidBody3D]. Cela peut aider à atténuer les collisions "
"fantômes lorsque, par exemple, un [RigidBody3D] se heurte aux arrêtes de deux "
"[BoxShape3D] parfaitement joints. La suppression ne s'applique qu'aux arrêtes "
"internes à un seul corps, ce qui signifie que les arrêtes entre des corps "
"séparés peuvent encore causer des collisions fantômes."

msgid ""
"Number of solver velocity iterations. The greater the number of iterations, "
"the more accurate the simulation will be, at the cost of CPU performance.\n"
"[b]Note:[/b] This needs to be at least [code]2[/code] in order for friction "
"to work, as friction is applied using the non-penetration impulse from the "
"previous iteration."
msgstr ""
"Nombre d'itérations de vitesse du solveur. Plus le nombre d'itérations est "
"élevé, plus la simulation sera précise, au coût des performances du "
"processeur.\n"
"[b]Note :[/b] Cela doit être d'au moins [code]2[/code] afin que la friction "
"fonctionne, car la friction est appliquée à l'aide de l'impulsion de non-"
"pénétration de l'itération précédente."

msgid ""
"Maximum number of canvas item commands that can be batched into a single draw "
"call."
msgstr ""
"Nombre maximal de commandes d'éléments de canevas qui peuvent être groupées "
"en un seul draw call."

msgid ""
"The size of the 2D shadow atlas in pixels. Higher values result in more "
"precise [Light2D] shadows, at the cost of performance and video memory usage. "
"The specified value is rounded up to the nearest power of 2.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the 2D shadow atlas size at runtime, use [method "
"RenderingServer.canvas_set_shadow_texture_size] instead."
msgstr ""
"La taille de l'atlas des ombres 2D en pixels. Des valeurs plus élevées "
"résultent en des ombres de [Light2D] plus précises, au coût de la performance "
"et de l'utilisation de la mémoire vidéo. La valeur spécifiée est arrondie à "
"la puissance de 2 la plus proche.\n"
"[b]Note :[/b] Cette propriété n'est lue que lorsque le projet démarre. Pour "
"modifier la taille de l'atlas des ombres 2D durant l'exécution, utilisez "
"[method RenderingServer.canvas_set_shadow_texture_size] à la place."

msgid ""
"If [code]true[/code], [CanvasItem] nodes will internally snap to full pixels. "
"Useful for low-resolution pixel art games. Their position can still be sub-"
"pixel, but the decimals will not have effect as the position is rounded. This "
"can lead to a crisper appearance at the cost of less smooth movement, "
"especially when [Camera2D] smoothing is enabled.\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle 2D "
"transform snapping at runtime, use [method "
"RenderingServer.viewport_set_snap_2d_transforms_to_pixel] on the root "
"[Viewport] instead.\n"
"[b]Note:[/b] [Control] nodes are snapped to the nearest pixel by default. "
"This is controlled by [member gui/common/snap_controls_to_pixels].\n"
"[b]Note:[/b] It is not recommended to use this setting together with [member "
"rendering/2d/snap/snap_2d_vertices_to_pixel], as movement may appear even "
"less smooth. Prefer only enabling this setting instead."
msgstr ""
"Si [code]true[/code], les nœuds [CanvasItem] s’aimanteront en interne à des "
"pixels complets. Utile pour les jeux pixel art basse résolution. Leur "
"position peut encore être en sous-pixel, mais les décimales n'auront pas "
"d'effet puisque la position est arrondie. Cela peut conduire à un aspect plus "
"net au coût d'un mouvement moins lisse, surtout lorsque le lissage de la "
"[Camera2D] est activé.\n"
"[b]Note :[/b] Cette propriété n'est lue que lorsque le projet démarre. Pour "
"activer/désactiver l’aimantation des transformations durant l'exécution, "
"utilisez [method RenderingServer.viewport_set_snap_2d_transforms_to_pixel] "
"sur le [Viewport] racine à la place.\n"
"[b]Note :[/b] Les nœuds [Control] sont aimantés par défaut sur le pixel le "
"plus proche. Ceci est contrôlé par [member gui/common/"
"snap_controls_to_pixels].\n"
"[b]Note :[/b] Il n'est pas recommandé d'utiliser ce paramètre avec [member "
"rendering/2d/snap/snap_2d_vertices_to_pixel], car le mouvement peut paraître "
"encore moins lisse. Préférez activer seulement ce paramètre à la place."

msgid ""
"If [code]true[/code], vertices of [CanvasItem] nodes will snap to full "
"pixels. Useful for low-resolution pixel art games. Only affects the final "
"vertex positions, not the transforms. This can lead to a crisper appearance "
"at the cost of less smooth movement, especially when [Camera2D] smoothing is "
"enabled.\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle 2D "
"vertex snapping at runtime, use [method "
"RenderingServer.viewport_set_snap_2d_vertices_to_pixel] on the root "
"[Viewport] instead.\n"
"[b]Note:[/b] [Control] nodes are snapped to the nearest pixel by default. "
"This is controlled by [member gui/common/snap_controls_to_pixels].\n"
"[b]Note:[/b] It is not recommended to use this setting together with [member "
"rendering/2d/snap/snap_2d_transforms_to_pixel], as movement may appear even "
"less smooth. Prefer only enabling that setting instead."
msgstr ""
"Si [code]true[/code], les sommets des nœuds [CanvasItem] s’aimanteront en "
"interne à des pixels complets. Utile pour les jeux pixel art basse "
"résolution. Affecte seulement les positions de sommet finales, pas leurs "
"transformations. Cela peut conduire à un aspect plus net au coût d'un "
"mouvement moins lisse, surtout lorsque le lissage de la [Camera2D] est "
"activé.\n"
"[b]Note :[/b] Cette propriété n'est lue que lorsque le projet démarre. Pour "
"activer/désactiver l’aimantation des sommets durant l'exécution, utilisez "
"[method RenderingServer.viewport_set_snap_2d_vertices_to_pixel] sur le "
"[Viewport] racine à la place.\n"
"[b]Note :[/b] Les nœuds [Control] sont aimantés par défaut sur le pixel le "
"plus proche. Ceci est contrôlé par [member gui/common/"
"snap_controls_to_pixels].\n"
"[b]Note :[/b] Il n'est pas recommandé d'utiliser ce paramètre avec [member "
"rendering/2d/snap/snap_2d_transforms_to_pixel], car le mouvement peut "
"paraître encore moins lisse. Préférez activer seulement ce paramètre à la "
"place."

msgid ""
"Sets the number of multisample antialiasing (MSAA) samples to use for 2D/"
"Canvas rendering (as a power of two). MSAA is used to reduce aliasing around "
"the edges of polygons. A higher MSAA value results in smoother edges but can "
"be significantly slower on some hardware, especially integrated graphics due "
"to their limited memory bandwidth. This has no effect on shader-induced "
"aliasing or texture aliasing.\n"
"[b]Note:[/b] MSAA is only supported in the Forward+ and Mobile rendering "
"methods, not Compatibility.\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"number of 2D MSAA samples at runtime, set [member Viewport.msaa_2d] or use "
"[method RenderingServer.viewport_set_msaa_2d]."
msgstr ""
"Définit le nombre d'échantillons de l'anticrénelage multi-échantillions "
"(MSAA) à utiliser pour le rendu 2D ou de canevas (en une puissance de deux). "
"Le MSAA est utilisé pour réduire le crénelage autour des bords des polygones. "
"Une valeur de MSAA plus élevée se traduit par des bords plus lisses mais peut "
"être nettement plus lent sur certains matériels, en particulier les "
"graphiques intégrés en raison de leur bande passante de mémoire limitée. Cela "
"n'a aucun effet sur le crénelage de texture ou le crénelage introduit par des "
"shaders.\n"
"[b]Note :[/b] Le MSAA n'est supporté que dans les moteurs de rendu Forward+ "
"et Mobile, pas Compatibilité.\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre . "
"Pour définir le nombre d'échantillons 2D MSAA durant l’exécution, définissez "
"[member Viewport.msaa_2d] ou utilisez [method "
"RenderingServer.viewport_set_msaa_2d]."

msgid ""
"Sets the number of multisample antialiasing (MSAA) samples to use for 3D "
"rendering (as a power of two). MSAA is used to reduce aliasing around the "
"edges of polygons. A higher MSAA value results in smoother edges but can be "
"significantly slower on some hardware, especially integrated graphics due to "
"their limited memory bandwidth. See also [member rendering/scaling_3d/mode] "
"for supersampling, which provides higher quality but is much more expensive. "
"This has no effect on shader-induced aliasing or texture aliasing.\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"number of 3D MSAA samples at runtime, set [member Viewport.msaa_3d] or use "
"[method RenderingServer.viewport_set_msaa_3d]."
msgstr ""
"Définit le nombre d'échantillons de l'anticrénelage multi-échantillions "
"(MSAA) à utiliser pour le rendu 3D (en une puissance de deux). Le MSAA est "
"utilisé pour réduire le crénelage autour des bords des polygones. Une valeur "
"de MSAA plus élevée se traduit par des bords plus lisses mais peut être "
"nettement plus lent sur certains matériels, en particulier les graphiques "
"intégrés en raison de leur bande passante de mémoire limitée. Voir aussi "
"[member rendering/scaling_3d/mode] pour le sur-échantillonnage, qui fournit "
"une qualité supérieure mais est beaucoup plus cher. Cela n'a aucun effet sur "
"le crénelage de texture ou le crénelage introduit par des shaders.\n"
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre . "
"Pour définir le nombre d'échantillons 3D MSAA durant l’exécution, définissez "
"[member Viewport.msaa_3d] ou utilisez [method "
"RenderingServer.viewport_set_msaa_3d]."

msgid ""
"[b]Note:[/b] This property is only read when the project starts. To control "
"the screen-space roughness limiter at runtime, call [method "
"RenderingServer.screen_space_roughness_limiter_set_active] instead."
msgstr ""
"[b]Note :[/b] Cette propriété est seulement lue lorsque le projet démarre. "
"Pour contrôler le limiteur de rugosité dans l'espace-écran durant "
"l'exécution, appelez plutôt [method "
"RenderingServer.screen_space_roughness_limiter_set_active]."

msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
"Définit la qualité de l'effet de profondeur de champ. Une qualité plus élevée "
"prend plus d'échantillons, ce qui est plus lent mais a un aspect plus lisse."

msgid ""
"Disables [member rendering/driver/depth_prepass/enable] conditionally for "
"certain vendors. By default, disables the depth prepass for mobile devices as "
"mobile devices do not benefit from the depth prepass due to their unique "
"architecture."
msgstr ""
"Désactive [member rendering/driver/depth_prepass/enable] conditionnellement "
"pour certains fournisseurs. Par défaut, désactive la pré-passe de profondeur "
"pour les appareils mobiles car les appareils mobiles ne bénéficient pas de la "
"pré-passe de profondeur en raison de leur architecture unique."

msgid ""
"The thread model to use for rendering. Rendering on a thread may improve "
"performance, but synchronizing to the main thread can cause a bit more jitter."
msgstr ""
"Le modèle de thread à utiliser pour le rendu. Le rendu sur un thread peut "
"améliorer les performances, mais la synchronisation avec le thread principal "
"peut causer un taux de rafraîchissement un peu plus instable."

msgid ""
"Lower-end override for [member rendering/environment/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/environment/glow/"
"upscale_mode] sur les appareils mobiles, en raison de problèmes de "
"performance ou de support des pilotes."

msgid ""
"Distance at which the screen-space ambient occlusion effect starts to fade "
"out. Use this hide ambient occlusion from far away."
msgstr ""
"Distance à laquelle l'occlusion ambiante dans l'espace-écran commence à "
"disparaître. Utilisez ceci pour cacher l'occlusion ambiante de loin."

msgid ""
"Distance at which the screen-space ambient occlusion is fully faded out. Use "
"this hide ambient occlusion from far away."
msgstr ""
"Distance à laquelle l'occlusion ambiante dans l'espace-écran a complètement "
"disparu. Utilisez ceci pour cacher l'occlusion ambiante de loin."

msgid ""
"Distance at which the screen-space indirect lighting effect starts to fade "
"out. Use this to hide screen-space indirect lighting from far away."
msgstr ""
"Distance à laquelle l'éclairage indirect dans l'espace-écran commence à "
"disparaître. Utilisez ceci pour cacher l'éclairage indirect dans l'espace-"
"écran de loin."

msgid ""
"Distance at which the screen-space indirect lighting is fully faded out. Use "
"this to hide screen-space indirect lighting from far away."
msgstr ""
"Distance à laquelle l'éclairage indirect dans l'espace-écran a complètement "
"disparu. Utilisez ceci pour cacher l'éclairage indirect dans l'espace-écran "
"de loin."

msgid ""
"Android override for [member rendering/gl_compatibility/driver].\n"
"Only one option is supported:\n"
"- [code]opengl3[/code], OpenGL ES 3.0 from native drivers."
msgstr ""
"Redéfinition Android pour [member rendering/gl_compatibility/driver].\n"
"Une seule option est supportée :\n"
"- [code]opengl3[/code], OpenGL ES 3.0 des pilotes natifs."

msgid ""
"iOS override for [member rendering/gl_compatibility/driver].\n"
"Only one option is supported:\n"
"- [code]opengl3[/code], OpenGL ES 3.0 from native drivers."
msgstr ""
"Redéfinition iOS pour [member rendering/gl_compatibility/driver].\n"
"Une seule option est supportée :\n"
"- [code]opengl3[/code], OpenGL ES 3.0 des pilotes natifs."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_HIGH]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul d'éclairage d'objet "
"dynamique dans les [LightmapProbe]s lorsque [member LightmapGI.quality] vaut "
"[constant LightmapGI.BAKE_QUALITY_HIGH]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_HIGH]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul des lightmaps avec "
"[LightmapGI] quand [member LightmapGI.quality] vaut [constant "
"LightmapGI.BAKE_QUALITY_HIGH]."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_LOW]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul d'éclairage d'objet "
"dynamique dans les [LightmapProbe]s lorsque [member LightmapGI.quality] vaut "
"[constant LightmapGI.BAKE_QUALITY_LOW]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_LOW]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul des lightmaps avec "
"[LightmapGI] quand [member LightmapGI.quality] vaut [constant "
"LightmapGI.BAKE_QUALITY_LOW]."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_MEDIUM]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul d'éclairage d'objet "
"dynamique dans les [LightmapProbe]s lorsque [member LightmapGI.quality] vaut "
"[constant LightmapGI.BAKE_QUALITY_MEDIUM]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_MEDIUM]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul des lightmaps avec "
"[LightmapGI] quand [member LightmapGI.quality] vaut [constant "
"LightmapGI.BAKE_QUALITY_MEDIUM]."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_ULTRA]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul d'éclairage d'objet "
"dynamique dans les [LightmapProbe]s lorsque [member LightmapGI.quality] vaut "
"[constant LightmapGI.BAKE_QUALITY_ULTRA]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_ULTRA]."
msgstr ""
"Le nombre de rayons à utiliser pour le pré-calcul des lightmaps avec "
"[LightmapGI] quand [member LightmapGI.quality] vaut [constant "
"LightmapGI.BAKE_QUALITY_ULTRA]."

msgid ""
"The texel_size that is used to calculate the [member Mesh.lightmap_size_hint] "
"on [PrimitiveMesh] resources if [member PrimitiveMesh.add_uv2] is enabled."
msgstr ""
"Le texel_size qui est utilisé pour calculer le [member "
"Mesh.lightmap_size_hint] sur les ressources [PrimitiveMesh] si [member "
"PrimitiveMesh.add_uv2] est activé."

msgid ""
"The directional shadow's size in pixels. Higher values will result in sharper "
"shadows, at the cost of performance. The value is rounded up to the nearest "
"power of 2."
msgstr ""
"La taille de l'ombre directionnelle en pixels. Des valeurs plus élevées "
"entraîneront des ombres plus nettes, au coût de la performance. La valeur est "
"arrondie à la puissance de 2 la plus proche."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/"
"directional_shadow/size] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/lights_and_shadows/"
"directional_shadow/size] sur les appareils mobiles, en raison de problèmes de "
"performance ou de support des pilotes."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/"
"directional_shadow/soft_shadow_filter_quality] on mobile devices, due to "
"performance concerns or driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/lights_and_shadows/"
"directional_shadow/soft_shadow_filter_quality] sur les appareils mobiles, en "
"raison de problèmes de performance ou de support des pilotes."

msgid ""
"The subdivision amount of the first quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"La quantité de subdivision du premier quadrant sur l'atlas des ombres. Voir "
"la [url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] pour plus d'informations."

msgid ""
"The subdivision amount of the second quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"La quantité de subdivision du deuxième quadrant sur l'atlas des ombres. Voir "
"la [url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] pour plus d'informations."

msgid ""
"The subdivision amount of the third quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"La quantité de subdivision du troisième quadrant sur l'atlas des ombres. Voir "
"la [url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] pour plus d'informations."

msgid ""
"The subdivision amount of the fourth quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"La quantité de subdivision du quatrième quadrant sur l'atlas des ombres. Voir "
"la [url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] pour plus d'informations."

msgid ""
"The size of the shadow atlas used for [OmniLight3D] and [SpotLight3D] nodes. "
"See the [url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"La taille de l'atlas des ombres utilisé pour les nœuds [OmniLight3D] et "
"[SpotLight3D] . Voir la [url=$DOCS_URL/tutorials/tutorials/3d/"
"lights_and_shadows.html#shadow-atlas]documentation[/url] pour plus "
"d'informations."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/positional_shadow/"
"atlas_size] on mobile devices, due to performance concerns or driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/lights_and_shadows/"
"positional_shadow/atlas_size] sur les appareils mobiles, en raison de "
"problèmes de performance ou de support des pilotes."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/positional_shadow/"
"soft_shadow_filter_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/lights_and_shadows/"
"positional_shadow/soft_shadow_filter_quality] sur les appareils mobiles, en "
"raison de problèmes de performance ou de support des pilotes."

msgid ""
"If [code]true[/code], items that cannot cast shadows into the view frustum "
"will not be rendered into shadow maps.\n"
"This can increase performance."
msgstr ""
"Si [code]true[/code], les éléments qui ne peuvent pas projeter d'ombres dans "
"la vue du frustum ne seront pas rendus dans les shadow maps.\n"
"Cela peut augmenter les performances."

msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
"Taille des faces de la cubemap pour les [ReflectionProbe]s. Un nombre plus "
"élevé nécessite plus de VRAM et peut rendre la mise à jour de sonde de "
"réflexion plus lente."

msgid ""
"Lower-end override for [member rendering/reflections/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/reflections/reflection_atlas/"
"reflection_size] sur les appareils mobiles, en raison de problèmes de "
"performance ou de support des pilotes."

msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
"Utilise une variante de qualité supérieure de l'algorithme de filtrage "
"rapide. Significativement plus lent que l'utilisation de la qualité par "
"défaut, mais entraîne des réflexions plus lisses. Ne devrait être utilisé que "
"lorsque la scène est particulièrement détaillée."

msgid ""
"Lower-end override for [member rendering/reflections/sky_reflections/"
"ggx_samples] on mobile devices, due to performance concerns or driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/reflections/sky_reflections/"
"ggx_samples] sur les appareils mobiles, en raison de problèmes de performance "
"ou de support des pilotes."

msgid ""
"Lower-end override for [member rendering/reflections/sky_reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/reflections/sky_reflections/"
"texture_array_reflections] sur les appareils mobiles, en raison de problèmes "
"de performance ou de support des pilotes."

msgid "If [code]true[/code], reduces reflections based on ambient light."
msgstr ""
"Si [code]true[/code], réduit les réflexions basées sur la lumière ambiante."

msgid ""
"Override for [member rendering/renderer/rendering_method] on mobile devices."
msgstr ""
"Redéfinition pour [member rendering/renderer/rendering_method] sur les "
"appareils mobiles."

msgid "Override for [member rendering/renderer/rendering_method] on web."
msgstr ""
"Redéfinition pour [member rendering/renderer/rendering_method] sur le web."

msgid ""
"Android override for [member rendering/rendering_device/driver].\n"
"Only one option is supported:\n"
"- [code]vulkan[/code], Vulkan from native drivers.\n"
"[b]Note:[/b] If Vulkan was disabled at compile time, there is no alternative "
"RenderingDevice driver."
msgstr ""
"Redéfinition Android pour [member rendering/rendering_device/driver].\n"
"Une seule option est supportée :\n"
"- [code]vulkan[/code] Vulkan depuis les pilotes natifs.\n"
"[b]Note :[/b] Si Vulkan était désactivé au moment de la compilation, il n'y a "
"pas d'autre pilote RenderingDevice."

msgid ""
"iOS override for [member rendering/rendering_device/driver].\n"
"Two options are supported:\n"
"- [code]metal[/code] (default), Metal from native drivers.\n"
"- [code]vulkan[/code], Vulkan over Metal via MoltenVK."
msgstr ""
"Redéfinition iOS pour [member rendering/rendering_device/driver].\n"
"Deux options sont supportées :\n"
"- [code]metal[/code] (par défaut), Metal depuis les pilotes natifs.\n"
"- [code]vulkan[/code], Vulkan avec Metal via MoltenVK."

msgid ""
"LinuxBSD override for [member rendering/rendering_device/driver].\n"
"Only one option is supported:\n"
"- [code]vulkan[/code], Vulkan from native drivers.\n"
"[b]Note:[/b] If Vulkan was disabled at compile time, there is no alternative "
"RenderingDevice driver."
msgstr ""
"Redéfinition LinuxBSD pour [member rendering/rendering_device/driver].\n"
"Une seule option est supportée :\n"
"- [code]vulkan[/code] Vulkan depuis les pilotes natifs.\n"
"[b]Note :[/b] Si Vulkan était désactivé au moment de la compilation, il n'y a "
"pas d'autre pilote RenderingDevice."

msgid ""
"macOS override for [member rendering/rendering_device/driver].\n"
"Two options are supported:\n"
"- [code]metal[/code] (default), Metal from native drivers, only supported on "
"Apple Silicon Macs. On Intel Macs, it will automatically fall back to "
"[code]vulkan[/code] as Metal support is not implemented.\n"
"- [code]vulkan[/code], Vulkan over Metal via MoltenVK, supported on both "
"Apple Silicon and Intel Macs."
msgstr ""
"Redéfinition macOS pour [member rendering/rendering_device/driver].\n"
"Deux options sont supportées :\n"
"- [code]metal[/code] (par défaut), Metal depuis les pilotes natifs, supporté "
"seulement sur les Macs Apple Silicon. Sur les Macs Intel, se repliera "
"automatiquement sur [code]vulkan[/code] car le support de Metal n'est pas "
"implémenté.\n"
"- [code]vulkan[/code], Vulkan avec Metal via MoltenVK, supporté sur les Macs "
"Apple Silicon et Intel."

msgid ""
"visionOS override for [member rendering/rendering_device/driver].\n"
"Only one option is supported:\n"
"- [code]metal[/code] (default), Metal from native drivers."
msgstr ""
"Redéfinition visionOS pour [member rendering/rendering_device/driver].\n"
"Une seule option est supportée :\n"
"- [code]metal[/code] (par défaut), Metal depuis les drivers natifs."

msgid ""
"Windows override for [member rendering/rendering_device/driver].\n"
"Two options are supported:\n"
"- [code]vulkan[/code] (default), Vulkan from native drivers. If [member "
"rendering/rendering_device/fallback_to_vulkan] is enabled, this is used as a "
"fallback if Direct3D 12 is not supported.\n"
"- [code]d3d12[/code], Direct3D 12 from native drivers. If [member rendering/"
"rendering_device/fallback_to_d3d12] is enabled, this is used as a fallback if "
"Vulkan is not supported."
msgstr ""
"Redéfinition Windows pour [member rendering/rendering_device/driver].\n"
"Deux options sont supportées :\n"
"- [code]vulkan[/code] (par défaut), Vulkan depuis les pilotes natifs. Si "
"[member rendering/rendering_device/fallback_to_vulkan] est activé, cela est "
"utilisé comme un repli si Direct3D 12 n'est pas supporté.\n"
"- [code]d3d12[/code], Direct3D 12 depuis les pilotes natifs. Si [member "
"rendering/rendering_device/fallback_to_d3d12] est activé, cela est utilisé "
"comme un repli si Vulkan n'est pas supporté."

msgid ""
"If [code]true[/code], the forward renderer will fall back to Direct3D 12 if "
"Vulkan is not supported. The fallback is always attempted regardless of this "
"setting if Vulkan driver support was disabled at compile time.\n"
"[b]Note:[/b] This setting is implemented only on Windows."
msgstr ""
"Si [code]true[/code], le moteur de rendu forward va se replier sur Direct3D "
"12 si Vulkan n'est pas supporté. Le repli est toujours tenté indépendamment "
"de ce paramètre si le support du pilote Vulkan était désactivé au moment de "
"la compilation.\n"
"[b]Note :[/b] Ce paramètre n'est implémenté que sur Windows."

msgid ""
"If [code]true[/code], the forward renderer will fall back to OpenGL 3 if "
"Direct3D 12, Metal, and Vulkan are not supported.\n"
"[b]Note:[/b] This setting is implemented on Windows, Android, macOS, iOS, and "
"Linux/X11."
msgstr ""
"Si [code]true[/code], le moteur de rendu forward va se replier sur OpenGL 3 "
"si Direct3D 12, Metal et Vulkan ne sont pas supportés.\n"
"[b]Note :[/b] Ce paramètre est implémenté sur Windows, Android, macOS, iOS, "
"et Linux/X11."

msgid ""
"If [code]true[/code], the forward renderer will fall back to Vulkan if "
"Direct3D 12 (on Windows) or Metal (on macOS x86_64) are not supported. The "
"fallback is always attempted regardless of this setting if Direct3D 12 "
"(Windows) or Metal (macOS) driver support was disabled at compile time.\n"
"[b]Note:[/b] This setting is implemented on Windows and macOS."
msgstr ""
"Si [code]true[/code], le moteur de rendu forward va se replier sur Vulkan si "
"Direct3D 12 (sur Windows) ou Metal (sur macOS x86_64) n'est pas supporté. Le "
"repli est toujours tenté indépendamment de ce paramètre si le support du "
"pilote Direct3D 12 (Windows) ou Metal (macOS) était désactivé au moment de la "
"compilation.\n"
"[b]Note :[/b] Ce paramètre est implémenté sur Windows et macOS."

msgid ""
"Determines at which interval pipeline cache is saved to disk. The lower the "
"value, the more often it is saved."
msgstr ""
"Détermine à quel intervalle le cache de la pipeline est sauvegardé sur le "
"disque. Plus la valeur est faible, plus il est souvent sauvegardé."

msgid ""
"The number of images the swapchain will consist of (back buffers + front "
"buffer).\n"
"[code]2[/code] corresponds to double-buffering and [code]3[/code] to triple-"
"buffering.\n"
"Double-buffering may give you the lowest lag/latency but if V-Sync is on and "
"the system can't render at 60 fps, the framerate will go down in multiples of "
"it (e.g. 30 fps, 15, 7.5, etc.). Triple buffering gives you higher framerate "
"(specially if the system can't reach a constant 60 fps) at the cost of up to "
"1 frame of latency, with [constant DisplayServer.VSYNC_ENABLED] (FIFO).\n"
"Use double-buffering with [constant DisplayServer.VSYNC_ENABLED]. Triple-"
"buffering is a must if you plan on using [constant "
"DisplayServer.VSYNC_MAILBOX] mode.\n"
"Try the [url=https://darksylinc.github.io/vsync_simulator/]V-Sync Simulator[/"
"url], an interactive interface that simulates presentation to better "
"understand how it is affected by different variables under various "
"conditions.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this value at run-time.\n"
"[b]Note:[/b] Some platforms may restrict the actual value."
msgstr ""
"Le nombre d'images dont la swapchain sera composée (buffer arrière + buffer "
"avant).\n"
"[code]2[/code] correspond au double-buffering et [code]3[/code] au triple-"
"buffering.\n"
"Le double-buffering peut vous donner le plus bas lag/latence mais si la "
"synchronisation verticale (V-Sync) est activée et que le système ne peut pas "
"rendre à 60 fps, le taux de rafraîchissement descendra en multiples de celui-"
"ci (par exemple 30 fps, 15, 7.5, etc.). Le triple buffering vous donnera un "
"taux de rafraîchissement plus élevé (surtout si le système ne peut pas "
"atteindre un 60 fps constant) au coût de jusqu'à 1 trame de latence, avec "
"[constant DisplayServer.VSYNC_ENABLED] (FIFO : First In First Out, litt. "
"Premier Entré Premier Sorti).\n"
"Utilisez le double-buffering avec [constant DisplayServer.VSYNC_ENABLED]. Le "
"triple-buffering est nécessaire si vous prévoyez d'utiliser le mode [constant "
"DisplayServer.VSYNC_MAILBOX]\n"
"Essayez le [url=https://darksylinc.github.io/vsync_simulator/]simulateur de v-"
"sync[/url], une interface interactive qui simule une présentation pour mieux "
"comprendre comment elle est affectée par les différentes variables sous "
"différentes conditions.\n"
"[b]Note: [/b] Cette propriété est seulement lue lorsque le projet démarre. Il "
"n'y a actuellement aucun moyen de changer cette valeur durant l'exécution.\n"
"[b]Note :[/b] Certaines plateformes peuvent restreindre la valeur réelle."

msgid ""
"Enable the shader cache, which stores compiled shaders to disk to prevent "
"stuttering from shader compilation the next time the shader is needed."
msgstr ""
"Activer le cache de shaders, qui stocke les shaders compilés sur le disque "
"pour empêcher les micro-freezes dus à la compilation du shader la prochaine "
"fois que le shader est appelé."

msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material lighting "
"model instead of Burley."
msgstr ""
"Si [code]true[/code], utilise le modèle d'éclairage de matériaux Lambert plus "
"rapide mais de qualité inférieure au modèle Burley."

msgid ""
"Lower-end override for [member rendering/shading/overrides/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Redéfinition bas de gamme pour [member rendering/shading/overrides/"
"force_lambert_over_burley] sur les appareils mobiles, en raison de problèmes "
"de performance ou de support des pilotes."

msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
"Si [code]true[/code], force l'ombrage des sommets pour tout le rendu. Cela "
"peut augmenter beaucoup de performance, mais également réduit énormément la "
"qualité. Peut être utilisé pour optimiser les performances sur les appareils "
"mobiles bas de gamme."

msgid ""
"Specify the compression level for Basis Universal Zstandard supercompression, "
"ranging from [code]1[/code] to [code]22[/code]."
msgstr ""
"Précise le niveau de compression pour la super-compression Basis Universal "
"Zstandard, allant de [code]1[/code] à [code]22[/code]."

msgid ""
"The default texture repeating mode to use for [CanvasItem]s built-in texture. "
"In shaders, this texture is accessed as [code]TEXTURE[/code]."
msgstr ""
"Le mode de répétition de texture par défaut à utiliser pour les textures "
"intégrées des [CanvasItem]s. Dans les shaders, cette texture est accédée avec "
"[code]TEXTURE[/code]."

msgid ""
"The filtering quality to use for [Decal] nodes. When using one of the "
"anisotropic filtering modes, the anisotropic filtering level is controlled by "
"[member rendering/textures/default_filters/anisotropic_filtering_level]."
msgstr ""
"La qualité de filtrage à utiliser pour les nœuds [Decal]. Lors de "
"l'utilisation de l'un des modes de filtrage anisotropes, le niveau de "
"filtrage anisotrope est contrôlé par [member rendering/textures/"
"default_filters/anisotropic_filtering_level]."

msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
"Si [code]true[/code], l'importateur de texture importera les textures sans "
"perte en utilisant le format PNG. Sinon, il va par défaut utiliser le format "
"WebP."

msgid ""
"The default compression factor for lossless WebP. Decompression speed is "
"mostly unaffected by the compression factor. Supported values are 0 to 100."
msgstr ""
"Le facteur de compression par défaut pour le WebP sans perte. La vitesse de "
"décompression est globalement non affectée par le facteur de compression. Les "
"valeurs supportées vont de 0 à 100."

msgid ""
"If [code]true[/code], enables the analog threshold binding modifier if "
"supported by the XR runtime."
msgstr ""
"Si [code]true[/code], active le modificateur de liaison de seuil analogique "
"s'il est supporté par le runtime XR."

msgid ""
"If [code]true[/code], enables the D-pad binding modifier if supported by the "
"XR runtime."
msgstr ""
"Si [code]true[/code], active le modificateur de liaison de croix "
"directionnelle s'il est supporté par le runtime XR."

msgid "Action map configuration to load by default."
msgstr "Configuration d'action map à charger par défaut."

msgid "If [code]true[/code], Godot will setup and initialize OpenXR on startup."
msgstr ""
"Si [code]true[/code], Godot configurera et initialisera OpenXR au démarrage."

msgid ""
"Specify whether to enable eye tracking for this project. Depending on the "
"platform, additional export configuration may be needed."
msgstr ""
"Précise s'il faut activer le suivi oculaire pour ce projet. Selon la "
"plateforme, une configuration d'exportation supplémentaire peut être "
"nécessaire."

msgid ""
"If [code]true[/code] the hand interaction profile extension will be activated "
"if supported by the platform."
msgstr ""
"Si [code]true[/code], l'extension du profil d'interaction de main sera "
"activée si elle est supportée par la plateforme."

msgid ""
"Specify whether OpenXR should be configured for an HMD or a hand held device."
msgstr ""
"Précise si OpenXR doit être configuré pour un HMD (visiocasque) ou un "
"appareil portable."

msgid ""
"If [code]true[/code] and foveation is supported, will automatically adjust "
"foveation level based on framerate up to the level set on [member xr/openxr/"
"foveation_level]."
msgstr ""
"Si [code]true[/code] et que le fovéation est supportée, ajustera "
"automatiquement le niveau de fovéation en fonction du taux de "
"rafraichissement jusqu'au niveau défini dans [member xr/openxr/"
"foveation_level]."

msgid "Specify the default reference space."
msgstr "Spécifie l'espace de référence par défaut."

msgid ""
"If [code]true[/code], Godot will display an alert modal when OpenXR "
"initialization fails on startup."
msgstr ""
"Si [code]true[/code], Godot affichera une alerte exclusive lorsque "
"l'initialisation OpenXR échoue au démarrage."

msgid ""
"Specify the view configuration with which to configure OpenXR setting up "
"either Mono or Stereo rendering."
msgstr ""
"Spécifie la configuration de la vue avec laquelle configurer OpenXR, soit en "
"rendu Mono ou en rendu Stéréo."

msgid "If [code]true[/code], Godot will compile shaders required for XR."
msgstr ""
"Si [code]true[/code], Godot va compiler les shaders nécessaires pour la XR."

msgid "Emitted when any setting is changed, up to once per process frame."
msgstr ""
"Émis lorsque tout réglage est modifié, jusqu'à une fois par trame de "
"traitement."

msgid "Interpolates an [Object]'s property over time."
msgstr "Interpole une propriété d'un [Object] dans le temps."

msgid ""
"Sets the time in seconds after which the [PropertyTweener] will start "
"interpolating. By default there's no delay."
msgstr ""
"Définit le délai en secondes avant que le [PropertyTweener] commence son "
"interpolation. Par défaut, il n'y a pas de délai."

msgid "2D in 3D Viewport Demo"
msgstr "Démo pour de la 2D dans un viewport 3D"

msgid "Flat plane shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Forme de plan plat à utiliser avec l'occlusion culling dans "
"[OccluderInstance3D]."

msgid ""
"[QuadOccluder3D] stores a flat plane shape that can be used by the engine's "
"occlusion culling system. See also [PolygonOccluder3D] if you need to "
"customize the quad's shape.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[QuadOccluder3D] stocke une forme de plan plat qui peut être utilisée par le "
"système d'occlusion culling du moteur. Voir aussi [PolygonOccluder3D] si vous "
"avez besoin de personnaliser la forme du quadrilatère.\n"
"Voir la documentation d'[OccluderInstance3D] pour les instructions sur la "
"mise en place de l'occlusion culling."

msgid "The quad's size in 3D units."
msgstr "La taille du quadrilatère en unités 3D."

msgid "A unit quaternion used for representing 3D rotations."
msgstr "Un quaternion unitaire utilisé pour représenter des rotations 3D."

msgid ""
"The [Quaternion] built-in [Variant] type is a 4D data structure that "
"represents rotation in the form of a [url=https://en.wikipedia.org/wiki/"
"Quaternions_and_spatial_rotation]Hamilton convention quaternion[/url]. "
"Compared to the [Basis] type which can store both rotation and scale, "
"quaternions can [i]only[/i] store rotation.\n"
"A [Quaternion] is composed by 4 floating-point components: [member w], "
"[member x], [member y], and [member z]. These components are very compact in "
"memory, and because of this some operations are more efficient and less "
"likely to cause floating-point errors. Methods such as [method get_angle], "
"[method get_axis], and [method slerp] are faster than their [Basis] "
"counterparts.\n"
"For a great introduction to quaternions, see [url=https://www.youtube.com/"
"watch?v=d4EgbgTm0Bg]this video by 3Blue1Brown[/url]. You do not need to know "
"the math behind quaternions, as Godot provides several helper methods that "
"handle it for you. These include [method slerp] and [method "
"spherical_cubic_interpolate], as well as the [code]*[/code] operator.\n"
"[b]Note:[/b] Quaternions must be normalized before being used for rotation "
"(see [method normalized]).\n"
"[b]Note:[/b] Similarly to [Vector2] and [Vector3], the components of a "
"quaternion use 32-bit precision by default, unlike [float] which is always 64-"
"bit. If double precision is needed, compile the engine with the option "
"[code]precision=double[/code]."
msgstr ""
"Le type [Variant] intégré [Quaternion] est une structure de données 4D qui "
"représente une rotation sous la forme d'un [url=https://fr.wikipedia.org/wiki/"
"Quaternions_et_rotation_dans_l%27espace]quaternion d'Hamilton[/url]. Par "
"rapport au type [Basis] qui peut stocker à la fois la rotation et l'échelle, "
"les quaternions peuvent [i]seulement[/i] stocker la rotation.\n"
"Un [Quaternion] est composé de 4 composantes flottantes : [member w], [member "
"x], [member y] et [member z]. Ces composantes sont très compactes en mémoire, "
"et en raison de cela certaines opérations sont plus efficaces et moins "
"susceptibles de causer des erreurs de virgule flottante. Les méthodes comme "
"[method get_angle], [method get_axis] et [method slerp] sont plus rapides que "
"leurs homologues de [Basis].\n"
"Pour une plus grande introduction aux quaternions, voir [url=https://"
"www.youtube.com/watch?v=d4EgbgTm0Bg]cette vidéo de 3Blue1Brown[/url]. Vous "
"n'avez pas besoin de connaître les mathématiques derrière les quaternions, "
"car Godot fournit plusieurs méthodes d'aide qui les gère pour vous. Il s'agit "
"de [method slerp] et [method spherical_cubic_interpolate], ainsi que de "
"l'opérateur [code]*[/code].\n"
"[b]Note :[/b] Les quaternions doivent être normalisés avant d'être utilisés "
"pour la rotation (voir [method normalized]).\n"
"[b]Note :[/b] De même que [Vector2] et [Vector3], les composantes d'un "
"quaternion utilisent une précision de 32 bits par défaut, contrairement à "
"[float] qui est toujours de 64 bits. Si une double précision est nécessaire, "
"compilez le moteur avec l'option [code]precision=double[/code]."

msgid "3Blue1Brown's video on Quaternions"
msgstr "La vidéo de 3Blue1Brown sur les quaternions"

msgid "Online Quaternion Visualization"
msgstr "Visualisation en ligne de quaternion"

msgid "Advanced Quaternion Visualization"
msgstr "Visualisation avancée de quaternions"

msgid ""
"Constructs a [Quaternion] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Quaternion] with all of its components "
"set to [code]0.0[/code]."
msgstr ""
"Construit un [Quaternion] identique à [constant IDENTITY].\n"
"[b]Note :[/b] En C#, cela construit un [Quaternion] avec toutes ses "
"composantes définies à [code]0.0[/code]."

msgid "Constructs a [Quaternion] as a copy of the given [Quaternion]."
msgstr "Construit un [Quaternion] comme copie du [Quaternion] donné."

msgid ""
"Constructs a [Quaternion] representing the shortest arc between [param "
"arc_from] and [param arc_to]. These can be imagined as two points "
"intersecting a sphere's surface, with a radius of [code]1.0[/code]."
msgstr ""
"Construit un [Quaternion] représentant l'arc le plus court entre [param "
"arc_from] et [param arc_to]. Cela peut être imaginé comme deux points "
"intersectant la surface d'une sphère de rayon [code]1.0[/code]."

msgid ""
"Constructs a [Quaternion] representing rotation around the [param axis] by "
"the given [param angle], in radians. The axis must be a normalized vector."
msgstr ""
"Construit un [Quaternion] représentant la rotation autour de l'axe [param "
"axis] de l'[param angle] donné, en radians. L'axe doit être un vecteur "
"normalisé."

msgid ""
"Constructs a [Quaternion] from the given rotation [Basis].\n"
"This constructor is faster than [method Basis.get_rotation_quaternion], but "
"the given basis must be [i]orthonormalized[/i] (see [method "
"Basis.orthonormalized]). Otherwise, the constructor fails and returns "
"[constant IDENTITY]."
msgstr ""
"Construit un [Quaternion] depuis la rotation [Basis] donnée.\n"
"Ce constructeur est plus rapide que [method Basis.get_rotation_quaternion], "
"mais la base donnée doit être [i]orthonormalisée[/i] (voir [method "
"Basis.orthonormalized]). Sinon, le constructeur échoue et renvoie [constant "
"IDENTITY]."

msgid ""
"Constructs a [Quaternion] defined by the given values.\n"
"[b]Note:[/b] Only normalized quaternions represent rotation; if these values "
"are not normalized, the new [Quaternion] will not be a valid rotation."
msgstr ""
"Construit un [Quaternion] défini par les valeurs données.\n"
"[b]Note :[/b] Seuls les quaternions normalisés représentent une rotation, si "
"ces valeurs ne sont pas normalisées, le nouveau [Quaternion] ne sera pas une "
"rotation valide."

msgid ""
"Returns the angle between this quaternion and [param to]. This is the "
"magnitude of the angle you would need to rotate by to get from one to the "
"other.\n"
"[b]Note:[/b] The magnitude of the floating-point error for this method is "
"abnormally high, so methods such as [code]is_zero_approx[/code] will not work "
"reliably."
msgstr ""
"Renvoie l'angle entre ce quaternion et [param to]. Il s'agit de la magnitude "
"de l'angle dont vous auriez besoin de pivoter pour aller de l'un à l'autre.\n"
"[b]Note :[/b] La magnitude de l'erreur de flottant pour cette méthode est "
"anormalement élevée, donc les méthodes telles que [code]is_zero_approx[/code] "
"ne fonctionneront pas de manière fiable."

msgid ""
"Returns the dot product between this quaternion and [param with].\n"
"This is equivalent to [code](quat.x * with.x) + (quat.y * with.y) + (quat.z * "
"with.z) + (quat.w * with.w)[/code]."
msgstr ""
"Renvoie le produit scalaire entre ce quaternion et [param with].\n"
"C'est équivalent à [code](quat.x * with.x) + (quat.y * with.y) + (quat.z * "
"with.z) + (quat.w * with.w)[/code]."

msgid ""
"Returns the exponential of this quaternion. The rotation axis of the result "
"is the normalized rotation axis of this quaternion, the angle of the result "
"is the length of the vector part of this quaternion."
msgstr ""
"Renvoie l'exponentielle de ce quaternion. L'axe de rotation du résultat est "
"l'axe de rotation normalisé de ce quaternion, l'angle est le résultat de la "
"longueur de la partie vectorielle de ce quaternion."

msgid ""
"Constructs a new [Quaternion] from the given [Vector3] of [url=https://"
"en.wikipedia.org/wiki/Euler_angles]Euler angles[/url], in radians. This "
"method always uses the YXZ convention ([constant EULER_ORDER_YXZ])."
msgstr ""
"Construit un nouveau [Quaternion] avec le [Vector3] d'[url=https://"
"fr.wikipedia.org/wiki/Angles_d%27Euler]angles d'Euler[/url] donné, en "
"radians. Cette méthode utilise toujours la convention YXZ ([constant "
"EULER_ORDER_YXZ])."

msgid ""
"Returns the angle of the rotation represented by this quaternion.\n"
"[b]Note:[/b] The quaternion must be normalized."
msgstr ""
"Renvoie l'angle de la rotation représentée par ce quaternion.\n"
"[b]Note:[/b] Le quaternion doit être normalisé."

msgid ""
"Returns the rotation axis of the rotation represented by this quaternion."
msgstr "Renvoie l'axe de rotation de la rotation représentée par ce quaternion."

msgid ""
"Returns this quaternion's rotation as a [Vector3] of [url=https://"
"en.wikipedia.org/wiki/Euler_angles]Euler angles[/url], in radians.\n"
"The order of each consecutive rotation can be changed with [param order] (see "
"[enum EulerOrder] constants). By default, the YXZ convention is used "
"([constant EULER_ORDER_YXZ]): Z (roll) is calculated first, then X (pitch), "
"and lastly Y (yaw). When using the opposite method [method from_euler], this "
"order is reversed."
msgstr ""
"Renvoie la rotation de ce quaternion comme un [Vector3] d'[url=https://"
"fr.wikipedia.org/wiki/Angles_d%27Euler]angles d'Euler[/url], en radians.\n"
"L'ordre de chaque rotation consécutive peut être changée avec [param order] "
"(voir les constantes [enum EulerOrder]). Par défaut, la convention YXZ est "
"utilisée ([constant EULER_ORDER_YXZ]) : Z (roulis) est calculé en premier, "
"puis X (tangage), et enfin Y (lacet). Lors de l'utilisation de la méthode "
"opposée [method from_euler], cet ordre est inversé."

msgid ""
"Returns the inverse version of this quaternion, inverting the sign of every "
"component except [member w]."
msgstr ""
"Renvoie la version inverse de ce quaternion, inversant le signe de chaque "
"composante excepté [member w]."

msgid ""
"Returns [code]true[/code] if this quaternion and [param to] are approximately "
"equal, by calling [method @GlobalScope.is_equal_approx] on each component."
msgstr ""
"Renvoie [code]true[/code] si ce quaternion et [param to] sont "
"approximativement égaux, en appelant [method @GlobalScope.is_equal_approx] "
"sur chaque composante."

msgid ""
"Returns [code]true[/code] if this quaternion is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Renvoie [code]true[/code] si ce quaternion est fini, en appelant [method "
"@GlobalScope.is_finite] sur chaque composante."

msgid ""
"Returns [code]true[/code] if this quaternion is normalized. See also [method "
"normalized]."
msgstr ""
"Renvoie [code]true[/code] si ce quaternion est normalisé. Voir aussi [method "
"normalized]."

msgid "Returns this quaternion's length, also called magnitude."
msgstr "Renvoie la longueur de ce quaternion, aussi appelée magnitude."

msgid ""
"Returns this quaternion's length, squared.\n"
"[b]Note:[/b] This method is faster than [method length], so prefer it if you "
"only need to compare quaternion lengths."
msgstr ""
"Renvoie la longueur au carré de ce quaternion.\n"
"[b]Note :[/b] Cette méthode est plus rapide que [method length] donc préférez-"
"la si vous avez seulement besoin de comparer des longueurs de quaternion."

msgid ""
"Returns the logarithm of this quaternion. Multiplies this quaternion's "
"rotation axis by its rotation angle, and stores the result in the returned "
"quaternion's vector part ([member x], [member y], and [member z]). The "
"returned quaternion's real part ([member w]) is always [code]0.0[/code]."
msgstr ""
"Renvoie le logarithme de ce quaternion. Multiple l'axe de rotation de ce "
"quaternion par son angle de rotation, et stocke le résultat dans la partie "
"vectorielle du quaternion renvoyé ([member x], [member y] et [member z]). La "
"partie réelle du quaternion renvoyé ([member w]) vaut toujours [code]0.0[/"
"code]."

msgid ""
"Returns a copy of this quaternion, normalized so that its length is "
"[code]1.0[/code]. See also [method is_normalized]."
msgstr ""
"Renvoie une copie de ce quaternion, normalisé de sorte à ce que sa longueur "
"soit [code]1.0[/code]. Voir aussi [method is_normalized]."

msgid ""
"Performs a spherical-linear interpolation with the [param to] quaternion, "
"given a [param weight] and returns the result. Both this quaternion and "
"[param to] must be normalized."
msgstr ""
"Effectue une interpolation linéaire sphérique avec le quaternion [param to] "
"et un poids [param weight] donnés, et renvoie le résultat. Les deux "
"quaternions doivent être normalisés."

msgid ""
"Performs a spherical-linear interpolation with the [param to] quaternion, "
"given a [param weight] and returns the result. Unlike [method slerp], this "
"method does not check if the rotation path is smaller than 90 degrees. Both "
"this quaternion and [param to] must be normalized."
msgstr ""
"Effectue une interpolation linéaire sphérique avec le quaternion [param to] "
"et un poids [param weight] donnés, et renvoie le résultat. Contrairement à "
"[method slerp], cette méthode ne vérifie pas si le chemin de rotation est "
"inférieur à 90 degrés. Les deux quaternions doivent être normalisés."

msgid ""
"Performs a spherical cubic interpolation between quaternions [param pre_a], "
"this vector, [param b], and [param post_b], by the given amount [param "
"weight]."
msgstr ""
"Effectue une interpolation sphérique cubique entre les quaternions [param "
"pre_a], ce vecteur, [param b], et [param post_b], par la quantité [param "
"weight] donnée."

msgid ""
"Performs a spherical cubic interpolation between quaternions [param pre_a], "
"this vector, [param b], and [param post_b], by the given amount [param "
"weight].\n"
"It can perform smoother interpolation than [method "
"spherical_cubic_interpolate] by the time values."
msgstr ""
"Effectue une interpolation sphérique cubique entre les quaternions [param "
"pre_a], ce vecteur, [param b], et [param post_b], par la quantité [param "
"weight] donnée.\n"
"Elle peut effectuer une interpolation plus lisse que [method "
"spherical_cubic_interpolate] pour les valeurs temporelles."

msgid ""
"W component of the quaternion. This is the \"real\" part.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"La composante W du quaternion. Il s'agit de la partie \"réelle\".\n"
"[b]Note :[/b] Les composantes des quaternions ne devraient habituellement pas "
"être modifiées directement."

msgid ""
"X component of the quaternion. This is the value along the \"imaginary\" "
"[code]i[/code] axis.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"La composante X du quaternion. Il s'agit de la valeur le long de l'axe "
"\"imaginaire\" [code]i[/code].\n"
"[b]Note :[/b] Les composantes des quaternions ne devraient habituellement pas "
"être modifiées directement."

msgid ""
"Y component of the quaternion. This is the value along the \"imaginary\" "
"[code]j[/code] axis.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"La composante Y du quaternion. Il s'agit de la valeur le long de l'axe "
"\"imaginaire\" [code]j[/code].\n"
"[b]Note :[/b] Les composantes des quaternions ne devraient habituellement pas "
"être modifiées directement."

msgid ""
"Z component of the quaternion. This is the value along the \"imaginary\" "
"[code]k[/code] axis.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"La composante Z du quaternion. Il s'agit de la valeur le long de l'axe "
"\"imaginaire\" [code]k[/code].\n"
"[b]Note :[/b] Les composantes des quaternions ne devraient habituellement pas "
"être modifiées directement."

msgid ""
"The identity quaternion, representing no rotation. This has the same rotation "
"as [constant Basis.IDENTITY].\n"
"If a [Vector3] is rotated (multiplied) by this quaternion, it does not "
"change.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Quaternion] without any arguments. It can be used to make your "
"code clearer, and for consistency with C#."
msgstr ""
"La quaternion d'identité, représentant une rotation nulle. Il s'agit de la "
"même rotation que [constant Basis.IDENTITY].\n"
"Si un [Vector3] est pivoté (multiplié) par ce quaternion, il ne changera "
"pas.\n"
"[b]Note :[/b] En GDScript, cette constante est équivalente à créer un "
"[constructor Quaternion] sans aucun argument. Cela peut être utilisé pour "
"rendre votre code plus clair, et pour être consistant avec le C#."

msgid ""
"Returns [code]true[/code] if the components of both quaternions are not "
"exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les composantes des deux quaternions ne sont pas "
"exactement égales.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid ""
"Composes (multiplies) two quaternions. This rotates the [param right] "
"quaternion (the child) by this quaternion (the parent)."
msgstr ""
"Compose (multiplie) deux quaternions. Cela tourne le quaternion [param right] "
"(l'enfant) par ce quaternion (le parent)."

msgid ""
"Rotates (multiplies) the [param right] vector by this quaternion, returning a "
"[Vector3]."
msgstr ""
"Fait tourner (multiplie) le vecteur [param right] par ce quaternion, "
"renvoyant un [Vector3]."

msgid ""
"Multiplies each component of the [Quaternion] by the right [float] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Multiplie chaque composante du [Quaternion] par le flottant [float] de "
"droite.\n"
"Cette opération ne veut rien dire seule, mais peut-être utilisée comme partie "
"d'une plus grande expression."

msgid ""
"Multiplies each component of the [Quaternion] by the right [int] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Multiplie chaque composante du [Quaternion] par l'entier [int] de droite.\n"
"Cette opération ne veut rien dire seule, mais peut-être utilisée comme partie "
"d'une plus grande expression."

msgid ""
"Adds each component of the left [Quaternion] to the right [Quaternion].\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression, such as approximating an intermediate rotation between "
"two nearby rotations."
msgstr ""
"Ajoute chaque composante du [Quaternion] de gauche à celles du [Quaternion] "
"de droite.\n"
"Cette opération ne veut rien dire seule, mais peut être utilisée comme partie "
"d'une plus grande expression, comme l'approximation d'une rotation "
"intermédiaire entre deux rotations proches."

msgid ""
"Subtracts each component of the left [Quaternion] by the right [Quaternion].\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Soustrait chaque composante du [Quaternion] de gauche par celles du "
"[Quaternion] de droite.\n"
"Cette opération ne veut rien dire seule, mais peut être utilisée comme partie "
"d'une plus grande expression."

msgid ""
"Divides each component of the [Quaternion] by the right [float] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Multiple chaque composante du [Quaternion] de gauche par celles du "
"[Quaternion] de droite.\n"
"Cette opération ne veut rien dire seule, mais peut être utilisée comme partie "
"d'une plus grande expression."

msgid ""
"Divides each component of the [Quaternion] by the right [int] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Divise chaque composante du [Quaternion] de gauche par celles du [Quaternion] "
"de droite.\n"
"Cette opération ne veut rien dire seule, mais peut être utilisée comme partie "
"d'une plus grande expression."

msgid ""
"Returns [code]true[/code] if the components of both quaternions are exactly "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les composantes des deux quaternions sont "
"exactement égales.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable."

msgid ""
"Accesses each component of this quaternion by their index.\n"
"Index [code]0[/code] is the same as [member x], index [code]1[/code] is the "
"same as [member y], index [code]2[/code] is the same as [member z], and index "
"[code]3[/code] is the same as [member w]."
msgstr ""
"Accède à chaque composante de ce quaternion par leur index.\n"
"L'index [code]0[/code] est le même que [member x], l'index [code]1[/code] est "
"le même que [member y], l'index [code]2[/code] est le même que [member z], et "
"l'index [code]3[/code] est le même que [member w]."

msgid ""
"Returns the negative value of the [Quaternion]. This is the same as "
"multiplying all components by [code]-1[/code]. This operation results in a "
"quaternion that represents the same rotation."
msgstr ""
"Renvoie la valeur négative du [Quaternion]. C'est la même que de multiplier "
"toutes les composantes par [code]-1[/code]. Cette opération résulte en un "
"quaternion qui représente la même rotation."

msgid ""
"RandomNumberGenerator is a class for generating pseudo-random numbers. It "
"currently uses [url=https://www.pcg-random.org/]PCG32[/url].\n"
"[b]Note:[/b] The underlying algorithm is an implementation detail and should "
"not be depended upon.\n"
"To generate a random float number (within a given range) based on a time-"
"dependent seed:\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"func _ready():\n"
"\tvar my_random_number = rng.randf_range(-10.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"RandomNumberGenerator est une classe pour générer des nombres pseudo-"
"aléatoires. Elle utilise actuellement l'algorithme [url=http://www.pcg-"
"random.org/]PCG32[/url].\n"
"[b]Note :[/b] L'implémentation de l'algorithme est un détail "
"d'implémentation, sur lequel il ne faudrait pas se baser.\n"
"Pour générer un flottant aléatoire (dans un intervalle donné) basé sur une "
"graine dépendante du temps :\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"func _ready():\n"
"\tvar mon_nombre_aleatoire = rng.randf_range(-10.0, 10.0)\n"
"[/codeblock]"

msgid ""
"Initializes the random number generator state based on the given seed value. "
"A given seed will give a reproducible sequence of pseudo-random numbers.\n"
"[b]Note:[/b] The RNG does not have an avalanche effect, and can output "
"similar random streams given similar seeds. Consider using a hash function to "
"improve your seed quality if they're sourced externally.\n"
"[b]Note:[/b] Setting this property produces a side effect of changing the "
"internal [member state], so make sure to initialize the seed [i]before[/i] "
"modifying the [member state]:\n"
"[b]Note:[/b] The default value of this property is pseudo-random, and changes "
"when calling [method randomize]. The [code]0[/code] value documented here is "
"a placeholder, and not the actual default seed.\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"rng.seed = hash(\"Godot\")\n"
"rng.state = 100 # Restore to some previously saved state.\n"
"[/codeblock]"
msgstr ""
"Initialise l'état du générateur de nombres aléatoires selon la valeur la "
"graine donnée. Une graine donnée générera toujours la même suite de nombres "
"pseudo-aléatoires.\n"
"[b]Note :[/b] Le générateur n'est pas soumis à l'effet avalanche, et peut "
"générer des flux similaires de nombres à partir d'une même graine. Préférez "
"utiliser une fonction de hachage pour améliorer la qualité de la graine si "
"elle provient d'une source externe.\n"
"[b]Note :[/b] Définir cette propriété produit un effet secondaire qui change "
"l'état [member state] interne, donc assurez-vous d'initialiser la graine "
"[i]avant[/i] de modifier l'état [member state] :\n"
"[b]Note :[/b] La valeur par défaut de cette propriété est pseudo-aléatoire, "
"et change lors de l'appel de [method randomize]. La valeur [code]0[/code] "
"documentée ici est une valeur générique, et pas la graine par défaut réelle.\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"rng.seed = hash(\"Godot\")\n"
"rng.state = 100 # Restaure à un état précédemment enregistré.\n"
"[/codeblock]"

msgid "Abstract base class for controls that represent a number within a range."
msgstr ""
"Classe de base abstraite pour les contrôles qui représentent un nombre dans "
"un intervalle."

msgid ""
"Range is an abstract base class for controls that represent a number within a "
"range, using a configured [member step] and [member page] size. See e.g. "
"[ScrollBar] and [Slider] for examples of higher-level nodes using Range."
msgstr ""
"Range est une classe de base abstraite pour les contrôles qui représentent un "
"nombre dans un intervalle, en utilisant un pas [member step] et une taille de "
"[member page] configurés. Voir par exemple [ScrollBar] et [Slider] pour des "
"exemples de nœuds de haut niveau utilisant Range."

msgid ""
"Called when the [Range]'s value is changed (following the same conditions as "
"[signal value_changed])."
msgstr ""
"Appelée lorsque la valeur du [Range] est modifiée (suivant les mêmes "
"conditions que [signal value_changed])."

msgid ""
"Sets the [Range]'s current value to the specified [param value], without "
"emitting the [signal value_changed] signal."
msgstr ""
"Définit la valeur actuelle du [Range] à la valeur spécifiée [param value], "
"sans émettre le signal [signal value_changed]."

msgid ""
"Binds two [Range]s together along with any ranges previously grouped with "
"either of them. When any of range's member variables change, it will share "
"the new value with all other ranges in its group."
msgstr ""
"Lie deux [Range]s ensemble avec aussi tout Range groupé précédemment avec "
"l'un d'entre eux. Lorsque l'une des variables membres de l'intervalle change, "
"elle partagera la nouvelle valeur avec tous les autres Ranges de son groupe."

msgid "Stops the [Range] from sharing its member variables with any other."
msgstr "Arrête le [Range] de partager ses variables membres avec les autres."

msgid ""
"If [code]true[/code], [member value] may be greater than [member max_value]."
msgstr ""
"Si [code]true[/code], [member value] peut être supérieure à [member "
"max_value]."

msgid ""
"If [code]true[/code], [member value] may be less than [member min_value]."
msgstr ""
"Si [code]true[/code], [member value] peut être inférieure à [member "
"min_value]."

msgid ""
"If [code]true[/code], and [member min_value] is greater or equal to [code]0[/"
"code], [member value] will be represented exponentially rather than linearly."
msgstr ""
"Si [code]true[/code], et que [member min_value] est supérieur ou égal à "
"[code]0[/code], [member value] sera représenté de façon exponentielle plutôt "
"que linéaire."

msgid ""
"Maximum value. Range is clamped if [member value] is greater than [member "
"max_value]."
msgstr ""
"Valeur maximale. L'intervalle est borné si la valeur [member value] est "
"supérieure à [member max_value]."

msgid ""
"Minimum value. Range is clamped if [member value] is less than [member "
"min_value]."
msgstr ""
"Valeur minimale. L'intervalle est borné si la valeur [member value] est "
"inférieure à [member min_value]."

msgid ""
"Page size. Used mainly for [ScrollBar]. A [ScrollBar]'s grabber length is the "
"[ScrollBar]'s size multiplied by [member page] over the difference between "
"[member min_value] and [member max_value]."
msgstr ""
"La taille de la page. Utilisé principalement pour [ScrollBar]. La longueur de "
"l’ascenseur d'une [ScrollBar] est la taille de la [ScrollBar] multipliée par "
"[member page] divisé par la différence entre [member min_value] et [member "
"max_value]."

msgid "The value mapped between 0 and 1."
msgstr "La valeur définit entre 0 et 1."

msgid ""
"If [code]true[/code], [member value] will always be rounded to the nearest "
"integer."
msgstr ""
"Si [code]true[/code], [member value] sera toujours arrondi au nombre entier "
"le plus proche."

msgid ""
"If greater than 0, [member value] will always be rounded to a multiple of "
"this property's value above [member min_value]. For example, if [member "
"min_value] is [code]0.1[/code] and step is 0.2, then [member value] is "
"limited to [code]0.1[/code], [code]0.3[/code], [code]0.5[/code], and so on. "
"If [member rounded] is also [code]true[/code], [member value] will first be "
"rounded to a multiple of this property's value, then rounded to the nearest "
"integer."
msgstr ""
"Si supérieure à 0, [member value] sera toujours arrondie à un multiple de la "
"valeur de cette propriété, au dessus de [member min_value]. Par example, si "
"[member min_value] vaut [code]0.1[/code] et le pas [member step] est de 0.2, "
"alors [member value] est limité à [code]0.1[/code], [code]0.3[/code], "
"[code]0.5[/code], etc... Si [member rounded] vaut également [code]true[/"
"code], [member value] sera d'abord arrondie à un multiple de la valeur de "
"cette propriété, puis arrondie à l'entier le plus proche."

msgid ""
"Range's current value. Changing this property (even via code) will trigger "
"[signal value_changed] signal. Use [method set_value_no_signal] if you want "
"to avoid it."
msgstr ""
"La valeur actuelle de l'intervalle. Changer cette propriété (même via le "
"code) déclenchera le signal [signal value_changed]. Utilisez [method "
"set_value_no_signal] si vous voulez éviter cela."

msgid ""
"Emitted when [member min_value], [member max_value], [member page], or "
"[member step] change."
msgstr ""
"Émis quand [member min_value], [member max_value], [member page], ou [member "
"step] change."

msgid ""
"Emitted when [member value] changes. When used on a [Slider], this is called "
"continuously while dragging (potentially every frame). If you are performing "
"an expensive operation in a function connected to [signal value_changed], "
"consider using a [i]debouncing[/i] [Timer] to call the function less often.\n"
"[b]Note:[/b] Unlike signals such as [signal LineEdit.text_changed], [signal "
"value_changed] is also emitted when [param value] is set directly via code."
msgstr ""
"Émis quand [member value] change. Lorsqu'utilisé pour un [Slider], cela est "
"appelle en continu lors du glissage (voire à chaque trame). Si vous effectuez "
"une opération coûteuse dans une fonction connectée à [signal value_changed], "
"essayez d'utiliser un [Timer] de [i]debouncing[/i] (litt. \"anti-rebond\") "
"afin d'appeler la fonction moins souvent.\n"
"[b]Note :[/b] Contrairement aux signaux tels que [signal "
"LineEdit.text_changed], [signal value_changed] est également émis lorsque "
"[param value] est défini directement par code."

msgid ""
"A ray in 2D space, used to find the first collision object it intersects."
msgstr ""
"Un rayon dans l'espace 2D, utilisé pour trouver le premier objet de collision "
"qu'il croise."

msgid ""
"A raycast represents a ray from its origin to its [member target_position] "
"that finds the closest object along its path, if it intersects any.\n"
"[RayCast2D] can ignore some objects by adding them to an exception list, by "
"making its detection reporting ignore [Area2D]s ([member collide_with_areas]) "
"or [PhysicsBody2D]s ([member collide_with_bodies]), or by configuring physics "
"layers.\n"
"[RayCast2D] calculates intersection every physics frame, and it holds the "
"result until the next physics frame. For an immediate raycast, or if you want "
"to configure a [RayCast2D] multiple times within the same physics frame, use "
"[method force_raycast_update].\n"
"To sweep over a region of 2D space, you can approximate the region with "
"multiple [RayCast2D]s or use [ShapeCast2D]."
msgstr ""
"Un raycast représente un rayon de son origine à sa position cible [member "
"target_position] qui trouve l'objet le plus proche le long de son chemin, "
"s'il en intersecte.\n"
"[RayCast2D] peut ignorer certains objets en les ajoutant à une liste "
"d'exception, en faisant que son rapport de détection ignore des [Area2D]s "
"([member collide_with_areas]) ou des [PhysicsBody2D]s ([member "
"collide_with_bodies]), ou en configurant des couches de physique.\n"
"[RayCast2D] calcule l'intersection à chaque trame physique, et il contient le "
"résultat jusqu'à la prochaine trame physique. Pour un raycast immédiat, ou si "
"vous voulez configurer un [RayCast2D] plusieurs fois dans la même trame "
"physique, utilisez [method force_raycast_update].\n"
"Pour balayer une région de l'espace 2D, vous pouvez approximer la région avec "
"plusieurs [RayCast2D] ou utiliser [ShapeCast2D]."

msgid ""
"Adds a collision exception so the ray does not report collisions with the "
"specified [param node]."
msgstr ""
"Ajoute une exception de collision pour que le rayon ne signale pas les "
"collisions avec le nœud [param node] spécifié."

msgid ""
"Adds a collision exception so the ray does not report collisions with the "
"specified [RID]."
msgstr ""
"Ajoute une exception de collision pour que le rayon ne signale pas les "
"collisions avec le [RID] spécifié."

msgid "Removes all collision exceptions for this ray."
msgstr "Retire tous les exceptions de collision pour ce rayon."

msgid ""
"Updates the collision information for the ray immediately, without waiting "
"for the next [code]_physics_process[/code] call. Use this method, for "
"example, when the ray or its parent has changed state.\n"
"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
"to work."
msgstr ""
"Met à jour les informations de collision pour le rayon immédiatement, au lieu "
"d'attendre le prochain appel à [code]_physics_process[/code]. Utilisez cette "
"méthode, par exemple, si le rayon ou son parent a changé d'état.\n"
"[b]Note :[/b] [member enabled] ne doit pas forcément valoir [code]true[/code] "
"pour que cela fonctionne."

msgid ""
"Returns the first object that the ray intersects, or [code]null[/code] if no "
"object is intersecting the ray (i.e. [method is_colliding] returns "
"[code]false[/code]).\n"
"[b]Note:[/b] This object is not guaranteed to be a [CollisionObject2D]. For "
"example, if the ray intersects a [TileMapLayer], the method will return a "
"[TileMapLayer] instance."
msgstr ""
"Renvoie le premier objet que le rayon intersecte, ou [code]null[/code] si "
"aucun objet n'intersecte le rayon (c'est-à-dire [method is_colliding] renvoie "
"[code]false[/code]).\n"
"[b]Note :[/b] Cet objet n'est pas garanti d'être un [CollisionObject2D]. Par "
"exemple, si le rayon intersecte un [TileMapLayer], la méthode renverra une "
"instance de [TileMapLayer]."

msgid ""
"Returns the [RID] of the first object that the ray intersects, or an empty "
"[RID] if no object is intersecting the ray (i.e. [method is_colliding] "
"returns [code]false[/code])."
msgstr ""
"Renvoie le [RID] du premier objet que le rayon intersecte, ou un [RID] vide "
"si aucun objet n'intersecte le rayon (c'est-à-dire [method is_colliding] "
"renvoie [code]false[/code])."

msgid ""
"Returns the shape ID of the first object that the ray intersects, or [code]0[/"
"code] if no object is intersecting the ray (i.e. [method is_colliding] "
"returns [code]false[/code]).\n"
"To get the intersected shape node, for a [CollisionObject2D] target, use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var target = get_collider() # A CollisionObject2D.\n"
"var shape_id = get_collider_shape() # The shape index in the collider.\n"
"var owner_id = target.shape_find_owner(shape_id) # The owner ID in the "
"collider.\n"
"var shape = target.shape_owner_get_owner(owner_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"var target = (CollisionObject2D)GetCollider(); // A CollisionObject2D.\n"
"var shapeId = GetColliderShape(); // The shape index in the collider.\n"
"var ownerId = target.ShapeFindOwner(shapeId); // The owner ID in the "
"collider.\n"
"var shape = target.ShapeOwnerGetOwner(ownerId);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie l'identifiant de forme du premier objet que le rayon intersecte, ou "
"[code]0[/code] si aucun objet n'intersecte le rayon (c.-à-d. [method "
"is_colliding] retourne [code]false[/code]).\n"
"Pour obtenir le nœud de la forme intersectée, pour une cible "
"[CollisionObject2D], utilisez :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var cible = get_collider() # Un CollisionObject2D.\n"
"var id_forme = get_collider_shape() # L'index de la forme dans le collider.\n"
"var id_proprietaire = cible.shape_find_owner(id_forme) # L'identifiant du "
"propriétaire dans le collider.\n"
"var forme = cible.shape_owner_get_owner(id_proprietaire)\n"
"[/gdscript]\n"
"[csharp]\n"
"var cible = (CollisionObject2D)GetCollider(); // Un CollisionObject2D.\n"
"var idForme = GetColliderShape(); // L'index de la forme dans le collider.\n"
"var idProprietaire = cible.ShapeFindOwner(idForme ); // L'identifiant du "
"propriétaire dans le collider.\n"
"var forme = cible.ShapeOwnerGetOwner(idProprietaire);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the normal of the intersecting object's shape at the collision point, "
"or [code]Vector2(0, 0)[/code] if the ray starts inside the shape and [member "
"hit_from_inside] is [code]true[/code].\n"
"[b]Note:[/b] Check that [method is_colliding] returns [code]true[/code] "
"before calling this method to ensure the returned normal is valid and up-to-"
"date."
msgstr ""
"Renvoie la normale à forme de l'objet intersectant au point de collision, ou "
"[code]Vector2(0, 0)[/code] si le rayon commence à l'intérieur de la forme et "
"que [member hit_from_inside] vaut [code]true[/code].\n"
"[b]Note :[/b] Vérifiez que [method is_colliding] renvoie [code]true[/code] "
"avant d'appeler cette méthode pour vous assurer que la normale renvoyée est "
"valide et à jour."

msgid ""
"Returns the collision point at which the ray intersects the closest object, "
"in the global coordinate system. If [member hit_from_inside] is [code]true[/"
"code] and the ray starts inside of a collision shape, this function will "
"return the origin point of the ray.\n"
"[b]Note:[/b] Check that [method is_colliding] returns [code]true[/code] "
"before calling this method to ensure the returned point is valid and up-to-"
"date."
msgstr ""
"Renvoie le point de collision auquel le rayon intersecte l'objet le plus "
"proche, dans le système de coordonnées global. Si [member hit_from_inside] "
"vaut [code]true[/code] et que le rayon commence à l'intérieur d'une forme de "
"collision, cette fonction renverra le point d'origine du rayon.\n"
"[b]Note :[/b] Vérifiez que [method is_colliding] renvoie [code]true[/code] "
"avant d'appeler cette méthode pour vous assurer que le point renvoyé est "
"valide et à jour."

msgid ""
"Returns whether any object is intersecting with the ray's vector (considering "
"the vector length)."
msgstr ""
"Renvoie quand un objet intersecte avec le vecteur du rayon (en prenant en "
"compte la longueur du vecteur)."

msgid ""
"Removes a collision exception so the ray can report collisions with the "
"specified specified [param node]."
msgstr ""
"Retire une exception de collision pour que le rayon prenne en compte les "
"collisions avec le nœud [param node] spécifié."

msgid ""
"Removes a collision exception so the ray can report collisions with the "
"specified [RID]."
msgstr ""
"Retire une exception de collision pour que le rayon prenne en compte les "
"collision avec le [RID] spécifié."

msgid "If [code]true[/code], collisions with [Area2D]s will be reported."
msgstr ""
"Si [code]true[/code], les collisions avec les [Area2D]s seront rapportées."

msgid "If [code]true[/code], collisions with [PhysicsBody2D]s will be reported."
msgstr ""
"Si [code]true[/code], les collisions avec les [PhysicsBody2D]s seront "
"rapportées."

msgid ""
"The ray's collision mask. Only objects in at least one collision layer "
"enabled in the mask will be detected. See [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
"Le masque de collision du rayon. Seuls les objets présents dans au moins une "
"couche de collision activée dans le masque seront détectés. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Couches et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid "If [code]true[/code], collisions will be reported."
msgstr "Si [code]true[/code], les collisions seront signalées."

msgid ""
"If [code]true[/code], this raycast will not report collisions with its parent "
"node. This property only has an effect if the parent node is a "
"[CollisionObject2D]. See also [method Node.get_parent] and [method "
"add_exception]."
msgstr ""
"Si [code]true[/code], ce raycast ne signale pas les collisions avec son nœud "
"parent. Cette propriété n'a un effet que si le nœud parent est un "
"[CollisionObject2D]. Voir aussi [method Node.get_parent] et [method "
"add_exception]."

msgid ""
"If [code]true[/code], the ray will detect a hit when starting inside shapes. "
"In this case the collision normal will be [code]Vector2(0, 0)[/code]. Does "
"not affect concave polygon shapes."
msgstr ""
"Si [code]true[/code], le rayon détectera un toucher lorsqu'il commence dans "
"une forme. Dans ce cas, la normale de la collision sera [code]Vector2(0, 0)[/"
"code]. N'affecte pas les formes de polygones concaves."

msgid ""
"The ray's destination point, relative to this raycast's [member "
"Node2D.position]."
msgstr ""
"Le point de destination du rayon, relatif à la position [member "
"Node2D.position] de ce raycast."

msgid ""
"A ray in 3D space, used to find the first collision object it intersects."
msgstr ""
"Un rayon dans l'espace 3D, utilisé pour trouver le premier objet de collision "
"qu'il intersecte."

msgid ""
"A raycast represents a ray from its origin to its [member target_position] "
"that finds the closest object along its path, if it intersects any.\n"
"[RayCast3D] can ignore some objects by adding them to an exception list, by "
"making its detection reporting ignore [Area3D]s ([member collide_with_areas]) "
"or [PhysicsBody3D]s ([member collide_with_bodies]), or by configuring physics "
"layers.\n"
"[RayCast3D] calculates intersection every physics frame, and it holds the "
"result until the next physics frame. For an immediate raycast, or if you want "
"to configure a [RayCast3D] multiple times within the same physics frame, use "
"[method force_raycast_update].\n"
"To sweep over a region of 3D space, you can approximate the region with "
"multiple [RayCast3D]s or use [ShapeCast3D]."
msgstr ""
"Un raycast représente un rayon de son origine à sa position cible [member "
"target_position] qui trouve l'objet le plus proche le long de son chemin, "
"s'il en intersecte.\n"
"[RayCast3D] peut ignorer certains objets en les ajoutant à une liste "
"d'exception, en faisant que son rapport de détection ignore des [Area3D]s "
"([member collide_with_areas]) ou des [PhysicsBody3D]s ([member "
"collide_with_bodies]), ou en configurant des couches de physique.\n"
"[RayCast3D] calcule l'intersection à chaque trame physique, et il contient le "
"résultat jusqu'à la prochaine trame physique. Pour un raycast immédiat, ou si "
"vous voulez configurer un [RayCast3D] plusieurs fois dans la même trame "
"physique, utilisez [method force_raycast_update].\n"
"Pour balayer une région de l'espace 3D, vous pouvez approximer la région avec "
"plusieurs [RayCast3D] ou utiliser [ShapeCast3D]."

msgid ""
"Returns the first object that the ray intersects, or [code]null[/code] if no "
"object is intersecting the ray (i.e. [method is_colliding] returns "
"[code]false[/code]).\n"
"[b]Note:[/b] This object is not guaranteed to be a [CollisionObject3D]. For "
"example, if the ray intersects a [CSGShape3D] or a [GridMap], the method will "
"return a [CSGShape3D] or [GridMap] instance."
msgstr ""
"Renvoie le premier objet que le rayon intersecte, ou [code]null[/code] si "
"aucun objet n'intersecte le rayon (c'est-à-dire [method is_colliding] renvoie "
"[code]false[/code]).\n"
"[b]Note :[/b] Cet objet n'est pas garanti d'être un [CollisionObject3D]. Par "
"exemple, si le rayon intersecte un [CSGShape3D] ou un [GridMap], la méthode "
"renverra une instance de [CSGShape3D] ou de [GridMap]."

msgid ""
"Returns the shape ID of the first object that the ray intersects, or [code]0[/"
"code] if no object is intersecting the ray (i.e. [method is_colliding] "
"returns [code]false[/code]).\n"
"To get the intersected shape node, for a [CollisionObject3D] target, use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var target = get_collider() # A CollisionObject3D.\n"
"var shape_id = get_collider_shape() # The shape index in the collider.\n"
"var owner_id = target.shape_find_owner(shape_id) # The owner ID in the "
"collider.\n"
"var shape = target.shape_owner_get_owner(owner_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"var target = (CollisionObject3D)GetCollider(); // A CollisionObject3D.\n"
"var shapeId = GetColliderShape(); // The shape index in the collider.\n"
"var ownerId = target.ShapeFindOwner(shapeId); // The owner ID in the "
"collider.\n"
"var shape = target.ShapeOwnerGetOwner(ownerId);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie l'identifiant de forme du premier objet que le rayon intersecte, ou "
"[code]0[/code] si aucun objet n'intersecte le rayon (c.-à-d. [method "
"is_colliding] retourne [code]false[/code]).\n"
"Pour obtenir le nœud de la forme intersectée, pour une cible "
"[CollisionObject3D], utilisez :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var cible = get_collider() # Un CollisionObject3D.\n"
"var id_forme = get_collider_shape() # L'index de la forme dans le collider.\n"
"var id_proprietaire = cible.shape_find_owner(id_forme) # L'identifiant du "
"propriétaire dans le collider.\n"
"var forme = cible.shape_owner_get_owner(id_proprietaire)\n"
"[/gdscript]\n"
"[csharp]\n"
"var cible = (CollisionObject3D)GetCollider(); // Un CollisionObject3D.\n"
"var idForme = GetColliderShape(); // L'index de la forme dans le collider.\n"
"var idProprietaire = cible.ShapeFindOwner(idForme ); // L'identifiant du "
"propriétaire dans le collider.\n"
"var forme = cible.ShapeOwnerGetOwner(idProprietaire);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the collision object's face index at the collision point, or "
"[code]-1[/code] if the shape intersecting the ray is not a "
"[ConcavePolygonShape3D]."
msgstr ""
"Renvoie l'index de face de l'objet en collision au point de collision, ou "
"[code]-1[/code] si la forme intersectant le rayon n'est pas une "
"[ConcavePolygonShape3D]."

msgid ""
"Returns the normal of the intersecting object's shape at the collision point, "
"or [code]Vector3(0, 0, 0)[/code] if the ray starts inside the shape and "
"[member hit_from_inside] is [code]true[/code].\n"
"[b]Note:[/b] Check that [method is_colliding] returns [code]true[/code] "
"before calling this method to ensure the returned normal is valid and up-to-"
"date."
msgstr ""
"Renvoie la normale à forme de l'objet intersectant au point de collision, ou "
"[code]Vector3(0, 0, 0)[/code] si le rayon commence à l'intérieur de la forme "
"et que [member hit_from_inside] vaut [code]true[/code].\n"
"[b]Note :[/b] Vérifiez que [method is_colliding] renvoie [code]true[/code] "
"avant d'appeler cette méthode pour vous assurer que la normale renvoyée est "
"valide et à jour."

msgid ""
"Removes a collision exception so the ray can report collisions with the "
"specified [param node]."
msgstr ""
"Retire une exception de collision pour que le rayon prenne en compte les "
"collisions avec le nœud [param node] spécifié."

msgid "If [code]true[/code], collisions with [Area3D]s will be reported."
msgstr ""
"Si [code]true[/code], les collisions avec les [Area3D]s seront rapportées."

msgid "If [code]true[/code], collisions with [PhysicsBody3D]s will be reported."
msgstr ""
"Si [code]true[/code], les collisions avec les [PhysicsBody3D]s seront "
"rapportées."

msgid ""
"The custom color to use to draw the shape in the editor and at run-time if "
"[b]Visible Collision Shapes[/b] is enabled in the [b]Debug[/b] menu. This "
"color will be highlighted at run-time if the [RayCast3D] is colliding with "
"something.\n"
"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
"[member ProjectSettings.debug/shapes/collision/shape_color] is used."
msgstr ""
"La couleur personnalisée à utiliser pour dessiner la forme dans l'éditeur "
"durant l'exécution si [b]Formes de collision visibles[/b] est activé dans le "
"menu [b]Débogage[/b]. Cette couleur sera mise en évidence durant l'exécution "
"si le [RayCast3D] entre en collision avec quelque chose.\n"
"Si défini à [code]Color(0.0, 0.0, 0.0, 0.0)[/code] (par défaut), la couleur "
"définie dans [member ProjectSettings.debug/shapes/collision/shape_color] est "
"utilisée."

msgid ""
"If set to [code]1[/code], a line is used as the debug shape. Otherwise, a "
"truncated pyramid is drawn to represent the [RayCast3D]. Requires [b]Visible "
"Collision Shapes[/b] to be enabled in the [b]Debug[/b] menu for the debug "
"shape to be visible at run-time."
msgstr ""
"Si défini à [code]1[/code], une ligne est utilisée comme forme de débogage. "
"Sinon, une pyramide tronquée est dessinée pour représenter le [RayCast3D]. "
"Nécessite que [b]Formes de collision visibles[/b] soit activé dans le menu "
"[b]Débogage[/b] pour que la forme de débogage soit visible durant l'exécution."

msgid ""
"If [code]true[/code], this raycast will not report collisions with its parent "
"node. This property only has an effect if the parent node is a "
"[CollisionObject3D]. See also [method Node.get_parent] and [method "
"add_exception]."
msgstr ""
"Si [code]true[/code], ce raycast ne signale pas les collisions avec son nœud "
"parent. Cette propriété n'a un effet que si le nœud parent est un "
"[CollisionObject3D]. Voir aussi [method Node.get_parent] et [method "
"add_exception]."

msgid ""
"If [code]true[/code], the ray will hit back faces with concave polygon shapes "
"with back face enabled or heightmap shapes."
msgstr ""
"Si [code]true[/code], le rayon entrera en collision avec les faces arrières "
"des formes de polygones concaves avec les faces arrières activées ou des "
"formes de heightmap."

msgid ""
"If [code]true[/code], the ray will detect a hit when starting inside shapes. "
"In this case the collision normal will be [code]Vector3(0, 0, 0)[/code]. Does "
"not affect shapes with no volume like concave polygon or heightmap."
msgstr ""
"Si [code]true[/code], le rayon détectera un toucher lorsqu'il commence dans "
"une forme. Dans ce cas, la normale de la collision sera [code]Vector3(0, 0, 0)"
"[/code]. N'affecte pas les formes sans volume comme les polygones concaves ou "
"les heightmaps."

msgid ""
"The ray's destination point, relative to this raycast's [member "
"Node3D.position]."
msgstr ""
"Le point de destination du rayon, relatif à la position [member "
"Node3D.position] de ce raycast."

msgid "Attachment is unused."
msgstr "La pièce jointe est inutilisée."

msgid ""
"If [code]true[/code], performs the logic operation defined in [member "
"logic_op]."
msgstr ""
"Si [code]true[/code], effectue l'opération logique définie dans [member "
"logic_op]."

msgid ""
"The logic operation to perform for blending. Only effective if [member "
"enable_logic_op] is [code]true[/code]."
msgstr ""
"L'opération logique à effectuer pour le mélange. Seulement effectif si "
"[member enable_logic_op] vaut [code]true[/code]."

msgid "Sampler state (used by [RenderingDevice])."
msgstr "État d’échantillonneur (utilisé par [RenderingDevice])."

msgid "Shader source code (used by [RenderingDevice])."
msgstr "Code source de shader (utilisé par [RenderingDevice])."

msgid ""
"Shader source code in text form.\n"
"See also [RDShaderFile]. [RDShaderSource] is only meant to be used with the "
"[RenderingDevice] API. It should not be confused with Godot's own [Shader] "
"resource, which is what Godot's various nodes use for high-level shader "
"programming."
msgstr ""
"Code source de shader sous forme de texte.\n"
"Voir aussi [RDShaderFile]. [RDShaderSource] est uniquement destiné à être "
"utilisé avec l'API [RenderingDevice]. Il ne devrait pas être confondu avec la "
"propre ressource [Shader] de Godot, qui est ce que les différents nœuds de "
"Godot utilisent pour la programmation haut-niveau de shaders."

msgid "Texture format (used by [RenderingDevice])."
msgstr "Format de texture (utilisé par [RenderingDevice])."

msgid "The texture's pixel data format."
msgstr "Le format des données de pixels de la texture."

msgid "The texture's height (in pixels)."
msgstr "La hauteur de la texture (en pixels)."

msgid "The texture type."
msgstr "Le type de texture."

msgid "The texture's width (in pixels)."
msgstr "La largeur de la texture (en pixels)."

msgid "The uniform's data type."
msgstr "Le type de données de l'uniform."

msgid "Vertex attribute (used by [RenderingDevice])."
msgstr "Attribut de sommet (utilisé par [RenderingDevice])."

msgid "A 2D axis-aligned bounding box using floating-point coordinates."
msgstr ""
"Une boîte délimitante 2D alignée sur les axes utilisant des coordonnées à "
"virgule flottante."

msgid ""
"The [Rect2] built-in [Variant] type represents an axis-aligned rectangle in a "
"2D space. It is defined by its [member position] and [member size], which are "
"[Vector2]. It is frequently used for fast overlap tests (see [method "
"intersects]). Although [Rect2] itself is axis-aligned, it can be combined "
"with [Transform2D] to represent a rotated or skewed rectangle.\n"
"For integer coordinates, use [Rect2i]. The 3D equivalent to [Rect2] is "
"[AABB].\n"
"[b]Note:[/b] Negative values for [member size] are not supported. With "
"negative size, most [Rect2] methods do not work correctly. Use [method abs] "
"to get an equivalent [Rect2] with a non-negative size.\n"
"[b]Note:[/b] In a boolean context, a [Rect2] evaluates to [code]false[/code] "
"if both [member position] and [member size] are zero (equal to [constant "
"Vector2.ZERO]). Otherwise, it always evaluates to [code]true[/code]."
msgstr ""
"Le type [Variant] intégré [Rect2] représente un rectangle aligné sur les axes "
"dans un espace 2D. Il est défini par sa position [member position] et sa "
"taille [member size], qui sont des [Vector2]. Il est fréquemment utilisé pour "
"les tests de superposition rapide (voir [method intersects]). Bien que "
"[Rect2] lui-même soit aligné sur les axes, il peut être combiné avec "
"[Transform2D] pour représenter un rectangle tourné ou cisaillé.\n"
"Pour des coordonnées entières, utilisez [Rect2i]. L'équivalent 3D de [Rect2] "
"est [AABB].\n"
"[b]Note :[/b] Les valeurs négatives pour [member size] ne sont pas "
"supportées. Avec une taille négative, la plupart des méthodes de [Rect2] ne "
"fonctionnent pas correctement. Utilisez [method abs] pour obtenir un [Rect2] "
"équivalent avec une taille non négative.\n"
"[b]Note :[/b] Dans un contexte booléen, un [Rect2] évalue à [code]false[/"
"code] si les deux valeurs [member position] et [member size] sont nulles "
"(équivalent à [constant Vector2.ZERO]). Sinon, il évalue toujours à "
"[code]true[/code]."

msgid ""
"Constructs a [Rect2] with its [member position] and [member size] set to "
"[constant Vector2.ZERO]."
msgstr ""
"Construit un [Rect2] avec sa position [member position] et sa taille [member "
"size] définies à [constant Vector2.ZERO]."

msgid "Constructs a [Rect2] as a copy of the given [Rect2]."
msgstr "Construit un [Rect2] comme une copie du [Rect2] donné."

msgid "Constructs a [Rect2] from a [Rect2i]."
msgstr "Construit un [Rect2] à partir d'un [Rect2i]."

msgid "Constructs a [Rect2] by [param position] and [param size]."
msgstr ""
"Construit un [Rect2] avec sa position [param position] et sa taille [param "
"size]."

msgid ""
"Constructs a [Rect2] by setting its [member position] to ([param x], [param "
"y]), and its [member size] to ([param width], [param height])."
msgstr ""
"Construit un [Rect2] en définissant sa [member position] à ([param x], [param "
"y]), et sa taille [member size] à ([param width], [param height])."

msgid ""
"Returns a [Rect2] equivalent to this rectangle, with its width and height "
"modified to be non-negative values, and with its [member position] being the "
"top-left corner of the rectangle.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(25, 25, -100, -50)\n"
"var absolute = rect.abs() # absolute is Rect2(-75, -25, 100, 50)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(25, 25, -100, -50);\n"
"var absolute = rect.Abs(); // absolute is Rect2(-75, -25, 100, 50)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] It's recommended to use this method when [member size] is "
"negative, as most other methods in Godot assume that the [member position] is "
"the top-left corner, and the [member end] is the bottom-right corner."
msgstr ""
"Renvoie un [Rect2] équivalent à ce rectangle, avec sa largeur et sa hauteur "
"modifiées pour être des valeurs non négatives, et avec sa [member position] "
"étant dans le coin supérieur gauche du rectangle.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(25, 25, -100, -50)\n"
"var absolue = rect.abs() # absolue est Rect2(-75, -25, 100, 50)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(25, 25, -100, -50);\n"
"var absolue = rect.Abs(); // absolue est Rect2(-75, -25, 100, 50)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Il est recommandé d'utiliser cette méthode lorsque [member "
"size] est négatif, car la plupart des autres méthodes de Godot supposent que "
"la [member position] est dans le coin supérieur gauche, et [member end] est "
"le coin inférieur droit."

msgid ""
"Returns [code]true[/code] if this rectangle [i]completely[/i] encloses the "
"[param b] rectangle."
msgstr ""
"Renvoie [code]true[/code] si ce rectangle entoure [i]complètement[/i] le "
"rectangle [param b]."

msgid ""
"Returns a copy of this rectangle expanded to align the edges with the given "
"[param to] point, if necessary.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(0, 0, 5, 2)\n"
"\n"
"rect = rect.expand(Vector2(10, 0)) # rect is Rect2(0, 0, 10, 2)\n"
"rect = rect.expand(Vector2(-5, 5)) # rect is Rect2(-5, 0, 15, 5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(0, 0, 5, 2);\n"
"\n"
"rect = rect.Expand(new Vector2(10, 0)); // rect is Rect2(0, 0, 10, 2)\n"
"rect = rect.Expand(new Vector2(-5, 5)); // rect is Rect2(-5, 0, 15, 5)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une copie de ce rectangle étendu pour aligner les bords avec le point "
"[param to] donné, si nécessaire.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(0, 0, 5, 2)\n"
"\n"
"rect = rect.expand(Vector2(10, 0)) # rect vaut Rect2(0, 0, 10, 2)\n"
"rect = rect.expand(Vector2(-5, 5)) # rect vaut Rect2(-5, 0, 15, 5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(0, 0, 5, 2);\n"
"\n"
"rect = rect.Expand(new Vector2(10, 0)); // rect vaut Rect2(0, 0, 10, 2)\n"
"rect = rect.Expand(new Vector2(-5, 5)); // rect vaut Rect2(-5, 0, 15, 5)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the rectangle's area. This is equivalent to [code]size.x * size.y[/"
"code]. See also [method has_area]."
msgstr ""
"Renvoie l'aire du rectangle. Ceci est équivalent à [code]size.x * size.y[/"
"code]. Voir aussi [method has_area]."

msgid ""
"Returns the center point of the rectangle. This is the same as [code]position "
"+ (size / 2.0)[/code]."
msgstr ""
"Renvoie le point central du rectangle. Cela revient à [code]position + "
"(size / 2.0)[/code]."

msgid ""
"Returns the vertex's position of this rect that's the farthest in the given "
"direction. This point is commonly known as the support point in collision "
"detection algorithms."
msgstr ""
"Renvoie la position du sommet de ce rectangle qui est le plus loin dans la "
"direction donnée. Ce point est communément appelé le point de support dans "
"les algorithmes de détection de collision."

msgid ""
"Returns a copy of this rectangle extended on all sides by the given [param "
"amount]. A negative [param amount] shrinks the rectangle instead. See also "
"[method grow_individual] and [method grow_side].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2(4, 4, 8, 8).grow(4) # a is Rect2(0, 0, 16, 16)\n"
"var b = Rect2(0, 0, 8, 4).grow(2) # b is Rect2(-2, -2, 12, 8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2(4, 4, 8, 8).Grow(4); // a is Rect2(0, 0, 16, 16)\n"
"var b = new Rect2(0, 0, 8, 4).Grow(2); // b is Rect2(-2, -2, 12, 8)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une copie de ce rectangle étendu sur tous les côtés par le montant "
"[param amount] donné. Une quantité négative pour [param amount] rétrécit le "
"rectangle à la place. Voir aussi [method grow_individual] et [method "
"grow_side].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2(4, 4, 8, 8).grow(4) # a vaut Rect2(0, 0, 16, 16)\n"
"var b = Rect2(0, 0, 8, 4).grow(2) # b vaut Rect2(-2, -2, 12, 8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2(4, 4, 8, 8).Grow(4); // a vaut Rect2(0, 0, 16, 16)\n"
"var b = new Rect2(0, 0, 8, 4).Grow(2); // b vaut Rect2(-2, -2, 12, 8)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of this rectangle with its [param left], [param top], [param "
"right], and [param bottom] sides extended by the given amounts. Negative "
"values shrink the sides, instead. See also [method grow] and [method "
"grow_side]."
msgstr ""
"Renvoie une copie de ce rectangle avec ses côtés haut, bas, gauche droite "
"étendus par les montants respectifs [param left], [param top], [param right] "
"et [param bottom] donnés. Les valeurs négatives réduisent les côtés à la "
"place. Voir aussi [method grow] et [method grow_side]."

msgid ""
"Returns a copy of this rectangle with its [param side] extended by the given "
"[param amount] (see [enum Side] constants). A negative [param amount] shrinks "
"the rectangle, instead. See also [method grow] and [method grow_individual]."
msgstr ""
"Renvoie une copie de ce rectangle avec le côté [param side] étendus par les "
"le montant [param amount] donné (voir les constantes [enum Side]). Une valeur "
"[param amount] négative rétrécit le rectangle à la place. Voir aussi [method "
"grow] et [method grow_side]."

msgid ""
"Returns [code]true[/code] if this rectangle has positive width and height. "
"See also [method get_area]."
msgstr ""
"Renvoie [code]true[/code] si ce rectangle a une largeur et une hauteur "
"positives. Voir aussi [method get_area]."

msgid ""
"Returns [code]true[/code] if the rectangle contains the given [param point]. "
"By convention, points on the right and bottom edges are [b]not[/b] included.\n"
"[b]Note:[/b] This method is not reliable for [Rect2] with a [i]negative[/i] "
"[member size]. Use [method abs] first to get a valid rectangle."
msgstr ""
"Renvoie [code]true[/code] si le rectangle contient le point [param point] "
"donné. Par convention, les points sur les bords droit et bas [b]ne[/b] sont "
"[b]pas[/b] inclus.\n"
"[b]Note :[/b] Cette méthode n'est pas fiable pour des [Rect2] avec une taille "
"[member size] [i]négative[/i] . Utilisez [method abs] d'abord pour obtenir un "
"rectangle valide."

msgid ""
"Returns the intersection between this rectangle and [param b]. If the "
"rectangles do not intersect, returns an empty [Rect2].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect1 = Rect2(0, 0, 5, 10)\n"
"var rect2 = Rect2(2, 0, 8, 4)\n"
"\n"
"var a = rect1.intersection(rect2) # a is Rect2(2, 0, 3, 4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect1 = new Rect2(0, 0, 5, 10);\n"
"var rect2 = new Rect2(2, 0, 8, 4);\n"
"\n"
"var a = rect1.Intersection(rect2); // a is Rect2(2, 0, 3, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you only need to know whether two rectangles are overlapping, "
"use [method intersects], instead."
msgstr ""
"Renvoie l'intersection entre ce rectangle et [param b]. Si les rectangles ne "
"se croisent pas, renvoie un [Rect2] vide.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect1 = Rect2(0, 0, 5, 10)\n"
"var rect2 = Rect2(2, 0, 8, 4)\n"
"\n"
"var a = rect1.intersection(rect2) # a vaut Rect2(2, 0, 3, 4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect1 = nouveau Rect2(0, 0, 5, 10);\n"
"var rect2 = nouveau Rect2(2, 0, 8, 4);\n"
"\n"
"var a = rect1.Intersection(rect2); // a vaut Rect2(2, 0, 3, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Si vous souhaiter seulement savoir si les deux rectangles se "
"superposent, utilisez [method intersects] à la place."

msgid ""
"Returns [code]true[/code] if this rectangle overlaps with the [param b] "
"rectangle. The edges of both rectangles are excluded, unless [param "
"include_borders] is [code]true[/code]."
msgstr ""
"Renvoie [code]true[/code] si ce rectangle se superpose avec le rectangle "
"[param b]. Les bords des deux rectangles sont exclus, sauf si [param "
"include_borders] vaut [code]true[/code]."

msgid ""
"Returns [code]true[/code] if this rectangle and [param rect] are "
"approximately equal, by calling [method Vector2.is_equal_approx] on the "
"[member position] and the [member size]."
msgstr ""
"Renvoie [code]true[/code] si ce rectangle et [param rect] sont "
"approximativement égaux, en appelant [method Vector2.is_equal_approx] sur "
"[member position] et [member size]."

msgid ""
"Returns [code]true[/code] if this rectangle's values are finite, by calling "
"[method Vector2.is_finite] on the [member position] and the [member size]."
msgstr ""
"Renvoie [code]true[/code] si les valeurs de ce rectangle sont finies, en "
"appelant [method Vector2.is_finite] sur [member position] et [member size]."

msgid ""
"Returns a [Rect2] that encloses both this rectangle and [param b] around the "
"edges. See also [method encloses]."
msgstr ""
"Renvoie un [Rect2] qui encadre à la fois ce rectangle et [param b] autour des "
"bords. Voir aussi [method encloses]."

msgid ""
"The ending point. This is usually the bottom-right corner of the rectangle, "
"and is equivalent to [code]position + size[/code]. Setting this point affects "
"the [member size]."
msgstr ""
"Le point de fin. Il s'agit généralement du coin inférieur droit du rectangle, "
"et est équivalent à [code]position + taille[/code]. Définir ce point affecte "
"la taille [member size]."

msgid "The origin point. This is usually the top-left corner of the rectangle."
msgstr ""
"Le point d'origine. Il s'agit généralement du coin supérieur gauche du "
"rectangle."

msgid ""
"The rectangle's width and height, starting from [member position]. Setting "
"this value also affects the [member end] point.\n"
"[b]Note:[/b] It's recommended setting the width and height to non-negative "
"values, as most methods in Godot assume that the [member position] is the top-"
"left corner, and the [member end] is the bottom-right corner. To get an "
"equivalent rectangle with non-negative size, use [method abs]."
msgstr ""
"La largeur et la hauteur du rectangle, à partir du point [member position]. "
"Définir cette valeur affecte également le point [member end].\n"
"[b]Note :[/b] Il est recommandé de fixer la largeur et la hauteur à des "
"valeurs non négatives, car la plupart des méthodes de Godot supposent que "
"[member position] est le coin supérieur gauche, et [member end] le coin "
"inférieur droit. Pour obtenir un rectangle équivalent avec une taille non "
"négative, utilisez [method abs]."

msgid ""
"Returns [code]true[/code] if the [member position] or [member size] of both "
"rectangles are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si [member position] ou [member size] des deux "
"rectangles n'est pas égaux.\n"
"[b]Note :[/b] En raison d'erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] qui est plus fiable."

msgid ""
"Inversely transforms (multiplies) the [Rect2] by the given [Transform2D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]rect * transform[/code] is equivalent to [code]transform.inverse() * "
"rect[/code]. See [method Transform2D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * rect[/code] can be used instead. See "
"[method Transform2D.affine_inverse]."
msgstr ""
"Transforme (multiplie) de manière inverse le [Rect2] par la matrice de "
"transformation [Transform2D] donnée, avec la supposition que la base de la "
"transformation est orthonormée (c.a.d. une rotation/réflexion est OK, une "
"échelle/un cisaillement ne l'est pas).\n"
"[code]rect * transform[/code] est équivalent à [code]transform.inverse() * "
"rect[/code]. Voir [method Transform2D.inverse].\n"
"Pour transformer par l'inverse d'une transformation affine (par ex. avec une "
"mise à l'échelle), [code]transform.affine_inverse() * rect[/code] peut être "
"utilisé à la place. Voir [method Transform2D.affine_inverse]."

msgid ""
"Returns [code]true[/code] if both [member position] and [member size] of the "
"rectangles are exactly equal, respectively.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les [member position] et [member size] des "
"rectangles sont tous les deux exactement égaux, respectivement.\n"
"[b]Note :[/b] En raison d'erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] qui est plus fiable."

msgid "A 2D axis-aligned bounding box using integer coordinates."
msgstr ""
"Une boîte délimitante 2D alignée sur les axes utilisant des coordonnées "
"entières."

msgid ""
"The [Rect2i] built-in [Variant] type represents an axis-aligned rectangle in "
"a 2D space, using integer coordinates. It is defined by its [member position] "
"and [member size], which are [Vector2i]. Because it does not rotate, it is "
"frequently used for fast overlap tests (see [method intersects]).\n"
"For floating-point coordinates, see [Rect2].\n"
"[b]Note:[/b] Negative values for [member size] are not supported. With "
"negative size, most [Rect2i] methods do not work correctly. Use [method abs] "
"to get an equivalent [Rect2i] with a non-negative size.\n"
"[b]Note:[/b] In a boolean context, a [Rect2i] evaluates to [code]false[/code] "
"if both [member position] and [member size] are zero (equal to [constant "
"Vector2i.ZERO]). Otherwise, it always evaluates to [code]true[/code]."
msgstr ""
"Le type [Variant] intégré [Rect2i] représente un rectangle aligné sur les "
"axes dans un espace 2D, en utilisant des coordonnées entières. Il est défini "
"par sa position [member position] et sa taille [member size], qui sont des "
"[Vector2i]. Comme il ne tourne pas, il est fréquemment utilisé pour les tests "
"de superposition rapide (voir [method intersects]).\n"
"Pour des coordonnées avec des flottants, utilisez [Rect2].\n"
"[b]Note :[/b] Les valeurs négatives pour [member size] ne sont pas "
"supportées. Avec une taille négative, la plupart des méthodes de [Rect2i] ne "
"fonctionnent pas correctement. Utilisez [method abs] pour obtenir un [Rect2i] "
"équivalent avec une taille non négative.\n"
"[b]Note :[/b] Dans un contexte booléen, un [Rect2i] évalue à [code]false[/"
"code] si les deux valeurs [member position] et [member size] sont nulles "
"(équivalent à [constant Vector2i.ZERO]). Sinon, il évalue toujours à "
"[code]true[/code]."

msgid "Constructs a [Rect2i] as a copy of the given [Rect2i]."
msgstr "Construit un [Rect2i] en tant que copie du [Rect2i] donné."

msgid "A 2D rectangle shape used for physics collision."
msgstr "Une forme de rectangle 2D utilisée pour les collisions physiques."

msgid ""
"A 2D rectangle shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape2D].\n"
"[b]Performance:[/b] [RectangleShape2D] is fast to check collisions against. "
"It is faster than [CapsuleShape2D], but slower than [CircleShape2D]."
msgstr ""
"Une forme de rectangle 2D, destinée à être utilisée pour la physique. "
"Habituellement utilisé pour fournir une forme à un [CollisionShape2D].\n"
"[b]Performance :[/b] [RectangleShape2D] est rapide pour vérifier les "
"collisions. Elle est plus rapide que [CapsuleShape2D], mais plus lente que "
"[CircleShape2D]."

msgid "The rectangle's width and height."
msgstr "La largeur et la hauteur du rectangle."

msgid "Base class for reference-counted objects."
msgstr "Classe de base pour les objets avec références comptées."

msgid "Returns the current reference count."
msgstr "Renvoie le compte de références actuel."

msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
"Initialise le compteur de référence interne. Utilisez ceci seulement si vous "
"savez vraiment ce que vous faites.\n"
"Renvoie si l'initialisation a été réussie."

msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns [code]true[/code] if the increment was successful, [code]false[/code] "
"otherwise."
msgstr ""
"Augmente le compteur de référence interne. Utilisez ceci seulement si vous "
"savez vraiment ce que vous faites.\n"
"Renvoie [code]true[/code] si l'augmentation a réussi, [code]false[/code] "
"sinon."

msgid ""
"Sets the border width of the [ReferenceRect]. The border grows both inwards "
"and outwards with respect to the rectangle box."
msgstr ""
"Définit la largeur de la bordure du [ReferenceRect]. La bordure va à la fois "
"vers l'intérieur et vers l'extérieur par rapport aux limites du rectangle."

msgid ""
"Captures its surroundings to create fast, accurate reflections from a given "
"point."
msgstr ""
"Capture son environnement pour créer des réflexions rapides et précises "
"depuis un point donné."

msgid "Reflection probes"
msgstr "Sondes de réflexion"

msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location.\n"
"[b]Note:[/b] To better fit rectangle-shaped rooms that are not aligned to the "
"grid, you can rotate the [ReflectionProbe] node."
msgstr ""
"Si [code]true[/code], active la projection sur boîte. Cela rend les "
"réflexions plus correctes dans les salles en forme de rectangle en décalant "
"le centre de réflexion en fonction de l'emplacement de la caméra.\n"
"[b]Note :[/b] Pour mieux s'adapter aux pièces en forme de rectangle qui ne "
"sont pas alignées sur la grille, vous pouvez tourner le nœud "
"[ReflectionProbe]."

msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
"Définit l'intensité de la réflexion. L'intensité modifie l'importance de "
"l'effet de réflexion."

msgid ""
"Sets how frequently the [ReflectionProbe] is updated. Can be [constant "
"UPDATE_ONCE] or [constant UPDATE_ALWAYS]."
msgstr ""
"Définit la fréquence de mise à jour de la [ReflectionProbe]. Peut être "
"[constant UPDATE_ONCE] ou [constant UPDATE_ALWAYS]."

msgid ""
"Update the probe once on the next frame (recommended for most objects). The "
"corresponding radiance map will be generated over the following six frames. "
"This takes more time to update than [constant UPDATE_ALWAYS], but it has a "
"lower performance cost and can result in higher-quality reflections. The "
"ReflectionProbe is updated when its transform changes, but not when nearby "
"geometry changes. You can force a [ReflectionProbe] update by moving the "
"[ReflectionProbe] slightly in any direction."
msgstr ""
"Mettre à jour la sonde une fois lors de la prochaine trame (recommandé pour "
"la plupart des objets). La radiance map correspondante sera générée sur les "
"six trames suivantes. Cela prend plus de temps pour mettre à jour que "
"[constant UPDATE_ALWAYS], mais a un coût sur les performances inférieur et "
"peut entraîner des réflexions de qualité supérieure. La ReflectionProbe est "
"mise à jour lorsque sa transformation change, mais pas lorsque la géométrie "
"voisine change. Vous pouvez forcer une [ReflectionProbe] à jour en déplaçant "
"la [ReflectionProbe] légèrement dans n'importe quelle direction."

msgid ""
"Update the probe every frame. This provides better results for fast-moving "
"dynamic objects (such as cars). However, it has a significant performance "
"cost. Due to the cost, it's recommended to only use one ReflectionProbe with "
"[constant UPDATE_ALWAYS] at most per scene. For all other use cases, use "
"[constant UPDATE_ONCE]."
msgstr ""
"Met à jour la sonde à chaque trame. Cela fournit de meilleurs résultats pour "
"les objets dynamiques en mouvement rapide (comme les voitures). Cependant, "
"cela a un coût sur les performances important. En raison du coût, il est "
"recommandé d'utiliser seulement une ReflectionProbe avec [constant "
"UPDATE_ALWAYS] au maximum par scène. Pour tous les autres cas d'utilisation, "
"utilisez [constant UPDATE_ONCE]."

msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
"Cette méthode réinitialise l'état de l'objet, comme si il était fraîchement "
"créé. En fait, elle désaffecte l'expression régulière de cet objet."

msgid "Returns the original search pattern that was compiled."
msgstr "Renvoie le motif de recherche original qui a été compilé."

msgid "Returns whether this object has a valid search pattern assigned."
msgstr ""
"Renvoie si cet objet à un motif de recherche valide qui lui est assigné."

msgid "Contains the results of a [RegEx] search."
msgstr "Contient le résultat d'une recherche avec une [RegEx]."

msgid "Returns the number of capturing groups."
msgstr "Renvoie le nombre de groupes de capture."

msgid ""
"[RemoteTransform2D] caches the remote node. It may not notice if the remote "
"node disappears; [method force_update_cache] forces it to update the cache "
"again."
msgstr ""
"[RemoteTransform2D] met en cache le nœud distant. Il peut ne pas remarquer "
"que si le nœud distant disparaît, [method force_update_cache] le force à "
"mettre à jour le cache à nouveau."

msgid ""
"The [NodePath] to the remote node, relative to the RemoteTransform2D's "
"position in the scene."
msgstr ""
"Le [NodePath] du nœud distant, relatif à la position du RemoteTransform2D "
"dans la scène."

msgid "If [code]true[/code], the remote node's position is updated."
msgstr "Si [code]true[/code], la position du nœud distant a changé."

msgid "If [code]true[/code], the remote node's rotation is updated."
msgstr "Si [code]true[/code], la rotation du nœud distant a changé."

msgid "If [code]true[/code], the remote node's scale is updated."
msgstr "Si [code]true[/code], la mise à l'échelle du nœud distant a changé."

msgid ""
"If [code]true[/code], global coordinates are used. If [code]false[/code], "
"local coordinates are used."
msgstr ""
"Si [code]true[/code], les coordonnées globales sont utilisées. Si "
"[code]false[/code], ce sont les locales."

msgid ""
"[RemoteTransform3D] caches the remote node. It may not notice if the remote "
"node disappears; [method force_update_cache] forces it to update the cache "
"again."
msgstr ""
"[RemoteTransform3D] met en cache des nœuds animés. Il peut ne pas remarquer "
"si un nœud disparaît, [method force_update_cache] le force à mettre à jour le "
"cache à nouveau."

msgid "Using compute shaders"
msgstr "Utiliser des shaders de calcul"

msgid ""
"Returns the name of the type of object for the given [param type_index]. This "
"value must be in range [code][0; get_tracked_object_type_count - 1][/code]. "
"If [method get_tracked_object_type_count] is 0, then type argument is ignored "
"and always returns the same string.\n"
"The return value is important because it gives meaning to the types passed to "
"[method get_driver_memory_by_object_type], [method "
"get_driver_allocs_by_object_type], [method get_device_memory_by_object_type], "
"and [method get_device_allocs_by_object_type]. Examples of strings it can "
"return (not exhaustive):\n"
"- DEVICE_MEMORY\n"
"- PIPELINE_CACHE\n"
"- SWAPCHAIN_KHR\n"
"- COMMAND_POOL\n"
"Thus if e.g. [code]get_tracked_object_name(5)[/code] returns "
"\"COMMAND_POOL\", then [code]get_device_memory_by_object_type(5)[/code] "
"returns the bytes used by the GPU for command pools.\n"
"This is only used by Vulkan in debug builds. Godot must also be started with "
"the [code]--extra-gpu-memory-tracking[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Renvoie le nom du type d'objet pour l'index [param type_index]. Cette valeur "
"doit être dans l'intervalle [code][0; get_tracked_object_type_count - 1][/"
"code]. Si [method get_tracked_object_type_count] vaut 0, alors l'argument de "
"type est ignoré et renvoie toujours la même chaîne.\n"
"La valeur de renvoi est importante parce qu'elle donne un sens aux types "
"passés à [method get_driver_memory_by_object_type], [method "
"get_driver_allocs_by_object_type], [method get_device_memory_by_object_type], "
"et [method get_device_allocs_by_object_type]. Exemples de chaînes qu'elle "
"peut renvoyer (non exhaustif) :\n"
"- DEVICE_MEMORY\n"
"- PIPELINE_CACHE\n"
"- SWAPCHAIN_KHR\n"
"- COMMAND_POOL\n"
"Ainsi, si par exemple [code]get_tracked_object_name(5)[/code] renvoie "
"\"COMMAND_POOL\", alors [code]get_device_memory_by_object_type(5)[/code] "
"renvoie les octets utilisés par le GPU pour les pools de commande.\n"
"Ceci n'est utilisé que par Vulkan dans les compilations de débogage. Godot "
"doit également être lancé avec l'[url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]argument en ligne de commande[/url] [code]--extra-"
"gpu-memory-tracking[/code]."

msgid ""
"Use [method get_driver_resource] with [constant DRIVER_RESOURCE_TEXTURE] "
"instead."
msgstr ""
"Utilisez [method get_driver_resource] avec [constant DRIVER_RESOURCE_TEXTURE] "
"à la place."

msgid "Represents the size of the [enum DeviceType] enum."
msgstr "Représente la taille de l'énumération [enum DeviceType]."

msgid "- Vulkan: [code]VkImage[/code]."
msgstr "- Vulkan : [code]VkImage[/code]."

msgid "- Vulkan: [code]VkSampler[/code]."
msgstr "- Vulkan : [code]VkSampler[/code]."

msgid "- Vulkan: [code]VkDescriptorSet[/code]."
msgstr "- Vulkan : [code]VkDescriptorSet[/code]."

msgid "Use [constant DRIVER_RESOURCE_LOGICAL_DEVICE] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_LOGICAL_DEVICE] à la place."

msgid "Use [constant DRIVER_RESOURCE_PHYSICAL_DEVICE] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_PHYSICAL_DEVICE] à la place."

msgid "Use [constant DRIVER_RESOURCE_TOPMOST_OBJECT] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_TOPMOST_OBJECT] à la place."

msgid "Use [constant DRIVER_RESOURCE_COMMAND_QUEUE] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_COMMAND_QUEUE] à la place."

msgid "Use [constant DRIVER_RESOURCE_QUEUE_FAMILY] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_QUEUE_FAMILY] à la place."

msgid "Use [constant DRIVER_RESOURCE_TEXTURE] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_TEXTURE] à la place."

msgid "Use [constant DRIVER_RESOURCE_TEXTURE_VIEW] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_TEXTURE_VIEW] à la place."

msgid "Use [constant DRIVER_RESOURCE_TEXTURE_DATA_FORMAT] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_TEXTURE_DATA_FORMAT] à la place."

msgid "Use [constant DRIVER_RESOURCE_SAMPLER] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_SAMPLER] à la place."

msgid "Use [constant DRIVER_RESOURCE_UNIFORM_SET] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_UNIFORM_SET] à la place."

msgid "Use [constant DRIVER_RESOURCE_BUFFER] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_BUFFER] à la place."

msgid "Use [constant DRIVER_RESOURCE_COMPUTE_PIPELINE] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_COMPUTE_PIPELINE] à la place."

msgid "Use [constant DRIVER_RESOURCE_RENDER_PIPELINE] instead."
msgstr "Utilisez [constant DRIVER_RESOURCE_RENDER_PIPELINE] à la place."

msgid "Represents the size of the [enum DataFormat] enum."
msgstr "Représente la taille de l'énumération [enum DataFormat]."

msgid "1-dimensional texture."
msgstr "Texture à 1 dimension."

msgid "2-dimensional texture."
msgstr "Texture à 2 dimension."

msgid "3-dimensional texture."
msgstr "Texture à 3 dimensions."

msgid "[Cubemap] texture."
msgstr "Texture [Cubemap]."

msgid "Array of 1-dimensional textures."
msgstr "Tableau de textures unidimensionnelles."

msgid "Array of 2-dimensional textures."
msgstr "Tableau de textures bidimensionnelles."

msgid "Array of [Cubemap] textures."
msgstr "Tableau de textures [Cubemap]."

msgid "Represents the size of the [enum TextureType] enum."
msgstr "Représente la taille de l’énumération [enum TextureType]."

msgid "Perform 2 texture samples."
msgstr "Effectue 2 échantillonnages de texture."

msgid "Perform 4 texture samples."
msgstr "Effectue 4 échantillonnages de texture."

msgid "Represents the size of the [enum TextureSamples] enum."
msgstr "Représente la taille de l’énumération [enum TextureSamples]."

msgid "Texture can be sampled."
msgstr "La texture peut être échantillonnée."

msgid "Return the sampled value as-is."
msgstr "Renvoie la valeur échantillonnée telle quelle."

msgid "Always return [code]0.0[/code] when sampling."
msgstr "Toujours renvoyer [code]0.0[/code] lors de l’échantillonnage."

msgid "Always return [code]1.0[/code] when sampling."
msgstr "Toujours renvoyer [code]1.0[/code] lors de l’échantillonnage."

msgid "Sample the red color channel."
msgstr "Échantillonne le canal du rouge."

msgid "Sample the green color channel."
msgstr "Échantillonne le canal du vert."

msgid "Sample the blue color channel."
msgstr "Échantillonne le canal du bleu."

msgid "Sample the alpha channel."
msgstr "Échantillonne le canal alpha."

msgid "Represents the size of the [enum TextureSwizzle] enum."
msgstr "Représente la taille de l’énumération [enum TextureSwizzle]."

msgid "2-dimensional texture slice."
msgstr "Tranche de texture 2 dimensionnelle."

msgid "Cubemap texture slice."
msgstr "Tranche de texture cubemap."

msgid "3-dimensional texture slice."
msgstr "Tranche de texture 3-dimensionnelle."

msgid "Sample with repeating enabled."
msgstr "Échantillonne avec la répétition activée."

msgid "Represents the size of the [enum SamplerRepeatMode] enum."
msgstr "Représente la taille de l'énumération [enum SamplerRepeatMode]."

msgid "Represents the size of the [enum SamplerBorderColor] enum."
msgstr "Représente la taille de l'énumération [enum SamplerBorderColor]."

msgid "Sampler uniform."
msgstr "Uniform d'échantillonneur."

msgid "Texture uniform."
msgstr "Texture uniforme."

msgid "Image uniform."
msgstr "Uniform d'image."

msgid "Image buffer uniform."
msgstr "Uniform de buffer d'image."

msgid "Represents the size of the [enum UniformType] enum."
msgstr "Représente la taille de l'énumération [enum UniformType]."

msgid "Represents the size of the [enum RenderPrimitive] enum."
msgstr "Représente la taille de l'énumération [enum RenderPrimitive]."

msgid "Represents the size of the [enum StencilOperation] enum."
msgstr "Représente la taille de l'énumération [enum StencilOperation]."

msgid "\"Less than\" comparison."
msgstr "Comparaison \"Moins que\"."

msgid "\"Equal\" comparison."
msgstr "Comparaison \"égale\"."

msgid "\"Less than or equal\" comparison."
msgstr "Comparaison \"Inférieur ou égal\"."

msgid "\"Greater than\" comparison."
msgstr "Comparaison \"Plus que\"."

msgid "\"Not equal\" comparison."
msgstr "Comparaison \"Inégal\"."

msgid "\"Greater than or equal\" comparison."
msgstr "Comparaison \"Supérieur ou égal\"."

msgid "Represents the size of the [enum CompareOperator] enum."
msgstr "Représente la taille de l'énumération [enum CompareOperator]."

msgid ""
"Clear logic operation (result is always [code]0[/code]). See also [constant "
"LOGIC_OP_SET]."
msgstr ""
"Opération logique Clear (le résultat est toujours [code]0[/code]). Voir aussi "
"[constant LOGIC_OP_SET]."

msgid "AND logic operation."
msgstr "Opération logique AND."

msgid ""
"AND logic operation with the [i]destination[/i] operand being inverted. See "
"also [constant LOGIC_OP_AND_INVERTED]."
msgstr ""
"Opération logique AND avec l'opérande de [i]destination[/i] inversé. Voir "
"aussi [constant LOGIC_OP_AND_INVERTED]."

msgid ""
"Copy logic operation (keeps the [i]source[/i] value as-is). See also "
"[constant LOGIC_OP_COPY_INVERTED] and [constant LOGIC_OP_NO_OP]."
msgstr ""
"Copie l'opération logique (garde la valeur [i]source[/i] telle quelle). Voir "
"aussi [constant LOGIC_OP_COPY_INVERTED] et [constant LOGIC_OP_NO_OP]."

msgid ""
"AND logic operation with the [i]source[/i] operand being inverted. See also "
"[constant LOGIC_OP_AND_REVERSE]."
msgstr ""
"Opération logique AND avec l'opérande [i]source[/i] inversé. Voir aussi "
"[constant LOGIC_OP_AND_REVERSE]."

msgid ""
"No-op logic operation (keeps the [i]destination[/i] value as-is). See also "
"[constant LOGIC_OP_COPY]."
msgstr ""
"Opération logique no-op (garde la valeur de [i]destination[/i] telle "
"qu'elle). Voir aussi [constant LOGIC_OP_COPY]."

msgid "Exclusive or (XOR) logic operation."
msgstr "Opération logique exclusif ou (XOR)."

msgid "OR logic operation."
msgstr "Opération logique OR."

msgid "Not-OR (NOR) logic operation."
msgstr "Opération logique non-OU (NOR)."

msgid "Not-XOR (XNOR) logic operation."
msgstr "Opération logique non-OU exclusif (XNOR)."

msgid "Invert logic operation."
msgstr "Opération logique d'inverse."

msgid ""
"OR logic operation with the [i]destination[/i] operand being inverted. See "
"also [constant LOGIC_OP_OR_REVERSE]."
msgstr ""
"Opération logique OR avec l'opérande de [i]destination[/i] inversé. Voir "
"aussi [constant LOGIC_OP_OR_REVERSE]."

msgid ""
"NOT logic operation (inverts the value). See also [constant LOGIC_OP_COPY]."
msgstr ""
"Opération logique NOT (inverse la valeur). Voir aussi [constant "
"LOGIC_OP_COPY]."

msgid ""
"OR logic operation with the [i]source[/i] operand being inverted. See also "
"[constant LOGIC_OP_OR_REVERSE]."
msgstr ""
"Opération logique OR avec l'opérande [i]source[/i] inversé. Voir aussi "
"[constant LOGIC_OP_OR_REVERSE]."

msgid "Not-AND (NAND) logic operation."
msgstr "Opération logique non-ET (NAND)."

msgid ""
"SET logic operation (result is always [code]1[/code]). See also [constant "
"LOGIC_OP_CLEAR]."
msgstr ""
"Opération logique SET (le résultat est toujours [code]1[/code]). Voir aussi "
"[constant LOGIC_OP_CLEAR]."

msgid "Represents the size of the [enum LogicOperation] enum."
msgstr "Représente la taille de l'énumération [enum LogicOperation]."

msgid "Constant [code]0.0[/code] blend factor."
msgstr "Facteur de mélange [code]0.0[/code] constant."

msgid "Constant [code]1.0[/code] blend factor."
msgstr "Facteur de mélange constant [code]1.0[/code]."

msgid "Represents the size of the [enum BlendFactor] enum."
msgstr "Représente la taille de l'énumération [enum BlendFactor]."

msgid "Represents the size of the [enum BlendOperation] enum."
msgstr "Représente la taille de l'énumération [enum BlendOperation]."

msgid "Clear the whole framebuffer or its specified region."
msgstr "Efface le buffer de trame entier ou sa région spécifiée."

msgid "Represents the size of the [enum InitialAction] enum."
msgstr "Représente la taille de l'énumération [enum InitialAction]."

msgid "Final actions are solved automatically by RenderingDevice."
msgstr "Les actions finales sont résolues automatiquement par RenderingDevice."

msgid "Represents the size of the [enum FinalAction] enum."
msgstr "Représente la taille de l'énumération [enum FinalAction]."

msgid "Represents the size of the [enum ShaderStage] enum."
msgstr "Représente la taille de l'énumération [enum ShaderStage]."

msgid "Boolean specialization constant."
msgstr "Constante de spécialisation de booléen."

msgid "Integer specialization constant."
msgstr "Constante de spécialisation d'entier."

msgid "Memory taken by textures."
msgstr "Mémoire prise par des textures."

msgid "Memory taken by buffers."
msgstr "Mémoire prise par les tampons."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"BLIT_PASS\"[/code] for added context as to when the crash occurred."
msgstr ""
"Lors d'un crash GPU en mode développement ou débogage, le message d'erreur de "
"Godot comprendra [code]\"BLIT_PASS\"[/code] pour un contexte ajouté à quand "
"l'accident s'est produit."

msgid "Server for anything visible."
msgstr "Serveur pour tout ce qui est visible."

msgid "Optimization using Servers"
msgstr "Optimisation à l'aide de serveurs"

msgid ""
"Sets camera to use orthogonal projection, also known as orthographic "
"projection. Objects remain the same size on the screen no matter how far away "
"they are."
msgstr ""
"Utilise une projection orthogonale pour la caméra. Les objets affichés "
"apparaissent avec la même taille peu importe leur éloignement de la caméra."

msgid ""
"Sets camera to use perspective projection. Objects on the screen becomes "
"smaller when they are far away."
msgstr ""
"Utilise la perspective comme projection pour la caméra. Ainsi, les objets "
"affichés apparaissent plus petits quand ils sont plus éloignés."

msgid "Sets [Transform3D] of camera."
msgstr "Définit la [Transform3D] de la caméra."

msgid "See also [method CanvasItem.draw_lcd_texture_rect_region]."
msgstr "Voir aussi [method CanvasItem.draw_lcd_texture_rect_region]."

msgid "See also [method CanvasItem.draw_msdf_texture_rect_region]."
msgstr "Voir aussi [method CanvasItem.draw_msdf_texture_rect_region]."

msgid ""
"Sets a [Transform2D] that will be used to transform subsequent canvas item "
"commands."
msgstr ""
"Définit une [Transform2D] qui sera utilisé pour transformer les commandes "
"d'objet de toile ultérieures."

msgid "Attaches a skeleton to the [CanvasItem]. Removes the previous skeleton."
msgstr "Attache un squelette au [CanvasItem]. Retire le squelette précédent."

msgid "Clears the [CanvasItem] and removes all commands in it."
msgstr "Efface le [CanvasItem] et enlève toutes les commandes."

msgid "Sets the index for the [CanvasItem]."
msgstr "Définit l’index du [CanvasItem]."

msgid "Sets if the [CanvasItem] uses its parent's material."
msgstr "Définit si le [CanvasItem] utilise le même matériau que son parent."

msgid ""
"Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are drawn "
"first)."
msgstr ""
"Définit l'index Z du [CanvasItem], c'est sa position d'affichage (les plus "
"faibles index seront affichés avant les autres)."

msgid ""
"Attaches the canvas light to the canvas. Removes it from its previous canvas."
msgstr ""
"Attache une lumière de canevas à une instance. Retire la lumière précédemment "
"assignée à cette instance."

msgid ""
"Attaches a light occluder to the canvas. Removes it from its previous canvas."
msgstr ""
"Attache un occulteur de lumière à une instance. Retire l'occulteur "
"précédemment assigné à cette instance."

msgid "Enables or disables light occluder."
msgstr "Active ou désactive l'occulteur de lumière."

msgid ""
"The light mask. See [LightOccluder2D] for more information on light masks."
msgstr ""
"Le masque de lumière. Voir [LightOccluder2D] pour plus d'informations sur les "
"masques de lumière."

msgid "Sets a light occluder's polygon."
msgstr "Définit le polygone d'un occulteur de lumière."

msgid "Sets the color for a light."
msgstr "Définit la couleur pour une lumière."

msgid "Enables or disables a canvas light."
msgstr "Active ou désactive une lumière du canevas."

msgid "Sets a canvas light's energy."
msgstr "Définit l'énergie d'une lumière du canevas."

msgid "Sets the color of the canvas light's shadow."
msgstr "Définit la couleur de l'ombre du canevas."

msgid "Smoothens the shadow. The lower, the smoother."
msgstr "L'intensité du lissage de l'ombre."

msgid "Sets the canvas light's [Transform2D]."
msgstr "Définit la [Transform2D] de la lumière du canevas."

msgid "Sets the shape of the occluder polygon."
msgstr "Définit la forme du polygone occulteur."

msgid "Modulates all colors in the given canvas."
msgstr "Module toutes les couleurs du canevas spécifié."

msgid "Enables/disables this rendering effect."
msgstr "Active/désactive cet effet de rendu."

msgid "Sets the intensity of the background color."
msgstr "Définit l'intensité de la couleur de l'arrière-plan."

msgid "Sets the maximum layer to use if using Canvas background mode."
msgstr ""
"Définit le calque maximal à utiliser si l'arrière-plan utilise un canevas."

msgid ""
"Configures fog depth for the specified environment RID. Only has an effect "
"when the fog mode of the environment is [constant ENV_FOG_MODE_DEPTH]. See "
"[code]fog_depth_*[/code] properties in [Environment] for more information."
msgstr ""
"Configure la profondeur du brouillard pour le RID d'environnement spécifie. A "
"un effet seulement lorsque le mode brouillard de l'environnement est "
"[constant ENV_FOG_MODE_DEPTH]. Voir les propriétés [code]fog_depth_*[/code] "
"dans [Environment] pour plus d'informations."

msgid ""
"Sets the resolution of the volumetric fog's froxel buffer. [param size] is "
"modified by the screen's aspect ratio and then used to set the width and "
"height of the buffer. While [param depth] is directly used to set the depth "
"of the buffer."
msgstr ""
"Définit la résolution du buffer de froxel du brouillard volumétrique. [param "
"size] est modifié par le rapport d'aspect de l'écran et ensuite utilisé pour "
"définir la largeur et la hauteur du buffer. Alors que [param depth] est "
"directement utilisé pour définir la profondeur du buffer."

msgid "Returns the parameters of a shader."
msgstr "Renvoie les paramètres d'un shader."

msgid ""
"Returns the version of the graphics video adapter [i]currently in use[/i] "
"(e.g. \"1.2.189\" for Vulkan, \"3.3.0 NVIDIA 510.60.02\" for OpenGL). This "
"version may be different from the actual latest version supported by the "
"hardware, as Godot may not always request the latest version. See also "
"[method OS.get_video_adapter_driver_info].\n"
"[b]Note:[/b] When running a headless or server binary, this function returns "
"an empty string."
msgstr ""
"Renvoie la version de l'adaptateur vidéo graphique [i]en cours d'utilisation[/"
"i] (par exemple \"1.2.189\" pour Vulkan, \"3.0 NVIDIA 510.60.02\" pour "
"OpenGL). Cette version peut être différente de la dernière version supportée "
"par le matériel, car Godot ne peut pas toujours demander la dernière version. "
"Voir aussi [method OS.get_video_adapter_driver_info].\n"
"[b]Note :[/b] Lors de l'exécution de binaires sans tête ou de serveur, cette "
"fonction renvoie une chaîne vide."

msgid ""
"Returns the name of the video adapter (e.g. \"GeForce GTX 1080/PCIe/SSE2\").\n"
"[b]Note:[/b] When running a headless or server binary, this function returns "
"an empty string.\n"
"[b]Note:[/b] On the web platform, some browsers such as Firefox may report a "
"different, fixed GPU name such as \"GeForce GTX 980\" (regardless of the "
"user's actual GPU model). This is done to make fingerprinting more difficult."
msgstr ""
"Renvoie le nom de l'adaptateur vidéo (par exemple \"GeForce GTX 1080/PCIe/"
"SSE2\").\n"
"[b]Note :[/b] Lors de l'exécution de binaires sans tête ou de serveur, cette "
"fonction renvoie une chaîne vide.\n"
"[b]Note :[/b] Sur la plate-forme web, certains navigateurs comme Firefox "
"peuvent rapporter un nom de GPU différent, fixe tel que \"GeForce GTX 980\" "
"(peu importe le modèle de GPU réel de l'utilisateur). Ceci est fait pour "
"rendre le fingerprinting plus difficile."

msgid ""
"Returns the type of the video adapter. Since dedicated graphics cards from a "
"given generation will [i]usually[/i] be significantly faster than integrated "
"graphics made in the same generation, the device type can be used as a basis "
"for automatic graphics settings adjustment. However, this is not always true, "
"so make sure to provide users with a way to manually override graphics "
"settings.\n"
"[b]Note:[/b] When using the OpenGL rendering driver or when running in "
"headless mode, this function always returns [constant "
"RenderingDevice.DEVICE_TYPE_OTHER]."
msgstr ""
"Renvoie le type de l'adaptateur vidéo. Comme les cartes graphiques dédiées "
"d'une génération donnée seront [i]habituellement[/i] beaucoup plus rapides "
"que les graphiques intégrés fabriqués dans la même génération, le type de "
"périphérique peut être utilisé comme base pour le réglage automatique des "
"paramètres graphiques. Cependant, ce n'est pas toujours vrai, assurez-vous de "
"fournir aux utilisateurs un moyen de définir manuellement les paramètres "
"graphiques.\n"
"[b]Note :[/b] Lors de l'utilisation du pilote de rendu OpenGL ou en mode sans "
"tête, cette fonction renvoie toujours [constant "
"RenderingDevice.DEVICE_TYPE_OTHER]."

msgid ""
"Returns the vendor of the video adapter (e.g. \"NVIDIA Corporation\").\n"
"[b]Note:[/b] When running a headless or server binary, this function returns "
"an empty string."
msgstr ""
"Renvoie le vendeur de l'adaptateur vidéo (par exemple \"NVIDIA "
"Corporation\").\n"
"[b]Note :[/b] Lors de l'exécution d'une version sans graphique ou de serveur, "
"cette fonction retourne une chaîne vide."

msgid ""
"Attaches a skeleton to an instance. Removes the previous skeleton from the "
"instance."
msgstr ""
"Attache un squelette à une instance. Retire le squelette précédemment assigné "
"à cette instance."

msgid ""
"Creates a visual instance, adds it to the RenderingServer, and sets both base "
"and scenario. It can be accessed with the RID that is returned. This RID will "
"be used in all [code]instance_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method. This is a shorthand for using "
"[method instance_create] and setting the base and scenario manually."
msgstr ""
"Crée une instance visuelle et l’ajoute au RenderingServer, en définissant à "
"la fois la base et le scénario. Elle peut être consultée avec le RID qui est "
"renvoyée. Ce RID peut être utilisé dans la plupart des fonctions "
"[code]instance_*[/code] du RenderingServer.\n"
"Une fois terminé avec votre RID, vous voudrez libérer le RID à l’aide de la "
"méthode statique [method free_rid] du RenderingServer. Il s'agit d'un "
"raccourci pour utiliser [method instance_create] et définir manuellement la "
"base et le scénario."

msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
"cast a shadow on both sides of the mesh, set the mesh to use double-sided "
"shadows with [method instance_geometry_set_cast_shadows_setting]. Equivalent "
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
"Si [code]true[/code], inverse le culling de la face arrière du maillage. Cela "
"peut être utile lorsque vous avez un maillage plat qui a une lumière derrière "
"elle. Si vous avez besoin de lancer une ombre sur les deux côtés du maillage, "
"définissez le maillage pour utiliser des ombres bifaces avec [method "
"instance_geometry_set_cast_shadows_setting]. Équivalent de [member "
"Light3D.shadow_reverse_cull_face]."

msgid "Returns the value of a certain material's parameter."
msgstr "Renvoie la valeur du paramètre du matériau."

msgid "Sets an object's next material."
msgstr "Définit le prochain matériau d’un objet."

msgid "Sets a material's parameter."
msgstr "Définit le paramètre d'un matériau."

msgid "Sets a material's render priority."
msgstr "Définit la priorité de rendu d’un matériau."

msgid "Sets a shader material's shader."
msgstr "Définit l’ombrage d’un matériau ombragé."

msgid "Removes all surfaces from a mesh."
msgstr "Enlève toutes les surfaces d’un maillage."

msgid "Returns a mesh's blend shape count."
msgstr "Renvoie le nombre de blend shape d’un maillage."

msgid "Returns a mesh's blend shape mode."
msgstr "Renvoie le mode de blend shape d’un maillage."

msgid "Returns a mesh's custom aabb."
msgstr "Renvoie l’aabb personnalisée d’un maillage."

msgid "Returns a mesh's number of surfaces."
msgstr "Renvoie le nombre de surfaces d'un maillage."

msgid "Sets a mesh's custom aabb."
msgstr "Définit l’aabb personnalisé d’un maillage."

msgid "Returns a mesh's surface's material."
msgstr "Retourne le matériau de la surface du maillage."

msgid "Sets a mesh's surface's material."
msgstr "Définit le matériau de la surface du maillage."

msgid "Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
"Renvoie le RID du maillage qui sera utilisé pour l'affichage de ce multimesh."

msgid "Returns the color by which the specified instance will be modulated."
msgstr "Renvoie la couleur par laquelle l'instance spécifiée sera modulée."

msgid "Returns the [Transform3D] of the specified instance."
msgstr "Renvoie la [Transform3D] de l'instance spécifiée."

msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
"Définit la couleur dans laquelle l'instance sera teintée. Équivalent à "
"[method MultiMesh.set_instance_color]."

msgid ""
"Sets the [Transform3D] for this instance. Equivalent to [method "
"MultiMesh.set_instance_transform]."
msgstr ""
"Définit la [Transform3D] pour cette instance. Équivalent à [method "
"MultiMesh.set_instance_transform]."

msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member "
"MultiMesh.mesh]."
msgstr ""
"Définit le maillage à utiliser pour le multimesh. Équivalent à [member "
"MultiMesh.mesh]."

msgid "Turns on and off physics interpolation for this MultiMesh resource."
msgstr ""
"Active et désactive l'interpolation physique pour cette ressource MultiMesh."

msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
"Renvoie [code]true[/code] si les particules sont actuellement en train d'être "
"émises."

msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are set "
"to inactive."
msgstr ""
"Renvoie [code]true[/code] si les particules ne sont pas émises et qu'elles "
"sont inactives."

msgid ""
"Sets the [Transform3D] that will be used by the particles when they first "
"emit."
msgstr ""
"Définit la [Transform3D] qui sera utilisée par les particules au début de "
"leur émission."

msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent to "
"[member ReflectionProbe.interior]."
msgstr ""
"Si [code]true[/code], les réflexions ignoreront la contribution du ciel. "
"Équivalent à [member ReflectionProbe.interior]."

msgid "Returns the [Transform3D] set for a specific bone of this skeleton."
msgstr "Renvoie la [Transform3D] définie pour un os spécifique de ce squelette."

msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr "Renvoie la [Transform2D] définie pour l'os spécifié pour ce squelette."

msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr "Définit la [Transform2D] pour un os spécifique de ce squelette."

msgid "Returns the number of bones allocated for this skeleton."
msgstr "Renvoie le nombre d'os alloués pour ce squelette."

msgid "ProxyTexture was removed in Godot 4."
msgstr "ProxyTexture a été retiré dans Godot 4."

msgid "Sets a viewport's camera."
msgstr "Définit la caméra de la fenêtre d'affichage."

msgid "Sets a viewport's canvas."
msgstr "Définit le canevas de la fenêtre d'affichage."

msgid "Returns the viewport's last rendered frame."
msgstr "Renvoie la dernière trame rendue du viewport."

msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
"Si [code]true[/code], définit cette fenêtre d'affichage comme active, sinon "
"comme inactive."

msgid "Sets the transformation of a viewport's canvas."
msgstr "Définit la transformation du canevas de la fenêtre d'affichage."

msgid "Sets the viewport's global transformation matrix."
msgstr "Définit la matrice de transformation globale de la fenêtre d'affichage."

msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr ""
"Si [code]true[/code], la fenêtre d'affichage rend son arrière-plan de manière "
"transparente."

msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
"Si [code]true[/code], la fenêtre d'affichage utilise la réalité augmentée ou "
"virtuelle. Voir [XRInterface]."

msgid "Number of weights/bones per vertex."
msgstr "Nombre de poids / os par sommet."

msgid "The minimum Z-layer for canvas items."
msgstr "Le niveau minimal du calque de profondeur pour les éléments de canevas."

msgid "The maximum Z-layer for canvas items."
msgstr "Le niveau maximal du calque de profondeur pour les éléments de canevas."

msgid "The maximum canvas layer."
msgstr "La couche de canevas maximale."

msgid "2D texture."
msgstr "Texture 2D."

msgid "Layered texture."
msgstr "Texture avec couches."

msgid "3D texture."
msgstr "Texture 3D."

msgid "Cubemap texture (see [Cubemap])."
msgstr "Texture Cubemap (voir [Cubemap])."

msgid "Back face of a [Cubemap]."
msgstr "Face d'arrière d'une [Cubemap]."

msgid "Shader is a 3D shader."
msgstr "Ce shader est utilisé en 3D."

msgid "Shader is a 2D shader."
msgstr "Ce shader est utilisé en 2D."

msgid "Represents the size of the [enum ShaderMode] enum."
msgstr "Représente la taille de l'énumération [enum ShaderMode]."

msgid "The minimum renderpriority of all materials."
msgstr "La priorité minimale de rendu de tous les matériaux."

msgid "The maximum renderpriority of all materials."
msgstr "La priorité maximale de rendu de tous les matériaux."

msgid "Array is a normal array."
msgstr "Le tableau est un tableau normal."

msgid "Array is a tangent array."
msgstr "Le tableau est un tableau de tangentes."

msgid "Array contains bone information."
msgstr "Le tableau contient des informations sur les os."

msgid "Array is weight information."
msgstr "Le tableau est une information sur le poids."

msgid "Array is an index array."
msgstr "Le tableau est un tableau d'index."

msgid "Flag used to mark a normal array."
msgstr "Drapeau utilisé pour marquer un tableau de normales."

msgid "Flag used to mark a tangent array."
msgstr "Drapeau utilisé pour marquer un tableau de tangentes."

msgid "Flag used to mark a bone information array."
msgstr "Drapeau utilisé pour marquer un tableau d'informations d'os."

msgid "Flag used to mark a weights array."
msgstr "Drapeau utilisé pour marquer un tableau de poids."

msgid "Flag used to mark an index array."
msgstr "Le drapeau utilisé pour marquer un tableau d’index."

msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr "Représente la taille de l'énumération [enum PrimitiveType]."

msgid "Use [Transform2D] to store MultiMesh transform."
msgstr "Utiliser [Transform2D] pour stocker la transformation des MultiMesh."

msgid "Use [Transform3D] to store MultiMesh transform."
msgstr "Utiliser [Transform3D] pour stocker la transformation des MultiMesh."

msgid "Directional (sun/moon) light (see [DirectionalLight3D])."
msgstr "Lumière directionnelle (soleil/lune) (voir [DirectionalLight3D])."

msgid "Omni light (see [OmniLight3D])."
msgstr "Lumière omni (voir [OmniLight3D])."

msgid "Spot light (see [SpotLight3D])."
msgstr "Lumière de spot (voir [SpotLight3D])."

msgid "The light's energy multiplier."
msgstr "Le multiplicateur d'énergie de la lumière."

msgid "The light's influence on specularity."
msgstr "L’influence de la lumière sur la spécularité."

msgid "The light's range."
msgstr "La gamme de la lumière."

msgid "The light's attenuation."
msgstr "L’atténuation de la lumière."

msgid "The spotlight's angle."
msgstr "L’angle du projecteur."

msgid "The spotlight's attenuation."
msgstr "L'atténuation du projecteur."

msgid "Represents the size of the [enum LightParam] enum."
msgstr "Représente la taille de l'énumération [enum LightParam]."

msgid "Use orthogonal shadow projection for directional light."
msgstr ""
"Utilise une projection d'ombre orthogonale pour la source de lumière "
"directionnelle."

msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
"Utilise 2 divisions pour la projection des ombres pour les lumières "
"directionnelles."

msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
"Utilise 4 divisions pour la projection des ombres pour les lumières "
"directionnelles."

msgid "Represents the size of the [enum ShadowQuality] enum."
msgstr "Représente la taille de l'énumération [enum ShadowQuality]."

msgid "Reflection probe will update reflections once and then stop."
msgstr ""
"La sonde de réflexion mettre à jour les réflexions une seule fois puis "
"s'arrêtera."

msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
"La sonde de réfléchissement sera mise à jour à chaque trame. Ce mode est "
"nécessaire pour capturer les objets se déplaçant."

msgid "Represents the size of the [enum DecalTexture] enum."
msgstr "Représente la taille de l'énumération [enum DecalTexture]."

msgid "2D particles."
msgstr "Particules 2D."

msgid "3D particles."
msgstr "Particules 3D."

msgid "Draw particles in the order that they appear in the particles array."
msgstr "Affiche les particules dans leur ordre dans la liste des particules."

msgid "Sort particles based on their distance to the camera."
msgstr "Trier les particules suivant leur distance à la caméra."

msgid ""
"Represents the size of the [enum ParticlesCollisionHeightfieldResolution] "
"enum."
msgstr ""
"Représente la taille de l'énumération [enum "
"ParticlesCollisionHeightfieldResolution]."

msgid "Represents the size of the [enum FogVolumeShape] enum."
msgstr "Représente la taille de l'énumération [enum FogVolumeShape]."

msgid "Represents the size of the [enum ViewportScaling3DMode] enum."
msgstr "Représente la taille de l'énumération [enum ViewportScaling3DMode]."

msgid "Represents the size of the [enum ViewportEnvironmentMode] enum."
msgstr "Représente la taille de l'énumération [enum ViewportEnvironmentMode]."

msgid "Represents the size of the [enum ViewportSDFOversize] enum."
msgstr "Représente la taille de l'énumération [enum ViewportSDFOversize]."

msgid "Represents the size of the [enum ViewportSDFScale] enum."
msgstr "Représente la taille de l'énumération [enum ViewportSDFScale]."

msgid "Represents the size of the [enum ViewportMSAA] enum."
msgstr "Représente la taille de l'énumération [enum ViewportMSAA]."

msgid "Use 2× anisotropic filtering."
msgstr "Utiliser le filtrage anisotrope x2."

msgid "Use 4× anisotropic filtering. This is the default value."
msgstr "Utiliser le filtrage anisotrope x4. Il s’agit de la valeur par défaut."

msgid "Use 8× anisotropic filtering."
msgstr "Utiliser le filtrage anisotrope x8."

msgid "Use 16× anisotropic filtering."
msgstr "Utiliser la filtrage anisotrope x16."

msgid "Represents the size of the [enum ViewportAnisotropicFiltering] enum."
msgstr ""
"Représente la taille de l'énumération [enum ViewportAnisotropicFiltering]."

msgid "Represents the size of the [enum ViewportScreenSpaceAA] enum."
msgstr "Représente la taille de l'énumération [enum ViewportScreenSpaceAA]."

msgid "Number of objects drawn in a single frame."
msgstr "Le nombre d'objets affichés en une seule trame."

msgid "Number of draw calls during this frame."
msgstr "Nombre de draw calls pour cette trame."

msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr "Représente la taille de l'énumération [enum ViewportRenderInfo]."

msgid "Visible render pass (excluding shadows)."
msgstr "Passe de rendu du visible (hors ombres)."

msgid "Represents the size of the [enum ViewportRenderInfoType] enum."
msgstr "Représente la taille de l'énumération [enum ViewportRenderInfoType]."

msgid "Debug draw is disabled. Default setting."
msgstr "L'affichage de débogage est désactivé. C'est la valeur par défaut."

msgid "Objects are displayed without light information."
msgstr "Les objets sont affichés sans les informations de lumière."

msgid "Represents the size of the [enum ViewportVRSMode] enum."
msgstr "Représente la taille de l'énumération [enum ViewportVRSMode]."

msgid "Represents the size of the [enum ViewportVRSUpdateMode] enum."
msgstr "Représente la taille de l'énumération [enum ViewportVRSUpdateMode]."

msgid "Use the clear color as background."
msgstr "Utiliser la couleur d'effacement pour l'arrière-plan."

msgid "Use a specified color as the background."
msgstr "Utiliser la couleur spécifiée pour l'arrière-plan."

msgid "Use a sky resource for the background."
msgstr "Utilise la ressource de ciel pour l'arrière-plan."

msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
"Ne pas nettoyer l'arrière-plan, et utilise ce qui a été rendu lors de trame "
"précédente pour l'arrière-plan."

msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr "Représente la taille de l'énumération [enum EnvironmentBG]."

msgid "Disable ambient light."
msgstr "Désactiver la lumière ambiante."

msgid "Disable reflections."
msgstr "Désactive les réflexions."

msgid "Represents the size of the [enum EnvironmentSDFGIRayCount] enum."
msgstr "Représente la taille de l'énumération [enum EnvironmentSDFGIRayCount]."

msgid "Represents the size of the [enum EnvironmentSDFGIFramesToConverge] enum."
msgstr ""
"Représente la taille de l'énumération [enum EnvironmentSDFGIFramesToConverge]."

msgid ""
"Represents the size of the [enum EnvironmentSDFGIFramesToUpdateLight] enum."
msgstr ""
"Représente la taille de l'énumération [enum "
"EnvironmentSDFGIFramesToUpdateLight]."

msgid "Low subsurface scattering quality."
msgstr "Qualité de transluminescence faible."

msgid "Medium subsurface scattering quality."
msgstr "Qualité de transluminescence moyenne."

msgid "The instance does not have a type."
msgstr "L’instance n’a pas de type."

msgid "The instance is a mesh."
msgstr "L’instance est un maillage."

msgid "The instance is a multimesh."
msgstr "L’instance est un multi-maillage."

msgid "The instance is a particle emitter."
msgstr "L'instance est un émetteur de particules."

msgid "The instance is a light."
msgstr "L’instance est une lumière."

msgid "The instance is a lightmap."
msgstr "L’instance est une lightmap."

msgid "Represents the size of the [enum InstanceType] enum."
msgstr "Représente la taille de l'énumération [enum InstanceType]."

msgid "Allows the instance to be used in baked lighting."
msgstr "Autorise l'instance à être utilisée pour le baking des lumières."

msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
"Quand définit, demande manuellement l'affichage des géométries lors de la "
"trame suivante."

msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr "Représente la taille de l’énumération [enum InstanceFlags]."

msgid "Disable shadows from this instance."
msgstr "Désactiver les ombres de cette instance."

msgid "Cast shadows from this instance."
msgstr "Cette instance affiche une ombre."

msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
"Désactiver le culling des faces arrières lors du rendu de l'ombre de l'objet. "
"Ceci est légèrement plus lent mais peut permettre d'obtenir de meilleures "
"ombres."

msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr ""
"N'afficher que l'ombre de l'objet. L'objet en lui-même ne sera pas affiché."

msgid "Uses the default filter mode for this [Viewport]."
msgstr "Utilise le mode de filtre par défaut pour ce [Viewport]."

msgid "Uses the default repeat mode for this [Viewport]."
msgstr "Utilise le mode de répétition par défaut pour ce [Viewport]."

msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr "Valeur maximale pour l'énumération [enum CanvasItemTextureRepeat]."

msgid "2D point light (see [PointLight2D])."
msgstr "Lumière ponctuelle 2D (voir [PointLight2D])."

msgid "Adds light color additive to the canvas."
msgstr "Ajoute une couleur additive de lumière au canevas."

msgid "Adds light color subtractive to the canvas."
msgstr "Ajoute une couleur soustractive de lumière au canevas."

msgid "The light adds color depending on transparency."
msgstr "La lumière ajoute une couleur suivant la transparence."

msgid "Do not apply a filter to canvas light shadows."
msgstr "Ne pas appliquer de lissage pour les ombres du canevas."

msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr "Utiliser le filtre PCF5 pour lisser les ombres des canevas."

msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr "Utiliser le filtre PCF13 pour lisser les ombres des canevas."

msgid "Culling of the canvas occluder is disabled."
msgstr "Le culling de l'occulteur du canevas est désactivé."

msgid "Culling of the canvas occluder is clockwise."
msgstr "Le culling de l'occulteur du canevas est dans le sens horaire."

msgid "Culling of the canvas occluder is counterclockwise."
msgstr "Le culling de l'occulteur du canevas est dans le sens anti-horaire."

msgid ""
"3-dimensional unsigned integer vector global shader parameter ([code]global "
"uniform uvec3 ...[/code])."
msgstr ""
"Paramètre de shader global de vecteur 3-dimentionnel d'entiers non signés "
"([code]global uniform uvec3 ...[/code])."

msgid ""
"4-dimensional unsigned integer vector global shader parameter ([code]global "
"uniform uvec4 ...[/code])."
msgstr ""
"Paramètre de shader global de vecteur 4-dimentionnel d'entiers non signés "
"([code]global uniform uvec4 ...[/code])."

msgid "Represents the size of the [enum GlobalShaderParameterType] enum."
msgstr "Représente la taille de l'énumération [enum GlobalShaderParameterType]."

msgid "Represents the size of the [enum PipelineSource] enum."
msgstr "Représente la taille de l'énumération [enum PipelineSource]."

msgid "Level of the anisotropic filter."
msgstr "Niveau du filtrage anisotrope."

msgid "The render target associated with these buffer."
msgstr "La cible de rendu associée à ces buffers."

msgid "The number of views we're rendering."
msgstr "Le nombre de vues que nous rendons."

msgid "Returns [code]true[/code] if a cached texture exists for this name."
msgstr ""
"Renvoie [code]true[/code] si une texture mise en cache existe pour ce nom."

msgid ""
"Abstract render data object, holds scene data related to rendering a single "
"frame of a viewport."
msgstr ""
"Objet de données de rendu abstrait, détient des données de scène relatives au "
"rendu d'une unique trame d'un viewport."

msgid ""
"Abstract scene data object, exists for the duration of rendering a single "
"viewport.\n"
"[b]Note:[/b] This is an internal rendering server object, do not instantiate "
"this from script."
msgstr ""
"Objet de données abstrait, existe pour la durée du rendu d'un seul viewport.\n"
"[b]Note :[/b] Il s'agit d'un objet de serveur de rendu interne, ne "
"l'instanciez pas depuis un script."

msgid ""
"Returns the camera projection used to render this frame.\n"
"[b]Note:[/b] If more than one view is rendered, this will return a combined "
"projection."
msgstr ""
"Renvoie la projection de la caméra utilisée pour rendre cette trame.\n"
"[b]Note :[/b] Si plus d'une vue est rendue, cela renverra une projection "
"combinée."

msgid ""
"Returns the camera transform used to render this frame.\n"
"[b]Note:[/b] If more than one view is rendered, this will return a centered "
"transform."
msgstr ""
"Renvoie la transformation de la caméra utilisée pour rendre cette trame.\n"
"[b]Note :[/b] Si plus d'une vue est rendue, cela renverra une transformation "
"centrée."

msgid ""
"Return the [RID] of the uniform buffer containing the scene data as a UBO."
msgstr ""
"Renvoie le [RID] du buffer uniforme contenant les données de scène en tant "
"qu'UBO (Uniform Buffer Object, litt. Objet Buffer Uniforme)."

msgid "Returns the number of views being rendered."
msgstr "Renvoie le nombre de vues rendues."

msgid "Base class for serializable objects."
msgstr "Classe de base pour les objets sérialisables."

msgid ""
"Returns the [RID] of this resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], and so on) are high-level abstractions of resources "
"stored in a specialized server ([DisplayServer], [RenderingServer], etc.), so "
"this function will return the original [RID]."
msgstr ""
"Renvoie le [RID] de cette ressource (ou un RID vide). De nombreuses "
"ressources (comme [Texture2D], [Mesh], etc.) sont des abstractions de haut "
"niveau de ressources stockées dans un serveur spécialisé ([DisplayServer], "
"[RenderingServer], etc.), cette fonction renverra donc le [RID] original."

msgid ""
"Returns [code]true[/code] if the resource is saved on disk as a part of "
"another resource's file."
msgstr ""
"Renvoie [code]true[/code] si la ressource est sauvegardée sur le disque dans "
"le fichier d'une autre ressource."

msgid ""
"Makes the resource clear its non-exported properties. See also [method "
"_reset_state]. Useful when implementing a custom resource format by extending "
"[ResourceFormatLoader] and [ResourceFormatSaver]."
msgstr ""
"Fait que la ressource vide ses propriétés non exportées. Voir aussi [method "
"_reset_state]. Utile lors de l'implémentation d'un format de ressource "
"personnalisé en étendant [ResourceFormatLoader] et [ResourceFormatSaver]."

msgid "This method should only be called internally."
msgstr "Cette méthode ne devrait être appelée qu'en interne."

msgid ""
"A unique identifier relative to the this resource's scene. If left empty, the "
"ID is automatically generated when this resource is saved inside a "
"[PackedScene]. If the resource is not inside a scene, this property is empty "
"by default.\n"
"[b]Note:[/b] When the [PackedScene] is saved, if multiple resources in the "
"same scene use the same ID, only the earliest resource in the scene hierarchy "
"keeps the original ID. The other resources are assigned new IDs from [method "
"generate_scene_unique_id].\n"
"[b]Note:[/b] Setting this property does not emit the [signal changed] "
"signal.\n"
"[b]Warning:[/b] When setting, the ID must only consist of letters, numbers, "
"and underscores. Otherwise, it will fail and default to a randomly generated "
"ID."
msgstr ""
"Un identifiant unique par rapport à la scène de cette ressource. Si laissé "
"vide, l'ID est automatiquement généré lorsque cette ressource est sauvegardée "
"dans une [PackedScene]. Si la ressource n'est pas dans une scène, cette "
"propriété est vide par défaut.\n"
"[b]Note :[/b] Lorsque la [PackedScene] est sauvegardée, si plusieurs "
"ressources dans la même scène utilisent le même ID, seule la ressource la "
"plus ancienne dans la hiérarchie de la scène conserve l'identifiant original. "
"Les autres ressources sont affectées à de nouveaux ID avec [method "
"generate_scene_unique_id].\n"
"[b]Note :[/b] Définir cette propriété n'émet pas le signal [signal changed].\n"
"[b]Attention :[/b] Lors du réglage, l'identifiant ne doit comporter que des "
"lettres, des chiffres et des tirets du bas. Sinon, il échouera et donnera par "
"défaut un ID généré aléatoirement."

msgid "Loads a specific resource type from a file."
msgstr "Charge un type de ressource spécifique depuis un fichier."

msgid "Gets the list of extensions for files this loader is able to read."
msgstr "Obtient la liste des extensions des fichiers que ce chargeur peut lire."

msgid ""
"Returns the script class name associated with the [Resource] under the given "
"[param path]. If the resource has no script or the script isn't a named "
"class, it should return [code]\"\"[/code]."
msgstr ""
"Renvoie le nom de classe de script associé à la [Resource] au chemin [param "
"path] donné. Si la ressource n'a pas de script ou que le script n'est pas une "
"classe nommée, elle devrait renvoyer [code]\"\"[/code]."

msgid ""
"Gets the class name of the resource associated with the given path. If the "
"loader cannot handle it, it should return [code]\"\"[/code].\n"
"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
"[ClassDB], so you might just return [code]\"Resource\"[/code] for them."
msgstr ""
"Obtient le nom de classe de la ressource associée au chemin donné. Si le "
"chargeur ne peut pas la manipuler, il doit renvoyer [code]\"\"[/code].\n"
"[b]Note :[/b] Les types de ressources personnalisées définis par des scripts "
"ne sont pas connus par la [ClassDB], donc vous pouvez simplement renvoyer "
"[code]\"Resource\"[/code] pour eux."

msgid ""
"Tells which resource class this loader can load.\n"
"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
"[ClassDB], so you might just handle [code]\"Resource\"[/code] for them."
msgstr ""
"Indique quelle classe de ressources ce chargeur peut charger.\n"
"[b]Note :[/b] Les types de ressources personnalisées définis par des scripts "
"ne sont pas connus par la [ClassDB], donc vous pouvez simplement manipuler "
"[code]\"Resource\"[/code] pour eux."

msgid "Saves a specific resource type to a file."
msgstr "Enregistre un type de ressource spécifique dans un fichier."

msgid ""
"The engine can save resources when you do it from the editor, or when you use "
"the [ResourceSaver] singleton. This is accomplished thanks to multiple "
"[ResourceFormatSaver]s, each handling its own format and called automatically "
"by the engine.\n"
"By default, Godot saves resources as [code].tres[/code] (text-based), "
"[code].res[/code] (binary) or another built-in format, but you can choose to "
"create your own format by extending this class. Be sure to respect the "
"documented return types and values. You should give it a global class name "
"with [code]class_name[/code] for it to be registered. Like built-in "
"ResourceFormatSavers, it will be called automatically when saving resources "
"of its recognized type(s). You may also implement a [ResourceFormatLoader]."
msgstr ""
"Le moteur peut sauvegarder des ressources lorsque vous le faites depuis "
"l'éditeur, ou lorsque vous utilisez le singleton [ResourceSaver]. Ceci est "
"accompli grâce à plusieurs [ResourceFormatSaver]s, chacun manipulant son "
"propre format et étant appelé automatiquement par le moteur.\n"
"Par défaut, Godot sauvegarde les ressources comme [code].tres[/code] (basé "
"sur du texte), [code].res[/code] (en binaire) ou dans un autre format "
"intégré, mais vous pouvez choisir de créer votre propre format en étendant "
"cette classe. Assurez-vous de respecter les types et les valeurs de renvoi "
"documentés. Vous devriez lui donner un nom de classe global avec "
"[code]class_name[/code] pour qu'elle soit enregistrée. Comme les "
"ResourcesFormatSavers intégrés, elle sera appelée automatiquement lors de la "
"sauvegarde des ressources de ses types reconnus. Vous pouvez également "
"implémenter un [ResourceFormatLoader]."

msgid "Returns whether the given resource object can be saved by this saver."
msgstr ""
"Renvoie quand une ressource donnée peut être enregistrée par ce enregistreur."

msgid "Base class for resource importers."
msgstr "Classe de base pour les importateurs de ressources."

msgid "The default import order."
msgstr "L'ordre d'importation par défaut."

msgid ""
"The import order for scenes, which ensures scenes are imported [i]after[/i] "
"all other core resources such as textures. Custom importers should generally "
"have an import order lower than [code]100[/code] to avoid issues when "
"importing scenes that rely on custom resources."
msgstr ""
"L'ordre d'importation des scènes, qui assure que les scènes sont importées "
"[i]après[/i] toutes les autres ressources de base telles que les textures. "
"Les importateurs personnalisés devraient généralement avoir un ordre "
"d'importation inférieur à [code]100[/code] pour éviter les problèmes lors de "
"l'importation de scènes qui comptent sur des ressources personnalisées."

msgid "Imports a [BitMap] resource (2D array of boolean values)."
msgstr "Importe une ressource [BitMap] (tableau 2D de valeurs booléennes)."

msgid ""
"[BitMap] resources are typically used as click masks in [TextureButton] and "
"[TouchScreenButton]."
msgstr ""
"Les ressources [BitMap] sont généralement utilisées comme masques de clic "
"dans [TextureButton] et [TouchScreenButton]."

msgid ""
"The data source to use for generating the bitmap.\n"
"[b]Black & White:[/b] Pixels whose HSV value is greater than the [member "
"threshold] will be considered as \"enabled\" (bit is [code]true[/code]). If "
"the pixel is lower than or equal to the threshold, it will be considered as "
"\"disabled\" (bit is [code]false[/code]).\n"
"[b]Alpha:[/b] Pixels whose alpha value is greater than the [member threshold] "
"will be considered as \"enabled\" (bit is [code]true[/code]). If the pixel is "
"lower than or equal to the threshold, it will be considered as \"disabled\" "
"(bit is [code]false[/code])."
msgstr ""
"La source de données à utiliser pour générer la bitmap.\n"
"[b]Noir & Blanc :[/b] Les pixels dont la valeur HSV est supérieure au seuil "
"[member threshold] seront considérés comme \"activés\" (le bit vaut "
"[code]true[/code]). Si le pixel est inférieur ou égal au seuil, il sera "
"considéré comme \"désactivé\" (le bit vaut [code]false[/code]).\n"
"[b]Alpha :[/b] Les pixels dont la valeur alpha est supérieure au seuil "
"[member threshold] seront considérés comme \"activés\" (le bit vaut "
"[code]true[/code]). Si le pixel est inférieur ou égal au seuil, il sera "
"considéré comme \"désactivé\" (le bit vaut [code]false[/code])."

msgid ""
"The threshold to use to determine which bits should be considered enabled or "
"disabled. See also [member create_from]."
msgstr ""
"Le seuil à utiliser pour déterminer quels bits doivent être considérés comme "
"étant activés ou désactivés. Voir aussi [member create_from]."

msgid "Imports a bitmap font in the BMFont ([code].fnt[/code]) format."
msgstr ""
"Importe une police matricielle dans le format ([code].fnt[/code]) BMFont."

msgid ""
"The BMFont format is a format created by the [url=https://www.angelcode.com/"
"products/bmfont/]BMFont[/url] program. Many BMFont-compatible programs also "
"exist, like [url=https://www.bmglyph.com/]BMGlyph[/url].\n"
"Compared to [ResourceImporterImageFont], [ResourceImporterBMFont] supports "
"bitmap fonts with varying glyph widths/heights.\n"
"See also [ResourceImporterDynamicFont]."
msgstr ""
"Le format BMFont est un format créé par le programme [url=https://"
"www.angelcode.com/products/bmfont/]BMFont[/url]. De nombreux programmes "
"compatibles avec BMFont existent également, comme [url=https://"
"www.bmglyph.com/]BMGlyph[/url].\n"
"Comparé à [ResourceImporterImageFont], [ResourceImporterBMFont] prend en "
"charge les polices matricielles avec différentes largeurs/hauteurs de "
"glyphes.\n"
"Voir aussi [ResourceImporterDynamicFont]."

msgid "If [code]true[/code], uses lossless compression for the resulting font."
msgstr ""
"Si [code]true[/code], utilise une compression sans perte pour la police "
"résultante."

msgid ""
"List of font fallbacks to use if a glyph isn't found in this bitmap font. "
"Fonts at the beginning of the array are attempted first."
msgstr ""
"Liste des polices de repli à utiliser si un glyphe n'est pas trouvé dans "
"cette police matricielle. Les polices au début du tableau sont tentées en "
"premier."

msgid "Font scaling mode."
msgstr "Mode d'échelle de police."

msgid "Imports comma-separated values"
msgstr "Importe des valeurs séparées par des virgules"

msgid ""
"Comma-separated values are a plain text table storage format. The format's "
"simplicity makes it easy to edit in any text editor or spreadsheet software. "
"This makes it a common choice for game localization.\n"
"[b]Example CSV file:[/b]\n"
"[codeblock lang=text]\n"
"keys,en,es,ja\n"
"GREET,\"Hello, friend!\",\"Hola, amigo!\",こんにちは\n"
"ASK,How are you?,Cómo está?,元気ですか\n"
"BYE,Goodbye,Adiós,さようなら\n"
"QUOTE,\"\"\"Hello\"\" said the man.\",\"\"\"Hola\"\" dijo el hombre.\",「こん"
"にちは」男は言いました\n"
"[/codeblock]"
msgstr ""
"Des valeurs séparées par des virgules sont un format de stockage de table de "
"texte brut. La simplicité du format permet d'éditer facilement dans n'importe "
"quel éditeur de texte ou logiciel de tableur. Cela en fait un choix commun "
"pour la localisation des jeux.\n"
"[b]Exemple de fichier CSV :[/b]\n"
"[codeblock lang=text]\n"
"keys,fr,en,es,ja\n"
"GREET,\"Bonjour, ami !\",Hello, friend!\",\"Hola, amigo!\",こんにちは\n"
"ASK,Comment allez vous ?,How are you?,Cómo está?,元気ですか\n"
"BYE,Au revoir,Goodbye,Adiós,さようなら\n"
"QUOTE,\"\"\"Bonjour\"\" dit l'homme.\",\"\"\"Hello\"\" said the man.\","
"\"\"\"Hola\"\" dijo el hombre.\",「こんにちは」男は言いました\n"
"[/codeblock]"

msgid "Importing translations"
msgstr "Importer des traductions"

msgid ""
"If [code]true[/code], creates an [OptimizedTranslation] instead of a "
"[Translation]. This makes the resulting file smaller at the cost of a small "
"CPU overhead."
msgstr ""
"Si [code]true[/code], crée une [OptimizedTranslation] au lieu d'une "
"[Translation]. Cela rend le fichier résultant plus petit avec un léger coût "
"sur le CPU."

msgid ""
"The delimiter to use in the CSV file. The default value matches the common "
"CSV convention. Tab-separated values are sometimes called TSV files."
msgstr ""
"Le délimiteur à utiliser dans le fichier CSV. La valeur par défaut correspond "
"à la convention CSV commune. Les valeurs séparées des tabulations sont "
"parfois appelées fichiers TSV."

msgid ""
"Imports a TTF, TTC, OTF, OTC, WOFF or WOFF2 font file for font rendering that "
"adapts to any size."
msgstr ""
"Importe un fichier de police TTF, TTC, OTF, OTC, WOFF ou WOFF2 pour un rendu "
"de police qui s'adapte à n'importe quelle taille."

msgid "Number of rows in the font image. See also [member columns]."
msgstr "Nombre de lignes dans l'image de police. Voir aussi [member columns]."

msgid ""
"Imports a 3-dimensional texture ([Texture3D]), a [Texture2DArray], a "
"[Cubemap] or a [CubemapArray]."
msgstr ""
"Importe une texture en 3 dimensions ([Texture3D]), un [Texture2DArray], une "
"[Cubemap] ou un [CubemapArray]."

msgid ""
"This imports a 3-dimensional texture, which can then be used in custom "
"shaders, as a [FogMaterial] density map or as a "
"[GPUParticlesAttractorVectorField3D]. See also [ResourceImporterTexture] and "
"[ResourceImporterTextureAtlas]."
msgstr ""
"Cela importe une texture en 3 dimensions, qui peut ensuite être utilisée dans "
"des shaders personnalisés, comme une density map d'un [FogMaterial] ou comme "
"un [GPUParticlesAttractorVectorField3D]. Voir aussi [ResourceImporterTexture] "
"et [ResourceImporterTextureAtlas]."

msgid "Imports an MP3 audio file for playback."
msgstr "Importe un fichier audio MP3 pour la lecture."

msgid ""
"MP3 is a lossy audio format, with worse audio quality compared to "
"[ResourceImporterOggVorbis] at a given bitrate.\n"
"In most cases, it's recommended to use Ogg Vorbis over MP3. However, if "
"you're using an MP3 sound source with no higher quality source available, "
"then it's recommended to use the MP3 file directly to avoid double lossy "
"compression.\n"
"MP3 requires more CPU to decode than [ResourceImporterWAV]. If you need to "
"play a lot of simultaneous sounds, it's recommended to use WAV for those "
"sounds instead, especially if targeting low-end devices."
msgstr ""
"MP3 est un format audio avec pertes, avec une qualité audio pire que "
"[ResourceImporterOggVorbis] à un bitrate donné.\n"
"Dans la plupart des cas, il est recommandé d'utiliser Ogg Vorbis au lieu de "
"MP3. Cependant, si vous utilisez une source de son MP3 sans source de qualité "
"supérieure disponible, il est recommandé d'utiliser le fichier MP3 "
"directement pour éviter une compression avec double perte.\n"
"MP3 nécessite plus de CPU pour le décoder que [ResourceImporterWAV]. Si vous "
"avez besoin de jouer beaucoup de sons simultanés, il est recommandé "
"d'utiliser le WAV pour ces sons plutôt, surtout si vous ciblez des appareils "
"bas de gamme."

msgid "Importing audio samples"
msgstr "Importer des échantillons audio"

msgid ""
"The number of bars within a single beat in the audio track. This is only "
"relevant for music that wishes to make use of interactive music "
"functionality, not sound effects.\n"
"A more convenient editor for [member bar_beats] is provided in the "
"[b]Advanced Import Settings[/b] dialog, as it lets you preview your changes "
"without having to reimport the audio."
msgstr ""
"Le nombre de mesures dans un seul battement de la piste audio. Ceci n'est "
"pertinent que pour la musique qui souhaite utiliser la fonctionnalité de "
"musique interactive, pas les effets sonores.\n"
"Un éditeur plus pratique pour [member bar_beats] est fourni dans la boîte de "
"dialogue [b]Paramètres d'import avancés[/b], car il vous permet de "
"prévisualiser vos changements sans avoir à réimporter l'audio."

msgid "Imports an OBJ 3D model as an independent [Mesh] or scene."
msgstr "Importe un modèle 3D OBJ en tant que [Mesh] ou scène indépendant."

msgid ""
"Unlike [ResourceImporterScene], [ResourceImporterOBJ] will import a single "
"[Mesh] resource by default instead of importing a [PackedScene]. This makes "
"it easier to use the [Mesh] resource in nodes that expect direct [Mesh] "
"resources, such as [GridMap], [GPUParticles3D] or [CPUParticles3D]. Note that "
"it is still possible to save mesh resources from 3D scenes using the "
"[b]Advanced Import Settings[/b] dialog, regardless of the source format.\n"
"See also [ResourceImporterScene], which is used for more advanced 3D formats "
"such as glTF."
msgstr ""
"Contrairement à [ResourceImporterScene], [ResourceImporterOBJ] importera une "
"seule ressource [Mesh] par défaut au lieu d'importer une [PackedScene]. Cela "
"facilite l'utilisation de la ressource [Mesh] dans les nœuds qui s'attendent "
"à des ressources [Mesh] directes, tels que [GridMap], [GPUParticles3D] ou "
"[CPUParticles3D]. Notez qu'il est encore possible d'enregistrer des "
"ressources en maillage à partir de scènes 3D en utilisant la fenêtre "
"[b]Paramètres avancés d'import[/b], peu importe le format source.\n"
"Voir aussi [ResourceImporterScene], qui est utilisé pour des formats 3D plus "
"avancés tels que le glTF."

msgid "Importing 3D scenes"
msgstr "Importer des scènes 3D"

msgid ""
"If [code]true[/code], mesh compression will not be used. Consider enabling if "
"you notice blocky artifacts in your mesh normals or UVs, or if you have "
"meshes that are larger than a few thousand meters in each direction."
msgstr ""
"Si [code]true[/code], la compression du maillage ne sera pas utilisée. "
"Envisagez d'activer ceci si vous remarquez des artéfacts de blocs dans vos "
"normales ou UVs du maillage, ou si vous avez des maillages plus grands que "
"quelques milliers de mètres dans chaque direction."

msgid "If [code]true[/code], generates UV2 on import for [LightmapGI] baking."
msgstr ""
"Si [code]true[/code], génère des UV2 lors de l'import pour les pré-calculs "
"avec [LightmapGI]."

msgid ""
"Controls the size of each texel on the baked lightmap. A smaller value "
"results in more precise lightmaps, at the cost of larger lightmap sizes and "
"longer bake times.\n"
"[b]Note:[/b] Only effective if [member generate_lightmap_uv2] is [code]true[/"
"code]."
msgstr ""
"Contrôle la taille de chaque texel sur la lightmap pré-calculée. Une plus "
"petite valeur se traduit par des lightmaps plus précises, au coût de plus "
"grandes tailles de lightmaps et de temps de calcul plus longs.\n"
"[b]Note :[/b] Seulement effectif si [member generate_lightmap_uv2] vaut "
"[code]true[/code]."

msgid ""
"If [code]true[/code], generates lower detail variants of the mesh which will "
"be displayed in the distance to improve rendering performance. Not all meshes "
"benefit from LOD, especially if they are never rendered from far away. "
"Disabling this can reduce output file size and speed up importing. See "
"[url=$DOCS_URL/tutorials/3d/mesh_lod.html#doc-mesh-lod]Mesh level of detail "
"(LOD)[/url] for more information."
msgstr ""
"Si [code]true[/code], génère des variantes du maillage à plus faibles détails "
"qui seront affichées à distance pour améliorer la performance de rendu. Tous "
"les maillages ne bénéficient pas du niveau de détail (LOD), surtout s'ils ne "
"sont jamais rendus de loin. Désactiver cela peut réduire la taille du fichier "
"de sortie et accélérer l'import. Voir [url=$DOCS_URL/tutorials/3d/"
"mesh_lod.html#doc-mesh-lod]Niveau de détail d'un maillage (LOD)[/url] pour "
"plus d'informations."

msgid ""
"If [code]true[/code], enables the generation of shadow meshes on import. This "
"optimizes shadow rendering without reducing quality by welding vertices "
"together when possible. This in turn reduces the memory bandwidth required to "
"render shadows. Shadow mesh generation currently doesn't support using a "
"lower detail level than the source mesh (but shadow rendering will make use "
"of LODs when relevant)."
msgstr ""
"Si [code]true[/code], active la génération des maillages d'ombre lors de "
"l'import. Cela optimise le rendu des ombres sans réduire la qualité en "
"fusionnant des sommets si possible. Cela réduit à son tour la bande passante "
"mémoire requise pour rendre les ombres. La génération de maillage d'ombre ne "
"supporte actuellement pas un niveau de détail plus bas que le maillage source "
"(mais le rendu des ombres fera usage des LODs lorsque cela est pertinent)."

msgid ""
"If [code]true[/code], generate vertex tangents using [url=http://"
"www.mikktspace.com/]Mikktspace[/url] if the source mesh doesn't have tangent "
"data. When possible, it's recommended to let the 3D modeling software "
"generate tangents on export instead on relying on this option. Tangents are "
"required for correct display of normal and height maps, along with any "
"material/shader features that require tangents.\n"
"If you don't need material features that require tangents, disabling this can "
"reduce output file size and speed up importing if the source 3D file doesn't "
"contain tangents."
msgstr ""
"Si [code]true[/code], génère les tangentes aux sommets en utilisant "
"[url=http://www.mikktspace.com/]Mikktspace[/url] si le maillage source n'a "
"pas de données de tangentes. Lorsque c'est possible, il est recommandé de "
"laisser le logiciel de modélisation 3D générer des tangentes lors de l'export "
"au lieu de compter sur cette option. Les tangentes sont requises pour "
"l'affichage correct des normal maps et des height maps, ainsi que pour toutes "
"les fonctionnalités de matériau/shader qui nécessitent des tangentes.\n"
"Si vous n'avez pas besoin de fonctionnalités de matériau qui nécessitent des "
"tangentes, désactiver cela peut réduire la taille du fichier de sortie et "
"accélérer l'import si le fichier 3D source ne contient pas de tangentes."

msgid ""
"Offsets the mesh's data by the specified value. This can be used to work "
"around misaligned meshes without having to modify the source file."
msgstr ""
"Décale les données du maillage par la valeur spécifiée. Cela peut être "
"utilisé pour contourner un problème de maillage désaligné sans avoir à "
"modifier le fichier source."

msgid ""
"Scales the mesh's data by the specified value. This can be used to work "
"around misscaled meshes without having to modify the source file."
msgstr ""
"Redimensionne les données du maillage par la valeur spécifiée. Cela peut être "
"utilisé pour contourner un problème de maillage à mauvaise échelle sans avoir "
"à modifier le fichier source."

msgid "Imports an Ogg Vorbis audio file for playback."
msgstr "Importe un fichier audio Ogg Vorbis pour la lecture."

msgid ""
"Ogg Vorbis is a lossy audio format, with better audio quality compared to "
"[ResourceImporterMP3] at a given bitrate.\n"
"In most cases, it's recommended to use Ogg Vorbis over MP3. However, if "
"you're using an MP3 sound source with no higher quality source available, "
"then it's recommended to use the MP3 file directly to avoid double lossy "
"compression.\n"
"Ogg Vorbis requires more CPU to decode than [ResourceImporterWAV]. If you "
"need to play a lot of simultaneous sounds, it's recommended to use WAV for "
"those sounds instead, especially if targeting low-end devices."
msgstr ""
"Ogg Vorbis est un format audio avec pertes, d'une meilleure qualité audio que "
"[ResourceImporterMP3] à un bitrate donné.\n"
"Dans la plupart des cas, il est recommandé d'utiliser Ogg Vorbis au lieu de "
"MP3. Cependant, si vous utilisez une source de son MP3 sans source de qualité "
"supérieure disponible, il est recommandé d'utiliser le fichier MP3 "
"directement pour éviter une compression avec double perte.\n"
"Ogg Vorbis nécessite plus de CPU pour décoder que [ResourceImporterWAV]. Si "
"vous avez besoin de jouer beaucoup de sons simultanés, il est recommandé "
"d'utiliser WAV pour ces sons plutôt, surtout si vous ciblez des appareils bas "
"de gamme."

msgid "Use [method AudioStreamOggVorbis.load_from_buffer] instead."
msgstr "Utilisez [method AudioStreamOggVorbis.load_from_buffer] à la place."

msgid "Use [method AudioStreamOggVorbis.load_from_file] instead."
msgstr "Utilisez [method AudioStreamOggVorbis.load_from_file] à la place."

msgid ""
"See also [ResourceImporterOBJ], which is used for OBJ models that can be "
"imported as an independent [Mesh] or a scene.\n"
"Additional options (such as extracting individual meshes or materials to "
"files) are available in the [b]Advanced Import Settings[/b] dialog. This "
"dialog can be accessed by double-clicking a 3D scene in the FileSystem dock "
"or by selecting a 3D scene in the FileSystem dock, going to the Import dock "
"and choosing [b]Advanced[/b].\n"
"[b]Note:[/b] [ResourceImporterScene] is [i]not[/i] used for [PackedScene]s, "
"such as [code].tscn[/code] and [code].scn[/code] files."
msgstr ""
"Voir aussi [ResourceImporterOBJ], qui est utilisé pour les modèles OBJ qui "
"peuvent être importés comme un [Mesh] indépendant ou une scène.\n"
"D'autres options (comme l'extraction de maillages individuels ou de matériaux "
"vers des fichiers) sont disponibles dans la fenêtre [b]Paramètres d'import "
"avancés[/b]. Cette fenêtre peut être consultée en double-cliquant une scène "
"3D dans le dock FileSystem ou en sélectionnant une scène 3D dans le dock "
"FileSystem, en allant sur le dock Import et en choisir [b]Avancé[/b].\n"
"[b]Note :[/b] [ResourceImporterScene] n'est [i]pas[/i] utilisé pour les "
"[PackedScene]s, comme les fichiers [code].tscn[/code] et [code].scn[/code]."

msgid ""
"Contains properties for the scene's subresources. This is an internal option "
"which is not visible in the Import dock."
msgstr ""
"Contient des propriétés pour les sous-ressources de la scène. C'est une "
"option interne qui n'est pas visible dans le dock Import."

msgid ""
"If [code]true[/code], remove animation tracks that only contain default "
"values. This can reduce output file size and memory usage with certain 3D "
"scenes, depending on the contents of their animation tracks."
msgstr ""
"Si [code]true[/code], supprime les pistes d'animation qui ne contiennent que "
"des valeurs par défaut. Cela peut réduire la taille du fichier de sortie et "
"l'utilisation de la mémoire avec certaines scènes 3D, en fonction du contenu "
"de leurs pistes d'animation."

msgid ""
"If [code]true[/code], trim the beginning and end of animations if there are "
"no keyframe changes. This can reduce output file size and memory usage with "
"certain 3D scenes, depending on the contents of their animation tracks."
msgstr ""
"Si [code]true[/code], coupe le début et la fin des animations s'il n'y a pas "
"de changement dans les clés d'animation. Cela peut réduire la taille du "
"fichier de sortie et l'utilisation de la mémoire avec certaines scènes 3D, en "
"fonction du contenu de leurs pistes d'animation."

msgid ""
"Path extracted materials are saved to. If empty, source scene path is used."
msgstr ""
"Chemin auquel les matériaux extraits sont sauvegardés. Si vide, le chemin de "
"la scène source est utilisé."

msgid ""
"This importer imports [DPITexture] resources. See also "
"[ResourceImporterTexture] and [ResourceImporterImage]."
msgstr ""
"Cet importeur importe des ressources [DPITexture]. Voir aussi "
"[ResourceImporterTexture] et [ResourceImporterImage]."

msgid "If [code]true[/code], uses lossless compression for the SVG source."
msgstr ""
"Si [code]true[/code], utilise une compression sans perte pour la source SVG."

msgid "Imports an image for use in 2D or 3D rendering."
msgstr "Importe une image pour utiliser dans le rendu 2D ou 3D."

msgid ""
"This importer imports [CompressedTexture2D] resources. If you need to process "
"the image in scripts in a more convenient way, use [ResourceImporterImage] "
"instead. See also [ResourceImporterLayeredTexture]."
msgstr ""
"Cet importeur importe des ressources [CompressedTexture2D]. Si vous devez "
"traiter l'image dans des scripts d'une manière plus pratique, utilisez "
"[ResourceImporterImage] à la place. Voir aussi "
"[ResourceImporterLayeredTexture]."

msgid ""
"If [code]true[/code], forces the imported audio to use 8-bit quantization if "
"the source file is 16-bit or higher.\n"
"Enabling this is generally not recommended, as 8-bit quantization decreases "
"audio quality significantly. If you need smaller file sizes, consider using "
"Ogg Vorbis or MP3 audio instead."
msgstr ""
"Si [code]true[/code], force l'audio importé à utiliser la quantification 8 "
"bits si le fichier source est de 16 bits ou plus.\n"
"Activer ceci n'est généralement pas recommandé, car la quantification 8 bits "
"diminue considérablement la qualité audio. Si vous avez besoin de plus "
"petites tailles de fichiers, envisagez d'utiliser de l'audio Ogg Vorbis ou "
"MP3."

msgid "Returns the list of recognized extensions for a resource type."
msgstr "Renvoie la liste des extensions reconnues pour ce type de ressource."

msgid ""
"Lists a directory, returning all resources and subdirectories contained "
"within. The resource files have the original file names as visible in the "
"editor before exporting. The directories have [code]\"/\"[/code] appended.\n"
"[codeblock]\n"
"# Prints [\"extra_data/\", \"model.gltf\", \"model.tscn\", "
"\"model_slime.png\"]\n"
"print(ResourceLoader.list_directory(\"res://assets/enemies/slime\"))\n"
"[/codeblock]\n"
"[b]Note:[/b] The order of files and directories returned by this method is "
"not deterministic, and can vary between operating systems.\n"
"[b]Note:[/b] To normally traverse the filesystem, see [DirAccess]."
msgstr ""
"Liste un répertoire, renvoyant toutes les ressources et les sous-répertoires "
"contenus dedans. Les fichiers ressources ont leurs noms de fichiers originaux "
"comme visibles dans l'éditeur avant l'export. Les répertoires ont [code]\"/"
"\"[/code] ajouté.\n"
"[codeblock]\n"
"# Affiche [\"extra_data/\", \"model.gltf\", \"model.tscn\", "
"\"model_slime.png\"]\n"
"print(ResourceLoader.list_directory(\"res://assets/enemies/slime\"))\n"
"[/codeblock]\n"
"[b]Note :[/b] L'ordre des fichiers et des répertoires renvoyés par cette "
"méthode n'est pas déterministe, et peut varier entre les systèmes "
"d'exploitation.\n"
"[b]Note :[/b] Pour traverser normalement le système de fichiers, voir "
"[DirAccess]."

msgid ""
"Returns the resource loaded by [method load_threaded_request].\n"
"If this is called before the loading thread is done (i.e. [method "
"load_threaded_get_status] is not [constant THREAD_LOAD_LOADED]), the calling "
"thread will be blocked until the resource has finished loading. However, it's "
"recommended to use [method load_threaded_get_status] to known when the load "
"has actually completed."
msgstr ""
"Renvoie la ressource chargée par [method load_threaded_request].\n"
"Si cela est appelé avant que le thread de chargement soit fini (c.-à-d. "
"[method load_threaded_get_status] n'est pas [constant THREAD_LOAD_LOADED]), "
"le thread d'appel sera bloqué jusqu'à ce que la ressource ait fini de "
"charger. Cependant, il est recommandé d'utiliser [method "
"load_threaded_get_status] pour savoir quand le chargement est réellement "
"terminé."

msgid ""
"Loads the resource using threads. If [param use_sub_threads] is [code]true[/"
"code], multiple threads will be used to load the resource, which makes "
"loading faster, but may affect the main thread (and thus cause game "
"slowdowns).\n"
"The [param cache_mode] parameter defines whether and how the cache should be "
"used or updated when loading the resource."
msgstr ""
"Charge la ressource en utilisant des threads. Si [param use_sub_threads] vaut "
"[code]true[/code], plusieurs threads seront utilisés pour charger la "
"ressource, ce qui rend le chargement plus rapide, mais peut affecter le "
"thread principal (et donc causer des ralentissements de jeu).\n"
"Le paramètre [param cache_mode] définit si et comment le cache devrait être "
"utilisé ou mis à jour lors du chargement de la ressource."

msgid "Unregisters the given [ResourceFormatLoader]."
msgstr "Désenregistre le [ResourceFormatLoader] donné."

msgid ""
"Changes the behavior on missing sub-resources. The default behavior is to "
"abort loading."
msgstr ""
"Change le comportement pour les sous-ressources manquantes. Le comportement "
"par défaut est d'annuler le chargement."

msgid ""
"The resource is invalid, or has not been loaded with [method "
"load_threaded_request]."
msgstr ""
"La ressource est invalide, ou n'a pas été chargée avec [method "
"load_threaded_request]."

msgid "The resource is still being loaded."
msgstr "La ressource est toujours en cours de chargement."

msgid "Some error occurred during loading and it failed."
msgstr "Une erreur s'est produite lors du chargement et il a échoué."

msgid ""
"The resource was loaded successfully and can be accessed via [method "
"load_threaded_get]."
msgstr ""
"La ressource a été chargée avec succès et peut être consultée via [method "
"load_threaded_get]."

msgid "A node used to preload sub-resources inside a scene."
msgstr "Un nœud utilisé pour précharger des sous-ressources dans une scène."

msgid ""
"This node is used to preload sub-resources inside a scene, so when the scene "
"is loaded, all the resources are ready to use and can be retrieved from the "
"preloader. You can add the resources using the ResourcePreloader tab when the "
"node is selected.\n"
"GDScript has a simplified [method @GDScript.preload] built-in method which "
"can be used in most situations, leaving the use of [ResourcePreloader] for "
"more advanced scenarios."
msgstr ""
"Ce nœud est utilisé pour précharger des sous-ressources à l'intérieur d'une "
"scène, de sorte que lorsque la scène est chargée, toutes les ressources sont "
"prêtes à être utilisées et peuvent être récupérées à partir du pré-chargeur. "
"Vous pouvez ajouter les ressources en utilisant l'onglet ResourcePreloader "
"lorsque le nœud est sélectionné.\n"
"GDScript a une méthode intégrée [method @GDScript.preload] simplifiée qui "
"peut être utilisée dans la plupart des situations, laissant l'utilisation de "
"[ResourcePreloader] pour des scénarios plus avancés."

msgid ""
"Adds a resource to the preloader with the given [param name]. If a resource "
"with the given [param name] already exists, the new resource will be renamed "
"to \"[param name] N\" where N is an incrementing number starting from 2."
msgstr ""
"Ajoute une ressource au pré-chargeur avec le nom [param name] donné. Si une "
"ressource avec le nom [param name] donné existe déjà, la nouvelle ressource "
"sera renommée «[param name] N » où N est un numéro incrémentant à partir de 2."

msgid "Returns the resource associated to [param name]."
msgstr "Renvoie la ressource associée au nom [param name]."

msgid "Returns the list of resources inside the preloader."
msgstr "Renvoie la liste des ressources actuellement dans le preloader."

msgid ""
"Returns [code]true[/code] if the preloader contains a resource associated to "
"[param name]."
msgstr ""
"Renvoie [code]true[/code] si le pré-chargeur contient une ressource associée "
"au nom [param name]."

msgid "Removes the resource associated to [param name] from the preloader."
msgstr "Retire la ressource associée au nom [param name] de ce pré-chargeur."

msgid ""
"Renames a resource inside the preloader from [param name] to [param newname]."
msgstr ""
"Renomme une ressource dans le pré-chargeur de [param name] en [param newname]."

msgid "A singleton for saving [Resource]s to the filesystem."
msgstr ""
"Un singleton pour sauvegarder des [Resource]s dans le système de fichiers."

msgid ""
"Registers a new [ResourceFormatSaver]. The ResourceSaver will use the "
"ResourceFormatSaver as described in [method save].\n"
"This method is performed implicitly for ResourceFormatSavers written in "
"GDScript (see [ResourceFormatSaver] for more information)."
msgstr ""
"Enregistre un nouveau [ResourceFormatSaver]. Le ResourceSaver utilisera le "
"ResourceFormatSaver comme décrit dans [method save].\n"
"Cette méthode est effectuée implicitement pour les ResourceFormatSavers "
"écrits en GDScript (voir [ResourceFormatSaver] pour plus d'informations)."

msgid ""
"Returns the list of extensions available for saving a resource of a given "
"type."
msgstr ""
"Renvoie la liste des extensions possibles pour enregistrer une ressource de "
"ce type."

msgid "Unregisters the given [ResourceFormatSaver]."
msgstr "Désenregistre le [ResourceFormatSaver] donné."

msgid "No resource saving option."
msgstr "Aucune option d'enregistrement de ressource."

msgid "Save the resource with a path relative to the scene which uses it."
msgstr ""
"Enregistre la ressource avec un chemin relatif à la scène qui l'utilise."

msgid "Bundles external resources."
msgstr "Regroupe les ressources externes."

msgid ""
"Changes the [member Resource.resource_path] of the saved resource to match "
"its new location."
msgstr ""
"Change le chemin [member Resource.resource_path] de la ressource enregistrée "
"pour correspondre à son nouvel emplacement."

msgid ""
"Do not save editor-specific metadata (identified by their [code]__editor[/"
"code] prefix)."
msgstr ""
"Ne sauvegarde pas les méta-données spécifiques à l'éditeur (commençant par "
"[code]__editor[/code])."

msgid ""
"Take over the paths of the saved subresources (see [method "
"Resource.take_over_path])."
msgstr ""
"Remplace les chemins des sous-ressources sauvegardées (voir [method "
"Resource.take_over_path])."

msgid "Sets [constant TRANSFORM_FLAG_SCALE] into [member enable]."
msgstr "Définit [constant TRANSFORM_FLAG_SCALE] à la valeur de [member enable]."

msgid "3D Particle trails"
msgstr "Traînées de particule 3D"

msgid ""
"Determines the size of the ribbon along its length. The size of a particular "
"section segment is obtained by multiplying the baseline [member size] by the "
"value of this curve at the given distance. For values smaller than [code]0[/"
"code], the faces will be inverted. Should be a unit [Curve]."
msgstr ""
"Détermine la taille du ruban le long de sa longueur. La taille d'un segment "
"de section particulier est obtenue en multipliant le niveau de référence "
"[member size] par la valeur de cette courbe à la distance donnée. Pour les "
"valeurs inférieures à [code]0[/code], les faces seront inversées. Devrait "
"être une [Curve] unitaire."

msgid "Gives the mesh two perpendicular flat faces, making a cross shape."
msgstr ""
"Donne au maillage deux faces plates perpendiculaires, faisant une forme de "
"croix."

msgid "A custom effect for a [RichTextLabel]."
msgstr "Un effet personnalisé pour un [RichTextLabel]."

msgid "RichTextEffect test project (third-party)"
msgstr "Projet d'essai RichTextEffect (tierce-partie)"

msgid "Adds raw non-BBCode-parsed text to the tag stack."
msgstr ""
"Ajoute du texte BBCode brut (non interprété) dans le pile des marqueurs."

msgid ""
"Returns the indexes of the first and last visible characters for the given "
"[param line], as a [Vector2i].\n"
"[b]Note:[/b] If [member visible_characters_behavior] is set to [constant "
"TextServer.VC_CHARS_BEFORE_SHAPING] only visible wrapped lines are counted.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Renvoie les index des premiers et des derniers caractères visibles pour la "
"ligne [param line] donnée, en tant que [Vector2i].\n"
"[b]Note :[/b] Si [member visible_characters_behavior] est défini à [constant "
"TextServer.VC_CHARS_BEFORE_SHAPING] seules les lignes retournant à la ligne "
"visibles sont comptées.\n"
"[b]Note :[/b] Si [member threaded] est activé, cette méthode renvoie une "
"valeur pour la partie chargée du document. Utilisez [method is_finished] ou "
"[signal finished] pour déterminer si le document est entièrement chargé."

msgid ""
"Returns the total number of characters from text tags. Does not include "
"BBCodes."
msgstr ""
"Renvoie le nombre total de caractères des marqueurs de texte. N'inclus pas "
"les BBCode."

msgid ""
"Returns the number of visible lines.\n"
"[b]Note:[/b] This method returns a correct value only after the label has "
"been drawn.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Renvoie le nombre de lignes visibles.\n"
"[b]Note :[/b] Cette méthode renvoie une valeur correcte seulement après que "
"le texte ait été dessiné.\n"
"[b]Note :[/b] Si [member threaded] est activé, cette méthode renvoie une "
"valeur pour la partie chargée du document. Utilisez [method is_finished] ou "
"[signal finished] pour déterminer si le document est entièrement chargé."

msgid "Use [method is_finished] instead."
msgstr "Utilisez [method is_finished] à la place."

msgid "Adds a newline tag to the tag stack."
msgstr "Ajouter un marqueur de retour à la ligne dans la pile des marqueurs."

msgid "Parses BBCode parameter [param expressions] into a dictionary."
msgstr "Interprète le paramètre BBCode [param expressions] en un dictionnaire."

msgid ""
"Terminates the current tag. Use after [code]push_*[/code] methods to close "
"BBCodes manually. Does not need to follow [code]add_*[/code] methods."
msgstr ""
"Termine la balise actuelle. Utilisez les méthodes [code]push_*[/code] pour "
"fermer manuellement des BBCodes. Ne doit pas forcément suivre les méthodes "
"[code]add_*[/code]."

msgid "Terminates all tags opened by [code]push_*[/code] methods."
msgstr ""
"Termine toutes les balises ouvertes par les méthodes [code]push_*[/code]."

msgid "If [code]true[/code], a right-click displays the context menu."
msgstr "Si [code]true[/code], un clic droit affiche le menu contextuel."

msgid ""
"The currently installed custom effects. This is an array of "
"[RichTextEffect]s.\n"
"To add a custom effect, it's more convenient to use [method install_effect]."
msgstr ""
"Les effets personnalisés actuellement installés. Il s'agit d'un tableau de "
"[RichTextEffect]s.\n"
"Pour ajouter un effet personnalisé, il est plus pratique d'utiliser [method "
"install_effect]."

msgid ""
"If [code]true[/code], the scrollbar is visible. Setting this to [code]false[/"
"code] does not block scrolling completely. See [method scroll_to_line]."
msgstr ""
"Si [code]true[/code], la barre de défilement est visible. Définir ceci à "
"[code]false[/code] ne bloque pas complètement le défilement. Voir [method "
"scroll_to_line]."

msgid ""
"If [code]true[/code], the window scrolls down to display new content "
"automatically."
msgstr ""
"Si [code]true[/code], la fenêtre descend/remonte automatiquement pour "
"afficher le nouveau contenu."

msgid "If [code]true[/code], the label allows text selection."
msgstr "Si [code]true[/code], le label autorise la sélection du texte."

msgid ""
"The number of spaces associated with a single tab length. Does not affect "
"[code]\\t[/code] in text tags, only indent tags."
msgstr ""
"Le nombre d'espaces associés à une seule longueur de tabulation. N'affecte "
"pas [code]\\t[/code] dans les balises de texte, seulement les balises "
"d’indentation."

msgid "Triggers when the mouse exits a meta tag."
msgstr "Se déclenche lorsque la souris sort d'une méta-marqueur."

msgid "Triggers when the mouse enters a meta tag."
msgstr "Se déclenche lorsque la souris entre dans un méta-marqueur."

msgid "Each list item has a number marker."
msgstr "Chaque élément de la liste à un chiffre comme marqueur."

msgid "Each list item has a letter marker."
msgstr "Chaque élément de la liste à une lettre comme marqueur."

msgid "Each list item has a filled circle marker."
msgstr "Chaque élément de liste a un marqueur de cercle rempli."

msgid "Selects the whole [RichTextLabel] text."
msgstr "Sélectionne le texte [RichTextLabel] entier."

msgid "If this bit is set, [method update_image] changes image texture."
msgstr ""
"Si ce bit est défini, [method update_image] modifie la texture de l'image."

msgid "If this bit is set, [method update_image] changes image size."
msgstr ""
"Si ce bit est défini, [method update_image] modifie la taille de l'image."

msgid "If this bit is set, [method update_image] changes image color."
msgstr ""
"Si ce bit est défini, [method update_image] modifie la couleur de l'image."

msgid ""
"If this bit is set, [method update_image] changes image inline alignment."
msgstr ""
"Si ce bit est défini, [method update_image] modifie l'alignement de l'image "
"incorporée."

msgid "If this bit is set, [method update_image] changes image texture region."
msgstr ""
"Si ce bit est défini, [method update_image] change la région de la texture de "
"l'image."

msgid "If this bit is set, [method update_image] changes image tooltip."
msgstr ""
"Si ce bit est défini, [method update_image] change l'info-bulle de l'image."

msgid ""
"If this bit is set, [method update_image] changes image width from/to "
"percents."
msgstr ""
"Si ce bit est défini, [method update_image] modifie la largeur de l'image de/"
"à des pourcents."

msgid "The default text color."
msgstr "La couleur par défaut du texte."

msgid "The default tint of text outline."
msgstr "La teinte par défaut de du contour du texte."

msgid ""
"The color of selected text, used when [member selection_enabled] is "
"[code]true[/code]. If equal to [code]Color(0, 0, 0, 0)[/code], it will be "
"ignored."
msgstr ""
"La couleur du texte sélectionné, utilisé quand [member selection_enabled] "
"vaut [code]true[/code]. Si égale à [code]Color(0, 0, 0, 0)[/code], elle sera "
"ignorée."

msgid "The color of the font's shadow."
msgstr "La couleur de l'ombre de la police."

msgid "The color of the selection box."
msgstr "La couleur de la boîte de sélection."

msgid "The default background color for even rows."
msgstr "La couleur d'arrière-plan par défaut pour les lignes paires."

msgid "The default background color for odd rows."
msgstr "La couleur d'arrière-plan par défaut pour les lignes impaires."

msgid "The horizontal offset of the font's shadow."
msgstr "Le décalage horizontal pour l'ombre de la police."

msgid "The vertical offset of the font's shadow."
msgstr "Le décalage vertical pour l'ombre de la police."

msgid "The horizontal separation of elements in a table."
msgstr "La séparation horizontale des éléments dans un tableau."

msgid "The vertical separation of elements in a table."
msgstr "La séparation verticale des éléments dans un tableau."

msgid "The font used for bold text."
msgstr "La police utilisée pour le texte en gras."

msgid "The font used for bold italics text."
msgstr "La police utilisée pour les textes italiques gras."

msgid "The font used for italics text."
msgstr "La police utilisée pour le texte en italique."

msgid "The font used for monospace text."
msgstr "La police utilisée pour le texte monospace."

msgid "The default text font."
msgstr "La police par défaut du texte."

msgid "The font size used for bold text."
msgstr "La taille de police utilisée pour du texte en gras."

msgid "The font size used for italics text."
msgstr "La taille de police utilisée pour du texte en italique."

msgid "The font size used for monospace text."
msgstr "La taille de police utilisée pour du texte monospace."

msgid "The default text font size."
msgstr "La taille de police du texte par défaut."

msgid "The normal background for the [RichTextLabel]."
msgstr "L'arrière-plan normal du [RichTextLabel]."

msgid "A handle for a [Resource]'s unique identifier."
msgstr "Une handle pour un identifiant unique de [Resource]."

msgid ""
"The RID [Variant] type is used to access a low-level resource by its unique "
"ID. RIDs are opaque, which means they do not grant access to the resource by "
"themselves. They are used by the low-level server classes, such as "
"[DisplayServer], [RenderingServer], [TextServer], etc.\n"
"A low-level resource may correspond to a high-level [Resource], such as "
"[Texture] or [Mesh].\n"
"[b]Note:[/b] RIDs are only useful during the current session. It won't "
"correspond to a similar resource if sent over a network, or loaded from a "
"file at a later time."
msgstr ""
"Le type [Variant] RID est utilisé pour accéder à une ressource de bas-niveau "
"par son ID unique. Les RID sont opaques, ce qui signifie qu'ils n'accordent "
"pas accès à la ressource par eux-mêmes. Ils sont utilisés par les classes de "
"serveur de bas-niveau, comme [DisplayServer], [RenderingServer], "
"[TextServer], etc.\n"
"Une ressource de bas niveau peut correspondre à une [Resource] de haut-"
"niveau, comme [Texture] ou [Mesh].\n"
"[b]Note : [/b] Les RID ne sont utiles que pendant la session courante. Ils ne "
"correspondront pas à une ressource similaire si envoyés sur un réseau ou "
"chargés à partir d'un fichier à une date ultérieure."

msgid "Constructs an empty [RID] with the invalid ID [code]0[/code]."
msgstr "Construit un [RID] vide avec l'identifiant invalide [code]0[/code]."

msgid "Returns the ID of the referenced low-level resource."
msgstr "Renvoie l'ID de la ressource de bas-niveau référencée."

msgid "Returns [code]true[/code] if the [RID] is not [code]0[/code]."
msgstr "Renvoie [code]true[/code] si le [RID] n'est pas [code]0[/code]."

msgid "Returns [code]true[/code] if the [RID]s are not equal."
msgstr "Renvoie [code]true[/code] si les [RID]s ne sont pas égaux."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is less than [param right]'s ID."
msgstr ""
"Renvoie [code]true[/code] si l'ID du [RID] est inférieur à l'ID de [param "
"right]."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is less than or equal to [param "
"right]'s ID."
msgstr ""
"Renvoie [code]true[/code] si l'ID du [RID] est inférieur ou égal à l'ID de "
"[param right]."

msgid ""
"Returns [code]true[/code] if both [RID]s are equal, which means they both "
"refer to the same low-level resource."
msgstr ""
"Renvoie [code]true[/code] si les deux [RID] sont égaux, ce qui signifie "
"qu'ils réfèrent tous deux à la même ressource de bas-niveau."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is greater than [param right]'s "
"ID."
msgstr ""
"Renvoie [code]true[/code] si l'ID du [RID] est supérieur à l'ID de [param "
"right]."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is greater than or equal to "
"[param right]'s ID."
msgstr ""
"Renvoie [code]true[/code] si l'ID du [RID] est supérieur ou égal à l'ID de "
"[param right]."

msgid "A 2D physics body that is moved by a physics simulation."
msgstr "Un corps physique 2D qui est déplacé par une simulation physique."

msgid ""
"[RigidBody2D] implements full 2D physics. It cannot be controlled directly, "
"instead, you must apply forces to it (gravity, impulses, etc.), and the "
"physics simulation will calculate the resulting movement, rotation, react to "
"collisions, and affect other physics bodies in its path.\n"
"The body's behavior can be adjusted via [member lock_rotation], [member "
"freeze], and [member freeze_mode]. By changing various properties of the "
"object, such as [member mass], you can control how the physics simulation "
"acts on it.\n"
"A rigid body will always maintain its shape and size, even when forces are "
"applied to it. It is useful for objects that can be interacted with in an "
"environment, such as a tree that can be knocked over or a stack of crates "
"that can be pushed around.\n"
"If you need to directly affect the body, prefer [method _integrate_forces] as "
"it allows you to directly access the physics state.\n"
"If you need to override the default physics behavior, you can write a custom "
"force integration function. See [member custom_integrator].\n"
"[b]Note:[/b] Changing the 2D transform or [member linear_velocity] of a "
"[RigidBody2D] very often may lead to some unpredictable behaviors. This also "
"happens when a [RigidBody2D] is the descendant of a constantly moving node, "
"like another [RigidBody2D], as that will cause its global transform to be set "
"whenever its ancestor moves."
msgstr ""
"[RigidBody2D] implémente la physique 2D complète. Il ne peut pas être "
"contrôlé directement, au lieu de cela, vous devez appliquer des forces à "
"celui-ci (gravité, impulsions, etc.), et la simulation physique calculera le "
"mouvement résultant, la rotation, la réaction aux collisions et effets sur "
"d'autres corps de physique dans son chemin.\n"
"Le comportement du corps peut être ajusté par [member lock_rotation], [member "
"freeze], et [member freeze_mode]. En changeant diverses propriétés de "
"l'objet, comme [member mass], vous pouvez contrôler comment la simulation "
"physique agit sur lui.\n"
"Un corps rigide maintiendra toujours sa forme et sa taille, même lorsque des "
"forces lui sont appliquées. Il est utile pour les objets qui peuvent être "
"interagis avec dans un environnement, comme un arbre qui peut être renversé "
"ou une pile de caisses qui peut être bousculée.\n"
"Si vous devez directement affecter le corps, préférez [method "
"_integrate_forces] car il vous permet d'accéder directement à l'état "
"physique.\n"
"Si vous devez redéfinir le comportement physique par défaut, vous pouvez "
"écrire une fonction d'intégration des forces personnalisée. Voir [member "
"custom_integrator].\n"
"[b]Note :[/b] Changer la transformation 2D ou [member linear_velocity] d'un "
"[RigidBody2D] peut très souvent conduire à des comportements imprévisibles. "
"Cela se produit aussi lorsqu'un [RigidBody2D] est le descendant d'un nœud "
"bougeant constamment, comme un autre [RigidBody2D], car cela fera que sa "
"transformation globale sera définie chaque fois que son ancêtre se déplace."

msgid "2D Physics Platformer Demo"
msgstr "Démo d'un jeu de plate-formes avec de la physique 2D"

msgid "Instancing Demo"
msgstr "Démo des instanciations"

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape2D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Applique une force de rotation sans affecter la position. Une force est "
"dépendante du temps et destinée à être appliquée à chaque mise à jour "
"physique.\n"
"[b]Note :[/b] L'inertie ([member inertia]) est nécessaire pour que cela "
"fonctionne. Pour avoir de l’inertie ([member inertia]), un [CollisionShape2D] "
"actif doit être un enfant du nœud, ou vous pouvez définir manuellement "
"[member inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape2D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Applique une impulsion de rotation au corps sans affecter la position.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_force\" sinon).\n"
"[b]Note :[/b] L'inertie ([member inertia]) est nécessaire pour que cela "
"fonctionne. Pour avoir de l’inertie ([member inertia]), un [CollisionShape2D] "
"actif doit être un enfant du nœud, ou vous pouvez définir manuellement "
"[member inertia]."

msgid ""
"Returns a list of the bodies colliding with this one. Requires [member "
"contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
msgstr ""
"Renvoie une liste des corps en collision avec celui-ci. Nécessite [member "
"contact_monitor] d'être défini à [code]true[/code] et [member "
"max_contacts_reported] d'être défini assez haut pour détecter toutes les "
"collisions.\n"
"[b]Note :[/b] Le résultat de ce test n'est pas immédiat après le déplacement "
"des objets. Pour la performance, la liste des collisions est mise à jour une "
"fois par trame et avant l'étape de physique. Envisagez d'utiliser des signaux "
"à la place."

msgid ""
"Returns the number of contacts this body has with other bodies. By default, "
"this returns 0 unless bodies are configured to monitor contacts (see [member "
"contact_monitor]).\n"
"[b]Note:[/b] To retrieve the colliding bodies, use [method "
"get_colliding_bodies]."
msgstr ""
"Renvoie le nombre de contacts que ce corps a avec d'autres corps. Par défaut, "
"cela renvoie 0 sauf si les corps sont configurés pour surveiller les contacts "
"(voir [member contact_monitor]).\n"
"[b]Note :[/b] Pour récupérer les corps en collision, utilisez [method "
"get_colliding_bodies]."

msgid ""
"Sets the body's velocity on the given axis. The velocity in the given vector "
"axis will be set as the given vector length. This is useful for jumping "
"behavior."
msgstr ""
"Définit la vélocité du corps sur l'axe donné. La vélocité dans l'axe du "
"vecteur donné sera définie comme la longueur du vecteur donné. Utile pour le "
"comportement lors d'un saut."

msgid ""
"Damps the body's rotation. By default, the body will use the [member "
"ProjectSettings.physics/2d/default_angular_damp] setting or any value "
"override set by an [Area2D] the body is in. Depending on [member "
"angular_damp_mode], you can set [member angular_damp] to be added to or to "
"replace the body's damping value.\n"
"See [member ProjectSettings.physics/2d/default_angular_damp] for more details "
"about damping."
msgstr ""
"Amortit la rotation du corps. Par défaut, le corps utilisera le paramètre de "
"projet [member ProjectSettings.physics/2d/default_angular_damp] ou toute "
"redéfinition de valeur définie par une [Area2D] où se trouve le corps. Selon "
"[member angular_damp_mode], vous pouvez définir que [member angular_damp] "
"soit ajouté à ou va remplacer la valeur d'amortissement du corps.\n"
"Voir [member ProjectSettings.physics/2d/default_angular_damp] pour plus de "
"détails sur l'amortissement."

msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
msgstr ""
"Si [code]true[/code], le corps peut entrer en mode sommeil lorsqu'il n'y a "
"pas de mouvement. Voir [member sleeping]."

msgid ""
"The body's custom center of mass, relative to the body's origin position, "
"when [member center_of_mass_mode] is set to [constant "
"CENTER_OF_MASS_MODE_CUSTOM]. This is the balanced point of the body, where "
"applied forces only cause linear acceleration. Applying forces outside of the "
"center of mass causes angular acceleration.\n"
"When [member center_of_mass_mode] is set to [constant "
"CENTER_OF_MASS_MODE_AUTO] (default value), the center of mass is "
"automatically determined, but this does not update the value of [member "
"center_of_mass]."
msgstr ""
"Le centre de masse personnalisé du corps, relatif à la position d'origine du "
"corps, quand [member center_of_mass_mode] est défini à [constant "
"CENTER_OF_MASS_MODE_CUSTOM]. C'est le point d'équilibre du corps, où les "
"forces appliquées ne provoquent qu'une accélération linéaire. Appliquer des "
"forces en dehors du centre de masse provoque une accélération angulaire.\n"
"Lorsque [member center_of_mass_mode] est défini à [constant "
"CENTER_OF_MASS_MODE_AUTO] (valeur par défaut), le centre de masse est "
"automatiquement calculé, mais cela ne met pas à jour la valeur de [member "
"center_of_mass]."

msgid "Defines the way the body's center of mass is set."
msgstr "Définit la manière dont le centre de masse du corps est défini."

msgid ""
"The body's total constant positional forces applied during each physics "
"update.\n"
"See [method add_constant_force] and [method add_constant_central_force]."
msgstr ""
"Les forces positionnelles constantes totales du corps appliquées lors de "
"chaque mise à jour de physique.\n"
"Voir [method add_constant_force] et [method add_constant_central_force]."

msgid ""
"The body's total constant rotational forces applied during each physics "
"update.\n"
"See [method add_constant_torque]."
msgstr ""
"Les forces de rotation constantes totales du corps appliquées lors de chaque "
"mise à jour de physique.\n"
"Voir [method add_constant_torque]."

msgid ""
"If [code]true[/code], the RigidBody2D will emit signals when it collides with "
"another body.\n"
"[b]Note:[/b] By default the maximum contacts reported is set to 0, meaning "
"nothing will be recorded, see [member max_contacts_reported]."
msgstr ""
"Si [code]true[/code], le RigidBody2D émet des signaux lorsqu'il entre en "
"collision avec un autre corps.\n"
"[b]Note :[/b] Par défaut, les contacts maximaux indiqués sont fixés à 0, ce "
"qui signifie que rien ne sera enregistré, voir [member max_contacts_reported]."

msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
"collide instead of moving it and correcting its movement after collision. "
"Continuous collision detection is slower, but more precise and misses fewer "
"collisions with small, fast-moving objects. Raycasting and shapecasting "
"methods are available."
msgstr ""
"Mode de détection de collision continu.\n"
"La détection de collision continue tente de prédire où un corps en mouvement "
"va entrer en collision au lieu de le déplacer et de corriger son mouvement "
"après la collision. La détection de collision continue est plus lente, mais "
"plus précise et manque moins de collisions avec de petits objets en mouvement "
"rapide. Des méthodes de raycasting et de shapecasting sont disponibles."

msgid ""
"If [code]true[/code], the standard force integration (like gravity or "
"damping) will be disabled for this body. Other than collision response, the "
"body will only move as determined by the [method _integrate_forces] method, "
"if that virtual method is overridden.\n"
"Setting this property will call the method [method "
"PhysicsServer2D.body_set_omit_force_integration] internally."
msgstr ""
"Si [code]true[/code], l'intégration des forces standardes (comme la gravité "
"ou l'amortissement) sera désactivée pour ce corps. En dehors de la réponse à "
"une collision, le corps ne se déplacera que selon la méthode [method "
"_integrate_forces], si cette méthode virtuelle est redéfinie.\n"
"Définir cette propriété appellera la méthode [method "
"PhysicsServer2D.body_set_omit_force_integration] en interne."

msgid ""
"If [code]true[/code], the body is frozen. Gravity and forces are not applied "
"anymore.\n"
"See [member freeze_mode] to set the body's behavior when frozen.\n"
"For a body that is always frozen, use [StaticBody2D] or [AnimatableBody2D] "
"instead."
msgstr ""
"Si [code]true[/code], le corps est gelé. La gravité et les forces ne sont "
"plus appliquées.\n"
"Voir [member freeze_mode] pour définir le comportement du corps lorsqu'il est "
"gelé.\n"
"Pour un corps qui est toujours gelé, utilisez [StaticBody2D] ou "
"[AnimatableBody2D] à la place."

msgid ""
"The body's freeze mode. Can be used to set the body's behavior when [member "
"freeze] is enabled.\n"
"For a body that is always frozen, use [StaticBody2D] or [AnimatableBody2D] "
"instead."
msgstr ""
"Le mode de gel du corps. Peut être utilisé pour définir le comportement du "
"corps lorsque [member freeze] est activé.\n"
"Pour un corps toujours gelé, utilisez [StaticBody2D] ou [AnimatableBody2D] à "
"la place."

msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [member ProjectSettings.physics/2d/default_gravity] project setting "
"and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
"Multiplie la gravité appliquée au corps. La gravité du corps est calculée à "
"partir du paramètre du projet [member ProjectSettings.physics/2d/"
"default_gravity] et/ou de tout vecteur de gravité supplémentaire appliqué par "
"des [Area2D]s."

msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of inertia "
"is usually computed automatically from the mass and the shapes, but this "
"property allows you to set a custom value.\n"
"If set to [code]0[/code], inertia is automatically computed (default value).\n"
"[b]Note:[/b] This value does not change when inertia is automatically "
"computed. Use [PhysicsServer2D] to get the computed inertia.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var ball = $Ball\n"
"\n"
"func get_ball_inertia():\n"
"\treturn 1.0 / "
"PhysicsServer2D.body_get_direct_state(ball.get_rid()).inverse_inertia\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody2D _ball;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_ball = GetNode<RigidBody2D>(\"Ball\");\n"
"}\n"
"\n"
"private float GetBallInertia()\n"
"{\n"
"\treturn 1.0f / "
"PhysicsServer2D.BodyGetDirectState(_ball.GetRid()).InverseInertia;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Le moment d'inertie du corps. C'est comme la masse, mais pour la rotation : "
"il détermine combien de couple il faut pour tourner le corps. Le moment "
"d'inertie est généralement calculé automatiquement à partir de la masse et "
"des formes, mais cette propriété vous permet de définir une valeur "
"personnalisée.\n"
"Si elle est définie à [code]0[/code], l'inertie est automatiquement calculée "
"(valeur par défaut).\n"
"[b]Note :[/b] Cette valeur ne change pas lorsque l'inertie est "
"automatiquement calculée. Utilisez [PhysicsServer2D] pour obtenir l'inertie "
"calculée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var balle = $Balle\n"
"\n"
"func obtenir_inertie_balle():\n"
"\treturn 1.0 / "
"PhysicsServer2D.body_get_direct_state(ball.get_rid()).inverse_inertia\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody2D _balle;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_balle = GetNode<RigidBody2D>(\"Balle\");\n"
"}\n"
"\n"
"private float ObtenirInertieBalle()\n"
"{\n"
"\treturn 1.0f / "
"PhysicsServer2D.BodyGetDirectState(_ball.GetRid()).InverseInertia;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Damps the body's movement. By default, the body will use the [member "
"ProjectSettings.physics/2d/default_linear_damp] setting or any value override "
"set by an [Area2D] the body is in. Depending on [member linear_damp_mode], "
"you can set [member linear_damp] to be added to or to replace the body's "
"damping value.\n"
"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Amortit le mouvement du corps. Par défaut, le corps utilisera le "
"paramètre[member ProjectSettings.physics/2d/default_linear_damp] ou toute "
"redéfinition de valeur définie par une [Area2D] où se trouve le corps. Selon "
"[member linear_damp_mode], vous pouvez définir que [member linear_damp] soit "
"ajouté à ou va remplacer la valeur d'amortissement du corps.\n"
"Voir [member ProjectSettings.physics/2d/default_linear_damp] pour plus de "
"détails sur l'amortissement."

msgid ""
"The body's linear velocity in pixels per second. Can be used sporadically, "
"but [b]don't set this every frame[/b], because physics may run in another "
"thread and runs at a different granularity. Use [method _integrate_forces] as "
"your process loop for precise control of the body state."
msgstr ""
"La vitesse linéaire du corps en pixels par seconde. Peut être utilisé "
"sporadiquement, mais [b]ne pas définir à chaque trame[/b], car la physique "
"peut s'exécuter dans un autre fil d'exécution et s'exécute à une granularité "
"différente. Utilisez [method _integrate_forces] comme boucle de traitement "
"pour un contrôle précis de l'état du corps."

msgid ""
"If [code]true[/code], the body cannot rotate. Gravity and forces only apply "
"linear movement."
msgstr ""
"Si [code]true[/code], le corps ne peut pas pivoter. La gravité et les forces "
"n'appliquent qu'un mouvement linéaire."

msgid ""
"The maximum number of contacts that will be recorded. Requires a value "
"greater than 0 and [member contact_monitor] to be set to [code]true[/code] to "
"start to register contacts. Use [method get_contact_count] to retrieve the "
"count or [method get_colliding_bodies] to retrieve bodies that have been "
"collided with.\n"
"[b]Note:[/b] The number of contacts is different from the number of "
"collisions. Collisions between parallel edges will result in two contacts "
"(one at each end), and collisions between parallel faces will result in four "
"contacts (one at each corner)."
msgstr ""
"Le nombre maximal de contacts qui seront enregistrés. Nécessite une valeur "
"supérieure à 0 et [member contact_monitor] défini à [code]true[/code] pour "
"commencer à enregistrer les contacts. Utilisez [method get_contact_count] "
"pour récupérer le compte ou [method get_colliding_bodies] pour récupérer les "
"corps qui sont entrés en collision avec.\n"
"[b]Note :[/b] Le nombre de contacts est différent du nombre de collisions. "
"Les collisions entre des bords parallèles se traduiront par deux contacts (un "
"à chaque extrémité), et les collisions entre les faces parallèles se "
"traduiront par quatre contacts (un à chaque coin)."

msgid ""
"The physics material override for the body.\n"
"If a material is assigned to this property, it will be used instead of any "
"other physics material, such as an inherited one."
msgstr ""
"Le matériau physique de remplacement pour le corps.\n"
"Si un matériau est affecté à cette propriété, il sera utilisé au lieu de tout "
"autre matériau physique, tel qu'un matériau hérité."

msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by using "
"the [method apply_impulse] or [method apply_force] methods."
msgstr ""
"Si [code]true[/code], le corps ne bougera pas et ne calculera pas les forces "
"jusqu'à ce qu'un autre corps le réveille à cause, par exemple, d'une "
"collision, ou en utilisant les méthodes [method apply_impulse] ou [method "
"apply_force]."

msgid ""
"Emitted when a collision with another [PhysicsBody2D] or [TileMap] occurs. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap]."
msgstr ""
"Émis lorsqu'une collision avec un autre [PhysicsBody2D] or [TileMap] arrive. "
"Nécessite que [member contact_monitor] soit défini à [code]true[/code] et que "
"[member max_contacts_reported] soit défini assez haut pour détecter toutes "
"les collisions. Les [TileMap] sont détectées si le [TileSet] a des Collision "
"[Shape2D]s.\n"
"[param body] le [Node], s'il existe dans l'arbre, de l'autre [PhysicsBody2D] "
"ou [TileMap]."

msgid ""
"Emitted when the collision with another [PhysicsBody2D] or [TileMap] ends. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap]."
msgstr ""
"Émis lorsque la collision avec un autre [PhysicsBody2D] or [TileMap] se "
"finit. Nécessite que [member contact_monitor] soit défini à [code]true[/code] "
"et que [member max_contacts_reported] soit défini assez haut pour détecter "
"toutes les collisions. Les [TileMap] sont détectées si le [TileSet] a des "
"Collision [Shape2D]s.\n"
"[param body] le [Node], s'il existe dans l'arbre, de l'autre [PhysicsBody2D] "
"ou [TileMap]."

msgid ""
"Emitted when one of this RigidBody2D's [Shape2D]s collides with another "
"[PhysicsBody2D] or [TileMap]'s [Shape2D]s. Requires [member contact_monitor] "
"to be set to [code]true[/code] and [member max_contacts_reported] to be set "
"high enough to detect all the collisions. [TileMap]s are detected if the "
"[TileSet] has Collision [Shape2D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
"[CollisionObject2D] used by the [PhysicsServer2D].\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap].\n"
"[param body_shape_index] the index of the [Shape2D] of the other "
"[PhysicsBody2D] or [TileMap] used by the [PhysicsServer2D]. Get the "
"[CollisionShape2D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape2D] of this RigidBody2D used "
"by the [PhysicsServer2D]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Émis quand une des [Shape2D] de ce RigidBody2D entre en collision avec un "
"autre [PhysicsBody2D] ou d'une [Shape2D] d'une [TileMap]. Nécessite que "
"[member contact_monitor] soit défini à [code]true[/code] et que [member "
"max_contacts_reported] soit défini assez haut pour détecter toutes les "
"collisions. Les [TileMap] sont détectées si le [TileSet] a des Collision "
"[Shape2D]s.\n"
"[param body_rid] le [RID] de l'autre [PhysicsBody2D] ou [TileSet] utilisé par "
"le [PhysicsServer2D].\n"
"[param body] le [Node], s'il existe dans l'arbre, du [PhysicsBody2D] ou du "
"[TileMap].\n"
"[param body_shape_index] l'index de la [Shape2D] du [PhysicsBody2D] ou du "
"[TileMap] utilisé par le [PhysicsServer2D]. Obtenez le nœud "
"[CollisionShape2D] avec "
"[code]corps.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] l'index de la [Shape2D] de ce RigidBody2D utilisée "
"par le [PhysicsServer2D]. Obtenez le nœud [CollisionShape2D] avec "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."

msgid ""
"Emitted when the collision between one of this RigidBody2D's [Shape2D]s and "
"another [PhysicsBody2D] or [TileMap]'s [Shape2D]s ends. Requires [member "
"contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
"[CollisionObject2D] used by the [PhysicsServer2D].\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap].\n"
"[param body_shape_index] the index of the [Shape2D] of the other "
"[PhysicsBody2D] or [TileMap] used by the [PhysicsServer2D]. Get the "
"[CollisionShape2D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape2D] of this RigidBody2D used "
"by the [PhysicsServer2D]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Émis lorsque la collision entre l'une des [Shape2D] de ce RigidBody2D et un "
"autre [PhysicsBody2D] ou [Shape2D] de [TileMap] se termine. Nécessite que "
"[member contact_monitor] soit défini à [code]true[/code] et que [member "
"max_contacts_reported] soit défini assez haut pour détecter toutes les "
"collisions. Les [TileMap]s sont détectées si le [TileSet] a des Collision "
"[Shape2D]s.\n"
"[param body_rid] le [RID] de l'autre [PhysicsBody2D] ou [CollisionObject2D] "
"d'une [TileSet] utilisé par le [PhysicsServer2D].\n"
"[param body] le [Node], s'il existe dans l'arbre, de l'autre [PhysicsBody2D] "
"ou [TileMap].\n"
"[param body_shape_index] l'index de la [Shape2D] de l'autre [PhysicsBody2D] "
"ou [TileMap] utilisé par le [PhysicsServer2D]. Obtenez le nœud "
"[CollisionShape2D] avec "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index)[/"
"code].\n"
"[param local_shape_index] l'index de la [Shape2D] de ce RigidBody2D utilisé "
"par le [PhysicsServer2D]. Obtenez le nœud [CollisionShape2D] avec "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index)[/"
"code]."

msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
"signal. It is only emitted if the sleeping state is changed by the physics "
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
"Émis lorsque le moteur de physique change l'état de sommeil du corps.\n"
"[b]Note :[/b] Changer la valeur de [member sleeping] ne déclenchera pas ce "
"signal. Il est seulement émis si l'état de sommeil est changé par le moteur "
"de physique ou si [code]emit_signal(\"sleeping_state_changed\")[/code] est "
"utilisé."

msgid ""
"Static body freeze mode (default). The body is not affected by gravity and "
"forces. It can be only moved by user code and doesn't collide with other "
"bodies along its path."
msgstr ""
"Mode de gel du corps statique (par défaut). Le corps n'est pas affecté par la "
"gravité et les forces. Il ne peut être déplacé que par le code de "
"l'utilisateur et n'entre pas en collision avec d'autres corps le long de son "
"chemin."

msgid ""
"Kinematic body freeze mode. Similar to [constant FREEZE_MODE_STATIC], but "
"collides with other bodies along its path when moved. Useful for a frozen "
"body that needs to be animated."
msgstr ""
"Mode de gel du corps cinématique. Semblable à [constant FREEZE_MODE_STATIC], "
"mais collisionne avec d'autres corps le long de son chemin lorsqu'il est "
"déplacé. Utile pour un corps gelé qui doit être animé."

msgid ""
"In this mode, the body's center of mass is calculated automatically based on "
"its shapes. This assumes that the shapes' origins are also their center of "
"mass."
msgstr ""
"Dans ce mode, le centre de masse du corps est calculé automatiquement en "
"fonction de ses formes. Cela suppose que les origines des formes sont aussi "
"leur centre de masse."

msgid ""
"In this mode, the body's center of mass is set through [member "
"center_of_mass]. Defaults to the body's origin position."
msgstr ""
"Dans ce mode, le centre de masse du corps est défini par [member "
"center_of_mass]. La valeur par défaut est à l'origine du corps."

msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
"Détection de collision continue désactivée. C'est le moyen le plus rapide "
"pour détecter les collisions de corps, mais peut manquer les petits objets en "
"mouvement rapide."

msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
"Détection de collision continue activée par raycasting. C'est plus rapide que "
"le shapecasting mais moins précis."

msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
msgstr ""
"Détection de collisions continue activée en utilisant le shapecasting. C'est "
"la méthode de détection de collisions continue la plus lente et la plus "
"précise."

msgid "A 3D physics body that is moved by a physics simulation."
msgstr "Un corps physique 3D qui est déplacé par une simulation physique."

msgid ""
"[RigidBody3D] implements full 3D physics. It cannot be controlled directly, "
"instead, you must apply forces to it (gravity, impulses, etc.), and the "
"physics simulation will calculate the resulting movement, rotation, react to "
"collisions, and affect other physics bodies in its path.\n"
"The body's behavior can be adjusted via [member lock_rotation], [member "
"freeze], and [member freeze_mode]. By changing various properties of the "
"object, such as [member mass], you can control how the physics simulation "
"acts on it.\n"
"A rigid body will always maintain its shape and size, even when forces are "
"applied to it. It is useful for objects that can be interacted with in an "
"environment, such as a tree that can be knocked over or a stack of crates "
"that can be pushed around.\n"
"If you need to directly affect the body, prefer [method _integrate_forces] as "
"it allows you to directly access the physics state.\n"
"If you need to override the default physics behavior, you can write a custom "
"force integration function. See [member custom_integrator].\n"
"[b]Note:[/b] Changing the 3D transform or [member linear_velocity] of a "
"[RigidBody3D] very often may lead to some unpredictable behaviors. This also "
"happens when a [RigidBody3D] is the descendant of a constantly moving node, "
"like another [RigidBody3D], as that will cause its global transform to be set "
"whenever its ancestor moves."
msgstr ""
"[RigidBody2D] implémente la physique 3D complète. Il ne peut pas être "
"contrôlé directement, au lieu de cela, vous devez appliquer des forces à "
"celui-ci (gravité, impulsions, etc.), et la simulation physique calculera le "
"mouvement résultant, la rotation, la réaction aux collisions et effets sur "
"d'autres corps de physique dans son chemin.\n"
"Le comportement du corps peut être ajusté par [member lock_rotation], [member "
"freeze], et [member freeze_mode]. En changeant diverses propriétés de "
"l'objet, comme [member mass], vous pouvez contrôler comment la simulation "
"physique agit sur lui.\n"
"Un corps rigide maintiendra toujours sa forme et sa taille, même lorsque des "
"forces lui sont appliquées. Il est utile pour les objets qui peuvent être "
"interagis avec dans un environnement, comme un arbre qui peut être renversé "
"ou une pile de caisses qui peut être bousculée.\n"
"Si vous devez directement affecter le corps, préférez [method "
"_integrate_forces] car il vous permet d'accéder directement à l'état "
"physique.\n"
"Si vous devez redéfinir le comportement physique par défaut, vous pouvez "
"écrire une fonction d'intégration des forces personnalisée. Voir [member "
"custom_integrator].\n"
"[b]Note :[/b] Changer la transformation 3D ou [member linear_velocity] d'un "
"[RigidBody3D] peut très souvent conduire à des comportements imprévisibles. "
"Cela se produit aussi lorsqu'un [RigidBody3D] est le descendant d'un nœud "
"bougeant constamment, comme un autre [RigidBody3D], car cela fera que sa "
"transformation globale sera définie chaque fois que son ancêtre se déplace."

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape3D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Applique une force de rotation sans affecter la position. Une force est "
"dépendante du temps et destinée à être appliquée à chaque mise à jour "
"physique.\n"
"[b]Note :[/b] L'inertie ([member inertia]) est nécessaire pour que cela "
"fonctionne. Pour avoir de l’inertie ([member inertia]), un [CollisionShape3D] "
"actif doit être un enfant du nœud, ou vous pouvez définir manuellement "
"[member inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape3D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Applique une impulsion de rotation au corps sans affecter la position.\n"
"Une impulsion est indépendante du temps ! Appliquer une impulsion à chaque "
"trame entraînerait une force dépendante du taux de rafraîchissement. Pour "
"cette raison, elle ne devrait être utilisée que pour simuler des impacts "
"ponctuels (utilisez les fonctions \"_force\" sinon).\n"
"[b]Note :[/b] L'inertie ([member inertia]) est nécessaire pour que cela "
"fonctionne. Pour avoir de l’inertie ([member inertia]), un [CollisionShape3D] "
"actif doit être un enfant du nœud, ou vous pouvez définir manuellement "
"[member inertia]."

msgid ""
"Returns the inverse inertia tensor basis. This is used to calculate the "
"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
"Renvoie la base du tenseur d’inertie inverse. Ceci est utilisé pour calculer "
"l'accélération angulaire résultant d'un couple appliqué au [RigidBody3D]."

msgid "The RigidBody3D's rotational velocity in [i]radians[/i] per second."
msgstr "La vitesse de rotation du RigidBody3D en [i]radians[/i] par seconde."

msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides with "
"another body.\n"
"[b]Note:[/b] By default the maximum contacts reported is set to 0, meaning "
"nothing will be recorded, see [member max_contacts_reported]."
msgstr ""
"Si [code]true[/code], le RigidBody3D émettra des signaux lorsqu'il se heurte "
"à un autre corps.\n"
"[b]Note :[/b] Par défaut, les contacts maximaux indiqués sont définis à 0, ce "
"qui signifie que rien ne sera enregistré, voir [member max_contacts_reported]."

msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
"collide, instead of moving it and correcting its movement if it collided. "
"Continuous collision detection is more precise, and misses fewer impacts by "
"small, fast-moving objects. Not using continuous collision detection is "
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
"Si [code]true[/code], la détection des collisions continue est utilisée.\n"
"La détection des collisions continue tente de prédire où un corps mobile va "
"entrer en collision, au lieu de le déplacer et de corriger son mouvement s'il "
"entre en collision. La détection des collisions continue est plus précise et "
"manque moins d'impacts par les petits objets avec un mouvement rapide. Ne pas "
"utiliser la détection des collisions continue est plus rapide pour calculer, "
"mais peut manquer les petits objets avec un mouvement rapide."

msgid ""
"If [code]true[/code], the body is frozen. Gravity and forces are not applied "
"anymore.\n"
"See [member freeze_mode] to set the body's behavior when frozen.\n"
"For a body that is always frozen, use [StaticBody3D] or [AnimatableBody3D] "
"instead."
msgstr ""
"Si [code]true[/code], le corps est gelé. La gravité et les forces ne sont "
"plus appliquées.\n"
"Voir [member freeze_mode] pour définir le comportement du corps lorsqu'il est "
"gelé.\n"
"Pour un corps toujours gelé, utilisez [StaticBody3D] ou [AnimatableBody3D] à "
"la place."

msgid ""
"The body's freeze mode. Can be used to set the body's behavior when [member "
"freeze] is enabled.\n"
"For a body that is always frozen, use [StaticBody3D] or [AnimatableBody3D] "
"instead."
msgstr ""
"Le mode de gel du corps. Peut être utilisé pour définir le comportement du "
"corps lorsque [member freeze] est activé.\n"
"Pour un corps toujours gelé, utilisez [StaticBody3D] ou [AnimatableBody3D] à "
"la place."

msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body on each axis. The "
"moment of inertia is usually computed automatically from the mass and the "
"shapes, but this property allows you to set a custom value.\n"
"If set to [constant Vector3.ZERO], inertia is automatically computed (default "
"value).\n"
"[b]Note:[/b] This value does not change when inertia is automatically "
"computed. Use [PhysicsServer3D] to get the computed inertia.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var ball = $Ball\n"
"\n"
"func get_ball_inertia():\n"
"\treturn "
"PhysicsServer3D.body_get_direct_state(ball.get_rid()).inverse_inertia.inverse()\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody3D _ball;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_ball = GetNode<RigidBody3D>(\"Ball\");\n"
"}\n"
"\n"
"private Vector3 GetBallInertia()\n"
"{\n"
"\treturn "
"PhysicsServer3D.BodyGetDirectState(_ball.GetRid()).InverseInertia.Inverse();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Le moment d'inertie du corps. C'est comme la masse, mais pour la rotation : "
"il détermine combien de couple il faut pour tourner le corps sur chaque axe. "
"Le moment d'inertie est généralement calculé automatiquement à partir de la "
"masse et des formes, mais cette propriété vous permet de définir une valeur "
"personnalisée.\n"
"Si elle est définie à [constant Vector3.ZERO], l'inertie est automatiquement "
"calculée (valeur par défaut).\n"
"[b]Note :[/b] Cette valeur ne change pas lorsque l'inertie est "
"automatiquement calculée. Utilisez [PhysicsServer3D] pour obtenir l'inertie "
"calculée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var balle = $Balle\n"
"\n"
"func obtenir_inertie_balle():\n"
"\treturn 1.0 / "
"PhysicsServer.D.body_get_direct_state(ball.get_rid()).inverse_inertia\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody.D _balle;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_balle = GetNode<RigidBody3D>(\"Balle\");\n"
"}\n"
"\n"
"private float ObtenirInertieBalle()\n"
"{\n"
"\treturn 1.0f / "
"PhysicsServer3D.BodyGetDirectState(_ball.GetRid()).InverseInertia;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Damps the body's movement. By default, the body will use the [member "
"ProjectSettings.physics/3d/default_linear_damp] project setting or any value "
"override set by an [Area3D] the body is in. Depending on [member "
"linear_damp_mode], you can set [member linear_damp] to be added to or to "
"replace the body's damping value.\n"
"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Amortit le mouvement du corps. Par défaut, le corps utilisera le paramètre de "
"projet [member ProjectSettings.physics/3d/default_linear_damp] ou toute "
"redéfinition de valeur définie par une [Area3D] où se trouve le corps. Selon "
"[member linear_damp_mode], vous pouvez définir que [member linear_damp] soit "
"ajouté à ou va remplacer la valeur d'amortissement du corps.\n"
"Voir [member ProjectSettings.physics/3d/default_linear_damp] pour plus de "
"détails sur l'amortissement."

msgid ""
"Emitted when a collision with another [PhysicsBody3D] or [GridMap] occurs. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap]."
msgstr ""
"Émis lorsqu'une collision avec un autre [PhysicsBody3D] or [GridMap] arrive. "
"Nécessite que [member contact_monitor] soit défini à [code]true[/code] et que "
"[member max_contacts_reported] soit défini assez haut pour détecter toutes "
"les collisions. Les [GridMap] sont détectées si la [MeshLibrary] a des "
"Collision [Shape3D]s.\n"
"[param body] le [Node], s'il existe dans l'arbre, de l'autre [PhysicsBody3D] "
"ou [GridMap]."

msgid ""
"Emitted when the collision with another [PhysicsBody3D] or [GridMap] ends. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap]."
msgstr ""
"Émis lorsque la collision avec un autre [PhysicsBody3D] or [GridMap] se "
"finit. Nécessite que [member contact_monitor] soit défini à [code]true[/code] "
"et que [member max_contacts_reported] soit défini assez haut pour détecter "
"toutes les collisions. Les [GridMap] sont détectées si la [MeshLibrary] a des "
"Collision [Shape3D]s.\n"
"[param body] le [Node], s'il existe dans l'arbre, de l'autre [PhysicsBody3D] "
"ou [GridMap]."

msgid ""
"Emitted when one of this RigidBody3D's [Shape3D]s collides with another "
"[PhysicsBody3D] or [GridMap]'s [Shape3D]s. Requires [member contact_monitor] "
"to be set to [code]true[/code] and [member max_contacts_reported] to be set "
"high enough to detect all the collisions. [GridMap]s are detected if the "
"[MeshLibrary] has Collision [Shape3D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody3D] or [MeshLibrary]'s "
"[CollisionObject3D] used by the [PhysicsServer3D].\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap].\n"
"[param body_shape_index] the index of the [Shape3D] of the other "
"[PhysicsBody3D] or [GridMap] used by the [PhysicsServer3D]. Get the "
"[CollisionShape3D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape3D] of this RigidBody3D used "
"by the [PhysicsServer3D]. Get the [CollisionShape3D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Émis quand une des [Shape3D] de ce RigidBody3D entre en collision avec un "
"autre [PhysicsBody3D] ou d'une [Shape3D] d'une [GridMap]. Nécessite que "
"[member contact_monitor] soit défini à [code]true[/code] et que [member "
"max_contacts_reported] soit défini assez haut pour détecter toutes les "
"collisions. Les [GridMap] sont détectées si la [MeshLibrary] a des Collision "
"[Shape3D]s.\n"
"[param body_rid] le [RID] de l'autre [PhysicsBody3D] ou [CollisionObject3D] "
"de la [MeshLibrary] utilisé par le [PhysicsServer3D].\n"
"[param body] le [Node], s'il existe dans l'arbre, du [PhysicsBody3D] ou du "
"[GridMap].\n"
"[param body_shape_index] l'index de la [Shape3D] du [PhysicsBody3D] ou du "
"[GridMap] utilisé par le [PhysicsServer3D]. Obtenez le nœud "
"[CollisionShape3D] avec "
"[code]corps.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] l'index de la [Shape3D] de ce RigidBody3D utilisée "
"par le [PhysicsServer3D]. Obtenez le nœud [CollisionShape3D] avec "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."

msgid ""
"Emitted when the collision between one of this RigidBody3D's [Shape3D]s and "
"another [PhysicsBody3D] or [GridMap]'s [Shape3D]s ends. Requires [member "
"contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody3D] or [MeshLibrary]'s "
"[CollisionObject3D] used by the [PhysicsServer3D]. [GridMap]s are detected if "
"the Meshes have [Shape3D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap].\n"
"[param body_shape_index] the index of the [Shape3D] of the other "
"[PhysicsBody3D] or [GridMap] used by the [PhysicsServer3D]. Get the "
"[CollisionShape3D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape3D] of this RigidBody3D used "
"by the [PhysicsServer3D]. Get the [CollisionShape3D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Émis lorsque la collision entre l'une des [Shape3D] de ce RigidBody3D et un "
"autre [PhysicsBody3D] ou [Shape3D] de [GridMap] se termine. Nécessite que "
"[member contact_monitor] soit défini à [code]true[/code] et que [member "
"max_contacts_reported] soit défini assez haut pour détecter toutes les "
"collisions. Les [GridMap]s sont détectées si la [MeshLibrary] a des Collision "
"[Shape3D]s.\n"
"[param body_rid] le [RID] de l'autre [PhysicsBody3D] or [CollisionObject3D] "
"d'une [TileSet] utilisé par le [PhysicsServer3D].\n"
"[param body] le [Node], s'il existe dans l'arbre, de l'autre [PhysicsBody3D] "
"ou [GridMap].\n"
"[param body_shape_index] l'index de la [Shape3D] de l'autre [PhysicsBody3D] "
"ou [GridMap] utilisé par le [PhysicsServer2D]. Obtenez le nœud "
"[CollisionShape3D] avec "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index)[/"
"code].\n"
"[param local_shape_index] l'index de la [Shape3D] de ce RigidBody3D utilisé "
"par le [PhysicsServer3D]. Obtenez le nœud [CollisionShape3D] avec "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index)[/"
"code]."

msgid "Path to an [AnimationMixer] node to use as a basis for root motion."
msgstr ""
"Chemin vers un nœud [AnimationMixer] à utiliser comme base pour le mouvement "
"racine."

msgid "The grid's cell size in 3D units."
msgstr "La taille de cellule de la grille en unités 3D."

msgid "The grid's color."
msgstr "La couleur de la grille."

msgid ""
"The grid's radius in 3D units. The grid's opacity will fade gradually as the "
"distance from the origin increases until this [member radius] is reached."
msgstr ""
"Le rayon de la grille en unités 3D. L'opacité de la grille disparaîtra "
"graduellement avec la distance de l'origine jusqu'à ce que ce rayon [member "
"radius] soit atteint."

msgid ""
"If [code]true[/code], the grid's points will all be on the same Y coordinate "
"([i]local[/i] Y = 0). If [code]false[/code], the points' original Y "
"coordinate is preserved."
msgstr ""
"Si [code]true[/code], les points de la grille seront tous sur la même "
"coordonnées Y (Y [i]local[/i] = 0). Si [code]false[/code], la coordonnées Y "
"originale des points est conservée."

msgid "High-level multiplayer API implementation."
msgstr "Implémentation d'API multijoueur de haut niveau."

msgid ""
"This class is the default implementation of [MultiplayerAPI], used to provide "
"multiplayer functionalities in Godot Engine.\n"
"This implementation supports RPCs via [method Node.rpc] and [method "
"Node.rpc_id] and requires [method MultiplayerAPI.rpc] to be passed a [Node] "
"(it will fail for other object types).\n"
"This implementation additionally provide [SceneTree] replication via the "
"[MultiplayerSpawner] and [MultiplayerSynchronizer] nodes, and the "
"[SceneReplicationConfig] resource.\n"
"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
"detail and isn't meant to be used by non-Godot servers. It may change without "
"notice.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Cette classe est l'implémentation par défaut de [MultiplayerAPI], utilisée "
"pour fournir des fonctionnalités multijoueur dans le moteur.\n"
"Cette implémentation prend en charge les RPCs via [method Node.rpc] et "
"[method Node.rpc_id] et exige que [method MultiplayerAPI.rpc] reçoive un "
"[Node] (il échouera pour les autres types d'objets).\n"
"Cette implémentation fournit également à [SceneTree] de la réplication via "
"les nœuds [MultiplayerSpawner] et [MultiplayerSynchronizer], et la ressource "
"[SceneReplicationConfig].\n"
"[b]Note :[/b] Le protocole de l'API multijoueur de haut niveau est un détail "
"d'implémentation et n'est pas destiné à être utilisé par des serveurs non-"
"Godot. Il peut changer sans préavis.\n"
"[b]Note :[/b] Lors de l'export vers Android, assurez-vous d'activer "
"l'autorisation [code]INTERNET[/code] dans le préréglage d'export Android "
"avant d'exporter le projet ou d'utiliser le déploiement en un clic. Sinon, "
"les communications réseau de tout type seront bloquées par Android."

msgid ""
"Clears the current SceneMultiplayer network state (you shouldn't call this "
"unless you know what you are doing)."
msgstr ""
"Efface l'état actuel du réseau SceneMultiplayer (vous ne devriez pas appeler "
"ceci à moins que vous ne sachiez ce que vous faites)."

msgid ""
"Emitted when this MultiplayerAPI's [member MultiplayerAPI.multiplayer_peer] "
"receives a [param packet] with custom data (see [method send_bytes]). ID is "
"the peer ID of the peer that sent the packet."
msgstr ""
"Émis lorsque le [member MultiplayerAPI.multiplayer_peer] de ce MultiplayerAPI "
"reçoit un paquet [param packet] avec des données personnalisées (voir [method "
"send_bytes]). L'identifiant est l'identifiant de pair du pair qui a envoyé le "
"paquet."

msgid ""
"Configuration for properties to synchronize with a [MultiplayerSynchronizer]."
msgstr ""
"Configuration pour les propriétés à synchroniser avec un "
"[MultiplayerSynchronizer]."

msgid ""
"Adds the property identified by the given [param path] to the list of the "
"properties being synchronized, optionally passing an [param index].\n"
"[b]Note:[/b] For details on restrictions and limitations on property "
"synchronization, see [MultiplayerSynchronizer]."
msgstr ""
"Ajoute la propriété identifiée par le chemin [param path] donné à la liste "
"des propriétés synchronisées, en passant option un [param index].\n"
"[b]Note :[/b] Pour plus de détails sur les restrictions et les limitations "
"sur la synchronisation des propriétés, voir [MultiplayerSynchronizer]."

msgid "Returns a list of synchronized property [NodePath]s."
msgstr "Renvoie une liste de [NodePath]s des propriétés synchronisées."

msgid ""
"Returns [code]true[/code] if the given [param path] is configured for "
"synchronization."
msgstr ""
"Renvoie [code]true[/code] si le chemin [param path] donné est configuré pour "
"la synchronisation."

msgid "Finds the index of the given [param path]."
msgstr "Trouve l'index du chemin [param path] donné."

msgid ""
"Returns the replication mode for the property identified by the given [param "
"path]."
msgstr ""
"Renvoie le mode de réplication de la propriété identifiée par le chemin "
"[param path] donné."

msgid ""
"Returns [code]true[/code] if the property identified by the given [param "
"path] is configured to be synchronized on spawn."
msgstr ""
"Renvoie [code]true[/code] si la propriété identifiée par le chemin [param "
"path] donné est configurée pour être synchronisée lors de l'apparition."

msgid "Use [method property_get_replication_mode] instead."
msgstr "Utilisez [method property_get_replication_mode] à la place."

msgid ""
"Returns [code]true[/code] if the property identified by the given [param "
"path] is configured to be synchronized on process."
msgstr ""
"Renvoie [code]true[/code] si la propriété identifiée par le chemin [param "
"path] donné est configurée pour être synchronisée lors du traitement."

msgid ""
"Returns [code]true[/code] if the property identified by the given [param "
"path] is configured to be reliably synchronized when changes are detected on "
"process."
msgstr ""
"Renvoie [code]true[/code] si la propriété identifiée par le chemin [param "
"path] donné est configurée pour être synchronisée de manière fiable lorsque "
"des changements sont détectés lors du traitement."

msgid ""
"Sets the synchronization mode for the property identified by the given [param "
"path]."
msgstr ""
"Définit le mode de synchronisation de la propriété identifiée par le chemin "
"[param path] donné."

msgid ""
"Sets whether the property identified by the given [param path] is configured "
"to be synchronized on spawn."
msgstr ""
"Définit si la propriété identifiée par le chemin [param path] donné est "
"configurée pour être synchronisée lors de l'apparition."

msgid ""
"Use [method property_set_replication_mode] with [constant "
"REPLICATION_MODE_ALWAYS] instead."
msgstr ""
"Utilisez [method property_set_replication_mode] avec [constant "
"REPLICATION_MODE_ALWAYS] à la place."

msgid ""
"Sets whether the property identified by the given [param path] is configured "
"to be synchronized on process."
msgstr ""
"Définit si la propriété identifiée par le chemin [param path] donné est "
"configurée pour être synchronisée lors du traitement."

msgid ""
"Use [method property_set_replication_mode] with [constant "
"REPLICATION_MODE_ON_CHANGE] instead."
msgstr ""
"Utilisez [method property_set_replication_mode] avec [constant "
"REPLICATION_MODE_ON_CHANGE] à la place."

msgid ""
"Sets whether the property identified by the given [param path] is configured "
"to be reliably synchronized when changes are detected on process."
msgstr ""
"Définit si la propriété identifiée par le chemin [param path] donné est "
"configurée pour être synchronisée de manière fiable lorsque des changements "
"sont détectés lors du traitement."

msgid ""
"Removes the property identified by the given [param path] from the "
"configuration."
msgstr ""
"Retire la propriété identifiée par le chemin [param path] donné de la "
"configuration."

msgid "Do not keep the given property synchronized."
msgstr "Ne pas garder la propriété donnée synchronisée."

msgid ""
"Replicate the given property on process by constantly sending updates using "
"unreliable transfer mode."
msgstr ""
"Répliquer la propriété donnée durant le traitement en envoyant constamment "
"des mises à jour en utilisant un mode de transfert non fiable."

msgid ""
"Replicate the given property on process by sending updates using reliable "
"transfer mode when its value changes."
msgstr ""
"Répliquer la propriété donnée durant le traitement en envoyant des mises à "
"jour en utilisant un mode de transfert fiable lorsque sa valeur change."

msgid "Provides access to a scene file's information."
msgstr "Fournit un accès à l'information d'un fichier de scène."

msgid ""
"Maintains a list of resources, nodes, exported and overridden properties, and "
"built-in scripts associated with a scene. They cannot be modified from a "
"[SceneState], only accessed. Useful for peeking into what a [PackedScene] "
"contains without instantiating it.\n"
"This class cannot be instantiated directly, it is retrieved for a given scene "
"as the result of [method PackedScene.get_state]."
msgstr ""
"Maintient une liste des ressources, des nœuds, des propriétés exportées et "
"redéfinies et des scripts intégrés associés à une scène. Ils ne peuvent être "
"modifiés à partir d'un [SceneState], seulement accessibles. Utile pour jeter "
"un coup d’œil à ce qu'une [PackedScene] contient sans l'instancier.\n"
"Cette classe ne peut pas être instanciée directement, elle est récupérée pour "
"une scène donnée en tant que résultat de [method PackedScene.get_state]."

msgid ""
"Returns the [SceneState] of the scene that this scene inherits from, or "
"[code]null[/code] if it doesn't inherit from any scene."
msgstr ""
"Renvoie le [SceneState] de la scène dont cette scène hérite, ou [code]null[/"
"code] si elle n'hérite pas d'une scène."

msgid "Returns the list of bound parameters for the signal at [param idx]."
msgstr ""
"Renvoie la liste des paramètres liés pour le signal à l'index [param idx]."

msgid ""
"Returns the number of signal connections in the scene.\n"
"The [code]idx[/code] argument used to query connection metadata in other "
"[code]get_connection_*[/code] methods in the interval [code][0, "
"get_connection_count() - 1][/code]."
msgstr ""
"Renvoie le nombre de connexions de signal dans la scène.\n"
"L'argument [code]idx[/code] utilisé pour demander des métadonnées de "
"connexion dans les autres méthodes [code]get_connection_*[/code] est dans "
"l'intervalle [code][0, get_connection_count() - 1][/code]."

msgid ""
"Returns the connection flags for the signal at [param idx]. See [enum "
"Object.ConnectFlags] constants."
msgstr ""
"Renvoie les drapeaux de connexion pour le signal à l'index [param idx]. Voir "
"les constantes [enum Object.ConnectFlags]."

msgid "Returns the method connected to the signal at [param idx]."
msgstr "Renvoie la méthode connectée au signal à l'index [param idx]."

msgid "Returns the name of the signal at [param idx]."
msgstr "Renvoie le nom du signal à l'index [param idx]."

msgid ""
"Returns the path to the node that owns the signal at [param idx], relative to "
"the root node."
msgstr ""
"Renvoie le chemin vers le nœud qui possède le signal à l'index [param idx], "
"relatif au nœud racine."

msgid ""
"Returns the path to the node that owns the method connected to the signal at "
"[param idx], relative to the root node."
msgstr ""
"Renvoie le chemin vers le nœud qui possède la méthode connectée au signal à "
"l'index [param idx], relatif au nœud racine."

msgid "Returns the number of unbound parameters for the signal at [param idx]."
msgstr ""
"Renvoie le nombre de paramètres non liés pour le signal à l'index [param idx]."

msgid ""
"Returns the number of nodes in the scene.\n"
"The [code]idx[/code] argument used to query node data in other "
"[code]get_node_*[/code] methods in the interval [code][0, get_node_count() - "
"1][/code]."
msgstr ""
"Renvoie le nombre de nœuds sur la scène.\n"
"L'argument [code]idx[/code] utilisé pour demander des données de nœud dans "
"d'autres méthodes [code]get_node_*[/code] est dans l'intervalle [code][0, "
"get_node_count() - 1][/code]."

msgid "Returns the list of group names associated with the node at [param idx]."
msgstr ""
"Renvoie la liste des noms de groupe associés avec le nœud à l'index [param "
"idx]."

msgid ""
"Returns the node's index, which is its position relative to its siblings. "
"This is only relevant and saved in scenes for cases where new nodes are added "
"to an instantiated or inherited scene among siblings from the base scene. "
"Despite the name, this index is not related to the [param idx] argument used "
"here and in other methods."
msgstr ""
"Renvoie l'index du nœud, qui est sa position par rapport à ses frères. Ceci "
"est seulement pertinent et sauvegardé dans des scènes pour les cas où de "
"nouveaux nœuds sont ajoutés à une scène instanciée ou héritée parmi les "
"frères de la scène de base. Malgré le nom, cet index n'est pas lié à "
"l'argument [param idx] utilisé ici et dans d'autres méthodes."

msgid ""
"Returns a [PackedScene] for the node at [param idx] (i.e. the whole branch "
"starting at this node, with its child nodes and resources), or [code]null[/"
"code] if the node is not an instance."
msgstr ""
"Renvoie une [PackedScene] pour le nœud à l'index [param idx] (c.-à-d. toute "
"la branche à partir de ce nœud, avec ses nœuds enfants et ses ressources), ou "
"[code]null[/code] si le nœud n'est pas une instance."

msgid ""
"Returns the path to the represented scene file if the node at [param idx] is "
"an [InstancePlaceholder]."
msgstr ""
"Renvoie le chemin vers le fichier de scène représenté si le nœud à l'index "
"[param idx] est un [InstancePlaceholder]."

msgid "Returns the name of the node at [param idx]."
msgstr "Renvoie le nom du nœud à l'index [param idx]."

msgid ""
"Returns the path to the owner of the node at [param idx], relative to the "
"root node."
msgstr ""
"Renvoie le chemin vers le propriétaire du nœud à l'index [param idx], par "
"rapport au nœud racine."

msgid ""
"Returns the path to the node at [param idx].\n"
"If [param for_parent] is [code]true[/code], returns the path of the [param "
"idx] node's parent instead."
msgstr ""
"Renvoie le chemin vers le nœud à l'index [param idx].\n"
"Si [param for_parent] vaut [code]true[/code], renvoie le chemin du parent du "
"nœud d'index [param idx] à la place."

msgid ""
"Returns the number of exported or overridden properties for the node at "
"[param idx].\n"
"The [code]prop_idx[/code] argument used to query node property data in other "
"[code]get_node_property_*[/code] methods in the interval [code][0, "
"get_node_property_count() - 1][/code]."
msgstr ""
"Renvoie le nombre de propriétés exportées ou redéfinies pour le nœud à "
"l'index [param idx].\n"
"L'argument [code]prop_idx[/code] utilisé pour rechercher les données de "
"propriété de nœud dans d'autres méthodes [code]get_node_property_*[/code] est "
"dans l'intervalle [code][0, get_node_property_count() - 1][/code]."

msgid ""
"Returns the name of the property at [param prop_idx] for the node at [param "
"idx]."
msgstr ""
"Renvoie le nom de la propriété à l'index [param prop_idx] pour le nœud à "
"l'index [param idx]."

msgid ""
"Returns the value of the property at [param prop_idx] for the node at [param "
"idx]."
msgstr ""
"Renvoie la valeur de la propriété à l'index [param prop_idx] pour le nœud à "
"l'index [param idx]."

msgid "Returns the type of the node at [param idx]."
msgstr "Renvoie le type du nœud à l'index [param idx]."

msgid "Returns the resource path to the represented [PackedScene]."
msgstr "Renvoie le chemin de ressource vers la [PackedScene] représentée."

msgid ""
"Returns [code]true[/code] if the node at [param idx] is an "
"[InstancePlaceholder]."
msgstr ""
"Renvoie [code]true[/code] si le nœud à l'index [param idx] est un "
"[InstancePlaceholder]."

msgid ""
"If passed to [method PackedScene.instantiate], blocks edits to the scene "
"state."
msgstr ""
"Si passé à [method PackedScene.instantiate], bloque les modifications à "
"l'état de la scène."

msgid ""
"If passed to [method PackedScene.instantiate], provides inherited scene "
"resources to the local scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Si passé à [method PackedScene.instantiate], fournit les ressources de la "
"scène héritée à la scène locale.\n"
"[b]Note :[/b] Seulement disponible dans les compilations d'éditeur."

msgid ""
"If passed to [method PackedScene.instantiate], it's similar to [constant "
"GEN_EDIT_STATE_MAIN], but for the case where the scene is being instantiated "
"to be the base of another one.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"S'il est passé à [method PackedScene.instantiate], il est similaire à "
"[constant GEN_EDIT_STATE_MAIN], mais pour les cas où la scène est instanciée "
"pour être la base d'une autre scène.\n"
"[b]Note :[/b] Seulement disponible dans les compilations d'éditeur."

msgid "Manages the game loop via a hierarchy of nodes."
msgstr "Gère la boucle du jeu via une hiérarchie de nœuds."

msgid ""
"As one of the most important classes, the [SceneTree] manages the hierarchy "
"of nodes in a scene, as well as scenes themselves. Nodes can be added, "
"fetched and removed. The whole scene tree (and thus the current scene) can be "
"paused. Scenes can be loaded, switched and reloaded.\n"
"You can also use the [SceneTree] to organize your nodes into [b]groups[/b]: "
"every node can be added to as many groups as you want to create, e.g. an "
"\"enemy\" group. You can then iterate these groups or even call methods and "
"set properties on all the nodes belonging to any given group.\n"
"[SceneTree] is the default [MainLoop] implementation used by the engine, and "
"is thus in charge of the game loop."
msgstr ""
"En tant qu'une des classes les plus importantes, le [SceneTree] gère la "
"hiérarchie des nœuds dans une scène, ainsi que les scènes elles-mêmes. Les "
"nœuds peuvent être ajoutés, récupérés et enlevés. L'arborescence de scène "
"entière (et donc la scène actuelle) peut être mise pause. Les scènes peuvent "
"être chargées, échangées et rechargées.\n"
"Vous pouvez également utiliser le [SceneTree] pour organiser vos nœuds en "
"[b]groupes[/b] : chaque nœud peut être ajouté à autant de groupes que vous "
"voulez créer, par exemple un groupe \"ennemi\". Vous pouvez ensuite itérer "
"sur ces groupes ou même appeler des méthodes et définir des propriétés sur "
"tous les nœuds appartenant à un groupe donné.\n"
"[SceneTree] est l'implémentation de [MainLoop] par défaut utilisée par le "
"moteur, et est donc en charge de la boucle du jeu."

msgid "SceneTree"
msgstr "SceneTree"

msgid ""
"Calls [param method] on each node inside this tree added to the given [param "
"group]. You can pass arguments to [param method] by specifying them at the "
"end of this method call. Nodes that cannot call [param method] (either "
"because the method doesn't exist or the arguments do not match) are ignored. "
"See also [method set_group] and [method notify_group].\n"
"[b]Note:[/b] This method acts immediately on all selected nodes at once, "
"which may cause stuttering in some performance-intensive situations.\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Appelle la méthode [param method] sur chaque nœud à l'intérieur de cette "
"arborescence ajouté au groupe [param group] donné. Vous pouvez passer des "
"arguments à [param method] en les spécifiant à la fin de cet appel de "
"méthode. Les nœuds qui ne peuvent pas appeler [param method] (car la méthode "
"n'existe pas ou que les arguments ne correspondent pas) sont ignorés. Voir "
"aussi [method set_group] et [method notify_group].\n"
"[b]Note :[/b] Cette méthode agit immédiatement sur tous les nœuds "
"sélectionnés en une fois, ce qui peut provoquer des ralentissements dans "
"certaines situations avec beaucoup de calculs.\n"
"[b]Note :[/b] En C#, [param method] doit être en snake_case lorsqu'il s'agit "
"de méthodes Godot intégrées. Préférez utiliser les noms exposés dans la "
"classe [code]MethodName[/code] pour éviter d'attribuer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Calls the given [param method] on each node inside this tree added to the "
"given [param group]. Use [param flags] to customize this method's behavior "
"(see [enum GroupCallFlags]). Additional arguments for [param method] can be "
"passed at the end of this method. Nodes that cannot call [param method] "
"(either because the method doesn't exist or the arguments do not match) are "
"ignored.\n"
"[codeblock]\n"
"# Calls \"hide\" to all nodes of the \"enemies\" group, at the end of the "
"frame and in reverse tree order.\n"
"get_tree().call_group_flags(\n"
"\t\tSceneTree.GROUP_CALL_DEFERRED | SceneTree.GROUP_CALL_REVERSE,\n"
"\t\t\"enemies\", \"hide\")\n"
"[/codeblock]\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Appelle la méthode [param method] sur chaque nœud à l'intérieur de cette "
"arborescence ajouté au groupe [param group] donné. Utilisez [param flags] "
"pour personnaliser le comportement de cette méthode (voir [enum "
"GroupCallFlags]). Des arguments supplémentaires pour [param method] peuvent "
"être passés à la fin de cette méthode. Les nœuds qui ne peuvent pas appeler "
"[param method] (que la méthode n'existe pas ou que les arguments ne "
"correspondent pas) sont ignorés.\n"
"[codeblock]\n"
"# Appelle \"cacher\" sur tous les nœuds du groupe \"ennemis\", à la fin de la "
"trame et dans l'ordre inverse de l'arborescence.\n"
"get_tree().call_group_flags(\n"
"\t\tSceneTree.GROUP_CALL_DEFERRED | SceneTree.GROUP_CALL_REVERSE,\n"
"\t\t\"ennemis\", \"cacher\")\n"
"[/codeblock]\n"
"[b]Note :[/b] En C#, [param method] doit être en snake_case lorsqu'il s'agit "
"de méthodes Godot intégrées. Préférez utiliser les noms exposés dans la "
"classe [code]MethodName[/code] pour éviter d'attribuer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Changes the running scene to the one at the given [param path], after loading "
"it into a [PackedScene] and creating a new instance.\n"
"Returns [constant OK] on success, [constant ERR_CANT_OPEN] if the [param "
"path] cannot be loaded into a [PackedScene], or [constant ERR_CANT_CREATE] if "
"that scene cannot be instantiated.\n"
"[b]Note:[/b] See [method change_scene_to_packed] for details on the order of "
"operations."
msgstr ""
"Change la scène en cours d'exécution à celle au chemin [param path] donné, "
"après le chargement dans une [PackedScene] et la création d'une nouvelle "
"instance.\n"
"Renvoie [constant OK] lors du succès, [constant ERR_CANT_OPEN] si le [param "
"path] ne peut pas être chargé dans une [PackedScene], ou [constant "
"ERR_CANT_CREATE] si cette scène ne peut pas être instanciée.\n"
"[b]Note :[/b] Voir [method change_scene_to_packed] pour plus de détails sur "
"l'ordre des opérations."

msgid ""
"Changes the running scene to a new instance of the given [PackedScene] (which "
"must be valid).\n"
"Returns [constant OK] on success, [constant ERR_CANT_CREATE] if the scene "
"cannot be instantiated, or [constant ERR_INVALID_PARAMETER] if the scene is "
"invalid.\n"
"[b]Note:[/b] Operations happen in the following order when [method "
"change_scene_to_packed] is called:\n"
"1. The current scene node is immediately removed from the tree. From that "
"point, [method Node.get_tree] called on the current (outgoing) scene will "
"return [code]null[/code]. [member current_scene] will be [code]null[/code], "
"too, because the new scene is not available yet.\n"
"2. At the end of the frame, the formerly current scene, already removed from "
"the tree, will be deleted (freed from memory) and then the new scene will be "
"instantiated and added to the tree. [method Node.get_tree] and [member "
"current_scene] will be back to working as usual.\n"
"This ensures that both scenes aren't running at the same time, while still "
"freeing the previous scene in a safe way similar to [method "
"Node.queue_free].\n"
"If you want to reliably access the new scene, await the [signal "
"scene_changed] signal."
msgstr ""
"Change la scène en cours d'exécution à une nouvelle instance de la "
"[PackedScene] donnée (qui doit être valide).\n"
"Renvoie [constant OK] lors du succès, [constant ERR_CANT_CREATE] si la scène "
"ne peut pas être instanciée, ou [constant ERR_INVALID_PARAMETER] si la scène "
"est invalide.\n"
"[b]Note :[/b] Les opérations se déroulent dans l'ordre suivant quand [method "
"change_scene_to_packed] est appelée :\n"
"1. Le nœud de la scène actuelle est immédiatement retiré de l'arbre. À partir "
"de ce point, appeler [method Node.get_tree] sur la scène courante (sortante) "
"renverra [code]null[/code]. [member current_scene] vaudra aussi [code]null[/"
"code], car la nouvelle scène n'est pas encore disponible.\n"
"2. A la fin de la trame, l'ancienne scène actuelle, déjà retirée de l'arbre, "
"sera supprimée (libérée de mémoire) et la nouvelle scène sera instanciée et "
"ajoutée à l'arbre. [method Node.get_tree] et [member current_scene] "
"recommenceront ainsi à fonctionner comme d'habitude.\n"
"Cela garantit que les deux scènes ne s'exécutent pas en même temps, tout en "
"libérant quand même la scène précédente d'une manière sécurisée semblable à "
"[method Node.queue_free].\n"
"Si vous voulez accéder de manière fiable à la nouvelle scène, attendez le "
"signal [signal scene_changed]."

msgid ""
"Returns a new [SceneTreeTimer]. After [param time_sec] in seconds have "
"passed, the timer will emit [signal SceneTreeTimer.timeout] and will be "
"automatically freed.\n"
"If [param process_always] is [code]false[/code], the timer will be paused "
"when setting [member SceneTree.paused] to [code]true[/code].\n"
"If [param process_in_physics] is [code]true[/code], the timer will update at "
"the end of the physics frame, instead of the process frame.\n"
"If [param ignore_time_scale] is [code]true[/code], the timer will ignore "
"[member Engine.time_scale] and update with the real, elapsed time.\n"
"This method is commonly used to create a one-shot delay timer, as in the "
"following example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func some_function():\n"
"\tprint(\"start\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"end\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task SomeFunction()\n"
"{\n"
"\tGD.Print(\"start\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"end\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The timer is always updated [i]after[/i] all of the nodes in the "
"tree. A node's [method Node._process] method would be called before the timer "
"updates (or [method Node._physics_process] if [param process_in_physics] is "
"set to [code]true[/code])."
msgstr ""
"Renvoie un nouveau [SceneTreeTimer]. Après que [param time_sec] secondes sont "
"passées, le minuteur émet le signal [signal SceneTreeTimer.timeout] et sera "
"automatiquement libéré.\n"
"Si [param process_always] vaut [code]false[/code], le minuteur sera "
"interrompu lorsque [member SceneTree.paused] passe à [code]true[/code].\n"
"Si [param process_in_physics] vaut [code]true[/code], le minuteur mettra à "
"jour à la fin de le trame de physique, au lieu de la trame de traitement.\n"
"Si [param ignore_time_scale] vaut [code]true[/code], le minuteur ignore "
"[member Engine.time_scale] et se met à jour avec le temps réel écoulé.\n"
"Cette méthode est couramment utilisée pour créer un minuteur de délai à usage "
"unique, comme dans l'exemple suivant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func une_fonction():\n"
"\tprint(\"début\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"fin\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task UneFonction()\n"
"{\n"
"\tGD.Print(\"début\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"fin\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Le minuteur est toujours mis à jour [i]après[/i] tous les nœuds "
"de l'arbre. La méthode [method Node._process] d'un nœud serait appelée avant "
"que le minuteur se mette à jour (ou [method Node._physics_process] si [param "
"process_in_physics] est définie à [code]true[/code])."

msgid ""
"Creates and returns a new [Tween] processed in this tree. The Tween will "
"start automatically on the next process frame or physics frame (depending on "
"its [enum Tween.TweenProcessMode]).\n"
"[b]Note:[/b] A [Tween] created using this method is not bound to any [Node]. "
"It may keep working until there is nothing left to animate. If you want the "
"[Tween] to be automatically killed when the [Node] is freed, use [method "
"Node.create_tween] or [method Tween.bind_node]."
msgstr ""
"Crée et renvoie un nouveau [Tween] traité dans cette arboresence. Le Tween "
"commencera automatiquement lors de la prochaine trame de traitement ou de "
"physique (selon son [enum Tween.TweenProcessMode]).\n"
"[b]Note :[/b] Un [Tween] créé à l'aide de cette méthode n'est lié à aucun "
"[Node]. Il peut continuer à travailler jusqu'à ce qu'il ne reste rien à "
"animer. Si vous voulez que le [Tween] soit automatiquement tué lorsque le "
"[Node] est libéré, utilisez [method Node.create_tween] ou [method "
"Tween.bind_node]."

msgid ""
"Returns the first [Node] found inside the tree, that has been added to the "
"given [param group], in scene hierarchy order. Returns [code]null[/code] if "
"no match is found. See also [method get_nodes_in_group]."
msgstr ""
"Renvoie le premier [Node] trouvé à l'intérieur de l'arborescence, qui a été "
"ajouté au groupe [param group] donné, dans l'ordre de la hiérarchie de la "
"scène. Renvoie [code]null[/code] si aucun nœud correspondant n'est trouvé. "
"Voir aussi [method get_nodes_in_group]."

msgid ""
"Returns how many physics process steps have been processed, since the "
"application started. This is [i]not[/i] a measurement of elapsed time. See "
"also [signal physics_frame]. For the number of frames rendered, see [method "
"Engine.get_process_frames]."
msgstr ""
"Renvoie combien de étapes de traitement de la physique ont été traitées "
"depuis le début de l'application. Il ne s'agit [i]pas[/i] d'une mesure du "
"temps écoulé. Voir aussi [signal physics_frame]. Pour le nombre de trames "
"rendues, voir [method Engine.get_process_frames]."

msgid ""
"Searches for the [MultiplayerAPI] configured for the given path, if one does "
"not exist it searches the parent paths until one is found. If the path is "
"empty, or none is found, the default one is returned. See [method "
"set_multiplayer]."
msgstr ""
"Cherche le [MultiplayerAPI] configuré pour le chemin donné, s'il n'existe "
"pas, cherche les chemins parents jusqu'à ce qu'un soit trouvé. Si le chemin "
"est vide, ou qu'aucun n'est trouvé, le chemin par défaut est renvoyé. Voir "
"[method set_multiplayer]."

msgid "Returns the number of nodes inside this tree."
msgstr "Renvoie le nombre de nœuds dans cet arbre."

msgid "Returns the number of nodes assigned to the given group."
msgstr "Renvoie le nombre de nœuds assignés au groupe donné."

msgid ""
"Returns an [Array] containing all nodes inside this tree, that have been "
"added to the given [param group], in scene hierarchy order."
msgstr ""
"Renvoie un [Array] contenant tous les nœuds à l'intérieur de cet arbre, qui "
"ont été ajoutés au groupe [param group] donné, dans l'ordre de la hiérarchie "
"de la scène."

msgid ""
"Returns an [Array] of currently existing [Tween]s in the tree, including "
"paused tweens."
msgstr ""
"Renvoie un [Array] des [Tween]s existant actuellement dans l'arbre, y compris "
"les tweens en pause."

msgid ""
"Returns [code]true[/code] if a node added to the given group [param name] "
"exists in the tree."
msgstr ""
"Renvoie [code]true[/code] si un nœud ajouté au groupe avec le nom [param "
"name] donné existe dans l'arbre."

msgid ""
"Returns [code]true[/code] if accessibility features are enabled, and "
"accessibility information updates are actively processed."
msgstr ""
"Renvoie [code]true[/code] si les fonctionnalités d'accessibilité sont "
"activées, et les mises à jour d'information d'accessibilité sont traitées "
"activement."

msgid ""
"Returns [code]true[/code] if accessibility features are supported by the OS "
"and enabled in project settings."
msgstr ""
"Renvoie [code]true[/code] si les fonctionnalités d'accessibilité sont "
"supportées par l'OS et activées dans les paramètres du projet."

msgid ""
"Calls [method Object.notification] with the given [param notification] to all "
"nodes inside this tree added to the [param group]. See also [url=$DOCS_URL/"
"tutorials/best_practices/godot_notifications.html]Godot notifications[/url] "
"and [method call_group] and [method set_group].\n"
"[b]Note:[/b] This method acts immediately on all selected nodes at once, "
"which may cause stuttering in some performance-intensive situations."
msgstr ""
"Appelle [method Object.notification] avec la notification [param "
"notification] donnée sur tous les nœuds dans cet arbre ajoutés au groupe "
"[param group]. Voir aussi [url=$DOCS_URL/tutorials/best_practices/"
"godot_notifications.html]Notifications Godot[/url] et [method call_group] et "
"[method set_group].\n"
"[b]Note :[/b] Cette méthode agit immédiatement sur tous les nœuds "
"sélectionnés en une fois, ce qui peut provoquer des ralentissements dans "
"certaines situations avec beaucoup de calculs."

msgid ""
"Calls [method Object.notification] with the given [param notification] to all "
"nodes inside this tree added to the [param group]. Use [param call_flags] to "
"customize this method's behavior (see [enum GroupCallFlags])."
msgstr ""
"Appelle [method Object.notification] avec la notification [param "
"notification] donnée sur tous les nœuds dans cet arbre ajoutés au groupe "
"[param group]. Utilisez [param call_flags] pour personnaliser le comportement "
"de cette méthode (voir [enum GroupCallFlags])."

msgid ""
"Queues the given [param obj] to be deleted, calling its [method Object.free] "
"at the end of the current frame. This method is similar to [method "
"Node.queue_free]."
msgstr ""
"Met en file d'attente la suppression de l'objet [param obj] donné, en "
"appelant [method Object.free] à la fin de la trame actuelle. Cette méthode "
"est similaire à [method Node.queue_free]."

msgid ""
"Quits the application at the end of the current iteration, with the given "
"[param exit_code].\n"
"By convention, an exit code of [code]0[/code] indicates success, whereas any "
"other exit code indicates an error. For portability reasons, it should be "
"between [code]0[/code] and [code]125[/code] (inclusive).\n"
"[b]Note:[/b] On iOS this method doesn't work. Instead, as recommended by the "
"[url=https://developer.apple.com/library/archive/qa/qa1561/_index.html]iOS "
"Human Interface Guidelines[/url], the user is expected to close apps via the "
"Home button."
msgstr ""
"Arrête l'application à la fin de l'itération actuelle, avec le code de sortie "
"[param exit_code] donné.\n"
"Par convention, un code de sortie de [code]0[/code] indique un succès, alors "
"que tout autre code de sortie indique une erreur. Pour des raisons de "
"portabilité, il devrait être compris entre [code]0[/code] et [code]125[/code] "
"(inclusifs).\n"
"[b]Note :[/b] Sur iOS cette méthode ne fonctionne pas. Au lieu de cela, comme "
"le recommande le [url=https://developer.apple.com/library/archive/qa/qa1561/"
"_index.html]iOS Human Interface Guidelines[/url], on s'attend à ce que "
"l'utilisateur ferme les applications avec le bouton Home."

msgid ""
"Reloads the currently active scene, replacing [member current_scene] with a "
"new instance of its original [PackedScene].\n"
"Returns [constant OK] on success, [constant ERR_UNCONFIGURED] if no [member "
"current_scene] is defined, [constant ERR_CANT_OPEN] if [member current_scene] "
"cannot be loaded into a [PackedScene], or [constant ERR_CANT_CREATE] if the "
"scene cannot be instantiated."
msgstr ""
"Recharge la scène actuellement active, en remplaçant [member current_scene] "
"par une nouvelle instance de sa [PackedScene] originale.\n"
"Renvoie [constant OK] lors du succès, [constant ERR_UNCONFIGURED] si aucune "
"scène [member current_scene] n'est définie, [constant ERR_CANT_OPEN] si "
"[member current_scene] ne peut être chargée dans une [PackedScene], ou "
"[constant ERR_CANT_CREATE] si la scène ne peut pas être instanciée."

msgid ""
"Sets the given [param property] to [param value] on all nodes inside this "
"tree added to the given [param group]. Nodes that do not have the [param "
"property] are ignored. See also [method call_group] and [method "
"notify_group].\n"
"[b]Note:[/b] This method acts immediately on all selected nodes at once, "
"which may cause stuttering in some performance-intensive situations.\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Définit la propriété [param property] donnée à la valeur [param value] sur "
"tous les nœuds à l'intérieur de cette arborescence ajoutés au groupe [param "
"group] donné. Les nœuds qui n'ont pas la propriété [param property] sont "
"ignorés. Voir aussi [method call_group] et [method notify_group].\n"
"[b]Note :[/b] Cette méthode agit immédiatement sur tous les nœuds "
"sélectionnés en une fois, ce qui peut provoquer des ralentissements dans "
"certaines situations avec beaucoup de calculs.\n"
"[b]Note :[/b] En C#, [param property] doit être en snake_case lorsqu'il "
"s'agit de méthodes Godot intégrées. Préférez utiliser les noms exposés dans "
"la classe [code]MethodName[/code] pour éviter d'attribuer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Sets the given [param property] to [param value] on all nodes inside this "
"tree added to the given [param group]. Nodes that do not have the [param "
"property] are ignored. Use [param call_flags] to customize this method's "
"behavior (see [enum GroupCallFlags]).\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Définit la propriété [param property] donnée à la valeur [param value] sur "
"tous les nœuds à l'intérieur de cette arborescence ajoutés au groupe [param "
"group] donné. Les nœuds qui n'ont pas la propriété [param property] sont "
"ignorés. Utilisez [param call_flags] pour personnaliser le comportement de "
"cette méthode (voir [enum GroupCallFlags]).\n"
"[b]Note :[/b] En C#, [param property] doit être en snake_case lorsqu'il "
"s'agit de méthodes Godot intégrées. Préférez utiliser les noms exposés dans "
"la classe [code]MethodName[/code] pour éviter d'attribuer un nouveau "
"[StringName] à chaque appel."

msgid ""
"Sets a custom [MultiplayerAPI] with the given [param root_path] (controlling "
"also the relative subpaths), or override the default one if [param root_path] "
"is empty.\n"
"[b]Note:[/b] No [MultiplayerAPI] must be configured for the subpath "
"containing [param root_path], nested custom multiplayers are not allowed. "
"I.e. if one is configured for [code]\"/root/Foo\"[/code] setting one for "
"[code]\"/root/Foo/Bar\"[/code] will cause an error.\n"
"[b]Note:[/b] [method set_multiplayer] should be called [i]before[/i] the "
"child nodes are ready at the given [param root_path]. If multiplayer nodes "
"like [MultiplayerSpawner] or [MultiplayerSynchronizer] are added to the tree "
"before the custom multiplayer API is set, they will not work."
msgstr ""
"Définit une [MultiplayerAPI] personnalisée avec le chemin racine [param "
"root_path] donné (contrôlant également les sous-chemins relatifs), ou "
"redéfinit l'API par défaut si [param root_path] est vide.\n"
"[b]Note :[/b] Aucun [MultiplayerAPI] ne doit être configuré pour le sous-"
"chemin contenant [param root_path], les API multijoueurs personnalisées ne "
"sont pas autorisées. I.e. si l'une est configurée pour [code]\"/root/Foo\"[/"
"code], en définir une pour [code]\"/root/Foo/Bar\"[/code] causera une "
"erreur.\n"
"[b]Note :[/b] [method set_multiplayer] doit être appelé [i]avant[/i] que les "
"nœuds enfants sont prêts au [param root_path] donné. Si des nœuds multijoueur "
"comme [MultiplayerSpawner] ou [MultiplayerSynchronizer] sont ajoutés à "
"l'arborescence avant que l'API multijoueur personnalisée soit définie, ils ne "
"fonctionneront pas."

msgid "If a current scene is loaded, calling this method will unload it."
msgstr ""
"Si une scène est actuellement chargée, appeler cette méthode la déchargera."

msgid ""
"If [code]true[/code], the application automatically accepts quitting "
"requests.\n"
"For mobile platforms, see [member quit_on_go_back]."
msgstr ""
"Si [code]true[/code], l'application accepte automatiquement les requêtes de "
"fermeture.\n"
"Pour les plateformes mobiles, voir [member quit_on_go_back]."

msgid ""
"The root node of the currently loaded main scene, usually as a direct child "
"of [member root]. See also [method change_scene_to_file], [method "
"change_scene_to_packed], and [method reload_current_scene].\n"
"[b]Warning:[/b] Setting this property directly may not work as expected, as "
"it does [i]not[/i] add or remove any nodes from this tree."
msgstr ""
"Le nœud racine de la scène principale actuellement chargée, habituellement "
"comme un enfant direct de [member root]. Voir aussi [method "
"change_scene_to_file], [method change_scene_to_packed], et [method "
"reload_current_scene].\n"
"[b]Attention :[/b] Définir cette propriété peut ne pas fonctionner comme "
"prévu, car elle n'ajoute ou ne retire [i]pas[/i] de nœud de cet arbre."

msgid ""
"If [code]true[/code], collision shapes will be visible when running the game "
"from the editor for debugging purposes.\n"
"[b]Note:[/b] This property is not designed to be changed at run-time. "
"Changing the value of [member debug_collisions_hint] while the project is "
"running will not have the desired effect."
msgstr ""
"Si [code]true[/code], les formes de collision seront visibles lors de "
"l'exécution du jeu de l'éditeur à des fins de débogage.\n"
"[b]Note :[/b] Cette propriété n'est pas conçue pour être changée durant "
"l'exécution. Changer la valeur de [member debug_collisions_hint] pendant que "
"le projet est en cours d'exécution n'aura pas l'effet désiré."

msgid ""
"If [code]true[/code], navigation polygons will be visible when running the "
"game from the editor for debugging purposes.\n"
"[b]Note:[/b] This property is not designed to be changed at run-time. "
"Changing the value of [member debug_navigation_hint] while the project is "
"running will not have the desired effect."
msgstr ""
"Si [code]true[/code], les polygones de navigation seront visibles lors de "
"l'exécution du jeu depuis l'éditeur à des fins de débogage.\n"
"[b]Note :[/b] Cette propriété n'est pas conçue pour être changée durant "
"l'exécution. Changer la valeur de [member debug_navigation_hint] pendant que "
"le projet est en cours d'exécution n'aura pas l'effet désiré."

msgid ""
"If [code]true[/code], curves from [Path2D] and [Path3D] nodes will be visible "
"when running the game from the editor for debugging purposes.\n"
"[b]Note:[/b] This property is not designed to be changed at run-time. "
"Changing the value of [member debug_paths_hint] while the project is running "
"will not have the desired effect."
msgstr ""
"Si [code]true[/code], les courbes des nœuds [Path2D] et [Path3D] seront "
"visibles lors de l'exécution du jeu depuis l'éditeur à des fins de débogage.\n"
"[b]Note :[/b] Cette propriété n'est pas conçue pour être changée durant "
"l'exécution. Changer la valeur de [member debug_paths_hint] pendant que le "
"projet est en cours d'exécution n'aura pas l'effet désiré."

msgid ""
"The root of the scene currently being edited in the editor. This is usually a "
"direct child of [member root].\n"
"[b]Note:[/b] This property does nothing in release builds."
msgstr ""
"La racine de la scène actuellement en cours d'édition dans l'éditeur. Il "
"s'agit généralement d'un enfant direct de la racine [member root].\n"
"[b]Note :[/b] Cette propriété ne fait rien dans les compilations de release."

msgid ""
"If [code]true[/code] (default value), enables automatic polling of the "
"[MultiplayerAPI] for this SceneTree during [signal process_frame].\n"
"If [code]false[/code], you need to manually call [method MultiplayerAPI.poll] "
"to process network packets and deliver RPCs. This allows running RPCs in a "
"different loop (e.g. physics, thread, specific time step) and for manual "
"[Mutex] protection when accessing the [MultiplayerAPI] from threads."
msgstr ""
"Si [code]true[/code] (valeur par défaut), permet le polling automatique du "
"[MultiplayerAPI] pour ce SceneTree pendant [signal process_frame].\n"
"Si [code]false[/code], vous devez appeler manuellement [method "
"MultiplayerAPI.poll] pour traiter les paquets réseau et délivrer les RPCs. "
"Cela permet d'exécuter des RPCs dans une boucle différente (p. ex. physique, "
"fil, pas de temps spécifique) et d'avoir une protection [Mutex] manuelle lors "
"de l'accès au [MultiplayerAPI] depuis des threads."

msgid ""
"If [code]true[/code], the scene tree is considered paused. This causes the "
"following behavior:\n"
"- 2D and 3D physics will be stopped, as well as collision detection and "
"related signals.\n"
"- Depending on each node's [member Node.process_mode], their [method "
"Node._process], [method Node._physics_process] and [method Node._input] "
"callback methods may not called anymore."
msgstr ""
"Si [code]true[/code], l'arborescence de scène est considérée comme mise en "
"pause. Cela provoque le comportement suivant :\n"
"- La physique 2D et 3D sera arrêtée, ainsi que la détection des collisions et "
"les signaux connexes.\n"
"- Selon le [member Node.process_mode] de chaque nœud, leurs méthodes de "
"callback [method Node._process], [method Node._physics_process] et [method "
"Node._input] peuvent ne plus être appelées."

msgid ""
"If [code]true[/code], the renderer will interpolate the transforms of objects "
"(both physics and non-physics) between the last two transforms, so that "
"smooth motion is seen even when physics ticks do not coincide with rendered "
"frames.\n"
"The default value of this property is controlled by [member "
"ProjectSettings.physics/common/physics_interpolation].\n"
"[b]Note:[/b] Although this is a global setting, finer control of individual "
"branches of the [SceneTree] is possible using [member "
"Node.physics_interpolation_mode]."
msgstr ""
"Si [code]true[/code], le moteur de rendu interpolera les transformations des "
"objets (à la fois physique et non physique) entre les deux dernières "
"transformations, de sorte à ce que le mouvement lisse soit vu même lorsque "
"les tics de physique ne coïncident pas avec les trames rendues.\n"
"La valeur par défaut de cette propriété est contrôlée par [member "
"ProjectSettings.physics/common/physics_interpolation].\n"
"[b]Note :[/b] Bien qu'il s'agisse d'un paramètre global, un contrôle plus fin "
"des branches individuelles du [SceneTree] est possible en utilisant [member "
"Node.physics_interpolation_mode]."

msgid ""
"If [code]true[/code], the application quits automatically when navigating "
"back (e.g. using the system \"Back\" button on Android).\n"
"To handle 'Go Back' button when this option is disabled, use [constant "
"DisplayServer.WINDOW_EVENT_GO_BACK_REQUEST]."
msgstr ""
"Si [code]true[/code], l'application s'arrête automatiquement lorsque vous "
"naviguez en arrière (p. ex. en utilisant le bouton « Retour » du système sur "
"Android).\n"
"Pour gérer le bouton 'Aller en arrière' lorsque cette option est désactivée, "
"utilisez [constant DisplayServer.WINDOW_EVENT_GO_BACK_REQUEST]."

msgid ""
"The tree's root [Window]. This is top-most [Node] of the scene tree, and is "
"always present. An absolute [NodePath] always starts from this node. Children "
"of the root node may include the loaded [member current_scene], as well as "
"any [url=$DOCS_URL/tutorials/scripting/singletons_autoload.html]AutoLoad[/"
"url] configured in the Project Settings.\n"
"[b]Warning:[/b] Do not delete this node. This will result in unstable "
"behavior, followed by a crash."
msgstr ""
"La racine de l'arbre. Il s'agit du [Node] le plus haut dans l'arborescence de "
"scène, et il est toujours présent. Un [NodePath] absolu part toujours de ce "
"nœud. Les enfants du nœud racine peuvent inclure la scène [member "
"current_scene] chargée, ainsi que tout [url=$DOCS_URL/tutorials/scripting/"
"singletons_autoload.html]Chargement automatique[/url] configuré dans les "
"paramètres du projet.\n"
"[b]Attention :[/b] Ne supprimez pas ce nœud. Cela résultera en un "
"comportement instable, suivi d'un plantage."

msgid "Emitted when the [param node] enters this tree."
msgstr "Émis lorsque le nœud [param node] entre dans cet arbre."

msgid ""
"Emitted when the [param node]'s [method Node.update_configuration_warnings] "
"is called. Only emitted in the editor."
msgstr ""
"Émis lorsque la méthode [method Node.update_configuration_warnings] du nœud "
"[param node] est appelée. Seulement émis dans l'éditeur."

msgid "Emitted when the [param node] exits this tree."
msgstr "Émis lorsque le nœud [param node] sort de cet arbre."

msgid "Emitted when the [param node]'s [member Node.name] is changed."
msgstr "Émis lorsque le nom [member Node.name] du nœud [param node] est changé."

msgid ""
"Emitted immediately before [method Node._physics_process] is called on every "
"node in this tree."
msgstr ""
"Émis immédiatement juste avant que [method Node._physics_process] soit "
"appelée sur chaque nœud de cet arbre."

msgid ""
"Emitted immediately before [method Node._process] is called on every node in "
"this tree."
msgstr ""
"Émis immédiatement juste avant que [method Node._process] soit appelée sur "
"chaque nœud de cet arbre."

msgid ""
"Emitted after the new scene is added to scene tree and initialized. Can be "
"used to reliably access [member current_scene] when changing scenes.\n"
"[codeblock]\n"
"# This code should be inside an autoload.\n"
"get_tree().change_scene_to_file(other_scene_path)\n"
"await get_tree().scene_changed\n"
"print(get_tree().current_scene) # Prints the new scene.\n"
"[/codeblock]"
msgstr ""
"Émis après que la nouvelle scène soit ajoutée à l'arborescence de scène et "
"initialisée. Peut être utilisé pour accéder de façon fiable à [member "
"current_scene] lorsque d'un changement de scènes.\n"
"[codeblock]\n"
"# Ce code devrait être à l'intérieur d'un chargement automatique.\n"
"get_tree().change_scene_to_file(chemin_autre_scene)\n"
"await get_tree().scene_changed\n"
"print(get_tree().current_scene) # Affiche la nouvelle scène.\n"
"[/codeblock]"

msgid ""
"Emitted any time the tree's hierarchy changes (nodes being moved, renamed, "
"etc.)."
msgstr ""
"Émis à chaque fois que la hiérarchie de l'arbre change (les nœuds sont "
"déplacés, renommés, etc...)."

msgid ""
"Emitted when the [member Node.process_mode] of any node inside the tree is "
"changed. Only emitted in the editor, to update the visibility of disabled "
"nodes."
msgstr ""
"Émis lorsque le [member Node.process_mode] d'un noeud dans l’arborescence est "
"changé. Seulement émis dans l'éditeur, pour mettre à jour la visibilité des "
"nœuds désactivés."

msgid "Call nodes within a group with no special behavior (default)."
msgstr ""
"Appeler des nœuds dans un groupe sans comportement particulier (valeur par "
"défaut)."

msgid ""
"Call nodes within a group in reverse tree hierarchy order (all nested "
"children are called before their respective parent nodes)."
msgstr ""
"Appeler les nœuds dans un groupe dans l'ordre inverse de la hiérarchie de "
"l'arbre (tous les enfants imbriqués sont appelés avant leurs nœuds parents "
"respectifs)."

msgid ""
"Call nodes within a group at the end of the current frame (can be either "
"process or physics frame), similar to [method Object.call_deferred]."
msgstr ""
"Appeler des nœuds dans un groupe à la fin de la trame actuelle (peut être une "
"trame de traitement ou de physique), semblable à [method "
"Object.call_deferred]."

msgid ""
"Call nodes within a group only once, even if the call is executed many times "
"in the same frame. Must be combined with [constant GROUP_CALL_DEFERRED] to "
"work.\n"
"[b]Note:[/b] Different arguments are not taken into account. Therefore, when "
"the same call is executed with different arguments, only the first call will "
"be performed."
msgstr ""
"Appeler tous les nœuds dans un groupe seulement une fois, même si l'appel est "
"exécuté plusieurs fois dans la même trame. Doit être combiné avec [constant "
"GROUP_CALL_DEFERRED] pour fonctionner.\n"
"[b]Note :[/b] Des arguments différents ne sont pas pris en compte. Par "
"conséquent, lorsque le même appel est exécuté avec des arguments différents, "
"seul le premier appel sera exécuté."

msgid "One-shot timer."
msgstr "Minuteur à un coup."

msgid ""
"A one-shot timer managed by the scene tree, which emits [signal timeout] on "
"completion. See also [method SceneTree.create_timer].\n"
"As opposed to [Timer], it does not require the instantiation of a node. "
"Commonly used to create a one-shot delay timer as in the following example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func some_function():\n"
"\tprint(\"Timer started.\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"Timer ended.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task SomeFunction()\n"
"{\n"
"\tGD.Print(\"Timer started.\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"Timer ended.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The timer will be dereferenced after its time elapses. To preserve the timer, "
"you can keep a reference to it. See [RefCounted].\n"
"[b]Note:[/b] The timer is processed after all of the nodes in the current "
"frame, i.e. node's [method Node._process] method would be called before the "
"timer (or [method Node._physics_process] if [code]process_in_physics[/code] "
"in [method SceneTree.create_timer] has been set to [code]true[/code])."
msgstr ""
"Un minuteur à un usage unique géré par l’arborescence de scène, qui émet un "
"signal [signal timeout] lors de la complétion. Voir aussi [method "
"SceneTree.create_timer].\n"
"Contrairement à [Timer], il ne nécessite pas l'instanciation d'un nœud. "
"Habituellement utilisé pour créer un minuteur de délai à usage unique comme "
"dans l'exemple suivant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func some_function():\n"
"\tprint(\"Le minuteur commence.\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"Le minuteur s'est fini.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task SomeFunction()\n"
"{\n"
"\tGD.Print(\"Le minuteur commence.\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"Le minuteur s'est fini.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Le minuteur sera déréférencé après que son temps soit écoulé. Pour préserver "
"le minuteur, vous pouvez garder une référence à celui-ci. Voir [RefCounted].\n"
"[b]Note :[/b] Le minuteur est traité après tous les nœuds dans le cadre "
"actuel, c'est-à-dire que la méthode [method Node._process] du nœud serait "
"appelée avant le minuteur (ou [method Node._physics_process] si "
"[code]process_in_physics[/code] dans [method SceneTree.create_timer] a été "
"définie à [code]true[/code])."

msgid "The time remaining (in seconds)."
msgstr "Le temps restant (en secondes)."

msgid "Emitted when the timer reaches 0."
msgstr "Émis quand le minuteur atteint 0."

msgid "A class stored as a resource."
msgstr "Une classe stockée en tant que ressource."

msgid "Scripting documentation index"
msgstr "Index de la documentation sur le scripting"

msgid "Returns the script directly inherited by this script."
msgstr "Retourne le script directement hérité par ce script."

msgid "Returns the script's base type."
msgstr "Renvoie le type de base du script."

msgid "Returns the default value of the specified property."
msgstr "Renvoie la valeur par défaut de la propriété spécifiée."

msgid ""
"Returns a [Dictionary] mapping method names to their RPC configuration "
"defined by this script."
msgstr ""
"Renvoie un [Dictionary] associant les noms de méthodes à leur configuration "
"RPC définies par ce script."

msgid "Returns a dictionary containing constant names and their values."
msgstr "Renvoie un dictionnaire contenant le nom et valeur des constantes."

msgid ""
"Returns the list of methods in this [Script].\n"
"[b]Note:[/b] The dictionaries returned by this method are formatted "
"identically to those returned by [method Object.get_method_list]."
msgstr ""
"Renvoie la liste des méthodes dans ce [Script].\n"
"[b]Note :[/b] Les dictionnaires renvoyés par cette méthode sont formatés de "
"façon identique à ceux renvoyés par [method Object.get_method_list]."

msgid ""
"Returns the list of properties in this [Script].\n"
"[b]Note:[/b] The dictionaries returned by this method are formatted "
"identically to those returned by [method Object.get_property_list]."
msgstr ""
"Renvoie la liste des propriétés dans ce [Script].\n"
"[b]Note :[/b] Les dictionnaires renvoyés par cette méthode sont formatés de "
"façon identique à ceux renvoyés par [method Object.get_property_list]."

msgid ""
"Returns the list of user signals defined in this [Script].\n"
"[b]Note:[/b] The dictionaries returned by this method are formatted "
"identically to those returned by [method Object.get_signal_list]."
msgstr ""
"Renvoie la liste des signaux utilisateurs dans ce [Script].\n"
"[b]Note :[/b] Les dictionnaires renvoyés par cette méthode sont formatés de "
"façon identique à ceux renvoyés par [method Object.get_signal_list]."

msgid ""
"Returns [code]true[/code] if the script, or a base class, defines a signal "
"with the given name."
msgstr ""
"Renvoie [code]true[/code] si le script, ou sa classe parente, définit un "
"signal avec le nom donné."

msgid ""
"Returns [code]true[/code] if the script contains non-empty source code.\n"
"[b]Note:[/b] If a script does not have source code, this does not mean that "
"it is invalid or unusable. For example, a [GDScript] that was exported with "
"binary tokenization has no source code, but still behaves as expected and "
"could be instantiated. This can be checked with [method can_instantiate]."
msgstr ""
"Renvoie [code]true[/code] si le script contient du code source non vide.\n"
"[b]Note :[/b] Si un script n'a pas de code source, cela ne signifie pas qu'il "
"est invalide ou inutilisable. Par exemple, un [GDScript] qui a été exporté "
"avec la tokenisation binaire n'a pas de code source, mais se comporte "
"toujours comme prévu et pourrait être instancié. Cela peut être vérifié avec "
"[method can_instantiate]."

msgid ""
"Returns [code]true[/code] if [param base_object] is an instance of this "
"script."
msgstr ""
"Renvoie [code]true[/code] si [param base_object] est une instance de ce "
"script."

msgid ""
"Returns [code]true[/code] if the script is an abstract script. An abstract "
"script does not have a constructor and cannot be instantiated."
msgstr ""
"Renvoie [code]true[/code] si le script est un script abstrait. Un script "
"abstrait n'a pas de constructeur et ne peut pas être instancié."

msgid ""
"Returns [code]true[/code] if the script is a tool script. A tool script can "
"run in the editor."
msgstr ""
"Renvoie [code]true[/code] si le script est un script outil. Un script d'outil "
"peut être exécuté dans l'éditeur."

msgid "Reloads the script's class implementation. Returns an error code."
msgstr ""
"Recharge l'implémentation de classe du script. Renvoie un code d'erreur."

msgid ""
"The script source code or an empty string if source code is not available. "
"When set, does not reload the class implementation automatically."
msgstr ""
"Le code source du script ou une chaîne vide si le code source n'est pas "
"disponible. Lorsque défini, ne recharge pas automatiquement l'implémentation "
"de classe."

msgid "Prefills required fields to configure the ScriptCreateDialog for use."
msgstr ""
"Préremplit les champs requis pour configurer le ScriptCreateDialog pour "
"utilisation."

msgid "Emitted when the user clicks the OK button."
msgstr "Émis quand un utilisateur clique sur le bouton OK."

msgid "Godot editor's script editor."
msgstr "Éditeur de script de l'éditeur Godot."

msgid ""
"Godot editor's script editor.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
"L'éditeur de script de l'éditeur Godot.\n"
"[b]Note :[/b] Cette classe ne devrait pas être instanciée directement. "
"Accédez plutôt au singleton en utilisant [method "
"EditorInterface.get_script_editor]."

msgid ""
"Removes the documentation for the given [param script].\n"
"[b]Note:[/b] This should be called whenever the script is changed to keep the "
"open documentation state up to date."
msgstr ""
"Supprime la documentation pour le [param script] donné.\n"
"[b]Note :[/b] Cela devrait être appelé chaque fois que le script est changé "
"pour garder l'état de la documentation ouverte à jour."

msgid "Returns array of breakpoints."
msgstr "Renvoie le tableau des points d'arrêt."

msgid ""
"Returns the [ScriptEditorBase] object that the user is currently editing."
msgstr ""
"Renvoie l'objet [ScriptEditorBase] que l'utilisateur est actuellement en "
"train d'éditer."

msgid "Returns a [Script] that is currently active in editor."
msgstr "Renvoie le [Script] actuellement actif dans l'éditeur."

msgid ""
"Returns an array with all [ScriptEditorBase] objects which are currently open "
"in editor."
msgstr ""
"Renvoie un tableau avec tous les objets [ScriptEditorBase] qui sont "
"actuellement ouverts dans l'éditeur."

msgid ""
"Returns an array with all [Script] objects which are currently open in editor."
msgstr ""
"Renvoie un tableau avec tous les objets [Script] qui sont actuellement "
"ouverts dans l'éditeur."

msgid "Goes to the specified line in the current script."
msgstr "Va à la ligne spécifiée dans le script actuel."

msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
"Émis lorsque l'utilisateur a changé de script actif. L'argument est un "
"[Script] fraîchement activé."

msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
msgstr ""
"Émis lorsque l'éditeur est sur le point de fermer le script actif. L'argument "
"est un [Script] qui va être fermé."

msgid "Emitted after script validation."
msgstr "Émis après la validation du script."

msgid "Emitted when the user requests contextual help."
msgstr "Émis lorsque l'utilisateur demande une aide contextuelle."

msgid ""
"Emitted when the user requests to view a specific line of a script, similar "
"to [signal go_to_method]."
msgstr ""
"Émis lorsque l'utilisateur demande de voir une ligne spécifique d'un script, "
"semblable à [signal go_to_method]."

msgid ""
"Emitted when the user changes current script or moves caret by 10 or more "
"columns within the same script."
msgstr ""
"Émis lorsque l'utilisateur modifie le script courant ou déplace le curseur de "
"10 colonnes ou plus dans le même script."

msgid "Emitted when the user request to search text in the file system."
msgstr ""
"Émis lorsque l'utilisateur demande à rechercher du texte dans le système de "
"fichiers."

msgid ""
"Return the expected argument count for the given [param method], or "
"[code]null[/code] if it can't be determined (which will then fall back to the "
"default behavior)."
msgstr ""
"Renvoie le nombre d'arguments attendus pour la méthode [param method] donnée, "
"ou [code]null[/code] si il ne peut pas être déterminé (ce qui va ensuite se "
"replier sur le comportement par défaut)."

msgid ""
"Returns [code]true[/code] if the script is an abstract script. Abstract "
"scripts cannot be instantiated directly, instead other scripts should inherit "
"them. Abstract scripts will be either unselectable or hidden in the Create "
"New Node dialog (unselectable if there are non-abstract classes inheriting "
"it, otherwise hidden)."
msgstr ""
"Renvoie [code]true[/code] si le script est un script abstrait. Les scripts "
"abstraits ne peuvent pas être instanciés directement, mais d'autres scripts "
"devraient en hériter. Les scripts abstraits seront soit non sélectionnables "
"soit cachés dans la fenêtre Créer un nouveau nœud (non sélectionnables s'il y "
"a des classes non abstraites en héritant, autrement cachés)."

msgid ""
"Returns the line where the function is defined in the code, or [code]-1[/"
"code] if the function is not present."
msgstr ""
"Renvoie la ligne où la fonction est définie dans le code, ou [code]-1[/code] "
"si la fonction n'est pas présente."

msgid "This method is not called by the engine."
msgstr "Cette méthode n'est pas appelée par le moteur."

msgid "Abstract base class for scrollbars."
msgstr "Classe de base abstraite pour les barres de défilement."

msgid ""
"Abstract base class for scrollbars, typically used to navigate through "
"content that extends beyond the visible area of a control. Scrollbars are "
"[Range]-based controls."
msgstr ""
"Classe de base abstraite pour les barres de défilement, généralement utilisée "
"pour naviguer à travers du contenu qui s'étend au-delà de la zone visible "
"d'un contrôle. Les barres de défilement sont des contrôles basés sur [Range]."

msgid ""
"Overrides the step used when clicking increment and decrement buttons or when "
"using arrow keys when the [ScrollBar] is focused."
msgstr ""
"Redéfinit le pas utilisé lorsque vous cliquez sur les boutons d'incrément et "
"de décrément de la barre de défilement ou lorsque vous utilisez des touches "
"directionnelles lorsque la [ScrollBar] a le focus."

msgid "Emitted when the scrollbar is being scrolled."
msgstr "Émis quand la barre de défilement est défilée."

msgid ""
"Icon used as a button to scroll the [ScrollBar] left/up. Supports custom step "
"using the [member ScrollBar.custom_step] property."
msgstr ""
"Icône utilisée comme un bouton pour défiler la [ScrollBar] vers la gauche/le "
"haut. Supporte un pas de déplacement personnalisé en utilisant la propriété "
"[member ScrollBar.custom_step]."

msgid "Displayed when the mouse cursor hovers over the decrement button."
msgstr "Affiché quand la souris survole le bouton de réduction."

msgid "Displayed when the decrement button is being pressed."
msgstr "Affiché quand le bouton de reduction est appuyé."

msgid ""
"Icon used as a button to scroll the [ScrollBar] right/down. Supports custom "
"step using the [member ScrollBar.custom_step] property."
msgstr ""
"Icône utilisé comme bouton pour faire défiler le [ScrollBar] vers la droite/"
"bas. Supporte un pas personnalisé en utilisant la propriété [member "
"ScrollBar.custom_step]."

msgid "Displayed when the mouse cursor hovers over the increment button."
msgstr "Affiché quand la souris survole le bouton d'augmentation."

msgid "Displayed when the increment button is being pressed."
msgstr "Affiché quand le bouton d'augmentation est appuyé."

msgid ""
"Used as texture for the grabber, the draggable element representing current "
"scroll."
msgstr ""
"Utilisé comme texture pour la poignée (\"grabber\"), l'élément mobile "
"représentant le défilement courant."

msgid "Used when the mouse hovers over the grabber."
msgstr "Utilisé lorsque la souris survole le glisseur."

msgid "Used when the grabber is being dragged."
msgstr "Utilisé quand le glisseur est en train d'être glissé."

msgid "Used as background of this [ScrollBar]."
msgstr "Utilisé comme arrière-plan de cette [ScrollBar]."

msgid "Used as background when the [ScrollBar] has the GUI focus."
msgstr "Utilisé comme arrière-plan lorsque le [ScrollBar] a le focus GUI."

msgid "A container used to provide scrollbars to a child control when needed."
msgstr ""
"Un conteneur utilisé pour fournir des barres de défilement à un contrôle "
"enfant au besoin."

msgid ""
"If [code]true[/code], the ScrollContainer will automatically scroll to "
"focused children (including indirect children) to make sure they are fully "
"visible."
msgstr ""
"Si [code]true[/code], le ScrollContainer défilera automatiquement vers les "
"enfants ayant le focus (y compris les enfants indirects) pour s'assurer "
"qu'ils soient pleinement visibles."

msgid ""
"Deadzone for touch scrolling. Lower deadzone makes the scrolling more "
"sensitive."
msgstr ""
"Zone morte pour le défilement tactile. Une zone morte plus basse rend le "
"défilement plus sensible."

msgid ""
"Overrides the [member ScrollBar.custom_step] used when clicking the internal "
"scroll bar's horizontal increment and decrement buttons or when using arrow "
"keys when the [ScrollBar] is focused."
msgstr ""
"Redéfinit le [member ScrollBar.custom_step] utilisé lorsque vous cliquez sur "
"les boutons d'incrément et de décrément horizontaux de la barre de défilement "
"ou lorsque vous utilisez des touches directionnelles lorsque la [ScrollBar] a "
"le focus."

msgid ""
"Overrides the [member ScrollBar.custom_step] used when clicking the internal "
"scroll bar's vertical increment and decrement buttons or when using arrow "
"keys when the [ScrollBar] is focused."
msgstr ""
"Redéfinit le [member ScrollBar.custom_step] utilisé lorsque vous cliquez sur "
"les boutons d'incrément et de décrément verticaux de la barre de défilement "
"ou lorsque vous utilisez des touches directionnelles lorsque la [ScrollBar] a "
"le focus."

msgid "Scrolling disabled, scrollbar will be invisible."
msgstr "Défilement désactivé, la barre de défilement sera invisible."

msgid "Scrolling enabled, scrollbar will be always visible."
msgstr "Défilement activé, la barre de défilement sera toujours visible."

msgid "Scrolling enabled, scrollbar will be hidden."
msgstr "Défilement activé, la barre de défilement sera cachée."

msgid "The background [StyleBox] of the [ScrollContainer]."
msgstr "Le [StyleBox] de l'arrière-plan du [ScrollContainer]."

msgid "A 2D line segment shape used for physics collision."
msgstr "Une forme de segment 2D utilisée pour les collisions physiques."

msgid ""
"A 2D line segment shape, intended for use in physics. Usually used to provide "
"a shape for a [CollisionShape2D]."
msgstr ""
"Une forme de segment 2D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape2D]."

msgid "The segment's first point position."
msgstr "Position du premier point du segment."

msgid "The segment's second point position."
msgstr "Position du deuxième point du segment."

msgid ""
"A 2D ray shape used for physics collision that tries to separate itself from "
"any collider."
msgstr ""
"Une forme de rayon 2D utilisée pour les collisions physiques, qui tente de se "
"séparer de tout collider."

msgid ""
"A 2D ray shape, intended for use in physics. Usually used to provide a shape "
"for a [CollisionShape2D]. When a [SeparationRayShape2D] collides with an "
"object, it tries to separate itself from it by moving its endpoint to the "
"collision point. For example, a [SeparationRayShape2D] next to a character "
"can allow it to instantly move up when touching stairs."
msgstr ""
"Une forme de rayon 2D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape2D]. "
"Lorsqu'une [SeparationRayShape2D] entre en collision avec un objet, elle "
"tente de se séparer de lui en déplaçant son point d'extrémité jusqu'au point "
"de collision. Par exemple, un [SeparationRayShape2D] à côté d'un personnage "
"peut lui permettre de se déplacer instantanément en touchant des escaliers."

msgid "The ray's length."
msgstr "La longueur du rayon."

msgid ""
"If [code]false[/code] (default), the shape always separates and returns a "
"normal along its own direction.\n"
"If [code]true[/code], the shape can return the correct normal and separate in "
"any direction, allowing sliding motion on slopes."
msgstr ""
"Si [code]false[/code] (par défaut), la forme se sépare toujours et renvoie "
"une normale le long de sa propre direction.\n"
"Si [code]true[/code], la forme peut renvoyer la normale correcte et se "
"séparer dans n'importe quelle direction, permettant un mouvement de "
"glissement sur les pentes."

msgid ""
"A 3D ray shape used for physics collision that tries to separate itself from "
"any collider."
msgstr ""
"Une forme de rayon 3D utilisée pour les collisions physiques, qui tente de se "
"séparer de tout collider."

msgid ""
"A 3D ray shape, intended for use in physics. Usually used to provide a shape "
"for a [CollisionShape3D]. When a [SeparationRayShape3D] collides with an "
"object, it tries to separate itself from it by moving its endpoint to the "
"collision point. For example, a [SeparationRayShape3D] next to a character "
"can allow it to instantly move up when touching stairs."
msgstr ""
"Une forme de rayon 3D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape3D]. "
"Lorsqu'une [SeparationRayShape3D] entre en collision avec un objet, elle "
"tente de se séparer de lui en déplaçant son point d'extrémité jusqu'au point "
"de collision. Par exemple, un [SeparationRayShape3D] à côté d'un personnage "
"peut lui permettre de se déplacer instantanément en touchant des escaliers."

msgid "Abstract base class for separators."
msgstr "Classe de base abstraite pour séparateurs."

msgid ""
"Abstract base class for separators, used for separating other controls. "
"[Separator]s are purely visual and normally drawn as a [StyleBoxLine]."
msgstr ""
"Classe de base abstraite pour les séparateurs, utilisée pour séparer d'autres "
"contrôles. Les [Separator]s sont purement visuels et normalement dessinés "
"comme une [StyleBoxLine]."

msgid ""
"The size of the area covered by the separator. Effectively works like a "
"minimum width/height."
msgstr ""
"La taille de la zone couverte par le séparateur. Fonctionne effectivement "
"comme une largeur/taille minimale."

msgid ""
"The style for the separator line. Works best with [StyleBoxLine] (remember to "
"enable [member StyleBoxLine.vertical] for [VSeparator])."
msgstr ""
"Le style pour la ligne de séparation. Fonctionne mieux avec [StyleBoxLine] "
"(n'oubliez pas d'activer [member StyleBoxLine.vertical] pour [VSeparator])."

msgid "A shader implemented in the Godot shading language."
msgstr "Un shader implémenté dans le langage de shader de Godot."

msgid ""
"A custom shader program implemented in the Godot shading language, saved with "
"the [code].gdshader[/code] extension.\n"
"This class is used by a [ShaderMaterial] and allows you to write your own "
"custom behavior for rendering visual items or updating particle information. "
"For a detailed explanation and usage, please see the tutorials linked below."
msgstr ""
"Un programme de shader personnalisé implémenté dans le langage de shader "
"Godot, enregistré avec l'extension [code].gdshader[/code].\n"
"Cette classe est utilisée par un [ShaderMaterial] et vous permet d'écrire "
"votre propre comportement personnalisé pour rendre des objets visuels ou "
"mettre à jour des informations de particules. Pour une explication et des "
"utilisations détaillées, veuillez consulter les tutoriels ci-dessous."

msgid "Shaders documentation index"
msgstr "Index de la documentation sur les shaders"

msgid ""
"Returns the texture that is set as default for the specified parameter.\n"
"[b]Note:[/b] [param name] must match the name of the uniform in the code "
"exactly.\n"
"[b]Note:[/b] If the sampler array is used use [param index] to access the "
"specified texture."
msgstr ""
"Renvoie la texture définie par défaut pour le paramètre spécifié.\n"
"[b]Note :[/b] [param name] doit correspondre exactement au nom de l'uniforme "
"dans le code.\n"
"[b]Note :[/b] Si le tableau d''échantillonneur est utilisé, utilisez l'index "
"[param index] pour accéder à la texture spécifiée."

msgid "Returns the shader mode for the shader."
msgstr "Renvoie le mode de shader pour le shader."

msgid ""
"Returns the list of shader uniforms that can be assigned to a "
"[ShaderMaterial], for use with [method ShaderMaterial.set_shader_parameter] "
"and [method ShaderMaterial.get_shader_parameter]. The parameters returned are "
"contained in dictionaries in a similar format to the ones returned by [method "
"Object.get_property_list].\n"
"If argument [param get_groups] is [code]true[/code], parameter grouping hints "
"are also included in the list."
msgstr ""
"Renvoie la liste des uniforms du shader qui peuvent être affectés à un "
"[ShaderMaterial], pour utiliser avec [method "
"ShaderMaterial.set_shader_parameter] et [method "
"ShaderMaterial.get_shader_parameter]. Les paramètres renvoyés sont contenus "
"dans des dictionnaires dans un format similaire à ceux renvoyés par [method "
"Object.get_property_list].\n"
"Si l'argument [param get_groups] vaut [code]true[/code], les indices de "
"regroupement des paramètres sont également inclus dans la liste."

msgid ""
"Only available when running in the editor. Opens a popup that visualizes the "
"generated shader code, including all variants and internal shader code. See "
"also [method Material.inspect_native_shader_code]."
msgstr ""
"Seulement disponible dans l'éditeur. Ouvre un popup qui visualise le code du "
"shader généré, y compris toutes les variantes et le code interne du shader. "
"Voir aussi [method Material.inspect_native_shader_code]."

msgid ""
"Sets the default texture to be used with a texture uniform. The default is "
"used if a texture is not set in the [ShaderMaterial].\n"
"[b]Note:[/b] [param name] must match the name of the uniform in the code "
"exactly.\n"
"[b]Note:[/b] If the sampler array is used use [param index] to access the "
"specified texture."
msgstr ""
"Définit la texture par défaut à utiliser avec un uniform de texture. La "
"valeur par défaut est utilisée si une texture n'est pas définie dans le "
"[ShaderMaterial].\n"
"[b]Note :[/b] [param name] doit correspondre exactement au nom de l'uniform "
"dans le code.\n"
"[b]Note :[/b] Si le tableau d'échantillonneur est utilisé, utilisez [param "
"index] pour accéder à la texture spécifiée."

msgid ""
"Returns the shader's code as the user has written it, not the full generated "
"code used internally."
msgstr ""
"Renvoie le code de shader comme l'utilisateur l'a écrit, et non le code "
"entièrement généré utilisé en interne."

msgid "Mode used to draw all 3D objects."
msgstr "Le mode utilise pour afficher tous les objets 3D."

msgid "Mode used to draw all 2D objects."
msgstr "Le mode utilise pour afficher tous les objets 2D."

msgid ""
"Mode used to calculate particle information on a per-particle basis. Not used "
"for drawing."
msgstr ""
"Le mode utilisé pour calculer les informations pour chaque particule "
"individuellement. N'est pas utilisé pour l'affichage."

msgid ""
"Mode used for drawing skies. Only works with shaders attached to [Sky] "
"objects."
msgstr ""
"Mode utilisé pour dessiner le ciel. Fonctionne seulement e avec des shaders "
"attachés aux objets [Sky]."

msgid "Mode used for setting the color and density of volumetric fog effect."
msgstr ""
"Mode utilisé pour définir la couleur et la densité de l'effet de brouillard "
"volumétrique."

msgid "Shading language"
msgstr "Langue pour le shading"

msgid "Shader preprocessor"
msgstr "Pré-calcul par le processeur de shader"

msgid ""
"A material defined by a custom [Shader] program and the values of its shader "
"parameters."
msgstr ""
"Un matériau défini par un programme [Shader] personnalisé et les valeurs des "
"paramètres du shader."

msgid ""
"A material that uses a custom [Shader] program to render visual items (canvas "
"items, meshes, skies, fog), or to process particles. Compared to other "
"materials, [ShaderMaterial] gives deeper control over the generated shader "
"code. For more information, see the shaders documentation index below.\n"
"Multiple [ShaderMaterial]s can use the same shader and configure different "
"values for the shader uniforms.\n"
"[b]Note:[/b] For performance reasons, the [signal Resource.changed] signal is "
"only emitted when the [member Resource.resource_name] changes. Only in "
"editor, it is also emitted for [member shader] changes."
msgstr ""
"Un matériau qui utilise un programme [Shader] personnalisé pour rendre des "
"objets visuels (éléments de canevas, maillage, ciel, brouillard) ou pour "
"traiter des particules. Comparé à d'autres matériaux, [ShaderMaterial] donne "
"un contrôle plus profond sur le code du shader généré. Pour plus "
"d'informations, consultez l'index de documentation des shaders ci-dessous.\n"
"Plusieurs [ShaderMaterial]s peuvent utiliser le même shaderet configurer des "
"valeurs différentes pour les uniforms du shader.\n"
"[b]Note :[/b] Pour des raisons de performances, le [signal Resource.changed] "
"n'est émis que lorsque le nom [member Resource.resource_name] change. "
"Seulement dans l'éditeur, il est également émis pour les changements du "
"[member shader]."

msgid ""
"Returns the current value set for this material of a uniform in the shader."
msgstr ""
"Renvoie la valeur actuelle définie pour ce matériau d'un uniform du shader."

msgid ""
"Changes the value set for this material of a uniform in the shader.\n"
"[b]Note:[/b] [param param] is case-sensitive and must match the name of the "
"uniform in the code exactly (not the capitalized name in the inspector).\n"
"[b]Note:[/b] Changes to the shader uniform will be effective on all instances "
"using this [ShaderMaterial]. To prevent this, use per-instance uniforms with "
"[method GeometryInstance3D.set_instance_shader_parameter] or duplicate the "
"[ShaderMaterial] resource using [method Resource.duplicate]. Per-instance "
"uniforms allow for better shader reuse and are therefore faster, so they "
"should be preferred over duplicating the [ShaderMaterial] when possible."
msgstr ""
"Change la valeur définie pour ce matériau d'un uniform du shader.\n"
"[b]Note :[/b] [param param] est sensible à la casse et doit correspondre "
"exactement au nom de l'uniform dans le code (pas le nom capitalisé dans "
"l'inspecteur).\n"
"[b]Note :[/b] Les changements apportés à l'uniform du shader seront effectifs "
"dans toutes les instances utilisant ce [ShaderMaterial]. Pour éviter cela, "
"utilisez des uniforms par instance avec [method "
"GeometryInstance3D.set_instance_shader_parameter] ou dupliquez la ressource "
"[ShaderMaterial] en utilisant [method Resource.duplicate]. Les uniforms par "
"instance permettent une meilleure réutilisation du shader et sont donc plus "
"rapides, de sorte qu'ils devraient être préférés plutôt que la duplication du "
"[ShaderMaterial] si possible."

msgid "The [Shader] program used to render this material."
msgstr "Le programme [Shader] utilisé pour le rendu de ce matériau."

msgid "Abstract base class for 2D shapes used for physics collision."
msgstr ""
"Classe de base abstraite pour les formes 2D utilisées pour les collisions "
"physiques."

msgid ""
"Abstract base class for all 2D shapes, intended for use in physics.\n"
"[b]Performance:[/b] Primitive shapes, especially [CircleShape2D], are fast to "
"check collisions against. [ConvexPolygonShape2D] is slower, and "
"[ConcavePolygonShape2D] is the slowest."
msgstr ""
"Classe de base abstraite pour toutes les formes 2D, destinée à être utilisée "
"pour la physique.\n"
"[b]Performance :[/b] Les formes primitives, en particulier [CircleShape2D], "
"sont rapides pour vérifier les collisions. [ConvexPolygonShape2D] est plus "
"lente, et [ConcavePolygonShape2D] est la plus lente."

msgid ""
"Returns [code]true[/code] if this shape is colliding with another.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the shape to check collisions with ([param with_shape]), and "
"the transformation matrix of that shape ([param shape_xform])."
msgstr ""
"Renvoie [code]true[/code] si cette forme est en collision avec une autre.\n"
"Cette méthode a besoin de la matrice de transformation de cette forme ([param "
"local_xform]), de la forme avec laquelle vérifier les collisions ([param "
"with_shape]), et de la matrice de transformation de cette dernière ([param "
"shape_xform])."

msgid ""
"Returns a list of contact point pairs where this shape touches another.\n"
"If there are no collisions, the returned list is empty. Otherwise, the "
"returned list contains contact points arranged in pairs, with entries "
"alternating between points on the boundary of this shape and points on the "
"boundary of [param with_shape].\n"
"A collision pair A, B can be used to calculate the collision normal with "
"[code](B - A).normalized()[/code], and the collision depth with [code](B - "
"A).length()[/code]. This information is typically used to separate shapes, "
"particularly in collision solvers.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the shape to check collisions with ([param with_shape]), and "
"the transformation matrix of that shape ([param shape_xform])."
msgstr ""
"Renvoie une liste de paires de points de contact où cette forme touche une "
"autre.\n"
"S'il n'y a pas de collision, la liste renvoyée est vide. Sinon, la liste "
"renvoyée contient des points de contact disposés en paires, avec des entrées "
"alternant entre des points sur la limite de cette forme et des points sur la "
"limite de [param with_shape].\n"
"Une paire de collisions A, B peut être utilisée pour calculer la normale de "
"la collision avec [code](B - A).normalized()[/code], et la profondeur de la "
"collision avec [code](B - A).length()[/code]. Cette information est "
"généralement utilisée pour séparer les formes, en particulier dans les "
"solveurs de collision.\n"
"Cette méthode a besoin de la matrice de transformation de cette forme ([param "
"local_xform]), de la forme avec laquelle vérifier les collisions ([param "
"with_shape]), et de la matrice de transformation de cette dernière ([param "
"shape_xform])."

msgid ""
"Returns whether this shape would collide with another, if a given movement "
"was applied.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the movement to test on this shape ([param local_motion]), the "
"shape to check collisions with ([param with_shape]), the transformation "
"matrix of that shape ([param shape_xform]), and the movement to test onto the "
"other object ([param shape_motion])."
msgstr ""
"Renvoie si cette forme serait en collision avec une autre, si un mouvement "
"donné serait appliqué.\n"
"Cette méthode a besoin de la matrice de transformation de cette forme ([param "
"local_xform]), du mouvement à tester sur cette forme ([param local_motion]), "
"de la forme avec laquelle vérifier les collisions ([param with_shape]), la "
"matrice de transformation de cette dernière ([param shape_xform]), et du "
"mouvement à tester sur l'autre objet ([param shape_motion])."

msgid ""
"Returns a list of contact point pairs where this shape would touch another, "
"if a given movement was applied.\n"
"If there would be no collisions, the returned list is empty. Otherwise, the "
"returned list contains contact points arranged in pairs, with entries "
"alternating between points on the boundary of this shape and points on the "
"boundary of [param with_shape].\n"
"A collision pair A, B can be used to calculate the collision normal with "
"[code](B - A).normalized()[/code], and the collision depth with [code](B - "
"A).length()[/code]. This information is typically used to separate shapes, "
"particularly in collision solvers.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the movement to test on this shape ([param local_motion]), the "
"shape to check collisions with ([param with_shape]), the transformation "
"matrix of that shape ([param shape_xform]), and the movement to test onto the "
"other object ([param shape_motion])."
msgstr ""
"Renvoie une liste de paires de points de contact où cette forme toucherait "
"une autre, si un mouvement donné serait appliqué.\n"
"S'il n'y a pas de collision, la liste renvoyée est vide. Sinon, la liste "
"renvoyée contient des points de contact disposés en paires, avec des entrées "
"alternant entre des points sur la limite de cette forme et des points sur la "
"limite de [param with_shape].\n"
"Une paire de collisions A, B peut être utilisée pour calculer la normale de "
"la collision avec [code](B - A).normalized()[/code], et la profondeur de la "
"collision avec [code](B - A).length()[/code]. Cette information est "
"généralement utilisée pour séparer les formes, en particulier dans les "
"solveurs de collision.\n"
"Cette méthode a besoin de la matrice de transformation de cette forme ([param "
"local_xform]), de la forme avec laquelle vérifier les collisions ([param "
"with_shape]), et de la matrice de transformation de cette dernière ([param "
"shape_xform])."

msgid ""
"Draws a solid shape onto a [CanvasItem] with the [RenderingServer] API filled "
"with the specified [param color]. The exact drawing method is specific for "
"each shape and cannot be configured."
msgstr ""
"Dessine une forme solide sur un [CanvasItem] avec l'API [RenderingServer], "
"remplie par la couleur [param color] spécifiée. La méthode de dessin exacte "
"est spécifique pour chaque forme et ne peut pas être configurée."

msgid "Returns a [Rect2] representing the shapes boundary."
msgstr "Renvoie un [Rect2] représentant la délimitation de la forme."

msgid ""
"The shape's custom solver bias. Defines how much bodies react to enforce "
"contact separation when this shape is involved.\n"
"When set to [code]0[/code], the default value from [member "
"ProjectSettings.physics/2d/solver/default_contact_bias] is used."
msgstr ""
"Le biais personnalisé du solveur de la forme. Définit de combien les corps "
"réagissent pour faire respecter la séparation des contacts lorsque cette "
"forme est impliquée.\n"
"Lorsqu’il est défini à [code]0[/code], la valeur par défaut de [member "
"ProjectSettings.physics/2d/solver/default_contact_bias] est utilisée."

msgid "Abstract base class for 3D shapes used for physics collision."
msgstr ""
"Classe de base abstraite pour les formes 3D utilisées pour les collisions "
"physiques."

msgid ""
"Abstract base class for all 3D shapes, intended for use in physics.\n"
"[b]Performance:[/b] Primitive shapes, especially [SphereShape3D], are fast to "
"check collisions against. [ConvexPolygonShape3D] and [HeightMapShape3D] are "
"slower, and [ConcavePolygonShape3D] is the slowest."
msgstr ""
"Classe de base abstraite pour toutes les formes 3D, destinée à être utilisée "
"pour la physique.\n"
"[b]Performance :[/b] Les formes primitives, en particulier [SphereShape3D], "
"sont rapides pour vérifier les collisions. [ConvexPolygonShape3D] et "
"[HeightMapShape3D] sont plus lentes, et [ConcavePolygonShape3D] est la plus "
"lente."

msgid ""
"Returns the [ArrayMesh] used to draw the debug collision for this [Shape3D]."
msgstr ""
"Renvoie l'[ArrayMesh] utilisé pour dessiner la collision de débogage pour ce "
"[Shape3D]."

msgid ""
"The shape's custom solver bias. Defines how much bodies react to enforce "
"contact separation when this shape is involved.\n"
"When set to [code]0[/code], the default value from [member "
"ProjectSettings.physics/3d/solver/default_contact_bias] is used."
msgstr ""
"Le biais personnalisé du solveur de la forme. Définit de combien les corps "
"réagissent pour faire respecter la séparation des contacts lorsque cette "
"forme est impliquée.\n"
"Lorsqu’il est défini à [code]0[/code], la valeur par défaut de [member "
"ProjectSettings.physics/3d/solver/default_contact_bias] est utilisée."

msgid ""
"The collision margin for the shape. This is not used in Godot Physics.\n"
"Collision margins allow collision detection to be more efficient by adding an "
"extra shell around shapes. Collision algorithms are more expensive when "
"objects overlap by more than their margin, so a higher value for margins is "
"better for performance, at the cost of accuracy around edges as it makes them "
"less sharp."
msgstr ""
"La marge de collision pour la forme. Ceci n'est pas utilisé dans Godot "
"Physics.\n"
"Les marges de collision permettent une détection de collision plus efficace "
"en ajoutant une coque supplémentaire autour des formes. Les algorithmes de "
"collision sont plus chers lorsque les objets se chevauchent de plus que leur "
"marge, de sorte qu'une valeur plus élevée pour les marges est meilleure pour "
"la performance, au coût de la précision autour des bords car elle les rend "
"moins nets."

msgid "A 2D shape that sweeps a region of space to detect [CollisionObject2D]s."
msgstr ""
"Une forme 2D qui balaye une région de l'espace pour détecter des "
"[CollisionObject2D]s."

msgid ""
"Shape casting allows to detect collision objects by sweeping its [member "
"shape] along the cast direction determined by [member target_position]. This "
"is similar to [RayCast2D], but it allows for sweeping a region of space, "
"rather than just a straight line. [ShapeCast2D] can detect multiple collision "
"objects. It is useful for things like wide laser beams or snapping a simple "
"shape to a floor.\n"
"Immediate collision overlaps can be done with the [member target_position] "
"set to [code]Vector2(0, 0)[/code] and by calling [method "
"force_shapecast_update] within the same physics frame. This helps to overcome "
"some limitations of [Area2D] when used as an instantaneous detection area, as "
"collision information isn't immediately available to it.\n"
"[b]Note:[/b] Shape casting is more computationally expensive than ray casting."
msgstr ""
"Le shape casting permet de détecter des objets en collision en balayant sa "
"forme [member shape] le long de la direction du cast déterminée par la "
"position cible [member target_position]. Ceci est similaire à [RayCast2D], "
"mais il permet de balayer une région de l'espace, plutôt qu'une ligne droite. "
"[ShapeCast2D] peut détecter plusieurs objets en collision. Il est utile pour "
"des choses comme de larges faisceaux laser ou de magnétiser une forme simple "
"à un sol.\n"
"Les chevauchements de collision immédiats peuvent être faits avec [member "
"target_position] défini à [code]Vector2(0, 0)[/code] et en appelant [method "
"force_shapecast_update] dans le même trame physique. Cela aide à surmonter "
"certaines limites de [Area2D] lorsqu'elle est utilisée comme zone de "
"détection instantanée, car les informations sur la collision ne lui sont pas "
"immédiatement disponibles.\n"
"[b]Note:[/b] Le shape casting est plus coûteux que le ray casting."

msgid ""
"Adds a collision exception so the shape does not report collisions with the "
"specified node."
msgstr ""
"Ajoute une exception de collision pour que la forme ne signale pas les "
"collisions avec le nœud spécifié."

msgid ""
"Adds a collision exception so the shape does not report collisions with the "
"specified [RID]."
msgstr ""
"Ajoute une exception de collision pour que la forme ne signale pas les "
"collisions avec le [RID] spécifié."

msgid "Removes all collision exceptions for this shape."
msgstr "Supprime toutes les exceptions de collision pour cette forme."

msgid ""
"Updates the collision information for the shape immediately, without waiting "
"for the next [code]_physics_process[/code] call. Use this method, for "
"example, when the shape or its parent has changed state.\n"
"[b]Note:[/b] Setting [member enabled] to [code]true[/code] is not required "
"for this to work."
msgstr ""
"Met à jour les informations de collision pour la forme immédiatement, sans "
"attendre le prochain appel de [code]_physics_process[/code]. Utilisez cette "
"méthode, par exemple, lorsque la forme ou son parent a changé d'état.\n"
"[b]Note : [/b] Définir [member enabled] sur [code]true[/code] n'est pas "
"nécessaire pour que cela fonctionne."

msgid ""
"Returns the fraction from this cast's origin to its [member target_position] "
"of how far the shape can move without triggering a collision, as a value "
"between [code]0.0[/code] and [code]1.0[/code]."
msgstr ""
"Renvoie la fraction de la distance depuis l'origine de ce cast à sa position "
"cible [member target_position] de combien la forme peut se déplacer sans "
"déclencher une collision, en tant que valeur entre [code]0.0[/code] et "
"[code]1.0[/code]."

msgid ""
"Returns the fraction from this cast's origin to its [member target_position] "
"of how far the shape must move to trigger a collision, as a value between "
"[code]0.0[/code] and [code]1.0[/code].\n"
"In ideal conditions this would be the same as [method "
"get_closest_collision_safe_fraction], however shape casting is calculated in "
"discrete steps, so the precise point of collision can occur between two "
"calculated positions."
msgstr ""
"Renvoie la fraction de la distance depuis l'origine de ce cast à sa position "
"cible [member target_position] de combien la forme peut se déplacer sans "
"déclencher une collision, en tant que valeur entre [code]0.0[/code] et "
"[code]1.0[/code].\n"
"Dans des conditions idéales, ce serait la même que [method "
"get_closest_collision_safe_fraction], mais le shapecasting est calculé avec "
"des étapes discrètes, ce qui fait que le point précis de collision peut se "
"produire entre deux positions calculées."

msgid ""
"Returns the collided [Object] of one of the multiple collisions at [param "
"index], or [code]null[/code] if no object is intersecting the shape (i.e. "
"[method is_colliding] returns [code]false[/code])."
msgstr ""
"Renvoie l'objet [Object] en collision d'une des multiples collisions à [param "
"index], ou [code]null[/code] si aucun objet n'intersecte la forme (i.e. "
"[method is_colliding] renvoie [code]false[/code])."

msgid ""
"Returns the shape ID of the colliding shape of one of the multiple collisions "
"at [param index], or [code]0[/code] if no object is intersecting the shape "
"(i.e. [method is_colliding] returns [code]false[/code])."
msgstr ""
"Renvoie l'ID de forme de la forme en collision d'une des multiples collisions "
"à [param index], ou [code]0[/code] si aucun objet n'intersecte la forme (i.e. "
"[method is_colliding] renvoie [code]false[/code])."

msgid ""
"The number of collisions detected at the point of impact. Use this to iterate "
"over multiple collisions as provided by [method get_collider], [method "
"get_collider_shape], [method get_collision_point], and [method "
"get_collision_normal] methods."
msgstr ""
"Le nombre de collisions détectées au point d'impact. Utilisez ceci pour "
"itérer sur plusieurs collisions telles que fournies par les méthodes [method "
"get_collider], [method get_collider_shape], [method get_collision_point], et "
"[method get_collision_normal]."

msgid ""
"Returns the normal of one of the multiple collisions at [param index] of the "
"intersecting object."
msgstr ""
"Renvoie la normale d'une des multiples collisions à [param index] de l'objet "
"intersectant."

msgid ""
"Returns the collision point of one of the multiple collisions at [param "
"index] where the shape intersects the colliding object.\n"
"[b]Note:[/b] This point is in the [b]global[/b] coordinate system."
msgstr ""
"Renvoie le point de collision d'une des multiples collisions à [param index] "
"où la forme intersecte l'objet en collision.\n"
"[b]Note :[/b] Ce point est dans le système de coordonnées [b]global[/b]."

msgid ""
"Returns whether any object is intersecting with the shape's vector "
"(considering the vector length)."
msgstr ""
"Renvoie si un objet intersecte avec le vecteur de la forme (en considérant la "
"longueur du vecteur)."

msgid ""
"Removes a collision exception so the shape does report collisions with the "
"specified node."
msgstr ""
"Supprime une exception de collision pour que la forme signale les collisions "
"avec le nœud spécifié."

msgid ""
"Removes a collision exception so the shape does report collisions with the "
"specified [RID]."
msgstr ""
"Supprime une exception de collision pour que la forme signale les collisions "
"avec le [RID] spécifié."

msgid ""
"The shape's collision mask. Only objects in at least one collision layer "
"enabled in the mask will be detected. See [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
"Le masque de collision de la forme. Seuls les objets dans au moins une couche "
"de collision activée dans le masque seront détectés. Voir [url=$DOCS_URL/"
"tutorials/physics/physics_introduction.html#collision-layers-and-"
"masks]Niveaux et masques de collisions[/url] dans la documentation pour plus "
"d'informations."

msgid ""
"Returns the complete collision information from the collision sweep. The data "
"returned is the same as in the [method "
"PhysicsDirectSpaceState2D.get_rest_info] method."
msgstr ""
"Renvoie l'information de collision complète du balayage des collisions. Les "
"données renvoyées sont les mêmes que dans la méthode [method "
"PhysicsDirectSpaceState2D.get_rest_info]."

msgid ""
"If [code]true[/code], the parent node will be excluded from collision "
"detection."
msgstr ""
"Si [code]true[/code], le nœud parent sera exclu lors de la détection des "
"collisions."

msgid ""
"The collision margin for the shape. A larger margin helps detecting "
"collisions more consistently, at the cost of precision."
msgstr ""
"La marge de collision pour la forme. Une marge plus grande permet de détecter "
"les collisions de manière plus consistante, au coût de la précision."

msgid ""
"The number of intersections can be limited with this parameter, to reduce the "
"processing time."
msgstr ""
"Le nombre d'intersections peut être limité avec ce paramètre, pour réduire le "
"temps de traitement."

msgid "The shape to be used for collision queries."
msgstr "La forme à utiliser pour les requêtes de collision."

msgid ""
"The shape's destination point, relative to this node's [member "
"Node2D.position]."
msgstr ""
"Le point de destination de la forme, relatif à la [member Node2D.position] de "
"ce nœud."

msgid "A 3D shape that sweeps a region of space to detect [CollisionObject3D]s."
msgstr ""
"Une forme 3D qui balaye une région de l'espace pour détecter des "
"[CollisionObject3D]s."

msgid ""
"Shape casting allows to detect collision objects by sweeping its [member "
"shape] along the cast direction determined by [member target_position]. This "
"is similar to [RayCast3D], but it allows for sweeping a region of space, "
"rather than just a straight line. [ShapeCast3D] can detect multiple collision "
"objects. It is useful for things like wide laser beams or snapping a simple "
"shape to a floor.\n"
"Immediate collision overlaps can be done with the [member target_position] "
"set to [code]Vector3(0, 0, 0)[/code] and by calling [method "
"force_shapecast_update] within the same physics frame. This helps to overcome "
"some limitations of [Area3D] when used as an instantaneous detection area, as "
"collision information isn't immediately available to it.\n"
"[b]Note:[/b] Shape casting is more computationally expensive than ray casting."
msgstr ""
"Le shape casting permet de détecter des objets en collision en balayant sa "
"forme [member shape] le long de la direction du cast déterminée par la "
"position cible [member target_position]. Ceci est similaire à [RayCast3D], "
"mais il permet de balayer une région de l'espace, plutôt qu'une ligne droite. "
"[ShapeCast3D] peut détecter plusieurs objets en collision. Il est utile pour "
"des choses comme de larges faisceaux laser ou pour magnétiser une forme "
"simple à un sol.\n"
"Les chevauchements de collision immédiats peuvent être faits avec [member "
"target_position] défini à [code]Vector3(0, 0, 0)[/code] et en appelant "
"[method force_shapecast_update] dans le même trame physique. Cela aide à "
"surmonter certaines limites de [Area3D] lorsqu'elle est utilisée comme zone "
"de détection instantanée, car les informations sur la collision ne lui sont "
"pas immédiatement disponibles.\n"
"[b]Note:[/b] Le shape casting est plus coûteux que le ray casting."

msgid ""
"Returns the complete collision information from the collision sweep. The data "
"returned is the same as in the [method "
"PhysicsDirectSpaceState3D.get_rest_info] method."
msgstr ""
"Renvoie l'information de collision complète du balayage des collisions. Les "
"données renvoyées sont les mêmes que dans la méthode [method "
"PhysicsDirectSpaceState3D.get_rest_info]."

msgid ""
"The custom color to use to draw the shape in the editor and at run-time if "
"[b]Visible Collision Shapes[/b] is enabled in the [b]Debug[/b] menu. This "
"color will be highlighted at run-time if the [ShapeCast3D] is colliding with "
"something.\n"
"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
"[member ProjectSettings.debug/shapes/collision/shape_color] is used."
msgstr ""
"La couleur personnalisée à utiliser pour dessiner la forme dans l'éditeur et "
"en cours d'exécution si [b]Formes de collisions visibles[/b] est activé dans "
"le menu [b]Débogage[/b]. Cette couleur sera accentuée durant l'exécution si "
"le [ShapeCast3D] se heurte à quelque chose.\n"
"Si défini à [code]Color(0.0, 0.0, 0.0, 0.0)[/code] (par défaut), la couleur "
"définie dans [member ProjectSettings.debug/shapes/collision/shape_color] sera "
"utilisée."

msgid ""
"The shape's destination point, relative to this node's [member "
"Node3D.position]."
msgstr ""
"Le point de destination de la forme, relatif à la [member Node3D.position] de "
"ce nœud."

msgid "A shortcut for binding input."
msgstr "Un raccourci lié à une entrée."

msgid "A built-in type representing a signal of an [Object]."
msgstr "Un type intégré représentant un signal d'un [Object]."

msgid ""
"[Signal] is a built-in [Variant] type that represents a signal of an [Object] "
"instance. Like all [Variant] types, it can be stored in variables and passed "
"to functions. Signals allow all connected [Callable]s (and by extension their "
"respective objects) to listen and react to events, without directly "
"referencing one another. This keeps the code flexible and easier to manage. "
"You can check whether an [Object] has a given signal name using [method "
"Object.has_signal].\n"
"In GDScript, signals can be declared with the [code]signal[/code] keyword. In "
"C#, you may use the [code][Signal][/code] attribute on a delegate.\n"
"[codeblocks]\n"
"[gdscript]\n"
"signal attacked\n"
"\n"
"# Additional arguments may be declared.\n"
"# These arguments must be passed when the signal is emitted.\n"
"signal item_dropped(item_name, amount)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Signal]\n"
"delegate void AttackedEventHandler();\n"
"\n"
"// Additional arguments may be declared.\n"
"// These arguments must be passed when the signal is emitted.\n"
"[Signal]\n"
"delegate void ItemDroppedEventHandler(string itemName, int amount);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Connecting signals is one of the most common operations in Godot and the API "
"gives many options to do so, which are described further down. The code block "
"below shows the recommended approach.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\t# `button_down` here is a Signal Variant type. We therefore call the "
"Signal.connect() method, not Object.connect().\n"
"\t# See discussion below for a more in-depth overview of the API.\n"
"\tbutton.button_down.connect(_on_button_down)\n"
"\n"
"\t# This assumes that a `Player` class exists, which defines a `hit` signal.\n"
"\tvar player = Player.new()\n"
"\t# We use Signal.connect() again, and we also use the Callable.bind() "
"method,\n"
"\t# which returns a new Callable with the parameter binds.\n"
"\tplayer.hit.connect(_on_player_hit.bind(\"sword\", 100))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Button down!\")\n"
"\n"
"func _on_player_hit(weapon_type, damage):\n"
"\tprint(\"Hit with weapon %s for %d damage.\" % [weapon_type, damage])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\t// C# supports passing signals as events, so we can use this idiomatic "
"construct:\n"
"\tbutton.ButtonDown += OnButtonDown;\n"
"\n"
"\t// This assumes that a `Player` class exists, which defines a `Hit` "
"signal.\n"
"\tvar player = new Player();\n"
"\t// We can use lambdas when we need to bind additional parameters.\n"
"\tplayer.Hit += () => OnPlayerHit(\"sword\", 100);\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Button down!\");\n"
"}\n"
"\n"
"private void OnPlayerHit(string weaponType, int damage)\n"
"{\n"
"\tGD.Print($\"Hit with weapon {weaponType} for {damage} damage.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b][code skip-lint]Object.connect()[/code] or [code skip-lint]Signal.connect()"
"[/code]?[/b]\n"
"As seen above, the recommended method to connect signals is not [method "
"Object.connect]. The code block below shows the four options for connecting "
"signals, using either this legacy method or the recommended [method "
"Signal.connect], and using either an implicit [Callable] or a manually "
"defined one.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\t# Option 1: Object.connect() with an implicit Callable for the defined "
"function.\n"
"\tbutton.connect(\"button_down\", _on_button_down)\n"
"\t# Option 2: Object.connect() with a constructed Callable using a target "
"object and method name.\n"
"\tbutton.connect(\"button_down\", Callable(self, \"_on_button_down\"))\n"
"\t# Option 3: Signal.connect() with an implicit Callable for the defined "
"function.\n"
"\tbutton.button_down.connect(_on_button_down)\n"
"\t# Option 4: Signal.connect() with a constructed Callable using a target "
"object and method name.\n"
"\tbutton.button_down.connect(Callable(self, \"_on_button_down\"))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Button down!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\t// Option 1: In C#, we can use signals as events and connect with this "
"idiomatic syntax:\n"
"\tbutton.ButtonDown += OnButtonDown;\n"
"\t// Option 2: GodotObject.Connect() with a constructed Callable from a "
"method group.\n"
"\tbutton.Connect(Button.SignalName.ButtonDown, Callable.From(OnButtonDown));\n"
"\t// Option 3: GodotObject.Connect() with a constructed Callable using a "
"target object and method name.\n"
"\tbutton.Connect(Button.SignalName.ButtonDown, new Callable(this, "
"MethodName.OnButtonDown));\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Button down!\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"While all options have the same outcome ([code]button[/code]'s [signal "
"BaseButton.button_down] signal will be connected to [code]_on_button_down[/"
"code]), [b]option 3[/b] offers the best validation: it will print a compile-"
"time error if either the [code]button_down[/code] [Signal] or the "
"[code]_on_button_down[/code] [Callable] are not defined. On the other hand, "
"[b]option 2[/b] only relies on string names and will only be able to validate "
"either names at runtime: it will generate an error at runtime if [code]"
"\"button_down\"[/code] is not a signal, or if [code]\"_on_button_down\"[/"
"code] is not a method in the object [code]self[/code]. The main reason for "
"using options 1, 2, or 4 would be if you actually need to use strings (e.g. "
"to connect signals programmatically based on strings read from a "
"configuration file). Otherwise, option 3 is the recommended (and fastest) "
"method.\n"
"[b]Binding and passing parameters:[/b]\n"
"The syntax to bind parameters is through [method Callable.bind], which "
"returns a copy of the [Callable] with its parameters bound.\n"
"When calling [method emit] or [method Object.emit_signal], the signal "
"parameters can be also passed. The examples below show the relationship "
"between these signal parameters and bound parameters.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# This assumes that a `Player` class exists, which defines a `hit` signal.\n"
"\tvar player = Player.new()\n"
"\t# Using Callable.bind().\n"
"\tplayer.hit.connect(_on_player_hit.bind(\"sword\", 100))\n"
"\n"
"\t# Parameters added when emitting the signal are passed first.\n"
"\tplayer.hit.emit(\"Dark lord\", 5)\n"
"\n"
"# We pass two arguments when emitting (`hit_by`, `level`),\n"
"# and bind two more arguments when connecting (`weapon_type`, `damage`).\n"
"func _on_player_hit(hit_by, level, weapon_type, damage):\n"
"\tprint(\"Hit by %s (level %d) with weapon %s for %d damage.\" % [hit_by, "
"level, weapon_type, damage])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// This assumes that a `Player` class exists, which defines a `Hit` "
"signal.\n"
"\tvar player = new Player();\n"
"\t// Using lambda expressions that create a closure that captures the "
"additional parameters.\n"
"\t// The lambda only receives the parameters defined by the signal's "
"delegate.\n"
"\tplayer.Hit += (hitBy, level) => OnPlayerHit(hitBy, level, \"sword\", 100);\n"
"\n"
"\t// Parameters added when emitting the signal are passed first.\n"
"\tplayer.EmitSignal(SignalName.Hit, \"Dark lord\", 5);\n"
"}\n"
"\n"
"// We pass two arguments when emitting (`hit_by`, `level`),\n"
"// and bind two more arguments when connecting (`weapon_type`, `damage`).\n"
"private void OnPlayerHit(string hitBy, int level, string weaponType, int "
"damage)\n"
"{\n"
"\tGD.Print($\"Hit by {hitBy} (level {level}) with weapon {weaponType} for "
"{damage} damage.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[Signal] est un type [Variant] intégré qui représente un signal d'une "
"instance [Object]. Comme tous les types [Variant], il peut être stocké dans "
"des variables et transmis à des fonctions. Les signaux permettent à tous les "
"[Callable]s connectés (et par extension leurs objets respectifs) d'écouter et "
"de réagir aux événements, sans se référencer directement l'un l'autre. Cela "
"permet de garantir la flexibilité du code et de simplifier sa gestion. Vous "
"pouvez vérifier si un [Object] possède un nom de signal spécifique grâce à "
"[method Object.has_signal].\n"
"En GDScript, les signaux peuvent être déclarés avec le mot-clé [code]signal[/"
"code]. En C#, vous pouvez utiliser l'attribut [code][Signal][/code] sur un "
"délégué.\n"
"[codeblocks]\n"
"[gdscript]\n"
"signal attaque\n"
"\n"
"# Des arguments supplémentaires peuvent être déclarés.\n"
"# Ces arguments doivent être transmis lors de l'émission du signal.\n"
"signal item_dropped(nom_objet, montant)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Signal]\n"
"delegate void AttackedEventHandler();\n"
"\n"
"// Des arguments supplémentaires peuvent être déclarés.\n"
"// Ces arguments doivent être passés lors de l'émission du signal.\n"
"[Signal]\n"
"delegate void ItemDroppedEventHandler(string nomObjet, int montant);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Connecter des signaux est l'une des opérations les plus courantes dans Godot, "
"et l'API offre de nombreuses options pour ce faire, décrites plus loin. Le "
"bloc de code ci-dessous illustre l'approche recommandée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar bouton = Button.new()\n"
"\t# `button_down` est un type Variant de Signal. Nous appelons ainsi la "
"méthode Signal.connect(), et pas Object.connect().\n"
"\t# Voir la présentation ci-dessous pour une discussion plus en détail de "
"l'API.\n"
"\tbouton.button_down.connect(_on_button_down)\n"
"\n"
"\t# Cela suppose qu'une classe `Joueur` existe, et qui définit un signal "
"`touche`.\n"
"\tvar joueur = Joueur.new()\n"
"\t# Nous utilisons encore Signal.connect(), et nous utilisons aussi la "
"méthode Callable.bind(),\n"
"\t# qui renvoie un nouveau Callable avec les paramètres liés.\n"
"\tjoueur.hit.connect(_lorsque_joueur_touche.bind(\"épée\", 100))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Bouton appuyé !\")\n"
"\n"
"func _lorsque_joueur_touche(type_arme, degats):\n"
"\tprint(\"Touché avec l'arme %s pour %d dégâts.\" % [type_arme, degats])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar bouton = new Button();\n"
"\t// Le C# prend en charge le passage de signaux en tant qu'événements, nous "
"pouvons donc utiliser cette construction idiomatique :\n"
"\tbouton.ButtonDown += OnButtonDown;\n"
"\n"
"\t// Cela suppose qu'une classe `Joueur` existe, et qui définit un signal "
"`touche`.\n"
"\tvar player = new Player();\n"
"\t// Nous pouvons utiliser des lambdas lorsque nous devons lier des "
"paramètres supplémentaires.\n"
"\tplayer.Hit += () => LorsqueJoueurTouche(\"sword\", 100);\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Bouton appuyé !\");\n"
"}\n"
"\n"
"private void LorsqueJoueurTouche(string typeArme, int degats)\n"
"{\n"
"\tGD.Print($\"Touché avec l'arme {typeArme} pour {typeArme} dégâts.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b][code skip-lint]Object.connect()[/code] ou [code skip-lint]Signal.connect()"
"[/code]?[/b]\n"
"Comme nous l'avons vu plus haut, la méthode recommandée pour connecter les "
"signaux n'est pas la méthode [method Object.connect]. Le bloc de code ci-"
"dessous montre les quatre options de connexion des signaux, en utilisant soit "
"cette ancienne méthode, soit la méthode recommandée [method Signal.connect], "
"et en utilisant soit un [Callable] implicite, soit un [Callable] défini "
"manuellement.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar bouton = Button.new()\n"
"\t# Option 1 : Object.connect() avec un Callable implicite pour la fonction "
"définie.\n"
"\tbouton.connect(\"button_down\", _on_button_down)\n"
"\t# Option 2 : Object.connect() avec un Callable construit en utilisant un "
"objet cible et un nom de méthode.\n"
"\tbouton.connect(\"button_down\", Callable(self, \"_on_button_down\"))\n"
"\t# Option 3 : Signal.connect() avec un Callable implicite pour la fonction "
"définie.\n"
"\tbouton.button_down.connect(_on_button_down)\n"
"\t# Option 4 : Signal.connect() avec un Callable construit en utilisant un "
"objet cible et un nom de méthode.\n"
"\tbouton.button_down.connect(Callable(self, \"_on_button_down\"))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Bouton appuyé !\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar bouton = new Button();\n"
"\t// Option 1 : En C#, nous pouvons utiliser les signaux comme des événements "
"et s'y connecter avec cette syntaxe idiomatique :\n"
"\tbouton.ButtonDown += OnButtonDown;\n"
"\t// Option 2 : GodotObject.Connect() avec un Callable construit à partir "
"d'un groupe de méthodes.\n"
"\tbouton.Connect(Button.SignalName.ButtonDown, Callable.From(OnButtonDown));\n"
"\t// Option 3 : GodotObject.Connect() avec un Callable construit en utilisant "
"un objet cible et un nom de méthode.\n"
"\tbouton.Connect(Button.SignalName.ButtonDown, new Callable(this, "
"MethodName.OnButtonDown));\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Bouton appuyé !\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Bien que toutes les options aient le même résultat (le signal [signal "
"BaseButton.button_down] de [code]bouton[/code] sera connecté à "
"[code]_on_button_down[/code]), [b]l'option 3[/b] offre la meilleure "
"validation : elle affichera une erreur à la compilation si le [Signal] "
"[code]button_down[/code] ou le [Callable] [code]_on_button_down[/code] ne "
"sont pas définis. En revanche, [b]l'option 2[/b] ne s'appuie que sur des noms "
"de chaînes et ne pourra valider l'un ou l'autre nom qu'à l'exécution : elle "
"générera une erreur à l'exécution si [code]« button_down »[/code] n'est pas "
"un signal, ou si [code]« _on_button_down »[/code] n'est pas une méthode dans "
"l'objet [code]self[/code]. La principale raison d'utiliser les options 1, 2 "
"ou 4 serait si vous avez besoin d'utiliser des chaînes de caractères (par "
"exemple pour connecter des signaux de manière programmatique sur la base de "
"chaînes de caractères lues dans un fichier de configuration). Sinon, l'option "
"3 est la méthode recommandée (et la plus rapide).\n"
"[b]Lier et passer des paramètres :[/b]\n"
"La syntaxe pour lier des paramètres est [method Callable.bind], qui renvoie "
"une copie du [Callable] avec ses paramètres liés.\n"
"Lors de l'appel de [method emit] ou de [method Object.emit_signal], les "
"paramètres du signal peuvent également être transmis. Les exemples ci-dessous "
"illustrent la relation entre ces paramètres de signal et les paramètres "
"liés.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Cela suppose qu'une classe `Joueur` existe, et qui définit un signal "
"`touche`.\n"
"\tvar joueur = Joueur.new()\n"
"\t# En utilisant Callable.bind().\n"
"\tjoueur.hit.connect(_lorsque_joueur_touche.bind(\"épée\", 100))\n"
"\n"
"\t# Les paramètres ajoutés lors de l'émission du signal sont passés en "
"premier.\n"
"\tjoueur.touche.emit(\"Seigneur des Ténèbres\", 5)\n"
"\n"
"# Nous passons deux arguments lors de l'émission (`touche_par`, `niveau`),\n"
"# et nous passons deux autres arguments lors de la connexion (`type_arme`, "
"`degats`).\n"
"func _lorsque_joueur_touche(touche_par, niveau, type_arme, degats):\n"
"\tprint(\"Touché par %s (niveau %d) avec l'arme %s pour %d dégâts.\" % "
"[touche_par, niveau, type_arme, degats])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Cela suppose qu'une classe `Joueur` existe, et qui définit un signal "
"`Touche`.\n"
"\tvar joueur = new Joueur();\n"
"\t// Utilisation d'expressions lambda qui créent une encapsulation qui "
"capture les paramètres supplémentaires.\n"
"\t// L'expression lambda ne reçoit que les paramètres définis par le délégué "
"du signal.\n"
"\tjoueur.Touche += (touchePar, niveau) => LorsqueJoueurTouche(touchePar, "
"niveau, \"épée\", 100);\n"
"\n"
"\t// Les paramètres ajoutés lors de l'émission du signal sont passés en "
"premier.\n"
"\tjoueur.EmitSignal(SignalName.Touche, \"Seigneur des Ténèbres\", 5);\n"
"}\n"
"\n"
"// Nous passons deux arguments lors de l'émission (`touche_par`, `niveau`),\n"
"// et nous passons deux autres arguments lors de la connexion (`type_arme`, "
"`degats`).\n"
"private void LorsqueJoueurTouche(string touchePar, int niveau, string "
"typeArme, int degats)\n"
"{\n"
"\tGD.Print($\"Touché par {touchePar} (niveau {leniveauvel}) avec l'arme "
"{typeArme} for {degats} dégâts.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Using Signals"
msgstr "Utilisation des signaux"

msgid "GDScript Basics"
msgstr "Les bases de GDScript"

msgid "Constructs an empty [Signal] with no object nor signal name bound."
msgstr "Construit un [Signal] vide sans objet ni nom de signal lié."

msgid "Constructs a [Signal] as a copy of the given [Signal]."
msgstr "Construit un [Signal] comme une copie du [Signal] donné."

msgid ""
"Creates a [Signal] object referencing a signal named [param signal] in the "
"specified [param object]."
msgstr ""
"Crée un objet [Signal] faisant référence à un signal nommé [param signal] "
"dans l'objet [param object] spécifié."

msgid ""
"Connects this signal to the specified [param callable]. Optional [param "
"flags] can be also added to configure the connection's behavior (see [enum "
"Object.ConnectFlags] constants). You can provide additional arguments to the "
"connected [param callable] by using [method Callable.bind].\n"
"A signal can only be connected once to the same [Callable]. If the signal is "
"already connected, this method returns [constant ERR_INVALID_PARAMETER] and "
"generates an error, unless the signal is connected with [constant "
"Object.CONNECT_REFERENCE_COUNTED]. To prevent this, use [method is_connected] "
"first to check for existing connections.\n"
"[codeblock]\n"
"for button in $Buttons.get_children():\n"
"\tbutton.pressed.connect(_on_pressed.bind(button))\n"
"\n"
"func _on_pressed(button):\n"
"\tprint(button.name, \" was pressed\")\n"
"[/codeblock]\n"
"[b]Note:[/b] If the [param callable]'s object is freed, the connection will "
"be lost."
msgstr ""
"Connecte ce signal au [param callable] spécifié. Des drapeaux [param flags] "
"optionnels peuvent aussi être ajoutés pour configurer le comportement de la "
"connexion (voir les constantes [enum Object.ConnectFlags]). Vous pouvez "
"fournir des arguments supplémentaires au [param callable] connecté en "
"utilisant [method Callable.bind].\n"
"Un signal ne peut être connecté qu'une fois au même [Callable]. Si le signal "
"est déjà connecté, cette méthode renvoie [constant ERR_INVALID_PARAMETER] et "
"génère une erreur, à moins que le signal ne soit connecté à [constant "
"Object.CONNECT_REFERENCE_COUNTED]. Pour éviter cela, utilisez d'abord [method "
"is_connected] pour vérifier les connexions existantes.\n"
"[codeblock]\n"
"for bouton in $Buttons.get_children():\n"
"\tbouton.pressed.connect(_lorsque_appuye.bind(button))\n"
"\n"
"func _lorsque_appuye(button):\n"
"\tprint(bouton.name, \" a été appuyé\")\n"
"[/codeblock]\n"
"[b]Note :[/b] Si l'objet [param callable] est libéré, la connexion sera "
"perdue."

msgid ""
"Disconnects this signal from the specified [Callable]. If the connection does "
"not exist, generates an error. Use [method is_connected] to make sure that "
"the connection exists."
msgstr ""
"Déconnecte ce signal du [Callable] spécifié. Si la connexion n'existe pas, "
"génère une erreur. Utilisez [method is_connected] pour vous assurer que la "
"connexion existe."

msgid ""
"Emits this signal. All [Callable]s connected to this signal will be "
"triggered. This method supports a variable number of arguments, so parameters "
"can be passed as a comma separated list."
msgstr ""
"Émet ce signal. Tous les [Callable] connectés à ce signal seront déclenchés. "
"Cette méthode prend en charge un nombre variable d'arguments, de sorte à ce "
"que les paramètres peuvent être passés en tant que liste séparée par des "
"virgules."

msgid ""
"Returns an [Array] of connections for this signal. Each connection is "
"represented as a [Dictionary] that contains three entries:\n"
"- [code]signal[/code] is a reference to this signal;\n"
"- [code]callable[/code] is a reference to the connected [Callable];\n"
"- [code]flags[/code] is a combination of [enum Object.ConnectFlags]."
msgstr ""
"Renvoie un [Array] des connexions pour ce signal. Chaque connexion est "
"représentée comme un [Dictionary] qui contient trois entrées :\n"
"- [code]signal[/code] est une référence à ce signal,\n"
"- [code]callable[/code] est une référence au [Callable] connecté,\n"
"- [code]flags[/code] est une combinaison de drapeaux [enum "
"Object.ConnectFlags]."

msgid "Returns the name of this signal."
msgstr "Renvoie le nom de ce signal."

msgid "Returns the object emitting this signal."
msgstr "Renvoie l'objet émettant ce signal."

msgid ""
"Returns the ID of the object emitting this signal (see [method "
"Object.get_instance_id])."
msgstr ""
"Renvoie l'ID de l'objet émettant ce signal (voir [method "
"Object.get_instance_id])."

msgid "Returns [code]true[/code] if any [Callable] is connected to this signal."
msgstr ""
"Renvoie [code]true[/code] si au moins un [Callable] est connecté à ce signal."

msgid ""
"Returns [code]true[/code] if the specified [Callable] is connected to this "
"signal."
msgstr ""
"Renvoie [code]true[/code] si le [Callable] spécifié est connecté à ce signal."

msgid ""
"Returns [code]true[/code] if this [Signal] has no object and the signal name "
"is empty. Equivalent to [code]signal == Signal()[/code]."
msgstr ""
"Renvoie [code]true[/code] si ce [Signal] n'a pas d'objet et que le nom du "
"signal est vide. Équivalent à [code]signal == Signal()[/code]."

msgid ""
"Returns [code]true[/code] if the signals do not share the same object and "
"name."
msgstr ""
"Renvoie [code]true[/code] si les signaux ne partagent pas le même objet ou le "
"même nom."

msgid ""
"Returns [code]true[/code] if both signals share the same object and name."
msgstr ""
"Renvoie [code]true[/code] si les deux signaux partagent le même objet et le "
"même nom."

msgid ""
"The parent of a hierarchy of [Bone2D]s, used to create a 2D skeletal "
"animation."
msgstr ""
"Le parent d'une hiérarchie de [Bone2D]s, utilisé pour créer une animation de "
"squelette 2D."

msgid ""
"[Skeleton2D] parents a hierarchy of [Bone2D] nodes. It holds a reference to "
"each [Bone2D]'s rest pose and acts as a single point of access to its bones.\n"
"To set up different types of inverse kinematics for the given Skeleton2D, a "
"[SkeletonModificationStack2D] should be created. The inverse kinematics be "
"applied by increasing [member SkeletonModificationStack2D.modification_count] "
"and creating the desired number of modifications."
msgstr ""
"[Skeleton2D] est le parent d'une hiérarchie de nœuds [Bone2D]. Il tient une "
"référence à la pose de repos de chacun des[Bone2D]s et agit comme un point "
"d'accès unique à ses os.\n"
"Pour mettre en place différents types de cinématiques inverses pour le "
"Skeleton2D donné, une [SkeletonModificationStack2D] devrait être créée. Les "
"cinématiques inverses sont appliqués en augmentant [member "
"SkeletonModificationStack2D.modification_count] et en créant le nombre "
"souhaité de modifications."

msgid "2D skeletons"
msgstr "Squelettes 2D"

msgid ""
"Executes all the modifications on the [SkeletonModificationStack2D], if the "
"Skeleton2D has one assigned."
msgstr ""
"Exécute toutes les modifications sur la [SkeletonModificationStack2D], si le "
"Skeleton2D en une d'assignée."

msgid ""
"Returns a [Bone2D] from the node hierarchy parented by Skeleton2D. The object "
"to return is identified by the parameter [param idx]. Bones are indexed by "
"descending the node hierarchy from top to bottom, adding the children of each "
"branch before moving to the next sibling."
msgstr ""
"Renvoie un [Bone2D] de la hiérarchie de nœuds parentée par Skeleton2D. "
"L'objet à renvoyer est identifié par l'index [param idx]. Les os sont indexés "
"en descendant la hiérarchie de nœuds de haut en bas, en ajoutant les enfants "
"de chaque branche avant de passer au prochain frère."

msgid ""
"Returns the number of [Bone2D] nodes in the node hierarchy parented by "
"Skeleton2D."
msgstr ""
"Renvoie le nombre de nœuds [Bone2D] dans la hiérarchie de ce Skeleton2D."

msgid "Returns the local pose override transform for [param bone_idx]."
msgstr ""
"Renvoie la transformation redéfinie de la pose locale pour l'index d'os "
"[param bone_idx]."

msgid ""
"Returns the [SkeletonModificationStack2D] attached to this skeleton, if one "
"exists."
msgstr ""
"Renvoie la [SkeletonModificationStack2D] attachée à ce squelette, si une "
"existe."

msgid "Returns the [RID] of a Skeleton2D instance."
msgstr "Renvoie le [RID] de l'instance d'un Skeleton2D."

msgid ""
"Sets the local pose transform, [param override_pose], for the bone at [param "
"bone_idx].\n"
"[param strength] is the interpolation strength that will be used when "
"applying the pose, and [param persistent] determines if the applied pose will "
"remain.\n"
"[b]Note:[/b] The pose transform needs to be a local transform relative to the "
"[Bone2D] node at [param bone_idx]!"
msgstr ""
"Définit la transformation de la pose locale, [param override_pose], pour l'os "
"à l'index [param bone_idx].\n"
"[param strength] est la force d'interpolation qui sera utilisée lors de "
"l'application de la pose, et [param persistent] détermine si la pose "
"appliquée restera.\n"
"[b]Note :[/b] La transformation de la pose doit être une transformation "
"locale relative au nœud [Bone2D] à [param bone_idx] !"

msgid "Sets the [SkeletonModificationStack2D] attached to this skeleton."
msgstr "Définit la [SkeletonModificationStack2D] attachée à ce squelette."

msgid ""
"Emitted when the [Bone2D] setup attached to this skeletons changes. This is "
"primarily used internally within the skeleton."
msgstr ""
"Émis lorsque la configuration des [Bone2D] attachés à ce squelette change. "
"Ceci est principalement utilisé en interne dans le squelette."

msgid ""
"A node containing a bone hierarchy, used to create a 3D skeletal animation."
msgstr ""
"Un nœud contenant une hiérarchie d'os, utilisé pour créer une animation de "
"squelette 3D."

msgid ""
"[Skeleton3D] provides an interface for managing a hierarchy of bones, "
"including pose, rest and animation (see [Animation]). It can also use ragdoll "
"physics.\n"
"The overall transform of a bone with respect to the skeleton is determined by "
"bone pose. Bone rest defines the initial transform of the bone pose.\n"
"Note that \"global pose\" below refers to the overall transform of the bone "
"with respect to skeleton, so it is not the actual global/world transform of "
"the bone."
msgstr ""
"[Skeleton3D] fournit une interface pour gérer une hiérarchie d'os, y compris "
"la pose, le repos et l'animation (voir [Animation]). Il peut également "
"utiliser la physique des ragdoll.\n"
"La transformation globale d'un os par rapport au squelette est déterminée par "
"la pose de l'os. Le repos de l'os définit la transformation initiale de la "
"pose de l'os.\n"
"Notez que « pose globale » ci-dessous se réfère à la transformation globale "
"de l'os par rapport au squelette, de sorte que ce n'est pas la véritable "
"transformation globale/mondiale de l'os."

msgid ""
"Adds a new bone with the given name. Returns the new bone's index, or "
"[code]-1[/code] if this method fails.\n"
"[b]Note:[/b] Bone names should be unique, non empty, and cannot include the "
"[code]:[/code] and [code]/[/code] characters."
msgstr ""
"Ajoute un nouvel os avec le nom donné. Renvoie l'index du nouvel os, ou "
"[code]-1[/code] si cette méthode échoue.\n"
"[b]Note :[/b] Les noms des os doivent être uniques, non vides, et ne peuvent "
"pas inclure les caractères [code]:[/code] et [code]/[/code]."

msgid ""
"Manually advance the child [SkeletonModifier3D]s by the specified time (in "
"seconds).\n"
"[b]Note:[/b] The [param delta] is temporarily accumulated in the "
"[Skeleton3D], and the deferred process uses the accumulated value to process "
"the modification."
msgstr ""
"Avance manuellement le [SkeletonModifier3D] enfant du temps spécifié (en "
"secondes).\n"
"[b]Note :[/b] Le [param delta] est temporairement accumulé dans le "
"[Skeleton3D], et le traitement différé utilise la valeur accumulée pour "
"traiter la modification."

msgid "Clear all the bones in this skeleton."
msgstr "Efface tous les os de ce squelette."

msgid "Removes the global pose override on all bones in the skeleton."
msgstr "Retire la redéfinition de pose globale sur tous les os du squelette."

msgid ""
"Returns the bone index that matches [param name] as its name. Returns "
"[code]-1[/code] if no bone with this name exists."
msgstr ""
"Renvoie l'index de l'os dont le nom correspond à [param name]. Renvoie "
"[code]-1[/code] si aucun os avec ce nom n'existe."

msgid "Force updates the bone transforms/poses for all bones in the skeleton."
msgstr ""
"Force les mises à jour des transformations/poses d'os pour tous les os dans "
"le squelette."

msgid ""
"Force updates the bone transform for the bone at [param bone_idx] and all of "
"its children."
msgstr ""
"Force la mise à jour de la transformation d'os pour l'os à l'index [param "
"bone_idx] et tous ses enfants."

msgid ""
"Returns an array containing the bone indexes of all the child node of the "
"passed in bone, [param bone_idx]."
msgstr ""
"Renvoie un tableau contenant les index d'os de tous les nœuds enfants de l'os "
"passé, [param bone_idx]."

msgid "Returns the number of bones in the skeleton."
msgstr "Renvoie le nombre d'os dans le squelette."

msgid ""
"Returns the overall transform of the specified bone, with respect to the "
"skeleton. Being relative to the skeleton frame, this is not the actual "
"\"global\" transform of the bone.\n"
"[b]Note:[/b] This is the global pose you set to the skeleton in the process, "
"the final global pose can get overridden by modifiers in the deferred "
"process, if you want to access the final global pose, use [signal "
"SkeletonModifier3D.modification_processed]."
msgstr ""
"Renvoie la transformation \"générale\" de l'os spécifié, relative au "
"squelette. Comme elle est relative au repère du squelette, ce n'est pas la "
"transformation réelle \"globale\" de l'os.\n"
"[b]Note :[/b] C'est la pose globale que définissez au squelette durant le "
"processus, la pose globale finale peut être redéfinie par des modificateurs "
"dans le traitement différé, si vous voulez accéder à la pose globale finale, "
"utilisez [signal SkeletonModifier3D.modification_processed]."

msgid ""
"Returns the overall transform of the specified bone, with respect to the "
"skeleton, but without any global pose overrides. Being relative to the "
"skeleton frame, this is not the actual \"global\" transform of the bone."
msgstr ""
"Renvoie la transformation \"générale\" de l'os spécifié, relative au "
"squelette, mais sans redéfinition de pose globale.. Comme elle est relative "
"au repère du squelette, ce n'est pas la transformation réelle \"globale\" de "
"l'os."

msgid "Returns the global pose override transform for [param bone_idx]."
msgstr ""
"Renvoie la transformation de la pose globale redéfinie pour [param bone_idx]."

msgid "Returns the global rest transform for [param bone_idx]."
msgstr "Renvoie la transformation au repos global pour [param bone_idx]."

msgid ""
"Returns the metadata for the bone at index [param bone_idx] with [param key]."
msgstr ""
"Renvoie les métadonnées pour l'os à l'index [param bone_idx] avec la clé "
"[param key]."

msgid ""
"Returns the list of all metadata keys for the bone at index [param bone_idx]."
msgstr ""
"Renvoie la liste de toutes les clés de métadonnées pour l'os à l'index [param "
"bone_idx]."

msgid "Returns the name of the bone at index [param bone_idx]."
msgstr "Renvoie le nom de l'os à l'index [param bone_idx]."

msgid ""
"Returns the bone index which is the parent of the bone at [param bone_idx]. "
"If -1, then bone has no parent.\n"
"[b]Note:[/b] The parent bone returned will always be less than [param "
"bone_idx]."
msgstr ""
"Renvoie l'index de l'os qui est le parent de l'os à l'index [param bone_idx]. "
"Si -1, alors l'os n'a pas de parent.\n"
"[b]Note :[/b] L'os parent renvoyé sera toujours inférieur à [param bone_idx]."

msgid ""
"Returns the pose transform of the specified bone.\n"
"[b]Note:[/b] This is the pose you set to the skeleton in the process, the "
"final pose can get overridden by modifiers in the deferred process, if you "
"want to access the final pose, use [signal "
"SkeletonModifier3D.modification_processed]."
msgstr ""
"Renvoie la transformation de la pose de l'os spécifié.\n"
"[b]Note :[/b] C'est la pose que vous définissez au squelette avant le "
"traitement, la pose finale peut être redéfinie par des modificateurs durant "
"le traitement différé. Si vous voulez accéder à la pose finale, utilisez "
"[signal SkeletonModifier3D.modification_processed]."

msgid ""
"Returns the pose position of the bone at [param bone_idx]. The returned "
"[Vector3] is in the local coordinate space of the [Skeleton3D] node."
msgstr ""
"Renvoie la position de pose de l'os à l'index [param bone_idx]. Le [Vector3] "
"renvoyé est dans l'espace de coordonnées local du nœud [Skeleton3D]."

msgid ""
"Returns the pose rotation of the bone at [param bone_idx]. The returned "
"[Quaternion] is local to the bone with respect to the rotation of any parent "
"bones."
msgstr ""
"Renvoie la rotation de pose de l'os à l'index [param bone_idx]. Le "
"[Quaternion] renvoyé est local à l'os par rapport à la rotation des os "
"parents."

msgid "Returns the pose scale of the bone at [param bone_idx]."
msgstr "Renvoie l'échelle de la pose de l'os à l'index [param bone_idx]."

msgid "Returns the rest transform for a bone [param bone_idx]."
msgstr "Renvoie la transformation de repos pour l'os d'index [param bone_idx]."

msgid ""
"Returns all bone names concatenated with commas ([code],[/code]) as a single "
"[StringName].\n"
"It is useful to set it as a hint for the enum property."
msgstr ""
"Renvoie tous les noms d'os concaténés avec des virgules ([code],[/code]), en "
"un seul [StringName].\n"
"Il est utile de le définir comme un indice pour la propriété enum."

msgid ""
"Returns an array with all of the bones that are parentless. Another way to "
"look at this is that it returns the indexes of all the bones that are not "
"dependent or modified by other bones in the Skeleton."
msgstr ""
"Renvoie un tableau avec tous les os qui sont sans parent. Une autre façon de "
"regarder ceci est qu'il renvoie les index de tous les os qui ne sont pas "
"dépendants ou modifiés par d'autres os dans le squelette."

msgid ""
"Returns the number of times the bone hierarchy has changed within this "
"skeleton, including renames.\n"
"The Skeleton version is not serialized: only use within a single instance of "
"Skeleton3D.\n"
"Use for invalidating caches in IK solvers and other nodes which process bones."
msgstr ""
"Renvoie le nombre de fois que la hiérarchie des os a changé dans ce "
"squelette, y compris les renommages.\n"
"La version du squelette n'est pas sérialisée : utilisez uniquement dans une "
"seule instance de Skeleton3D.\n"
"Utilisez la pour invalider les caches dans les solveur d'IK et autres nœuds "
"qui traitent les os."

msgid ""
"Returns [code]true[/code] if the bone at index [param bone_idx] has metadata "
"with the key [param key]."
msgstr ""
"Renvoie [code]true[/code] si l'os à l'index [param bone_idx] a des "
"métadonnées avec la clé [param key]."

msgid ""
"Returns whether the bone pose for the bone at [param bone_idx] is enabled."
msgstr ""
"Renvoie si la pose de l'os pour l'os à l'index [param bone_idx] est activée."

msgid "Returns all bones in the skeleton to their rest poses."
msgstr "Retourne tous les os dans le squelette à leurs poses de repos."

msgid "Binds the given Skin to the Skeleton."
msgstr "Lie la Skin donnée au Skeleton."

msgid "Sets the bone pose to rest for [param bone_idx]."
msgstr "Définit la pose de l'os au repos pour l'os d'index [param bone_idx]."

msgid "Sets all bone poses to rests."
msgstr "Définit toutes les poses d'os à celles de repos."

msgid ""
"Disables the pose for the bone at [param bone_idx] if [code]false[/code], "
"enables the bone pose if [code]true[/code]."
msgstr ""
"Désactive la pose pour l'os à l'index [param bone_idx] si [code]false[/code], "
"active la pose de l'os si [code]true[/code]."

msgid "Sets the rest transform for bone [param bone_idx]."
msgstr "Définit la transformation au repos pour l'os [param bone_idx]."

msgid ""
"If you follow the recommended workflow and explicitly have "
"[PhysicalBoneSimulator3D] as a child of [Skeleton3D], you can control whether "
"it is affected by raycasting without running [method "
"physical_bones_start_simulation], by its [member SkeletonModifier3D.active].\n"
"However, for old (deprecated) configurations, [Skeleton3D] has an internal "
"virtual [PhysicalBoneSimulator3D] for compatibility. This property controls "
"the internal virtual [PhysicalBoneSimulator3D]'s [member "
"SkeletonModifier3D.active]."
msgstr ""
"Si vous suivez le workflow recommandé et avez explicitement le "
"[PhysicalBoneSimulator3D] en tant qu'enfant du [Skeleton3D], vous pouvez "
"contrôler s'il est affecté par les raycast sans exécuter [method "
"physical_bones_start_simulation], par son [member "
"SkeletonModifier3D.active].\n"
"Cependant, pour les anciennes configurations (obsolètes), [Skeleton3D] a un "
"[PhysicalBoneSimulator3D] virtuel interne pour la compatibilité. Cette "
"propriété contrôle le [member SkeletonModifier3D.active] du "
"[PhysicalBoneSimulator3D] virtuel interne."

msgid "Sets the processing timing for the Modifier."
msgstr "Définit le timing de traitement pour le modificateur."

msgid ""
"Multiplies the 3D position track animation.\n"
"[b]Note:[/b] Unless this value is [code]1.0[/code], the key value in "
"animation will not match the actual position value."
msgstr ""
"Multiplie l'animation de la piste de position 3D.\n"
"[b]Note :[/b] Sauf si cette valeur est de [code]1.0[/code], la valeur de la "
"clé dans l'animation ne correspondra pas à la valeur réelle de la position."

msgid ""
"If [code]true[/code], forces the bones in their default rest pose, regardless "
"of their values. In the editor, this also prevents the bones from being "
"edited."
msgstr ""
"Si [code]true[/code], force les os en leur pose de repos par défaut, quelles "
"que soient leurs valeurs. Dans l'éditeur, cela empêche également les os "
"d'être modifiés."

msgid "Emitted when the rest is updated."
msgstr "Émis lorsque la pose de repos est mise à jour."

msgid ""
"Emitted when the final pose has been calculated will be applied to the skin "
"in the update process.\n"
"This means that all [SkeletonModifier3D] processing is complete. In order to "
"detect the completion of the processing of each [SkeletonModifier3D], use "
"[signal SkeletonModifier3D.modification_processed]."
msgstr ""
"Émis lorsque la pose finale a été calculée et sera appliquée à la peau dans "
"le processus de mise à jour.\n"
"Cela signifie que tous les traitements des [SkeletonModifier3D]s sont "
"complets. Afin de détecter l'achèvement du traitement de chaque "
"[SkeletonModifier3D], utilisez [signal "
"SkeletonModifier3D.modification_processed]."

msgid ""
"Notification received when this skeleton's pose needs to be updated. In that "
"case, this is called only once per frame in a deferred process."
msgstr ""
"Notification reçue lorsque la pose de ce squelette doit être mise à jour. "
"Dans ce cas, ceci n'est appelé qu'une fois par trame dans un traitement "
"différé."

msgid ""
"Set a flag to process modification during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Définit un drapeau pour traiter la modification pendant les trames de "
"physique (voir [constant Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"Set a flag to process modification during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Définit un drapeau pour traiter la modification pendant les trames de "
"traitement (voir [constant Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Do not process modification. Use [method advance] to process the modification "
"manually."
msgstr ""
"Ne pas traiter la modification. Utilisez [method advance] pour traiter la "
"modification manuellement."

msgid ""
"A node used to rotate all bones of a [Skeleton3D] bone chain a way that "
"places the end bone at a desired 3D position."
msgstr ""
"Un nœud utilisé pour faire pivoter tous les os d'une chaîne d'os de "
"[Skeleton3D] d'une manière qui place l'os final à une position 3D souhaitée."

msgid ""
"Returns the parent [Skeleton3D] node that was present when SkeletonIK entered "
"the scene tree. Returns [code]null[/code] if the parent node was not a "
"[Skeleton3D] node when SkeletonIK3D entered the scene tree."
msgstr ""
"Renvoie le nœud parent [Skeleton3D] qui était présent lorsque SkeletonIK est "
"entré dans l'arbre de scène. Renvoie [code]null[/code] si le nœud parent "
"n'était pas un nœud [Skeleton3D] lorsque SkeletonIK3D est entré dans l'arbre "
"de scène."

msgid ""
"Returns [code]true[/code] if SkeletonIK is applying IK effects on continues "
"frames to the [Skeleton3D] bones. Returns [code]false[/code] if SkeletonIK is "
"stopped or [method start] was used with the [code]one_time[/code] parameter "
"set to [code]true[/code]."
msgstr ""
"Renvoie [code]true[/code] si SkeletonIK applique les effets d'IK sur des "
"trames continues aux os [Skeleton3D]. Renvoie [code]false[/code] si "
"SkeletonIK est arrêté ou [method start] a été utilisé avec le paramètre "
"[code]one_time[/code] défini à [code]true[/code]."

msgid ""
"Starts applying IK effects on each frame to the [Skeleton3D] bones but will "
"only take effect starting on the next frame. If [param one_time] is "
"[code]true[/code], this will take effect immediately but also reset on the "
"next frame."
msgstr ""
"Commence à appliquer des effets d'IK sur chaque trame aux os [Skeleton3D] "
"mais ne prendra effet que sur la prochaine trame. Si [param one_time] vaut "
"[code]true[/code], cela prendra effet immédiatement, mais aussi sera "
"réinitialisé sur la prochaine trame."

msgid ""
"Stops applying IK effects on each frame to the [Skeleton3D] bones and also "
"calls [method Skeleton3D.clear_bones_global_pose_override] to remove existing "
"overrides on all bones."
msgstr ""
"Arrête d'appliquer les effets d'IK à chaque trame aux os [Skeleton3D] et "
"appelle également [method Skeleton3D.clear_bones_global_pose_override] pour "
"supprimer les redéfinitions existantes sur tous les os."

msgid "Use [member SkeletonModifier3D.influence] instead."
msgstr "Utilisez [member SkeletonModifier3D.influence] à la place."

msgid ""
"Number of iteration loops used by the IK solver to produce more accurate (and "
"elegant) bone chain results."
msgstr ""
"Nombre de boucles d'itération utilisées par le résolveur IK pour produire des "
"résultats de chaîne d'os plus précis (et élégants)."

msgid ""
"The minimum distance between bone and goal target. If the distance is below "
"this value, the IK solver stops further iterations."
msgstr ""
"La distance minimale entre l'os et la cible. Si la distance est en dessous de "
"cette valeur, le solveur IK arrête les itérations."

msgid ""
"If [code]true[/code] overwrites the rotation of the tip bone with the "
"rotation of the [member target] (or [member target_node] if defined)."
msgstr ""
"Si [code]true[/code], écrase la rotation de l'os du bout avec la rotation de "
"la cible [member target] (ou le nœud cible [member target_node] si il est "
"définie)."

msgid "The name of the current root bone, the first bone in the IK chain."
msgstr "Le nom de l'os racine actuel, le premier os de la chaîne IK."

msgid ""
"Takes an angle and clamps it so it is within the passed-in [param min] and "
"[param max] range. [param invert] will inversely clamp the angle, clamping it "
"to the range outside of the given bounds."
msgstr ""
"Prends un angle et le borne de sorte à ce qu'il soit à l'intérieur de la "
"plage [param min] et [param max]. [param invert] bornera l'angle de manière "
"inverse, le bornant en dehors des bornes données."

msgid ""
"Returns whether this modification will call [method _draw_editor_gizmo] in "
"the Godot editor to draw modification-specific gizmos."
msgstr ""
"Renvoie si cette modification appellera [method _draw_editor_gizmo] dans "
"l'éditeur Godot pour dessiner des manipulateurs spécifiques à la modification."

msgid "Returns whether this modification has been successfully setup or not."
msgstr "Renvoie si cette modification a été installée avec succès ou non."

msgid ""
"Returns the [SkeletonModificationStack2D] that this modification is bound to. "
"Through the modification stack, you can access the Skeleton2D the "
"modification is operating on."
msgstr ""
"Renvoie le [SkeletonModificationStack2D] auquel cette modification est liée. "
"Grâce à la pile de modification, vous pouvez accéder au Skeleton2D sur lequel "
"cette modification opère."

msgid ""
"Sets whether this modification will call [method _draw_editor_gizmo] in the "
"Godot editor to draw modification-specific gizmos."
msgstr ""
"Définit si cette modification appellera [method _draw_editor_gizmo] dans "
"l'éditeur Godot pour dessiner des manipulateurs spécifiques à la modification."

msgid ""
"A modification that jiggles [Bone2D] nodes as they move towards a target."
msgstr ""
"Une modification qui fait trembloter des nœuds [Bone2D] pendant qu'ils se "
"déplacent vers une cible."

msgid ""
"Returns the amount of additional rotation that is applied after the LookAt "
"modification executes."
msgstr ""
"Renvoie le montant de rotation supplémentaire qui est appliqué après que la "
"modification LookAt s'exécute."

msgid ""
"Returns whether the constraints to this modification are inverted or not."
msgstr "Renvoie si les contraintes à cette modification sont inversées ou non."

msgid "Returns the constraint's maximum allowed angle."
msgstr "Renvoie l'angle maximal autorisé de la contrainte."

msgid "Returns the constraint's minimum allowed angle."
msgstr "Renvoie l'angle minimum autorisé de la contrainte."

msgid ""
"Returns [code]true[/code] if the LookAt modification is using constraints."
msgstr ""
"Renvoie [code]true[/code] si la modification LookAt utilise des contraintes."

msgid "Sets the constraint's maximum allowed angle."
msgstr "Définit l'angle maximal autorisé de la contrainte."

msgid "Sets the constraint's minimum allowed angle."
msgstr "Définit l'angle minimum autorisé de la contrainte."

msgid ""
"Physical bones may be changed in the future to perform the position update of "
"[Bone2D] on their own, without needing this resource."
msgstr ""
"Les os physiques peuvent être modifiés à l'avenir pour effectuer la mise à "
"jour de position du [Bone2D] d'eux-mêmes, sans avoir besoin de cette "
"ressource."

msgid ""
"A modification that applies the transforms of [PhysicalBone2D] nodes to "
"[Bone2D] nodes."
msgstr ""
"Une modification qui applique les transformations des nœuds [PhysicalBone2D] "
"aux nœuds [Bone2D]."

msgid ""
"This modification takes the transforms of [PhysicalBone2D] nodes and applies "
"them to [Bone2D] nodes. This allows the [Bone2D] nodes to react to physics "
"thanks to the linked [PhysicalBone2D] nodes."
msgstr ""
"Cette modification prend les transformations des nœuds [PhysicalBone2D] et "
"les applique aux nœuds [Bone2D]. Cela permet aux nœuds [Bone2D] de réagir à "
"la physique grâce aux nœuds [PhysicalBone2D] liés."

msgid ""
"Empties the list of [PhysicalBone2D] nodes and populates it with all "
"[PhysicalBone2D] nodes that are children of the [Skeleton2D]."
msgstr ""
"Vide la liste des nœuds [PhysicalBone2D] et la remplit avec tous les nœuds "
"[PhysicalBone2D] qui sont enfants du [Skeleton2D]."

msgid "Returns the [PhysicalBone2D] node at [param joint_idx]."
msgstr "Renvoie le nœud [PhysicalBone2D] à l'index [param joint_idx]."

msgid ""
"Sets the [PhysicalBone2D] node at [param joint_idx].\n"
"[b]Note:[/b] This is just the index used for this modification, not the bone "
"index used in the [Skeleton2D]."
msgstr ""
"Définit le nœud [PhysicalBone2D] à l'index [param joint_idx].\n"
"[b]Note :[/b] Ce n'est que l'index utilisé pour cette modification, pas "
"l'index d'os utilisé dans le [Skeleton2D]."

msgid ""
"Tell the [PhysicalBone2D] nodes to start simulating and interacting with the "
"physics world.\n"
"Optionally, an array of bone names can be passed to this function, and that "
"will cause only [PhysicalBone2D] nodes with those names to start simulating."
msgstr ""
"Indique aux nœuds [PhysicalBone2D] de commencer à simuler et à interagir avec "
"le monde physique.\n"
"Optionnellement, un tableau de noms d'os peut être transmis à cette fonction, "
"et cela fera que seulement les nœuds [PhysicalBone2D] avec ces noms "
"commencent à simuler."

msgid ""
"Tell the [PhysicalBone2D] nodes to stop simulating and interacting with the "
"physics world.\n"
"Optionally, an array of bone names can be passed to this function, and that "
"will cause only [PhysicalBone2D] nodes with those names to stop simulating."
msgstr ""
"Indique aux nœuds [PhysicalBone2D] d'arrêter de simuler et d'interagir avec "
"le monde physique.\n"
"Optionnellement, un tableau de noms d'os peut être transmis à cette fonction, "
"et cela fera que seulement les nœuds [PhysicalBone2D] avec ces noms arrêtent "
"de simuler."

msgid "The number of [PhysicalBone2D] nodes linked in this modification."
msgstr "Le nombre de nœuds [PhysicalBone2D] liés à cette modification."

msgid "A modification that holds and executes a [SkeletonModificationStack2D]."
msgstr ""
"Une modification qui tient et exécute une [SkeletonModificationStack2D]."

msgid ""
"This [SkeletonModification2D] holds a reference to a "
"[SkeletonModificationStack2D], allowing you to use multiple modification "
"stacks on a single [Skeleton2D].\n"
"[b]Note:[/b] The modifications in the held [SkeletonModificationStack2D] will "
"only be executed if their execution mode matches the execution mode of the "
"SkeletonModification2DStackHolder."
msgstr ""
"Ce [SkeletonModification2D] tient une référence à une "
"[SkeletonModificationStack2D], vous permettant d'utiliser plusieurs piles de "
"modification sur un seul [Skeleton2D].\n"
"[b]Note :[/b] Les modifications dans la [SkeletonModificationStack2D] "
"contenue ne seront exécutées que si leur mode d'exécution correspond au mode "
"d'exécution du SkeletonModification2DStackHolder."

msgid ""
"Returns the [SkeletonModificationStack2D] that this modification is holding."
msgstr "Renvoie la [SkeletonModificationStack2D] que cette modification tient."

msgid ""
"A modification that rotates two bones using the law of cosines to reach the "
"target."
msgstr ""
"Une modification qui fait tourner deux os en utilisant la loi des cosinus "
"pour atteindre la cible."

msgid ""
"This [SkeletonModification2D] uses an algorithm typically called TwoBoneIK. "
"This algorithm works by leveraging the law of cosines and the lengths of the "
"bones to figure out what rotation the bones currently have, and what rotation "
"they need to make a complete triangle, where the first bone, the second bone, "
"and the target form the three vertices of the triangle. Because the algorithm "
"works by making a triangle, it can only operate on two bones.\n"
"TwoBoneIK is great for arms, legs, and really any joints that can be "
"represented by just two bones that bend to reach a target. This solver is "
"more lightweight than [SkeletonModification2DFABRIK], but gives similar, "
"natural looking results."
msgstr ""
"Ce [SkeletonModification2D] utilise un algorithme généralement appelé "
"TwoBoneIK (litt. Cinématique inverse à deux os). Cet algorithme fonctionne en "
"tirant parti de la loi des cosinus et des longueurs des os pour déterminer "
"quelle rotation les os ont actuellement, et quelle rotation ils doivent avoir "
"pour obtenir un triangle complet, où le premier os, le second os, et la cible "
"forment les trois sommets du triangle. Parce que l'algorithme fonctionne en "
"faisant un triangle, il ne peut fonctionner que sur deux os.\n"
"TwoBoneIK est idéal pour les bras, les jambes, et vraiment toutes les "
"liaisons qui peuvent être représentées par seulement deux os qui se plient "
"pour atteindre une cible. Ce solveur est plus léger que "
"[SkeletonModification2DFABRIK], mais donne des résultats similaires et "
"naturels."

msgid ""
"Returns the [Bone2D] node that is being used as the first bone in the "
"TwoBoneIK modification."
msgstr ""
"Renvoie le nœud [Bone2D] qui est utilisé comme premier os dans la "
"modification TwoBoneIK."

msgid ""
"Returns the index of the [Bone2D] node that is being used as the first bone "
"in the TwoBoneIK modification."
msgstr ""
"Renvoie l'index du nœud [Bone2D] qui est utilisé comme premier os dans la "
"modification TwoBoneIK."

msgid ""
"Returns the [Bone2D] node that is being used as the second bone in the "
"TwoBoneIK modification."
msgstr ""
"Renvoie le nœud [Bone2D] qui est utilisé comme second os dans la modification "
"TwoBoneIK."

msgid ""
"Returns the index of the [Bone2D] node that is being used as the second bone "
"in the TwoBoneIK modification."
msgstr ""
"Renvoie l'index du nœud [Bone2D] qui est utilisé comme second os dans la "
"modification TwoBoneIK."

msgid ""
"Sets the [Bone2D] node that is being used as the first bone in the TwoBoneIK "
"modification."
msgstr ""
"Définit le nœud [Bone2D] qui est utilisé comme premier os dans la "
"modification TwoBoneIK."

msgid ""
"Sets the index of the [Bone2D] node that is being used as the first bone in "
"the TwoBoneIK modification."
msgstr ""
"Définit l'index du nœud [Bone2D] qui est utilisé comme premier os dans la "
"modification TwoBoneIK."

msgid ""
"Sets the [Bone2D] node that is being used as the second bone in the TwoBoneIK "
"modification."
msgstr ""
"Définit le nœud [Bone2D] qui est utilisé comme second os dans la modification "
"TwoBoneIK."

msgid ""
"Sets the index of the [Bone2D] node that is being used as the second bone in "
"the TwoBoneIK modification."
msgstr ""
"Définit le nœud [Bone2D] qui est utilisé comme second os dans la modification "
"TwoBoneIK."

msgid ""
"If [code]true[/code], the bones in the modification will bend outward as "
"opposed to inwards when contracting. If [code]false[/code], the bones will "
"bend inwards when contracting."
msgstr ""
"Si [code]true[/code], les os de la modification se plieront vers l'extérieur "
"plutôt que vers l'intérieur lors de la contraction. Si [code]false[/code], "
"les os se plient à l'intérieur lors de la contraction."

msgid ""
"The maximum distance the target can be at. If the target is farther than this "
"distance, the modification will solve as if it's at this maximum distance. "
"When set to [code]0[/code], the modification will solve without distance "
"constraints."
msgstr ""
"La distance maximale à laquelle la cible peut être. Si la cible est plus loin "
"que cette distance, la modification va se résoudre comme si elle était à "
"cette distance maximale. Lorsque définie à [code]0[/code], la modification va "
"se résoudre sans contraintes de distance."

msgid ""
"The minimum distance the target can be at. If the target is closer than this "
"distance, the modification will solve as if it's at this minimum distance. "
"When set to [code]0[/code], the modification will solve without distance "
"constraints."
msgstr ""
"La distance minimale à laquelle la cible peut être. Si la cible est plus "
"proche que cette distance, la modification va se résoudre comme si elle était "
"à cette distance minimale. Lorsque définie à [code]0[/code], la modification "
"va se résoudre sans contraintes de distance."

msgid ""
"The NodePath to the node that is the target for the TwoBoneIK modification. "
"This node is what the modification will use when bending the [Bone2D] nodes."
msgstr ""
"Le NodePath vers le nœud qui est la cible pour la modification TwoBoneIK. Ce "
"nœud est ce que la modification utilisera lors de la flexion des nœuds "
"[Bone2D]."

msgid "A resource that holds a stack of [SkeletonModification2D]s."
msgstr "Une ressource qui contient une pile de [SkeletonModification2D]s."

msgid "Adds the passed-in [SkeletonModification2D] to the stack."
msgstr "Ajoute à la pile le [SkeletonModification2D] donné."

msgid "Enables all [SkeletonModification2D]s in the stack."
msgstr "Active toutes les [SkeletonModification2D]s dans la pile."

msgid ""
"Returns a boolean that indicates whether the modification stack is setup and "
"can execute."
msgstr ""
"Renvoie un booléen indiquant si la pile de modifications est installée et "
"peut être exécutée."

msgid "The number of modifications in the stack."
msgstr "Le nombre de modifications dans la pile."

msgid "Design of the Skeleton Modifier 3D"
msgstr "Conception du Skeleton Modifier 3D"

msgid "Use [method _process_modification_with_delta] instead."
msgstr "Utilisez [method _process_modification_with_delta] à la place."

msgid "Called when the skeleton is changed."
msgstr "Appelée quand le squelette est changé."

msgid "Get parent [Skeleton3D] node if found."
msgstr "Obtient le nœud [Skeleton3D] parent si trouvé."

msgid "If [code]true[/code], the [SkeletonModifier3D] will be processing."
msgstr "Si [code]true[/code], le [SkeletonModifier3D] traitera."

msgid ""
"Notifies when the modification have been finished.\n"
"[b]Note:[/b] If you want to get the modified bone pose by the modifier, you "
"must use [method Skeleton3D.get_bone_pose] or [method "
"Skeleton3D.get_bone_global_pose] at the moment this signal is fired."
msgstr ""
"Notifie quand la modification a été terminée.\n"
"[b]Note :[/b] Si vous voulez obtenir la pose d'os modifiée par le "
"modificateur, vous devez utiliser [method Skeleton3D.get_bone_pose] ou "
"[method Skeleton3D.get_bone_global_pose] au moment où ce signal est tiré."

msgid "Enumerated value for the +X axis."
msgstr "Valeur d'énumération pour l'axe +X."

msgid "Enumerated value for the -X axis."
msgstr "Valeur d'énumération pour l'axe -X."

msgid "Enumerated value for the +Y axis."
msgstr "Valeur d'énumération pour l'axe +Y."

msgid "Enumerated value for the -Y axis."
msgstr "Valeur d'énumération pour l'axe -Y."

msgid "Enumerated value for the +Z axis."
msgstr "Valeur d'énumération pour l'axe +Z."

msgid "Enumerated value for the -Z axis."
msgstr "Valeur d'énumération pour l'axe -Z."

msgid ""
"Base class for a profile of a virtual skeleton used as a target for "
"retargeting."
msgstr ""
"Classe de base pour un profil d'un squelette virtuel utilisé comme cible pour "
"le re-ciblage."

msgid ""
"This resource is used in [EditorScenePostImport]. Some parameters are "
"referring to bones in [Skeleton3D], [Skin], [Animation], and some other nodes "
"are rewritten based on the parameters of [SkeletonProfile].\n"
"[b]Note:[/b] These parameters need to be set only when creating a custom "
"profile. In [SkeletonProfileHumanoid], they are defined internally as read-"
"only values."
msgstr ""
"Cette ressource est utilisée dans [EditorScenePostImport]. Certains "
"paramètres font référence aux os dans [Skeleton3D], [Skin], [Animation], et "
"certains autres nœuds sont réécrits en fonction des paramètres du "
"[SkeletonProfile].\n"
"[b]Note :[/b] Ces paramètres ne doivent être définis que lors de la création "
"d'un profil personnalisé. Dans [SkeletonProfileHumanoid], ils sont définis en "
"interne comme des valeurs en lecture seule."

msgid ""
"Returns the name of the group at [param group_idx] that will be the drawing "
"group in the [BoneMap] editor."
msgstr ""
"Renvoie le nom du groupe à l'index [param group_idx] qui sera le groupe de "
"dessin dans l'éditeur [BoneMap]."

msgid "Direction to the average coordinates of bone children."
msgstr "Direction vers les coordonnées moyennes des os enfants."

msgid "Direction to the coordinates of specified bone child."
msgstr "Direction vers les coordonnées de l'os enfant spécifié."

msgid "Direction is not calculated."
msgstr "La direction n'est pas calculée."

msgid "A humanoid [SkeletonProfile] preset."
msgstr "Un préreglage de [SkeletonProfile] humanoïde."

msgid ""
"A [SkeletonProfile] as a preset that is optimized for the human form. This "
"exists for standardization, so all parameters are read-only.\n"
"A humanoid skeleton profile contains 54 bones divided in 4 groups: [code]"
"\"Body\"[/code], [code]\"Face\"[/code], [code]\"LeftHand\"[/code], and [code]"
"\"RightHand\"[/code]. It is structured as follows:\n"
"[codeblock lang=text]\n"
"Root\n"
"└─ Hips\n"
"    ├─ LeftUpperLeg\n"
"    │  └─ LeftLowerLeg\n"
"    │     └─ LeftFoot\n"
"    │        └─ LeftToes\n"
"    ├─ RightUpperLeg\n"
"    │  └─ RightLowerLeg\n"
"    │     └─ RightFoot\n"
"    │        └─ RightToes\n"
"    └─ Spine\n"
"        └─ Chest\n"
"            └─ UpperChest\n"
"                ├─ Neck\n"
"                │   └─ Head\n"
"                │       ├─ Jaw\n"
"                │       ├─ LeftEye\n"
"                │       └─ RightEye\n"
"                ├─ LeftShoulder\n"
"                │  └─ LeftUpperArm\n"
"                │     └─ LeftLowerArm\n"
"                │        └─ LeftHand\n"
"                │           ├─ LeftThumbMetacarpal\n"
"                │           │  └─ LeftThumbProximal\n"
"                │           │    └─ LeftThumbDistal\n"
"                │           ├─ LeftIndexProximal\n"
"                │           │  └─ LeftIndexIntermediate\n"
"                │           │    └─ LeftIndexDistal\n"
"                │           ├─ LeftMiddleProximal\n"
"                │           │  └─ LeftMiddleIntermediate\n"
"                │           │    └─ LeftMiddleDistal\n"
"                │           ├─ LeftRingProximal\n"
"                │           │  └─ LeftRingIntermediate\n"
"                │           │    └─ LeftRingDistal\n"
"                │           └─ LeftLittleProximal\n"
"                │              └─ LeftLittleIntermediate\n"
"                │                └─ LeftLittleDistal\n"
"                └─ RightShoulder\n"
"                   └─ RightUpperArm\n"
"                      └─ RightLowerArm\n"
"                         └─ RightHand\n"
"                            ├─ RightThumbMetacarpal\n"
"                            │  └─ RightThumbProximal\n"
"                            │     └─ RightThumbDistal\n"
"                            ├─ RightIndexProximal\n"
"                            │  └─ RightIndexIntermediate\n"
"                            │     └─ RightIndexDistal\n"
"                            ├─ RightMiddleProximal\n"
"                            │  └─ RightMiddleIntermediate\n"
"                            │     └─ RightMiddleDistal\n"
"                            ├─ RightRingProximal\n"
"                            │  └─ RightRingIntermediate\n"
"                            │     └─ RightRingDistal\n"
"                            └─ RightLittleProximal\n"
"                               └─ RightLittleIntermediate\n"
"                                 └─ RightLittleDistal\n"
"[/codeblock]"
msgstr ""
"Un pré-réglage de [SkeletonProfile] qui est optimisé pour la forme humaine. "
"Ceci existe pour la standardisation, et est donc en lecture-seule.\n"
"Un profil de squelette humanoïde qui contient 54 os divisé en 4 groupes : "
"[code]\"Body\"[/code], [code]\"Face\"[/code], [code]\"LeftHand\"[/code], et "
"[code]\"RightHand\"[/code]. Il est structuré comme suit :\n"
"[codeblock lang=text]\n"
"Root\n"
"└─ Hips\n"
"    ├─ LeftUpperLeg\n"
"    │  └─ LeftLowerLeg\n"
"    │     └─ LeftFoot\n"
"    │        └─ LeftToes\n"
"    ├─ RightUpperLeg\n"
"    │  └─ RightLowerLeg\n"
"    │     └─ RightFoot\n"
"    │        └─ RightToes\n"
"    └─ Spine\n"
"        └─ Chest\n"
"            └─ UpperChest\n"
"                ├─ Neck\n"
"                │   └─ Head\n"
"                │       ├─ Jaw\n"
"                │       ├─ LeftEye\n"
"                │       └─ RightEye\n"
"                ├─ LeftShoulder\n"
"                │  └─ LeftUpperArm\n"
"                │     └─ LeftLowerArm\n"
"                │        └─ LeftHand\n"
"                │           ├─ LeftThumbMetacarpal\n"
"                │           │  └─ LeftThumbProximal\n"
"                │           │    └─ LeftThumbDistal\n"
"                │           ├─ LeftIndexProximal\n"
"                │           │  └─ LeftIndexIntermediate\n"
"                │           │    └─ LeftIndexDistal\n"
"                │           ├─ LeftMiddleProximal\n"
"                │           │  └─ LeftMiddleIntermediate\n"
"                │           │    └─ LeftMiddleDistal\n"
"                │           ├─ LeftRingProximal\n"
"                │           │  └─ LeftRingIntermediate\n"
"                │           │    └─ LeftRingDistal\n"
"                │           └─ LeftLittleProximal\n"
"                │              └─ LeftLittleIntermediate\n"
"                │                └─ LeftLittleDistal\n"
"                └─ RightShoulder\n"
"                   └─ RightUpperArm\n"
"                      └─ RightLowerArm\n"
"                         └─ RightHand\n"
"                            ├─ RightThumbMetacarpal\n"
"                            │  └─ RightThumbProximal\n"
"                            │     └─ RightThumbDistal\n"
"                            ├─ RightIndexProximal\n"
"                            │  └─ RightIndexIntermediate\n"
"                            │     └─ RightIndexDistal\n"
"                            ├─ RightMiddleProximal\n"
"                            │  └─ RightMiddleIntermediate\n"
"                            │     └─ RightMiddleDistal\n"
"                            ├─ RightRingProximal\n"
"                            │  └─ RightRingIntermediate\n"
"                            │     └─ RightRingDistal\n"
"                            └─ RightLittleProximal\n"
"                               └─ RightLittleIntermediate\n"
"                                 └─ RightLittleDistal\n"
"[/codeblock]"

msgid ""
"Returns the [RID] owned by this SkinReference, as returned by [method "
"RenderingServer.skeleton_create]."
msgstr ""
"Renvoie le [RID] détenu par cette SkinReference, tel que renvoyé par [method "
"RenderingServer.skeleton_create]."

msgid "Defines a 3D environment's background by using a [Material]."
msgstr ""
"Définit l'arrière-plan d'un environnement 3D en utilisant un [Material]."

msgid ""
"The [Sky] class uses a [Material] to render a 3D environment's background and "
"the light it emits by updating the reflection/radiance cubemaps."
msgstr ""
"La classe [Sky] utilise un [Material] pour rendre le fond d'un environnement "
"3D (son ciel) et la lumière qu'il émet en mettant à jour les cubemaps de "
"réflexion/radiance."

msgid ""
"The method for generating the radiance map from the sky. The radiance map is "
"a cubemap with increasingly blurry versions of the sky corresponding to "
"different levels of roughness. Radiance maps can be expensive to calculate."
msgstr ""
"La méthode pour générer la radiance map du ciel. La radiance map est une "
"cubemap avec des versions de plus en plus floues du ciel correspondant à "
"différents niveaux de rugosité. Les radiance maps peuvent être chères à "
"calculer."

msgid ""
"The [Sky]'s radiance map size. The higher the radiance map size, the more "
"detailed the lighting from the [Sky] will be.\n"
"[b]Note:[/b] Some hardware will have trouble with higher radiance sizes, "
"especially [constant RADIANCE_SIZE_512] and above. Only use such high values "
"on high-end hardware."
msgstr ""
"La taille de la radiance map du [Sky]. Plus la taille de la radiance map sera "
"élevée, plus l'éclairage du ciel [Sky] sera détaillé.\n"
"[b]Note :[/b] Certains matériels auront des problèmes avec des tailles de "
"radiance plus élevées, en particulier pour [constant RADIANCE_SIZE_512] et "
"plus. Utilisez ces valeurs élevées seulement sur du matériel haut de gamme."

msgid ""
"[Material] used to draw the background. Can be [PanoramaSkyMaterial], "
"[ProceduralSkyMaterial], [PhysicalSkyMaterial], or even a [ShaderMaterial] if "
"you want to use your own custom shader."
msgstr ""
"[Material] utilisé pour dessiner l'arrière-plan. Peut être un "
"[PanoramaSkyMaterial], [ProceduralSkyMaterial], [PhysicalSkyMaterial], ou "
"même un [ShaderMaterial] si vous voulez utiliser votre propre shader "
"personnalisé."

msgid "Radiance texture size is 32×32 pixels."
msgstr "La texture de rayonnement fait 32x32 pixels."

msgid "Radiance texture size is 64×64 pixels."
msgstr "La texture de rayonnement fait 64x64 pixels."

msgid "Radiance texture size is 128×128 pixels."
msgstr "La texture de rayonnement fait 128x128 pixels."

msgid "Radiance texture size is 256×256 pixels."
msgstr "La texture de rayonnement fait 256x256 pixels."

msgid "Radiance texture size is 512×512 pixels."
msgstr "La texture de rayonnement fait 512x512 pixels."

msgid "Radiance texture size is 1024×1024 pixels."
msgstr "La texture de rayonnement fait 1024×1024 pixels."

msgid "Radiance texture size is 2048×2048 pixels."
msgstr "La texture de rayonnement fait 2048×2048 pixels."

msgid "Represents the size of the [enum RadianceSize] enum."
msgstr "Représente la taille de l'énumération [enum RadianceSize]."

msgid ""
"Automatically selects the appropriate process mode based on your sky shader. "
"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will use "
"[constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
"PROCESS_MODE_QUALITY]."
msgstr ""
"Sélectionner automatiquement le mode de traitement approprié basé sur votre "
"shader de ciel. Si votre shader utilise [code]TIME[/code] ou [code]POSITION[/"
"code], cela utilisera [constant PROCESS_MODE_REALTIME]. Si votre shader "
"utilise l'une des variables [code]LIGHT_*[/code] ou tout uniform "
"personnalisé, cela utilise [constant PROCESS_MODE_INCREMENTAL]. Sinon, cela "
"utilisera par défaut [constant PROCESS_MODE_QUALITY]."

msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
"used if you plan on changing the sky at runtime. If you are finding that the "
"reflection is not blurry enough and is showing sparkles or fireflies, try "
"increasing [member ProjectSettings.rendering/reflections/sky_reflections/"
"ggx_samples]."
msgstr ""
"Utiliser un échantillonnage d'importance de haute qualité pour traiter la "
"radiance map. En général, cela résulte en une qualité beaucoup plus élevée "
"que [constant PROCESS_MODE_REALTIME] mais prend beaucoup plus de temps à "
"générer. Cela ne devrait pas être utilisé si vous prévoyez de changer le ciel "
"durant l'exécution. Si vous constatez que la réflexion n'est pas assez floue "
"et affiche des étincelles ou des lucioles, essayez d'augmenter [member "
"ProjectSettings.rendering/reflections/sky_reflections/ggx_samples]."

msgid ""
"Uses the same high quality importance sampling to process the radiance map as "
"[constant PROCESS_MODE_QUALITY], but updates over several frames. The number "
"of frames is determined by [member ProjectSettings.rendering/reflections/"
"sky_reflections/roughness_layers]. Use this when you need highest quality "
"radiance maps, but have a sky that updates slowly."
msgstr ""
"Utiliser le même échantillonnage d'importance de haute qualité pour traiter "
"la radiance map que [constant PROCESS_MODE_QUALITY], mais se met à jour sur "
"plusieurs trames. Le nombre de trames est déterminé par [member "
"ProjectSettings.rendering/reflections/sky_reflections/roughness_layers]. "
"Utilisez ceci lorsque vous avez besoin de radiance map de la plus haute "
"qualité, mais que vous avez un ciel qui se met à jour lentement."

msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times. If you "
"need better quality, but still need to update the sky every frame, consider "
"turning on [member ProjectSettings.rendering/reflections/sky_reflections/"
"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256×256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]. "
"Otherwise, a warning is printed and the overridden radiance size is ignored."
msgstr ""
"Utiliser l'algorithme de filtrage rapide pour traiter la radiance map. En "
"général, cela résulte en une qualité inférieure, mais en des temps "
"d'exécution nettement plus rapides. Si vous avez besoin d'une meilleure "
"qualité, mais avez toujours besoin de mettre à jour le ciel à chaque trame, "
"envisagez d'activer [member ProjectSettings.rendering/reflections/"
"sky_reflections/fast_filter_high_quality].\n"
"[b]Note :[/b] L'algorithme de filtrage rapide est limité à des cubemaps "
"256×256, donc [member radiance_size] doit être défini à [constant "
"RADIANCE_SIZE_256]. Sinon, un avertissement est affiché et la taille du "
"rayonnement redéfinie est ignorée."

msgid "Abstract base class for sliders."
msgstr "Classe de base abstraite pour les sliders."

msgid ""
"If [code]true[/code], the slider can be interacted with. If [code]false[/"
"code], the value can be changed only by code."
msgstr ""
"Si [code]true[/code], l'utilisateur peut intéragir avec le curseur. Si "
"[code]false[/code], la valeur ne peut être modifiée que par code."

msgid "If [code]true[/code], the value can be changed using the mouse wheel."
msgstr ""
"Si [code]true[/code], la valeur peut être changée avec la molette de la "
"souris."

msgid ""
"Number of ticks displayed on the slider, including border ticks. Ticks are "
"uniformly-distributed value markers."
msgstr ""
"Le nombre de marqueurs affichées sur le curseur, y compris les marqueurs sur "
"les bords. Les marqueurs représentent des valeurs distribués uniformément."

msgid ""
"If [code]true[/code], the slider will display ticks for minimum and maximum "
"values."
msgstr ""
"Si [code]true[/code], le curseur affichera des marqueurs pour les valeurs "
"minimales et maximales."

msgid "Places the ticks at the center of the slider."
msgstr "Place les tics au centre du slider."

msgid ""
"Vertical or horizontal offset of the ticks. The offset is reversed for top or "
"left ticks."
msgstr ""
"Décalage vertical ou horizontal des tics. Le décalage est inversé pour les "
"tiques haut ou gauche."

msgid "The texture for the grabber (the draggable element)."
msgstr "La texture du glisseur (l'élément déplaçable)."

msgid "The texture for the grabber when it's disabled."
msgstr "La texture du glisseur quand il est désactivé."

msgid "The texture for the grabber when it's focused."
msgstr "La texture du glisseur quand il a le focus."

msgid ""
"The texture for the ticks, visible when [member Slider.tick_count] is greater "
"than 0."
msgstr ""
"La texture des tics, visible lorsque [member Slider.tick_count] est supérieur "
"à 0."

msgid ""
"A physics joint that restricts the movement of a 3D physics body along an "
"axis relative to another physics body."
msgstr ""
"Une liaison physique qui restreint le mouvement d'un corps physique 3D le "
"long d'un axe relatif à un autre corps physique."

msgid ""
"A physics joint that restricts the movement of a 3D physics body along an "
"axis relative to another physics body. For example, Body A could be a "
"[StaticBody3D] representing a piston base, while Body B could be a "
"[RigidBody3D] representing the piston head, moving up and down."
msgstr ""
"Une liaison physique qui restreint le mouvement d'un corps physique 3D le "
"long d'un axe relatif à un autre corps physique. Pour exemple, un corps A "
"peut être un [StaticBody3D] représentant une base de piston, pendant qu'un "
"corps B peut être un [RigidBody3D] représentant la tête du piston, se "
"déplaçant de haut en bas."

msgid "Returns the value of the given parameter."
msgstr "Renvoie la valeur du paramètre donné."

msgid "Assigns [param value] to the given parameter."
msgstr "Assigne la valeur [param value] au paramètre donné."

msgid ""
"The amount of damping of the rotation when the limit is surpassed.\n"
"A lower damping value allows a rotation initiated by body A to travel to body "
"B slower."
msgstr ""
"La quantité d'amortissement de la rotation lorsque la limite est dépassée.\n"
"Une valeur d'amortissement inférieure permet à une rotation initiée par le "
"corps A de se propager plus lentement au corps B."

msgid ""
"The amount of restitution of the rotation when the limit is surpassed.\n"
"Does not affect damping."
msgstr ""
"La quantité de restitution de la rotation quand la limite est dépassée.\n"
"N'affecte par l'amortissement."

msgid ""
"A factor applied to the all rotation once the limit is surpassed.\n"
"Makes all rotation slower when between 0 and 1."
msgstr ""
"Un facteur appliqué à toute rotation une fois la limite dépassée.\n"
"Rend toute rotation plus lente quand entre 0 et 1."

msgid "A factor applied to the all rotation in the limits."
msgstr "Un facteur appliqué à toute rotation dans les limites."

msgid ""
"A factor applied to the all rotation across axes orthogonal to the slider."
msgstr ""
"Un facteur appliqué aux rotations sur les axes orthogonaux au glissement."

msgid ""
"The amount of damping that happens once the limit defined by [member "
"linear_limit/lower_distance] and [member linear_limit/upper_distance] is "
"surpassed."
msgstr ""
"La quantité d'amortissement qui se produit une fois la limite définie par "
"[member linear_limit/lower_distance] et [member linear_limit/upper_distance] "
"est dépassée."

msgid ""
"Constant for accessing [member linear_limit/upper_distance]. The maximum "
"difference between the pivot points on their X axis before damping happens."
msgstr ""
"Constante pour accéder à [member linear_limit/upper_distance]. La différence "
"maximale entre les points du pivot sur leur axe X avant que l'amortissement "
"se produit."

msgid ""
"Constant for accessing [member linear_limit/lower_distance]. The minimum "
"difference between the pivot points on their X axis before damping happens."
msgstr ""
"Constante pour accéder à [member linear_limit/lower_distance]. La différence "
"minimale entre les points du pivot sur leur axe X avant que l'amortissement "
"se produit."

msgid ""
"Constant for accessing [member linear_limit/softness]. A factor applied to "
"the movement across the slider axis once the limits get surpassed. The lower, "
"the slower the movement."
msgstr ""
"Constante pour accéder à [member linear_limit/softness]. Un facteur appliqué "
"au moment le long de l'axe de glissement une fois que les limites sont "
"dépassées. Plus basse est la valeur, plus lent est le mouvement."

msgid ""
"Constant for accessing [member linear_limit/restitution]. The amount of "
"restitution once the limits are surpassed. The lower, the more velocity-"
"energy gets lost."
msgstr ""
"Constante pour accéder à [member linear_limit/restitution]. Le montant de la "
"restitution une fois les limites dépassées. Plus elle est basse, plus "
"l'énergie cinétique se perd."

msgid ""
"Constant for accessing [member linear_limit/damping]. The amount of damping "
"once the slider limits are surpassed."
msgstr ""
"Constante pour accéder à [member linear_limit/damping]. Le montant "
"d'amortissement une fois les limites dépassées."

msgid ""
"Constant for accessing [member linear_motion/softness]. A factor applied to "
"the movement across the slider axis as long as the slider is in the limits. "
"The lower, the slower the movement."
msgstr ""
"Constante pour accéder à [member linear_motion/softness]. Un facteur appliqué "
"au mouvement sur l'axe de glissement tant que le glissement est dans les "
"limites. Plus il est bas, plus le mouvement est lent."

msgid ""
"Constant for accessing [member linear_motion/restitution]. The amount of "
"restitution inside the slider limits."
msgstr ""
"Constante pour accéder à [member linear_motion/restitution]. Le montant de la "
"restitution dans les limites du glissement."

msgid ""
"Constant for accessing [member linear_motion/damping]. The amount of damping "
"inside the slider limits."
msgstr ""
"Constante pour accéder à [member linear_motion/damping]. Le montant "
"d'amortissement dans les limites du glissement."

msgid ""
"Constant for accessing [member linear_ortho/softness]. A factor applied to "
"the movement across axes orthogonal to the slider."
msgstr ""
"Constante pour accéder à [member linear_ortho/softness]. Un facteur appliqué "
"au mouvement sur les axes orthogonaux au glissement."

msgid ""
"Constant for accessing [member linear_motion/restitution]. The amount of "
"restitution when movement is across axes orthogonal to the slider."
msgstr ""
"Constante pour accéder à [member linear_ortho/restitution]. Le montant de "
"restitution quand le mouvement est sur les axes orthogonaux au glissement."

msgid ""
"Constant for accessing [member linear_motion/damping]. The amount of damping "
"when movement is across axes orthogonal to the slider."
msgstr ""
"Constante pour accéder à [member linear_ortho/damping]. Le montant "
"d'amortissement quand le mouvement est sur les axes orthogonaux au glissement."

msgid ""
"Constant for accessing [member angular_limit/upper_angle]. The upper limit of "
"rotation in the slider."
msgstr ""
"Constante pour accéder à [member angular_limit/upper_angle]. La limite "
"supérieure de rotation de la liaison."

msgid ""
"Constant for accessing [member angular_limit/lower_angle]. The lower limit of "
"rotation in the slider."
msgstr ""
"Constante pour accéder à [member angular_limit/lower_angle]. La limite "
"inférieure de rotation de la liaison."

msgid ""
"Constant for accessing [member angular_limit/softness]. A factor applied to "
"the all rotation once the limit is surpassed."
msgstr ""
"Constante pour accéder à [member angular_limit/softness]. Un facteur appliqué "
"à toutes les rotations quand la limite est dépassée."

msgid ""
"Constant for accessing [member angular_limit/restitution]. The amount of "
"restitution of the rotation when the limit is surpassed."
msgstr ""
"Constante pour accéder à [member angular_limit/restitution]. Le montant de la "
"restitution de la rotation quand la limite est dépassée."

msgid ""
"Constant for accessing [member angular_limit/damping]. The amount of damping "
"of the rotation when the limit is surpassed."
msgstr ""
"Constante pour accéder à [member angular_limit/damping]. Le montant "
"d'amortissement de la rotation quand la limite est dépassée."

msgid ""
"Constant for accessing [member angular_motion/softness]. A factor applied to "
"the all rotation in the limits."
msgstr ""
"Constante pour accéder à [member angular_limit/softness]. Un facteur appliqué "
"sur toutes les rotations dans les limites."

msgid ""
"Constant for accessing [member angular_motion/restitution]. The amount of "
"restitution of the rotation in the limits."
msgstr ""
"Constante pour accéder à [member angular_motion/restitution]. Le montant de "
"restitution de la rotation dans les limites."

msgid ""
"Constant for accessing [member angular_motion/damping]. The amount of damping "
"of the rotation in the limits."
msgstr ""
"Constante pour accéder à [member angular_motion/damping]. Le montant "
"d'amortissement de la rotation dans les limites."

msgid ""
"Constant for accessing [member angular_ortho/softness]. A factor applied to "
"the all rotation across axes orthogonal to the slider."
msgstr ""
"Constante pour accéder à [member angular_ortho/softness]. Un facteur appliqué "
"sur toutes les rotations sur les axes orthogonaux au glissement."

msgid ""
"Constant for accessing [member angular_ortho/restitution]. The amount of "
"restitution of the rotation across axes orthogonal to the slider."
msgstr ""
"Constante pour accéder à [member angular_ortho/restitution]. Le montant de "
"restitution sur les axes orthogonaux au glissement."

msgid ""
"Constant for accessing [member angular_ortho/damping]. The amount of damping "
"of the rotation across axes orthogonal to the slider."
msgstr ""
"Constante pour accéder à [member angular_ortho/damping]. Le montant "
"d'amortissement de la rotation sur les axes orthogonaux au glissement."

msgid "A deformable 3D physics mesh."
msgstr "Un maillage 3D physique déformable."

msgid ""
"A deformable 3D physics mesh. Used to create elastic or deformable objects "
"such as cloth, rubber, or other flexible materials.\n"
"Additionally, [SoftBody3D] is subject to wind forces defined in [Area3D] (see "
"[member Area3D.wind_source_path], [member Area3D.wind_force_magnitude], and "
"[member Area3D.wind_attenuation_factor]).\n"
"[b]Note:[/b] It's recommended to use Jolt Physics when using [SoftBody3D] "
"instead of the default GodotPhysics3D, as Jolt Physics' soft body "
"implementation is faster and more reliable. You can switch the physics engine "
"using the [member ProjectSettings.physics/3d/physics_engine] project setting."
msgstr ""
"Un maillage physique 3D déformable. Utilisé pour créer des objets élastiques "
"ou déformables tels que du tissu, du caoutchouc ou d'autres matériaux "
"flexibles.\n"
"En outre, [SoftBody3D] est soumis aux forces du vent définies dans [Area3D] "
"(voir [member Area3D.wind_source_path], [member Area3D.wind_force_magnitude], "
"et [member Area3D.wind_attenuation_factor]).\n"
"[b]Note :[/b] Il est recommandé d'utiliser Jolt Physics lors de l'utilisation "
"de [SoftBody3D] au lieu du GodotPhysics3D par défaut, car l'implémentation du "
"corps souple de Jolt Physics est plus rapide et plus fiable. Vous pouvez "
"changer le moteur de physique en utilisant le paramètre de projet [member "
"ProjectSettings.physics/3d/physics_engine]."

msgid "SoftBody"
msgstr "SoftBody"

msgid "Returns the internal [RID] used by the [PhysicsServer3D] for this body."
msgstr ""
"Renvoie le [RID] interne utilisé par le [PhysicsServer3D] pour ce corps."

msgid "Returns local translation of a vertex in the surface array."
msgstr "Renvoie la translation locale d'un sommet du tableau de surface."

msgid "Returns [code]true[/code] if vertex is set to pinned."
msgstr "Renvoie [code]true[/code] si le sommet est défini comme épinglé."

msgid ""
"Sets the pinned state of a surface vertex. When set to [code]true[/code], the "
"optional [param attachment_path] can define a [Node3D] the pinned vertex will "
"be attached to."
msgstr ""
"Définit l'état épinglé d'un sommet de surface. Lorsque défini à [code]true[/"
"code], le chemin d'attachement optionnel [param attachment_path] peut définir "
"un [Node3D] auquel le sommet épinglé sera attaché."

msgid ""
"The physics layers this SoftBody3D [b]is in[/b]. Collision objects can exist "
"in one or more of 32 different layers. See also [member collision_mask].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Les couches physiques où se trouve ce SoftBody3D. Les objets de collision "
"peuvent exister dans une ou plusieurs des 32 couches existantes. Voir aussi "
"[member collision_mask].\n"
"[b]Note :[/b] Un objet A peut détecter un contact avec l'objet B seulement si "
"l'objet B est dans l'une des couches que l'objet A scanne. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Niveaux et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"The physics layers this SoftBody3D [b]scans[/b]. Collision objects can scan "
"one or more of 32 different layers. See also [member collision_layer].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"La couche physique que ce SoftBody3D [b]scanne[/b]. Les objets de collision "
"peuvent scanner une ou plusieurs des 32 couches existantes. Voir aussi "
"[member collision_layer].\n"
"[b]Note :[/b] Un objet A peut détecter un contact avec l'objet B seulement si "
"l'objet B est dans l'une des couches que l'objet A scanne. Voir "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Niveaux et masques de collisions[/url] dans la documentation pour "
"plus d'informations."

msgid ""
"The body's damping coefficient. Higher values will slow down the body more "
"noticeably when forces are applied."
msgstr ""
"Le coefficient d'amortissement du corps. Des valeurs plus élevées ralentiront "
"le corps de façon plus visible lorsque les forces sont appliquées."

msgid ""
"The body's drag coefficient. Higher values increase this body's air "
"resistance.\n"
"[b]Note:[/b] This value is currently unused by Godot's default physics "
"implementation."
msgstr ""
"Le coefficient de traînée du corps. Des valeurs plus élevées augmentent la "
"résistance à l'air de ce corps.\n"
"[b]Note :[/b] Cette valeur est actuellement inutilisée par l'implémentation "
"physique par défaut de Godot."

msgid ""
"Higher values will result in a stiffer body, while lower values will increase "
"the body's ability to bend. The value can be between [code]0.0[/code] and "
"[code]1.0[/code] (inclusive)."
msgstr ""
"Des valeurs plus élevées entraîneront un corps plus rigide, tandis que des "
"valeurs plus faibles augmenteront la capacité du corps à plier. La valeur "
"peut être comprise entre [code]0.0[/code] et [code]1.0[/code] (inclusifs)."

msgid ""
"[NodePath] to a [CollisionObject3D] this SoftBody3D should avoid clipping."
msgstr ""
"[NodePath] vers un [CollisionObject3D] avec lequel ce SoftBody3D devrait "
"éviter de chevaucher (\"clipping\")."

msgid ""
"The pressure coefficient of this soft body. Simulate pressure build-up from "
"inside this body. Higher values increase the strength of this effect."
msgstr ""
"Le coefficient de pression de ce corps souple. Simule l'accumulation de "
"pression de l'intérieur de ce corps. Des valeurs plus élevées augmentent la "
"force de cet effet."

msgid "If [code]true[/code], the [SoftBody3D] will respond to [RayCast3D]s."
msgstr "Si [code]true[/code], le [SoftBody3D] répondra aux [RayCast3D]s."

msgid ""
"Scales the rest lengths of [SoftBody3D]'s edge constraints. Positive values "
"shrink the mesh, while negative values expand it. For example, a value of "
"[code]0.1[/code] shortens the edges of the mesh by 10%, while [code]-0.1[/"
"code] expands the edges by 10%.\n"
"[b]Note:[/b] [member shrinking_factor] is best used on surface meshes with "
"pinned points."
msgstr ""
"Redimensionne les longueurs de repos des contraintes d'arête du [SoftBody3D]. "
"Des valeurs positives réduisent le maillage, tandis que les valeurs négatives "
"l'élargissent. Par exemple, une valeur de [code]0.1[/code] raccourcit les "
"arêtes du maillage de 10%, tandis que [code]-0.1[/code] étend les arêtes de "
"10%.\n"
"[b]Note :[/b] Le mieux est d'utiliser [member shrinking_factor] sur des "
"maillages de surface avec des points épinglés."

msgid ""
"Increasing this value will improve the resulting simulation, but can affect "
"performance. Use with care."
msgstr ""
"Augmenter cette valeur améliorera la simulation résultante, mais peut "
"affecter les performances. Utilisez avec parcimonie."

msgid "The SoftBody3D's mass."
msgstr "La masse du SoftBody3D."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], remove from the physics simulation to stop all "
"physics interactions with this [SoftBody3D].\n"
"Automatically re-added to the physics simulation when the [Node] is processed "
"again."
msgstr ""
"Quand [member Node.process_mode] est défini à [constant "
"Node.PROCESS_MODE_DISABLED], le retirer de la simulation physique pour "
"arrêter toutes les interactions physiques avec ce [SoftBody3D].\n"
"Ré-ajouté automatiquement à la simulation physique lorsque le [Node] est de "
"nouveau traité."

msgid "Class representing a spherical [PrimitiveMesh]."
msgstr "Classe représentant un [PrimitiveMesh] sphérique."

msgid "Full height of the sphere."
msgstr "Pleine hauteur de la sphère."

msgid ""
"If [code]true[/code], a hemisphere is created rather than a full sphere.\n"
"[b]Note:[/b] To get a regular hemisphere, the height and radius of the sphere "
"must be equal."
msgstr ""
"Si [code]true[/code], un hémisphère (une demi-sphère) est créé plutôt qu'une "
"sphère entière.\n"
"[b]Note :[/b] Pour obtenir un hémisphère uniforme, la hauteur et le rayon "
"doivent être identiques."

msgid "Number of radial segments on the sphere."
msgstr "Le nombre de latitudes de la sphère."

msgid "Radius of sphere."
msgstr "Le rayon de la sphère."

msgid "Number of segments along the height of the sphere."
msgstr "Le nombre de longitudes de la sphère."

msgid "Spherical shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Forme sphérique à utiliser avec l'occlusion culling dans [OccluderInstance3D]."

msgid ""
"[SphereOccluder3D] stores a sphere shape that can be used by the engine's "
"occlusion culling system.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[SphereOccluder3D] stocke une forme de sphère qui peut être utilisée par le "
"système d'occlusion culling du moteur.\n"
"Voir la documentation d'[OccluderInstance3D] pour les instructions sur la "
"mise en place de l'occlusion culling."

msgid "The sphere's radius in 3D units."
msgstr "Le rayon de la sphère en unités 3D."

msgid "A 3D sphere shape used for physics collision."
msgstr "Une forme de sphère 3D utilisée pour les collisions physiques."

msgid ""
"A 3D sphere shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"[b]Performance:[/b] [SphereShape3D] is fast to check collisions against. It "
"is faster than [BoxShape3D], [CapsuleShape3D], and [CylinderShape3D]."
msgstr ""
"Une forme de sphère 3D, destinée à être utilisée pour la physique. "
"Habituellement utilisé pour fournir une forme à un [CollisionShape3D].\n"
"[b]Performance :[/b] [SphereShape3D] est rapide pour vérifier les collisions. "
"Elle est plus rapide que [BoxShape3D], [CapsuleShape3D], et [CylinderShape3D]."

msgid "The sphere's radius. The shape's diameter is double the radius."
msgstr "Le rayon de la sphère. Le diamètre de la sphère est le double du rayon."

msgid "An input field for numbers."
msgstr "Un champ de saisie pour des nombres."

msgid ""
"Returns the [LineEdit] instance from this [SpinBox]. You can use it to access "
"properties and methods of [LineEdit].\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Renvoie l'instance [LineEdit] utilisé pour ce [SpinBox]. Vous pouvez "
"l'utiliser pour accéder au propriétés et méthodes de ce [LineEdit].\n"
"[b]Avertissement :[/b] Cette instance est nécessaire en interne, la retirer "
"ou la libérer peut provoquer un crash. Si vous voulez la masquer elle ou ses "
"enfants, préférez leur propriété [member CanvasItem.visible]."

msgid "Changes the alignment of the underlying [LineEdit]."
msgstr "Change l'alignement du [LineEdit] sous-jacent."

msgid ""
"If [code]true[/code], the [SpinBox] will be editable. Otherwise, it will be "
"read only."
msgstr ""
"Si [code]true[/code], la [SpinBox] sera modifiable. Sinon, elle sera en "
"lecture seule."

msgid "Vertical separation between the up and down buttons."
msgstr "Séparation verticale entre les boutons haut et bas."

msgid "Background style of the up button."
msgstr "Style d'arrière-plan du bouton haut."

msgid ""
"Clamps the [member split_offset] value to not go outside the currently "
"possible minimal and maximum values."
msgstr ""
"Borne la valeur [member split_offset] pour rester dans l'intervalle défini "
"entre les valeurs minimale et maximale actuellement possibles."

msgid ""
"The initial offset of the splitting between the two [Control]s, with [code]0[/"
"code] being at the end of the first [Control]."
msgstr ""
"Le décalage initial de la séparation entre les deux [Control], avec [code]0[/"
"code] étant la fin du premier [Control]."

msgid "Emitted when the user ends dragging."
msgstr "Émis lorsque l'utilisateur arrête le glissement."

msgid "Emitted when the user starts dragging."
msgstr "Émis lorsque l'utilisateur commence un glissement."

msgid "Emitted when the dragger is dragged by user."
msgstr "Émis lorsque le dragueur est glissé par l'utilisateur."

msgid "A spotlight, such as a reflector spotlight or a lantern."
msgstr "Un projecteur, comme un projecteur de spectacle ou un lanterne."

msgid ""
"A Spotlight is a type of [Light3D] node that emits lights in a specific "
"direction, in the shape of a cone. The light is attenuated through the "
"distance. This attenuation can be configured by changing the energy, radius "
"and attenuation parameters of [Light3D].\n"
"Light is emitted in the -Z direction of the node's global basis. For an "
"unrotated light, this means that the light is emitted forwards, illuminating "
"the front side of a 3D model (see [constant Vector3.FORWARD] and [constant "
"Vector3.MODEL_FRONT]).\n"
"[b]Note:[/b] When using the Mobile rendering method, only 8 spot lights can "
"be displayed on each mesh resource. Attempting to display more than 8 spot "
"lights on a single mesh resource will result in spot lights flickering in and "
"out as the camera moves. When using the Compatibility rendering method, only "
"8 spot lights can be displayed on each mesh resource by default, but this can "
"be increased by adjusting [member ProjectSettings.rendering/limits/opengl/"
"max_lights_per_object].\n"
"[b]Note:[/b] When using the Mobile or Compatibility rendering methods, spot "
"lights will only correctly affect meshes whose visibility AABB intersects "
"with the light's AABB. If using a shader to deform the mesh in a way that "
"makes it go outside its AABB, [member GeometryInstance3D.extra_cull_margin] "
"must be increased on the mesh. Otherwise, the light may not be visible on the "
"mesh."
msgstr ""
"Un projecteur est un type de nœud [Light3D] qui émet de la lumière dans une "
"direction spécifique, en une forme de cône. La lumière est atténuée avec la "
"distance. Cette atténuation peut être configurée en changeant les paramètres "
"d'énergie, de rayon et d'atténuation de la [Light3D].\n"
"La lumière est émise dans la direction -Z de la base globale du nœud. Pour "
"une lumière non-pivotée, cela signifie que la lumière est émise vers l'avant, "
"illuminant la face avant d'un modèle 3D (voir [constant Vector3.FORWARD] et "
"[constant Vector3.MODEL_FRONT]).\n"
"[b]Note :[/b] Lors de l'utilisation de la méthode de rendu Mobile, seulement "
"8 projecteurs peuvent être affichés sur chaque ressource de maillage. Essayer "
"d'afficher plus de 8 projecteurs sur une seule ressource de maillage "
"entraînera des projecteurs qui clignoteront quand la caméra se déplace. Lors "
"de l'utilisation de la méthode de rendu Compatibilité, seulement 8 "
"projecteurs peuvent être affichés sur chaque ressource de maillage par "
"défaut, mais cela peut être augmenté en ajustant [member "
"ProjectSettings.rendering/limits/opengl/max_lights_per_object].\n"
"[b]Note:[/b] Lors de l'utilisation des méthodes de rendu Mobile ou "
"Compatibilité, les projecteurs n'affecteront correctement que les maillage "
"dont l'AABB de visibilité intersecte avec l'AABB de la lumière. Si "
"l'utilisation d'un shader pour déformer le maillage le fait sortir de sa "
"AABB, [member GeometryInstance3D.extra_cull_margin] doit être augmenté sur le "
"maillage. Sinon, la lumière peut ne pas être visible sur le maillage."

msgid ""
"The spotlight's angle in degrees. This is the angular radius, meaning the "
"angle from the -Z axis, the cone's center, to the edge of the cone. The "
"default angular radius of 45 degrees corresponds to a cone with an angular "
"diameter of 90 degrees.\n"
"[b]Note:[/b] [member spot_angle] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale)."
msgstr ""
"L'angle du projecteur en degrés. C'est le rayon angulaire, ce qui signifie "
"l'angle de l'axe -Z, le centre du cône, vers le bord du cône. Le rayon "
"angulaire par défaut de 45 degrés correspond à un cône avec un diamètre "
"angulaire de 90 degrés.\n"
"[b]Note :[/b] [member spot_angle] n'est pas affecté par [member Node3D.scale] "
"(l'échelle de la lumière ou l'échelle de ses parents)."

msgid ""
"The spotlight's [i]angular[/i] attenuation curve. See also [member "
"spot_attenuation]."
msgstr ""
"La courbe d’atténuation [i]angulaire[/i] du projecteur. Voir aussi [member "
"spot_attenuation]."

msgid ""
"Controls the distance attenuation function for spotlights.\n"
"A value of [code]0.0[/code] will maintain a constant brightness through most "
"of the range, but smoothly attenuate the light at the edge of the range. Use "
"a value of [code]2.0[/code] for physically accurate lights as it results in "
"the proper inverse square attenutation.\n"
"[b]Note:[/b] Setting attenuation to [code]2.0[/code] or higher may result in "
"distant objects receiving minimal light, even within range. For example, with "
"a range of [code]4096[/code], an object at [code]100[/code] units is "
"attenuated by a factor of [code]0.0001[/code]. With a default brightness of "
"[code]1[/code], the light would not be visible at that distance.\n"
"[b]Note:[/b] Using negative or values higher than [code]10.0[/code] may lead "
"to unexpected results."
msgstr ""
"Contrôle la fonction d'atténuation de distance pour les projecteurs.\n"
"Une valeur de [code]0.0[/code] maintiendra une luminosité constante à travers "
"la plupart de la plage, mais atténue doucement la lumière au bord de "
"l'intervalle. Utilisez une valeur de [code]2.0[/code] pour des lumières "
"physiquement précises, car cela entraîne une atténuation carrée inverse "
"appropriée.\n"
"[b]Note :[/b] Définir l'atténuation à [code]2.0[/code] ou plus peut résulter "
"en des objets distants recevant une lumière minimale, même dans l'intervalle. "
"Par exemple, avec un intervalle de [code]4096[/code], un objet à [code]100[/"
"code] unités est atténué par un facteur de [code]0.0001[/code]. Avec une "
"luminosité par défaut de [code]1[/code], la lumière ne serait pas visible à "
"cette distance.\n"
"[b]Note :[/b] L'utilisation de valeurs négatives ou supérieures à [code]10.0[/"
"code] peut entraîner des résultats inattendus."

msgid ""
"The maximal range that can be reached by the spotlight. Note that the "
"effectively lit area may appear to be smaller depending on the [member "
"spot_attenuation] in use. No matter the [member spot_attenuation] in use, the "
"light will never reach anything outside this range.\n"
"[b]Note:[/b] [member spot_range] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale)."
msgstr ""
"La portée maximale qui peut être atteinte par le projecteur. Notez que la "
"zone effectivement éclairée peut sembler plus petite en fonction du [member "
"spot_attenuation] utilisé. Peu importe le [member spot_attenuation] utilisé, "
"la lumière n'atteindra jamais rien à l'extérieur de cette plage.\n"
"[b]Note :[/b] [member spot_range] n'est pas affecté par [member Node3D.scale] "
"(l'échelle de la lumière ou l'échelle de ses parents)."

msgid ""
"The layers against which the collision check shall be done. See "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Collision layers and masks[/url] in the documentation for more "
"information."
msgstr ""
"Les calques selon lesquels le contrôle des collisions doit être effectué. "
"Voir [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-"
"layers-and-masks]Calques et masques de collision[/url] dans la documentation "
"pour plus d'informations."

msgid ""
"The [Shape3D] to use for the SpringArm3D.\n"
"When the shape is set, the SpringArm3D will cast the [Shape3D] on its z axis "
"instead of performing a ray cast."
msgstr ""
"La [Shape3D] à utiliser pour le SpringArm3D.\n"
"Lorsque la forme est définie, le SpringArm3D projettera la [Shape3D] sur son "
"axe Z au lieu d'effectuer un raycast."

msgid ""
"A base class of the collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Une classe de base de la collision qui interagit avec [SpringBoneSimulator3D]."

msgid ""
"A collision can be a child of [SpringBoneSimulator3D]. If it is not a child "
"of [SpringBoneSimulator3D], it has no effect.\n"
"The colliding and sliding are done in the [SpringBoneSimulator3D]'s "
"modification process in order of its collision list which is set by [method "
"SpringBoneSimulator3D.set_collision_path]. If [method "
"SpringBoneSimulator3D.are_all_child_collisions_enabled] is [code]true[/code], "
"the order matches [SceneTree].\n"
"If [member bone] is set, it synchronizes with the bone pose of the ancestor "
"[Skeleton3D], which is done in before the [SpringBoneSimulator3D]'s "
"modification process as the pre-process.\n"
"[b]Warning:[/b] A scaled [SpringBoneCollision3D] will likely not behave as "
"expected. Make sure that the parent [Skeleton3D] and its bones are not scaled."
msgstr ""
"Une collision peut être un enfant de [SpringBoneSimulator3D]. Si ce n'est pas "
"un enfant de [SpringBoneSimulator3D], elle n'a aucun effet.\n"
"La collision et le glissement sont effectués dans le processus de "
"modification du [SpringBoneSimulator3D] dans l'ordre de sa liste de collision "
"qui est définie par [method SpringBoneSimulator3D.set_collision_path]. Si "
"[method SpringBoneSimulator3D.are_all_child_collisions_enabled] vaut "
"[code]true[/code], l'ordre correspond à celui du [SceneTree].\n"
"Si [member bone] est défini, il se synchronise avec la pose d'os du "
"[Skeleton3D] ancêtre, ce qui est fait avant le processus de modification du "
"[SpringBoneSimulator3D] comme un pré-traitement.\n"
"[b]Attention :[/b] Une [SpringBoneCollision3D] redimensionnée ne se "
"comportera probablement pas comme prévu. Assurez-vous que le [Skeleton3D] "
"parent et ses os ont une échelle de 1."

msgid ""
"Get parent [Skeleton3D] node of the parent [SpringBoneSimulator3D] if found."
msgstr ""
"Obtient le nœud [Skeleton3D] parent du [SpringBoneSimulator3D] parent si "
"trouvé."

msgid ""
"The offset of the position from [Skeleton3D]'s [member bone] pose position."
msgstr ""
"Le décalage de la position avec la position de pose de l'os [member bone] du "
"[Skeleton3D]."

msgid ""
"The offset of the rotation from [Skeleton3D]'s [member bone] pose rotation."
msgstr ""
"Le décalage de la rotation avec la rotation de pose de l'os [member bone] du "
"[Skeleton3D]."

msgid "A capsule shape collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Une collision en forme de capsule qui interagit avec [SpringBoneSimulator3D]."

msgid ""
"If [code]true[/code], the collision acts to trap the joint within the "
"collision."
msgstr ""
"Si [code]true[/code], la collision agit pour piéger la liaison dans la "
"collision."

msgid "An infinite plane collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Une collision en forme de plan infini qui interagit avec "
"[SpringBoneSimulator3D]."

msgid ""
"An infinite plane collision that interacts with [SpringBoneSimulator3D]. It "
"is an infinite size XZ plane, and the +Y direction is treated as normal."
msgstr ""
"Une collision en forme de plan infini qui interagit avec "
"[SpringBoneSimulator3D]. Il s'agit d'un plan XZ de taille infinie, et la "
"direction +Y est traitée comme la normale."

msgid "A sphere shape collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Une collision en forme de sphère qui interagit avec [SpringBoneSimulator3D]."

msgid "The sphere's radius."
msgstr "Le rayon de la sphère."

msgid "A [SkeletonModifier3D] to apply inertial wavering to bone chains."
msgstr ""
"Un [SkeletonModifier3D] pour appliquer des ondes inertielles à des chaînes "
"d'os."

msgid ""
"Clears all collisions from the collision list at [param index] in the "
"settings when [method are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Efface toutes les collisions de la liste de collisions à l'index [param "
"index] dans les paramètres lorsque [method are_all_child_collisions_enabled] "
"vaut [code]false[/code]."

msgid ""
"Clears all exclude collisions from the collision list at [param index] in the "
"settings when [method are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Efface toutes les collisions exclues de la liste de collisions à l'index "
"[param index] dans les paramètres lorsque [method "
"are_all_child_collisions_enabled] vaut [code]false[/code]."

msgid "Clears all settings."
msgstr "Efface tous les paramètres."

msgid "Returns the center bone index of the bone chain."
msgstr "Renvoie l’index de l’os central de la chaîne d’os."

msgid "Returns the center bone name of the bone chain."
msgstr "Renvoie le nom de l'os central de la chaîne d'os."

msgid "Returns what the center originates from in the bone chain."
msgstr "Renvoie d'où provient l'origine du centre dans la chaîne d'os."

msgid "Returns the center node path of the bone chain."
msgstr "Renvoie le chemin du nœud central de la chaîne d'os."

msgid ""
"Returns the collision count of the bone chain's collision list when [method "
"are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Renvoie le nombre de collisions de la liste de collisions de la chaîne d'os "
"lorsque [method are_all_child_collisions_enabled] vaut [code]false[/code]."

msgid ""
"Returns the node path of the [SpringBoneCollision3D] at [param collision] in "
"the bone chain's collision list when [method "
"are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Renvoie le chemin de nœud du [SpringBoneCollision3D] de la [param collision] "
"dans la liste de collisions de la chaîne d'os lorsque [method "
"are_all_child_collisions_enabled] vaut [code]false[/code]."

msgid "Returns the drag force damping curve of the bone chain."
msgstr ""
"Renvoie la courbe d'amortissement de la force de traînée de la chaîne d'os."

msgid "Returns the end bone index of the bone chain."
msgstr "Renvoie l'index de l'os de fin de la chaîne d'os."

msgid ""
"Returns the end bone's tail direction of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Renvoie la direction de la queue de l'os de fin de la chaîne d'os lorsque "
"[method is_end_bone_extended] vaut [code]true[/code]."

msgid ""
"Returns the end bone's tail length of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Renvoie la longueur de la queue de l'os de fin de la chaîne d'os lorsque "
"[method is_end_bone_extended] vaut [code]true[/code]."

msgid "Returns the end bone name of the bone chain."
msgstr "Renvoie le nom de l'os de fin de la chaîne d'os."

msgid ""
"Returns the exclude collision count of the bone chain's exclude collision "
"list when [method are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Renvoie le nombre de collisions exclues de la liste de collisions de la "
"chaîne d'os lorsque [method are_all_child_collisions_enabled] vaut "
"[code]true[/code]."

msgid ""
"Returns the node path of the [SpringBoneCollision3D] at [param collision] in "
"the bone chain's exclude collision list when [method "
"are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Renvoie le chemin de nœud du [SpringBoneCollision3D] de la [param collision] "
"dans la liste de collisions exclues de la chaîne d'os lorsque [method "
"are_all_child_collisions_enabled] vaut [code]true[/code]."

msgid "Returns the gravity amount of the bone chain."
msgstr "Renvoie la quantité de gravité de la chaîne d'os."

msgid "Returns the gravity amount damping curve of the bone chain."
msgstr ""
"Renvoie la courbe d'amortissement de la quantité de gravité de la chaîne d'os."

msgid "Returns the gravity direction of the bone chain."
msgstr "Renvoie la direction de la gravité de la chaîne d'os."

msgid "Returns the bone index at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie l'index de l'os à la liaison [param joint] dans la liste de liaisons "
"de la chaîne d'os."

msgid "Returns the bone name at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie le nom de l'os à la liaison [param joint] dans la liste de liaisons "
"de la chaîne d'os."

msgid "Returns the joint count of the bone chain's joint list."
msgstr ""
"Renvoie la quantité de liaisons dans la liste des liaisons de la chaîne d'os."

msgid "Returns the drag force at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie la force de traînée à la liaison [param joint] dans la liste des "
"liaisons de la chaîne d'os."

msgid ""
"Returns the gravity amount at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie la quantité de gravité à la liaison [param joint] dans la liste des "
"liaisons de la chaîne d'os."

msgid ""
"Returns the gravity direction at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie la direction de la gravité à la liaison [param joint] dans la liste "
"des liaisons de la chaîne d'os."

msgid "Returns the radius at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie le rayon à la liaison [param joint] dans la liste des liaisons de la "
"chaîne d'os."

msgid ""
"Returns the rotation axis at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie l'axe de rotation à la liaison [param joint] dans la liste des "
"liaisons de la chaîne d'os."

msgid ""
"Returns the rotation axis vector for the specified joint in the bone chain. "
"This vector represents the axis around which the joint can rotate. It is "
"determined based on the rotation axis set for the joint.\n"
"If [method get_joint_rotation_axis] is [constant ROTATION_AXIS_ALL], this "
"method returns [code]Vector3(0, 0, 0)[/code]."
msgstr ""
"Renvoie le vecteur de l'axe de rotation à la liaison [param joint] dans la "
"liste des liaisons de la chaîne d'os. Ce vecteur représente l'axe autour "
"duquel la liaison peut tourner. Il est déterminé en fonction de l'axe de "
"rotation défini pour la liaison.\n"
"Si [method get_joint_rotation_axis] vaut [constant ROTATION_AXIS_ALL], cette "
"méthode renvoie [code]Vector3(0, 0, 0)[/code]."

msgid ""
"Returns the stiffness force at [param joint] in the bone chain's joint list."
msgstr ""
"Renvoie la force de rigidité à la liaison [param joint] dans la liste des "
"liaisons de la chaîne d'os."

msgid "Returns the joint radius of the bone chain."
msgstr "Renvoie le rayon de liaison de la chaîne d'os."

msgid "Returns the joint radius damping curve of the bone chain."
msgstr ""
"Renvoie la courbe d'amortissement du rayon de liaison de la chaîne d'os."

msgid "Returns the root bone index of the bone chain."
msgstr "Renvoie l'index de l'os racine de la chaîne d'os."

msgid "Returns the root bone name of the bone chain."
msgstr "Renvoie le nom de l'os racine de la chaîne d'os."

msgid "Returns the rotation axis of the bone chain."
msgstr "Renvoie l'axe de rotation de la chaîne d'os."

msgid ""
"Returns the rotation axis vector of the bone chain. This vector represents "
"the axis around which the bone chain can rotate. It is determined based on "
"the rotation axis set for the bone chain.\n"
"If [method get_rotation_axis] is [constant ROTATION_AXIS_ALL], this method "
"returns [code]Vector3(0, 0, 0)[/code]."
msgstr ""
"Renvoie le vecteur de l'axe de rotation de la chaîne d'os. Ce vecteur "
"représente l'axe autour duquel la chaîne d'os peut tourner. Il est déterminé "
"en fonction de l'axe de rotation défini pour la chaîne d'os.\n"
"Si [method get_rotation_axis] vaut [constant ROTATION_AXIS_ALL], cette "
"méthode renvoie [code]Vector3(0, 0, 0)[/code]."

msgid "Returns the stiffness force of the bone chain."
msgstr "Renvoie la force de rigidité de la chaîne d'os."

msgid "Returns the stiffness force damping curve of the bone chain."
msgstr ""
"Renvoie la courbe d'amortissement de la force de rigidité de la chaîne d'os."

msgid ""
"Returns [code]true[/code] if the config can be edited individually for each "
"joint."
msgstr ""
"Renvoie [code]true[/code] si la configuration peut être modifiée "
"individuellement pour chaque liaison."

msgid "Returns [code]true[/code] if the end bone is extended to have the tail."
msgstr ""
"Renvoie [code]true[/code] si l'os final est prolongé pour avoir la queue."

msgid ""
"Resets a simulating state with respect to the current bone pose.\n"
"It is useful to prevent the simulation result getting violent. For example, "
"calling this immediately after a call to [method AnimationPlayer.play] "
"without a fading, or within the previous [signal "
"SkeletonModifier3D.modification_processed] signal if it's condition changes "
"significantly."
msgstr ""
"Réinitialise un état de simulation par rapport à la pose d'os actuelle.\n"
"Ceci est utile pour empêcher le résultat de la simulation de devenir violent. "
"Par exemple, appelez ceci immédiatement après un appel à [method "
"AnimationPlayer.play] sans fondu, ou dans le signal [signal "
"SkeletonModifier3D.modification_processed] précédent si sa condition change "
"considérablement."

msgid "Sets the center bone index of the bone chain."
msgstr "Définit l'index de l'os central de la chaîne d'os."

msgid "Sets the center bone name of the bone chain."
msgstr "Définit le nom de l'os central de la chaîne d'os."

msgid ""
"Sets what the center originates from in the bone chain.\n"
"Bone movement is calculated based on the difference in relative distance "
"between center and bone in the previous and next frames.\n"
"For example, if the parent [Skeleton3D] is used as the center, the bones are "
"considered to have not moved if the [Skeleton3D] moves in the world.\n"
"In this case, only a change in the bone pose is considered to be a bone "
"movement."
msgstr ""
"Définit d'où provient l'origine du centre dans la chaîne d'os.\n"
"Le mouvement des os est calculé en fonction de la différence de distance "
"relative entre le centre et l'os dans les trames précédentes et suivantes.\n"
"Par exemple, si le [Skeleton3D] parent est utilisé comme centre, les os sont "
"considérés comme n'ayant pas bougé si le [Skeleton3D] se déplace dans le "
"monde.\n"
"Dans ce cas, seule une modification de la pose d'os est considérée comme un "
"mouvement d'os."

msgid "Sets the center node path of the bone chain."
msgstr "Définit le chemin du nœud central de la chaîne d'os."

msgid ""
"Sets the number of collisions in the collision list at [param index] in the "
"settings when [method are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Définit le nombre de collisions dans la liste de collisions à l'index [param "
"index] dans les paramètres lorsque [method are_all_child_collisions_enabled] "
"vaut [code]false[/code]."

msgid ""
"Sets the node path of the [SpringBoneCollision3D] at [param collision] in the "
"bone chain's collision list when [method are_all_child_collisions_enabled] is "
"[code]false[/code]."
msgstr ""
"Définit le chemin de nœud du [SpringBoneCollision3D] à la [param collision] "
"dans la liste des collisions de la chaîne d'os lorsque [method "
"are_all_child_collisions_enabled] vaut [code]false[/code]."

msgid ""
"Sets the drag force of the bone chain. The greater the value, the more "
"suppressed the wiggling.\n"
"The value is scaled by [method set_drag_damping_curve] and cached in each "
"joint setting in the joint list."
msgstr ""
"Définit la force de traînée de la chaîne d'os. Plus la valeur est grande, "
"plus le gigotement est réduit.\n"
"La valeur est redimensionnée par [method set_drag_damping_curve] et est mise "
"en cache dans chaque réglage de liaison dans la liste des liaisons."

msgid "Sets the drag force damping curve of the bone chain."
msgstr ""
"Définit la courbe d'amortissement de la force de traînée de la chaîne d'os."

msgid ""
"If [param enabled] is [code]true[/code], all child [SpringBoneCollision3D]s "
"are colliding and [method set_exclude_collision_path] is enabled as an "
"exclusion list at [param index] in the settings.\n"
"If [param enabled] is [code]false[/code], you need to manually register all "
"valid collisions with [method set_collision_path]."
msgstr ""
"Si [param enabled] vaut [code]true[/code], tous les [SpringBoneCollision3D] "
"enfants sont en collision et [method set_exclude_collision_path] est activé "
"comme une liste d'exclusion à l'index [param index] dans les paramètres.\n"
"Si [param enabled] vaut [code]false[/code], vous devez enregistrer "
"manuellement toutes les collisions valides avec [method set_collision_path]."

msgid "Sets the end bone index of the bone chain."
msgstr "Définit l'index de l'os de fin de la chaîne d'os."

msgid ""
"Sets the end bone tail direction of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Définit la direction de la queue de l'os de fin de la chaîne d'os lorsque "
"[method is_end_bone_extended] vaut [code]true[/code]."

msgid ""
"Sets the end bone tail length of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Définit la longueur de la queue de l'os de fin de la chaîne d'os lorsque "
"[method is_end_bone_extended] vaut [code]true[/code]."

msgid ""
"Sets the end bone name of the bone chain.\n"
"[b]Note:[/b] End bone must be the root bone or a child of the root bone. If "
"they are the same, the tail must be extended by [method set_extend_end_bone] "
"to jiggle the bone."
msgstr ""
"Définit le nom de la queue de l'os de fin de la chaîne d'os.\n"
"[b]Note :[/b] L'os de fin doit être l'os racine ou un enfant de l'os racine. "
"S'ils sont les mêmes, la queue doit être étendue par [method "
"set_extend_end_bone] pour faire gigoter l'os."

msgid ""
"Sets the number of exclude collisions in the exclude collision list at [param "
"index] in the settings when [method are_all_child_collisions_enabled] is "
"[code]true[/code]."
msgstr ""
"Définit le nombre de collisions exclues dans la liste de collisions à l'index "
"[param index] dans les paramètres lorsque [method "
"are_all_child_collisions_enabled] vaut [code]true[/code]."

msgid ""
"Sets the node path of the [SpringBoneCollision3D] at [param collision] in the "
"bone chain's exclude collision list when [method "
"are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Définit le chemin de nœud du [SpringBoneCollision3D] à la [param collision] "
"dans la liste des collisions exclues de la chaîne d'os lorsque [method "
"are_all_child_collisions_enabled] vaut [code]true[/code]."

msgid ""
"If [param enabled] is [code]true[/code], the end bone is extended to have the "
"tail.\n"
"The extended tail config is allocated to the last element in the joint list.\n"
"In other words, if you set [param enabled] is [code]false[/code], the config "
"of last element in the joint list has no effect in the simulated result."
msgstr ""
"Si [param enabled] vaut [code]true[/code], l'os de fin est prolongé pour "
"avoir la queue.\n"
"La configuration de la queue prolongée est attribuée au dernier élément de la "
"liste des liaisons.\n"
"En d'autres termes, si vous définissez [param enabled] à [code]false[/code], "
"la configuration du dernier élément de la liste de liaisons n'a aucun effet "
"sur le résultat simulé."

msgid ""
"Sets the gravity amount of the bone chain. This value is not an acceleration, "
"but a constant velocity of movement in [method set_gravity_direction].\n"
"If [param gravity] is not [code]0[/code], the modified pose will not return "
"to the original pose since it is always affected by gravity.\n"
"The value is scaled by [method set_gravity_damping_curve] and cached in each "
"joint setting in the joint list."
msgstr ""
"Définit la quantité de gravité de la chaîne d'os. Cette valeur n'est pas une "
"accélération, mais une vitesse constante de mouvement dans [method "
"set_gravity_direction].\n"
"Si [param gravity] n'est pas [code]0[/code], la pose modifiée ne reviendra "
"pas à la pose d'origine car elle est toujours affectée par la gravité.\n"
"La valeur est redimensionnée par [method set_gravity_damping_curve] et est "
"mise en cache dans chaque réglage de liaison dans la liste des liaisons."

msgid "Sets the gravity amount damping curve of the bone chain."
msgstr ""
"Définit la courbe d'amortissement de la quantité de gravité de la chaîne d'os."

msgid ""
"Sets the gravity direction of the bone chain. This value is internally "
"normalized and then multiplied by [method set_gravity].\n"
"The value is cached in each joint setting in the joint list."
msgstr ""
"Définit la direction de gravité de la chaîne d'os. Cette valeur est "
"normalisée en interne et ensuite multipliée par [method set_gravity].\n"
"La valeur est mise en cache dans chaque paramètre de liaison dans la liste "
"des liaisons."

msgid ""
"If [param enabled] is [code]true[/code], the config can be edited "
"individually for each joint."
msgstr ""
"Si [param enabled] vaut [code]true[/code], la configuration peut être "
"modifiée individuellement pour chaque liaison."

msgid ""
"Sets the drag force at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Définit la force de traînée à la liaison [param joint] dans la liste de "
"liaisons de la chaîne d'os lorsque [method is_config_individual] vaut "
"[code]true[/code]."

msgid ""
"Sets the gravity amount at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Définit la quantité de gravité de la liaison [param joint] dans la liste des "
"liaisons de la chaîne d'os lorsque [method is_config_individual] vaut "
"[code]true[/code]."

msgid ""
"Sets the gravity direction at [param joint] in the bone chain's joint list "
"when [method is_config_individual] is [code]true[/code]."
msgstr ""
"Définit la direction de la gravité de la liaison [param joint] dans la liste "
"des liaisons de la chaîne d'os lorsque [method is_config_individual] vaut "
"[code]true[/code]."

msgid ""
"Sets the joint radius at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Définit le rayon de liaison à la liaison [param joint] dans la liste de "
"liaisons de la chaîne d'os lorsque [method is_config_individual] vaut "
"[code]true[/code]."

msgid ""
"Sets the rotation axis at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code].\n"
"The axes are based on the [method Skeleton3D.get_bone_rest]'s space, if "
"[param axis] is [constant ROTATION_AXIS_CUSTOM], you can specify any axis.\n"
"[b]Note:[/b] The rotation axis and the forward vector shouldn't be colinear "
"to avoid unintended rotation since [SpringBoneSimulator3D] does not factor in "
"twisting forces."
msgstr ""
"Définit l'axe de rotation de la liaison [param joint] dans la liste des "
"liaisons de la chaîne d'os lorsque [method is_config_individual] vaut "
"[code]true[/code].\n"
"Les axes sont basés sur l'espace de [method Skeleton3D.get_bone_rest], si "
"[param axis] vaut [constant ROTATION_AXIS_CUSTOM], vous pouvez spécifier "
"n'importe quel axe.\n"
"[b]Note :[/b] L'axe de rotation et le vecteur avant ne devraient pas être "
"colinéaires pour éviter une rotation intempestive car [SpringBoneSimulator3D] "
"ne prend pas en compte les forces de torsion."

msgid ""
"Sets the rotation axis vector for the specified joint in the bone chain.\n"
"This vector is normalized by an internal process and represents the axis "
"around which the bone chain can rotate.\n"
"If the vector length is [code]0[/code], it is considered synonymous with "
"[constant ROTATION_AXIS_ALL]."
msgstr ""
"Définit le vecteur d'axe de rotation pour la liaison spécifiée dans la chaîne "
"d'os.\n"
"Ce vecteur est normalisé par un processus interne et représente l'axe autour "
"duquel la chaîne d'os peut tourner.\n"
"Si la longueur du vecteur est de [code]0[/code], il est considéré comme "
"synonyme de [constant ROTATION_AXIS_ALL]."

msgid ""
"Sets the stiffness force at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Définit la force de rigidité de la liaison [param joint] dans la liste des "
"liaisons de la chaîne d'os lorsque [method is_config_individual] vaut "
"[code]true[/code]."

msgid ""
"Sets the joint radius of the bone chain. It is used to move and slide with "
"the [SpringBoneCollision3D] in the collision list.\n"
"The value is scaled by [method set_radius_damping_curve] and cached in each "
"joint setting in the joint list."
msgstr ""
"Définit le rayon de liaison de la chaîne d'os. Il est utilisé pour déplacer "
"et glisser avec le [SpringBoneCollision3D] dans la liste de collisions.\n"
"La valeur est redimensionnée par [method set_radius_damping_curve] et est "
"mise en cache dans chaque réglage de liaison dans la liste des liaisons."

msgid "Sets the joint radius damping curve of the bone chain."
msgstr ""
"Définit la courbe d'amortissement du rayon de liaison de la chaîne d'os."

msgid "Sets the root bone index of the bone chain."
msgstr "Définit l'index de l'os racine de la chaîne d'os."

msgid "Sets the root bone name of the bone chain."
msgstr "Définit le nom de l'os racine de la chaîne d'os."

msgid ""
"Sets the rotation axis of the bone chain. If set to a specific axis, it acts "
"like a hinge joint. The value is cached in each joint setting in the joint "
"list.\n"
"The axes are based on the [method Skeleton3D.get_bone_rest]'s space, if "
"[param axis] is [constant ROTATION_AXIS_CUSTOM], you can specify any axis.\n"
"[b]Note:[/b] The rotation axis vector and the forward vector shouldn't be "
"colinear to avoid unintended rotation since [SpringBoneSimulator3D] does not "
"factor in twisting forces."
msgstr ""
"Définit l'axe de rotation de la chaîne d'os. S'il est défini à un axe "
"spécifique, il agit comme une liaison avec charnière. La valeur est mise en "
"cache dans chaque paramètre de liaison dans la liste des liaisons.\n"
"Les axes sont basés sur l'espace de [method Skeleton3D.get_bone_rest], si "
"[param axis] vaut [constant ROTATION_AXIS_CUSTOM], vous pouvez spécifier "
"n'importe quel axe.\n"
"[b]Note :[/b] Le vecteur d'axe de rotation et le vecteur avant ne devraient "
"pas être colinéaires pour éviter une rotation intempestive car "
"[SpringBoneSimulator3D] ne prend pas en compte les forces de torsion."

msgid ""
"Sets the rotation axis vector of the bone chain. The value is cached in each "
"joint setting in the joint list.\n"
"This vector is normalized by an internal process and represents the axis "
"around which the bone chain can rotate.\n"
"If the vector length is [code]0[/code], it is considered synonymous with "
"[constant ROTATION_AXIS_ALL]."
msgstr ""
"Définit le vecteur d'axe de rotation de la chaîne d'os. La valeur est mise en "
"cache dans chaque paramètre de liaison dans la liste des liaisons.\n"
"Ce vecteur est normalisé par un processus interne et représente l'axe autour "
"duquel la chaîne d'os peut tourner.\n"
"Si la longueur du vecteur est de [code]0[/code], il est considéré comme "
"synonyme de [constant ROTATION_AXIS_ALL]."

msgid ""
"Sets the stiffness force of the bone chain. The greater the value, the faster "
"it recovers to its initial pose.\n"
"If [param stiffness] is [code]0[/code], the modified pose will not return to "
"the original pose.\n"
"The value is scaled by [method set_stiffness_damping_curve] and cached in "
"each joint setting in the joint list."
msgstr ""
"Définit la force de rigidité de la chaîne d'os. Plus la valeur est grande, "
"plus vite la chaîne se remet à sa pose initiale.\n"
"Si [param stiffness] vaut [code]0[/code], la pose modifiée ne reviendra pas à "
"la pose originale.\n"
"La valeur est redimensionnée par [method set_stiffness_damping_curve] et est "
"mise en cache dans chaque paramètre de liaison dans la liste des liaisons."

msgid "Sets the stiffness force damping curve of the bone chain."
msgstr ""
"Définit la courbe d'amortissement de la force de rigidité de la chaîne d'os."

msgid ""
"The constant force that always affected bones. It is equal to the result when "
"the parent [Skeleton3D] moves at this speed in the opposite direction.\n"
"This is useful for effects such as wind and anti-gravity."
msgstr ""
"La force constante qui affecte toujours les os. Elle est égale au résultat "
"lorsque le [Skeleton3D] parent se déplace à cette vitesse dans la direction "
"opposée.\n"
"Ceci est utile pour des effets tels que le vent et l'antigravité."

msgid "The number of settings."
msgstr "Le nombre de paramètres."

msgid "Enumerated value for the axis from a parent bone to the child bone."
msgstr "Valeur d’énumération pour l'axe qui va d'un os parent vers l'os enfant."

msgid "The world origin is defined as center."
msgstr "L'origine du monde est définie comme le centre."

msgid ""
"The [Node3D] specified by [method set_center_node] is defined as center.\n"
"If [Node3D] is not found, the parent [Skeleton3D] is treated as center."
msgstr ""
"Le [Node3D] spécifié par [method set_center_node] est défini comme centre.\n"
"Si le [Node3D] n'est pas trouvé, le [Skeleton3D] parent est traité comme "
"centre."

msgid ""
"The bone pose origin of the parent [Skeleton3D] specified by [method "
"set_center_bone] is defined as center.\n"
"If [Node3D] is not found, the parent [Skeleton3D] is treated as center."
msgstr ""
"L'origine de la pose de l'os du [Skeleton3D] parent spécifié par [method "
"set_center_bone] est définie comme centre.\n"
"Si le [Node3D] n'est pas trouvé, le [Skeleton3D] parent est traité comme "
"centre."

msgid "Enumerated value for the rotation of the X axis."
msgstr "Valeur d'énumération pour la rotation de l'axe X."

msgid "Enumerated value for the rotation of the Y axis."
msgstr "Valeur d'énumération pour la rotation de l'axe Y."

msgid "Enumerated value for the rotation of the Z axis."
msgstr "Valeur d'énumération pour la rotation de l'axe Z."

msgid "Enumerated value for the unconstrained rotation."
msgstr "Valeur d'énumération pour la rotation sans contraintes."

msgid ""
"Enumerated value for an optional rotation axis. See also [method "
"set_joint_rotation_axis_vector]."
msgstr ""
"Valeur d'énumération pour un axe de rotation optionnel. Voir aussi [method "
"set_joint_rotation_axis_vector]."

msgid "General-purpose sprite node."
msgstr "Nœud de sprite à usage général."

msgid ""
"A node that displays a 2D texture. The texture displayed can be a region from "
"a larger atlas texture, or a frame from a sprite sheet animation."
msgstr ""
"Un nœud qui affiche une texture 2D. La texture affichée peut être une région "
"à partir d'une texture plus grande de l'atlas, ou d'une trame d'une animation "
"de feuille de sprite."

msgid ""
"Current frame to display from sprite sheet. [member hframes] or [member "
"vframes] must be greater than 1. This property is automatically adjusted when "
"[member hframes] or [member vframes] are changed to keep pointing to the same "
"visual frame (same column and row). If that's impossible, this value is reset "
"to [code]0[/code]."
msgstr ""
"Trame actuelle à afficher à partir de la feuille de sprite. [member hframes] "
"ou [member vframes] doivent être supérieurs à 1. Cette propriété est "
"automatiquement rajustée lorsque [member hframes] ou [member vframes] sont "
"modifiés pour garder le pointage sur la même trame visuelle (même colonne et "
"rangée). Si c'est impossible, cette valeur est réinitialisée à [code]0[/code]."

msgid ""
"Coordinates of the frame to display from sprite sheet. This is as an alias "
"for the [member frame] property. [member hframes] or [member vframes] must be "
"greater than 1."
msgstr ""
"Les coordonnées de la trame à afficher de la feuille de sprite. Il s'agit "
"d'un raccourci de la propriété [member frame]. [member hframes] ou [member "
"vframes] doivent être supérieurs à 1."

msgid ""
"The region of the atlas texture to display. [member region_enabled] must be "
"[code]true[/code]."
msgstr ""
"La région de la texture atlas à afficher. [member region_enabled] doit être "
"[code]true[/code]."

msgid "[Texture2D] object to draw."
msgstr "L’objet [Texture2D] à dessiner."

msgid "Emitted when the [member frame] changes."
msgstr "Émis quand une [member frame] changes."

msgid "Emitted when the [member texture] changes."
msgstr "Émis quand une [member texture] change."

msgid "2D sprite node in a 3D world."
msgstr "Nœud de sprite en 2D dans un monde en 3D."

msgid "2D sprite node in 3D environment."
msgstr "Nœud sprite 2D dans l’environnement 3D."

msgid ""
"A node that displays 2D texture information in a 3D environment. See also "
"[Sprite3D] where many other properties are defined."
msgstr ""
"Un nœud qui affiche des informations de texture 2D dans un environnement 3D. "
"Voir aussi [Sprite3D] où de nombreuses autres propriétés sont définies."

msgid ""
"Returns a [TriangleMesh] with the sprite's vertices following its current "
"configuration (such as its [member axis] and [member pixel_size])."
msgstr ""
"Renvoie un [TriangleMesh] avec les sommets du sprite suivant sa configuration "
"actuelle (comme [member axis] et [member pixel_size])."

msgid "Returns the rectangle representing this sprite."
msgstr "Renvoie le rectangle représentant ce sprite."

msgid "If [code]true[/code], the specified flag will be enabled."
msgstr "Si [code]true[/code], le drapeau spécifié sera activé."

msgid "The direction in which the front of the texture faces."
msgstr "La direction que pointe la face avant de cette texture."

msgid ""
"The billboard mode to use for the sprite.\n"
"[b]Note:[/b] When billboarding is enabled and the material also casts "
"shadows, billboards will face [b]the[/b] camera in the scene when rendering "
"shadows. In scenes with multiple cameras, the intended shadow cannot be "
"determined and this will result in undefined behavior. See [url=https://"
"github.com/godotengine/godot/pull/72638]GitHub Pull Request #72638[/url] for "
"details."
msgstr ""
"Le mode de billboard à utiliser pour le sprite.\n"
"[b]Note :[/b] Lorsque la mode de billboard est activé et que le matériau "
"projette également des ombres, les billboards feront face à [b]la[/b] caméra "
"dans la scène lors du rendu des ombres. Dans les scènes avec plusieurs "
"caméras, l'ombre prévue ne peut pas être déterminée et cela résultera en un "
"comportement indéfini. Voir la [url=https://github.com/godotengine/godot/pull/"
"72638]Pull Request GitHub #72638[/url] pour plus de détails."

msgid "If [code]true[/code], texture will be centered."
msgstr "Si [code]true[/code], la texture sera centrée."

msgid ""
"If [code]true[/code], texture can be seen from the back as well, if "
"[code]false[/code], it is invisible when looking at it from behind."
msgstr ""
"Si [code]true[/code], la texture est aussi affichée de dos, si [code]false[/"
"code], elle est invisible de dos."

msgid ""
"If [code]true[/code], the texture is rendered at the same size regardless of "
"distance. The texture's size on screen is the same as if the camera was "
"[code]1.0[/code] units away from the texture's origin, regardless of the "
"actual distance from the camera. The [Camera3D]'s field of view (or [member "
"Camera3D.size] when in orthogonal/frustum mode) still affects the size the "
"sprite is drawn at."
msgstr ""
"Si [code]true[/code], la texture est rendue à la même taille indépendamment "
"de la distance. La taille de la texture à l'écran est la même que si la "
"caméra était à [code]1.0[/code] unités de l'origine de la texture, peu "
"importe la distance réelle à la caméra. Le champ de vision de la [Camera3D] "
"(ou [member Camera3D.size] en mode orthogonal/frustum) affecte toujours la "
"taille à laquelle le sprite est dessiné."

msgid ""
"A color value used to [i]multiply[/i] the texture's colors. Can be used for "
"mood-coloring or to simulate the color of ambient light.\n"
"[b]Note:[/b] Unlike [member CanvasItem.modulate] for 2D, colors with values "
"above [code]1.0[/code] (overbright) are not supported.\n"
"[b]Note:[/b] If a [member GeometryInstance3D.material_override] is defined on "
"the [SpriteBase3D], the material override must be configured to take vertex "
"colors into account for albedo. Otherwise, the color defined in [member "
"modulate] will be ignored. For a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] must be [code]true[/code]. For a "
"[ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in the "
"shader's [code]fragment()[/code] function."
msgstr ""
"Une valeur de couleur utilisée pour [i]multiplier[/i] les couleurs de la "
"texture. Peut être utilisé pour la coloration d'ambiance ou pour simuler la "
"couleur de la lumière ambiante.\n"
"[b]Note :[/b] Contrairement à [member CanvasItem.modulate] pour 2D, les "
"couleurs avec des valeurs supérieures à [code]1.0[/code] (overbright) ne sont "
"pas supportées.\n"
"[b]Note :[/b] Si un [member GeometryInstance3D.material_override] est défini "
"sur le [SpriteBase3D], la redéfinition du matériau doit être configurée pour "
"prendre en compte les couleurs des sommets pour l'albédo. Sinon, la couleur "
"définie dans [member modulate] sera ignorée. Pour un [BaseMaterial3D], "
"[member BaseMaterial3D.vertex_color_use_as_albedo] doit valoir [code]true[/"
"code]. Pour un [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] doit être "
"inséré dans la fonction [code]fragment()[/code] du shader."

msgid ""
"The texture's drawing offset.\n"
"[b]Note:[/b] When you increase [member offset].y in Sprite3D, the sprite "
"moves upward in world space (i.e., +Y is up)."
msgstr ""
"Le décalage du dessin de la texture.\n"
"[b]Note :[/b] Lorsque vous augmentez [member offset].y dans Sprite3D, le "
"sprite se déplace vers le haut dans l'espace global (c.-à-d. +Y est le haut)."

msgid "The size of one pixel's width on the sprite to scale it in 3D."
msgstr "La taille d'un des pixels de la sprite pour définir sa taille en 3D."

msgid ""
"Sets the render priority for the sprite. Higher priority objects will be "
"sorted in front of lower priority objects.\n"
"[b]Note:[/b] This only applies if [member alpha_cut] is set to [constant "
"ALPHA_CUT_DISABLED] (default value).\n"
"[b]Note:[/b] This only applies to sorting of transparent objects. This will "
"not impact how transparent objects are sorted relative to opaque objects. "
"This is because opaque objects are not sorted, while transparent objects are "
"sorted from back to front (subject to priority)."
msgstr ""
"Définit la priorité de rendu pour le texte. Les objets plus prioritaires "
"seront affichés par-dessus les objets les moins prioritaites.\n"
"[b]Note :[/b] Cela ne s'applique que si [member alpha_cut] est défini à "
"[constant ALPHA_CUT_DISABLED] (c'est la valeur par défaut).\n"
"[b]Note :[/b] Cela ne s'applique qu'au tri des objets transparents. Cela "
"n'affectera pas la façon dont les objets transparents sont triés par rapport "
"aux objets opaques. C'est parce que les objets opaques ne sont pas triés, "
"alors que les objets transparents sont triés de l'arrière vers l'avant (et "
"suivant leur priorité)."

msgid ""
"If [code]true[/code], the [Light3D] in the [Environment] has effects on the "
"sprite."
msgstr ""
"Si [code]true[/code], la [Light3D] dans l'[Environment] a un effet sur le "
"sprite."

msgid ""
"Filter flags for the texture.\n"
"[b]Note:[/b] Linear filtering may cause artifacts around the edges, which are "
"especially noticeable on opaque textures. To prevent this, use textures with "
"transparent or identical colors around the edges."
msgstr ""
"Drapeaux de filtrage pour la texture.\n"
"[b]Note :[/b] Le filtrage linéaire peut provoquer des artéfacts autour des "
"bords, qui sont particulièrement visibles sur les textures opaques. Pour "
"éviter cela, utilisez des textures avec des couleurs transparentes ou "
"identiques autour des bords."

msgid ""
"If [code]true[/code], the texture's transparency and the opacity are used to "
"make those parts of the sprite invisible."
msgstr ""
"Si [code]true[/code], la transparence et l'opacité des textures sont "
"utilisées pour rendre invisibles ces parties du sprite."

msgid ""
"If set, the texture's transparency and the opacity are used to make those "
"parts of the sprite invisible."
msgstr ""
"Si elle est définie, la transparence de la texture et l'opacité sont "
"utilisées pour rendre invisibles ces parties du sprite."

msgid "If set, lights in the environment affect the sprite."
msgstr "Si définies, les lumières dans l'environnement affecte le sprite."

msgid ""
"If set, texture can be seen from the back as well. If not, the texture is "
"invisible when looking at it from behind."
msgstr ""
"Si défini, le texture sera aussi visible de derrière. Sinon, la texture sera "
"invisible en regardant par derrière."

msgid ""
"This mode performs standard alpha blending. It can display translucent areas, "
"but transparency sorting issues may be visible when multiple transparent "
"materials are overlapping."
msgstr ""
"Ce mode réalise un mélange l'opacité standard. Il peut afficher des zones "
"translucides, mais des problèmes de tri selon la transparence peuvent être "
"visibles lorsque plusieurs matériaux transparents se chevauchent."

msgid ""
"This mode only allows fully transparent or fully opaque pixels. Harsh edges "
"will be visible unless some form of screen-space antialiasing is enabled (see "
"[member ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa]). On "
"the bright side, this mode doesn't suffer from transparency sorting issues "
"when multiple transparent materials are overlapping. This mode is also known "
"as [i]alpha testing[/i] or [i]1-bit transparency[/i]."
msgstr ""
"Ce mode n'autorise uniquement que les pixels entièrement transparents ou "
"entièrement opaques. Des bords nets seront visibles à moins qu'une certaine "
"forme d'anti-crénelage dans l'espace-écran ne soit activée (voir [member "
"ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa]). Ce mode a "
"cependant l'avantage de ne pas souffrir de problèmes de tri de transparence "
"lorsque plusieurs matériaux transparents se chevauchent. Ce mode est "
"également connu sous le nom d'[i]alpha testing[/i] ou [i]1-bit transparency[/"
"i]."

msgid ""
"This mode draws fully opaque pixels in the depth prepass. This is slower than "
"[constant ALPHA_CUT_DISABLED] or [constant ALPHA_CUT_DISCARD], but it allows "
"displaying translucent areas and smooth edges while using proper sorting."
msgstr ""
"Ce mode dessine des pixels entièrement opaques lors de la pré-passe de "
"profondeur. Ceci est plus lent que [constant ALPHA_CUT_DISABLED] ou [constant "
"ALPHA_CUT_DISCARD], mais il permet d'afficher des zones translucides et des "
"bords lisses tout en utilisant un tri approprié."

msgid "Sprite frame library for AnimatedSprite2D and AnimatedSprite3D."
msgstr ""
"Bibliothèque de trames de sprites pour AnimatedSprite2D et AnimatedSprite3D."

msgid "Removes all frames from the [param anim] animation."
msgstr "Retire toutes les trames de l'animation [param anim]."

msgid ""
"Returns [code]true[/code] if the given animation is configured to loop when "
"it finishes playing. Otherwise, returns [code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si l'animation donnée est configurée pour boucler "
"lorsqu'elle termine de jouer. Sinon, renvoie [code]false[/code]."

msgid ""
"Returns an array containing the names associated to each animation. Values "
"are placed in alphabetical order."
msgstr ""
"Renvoie un tableau contenant les noms associés à chaque animation. Ces "
"valeurs sont triées dans l'ordre alphabétique."

msgid "Returns [code]true[/code] if the [param anim] animation exists."
msgstr "Renvoie [code]true[/code] si l'animation [param anim] existe."

msgid "Removes the [param anim] animation."
msgstr "Retire l'animation [param anim]."

msgid "A PBR (Physically Based Rendering) material to be used on 3D objects."
msgstr ""
"Un matériau PBR (Physically Based Rendering, litt. Rendu basé sur la "
"physique) à utiliser sur des objets 3D."

msgid ""
"[StandardMaterial3D]'s properties are inherited from [BaseMaterial3D]. "
"[StandardMaterial3D] uses separate textures for ambient occlusion, roughness "
"and metallic maps. To use a single ORM map for all 3 textures, use an "
"[ORMMaterial3D] instead."
msgstr ""
"Les propriétés de [StandardMaterial3D] sont héritées de [BaseMaterial3D]. "
"[StandardMaterial3D] utilise des textures distinctes pour l'occlusion "
"ambiante, la rugosité et les metallic maps. Pour utiliser une seule ORM map "
"pour les 3 textures, utilisez un [ORMMaterial3D] à la place."

msgid ""
"A 2D physics body that can't be moved by external forces. When moved "
"manually, it doesn't affect other bodies in its path."
msgstr ""
"Un corps physique 2D qui ne peut pas être déplacé par des forces extérieures. "
"Lorsqu'il est déplacé manuellement, il n'affecte pas les autres corps sur son "
"chemin."

msgid ""
"A static 2D physics body. It can't be moved by external forces or contacts, "
"but can be moved manually by other means such as code, [AnimationMixer]s "
"(with [member AnimationMixer.callback_mode_process] set to [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform2D].\n"
"When [StaticBody2D] is moved, it is teleported to its new position without "
"affecting other physics bodies in its path. If this is not desired, use "
"[AnimatableBody2D] instead.\n"
"[StaticBody2D] is useful for completely static objects like floors and walls, "
"as well as moving surfaces like conveyor belts and circular revolving "
"platforms (by using [member constant_linear_velocity] and [member "
"constant_angular_velocity])."
msgstr ""
"Un corps physique 2D statique. Il ne peut pas être déplacé par des forces ou "
"des contacts externes, mais peut être déplacé manuellement par d'autres "
"moyens tels que le code, des [AnimationMixer]s (avec [member "
"AnimationMixer.callback_mode_process] défini sur [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), et "
"[RemoteTransform2D].\n"
"Lorsqu'un [StaticBody2D] est déplacé, il est téléporté à sa nouvelle position "
"sans affecter les autres corps de physique sur son chemin. Si cela n'est pas "
"souhaité, utilisez [AnimatableBody2D] à la place.\n"
"[StaticBody2D] est utile pour des objets complètement statiques comme des "
"sols et des murs, ainsi que des surfaces mobiles comme des tapis roulants et "
"des plateformes tournantes circulaires (en utilisant [member "
"constant_linear_velocity] et [member constant_angular_velocity])."

msgid ""
"The body's constant angular velocity. This does not rotate the body, but "
"affects touching bodies, as if it were rotating."
msgstr ""
"La vitesse angulaire constante du corps. Cela ne tourne pas le corps, mais "
"affecte les autres corps qui le touchent, comme s'il tournait."

msgid ""
"The body's constant linear velocity. This does not move the body, but affects "
"touching bodies, as if it were moving."
msgstr ""
"La vitesse linéaire constante du corps. Cela ne déplace pas le corps, mais "
"affecte les autres corps qui le touchent, comme s'il se déplaçait."

msgid ""
"A 3D physics body that can't be moved by external forces. When moved "
"manually, it doesn't affect other bodies in its path."
msgstr ""
"Un corps physique 3D qui ne peut pas être déplacé par des forces extérieures. "
"Lorsqu'il est déplacé manuellement, il n'affecte pas les autres corps sur son "
"chemin."

msgid ""
"A static 3D physics body. It can't be moved by external forces or contacts, "
"but can be moved manually by other means such as code, [AnimationMixer]s "
"(with [member AnimationMixer.callback_mode_process] set to [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform3D].\n"
"When [StaticBody3D] is moved, it is teleported to its new position without "
"affecting other physics bodies in its path. If this is not desired, use "
"[AnimatableBody3D] instead.\n"
"[StaticBody3D] is useful for completely static objects like floors and walls, "
"as well as moving surfaces like conveyor belts and circular revolving "
"platforms (by using [member constant_linear_velocity] and [member "
"constant_angular_velocity])."
msgstr ""
"Un corps physique 3D statique. Il ne peut pas être déplacé par des forces ou "
"des contacts externes, mais peut être déplacé manuellement par d'autres "
"moyens tels que le code, des [AnimationMixer]s (avec [member "
"AnimationMixer.callback_mode_process] défini sur [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), et "
"[RemoteTransform3D].\n"
"Lorsqu'un [StaticBody3D] est déplacé, il est téléporté à sa nouvelle position "
"sans affecter les autres corps de physique sur son chemin. Si cela n'est pas "
"souhaité, utilisez [AnimatableBody3D] à la place.\n"
"[StaticBody3D] est utile pour des objets complètement statiques comme des "
"sols et des murs, ainsi que des surfaces mobiles comme des tapis roulants et "
"des plateformes tournantes circulaires (en utilisant [member "
"constant_linear_velocity] et [member constant_angular_velocity])."

msgid ""
"Application status indicator (aka notification area icon).\n"
"[b]Note:[/b] Status indicator is implemented on macOS and Windows."
msgstr ""
"Indicateur de statut d'application (icône de zone de notification).\n"
"[b]Note :[/b] L'indicateur de statut est implémenté sur macOS et Windows."

msgid ""
"Returns the status indicator rectangle in screen coordinates. If this status "
"indicator is not visible, returns an empty [Rect2]."
msgstr ""
"Renvoie le rectangle de l'indicateur de statut dans les coordonnées de "
"l'écran. Si cet indicateur de statut n'est pas visible, renvoie un [Rect2] "
"vide."

msgid "Status indicator icon."
msgstr "Icône d'indicateur de statut."

msgid "Status indicator tooltip."
msgstr "Info-bulle d'indicateur de statut."

msgid "If [code]true[/code], the status indicator is visible."
msgstr "Si [code]true[/code], l'indicateur de statut est visible."

msgid "Emitted when the status indicator is pressed."
msgstr "Émis lorsque l'indicateur de statut est appuyé."

msgid "Gets a signed byte from the stream."
msgstr "Obtient un octet signé depuis le flux."

msgid "Gets a signed 16-bit value from the stream."
msgstr "Obtient une valeur 16 bits signée depuis le flux."

msgid "Gets a signed 32-bit value from the stream."
msgstr "Obtient une valeur 32 bits signée depuis le flux."

msgid "Gets a signed 64-bit value from the stream."
msgstr "Obtient une valeur 64 bits signée depuis le flux."

msgid "Gets a double-precision float from the stream."
msgstr "Obtient un flottant à double-précision depuis le flux."

msgid "Gets a single-precision float from the stream."
msgstr "Obtient un flottant à simple précision depuis le flux."

msgid "Gets an unsigned byte from the stream."
msgstr "Obtient un octet non signé depuis le flux."

msgid "Gets an unsigned 16-bit value from the stream."
msgstr "Obtient une valeur 16 bits non signée depuis le flux."

msgid "Gets an unsigned 32-bit value from the stream."
msgstr "Obtient une valeur 32 bits non signée depuis le flux."

msgid "Gets an unsigned 64-bit value from the stream."
msgstr "Obtient une valeur 64 bits non signée depuis le flux."

msgid "Puts a signed byte into the stream."
msgstr "Ajoute un octet signé dans le flux."

msgid "Puts a signed 16-bit value into the stream."
msgstr "Ajoute une valeur de 16 bits dans le flux."

msgid "Puts a signed 32-bit value into the stream."
msgstr "Ajoute une valeur de 32 bits dans le flux."

msgid "Puts a signed 64-bit value into the stream."
msgstr "Ajoute une valeur de 64 bits dans le flux."

msgid "Puts a double-precision float into the stream."
msgstr "Ajouter un flottant double précision dans le flux."

msgid "Puts a single-precision float into the stream."
msgstr "Ajouter un flottant single précision dans le flux."

msgid "Puts an unsigned byte into the stream."
msgstr "Ajouter un octet non signé dans le flux."

msgid "Puts an unsigned 16-bit value into the stream."
msgstr "Ajoute une valeur de 16 bits non signée dans le flux."

msgid "Puts an unsigned 32-bit value into the stream."
msgstr "Ajoute une valeur de 32 bits non signée dans le flux."

msgid "Puts an unsigned 64-bit value into the stream."
msgstr "Ajoute une valeur de 64 bits non signée dans le flux."

msgid ""
"If [code]true[/code], this [StreamPeer] will using big-endian format for "
"encoding and decoding."
msgstr ""
"Si [code]true[/code], ce [StreamPeer] utilisera le format big-endian pour "
"l'encodage et le décodage."

msgid "Clears the [member data_array] and resets the cursor."
msgstr "Efface le [member data_array] et rétablit le curseur."

msgid ""
"Returns a new [StreamPeerBuffer] with the same [member data_array] content."
msgstr ""
"Renvoie un nouveau [StreamPeerBuffer] avec le même contenu que [member "
"data_array]."

msgid "Returns the current cursor position."
msgstr "Renvoie la position actuelle du curseur."

msgid "Returns the size of [member data_array]."
msgstr "Renvoie la taille de [member data_array]."

msgid "Resizes the [member data_array]. This [i]doesn't[/i] update the cursor."
msgstr ""
"Redimensionne [member data_array]. Cela [i]ne met pas[/i] à jour le curseur."

msgid "The underlying data buffer. Setting this value resets the cursor."
msgstr ""
"La mémoire tampon interne. Changer cette valeur réinitialise la position du "
"curseur."

msgid "Clears this stream, resetting the internal state."
msgstr "Vide le flux, réinitialisant l'état interne."

msgid "Disconnects from host."
msgstr "Se déconnecte de l'hôte."

msgid "Returns the IP of this peer."
msgstr "Renvoie l'adresse IP de ce pair."

msgid "Returns the port of this peer."
msgstr "Renvoie le port de ce pair."

msgid ""
"The initial status of the [StreamPeerTCP]. This is also the status after "
"disconnecting."
msgstr ""
"Le status initial du [StreamPeerTCP]. C'est aussi le status après la "
"déconnexion."

msgid "A status representing a [StreamPeerTCP] that is connecting to a host."
msgstr "Un status représentant un [StreamPeerTCP] qui se connecte un à hôte."

msgid "A status representing a [StreamPeerTCP] that is connected to a host."
msgstr "Un status représentant un [StreamPeerTCP] qui est connecté un à hôte."

msgid "A status representing a [StreamPeerTCP] in error state."
msgstr "Un status représentant un état d'erreur du [StreamPeerTCP]."

msgid ""
"Poll the connection to check for incoming bytes. Call this right before "
"[method StreamPeer.get_available_bytes] for it to work properly."
msgstr ""
"Sonde la connexion pour vérifier les octets entrants. Appelez ceci avant "
"[method StreamPeer.get_available_bytes] pour que ça puisse fonctionner "
"correctement."

msgid "A status representing a [StreamPeerTLS] that is disconnected."
msgstr "Un statut représentant un [StreamPeerTLS] qui est déconnecté."

msgid "A status representing a [StreamPeerTLS] during handshaking."
msgstr "Un status représentant un [StreamPeerTLS] durant la poignée de main."

msgid "A status representing a [StreamPeerTLS] in error state."
msgstr "Un statut représentant un [StreamPeerTLS] dans un état d'erreur."

msgid "A built-in type for strings."
msgstr "Un type intégré pour les chaînes de caractères."

msgid ""
"This is the built-in string Variant type (and the one used by GDScript). "
"Strings may contain any number of Unicode characters, and expose methods "
"useful for manipulating and generating strings. Strings are reference-counted "
"and use a copy-on-write approach (every modification to a string returns a "
"new [String]), so passing them around is cheap in resources.\n"
"Some string methods have corresponding variations. Variations suffixed with "
"[code]n[/code] ([method countn], [method findn], [method replacen], etc.) are "
"[b]case-insensitive[/b] (they make no distinction between uppercase and "
"lowercase letters). Method variations prefixed with [code]r[/code] ([method "
"rfind], [method rsplit], etc.) are reversed, and start from the end of the "
"string, instead of the beginning.\n"
"To convert any [Variant] to or from a string, see [method @GlobalScope.str], "
"[method @GlobalScope.str_to_var], and [method @GlobalScope.var_to_str].\n"
"[b]Note:[/b] In a boolean context, a string will evaluate to [code]false[/"
"code] if it is empty ([code]\"\"[/code]). Otherwise, a string will always "
"evaluate to [code]true[/code]."
msgstr ""
"C’est le type Variant intégré de chaînes de caractères (et celui utilisé par "
"GDScript). Les chaînes de caractères peuvent contenir n’importe quel nombre "
"de caractères Unicode et exposer les méthodes utiles pour manipuler et "
"générer des chaînes. Les chaînes de caractères sont comptées par référence et "
"utilisent une approche de copie lors de l’écriture (toute modification à une "
"chaîne renvoie une nouvelle [String]), donc les passer par référence à un "
"coût faible en ressources.\n"
"Certaines méthodes de chaîne ont des variations correspondantes. [code]n[/"
"code] ([method countn], [method findn], [method replacen], etc.) sont [b] "
"insensibles à la casse[/b] (ils ne font aucune distinction entre les lettres "
"majuscules et minuscules). Les variations de méthode préfixées avec [code]r[/"
"code] ([method rfind], [method rsplit], etc.) sont inversées et commencent à "
"partir de la fin de la chaîne, au lieu du début.\n"
"Pour convertir tout [Variant] en ou à partir d'une chaîne, voir [method "
"@GlobalScope.str], [method @GlobalScope.str_to_var], et [method "
"@GlobalScope.var_to_str].\n"
"[b]Note :[/b] Dans un contexte booléen, une chaîne s’évaluera à [code]false[/"
"code] si elle est vide ([code]\"[/code]). Sinon, une chaîne s’évaluera "
"toujours à [code]true[/code]."

msgid "GDScript format strings"
msgstr "Chaînes de format en GDScript"

msgid "Constructs an empty [String] ([code]\"\"[/code])."
msgstr "Construit une chaîne [String] vide ([code]\"\"[/code])."

msgid "Constructs a [String] as a copy of the given [String]."
msgstr ""
"Construit une nouvelle chaîne [String] comme copie d'une chaine [String] "
"donnée."

msgid "Constructs a new [String] from the given [NodePath]."
msgstr "Construit une nouvelle chaîne [String] à partir du [NodePath] donné."

msgid "Constructs a new [String] from the given [StringName]."
msgstr "Construit une nouvelle chaîne [String] à partir du [StringName] donné."

msgid ""
"Returns [code]true[/code] if the string begins with the given [param text]. "
"See also [method ends_with]."
msgstr ""
"Renvoie [code]true[/code] si la chaîne de caractères commence par le texte "
"[param text] donné. Voir aussi [method ends_with]."

msgid ""
"Returns an array containing the bigrams (pairs of consecutive characters) of "
"this string.\n"
"[codeblock]\n"
"print(\"Get up!\".bigrams()) # Prints [\"Ge\", \"et\", \"t \", \" u\", "
"\"up\", \"p!\"]\n"
"[/codeblock]"
msgstr ""
"Renvoie un tableau contenant les « bigrams » (paires de lettres consécutives) "
"de cette chaîne de caractères.\n"
"[codeblock]\n"
"print(\"Lève toi !\".bigrams()) # Affiche [\"Lè\", \"èv\" ,\"ve\", \"e \", \" "
"t\", \"to\", \"oi\", \"i!\"]\n"
"[/codeblock]"

msgid ""
"Converts the string representing a binary number into an [int]. The string "
"may optionally be prefixed with [code]\"0b\"[/code], and an additional [code]-"
"[/code] prefix for negative numbers.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"101\".bin_to_int())   # Prints 5\n"
"print(\"0b101\".bin_to_int()) # Prints 5\n"
"print(\"-0b10\".bin_to_int()) # Prints -2\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"101\".BinToInt());   // Prints 5\n"
"GD.Print(\"0b101\".BinToInt()); // Prints 5\n"
"GD.Print(\"-0b10\".BinToInt()); // Prints -2\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Convertit la chaîne représentant un nombre binaire en une entier [int]. La "
"chaîne peut éventuellement être préfixée avec [code]\"0b\"[/code], et un "
"préfixe supplémentaire [code]-[/code] pour les nombres négatifs.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"101\".bin_to_int()) # Affiche 5\n"
"print(\"0b101\".bin_to_int()) # Affiche 5\n"
"print(\"-0b10\".bin_to_int()) # Affiche -2\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"101\".BinToInt()); // Affiche 5\n"
"GD.Print(\"0b101\".BinToInt()); // Affiche 5\n"
"GD.Print(\"-0b10\".BinToInt()); // Affiche -2\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of the string with special characters escaped using the C "
"language standard."
msgstr ""
"Renvoie une copie de la chaîne de caractères avec les caractères spéciaux "
"échappés selon le standard du langage C."

msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/code], "
"[code]\\\\[/code], [code]\\a[/code], [code]\\b[/code], [code]\\f[/code], "
"[code]\\n[/code], [code]\\r[/code], [code]\\t[/code], [code]\\v[/code].\n"
"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
"[code]\\uXXXX[/code] escape sequence."
msgstr ""
"Renvoie une copie de la chaîne avec les caractères d'échappement remplacés "
"par leurs significations. Les caractères d'échappement supportés sont : [code]"
"\\'[/code], [code]\\\"[/code], [code]\\\\[/code], [code]\\a[/code], [code]"
"\\b[/code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
"code], [code]\\v[/code].\n"
"[b]Note :[/b] Contrairement au parseur GDScript, cette méthode ne supporte "
"pas la séquence d'échappement de caractères Unicode [code]\\uXXXX[/code]."

msgid ""
"Changes the appearance of the string: replaces underscores ([code]_[/code]) "
"with spaces, adds spaces before uppercase letters in the middle of a word, "
"converts all letters to lowercase, then converts the first one and each one "
"following a space to uppercase.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"move_local_x\".capitalize()   # Returns \"Move Local X\"\n"
"\"sceneFile_path\".capitalize() # Returns \"Scene File Path\"\n"
"\"2D, FPS, PNG\".capitalize()   # Returns \"2d, Fps, Png\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"move_local_x\".Capitalize();   // Returns \"Move Local X\"\n"
"\"sceneFile_path\".Capitalize(); // Returns \"Scene File Path\"\n"
"\"2D, FPS, PNG\".Capitalize();   // Returns \"2d, Fps, Png\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Change l'apparence de la chaîne de caractères : remplace les tirets bas "
"([code]_[/code]) par des espaces, ajoute des espaces avant les lettres "
"majuscules au milieu d'un mot, convertit toutes les lettres en minuscule, "
"puis convertit la première lettre et chacune après un espace en majuscules.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"move_local_x\".capitalize() # Renvoie \"Move Local X\"\n"
"\"sceneFile_path\".capitalize() # Renvoie \"Scene File Path\"\n"
"\"2D, FPS, PNG\".capitalize() # Renvoie \"2d, Fps, Png\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"move_local_x\".Capitalize(); // Renvoie \"Move Local X\"\n"
"\"sceneFile_path\".Capitalize(); // Renvoie \"Scene File Path\"\n"
"\"2D, FPS, PNG\".Capitalize(); // Renvoie \"2d, Fps, Png\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]1[/code] if greater than, or [code]0[/code] if "
"equal. \"Less than\" and \"greater than\" are determined by the [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of "
"each string, which roughly matches the alphabetical order.\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method nocasecmp_to], [method filecasecmp_to], "
"and [method naturalcasecmp_to]."
msgstr ""
"Effectue une comparaison sensible à la casse avec une autre chaîne. Renvoie "
"[code]-1[/code] si elle est inférieure, [code]1[/code] si elle est plus "
"supérieure, ou [code]0[/code] si elles sont égales. \"Inférieur à\" et "
"\"supérieur à\" sont déterminés par [url=https://fr.m.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]points de code Unicode[/url] de chaque "
"chaîne, qui correspond approximativement à l'ordre alphabétique.\n"
"Si la comparaison des caractères atteint la fin d'une chaîne, mais que "
"l'autre chaîne contient plus de caractères, elle utilisera alors la longueur "
"comme facteur déterminant : [code]1[/code] sera renvoyé si cette chaîne est "
"plus longue que la chaîne [param to], ou [code]-1[/code] si elle est plus "
"courte. Notez que la longueur des chaînes vides est toujours de [code]0[/"
"code].\n"
"Pour obtenir un résultat booléen [bool] d'une comparaison de chaînes, "
"utilisez plutôt l'opérateur [code]==[/code]. Voir aussi [method "
"nocasecmp_to], [method filecasecmp_to], et [method naturalcasecmp_to]."

msgid ""
"Returns a single Unicode character from the integer [param code]. You may use "
"[url=https://unicodelookup.com/]unicodelookup.com[/url] or [url=https://"
"www.unicode.org/charts/]unicode.org[/url] as points of reference.\n"
"[codeblock]\n"
"print(String.chr(65))     # Prints \"A\"\n"
"print(String.chr(129302)) # Prints \"🤖\" (robot face emoji)\n"
"[/codeblock]\n"
"See also [method unicode_at], [method @GDScript.char], and [method "
"@GDScript.ord]."
msgstr ""
"Renvoie un seul caractère Unicode depuis l'entier [param code]. Vous pouvez "
"utiliser [url=https://unicodelookup.com/]unicodelookup.com[/url] ou "
"[url=https://www.unicode.org/charts/]unicode.org[/url] comme points de "
"référence.\n"
"[codeblock]\n"
"print(String.chr(65)) # Affiche \"A\"\n"
"print(String.chr(129302) # Affiche \"🤖\" (emoji tête de robot)\n"
"[/codeblock]\n"
"Voir aussi [method unicode_at], [method @GDScript.char], et [method "
"@GDScript.ord]."

msgid ""
"Returns [code]true[/code] if the string contains [param what]. In GDScript, "
"this corresponds to the [code]in[/code] operator.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"Node\".contains(\"de\")) # Prints true\n"
"print(\"team\".contains(\"I\"))  # Prints false\n"
"print(\"I\" in \"team\")         # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"Node\".Contains(\"de\")); // Prints True\n"
"GD.Print(\"team\".Contains(\"I\"));  // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you need to know where [param what] is within the string, use [method "
"find]. See also [method containsn]."
msgstr ""
"Renvoie [code]true[/code] si la chaîne contient la chaîne [param what]. En "
"GDScript, cela correspond à l'opérateur [code]in[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"Nœud\".contains(\"No\") # Affiche true\n"
"print(\"équipe\".contains(\"je\") # Affiche false\n"
"print(\"je\" dans \"équipe\") # Affiche false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"Nœud\".contains(\"No\")); // Affiche True\n"
"GD.Print(\"équipe\".contains(\"je\")); // Affiche False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Si vous devez savoir où [param what] se trouve dans la chaîne, utilisez "
"[method find]. Voir aussi [method containsn]."

msgid ""
"Returns [code]true[/code] if the string contains [param what], [b]ignoring "
"case[/b].\n"
"If you need to know where [param what] is within the string, use [method "
"findn]. See also [method contains]."
msgstr ""
"Renvoie [code]true[/code] si la chaîne contient la chaîne [param what], "
"[b]ignorant la casse[/b].\n"
"Si vous devez savoir où [param what] se trouve dans la chaîne, utilisez "
"[method findn]. Voir aussi [method contains]."

msgid ""
"Returns the number of occurrences of the substring [param what] between "
"[param from] and [param to] positions. If [param to] is 0, the search "
"continues until the end of the string."
msgstr ""
"Renvoie le nombre d’occurrences de la sous-chaîne [param what] entre les "
"positions [param from] et [param to]. Si [param to] vaut 0, la recherche "
"continue jusque la fin de la chaîne."

msgid ""
"Returns the number of occurrences of the substring [param what] between "
"[param from] and [param to] positions, [b]ignoring case[/b]. If [param to] is "
"0, the search continues until the end of the string."
msgstr ""
"Renvoie le nombre d’occurrences de la sous-chaîne [param what] entre les "
"positions [param from] et [param to], [b]ignorant la casse[/b]. Si [param to] "
"vaut 0, la recherche continue jusque la fin de la chaîne."

msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed. See also [method indent] to add indentation."
msgstr ""
"Renvoie une copie de la chaîne de caractères avec l'indentation (les "
"tabulations et les espaces) retirée. Voir aussi [method indent] pour ajouter "
"une indentation."

msgid ""
"Returns [code]true[/code] if the string ends with the given [param text]. See "
"also [method begins_with]."
msgstr ""
"Renvoie [code]true[/code] si la chaîne de caractères finit par la chaîne de "
"caractères [param text] donnée. Voir aussi [method begins_with]."

msgid ""
"Returns a string with [param chars] characters erased starting from [param "
"position]. If [param chars] goes beyond the string's length given the "
"specified [param position], fewer characters will be erased from the returned "
"string. Returns an empty string if either [param position] or [param chars] "
"is negative. Returns the original string unmodified if [param chars] is "
"[code]0[/code]."
msgstr ""
"Renvoie une chaîne avec les [param chars] premiers caractères effacés à "
"partir d’une certaine [param position]. Si [param chars] dépasse la longueur "
"de la chaîne, compte tenu de la [param position] spécifiée, moins de "
"caractères seront effacés de la chaîne renvoyée. Renvoie une chaîne vide si "
"[param position] ou [param chars] est négatif. Renvoie la chaîne originale "
"non modifiée si [param chars] est à [code]0[/code]."

msgid ""
"Like [method naturalcasecmp_to] but prioritizes strings that begin with "
"periods ([code].[/code]) and underscores ([code]_[/code]) before any other "
"character. Useful when sorting folders or file names.\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method filenocasecmp_to], [method "
"naturalcasecmp_to], and [method casecmp_to]."
msgstr ""
"Comme [method naturalcasecmp_to] mais priorise les chaînes commençant par des "
"points ([code].[/code]) et des tirets bas ([code]_[/code])) avant tout autre "
"caractère. Utile lors du tri des dossiers ou des noms de fichiers.\n"
"Pour obtenir un résultat booléen [bool] d’une comparaison de chaîne, utilisez "
"plutôt l’opérateur [code]=[/code]. Voir aussi [method filenocasecmp_to], "
"[method naturalcasecmp_to], et [method casecmp_to]."

msgid ""
"Like [method naturalnocasecmp_to] but prioritizes strings that begin with "
"periods ([code].[/code]) and underscores ([code]_[/code]) before any other "
"character. Useful when sorting folders or file names.\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method filecasecmp_to], [method "
"naturalnocasecmp_to], and [method nocasecmp_to]."
msgstr ""
"Comme [method naturalnocasecmp_to] mais priorise les chaînes commençant par "
"des points ([code].[/code]) et des tirets bas ([code]_[/code])) avant tout "
"autre caractère. Utile lors du tri des dossiers ou des noms de fichiers.\n"
"Pour obtenir un résultat booléen [bool] d’une comparaison de chaîne, utilisez "
"plutôt l’opérateur [code]=[/code]. Voir aussi [method filecasecmp_to], "
"[method naturalnocasecmp_to], et [method nocasecmp_to]."

msgid ""
"Returns the index of the [b]first[/b] occurrence of [param what] in this "
"string, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the end of the string.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"Team\".find(\"I\")) # Prints -1\n"
"\n"
"print(\"Potato\".find(\"t\"))    # Prints 2\n"
"print(\"Potato\".find(\"t\", 3)) # Prints 4\n"
"print(\"Potato\".find(\"t\", 5)) # Prints -1\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"Team\".Find(\"I\")); // Prints -1\n"
"\n"
"GD.Print(\"Potato\".Find(\"t\"));    // Prints 2\n"
"GD.Print(\"Potato\".Find(\"t\", 3)); // Prints 4\n"
"GD.Print(\"Potato\".Find(\"t\", 5)); // Prints -1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you just want to know whether the string contains [param "
"what], use [method contains]. In GDScript, you may also use the [code]in[/"
"code] operator."
msgstr ""
"Renvoie l’index de la [b]première[/b] occurrence de [param what] dans cette "
"chaîne, ou [code]-1[/code] s’il n’y en a pas. Le début de la recherche peut "
"être spécifié avec [param from], continuant jusqu’à la fin de la chaîne.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"équipe\".find(\"je\") # Affiche -1\n"
"\n"
"print(\"Patate\".find(\"t\") # Affiche 2\n"
"print(\"Patate\".find(\"t\", 3)) # Affiche 4\n"
"print(\"Patate\".find(\"t\", 5) # Affiche -1\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"équipe\".Find(\"je\")); // Affiche -1\n"
"\n"
"GD.Print(\"Patate\".Find(\"t\")); // Affiche 2\n"
"GD.Print(\"Patate\".Find(\"t\", 3)); // Affiche 4\n"
"GD.Print(\"Patate\",Find(\"t\", 5)); // Affiche -1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Si vous voulez simplement savoir si la chaîne contient [param "
"what], utilisez [method contains]. En GDScript, vous pouvez également "
"utiliser l'opérateur [code]in[/code]."

msgid ""
"Returns the index of the [b]first[/b] [b]case-insensitive[/b] occurrence of "
"[param what] in this string, or [code]-1[/code] if there are none. The "
"starting search index can be specified with [param from], continuing to the "
"end of the string."
msgstr ""
"Renvoie l’index de la [b]première[/b] occurrence [b]insensible à la casse[/b] "
"de [param what] dans cette chaîne, ou [code]-1[/code] s’il n’y en a pas. "
"L’index de recherche de départ peut être spécifié avec [param from], "
"continuant jusqu’à la fin de la chaîne."

msgid ""
"Formats the string by replacing all occurrences of [param placeholder] with "
"the elements of [param values].\n"
"[param values] can be a [Dictionary], an [Array], or an [Object]. Any "
"underscores in [param placeholder] will be replaced with the corresponding "
"keys in advance. Array elements use their index as keys.\n"
"[codeblock]\n"
"# Prints \"Waiting for Godot is a play by Samuel Beckett, and Godot Engine is "
"named after it.\"\n"
"var use_array_values = \"Waiting for {0} is a play by {1}, and {0} Engine is "
"named after it.\"\n"
"print(use_array_values.format([\"Godot\", \"Samuel Beckett\"]))\n"
"\n"
"# Prints \"User 42 is Godot.\"\n"
"print(\"User {id} is {name}.\".format({\"id\": 42, \"name\": \"Godot\"}))\n"
"[/codeblock]\n"
"Some additional handling is performed when [param values] is an [Array]. If "
"[param placeholder] does not contain an underscore, the elements of the "
"[param values] array will be used to replace one occurrence of the "
"placeholder in order; If an element of [param values] is another 2-element "
"array, it'll be interpreted as a key-value pair.\n"
"[codeblock]\n"
"# Prints \"User 42 is Godot.\"\n"
"print(\"User {} is {}.\".format([42, \"Godot\"], \"{}\"))\n"
"print(\"User {id} is {name}.\".format([[\"id\", 42], [\"name\", "
"\"Godot\"]]))\n"
"[/codeblock]\n"
"When passing an [Object], the property names from [method "
"Object.get_property_list] are used as keys.\n"
"[codeblock]\n"
"# Prints \"Visible true, position (0, 0)\"\n"
"var node = Node2D.new()\n"
"print(\"Visible {visible}, position {position}\".format(node))\n"
"[/codeblock]\n"
"See also the [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_format_string.html]GDScript format string[/url] tutorial.\n"
"[b]Note:[/b] Each replacement is done sequentially for each element of [param "
"values], [b]not[/b] all at once. This means that if any element is inserted "
"and it contains another placeholder, it may be changed by the next "
"replacement. While this can be very useful, it often causes unexpected "
"results. If not necessary, make sure [param values]'s elements do not contain "
"placeholders.\n"
"[codeblock]\n"
"print(\"{0} {1}\".format([\"{1}\", \"x\"]))           # Prints \"x x\"\n"
"print(\"{0} {1}\".format([\"x\", \"{0}\"]))           # Prints \"x {0}\"\n"
"print(\"{a} {b}\".format({\"a\": \"{b}\", \"b\": \"c\"})) # Prints \"c c\"\n"
"print(\"{a} {b}\".format({\"b\": \"c\", \"a\": \"{b}\"})) # Prints \"{b} c\"\n"
"[/codeblock]\n"
"[b]Note:[/b] In C#, it's recommended to [url=https://learn.microsoft.com/en-"
"us/dotnet/csharp/language-reference/tokens/interpolated]interpolate strings "
"with \"$\"[/url], instead."
msgstr ""
"Formate la chaîne en remplaçant toutes les occurrences de [param placeholder] "
"par les éléments de [param values].\n"
"[param values] peut être un [Dictionary], un [Array] ou un [Object]. Tout "
"tiret-bas dans [param placeholder] sera remplacé par les clés correspondantes "
"à l'avance. Les éléments d'un tableau utilisent leur index comme clés.\n"
"[codeblock]\n"
"# Affiche \"En attendant Godot est une pièce de Samuel Beckett, et Godot "
"Engine est nommé d'après elle.\"\n"
"var utiliser_valeurs_tableau = \"En attendant {0} est une pièce de {1}, et "
"{0} Engine est nommé d'après elle.\"\n"
"print(utiliser_valeurs_tableau.format([\"Godot\", \"Samuel Beckett\"]))\n"
"\n"
"# Affiche \"L'utilisateur 42 est Godot.\"\n"
"print(\"L'utilisateur {id} est {nom}.\".format({\"id\": 42, \"nom\": "
"\"Godot\"}))\n"
"[/codeblock]\n"
"Des manipulations supplémentaires sont effectués lorsque [param values] est "
"un [Array]. Si [param placeholder] ne contient pas de tiret-bas, les éléments "
"du tableau [param values] seront utilisés pour remplacer une occurrence du "
"placeholder dans l'ordre, si un élément de [param values] est un autre "
"tableau de 2 éléments, il sera interprété comme une paire de valeurs-clés.\n"
"[codeblock]\n"
"# Affiche \"L'utilisateur 42 est Godot.\"\n"
"print(\"L'utilisateur {} est {}.\".format([42, \"Godot\"], \"{}\"))\n"
"print(\"L'utilisateur {id} est {nom}.\".format([[\"id\", 42], [\"nom\", "
"\"Godot\"]))\n"
"[/codeblock]\n"
"Lorsque vous passez un [Object], les noms de propriétés de [method "
"Object.get_property_list] sont utilisés comme clés.\n"
"[codeblock]\n"
"# Affiche \"Visible true, position (0, 0)\"\n"
"var noeud = Node2D.new()\n"
"print(\"Visible {visible}, position {position}\".format(noeud))\n"
"[/codeblock]\n"
"Voir aussi le tutoriel [url=$DOCS_URL/tutoriels/scripting/gdscript/"
"gdscript_format_string.html]chaîne de format GDScript[/url].\n"
"[b]Note :[/b] Chaque remplacement est effectué séquentiellement pour chaque "
"élément de [param values], [b]pas[/b] tous à la fois. Cela signifie que si un "
"élément est inséré et qu'il contient un autre placeholder, il peut être "
"modifié par le prochain remplacement. Bien que cela puisse être très utile, "
"cela provoque souvent des résultats inattendus. Si cela n'est pas nécessaire, "
"assurez-vous que les éléments de [param values] ne contiennent pas de "
"placeholders.\n"
"[codeblock]\n"
"print(\"{0} {1}\".format([\"{1}\", \"x\"])) # Affiche \"x x\"\n"
"print(\"{0} {1}\".format([\"x\", \"{0}\"])) # Affiche \"x {0}\"\n"
"print(\"{a} {b}\".format({\"a\": \"{b}\", \"b\": \"c\"})) # Affiche \"c c\"\n"
"print(\"{a} {b}\".format({\"b\": \"c\", \"a\": \"{b}\"})) # Affiche \"{b} "
"c\"\n"
"[/codeblock]\n"
"[b]Note:[/b] En C#, il est plutôt recommandé d'[url=https://"
"learn.microsoft.com/fr-fr/dotnet/csharp/language-reference/tokens/"
"interpolated]interpoler les chaînes avec \"$\"[/url]."

msgid ""
"If the string is a valid file path, returns the base directory name.\n"
"[codeblock]\n"
"var dir_path = \"/path/to/file.txt\".get_base_dir() # dir_path is \"/path/"
"to\"\n"
"[/codeblock]"
msgstr ""
"Si la chaîne est un chemin de fichier valide, renvoie le nom du répertoire de "
"base.\n"
"[codeblock]\n"
"var chemin_rep = \"/chemin/vers/fichier.txt\".get_base_dir() # chemin_rep "
"vaut \"/chemin/vers\"\n"
"[/codeblock]"

msgid ""
"If the string is a valid file path, returns the full file path, without the "
"extension.\n"
"[codeblock]\n"
"var base = \"/path/to/file.txt\".get_basename() # base is \"/path/to/file\"\n"
"[/codeblock]"
msgstr ""
"Si la chaîne est un chemin de fichier valide, renvoie le chemin de fichier "
"complet, sans l'extension.\n"
"[codeblock]\n"
"var base = \"/chemin/vers/fichier.txt\".get_basename() # la base est \"/"
"chemin/vers/fichier\"\n"
"[/codeblock]"

msgid ""
"If the string is a valid file name or path, returns the file extension "
"without the leading period ([code].[/code]). Otherwise, returns an empty "
"string.\n"
"[codeblock]\n"
"var a = \"/path/to/file.txt\".get_extension() # a is \"txt\"\n"
"var b = \"cool.txt\".get_extension()          # b is \"txt\"\n"
"var c = \"cool.font.tres\".get_extension()    # c is \"tres\"\n"
"var d = \".pack1\".get_extension()            # d is \"pack1\"\n"
"\n"
"var e = \"file.txt.\".get_extension()  # e is \"\"\n"
"var f = \"file.txt..\".get_extension() # f is \"\"\n"
"var g = \"txt\".get_extension()        # g is \"\"\n"
"var h = \"\".get_extension()           # h is \"\"\n"
"[/codeblock]"
msgstr ""
"Si la chaîne est un nom ou un chemin de fichier valide, renvoie l'extension "
"de fichier sans le point du début ([code].[/code]). Sinon, renvoie une chaîne "
"vide.\n"
"[codeblock]\n"
"var a = \"/chemin/vers/fichier.txt\".get_extension() # a vaut \"txt\"\n"
"var b = \"cool.txt\".get_extension()          # b vaut \"txt\"\n"
"var c = \"cool.font.tres\".get_extension()    # c vaut \"tres\"\n"
"var d = \".pack1\".get_extension()            # d vaut \"pack1\"\n"
"\n"
"var e = \"file.txt.\".get_extension()  # e vaut \"\"\n"
"var f = \"file.txt..\".get_extension() # f vaut \"\"\n"
"var g = \"txt\".get_extension()        # g vaut \"\"\n"
"var h = \"\".get_extension()           # h vaut \"\"\n"
"[/codeblock]"

msgid ""
"If the string is a valid file path, returns the file name, including the "
"extension.\n"
"[codeblock]\n"
"var file = \"/path/to/icon.png\".get_file() # file is \"icon.png\"\n"
"[/codeblock]"
msgstr ""
"Si la chaîne est un chemin de fichier valide, renvoie le nom du fichier, avec "
"l'extension.\n"
"[codeblock]\n"
"var fichier = \"/chemin/vers/icone.png\".get_file() # chemin vaut "
"\"icone.png\"\n"
"[/codeblock]"

msgid ""
"Splits the string using a [param delimiter] and returns the substring at "
"index [param slice]. Returns the original string if [param delimiter] does "
"not occur in the string. Returns an empty string if the [param slice] does "
"not exist.\n"
"This is faster than [method split], if you only need one substring.\n"
"[codeblock]\n"
"print(\"i/am/example/hi\".get_slice(\"/\", 2)) # Prints \"example\"\n"
"[/codeblock]"
msgstr ""
"Divise la chaîne en utilisant un délimiteur [param delimiter] et renvoie la "
"sous-chaîne à l'index [param slice]. Renvoie la chaîne d'origine si [param "
"delimiter] n’apparaît pas dans la chaîne. Renvoie une chaîne vide si l'index "
"[param slice] n'existe pas.\n"
"Ceci est plus rapide que [method split], si vous n'avez besoin qu'une seule "
"sous-chaîne.\n"
"[codeblock]\n"
"print(\"je/suis/exemple/hello\".get_slice(\"/\", 2)) # Affiche \"exemple\"\n"
"[/codeblock]"

msgid ""
"Returns the total number of slices when the string is split with the given "
"[param delimiter] (see [method split])."
msgstr ""
"Renvoie le nombre total de tranches quand la chaîne est divisée avec le "
"délimiteur [param delimiter] donné (voir [method split])."

msgid ""
"Splits the string using a Unicode character with code [param delimiter] and "
"returns the substring at index [param slice]. Returns an empty string if the "
"[param slice] does not exist.\n"
"This is faster than [method split], if you only need one substring."
msgstr ""
"Divise la chaîne en utilisant un caractère Unicode avec le code [param "
"delimiter] et renvoie la sous-chaîne à l'index [param slice]. Renvoie une "
"chaîne vide si l'index [param slice] n'existe pas.\n"
"Ceci est plus rapide que [method split], si vous n'avez besoin que d'une sous-"
"chaîne."

msgid ""
"Returns the 32-bit hash value representing the string's contents.\n"
"[b]Note:[/b] Strings with equal hash values are [i]not[/i] guaranteed to be "
"the same, as a result of hash collisions. On the contrary, strings with "
"different hash values are guaranteed to be different."
msgstr ""
"Renvoie la valeur de hachage de 32 bits représentant le contenu de la "
"chaîne.\n"
"[b]Note :[/b] Des chaînes avec des valeurs de hachage identiques ne sont "
"[i]pas[/i] garanties d'être identiques, à cause des collisions de hachage. À "
"l'inverse, les chaînes avec des valeurs de hachage différentes sont garanties "
"d'être différentes."

msgid ""
"Decodes a hexadecimal string as a [PackedByteArray].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var text = \"hello world\"\n"
"var encoded = text.to_utf8_buffer().hex_encode() # outputs "
"\"68656c6c6f20776f726c64\"\n"
"print(encoded.hex_decode().get_string_from_utf8())\n"
"[/gdscript]\n"
"[csharp]\n"
"var text = \"hello world\";\n"
"var encoded = text.ToUtf8Buffer().HexEncode(); // outputs "
"\"68656c6c6f20776f726c64\"\n"
"GD.Print(encoded.HexDecode().GetStringFromUtf8());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Décode une chaîne hexadécimale en un [PackedByteArray].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var texte = \"bonjour le monde\"\n"
"var encode = texte.to_utf8_buffer().hex_encode() # outputs "
"\"626f6e6a6f7572206c65206d6f6e6465\"\n"
"print(encode.hex_decode().get_string_from_utf8())\n"
"[/gdscript]\n"
"[csharp]\n"
"var texte = \"hello world\";\n"
"var encode = texte.ToUtf8Buffer().HexEncode(); // outputs "
"\"626f6e6a6f7572206c65206d6f6e6465\"\n"
"GD.Print(encode.HexDecode().GetStringFromUtf8());\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Converts the string representing a hexadecimal number into an [int]. The "
"string may be optionally prefixed with [code]\"0x\"[/code], and an additional "
"[code]-[/code] prefix for negative numbers.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"0xff\".hex_to_int()) # Prints 255\n"
"print(\"ab\".hex_to_int())   # Prints 171\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"0xff\".HexToInt()); // Prints 255\n"
"GD.Print(\"ab\".HexToInt());   // Prints 171\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Convertit la chaîne représentant un nombre hexadécimal en un entier [int]. La "
"chaîne peut éventuellement être préfixée avec [code]\"0x\"[/code], et un "
"préfixe supplémentaire [code]-[/code] pour les nombres négatifs.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"0xff\".hex_to_int()) # Affiche 255\n"
"print(\"ab\".hex_to_int())   # Affiche 171\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"0xff\".HexToInt()); // Affiche 255\n"
"GD.Print(\"ab\".HexToInt());   // Affiche 171\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Converts [param size] which represents a number of bytes into a human-"
"readable form.\n"
"The result is in [url=https://en.wikipedia.org/wiki/"
"Binary_prefix#IEC_prefixes]IEC prefix format[/url], which may end in either "
"[code]\"B\"[/code], [code]\"KiB\"[/code], [code]\"MiB\"[/code], [code]"
"\"GiB\"[/code], [code]\"TiB\"[/code], [code]\"PiB\"[/code], or [code]\"EiB\"[/"
"code]."
msgstr ""
"Convertit [param size] qui représente un certain nombre d'octets en une forme "
"facilement lisible.\n"
"Le résultat est au [url=https://fr.wikipedia.org/wiki/"
"Pr%C3%A9fixe_binaire#Tableaux_des_pr%C3%A9fixes_binaires_et_d%C3%A9cimaux]format "
"de préfixe CEI[/url], qui peut se terminer soit [code]\"B\"[/code], [code]"
"\"KiB\"[/code], [code]\"MiB\"[/code], [code]\"GiB\"[/code], [code]\"TiB\"[/"
"code], [code]\"PiB\"[/code], ou [code]\"EiB\"[/code]."

msgid ""
"Indents every line of the string with the given [param prefix]. Empty lines "
"are not indented. See also [method dedent] to remove indentation.\n"
"For example, the string can be indented with two tabulations using [code]"
"\"\\t\\t\"[/code], or four spaces using [code]\"    \"[/code]."
msgstr ""
"Indente chaque ligne de la chaîne avec le préfixe [param prefix] donné. Les "
"lignes vides ne sont pas indentées. Voir aussi [method dedent] pour supprimer "
"l'indentation.\n"
"Par exemple, la chaîne peut être indentée avec deux tabulations en utilisant "
"[code]\"\\t\\t\"[/code], ou quatre espaces utilisant [code]\"    \"[/code]."

msgid "Inserts [param what] at the given [param position] in the string."
msgstr ""
"Insère la chaîne [param what] à la position [param position] donnée dans la "
"chaîne."

msgid ""
"Returns [code]true[/code] if the string is a path to a file or directory, and "
"its starting point is explicitly defined. This method is the opposite of "
"[method is_relative_path].\n"
"This includes all paths starting with [code]\"res://\"[/code], [code]\"user://"
"\"[/code], [code]\"C:\\\"[/code], [code]\"/\"[/code], etc."
msgstr ""
"Renvoie [code]true[/code] si la chaîne est un chemin vers un fichier ou un "
"répertoire, et son point de départ est explicitement défini. Cette méthode "
"est le contraire de [method is_relative_path].\n"
"Cela inclut tous les chemins commençant par [code]\"res://\"[/code], [code]"
"\"user://\"[/code], [code]\"C:\\\"[/code], [code]\"/\"[/code], etc."

msgid ""
"Returns [code]true[/code] if the string's length is [code]0[/code] ([code]"
"\"\"[/code]). See also [method length]."
msgstr ""
"Renvoie [code]true[/code] si la longueur de la chaîne est de [code]0[/code] "
"([code]\"\"[/code]). Voir aussi [method length]."

msgid ""
"Returns [code]true[/code] if the string is a path, and its starting point is "
"dependent on context. The path could begin from the current directory, or the "
"current [Node] (if the string is derived from a [NodePath]), and may "
"sometimes be prefixed with [code]\"./\"[/code]. This method is the opposite "
"of [method is_absolute_path]."
msgstr ""
"Renvoie [code]true[/code] si la chaîne est un chemin, et son point de départ "
"est dépendant du contexte. Le chemin pourrait commencer du répertoire "
"courant, ou le [Node] actuel (si la chaîne est dérivée d'un [NodePath]), et "
"peut parfois être préfixée avec [code]\"./\"[/code]. Cette méthode est le "
"contraire de [method is_absolute_path]."

msgid ""
"Returns [code]true[/code] if all characters of this string can be found in "
"[param text] in their original order. This is not the same as [method "
"contains].\n"
"[codeblock]\n"
"var text = \"Wow, incredible!\"\n"
"\n"
"print(\"inedible\".is_subsequence_of(text)) # Prints true\n"
"print(\"Word!\".is_subsequence_of(text))    # Prints true\n"
"print(\"Window\".is_subsequence_of(text))   # Prints false\n"
"print(\"\".is_subsequence_of(text))         # Prints true\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si tous les caractères de cette chaîne peuvent être "
"trouvés dans le texte [param text] dans leur ordre original. Ce n'est pas la "
"même chose que [method contains].\n"
"[codeblock]\n"
"var texte = \"Wow, incroyable!\"\n"
"\n"
"print(\"inroable\".is_subsequence_of(texte)) # Affiche true\n"
"print(\"Woya!\".is_subsequence_of(texte))) # Affiche true\n"
"print(\"Window\".is_subsequence_of(texte))) # Affiche false\n"
"print(\"\".is_subsequence_of(text)) # Affiche true\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if all characters of this string can be found in "
"[param text] in their original order, [b]ignoring case[/b]. This is not the "
"same as [method containsn]."
msgstr ""
"Renvoie [code]true[/code] si tous les caractères de cette chaîne peuvent être "
"trouvés dans le texte [param text] dans leur ordre original, [b]ignorant la "
"casse[/b]. Ce n'est pas la même chose que [method containsn]."

msgid ""
"Returns [code]true[/code] if this string is a valid ASCII identifier. A valid "
"ASCII identifier may contain only letters, digits, and underscores ([code]_[/"
"code]), and the first character may not be a digit.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_ascii_identifier())    # Prints true\n"
"print(\"TYPE_FLOAT\".is_valid_ascii_identifier()) # Prints true\n"
"print(\"1st_method\".is_valid_ascii_identifier()) # Prints false\n"
"print(\"MyMethod#2\".is_valid_ascii_identifier()) # Prints false\n"
"[/codeblock]\n"
"See also [method is_valid_unicode_identifier]."
msgstr ""
"Renvoie [code]true[/code] si cette chaîne est un identifiant ASCII valide. Un "
"identifiant ASCII valide ne peut contenir que des lettres, des chiffres et "
"des tirets bas ([code]_[/code]) et le premier caractère ne peut pas être un "
"chiffre.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_ascii_identifier())    # Affiche true\n"
"print(\"TYPE_FLOAT\".is_valid_ascii_identifier()) # Affiche true\n"
"print(\"1st_method\".is_valid_ascii_identifier()) # Affiche false\n"
"print(\"MyMethod#2\".is_valid_ascii_identifier()) # Affiche false\n"
"[/codeblock]\n"
"Voir aussi [method is_valid_unicode_identifier]."

msgid ""
"Returns [code]true[/code] if this string is a valid file name. A valid file "
"name cannot be empty, begin or end with space characters, or contain "
"characters that are not allowed ([code]:[/code] [code]/[/code] [code]\\[/"
"code] [code]?[/code] [code]*[/code] [code]\"[/code] [code]|[/code] [code]%[/"
"code] [code]<[/code] [code]>[/code])."
msgstr ""
"Renvoie [code]true[/code] si cette chaîne est un nom de fichier valide. Un "
"nom de fichier valide ne peut pas être vide, commencer ou finir avec des "
"espaces, ou contenir des caractères qui ne sont pas autorisés ([code]:[/code] "
"[code]/[/code] [code]\\[/code] [code]?[/code] [code]*[/code] [code]\"[/code] "
"[code]|[/code] [code]%[/code] [code]<[/code] [code]>[/code])."

msgid ""
"Returns [code]true[/code] if this string represents a valid floating-point "
"number. A valid float may contain only digits, one decimal point ([code].[/"
"code]), and the exponent letter ([code]e[/code]). It may also be prefixed "
"with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. Any valid "
"integer is also a valid float (see [method is_valid_int]). See also [method "
"to_float].\n"
"[codeblock]\n"
"print(\"1.7\".is_valid_float())   # Prints true\n"
"print(\"24\".is_valid_float())    # Prints true\n"
"print(\"7e3\".is_valid_float())   # Prints true\n"
"print(\"Hello\".is_valid_float()) # Prints false\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si cette chaîne représente un nombre à virgule "
"flottante valide. Un flottant valide ne peut contenir que des chiffres, un "
"point décimal ([code].[/code]), et la lettre d'exposant ([code]e[/code]). Il "
"peut également être préfixé avec un signe positif ([code]+[/code]) ou négatif "
"([code]-[/code]). Tout entier valide est également un flottant valide (voir "
"[method is_valid_int]). Voir aussi [method to_float].\n"
"[codeblock]\n"
"print(\"1.7\".is_valid_float())   # Affiche true\n"
"print(\"24\".is_valid_float())    # Affiche true\n"
"print(\"7e3\".is_valid_float())   # Affiche true\n"
"print(\"Hello\".is_valid_float()) # Affiche false\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string is a valid hexadecimal number. A "
"valid hexadecimal number only contains digits or letters [code]A[/code] to "
"[code]F[/code] (either uppercase or lowercase), and may be prefixed with a "
"positive ([code]+[/code]) or negative ([code]-[/code]) sign.\n"
"If [param with_prefix] is [code]true[/code], the hexadecimal number needs to "
"prefixed by [code]\"0x\"[/code] to be considered valid.\n"
"[codeblock]\n"
"print(\"A08E\".is_valid_hex_number())    # Prints true\n"
"print(\"-AbCdEf\".is_valid_hex_number()) # Prints true\n"
"print(\"2.5\".is_valid_hex_number())     # Prints false\n"
"\n"
"print(\"0xDEADC0DE\".is_valid_hex_number(true)) # Prints true\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si cette chaîne est un nombre hexadécimal valide. "
"Un nombre hexadécimal valide ne contient que des chiffres ou des lettres de "
"[code]A[/code] à [code]F[/code] (en majuscule ou minuscule), et peut être "
"préfixé avec un signe positif ([code]+[/code]) ou négatif ([code]-[/code]).\n"
"Si [param with_prefix] vaut [code]true[/code], le nombre hexadécimal doit "
"être préfixé par [code]\"0x\"[/code] pour être considéré valide.\n"
"[codeblock]\n"
"print(\"A08E\".is_valid_hex_number())    # Affiche true\n"
"print(\"-AbCdEf\".is_valid_hex_number()) # Affiche true\n"
"print(\"2.5\".is_valid_hex_number())     # Affiche false\n"
"\n"
"print(\"0xDEADC0DE\".is_valid_hex_number(true)) # Affiche true\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string is a valid color in hexadecimal HTML "
"notation. The string must be a hexadecimal value (see [method "
"is_valid_hex_number]) of either 3, 4, 6 or 8 digits, and may be prefixed by a "
"hash sign ([code]#[/code]). Other HTML notations for colors, such as names or "
"[code]hsl()[/code], are not considered valid. See also [method Color.html]."
msgstr ""
"Renvoie [code]true[/code] si cette chaîne est une couleur valide dans la "
"notation HTML hexadécimale. La chaîne doit être une valeur hexadécimale (voir "
"[method is_valid_hex_number]) de 3, 4, 6 ou 8 chiffres, et peut être préfixée "
"par un signe de croisillon ([code]#[/code]). D'autres notations HTML pour les "
"couleurs, telles que les noms ou [code]hsl()[/code], ne sont pas considérées "
"valides. Voir aussi [method Color.html]."

msgid "Use [method is_valid_ascii_identifier] instead."
msgstr "Utilisez [method is_valid_ascii_identifier] à la place."

msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]), "
"and the first character may not be a digit.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_identifier())    # Prints true\n"
"print(\"TYPE_FLOAT\".is_valid_identifier()) # Prints true\n"
"print(\"1st_method\".is_valid_identifier()) # Prints false\n"
"print(\"MyMethod#2\".is_valid_identifier()) # Prints false\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si cette chaîne est un identifiant valide. Un "
"identifiant valide ne peut contenir que des lettres, des chiffres et des "
"tirets du bas ([code]_[/code]), et le premier caractère ne peut pas être un "
"chiffre.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_identifier())    # Affiche true\n"
"print(\"TYPE_FLOAT\".is_valid_identifier()) # Affiche true\n"
"print(\"1ere_methode\".is_valid_identifier()) # Affiche false\n"
"print(\"MaMethode#2\".is_valid_identifier()) # Affiche false\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string represents a valid integer. A valid "
"integer only contains digits, and may be prefixed with a positive ([code]+[/"
"code]) or negative ([code]-[/code]) sign. See also [method to_int].\n"
"[codeblock]\n"
"print(\"7\".is_valid_int())    # Prints true\n"
"print(\"1.65\".is_valid_int()) # Prints false\n"
"print(\"Hi\".is_valid_int())   # Prints false\n"
"print(\"+3\".is_valid_int())   # Prints true\n"
"print(\"-12\".is_valid_int())  # Prints true\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si cette chaîne représente un entier valide. Un "
"entier valide ne contient que des chiffres et peut être préfixé avec un signe "
"positif ([code]+[/code]) ou négatif ([code]-[/code]). Voir aussi [method "
"to_int].\n"
"[codeblock]\n"
"print(\"7\".is_valid_int()) # Affiche true\n"
"print(\"1.65\".is_valid_int()) # Affiche false\n"
"print(\"Hello\".is_valid_int()) # Affiche false\n"
"print(\"+3\".is_valid_int()) # Affiche true\n"
"print(\"-12\".is_valid_int()) # Affiche true\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string represents a well-formatted IPv4 or "
"IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/"
"Reserved_IP_addresses]reserved IP addresses[/url] such as [code]\"0.0.0.0\"[/"
"code] and [code]\"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\"[/code] as valid."
msgstr ""
"Renvoie [code]true[/code] si cette chaîne représente une adresse IPv4 ou IPv6 "
"bien formatée. Cette méthode considère les [url=https://en.wikipedia.org/wiki/"
"Reserved_IP_addresses]adresses IP réservées[/url] comme [code]\"0.0.0.0\"[/"
"code] et [code]\"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\"[/code] comme "
"valides."

msgid ""
"Returns [code]true[/code] if this string is a valid Unicode identifier.\n"
"A valid Unicode identifier must begin with a Unicode character of class "
"[code]XID_Start[/code] or [code]\"_\"[/code], and may contain Unicode "
"characters of class [code]XID_Continue[/code] in the other positions.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_unicode_identifier())      # Prints true\n"
"print(\"1st_method\".is_valid_unicode_identifier())   # Prints false\n"
"print(\"MyMethod#2\".is_valid_unicode_identifier())   # Prints false\n"
"print(\"állóképesség\".is_valid_unicode_identifier()) # Prints true\n"
"print(\"выносливость\".is_valid_unicode_identifier()) # Prints true\n"
"print(\"体力\".is_valid_unicode_identifier())         # Prints true\n"
"[/codeblock]\n"
"See also [method is_valid_ascii_identifier].\n"
"[b]Note:[/b] This method checks identifiers the same way as GDScript. See "
"[method TextServer.is_valid_identifier] for more advanced checks."
msgstr ""
"Renvoie [code]true[/code] si cette chaîne est un identifiant Unicode valide.\n"
"Un identifiant Unicode valide doit commencer par un caractère Unicode de la "
"classe [code]XID_Start[/code] ou [code]\"_\"[/code], et peut contenir des "
"caractères Unicode de la classe [code]XID_Continue[/code] dans les autres "
"positions.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_unicode_identifier())      # Affiche true\n"
"print(\"1ere_methode\".is_valid_unicode_identifier())   # Affiche false\n"
"print(\"MaMethode#2\".is_valid_unicode_identifier())   # Affiche false\n"
"print(\"állóképesség\".is_valid_unicode_identifier()) # Affiche true\n"
"print(\"выносливость\".is_valid_unicode_identifier()) # Affiche true\n"
"print(\"体力\".is_valid_unicode_identifier())         # Affiche true\n"
"[/codeblock]\n"
"Voir aussi [method is_valid_ascii_identifier].\n"
"[b]Note :[/b] Cette méthode vérifie les identifiants de la même manière en "
"GDScript. Voir [method TextServer.is_valid_identifier] pour des vérifications "
"plus avancées."

msgid ""
"Returns the concatenation of [param parts]' elements, with each element "
"separated by the string calling this method. This method is the opposite of "
"[method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fruits = [\"Apple\", \"Orange\", \"Pear\", \"Kiwi\"]\n"
"\n"
"print(\", \".join(fruits))  # Prints \"Apple, Orange, Pear, Kiwi\"\n"
"print(\"---\".join(fruits)) # Prints \"Apple---Orange---Pear---Kiwi\"\n"
"[/gdscript]\n"
"[csharp]\n"
"string[] fruits = [\"Apple\", \"Orange\", \"Pear\", \"Kiwi\"];\n"
"\n"
"// In C#, this method is static.\n"
"GD.Print(string.Join(\", \", fruits));  // Prints \"Apple, Orange, Pear, "
"Kiwi\"\n"
"GD.Print(string.Join(\"---\", fruits)); // Prints \"Apple---Orange---Pear---"
"Kiwi\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la concaténation des éléments du tableau [param parts], avec chaque "
"élément séparé par la chaîne appelant cette méthode. Cette méthode est "
"l'opposé de [method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fruits = [\"Pomme\", \"Orange\", \"Poire\", \"Kiwi\"]\n"
"\n"
"print(\", \".join(fruits))  # Affiche \"Pomme, Orange, Poire, Kiwi\"\n"
"print(\"---\".join(fruits)) # Affiche \"Pomme---Orange---Poire---Kiwi\"\n"
"[/gdscript]\n"
"[csharp]\n"
"string[] fruits = [\"Pomme\", \"Orange\", \"Poire\", \"Kiwi\"];\n"
"\n"
"// En C#, cette méthode est statique.\n"
"GD.Print(string.Join(\", \", fruits));  // Affiche \"Pomme, Orange, Poire, "
"Kiwi\"\n"
"GD.Print(string.Join(\"---\", fruits)); // Affiche \"Pomme---Orange---Poire---"
"Kiwi\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard. Because it closely matches the C standard, it is possible to use "
"[method c_unescape] to unescape the string, if necessary."
msgstr ""
"Renvoie une copie de la chaîne avec les caractères spéciaux échappés en "
"utilisant la norme JSON. Comme elle correspond fortement à la norme C, il est "
"possible d'utiliser [method c_unescape] pour échapper la chaîne, si "
"nécessaire."

msgid ""
"Returns the first [param length] characters from the beginning of the string. "
"If [param length] is negative, strips the last [param length] characters from "
"the string's end.\n"
"[codeblock]\n"
"print(\"Hello World!\".left(3))  # Prints \"Hel\"\n"
"print(\"Hello World!\".left(-4)) # Prints \"Hello Wo\"\n"
"[/codeblock]"
msgstr ""
"Renvoie les [param length] premiers caractères du début de la chaîne. Si "
"[param length] est négatif, retire les [param length] derniers caractères de "
"la fin de la chaîne.\n"
"[codeblock]\n"
"print(\"Bonjour monde!\".left(3)) # Affiche \"Bon\"\n"
"print(\"Bonjour monde!\".left(-4)) # Affiche \"Bonjour mo\"\n"
"[/codeblock]"

msgid ""
"Returns the number of characters in the string. Empty strings ([code]\"\"[/"
"code]) always return [code]0[/code]. See also [method is_empty]."
msgstr ""
"Renvoie le nombre de caractères dans la chaîne. Les chaînes vides ([code]\"[/"
"code]) renvoient toujours [code]0[/code]. Voir aussi [method is_empty]."

msgid ""
"Formats the string to be at least [param min_length] long by adding [param "
"character]s to the left of the string, if necessary. See also [method rpad]."
msgstr ""
"Formate la chaîne pour qu'elle ait au moins [param min_length] caractères en "
"ajoutant [param character] caractères à gauche de la chaîne, si nécessaire. "
"Voir aussi [method rpad]."

msgid ""
"Removes a set of characters defined in [param chars] from the string's "
"beginning. See also [method rstrip].\n"
"[b]Note:[/b] [param chars] is not a prefix. Use [method trim_prefix] to "
"remove a single prefix, rather than a set of characters."
msgstr ""
"Retire un ensemble de caractères définis dans [param chars] du début de la "
"chaîne. Voir aussi [method rstrip].\n"
"[b]Note :[/b] [param chars] n'est pas un préfixe. Utilisez [method "
"trim_prefix] pour supprimer un seul préfixe, plutôt qu'un ensemble de "
"caractères."

msgid ""
"Does a simple expression match (also called \"glob\" or \"globbing\"), where "
"[code]*[/code] matches zero or more arbitrary characters and [code]?[/code] "
"matches any single character except a period ([code].[/code]). An empty "
"string or empty expression always evaluates to [code]false[/code]."
msgstr ""
"Fait une correspondance simple de l'expression (aussi appelé \"glob\" ou "
"\"globbing\"), où [code]*[/code] correspond à 0 ou plus caractères "
"arbitraires, et [code]?[/code] correspond à n'importe quel caractère unique "
"sauf un point ([code].[/code]). Une chaîne ou expression vide est toujours "
"évaluée à [code]false[/code]."

msgid ""
"Does a simple [b]case-insensitive[/b] expression match, where [code]*[/code] "
"matches zero or more arbitrary characters and [code]?[/code] matches any "
"single character except a period ([code].[/code]). An empty string or empty "
"expression always evaluates to [code]false[/code]."
msgstr ""
"Fait une correspondance simple [b]sensible à la casse[/b] de l'expression, où "
"[code]*[/code] correspond à 0 ou plus caractères arbitraires, et [code]?[/"
"code] correspond à n'importe quel caractère unique sauf un point ([code].[/"
"code]). Une chaîne ou expression vide est toujours évaluée à [code]false[/"
"code]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the "
"string as a [PackedByteArray]."
msgstr ""
"Renvoie le [url=https://fr.wikipedia.org/wiki/MD5]hachage MD5[/url] de la "
"chaîne en tant que [PackedByteArray]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the "
"string as another [String]."
msgstr ""
"Renvoie le [url=https://fr.wikipedia.org/wiki/MD5]hachage MD5[/url] de la "
"chaîne en tant qu'autre [String]."

msgid ""
"Performs a [b]case-sensitive[/b], [i]natural order[/i] comparison to another "
"string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, "
"or [code]0[/code] if equal. \"Less than\" or \"greater than\" are determined "
"by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode "
"code points[/url] of each string, which roughly matches the alphabetical "
"order.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalnocasecmp_to], [method "
"filecasecmp_to], and [method nocasecmp_to]."
msgstr ""
"Effectue une comparaison [b]sensible à la casse[/b] [i]dans l'ordre naturel[/"
"i] avec une autre chaîne. Renvoie [code]-1[/code] si elle est inférieure, "
"[code]1[/code] si elle est supérieure, ou [code]0[/code] si elles sont "
"égales. \"Inférieur à\" et \"supérieur à\" sont déterminés par [url=https://"
"fr.m.wikipedia.org/wiki/Table_des_caract%C3%A8res_Unicode]points de code "
"Unicode[/url] de chaque chaîne, qui correspond approximativement à l'ordre "
"alphabétique.\n"
"Lorsqu'elle est utilisée pour le tri, la comparaison dans l'ordre naturel "
"ordonne des séquences de nombres par la valeur combinée de chaque chiffre "
"comme s'y attend souvent, au lieu de la valeur du chiffre seul. Une séquence "
"triée de chaînes de numéros sera [code][\"1, \"2\", \"3\", ...][/code], et "
"pas [code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"Si la comparaison des caractères atteint la fin d'une chaîne, mais que "
"l'autre chaîne contient plus de caractères, elle utilisera alors la longueur "
"comme facteur déterminant : [code]1[/code] sera renvoyé si cette chaîne est "
"plus longue que la chaîne [param to], ou [code]-1[/code] si elle est plus "
"courte. Notez que la longueur des chaînes vides est toujours de [code]0[/"
"code].\n"
"Pour obtenir un résultat booléen [bool] d'une comparaison de chaînes, "
"utilisez plutôt l'opérateur [code]==[/code]. Voir aussi [method "
"naturalnocasecmp_to], [method filecasecmp_to], et [method nocasecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b], [i]natural order[/i] comparison to "
"another string. Returns [code]-1[/code] if less than, [code]1[/code] if "
"greater than, or [code]0[/code] if equal. \"Less than\" or \"greater than\" "
"are determined by the [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]Unicode code points[/url] of each string, which "
"roughly matches the alphabetical order. Internally, lowercase characters are "
"converted to uppercase for the comparison.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalcasecmp_to], [method "
"filenocasecmp_to], and [method casecmp_to]."
msgstr ""
"Effectue une comparaison [b]insensible à la casse[/b] [i]dans l'ordre "
"naturel[/i] avec une autre chaîne. Renvoie [code]-1[/code] si elle est "
"inférieure, [code]1[/code] si elle est supérieure, ou [code]0[/code] si elles "
"sont égales. \"Inférieur à\" et \"supérieur à\" sont déterminés par "
"[url=https://fr.m.wikipedia.org/wiki/Table_des_caract%C3%A8res_Unicode]points "
"de code Unicode[/url] de chaque chaîne, qui correspond approximativement à "
"l'ordre alphabétique. En interne, les caractères minuscules sont convertis en "
"majuscules pour la comparaison.\n"
"Lorsqu'elle est utilisée pour le tri, la comparaison dans l'ordre naturel "
"ordonne des séquences de nombres par la valeur combinée de chaque chiffre "
"comme s'y attend souvent, au lieu de la valeur du chiffre seul. Une séquence "
"triée de chaînes de numéros sera [code][\"1, \"2\", \"3\", ...][/code], et "
"pas [code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"Si la comparaison des caractères atteint la fin d'une chaîne, mais que "
"l'autre chaîne contient plus de caractères, elle utilisera alors la longueur "
"comme facteur déterminant : [code]1[/code] sera renvoyé si cette chaîne est "
"plus longue que la chaîne [param to], ou [code]-1[/code] si elle est plus "
"courte. Notez que la longueur des chaînes vides est toujours de [code]0[/"
"code].\n"
"Pour obtenir un résultat booléen [bool] d'une comparaison de chaînes, "
"utilisez plutôt l'opérateur [code]==[/code]. Voir aussi [method "
"naturalcasecmp_to], [method filenocasecmp_to], et [method casecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b] comparison to another string. Returns "
"[code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/"
"code] if equal. \"Less than\" or \"greater than\" are determined by the "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code "
"points[/url] of each string, which roughly matches the alphabetical order. "
"Internally, lowercase characters are converted to uppercase for the "
"comparison.\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method casecmp_to], [method filenocasecmp_to], "
"and [method naturalnocasecmp_to]."
msgstr ""
"Effectue une comparaison [b]insensible à la casse[/b] avec une autre chaîne. "
"Renvoie [code]-1[/code] si elle est inférieure, [code]1[/code] si elle est "
"supérieure, ou [code]0[/code] si elles sont égales. \"Inférieur à\" et "
"\"supérieur à\" sont déterminés par [url=https://fr.m.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]points de code Unicode[/url] de chaque "
"chaîne, qui correspond approximativement à l'ordre alphabétique. En interne, "
"les caractères minuscules sont convertis en majuscules pour la comparaison.\n"
"Si la comparaison des caractères atteint la fin d'une chaîne, mais que "
"l'autre chaîne contient plus de caractères, elle utilisera alors la longueur "
"comme facteur déterminant : [code]1[/code] sera renvoyé si cette chaîne est "
"plus longue que la chaîne [param to], ou [code]-1[/code] si elle est plus "
"courte. Notez que la longueur des chaînes vides est toujours de [code]0[/"
"code].\n"
"Pour obtenir un résultat booléen [bool] d'une comparaison de chaînes, "
"utilisez plutôt l'opérateur [code]==[/code]. Voir aussi [method casecmp_to], "
"[method filenocasecmp_to], et [method naturalnocasecmp_to]."

msgid ""
"Converts a [float] to a string representation of a decimal number, with the "
"number of decimal places specified in [param decimals].\n"
"If [param decimals] is [code]-1[/code] as by default, the string "
"representation may only have up to 14 significant digits, with digits before "
"the decimal point having priority over digits after.\n"
"Trailing zeros are not included in the string. The last digit is rounded, not "
"truncated.\n"
"[codeblock]\n"
"String.num(3.141593)     # Returns \"3.141593\"\n"
"String.num(3.141593, 3)  # Returns \"3.142\"\n"
"String.num(3.14159300)   # Returns \"3.141593\"\n"
"\n"
"# Here, the last digit will be rounded up,\n"
"# which reduces the total digit count, since trailing zeros are removed:\n"
"String.num(42.129999, 5) # Returns \"42.13\"\n"
"\n"
"# If `decimals` is not specified, the maximum number of significant digits is "
"14:\n"
"String.num(-0.0000012345432123454321)     # Returns \"-0.00000123454321\"\n"
"String.num(-10000.0000012345432123454321) # Returns \"-10000.0000012345\"\n"
"[/codeblock]"
msgstr ""
"Convertit un [float] en une représentation en chaîne d'un nombre décimal, "
"avec le nombre de décimales spécifié dans [param decimals].\n"
"Si [param decimals] vaut [code]-1[/code] comme par défaut, la représentation "
"en chaîne peut avoir seulement jusqu'à 14 chiffres significatifs, avec les "
"chiffres avant la virgule ayant priorité sur les chiffres après.\n"
"Les zéros de fin ne sont pas inclus dans la chaîne. Le dernier chiffre est "
"arrondi, pas tronqué.\n"
"[codeblock]\n"
"String.num(3.141593)     # Renvoie \"3.141593\"\n"
"String.num(3.141593, 3)  # Renvoie \"3.142\"\n"
"String.num(3.14159300)   # Renvoie \"3.141593\"\n"
"\n"
"# Ici, le dernier chiffre sera arrondi,\n"
"# ce qui réduit le nombre total de chiffres, puisque les zéros de fin sont "
"supprimés :\n"
"String.num(42.129999, 5) # Renvoie \"42.13\"\n"
"\n"
"# Si `decimals` n  est pas spécifié, le nombre maximal de chiffres "
"significatifs est de 14 :\n"
"String.num(-0.0000012345432123454321)     # Renvoie \"-0.00000123454321\"\n"
"String.num(-10000.0000012345432123454321) # Renvoie \"-10000.0000012345\"\n"
"[/codeblock]"

msgid ""
"Converts the given [param number] to a string representation, with the given "
"[param base].\n"
"By default, [param base] is set to decimal ([code]10[/code]). Other common "
"bases in programming include binary ([code]2[/code]), [url=https://"
"en.wikipedia.org/wiki/Octal]octal[/url] ([code]8[/code]), hexadecimal "
"([code]16[/code]).\n"
"If [param capitalize_hex] is [code]true[/code], digits higher than 9 are "
"represented in uppercase."
msgstr ""
"Convertit le nombre [param number] donné en une représentation en chaîne, "
"avec la [param base] donnée.\n"
"Par défaut, [param base] est définie en décimal ([code]10[/code]). D'autres "
"bases communes en programmation sont par exemple le binaire ([code]2[/code]), "
"l'[url=https://fr.wikipedia.org/wiki/Syst%C3%A8me_octal]octal[/url] ([code]8[/"
"code]), et l'hexadécimal ([code]16[/code]).\n"
"Si [param capitalize_hex] vaut [code]true[/code], les chiffres supérieurs à 9 "
"sont représentés en majuscules."

msgid ""
"Converts the given [param number] to a string representation, in scientific "
"notation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var n = -5.2e8\n"
"print(n)                        # Prints -520000000\n"
"print(String.num_scientific(n)) # Prints -5.2e+08\n"
"[/gdscript]\n"
"[csharp]\n"
"// This method is not implemented in C#.\n"
"// Use `string.ToString()` with \"e\" to achieve similar results.\n"
"var n = -5.2e8f;\n"
"GD.Print(n);                // Prints -520000000\n"
"GD.Print(n.ToString(\"e1\")); // Prints -5.2e+008\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, this method is not implemented. To achieve similar "
"results, see C#'s [url=https://learn.microsoft.com/en-us/dotnet/standard/base-"
"types/standard-numeric-format-strings]Standard numeric format strings[/url]."
msgstr ""
"Convertit le nombre [param number] donné en une représentation en chaîne, en "
"notation scientifique.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var n = -5.2e8\n"
"print(n)                        # Affiche -520000000\n"
"print(String.num_scientific(n)) # Affiche -5.2e+08\n"
"[/gdscript]\n"
"[csharp]\n"
"// Cette méthode n'est pas implémentée en C#.\n"
"// Utilisez `string.ToString()` avec \"e\" pour obtenir un résultat "
"similaire.\n"
"var n = -5.2e8f;\n"
"GD.Print(n);                // Affiche -520000000\n"
"GD.Print(n.ToString(\"e1\")); // Affiche -5.2e+008\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] En C#, cette méthode n'est pas implémentée. Pour obtenir des "
"résultats similaires, voir [url=https://learn.microsoft.com/fr-fr/dotnet/"
"standard/base-types/standard-numeric-format-strings]Chaînes de format "
"numérique standard[/url] du C#."

msgid ""
"Converts the given unsigned [int] to a string representation, with the given "
"[param base].\n"
"By default, [param base] is set to decimal ([code]10[/code]). Other common "
"bases in programming include binary ([code]2[/code]), [url=https://"
"en.wikipedia.org/wiki/Octal]octal[/url] ([code]8[/code]), hexadecimal "
"([code]16[/code]).\n"
"If [param capitalize_hex] is [code]true[/code], digits higher than 9 are "
"represented in uppercase."
msgstr ""
"Convertit le [int] non signé donné en une représentation en chaîne, avec la "
"[param base] donnée.\n"
"Par défaut, [param base] est définie en décimal ([code]10[/code]). D'autres "
"bases communes en programmation sont par exemple le binaire ([code]2[/code]), "
"l'[url=https://fr.wikipedia.org/wiki/Syst%C3%A8me_octal]octal[/url] ([code]8[/"
"code]), et l'hexadécimal ([code]16[/code]).\n"
"Si [param capitalize_hex] vaut [code]true[/code], les chiffres supérieurs à 9 "
"sont représentés en majuscules."

msgid ""
"Formats the string representing a number to have an exact number of [param "
"digits] [i]after[/i] the decimal point."
msgstr ""
"Formate la chaîne représentant un nombre pour avoir exactement [param digits] "
"chiffres [i]après[/i] la virgule."

msgid ""
"Formats the string representing a number to have an exact number of [param "
"digits] [i]before[/i] the decimal point."
msgstr ""
"Formate la chaîne représentant un nombre pour avoir exactement [param digits] "
"chiffres [i]avant[/i] la virgule."

msgid ""
"Concatenates [param path] at the end of the string as a subpath, adding "
"[code]/[/code] if necessary.\n"
"[b]Example:[/b] [code]\"this/is\".path_join(\"path\") == \"this/is/path\"[/"
"code]."
msgstr ""
"Concatène [param path] à la fin de la chaîne comme sous-chemin, ajoutant "
"[code]/[/code] si nécessaire.\n"
"[b]Exemple :[/b] [code]\"cest/le\".path_join(\"chemin\") == \"cest/le/"
"chemin\"[/code]."

msgid ""
"Removes all occurrences of the Unicode character with code [param what]. "
"Faster version of [method replace] when the key is only one character long "
"and the replacement is [code]\"\"[/code]."
msgstr ""
"Retire toutes les occurrences du caractère Unicode avec le code [param what]. "
"Version plus rapide de [method replace] lorsque la clé n'est longue que d'un "
"caractère et que le remplacement est [code]\"\"[/code]."

msgid ""
"Removes any occurrence of the characters in [param chars]. See also [method "
"remove_char]."
msgstr ""
"Retire toute occurrence des caractères de la chaîne [param chars]. Voir aussi "
"[method remove_char]."

msgid ""
"Repeats this string a number of times. [param count] needs to be greater than "
"[code]0[/code]. Otherwise, returns an empty string."
msgstr ""
"Répète cette chaîne un certain nombre de fois. [param count] doit être "
"supérieur à [code]0[/code]. Sinon, renvoie une chaîne vide."

msgid ""
"Replaces all occurrences of [param what] inside the string with the given "
"[param forwhat]."
msgstr ""
"Remplace toutes les occurrences de la chaîne [param what] dans la chaîne "
"courante avec la chaîne [param forwhat] donnée."

msgid ""
"Replaces all occurrences of the Unicode character with code [param key] with "
"the Unicode character with code [param with]. Faster version of [method "
"replace] when the key is only one character long. To get a single character "
"use [code]\"X\".unicode_at(0)[/code] (note that some strings, like compound "
"letters and emoji, can be composed of multiple unicode codepoints, and will "
"not work with this method, use [method length] to make sure)."
msgstr ""
"Remplace toutes les occurrences du caractère Unicode avec le code [param key] "
"par le caractère Unicode avec le code [param with]. Version plus rapide de "
"[method replace] lorsque la clé est composée seulement d'un caractère. Pour "
"obtenir un seul caractère, utilisez [code]\"X\".unicode_at(0)[/code] (notez "
"que certaines chaînes, comme les lettres composés et les émojis, peuvent être "
"composées de plusieurs codes unicode, et ne fonctionneront pas avec cette "
"méthode, utilisez [method length] pour vous en assurer)."

msgid ""
"Replaces any occurrence of the characters in [param keys] with the Unicode "
"character with code [param with]. See also [method replace_char]."
msgstr ""
"Remplace toute occurrence des caractères de la chaîne [param keys] par le "
"caractère Unicode avec le code [param with]. Voir aussi [method replace_char]."

msgid ""
"Replaces all [b]case-insensitive[/b] occurrences of [param what] inside the "
"string with the given [param forwhat]."
msgstr ""
"Remplace toutes les occurrences [b]insensibles à la casse[/b] de la chaîne "
"[param what] à l'intérieur de la chaîne par la chaîne [param forwhat] donnée."

msgid ""
"Returns the copy of this string in reverse order. This operation works on "
"unicode codepoints, rather than sequences of codepoints, and may break things "
"like compound letters or emojis."
msgstr ""
"Renvoie la copie de cette chaîne en ordre inverse. Cette opération fonctionne "
"sur des points de code unicode, plutôt que sur des séquences de points de "
"code, et peut casser des choses comme les lettres composées ou les emojis."

msgid ""
"Returns the index of the [b]last[/b] occurrence of [param what] in this "
"string, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the beginning of the string. This "
"method is the reverse of [method find]."
msgstr ""
"Renvoie l'index de la [b]dernière[/b] occurrence de la chaîne [param what] "
"dans cette chaîne, ou [code]-1[/code] s'il n'y en a pas. Le début de la "
"recherche peut être spécifié avec [param from], continuant vers le début de "
"la chaîne. Cette méthode est l'inverse de [method find]."

msgid ""
"Returns the index of the [b]last[/b] [b]case-insensitive[/b] occurrence of "
"[param what] in this string, or [code]-1[/code] if there are none. The "
"starting search index can be specified with [param from], continuing to the "
"beginning of the string. This method is the reverse of [method findn]."
msgstr ""
"Renvoie l'index de la [b]dernière[/b] occurrence [b]sensible à la casse[/b] "
"de la chaîne [param what] dans cette chaîne, ou [code]-1[/code] s'il n'y en a "
"pas. Le début de la recherche peut être spécifié avec [param from], "
"continuant vers le début de la chaîne. Cette méthode est l'inverse de [method "
"find]."

msgid ""
"Returns the last [param length] characters from the end of the string. If "
"[param length] is negative, strips the first [param length] characters from "
"the string's beginning.\n"
"[codeblock]\n"
"print(\"Hello World!\".right(3))  # Prints \"ld!\"\n"
"print(\"Hello World!\".right(-4)) # Prints \"o World!\"\n"
"[/codeblock]"
msgstr ""
"Renvoie les [param length] derniers caractères depuis la fin de la chaîne. Si "
"[param length] est négatif, retire les [param length] premiers caractères "
"depuis le début de la chaîne.\n"
"[codeblock]\n"
"print(\"Bonjour monde!\".right(3))  # Prints \"de!\"\n"
"print(\"Bonjour monde!\".right(-4)) # Prints \"our monde!\"\n"
"[/codeblock]"

msgid ""
"Formats the string to be at least [param min_length] long, by adding [param "
"character]s to the right of the string, if necessary. See also [method lpad]."
msgstr ""
"Formate la chaîne pour être longue d'au moins [param min_length] caractères, "
"en ajoutant [param character] caractères à la droite de la chaîne, si "
"nécessaire. Voir aussi [method lpad]."

msgid ""
"Splits the string using a [param delimiter] and returns an array of the "
"substrings, starting from the end of the string. The splits in the returned "
"array appear in the same order as the original string. If [param delimiter] "
"is an empty string, each substring will be a single character.\n"
"If [param allow_empty] is [code]false[/code], empty strings between adjacent "
"delimiters are excluded from the array.\n"
"If [param maxsplit] is greater than [code]0[/code], the number of splits may "
"not exceed [param maxsplit]. By default, the entire string is split, which is "
"mostly identical to [method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var some_string = \"One,Two,Three,Four\"\n"
"var some_array = some_string.rsplit(\",\", true, 1)\n"
"\n"
"print(some_array.size()) # Prints 2\n"
"print(some_array[0])     # Prints \"One,Two,Three\"\n"
"print(some_array[1])     # Prints \"Four\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// In C#, there is no String.RSplit() method.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Divise une chaîne de caractères en utilisant une chaîne de délimitation "
"[param delimiter] et renvoie un tableau avec ces sous-chaînes, en partant de "
"la fin de la chaîne. Les divisions renvoyés dans le tableau sont dans le même "
"ordre que la chaîne de caractères originale. Si [param delimiter] est une "
"chaîne vide, chaque sous-chaîne sera composée d'un seul caractère.\n"
"Si [param allow_empty] vaut [code]false[/code], les chaînes vides entre des "
"délimiteurs adjacents sont exclues du tableau.\n"
"Si [param maxsplit] est supérieur à [code]0[/code], le nombre de divisions ne "
"peut excéder [param maxsplit]. Par défaut, la chaîne entière est divisée, ce "
"qui est globalement identique à [method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var une_chaine = \"Un,Deux,Trois,Quatre\"\n"
"var un_tableau = une_chaine.rsplit(\",\", true, 1)\n"
"\n"
"print(un_tableau.size()) # Affiche 2\n"
"print(un_tableau[0])     # Affiche \"Un,Deux,Trois\"\n"
"print(un_tableau[1])     # Affiche \"Quatre\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// En C#, il n'y a pas de méthode String.RSplit().\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Removes a set of characters defined in [param chars] from the string's end. "
"See also [method lstrip].\n"
"[b]Note:[/b] [param chars] is not a suffix. Use [method trim_suffix] to "
"remove a single suffix, rather than a set of characters."
msgstr ""
"Retire un ensemble de caractères définis dans [param chars] depuis la fin de "
"la chaîne. Voir aussi [method rstrip].\n"
"[b]Note :[/b] [param chars] n'est pas un suffixe. Utilisez [method "
"trim_suffix] pour supprimer un seul suffixe, plutôt qu'un ensemble de "
"caractères."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the "
"string as a [PackedByteArray]."
msgstr ""
"Renvoie le hachage [url=https://fr.wikipedia.org/wiki/SHA-1]SHA-1[/url] de la "
"chaîne en tant que [PackedByteArray]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the "
"string as another [String]."
msgstr ""
"Renvoie le hachage [url=https://fr.wikipedia.org/wiki/SHA-1]SHA-1[/url] de la "
"chaîne en tant qu'autre [String]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of "
"the string as a [PackedByteArray]."
msgstr ""
"Renvoie le hash [url=https://fr.wikipedia.org/wiki/SHA-2]SHA-256[/url] de la "
"chaîne de caractères en [PackedByteArray]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of "
"the string as another [String]."
msgstr ""
"Renvoie le hash [url=https://fr.wikipedia.org/wiki/SHA-2]SHA-256[/url] de la "
"chaîne de caractères en [String]."

msgid ""
"Returns the similarity index ([url=https://en.wikipedia.org/wiki/"
"S%C3%B8rensen%E2%80%93Dice_coefficient]Sørensen-Dice coefficient[/url]) of "
"this string compared to another. A result of [code]1.0[/code] means totally "
"similar, while [code]0.0[/code] means totally dissimilar.\n"
"[codeblock]\n"
"print(\"ABC123\".similarity(\"ABC123\")) # Prints 1.0\n"
"print(\"ABC123\".similarity(\"XYZ456\")) # Prints 0.0\n"
"print(\"ABC123\".similarity(\"123ABC\")) # Prints 0.8\n"
"print(\"ABC123\".similarity(\"abc123\")) # Prints 0.4\n"
"[/codeblock]"
msgstr ""
"Renvoie l'indice de similarité ([url=https://fr.wikipedia.org/wiki/"
"Indice_de_S%C3%B8rensen-Dice]Indice de Sørensen-Dice[/url]) de cette chaîne "
"de caractères par rapport à une autre. Un résultat de [code]1.0[/code] "
"signifie qu'elles sont identiques, alors que [code]0.0[/code] signifie "
"qu'elles sont complètement différentes.\n"
"[codeblock]\n"
"print(\"ABC123\".similarity(\"ABC123\")) # Affiche 1.0\n"
"print(\"ABC123\".similarity(\"XYZ456\")) # Affiche 0.0\n"
"print(\"ABC123\".similarity(\"123ABC\")) # Affiche 0.8\n"
"print(\"ABC123\".similarity(\"abc123\")) # Affiche 0.4\n"
"[/codeblock]"

msgid ""
"If the string is a valid file path, converts the string into a canonical "
"path. This is the shortest possible path, without [code]\"./\"[/code], and "
"all the unnecessary [code]\"..\"[/code] and [code]\"/\"[/code].\n"
"[codeblock]\n"
"var simple_path = \"./path/to///../file\".simplify_path()\n"
"print(simple_path) # Prints \"path/file\"\n"
"[/codeblock]"
msgstr ""
"Si la chaîne est un chemin de fichier valide, convertit la chaîne en un "
"chemin canonique. C'est le chemin le plus court possible, sans [code]\"./\"[/"
"code], et tous les [code]\"..\"[/code] et [code]\"/\"[/code] inutiles.\n"
"[codeblock]\n"
"var chemin_simple = \"./chemin/vers///./fichier\".simplify_path()\n"
"print(chemin_simple) # Affiche \"chemin/fichier\"\n"
"[/codeblock]"

msgid ""
"Splits the string using a [param delimiter] and returns an array of the "
"substrings. If [param delimiter] is an empty string, each substring will be a "
"single character. This method is the opposite of [method join].\n"
"If [param allow_empty] is [code]false[/code], empty strings between adjacent "
"delimiters are excluded from the array.\n"
"If [param maxsplit] is greater than [code]0[/code], the number of splits may "
"not exceed [param maxsplit]. By default, the entire string is split.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var some_array = \"One,Two,Three,Four\".split(\",\", true, 2)\n"
"\n"
"print(some_array.size()) # Prints 3\n"
"print(some_array[0])     # Prints \"One\"\n"
"print(some_array[1])     # Prints \"Two\"\n"
"print(some_array[2])     # Prints \"Three,Four\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// C#'s `Split()` does not support the `maxsplit` parameter.\n"
"var someArray = \"One,Two,Three\".Split(\",\");\n"
"\n"
"GD.Print(someArray[0]); // Prints \"One\"\n"
"GD.Print(someArray[1]); // Prints \"Two\"\n"
"GD.Print(someArray[2]); // Prints \"Three\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you only need one substring from the array, consider using "
"[method get_slice] which is faster. If you need to split strings with more "
"complex rules, use the [RegEx] class instead."
msgstr ""
"Divise la chaîne en utilisant un délimiteur [param delimiter] et renvoie un "
"tableau des sous-chaînes. Si [param delimiter] est une chaîne vide, chaque "
"sous-chaîne sera un unique caractère. Cette méthode est le contraire de "
"[method join].\n"
"Si [param allow_empty] vaut [code]false[/code], les chaînes vides entre les "
"délimiteurs adjacents sont exclues du tableau.\n"
"Si [param maxsplit] est supérieur à [code]0[/code], le nombre de divisions ne "
"peut excéder [param maxsplit]. Par défaut, la chaîne entière est divisée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var un_tableau = \"Un,Deux,Trois,Quatre\".split(\",\", true, 2)\n"
"\n"
"print(un_tableau.size()) # Prints 3\n"
"print(un_tableau[0]) # Affiche \"One\"\n"
"print(un_tableau[1]) # Affiche \"Deux\"\n"
"print(un_tableau[2]) # Affiche \"Trois,Quatre\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// `Split()`en C# ne supporte pas le paramètre `maxsplit`.\n"
"var unTableau = \"Un,Deux,Trois\".Split(\",\");\n"
"\n"
"GD.Print(unTableau[0]); // Affiche \"Un\"\n"
"GD.Print(unTableau[1]); // Affiche \"Deux\"\n"
"GD.Print(unTableau[2]); // Affiche \"Trois\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Si vous n'avez besoin que d'une sous-chaîne du tableau, "
"envisagez d'utiliser [method get_slice] qui est plus rapide. Si vous devez "
"diviser les chaînes avec des règles plus complexes, utilisez plutôt la classe "
"[RegEx]."

msgid ""
"Splits the string into floats by using a [param delimiter] and returns a "
"[PackedFloat64Array].\n"
"If [param allow_empty] is [code]false[/code], empty or invalid [float] "
"conversions between adjacent delimiters are excluded.\n"
"[codeblock]\n"
"var a = \"1,2,4.5\".split_floats(\",\")         # a is [1.0, 2.0, 4.5]\n"
"var c = \"1| ||4.5\".split_floats(\"|\")        # c is [1.0, 0.0, 0.0, 4.5]\n"
"var b = \"1| ||4.5\".split_floats(\"|\", false) # b is [1.0, 4.5]\n"
"[/codeblock]"
msgstr ""
"Divise la chaîne en flottants en utilisant un délimiteur [param delimiter] et "
"renvoie un [PackedFloat64Array].\n"
"Si [param allow_empty] vaut [code]false[/code], les conversions de [float] "
"vides ou invalides entre les délimiteurs adjacents sont exclues.\n"
"[codeblock]\n"
"var a = \"1,2,4.5\".split_floats(\",\")         # a vaut [1.0, 2.0, 4.5]\n"
"var c = \"1| ||4.5\".split_floats(\"|\")        # c vaut [1.0, 0.0, 0.0, "
"4.5]\n"
"var b = \"1| ||4.5\".split_floats(\"|\", false) # b vaut [1.0, 4.5]\n"
"[/codeblock]"

msgid ""
"Strips all non-printable characters from the beginning and the end of the "
"string. These include spaces, tabulations ([code]\\t[/code]), and newlines "
"([code]\\n[/code] [code]\\r[/code]).\n"
"If [param left] is [code]false[/code], ignores the string's beginning. "
"Likewise, if [param right] is [code]false[/code], ignores the string's end."
msgstr ""
"Retire tous les caractères non-imprimables du début et de la fin de la "
"chaîne. Il s'agit d'espaces, de tabulations ([code]\\t[/code]), et de "
"caractères de nouvelle ligne ([code]\\n[/code] [code]\\r[/code]).\n"
"Si [param left] vaut [code]false[/code], ignore le début de la chaîne. De "
"même, si [param right] vaut [code]false[/code], ignore la fin de la chaîne."

msgid ""
"Strips all escape characters from the string. These include all non-printable "
"control characters of the first page of the ASCII table (values from 0 to "
"31), such as tabulation ([code]\\t[/code]) and newline ([code]\\n[/code], "
"[code]\\r[/code]) characters, but [i]not[/i] spaces."
msgstr ""
"Retire tous les caractères d'échappement de la chaîne. Il s'agit de tous les "
"caractères de contrôle non-imprimables de la première page de la table ASCII "
"(valeurs de 0 à 31), tels que les tabulations ([code]\\t[/code]) et les "
"caractères de nouvelle ligne ([code]\\n[/code], [code]\\r[/code]), mais "
"[i]pas[/i] les espaces."

msgid ""
"Returns part of the string from the position [param from] with length [param "
"len]. If [param len] is [code]-1[/code] (as by default), returns the rest of "
"the string starting from the given position."
msgstr ""
"Renvoie la partie de la chaîne commençant à la position [param from] avec la "
"longueur [param len]. Si [param len] vaut [code]-1[/code] (comme par défaut), "
"renvoie le reste de la chaîne depuis la position donnée."

msgid ""
"Converts the string to an [url=https://en.wikipedia.org/wiki/ASCII]ASCII[/"
"url]/Latin-1 encoded [PackedByteArray]. This method is slightly faster than "
"[method to_utf8_buffer], but replaces all unsupported characters with spaces. "
"This is the inverse of [method PackedByteArray.get_string_from_ascii]."
msgstr ""
"Convertit la chaîne en un [PackedByteArray] encodé en [url=https://"
"fr.wikipedia.org/wiki/"
"American_Standard_Code_for_Information_Interchange]ASCII[/url]/Latin-1. Cette "
"méthode est légèrement plus rapide que [method to_utf8_buffer], mais remplace "
"tous les caractères non supportés par des espaces. C'est l'inverse de [method "
"PackedByteArray.get_string_from_ascii]."

msgid "Returns the string converted to [code]camelCase[/code]."
msgstr "Renvoie la chaîne de caractères convertie en [code]camelCase[/code]."

msgid ""
"Converts the string representing a decimal number into a [float]. This method "
"stops on the first non-number character, except the first decimal point "
"([code].[/code]) and the exponent letter ([code]e[/code]). See also [method "
"is_valid_float].\n"
"[codeblock]\n"
"var a = \"12.35\".to_float()  # a is 12.35\n"
"var b = \"1.2.3\".to_float()  # b is 1.2\n"
"var c = \"12xy3\".to_float()  # c is 12.0\n"
"var d = \"1e3\".to_float()    # d is 1000.0\n"
"var e = \"Hello!\".to_float() # e is 0.0\n"
"[/codeblock]"
msgstr ""
"Convertit une chaîne représentant un nombre décimal en un [float]. La méthode "
"s'arrêtera sur le premier caractère qui n'est pas un chiffre, sauf le premier "
"[code].[/code] (point décimal), et lettre d'exposant [code]e[/code]. Voir "
"aussi [method is_valid_float].\n"
"[codeblock]\n"
"var a = \"12.35\".to_float()  # a vaut 12.35\n"
"var b = \"1.2.3\".to_float()  # b vaut 1.2\n"
"var c = \"12xy3\".to_float()  # c vaut 12.0\n"
"var d = \"1e3\".to_float()    # d vaut 1000.0\n"
"var e = \"Hello !\".to_float() # e vaut 0.0\n"
"[/codeblock]"

msgid ""
"Converts the string representing an integer number into an [int]. This method "
"removes any non-number character and stops at the first decimal point ([code]."
"[/code]). See also [method is_valid_int].\n"
"[codeblock]\n"
"var a = \"123\".to_int()    # a is 123\n"
"var b = \"x1y2z3\".to_int() # b is 123\n"
"var c = \"-1.2.3\".to_int() # c is -1\n"
"var d = \"Hello!\".to_int() # d is 0\n"
"[/codeblock]"
msgstr ""
"Convertit une chaîne représentant un nombre entier en un [int]. La méthode "
"supprimera tout caractère qui n'est pas un chiffre et s'arrêtera au premier "
"[code].[/code] (point décimal). Voir aussi [method is_valid_int].\n"
"[codeblock]\n"
"var a = \"123\".to_int()    # a vaut 123\n"
"var b = \"x1y2z3\".to_int() # b vaut 123\n"
"var c = \"-1.2.3\".to_int() # c vaut -1\n"
"var d = \"Hello !\".to_int() # d vaut 0\n"
"[/codeblock]"

msgid ""
"Returns the string converted to [code]kebab-case[/code].\n"
"[b]Note:[/b] Numbers followed by a [i]single[/i] letter are not separated in "
"the conversion to keep some words (such as \"2D\") together.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_kebab_case()               # Returns \"node-2d\"\n"
"\"2nd place\".to_kebab_case()            # Returns \"2-nd-place\"\n"
"\"Texture3DAssetFolder\".to_kebab_case() # Returns \"texture-3d-asset-"
"folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToKebabCase();               // Returns \"node-2d\"\n"
"\"2nd place\".ToKebabCase();            // Returns \"2-nd-place\"\n"
"\"Texture3DAssetFolder\".ToKebabCase(); // Returns \"texture-3d-asset-"
"folder\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la chaîne convertie en [code]kebab-case[/code].\n"
"[b]Note :[/b] Les nombres suivis d'une [i]seule[/i] lettre ne sont pas "
"séparés dans la conversion pour garder quelques mots (comme \"2D\") "
"ensemble.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_kebab_case()               # Renvoie \"node-2d\"\n"
"\"2de place\".to_kebab_case()            # Renvoie \"2-de-place\"\n"
"\"Texture3DAssetFolder\".to_kebab_case() # Renvoie \"texture-3d-asset-"
"folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToKebabCase();               // Renvoie \"node-2d\"\n"
"\"2de place\".ToKebabCase();            // Renvoie \"2-de-place\"\n"
"\"Texture3DAssetFolder\".ToKebabCase(); // Renvoie \"texture-3d-asset-"
"folder\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the string converted to [code]lowercase[/code]."
msgstr ""
"Renvoie la chaîne de caractères convertie en [code]lowercase[/code] "
"(minuscules)."

msgid "Returns the string converted to [code]PascalCase[/code]."
msgstr "Renvoie la chaîne de caractères convertie en [code]PascalCase[/code]."

msgid ""
"Returns the string converted to [code]snake_case[/code].\n"
"[b]Note:[/b] Numbers followed by a [i]single[/i] letter are not separated in "
"the conversion to keep some words (such as \"2D\") together.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_snake_case()               # Returns \"node_2d\"\n"
"\"2nd place\".to_snake_case()            # Returns \"2_nd_place\"\n"
"\"Texture3DAssetFolder\".to_snake_case() # Returns "
"\"texture_3d_asset_folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToSnakeCase();               // Returns \"node_2d\"\n"
"\"2nd place\".ToSnakeCase();            // Returns \"2_nd_place\"\n"
"\"Texture3DAssetFolder\".ToSnakeCase(); // Returns "
"\"texture_3d_asset_folder\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la chaîne convertie en [code]snake_case[/code].\n"
"[b]Note :[/b] Les nombres suivis d'une [i]seule[/i] lettre ne sont pas "
"séparés dans la conversion pour garder quelques mots (comme \"2D\") "
"ensemble.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_snake_case()               # Renvoie \"node_2d\"\n"
"\"2de place\".to_snake_case()            # Renvoie \"2_de_place\"\n"
"\"Texture3DAssetFolder\".to_snake_case() # Renvoie "
"\"texture_3d_asset_folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToSnakeCase();               // Renvoie \"node_2d\"\n"
"\"2de place\".ToSnakeCase();            // Renvoie \"2_de_place\"\n"
"\"Texture3DAssetFolder\".ToSnakeCase(); // Renvoie "
"\"texture_3d_asset_folder\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the string converted to [code]UPPERCASE[/code]."
msgstr ""
"Renvoie la chaîne de caractères convertie en [code]UPPERCASE[/code] "
"(majuscules)."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-8]UTF-8[/url] "
"encoded [PackedByteArray]. This method is slightly slower than [method "
"to_ascii_buffer], but supports all UTF-8 characters. For most cases, prefer "
"using this method. This is the inverse of [method "
"PackedByteArray.get_string_from_utf8]."
msgstr ""
"Convertit la chaîne en un tableau [PackedByteArray] encodé en [url=https://"
"fr.wikipedia.org/wiki/UTF-8]UTF-8[/url]. Cette méthode est légèrement plus "
"lente que [method to_ascii_buffer], mais prend en charge tous les caractères "
"UTF-8. Pour la plupart des cas, préférez utiliser cette méthode. C'est "
"l'inverse de [method PackedByteArray.get_string_from_utf8]."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-16]UTF-16[/"
"url] encoded [PackedByteArray]. This is the inverse of [method "
"PackedByteArray.get_string_from_utf16]."
msgstr ""
"Convertit la chaîne en un tableau [PackedByteArray] encodé en [url=https://"
"fr.wikipedia.org/wiki/UTF-16]UTF-16[/url]. C'est l'inverse de [method "
"PackedByteArray.get_string_from_utf16]."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-32]UTF-32[/"
"url] encoded [PackedByteArray]. This is the inverse of [method "
"PackedByteArray.get_string_from_utf32]."
msgstr ""
"Convertit la chaîne en un tableau [PackedByteArray] encodé en [url=https://"
"fr.wikipedia.org/wiki/UTF-32]UTF-32[/url]. C'est l'inverse de [method "
"PackedByteArray.get_string_from_utf32]."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/"
"Wide_character]wide character[/url] ([code]wchar_t[/code], UTF-16 on Windows, "
"UTF-32 on other platforms) encoded [PackedByteArray]. This is the inverse of "
"[method PackedByteArray.get_string_from_wchar]."
msgstr ""
"Convertit la chaîne de caractères en un [PackedByteArray] encodé en "
"[url=https://en.wikipedia.org/wiki/Wide_character]caractères larges[/url] "
"([code]wchar_t[/code], UTF-16 sur Windows, UTF-32 sur les autres plates-"
"formes). C'est l'inverse de [method PackedByteArray.get_string_from_wchar]."

msgid ""
"Removes the given [param prefix] from the start of the string, or returns the "
"string unchanged."
msgstr ""
"Supprime le préfixe [param prefix] donné depuis le début de la chaîne, ou "
"renvoie la chaîne inchangée."

msgid ""
"Removes the given [param suffix] from the end of the string, or returns the "
"string unchanged."
msgstr ""
"Supprime le suffixe [param suffix] donné depuis la fin de la chaîne, ou "
"renvoie la chaîne inchangée."

msgid ""
"Returns the character code at position [param at].\n"
"See also [method chr], [method @GDScript.char], and [method @GDScript.ord]."
msgstr ""
"Renvoie le code du caractère à la position [param at].\n"
"Voir aussi [method chr], [method @GDScript.char], et [method @GDScript.ord]."

msgid ""
"Decodes the string from its URL-encoded format. This method is meant to "
"properly decode the parameters in a URL when receiving an HTTP request. See "
"also [method uri_encode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"print(url.uri_decode()) # Prints \"$DOCS_URL/?highlight=Godot Engine:docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"GD.Print(url.URIDecode()) // Prints \"$DOCS_URL/?highlight=Godot "
"Engine:docs\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method decodes [code]+[/code] as space."
msgstr ""
"Décode la chaîne depuis son format encodé d'URL. Cette méthode est destinée à "
"décoder correctement les paramètres dans une URL lors de la réception d'une "
"requête HTTP. Voir aussi [method uri_encode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"print(url.uri_decode()) # Affiche \"$DOCS_URL/?highlight=Godot Engine:docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"GD.Print(url.URIDecode()) // Affiche \"$DOCS_URL/?highlight=Godot "
"Engine:docs\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Cette méthode décode [code]+[/code] en un espace."

msgid ""
"Encodes the string to URL-friendly format. This method is meant to properly "
"encode the parameters in a URL when sending an HTTP request. See also [method "
"uri_decode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prefix = \"$DOCS_URL/?highlight=\"\n"
"var url = prefix + \"Godot Engine:docs\".uri_encode()\n"
"\n"
"print(url) # Prints \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var prefix = \"$DOCS_URL/?highlight=\";\n"
"var url = prefix + \"Godot Engine:docs\".URIEncode();\n"
"\n"
"GD.Print(url); // Prints \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Encode la chaîne en un format d'URL. Cette méthode est destinée à encoder "
"correctement les paramètres dans une URL lors de l'envoi d'une requête HTTP. "
"Voir aussi [method uri_decode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prefixe = \"$DOCS_URL/?highlight=\"\n"
"var url = prefixe + \"Godot Engine:docs\".uri_encode()\n"
"\n"
"print(url) # Affiche \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var prefixe = \"$DOCS_URL/?highlight=\";\n"
"var url = prefixe + \"Godot Engine:docs\".URIEncode();\n"
"\n"
"GD.Print(url); // Affiche \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Decodes the file path from its URL-encoded format. Unlike [method uri_decode] "
"this method leaves [code]+[/code] as is."
msgstr ""
"Décode le chemin de fichier depuis son format encodé d'URL. Contrairement à "
"[method uri_decode], cette méthode laisse [code]+[/code] tel quel."

msgid ""
"Returns a copy of the string with all characters that are not allowed in "
"[method is_valid_filename] replaced with underscores."
msgstr ""
"Renvoie une copie de la chaîne avec tous les caractères qui ne sont pas "
"autorisés dans [method is_valid_filename] remplacés par des tirets du bas."

msgid ""
"Returns a copy of the string with all characters that are not allowed in "
"[member Node.name] ([code].[/code] [code]:[/code] [code]@[/code] [code]/[/"
"code] [code]\"[/code] [code]%[/code]) replaced with underscores."
msgstr ""
"Renvoie une copie de la chaîne avec tous les caractères qui ne sont pas "
"autorisés dans [member Node.name] ([code].[/code] [code]:[/code] [code]@[/"
"code] [code]/[/code] [code]\"[/code] [code]%[/code]) remplacés par des tirets "
"du bas."

msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard. If [param escape_quotes] is [code]true[/code], the single quote "
"([code]'[/code]) and double quote ([code]\"[/code]) characters are also "
"escaped."
msgstr ""
"Renvoie une copie de la chaîne avec les caractères spéciaux échappés en "
"utilisant la norme XML. Si [param escape_quotes] vaut [code]true[/code], les "
"caractères de guillemet simples ([code]'[/code]) et doubles ([code]\"[/code]) "
"sont également échappés."

msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
msgstr ""
"Renvoie une copie de la chaîne avec des caractères échappés remplacés par "
"leurs significations selon la norme XML."

msgid ""
"Returns [code]true[/code] if both strings do not contain the same sequence of "
"characters."
msgstr ""
"Renvoie [code]true[/code] si les deux chaînes ne contiennent pas la même "
"séquence de caractères."

msgid ""
"Returns [code]true[/code] if this [String] is not equivalent to the given "
"[StringName]."
msgstr ""
"Renvoie [code]true[/code] si ce [String] n'est pas équivalent au [StringName] "
"donné."

msgid ""
"Formats the [String], replacing the placeholders with one or more parameters. "
"To pass multiple parameters, [param right] needs to be an [Array].\n"
"[codeblock]\n"
"print(\"I caught %d fishes!\" % 2) # Prints \"I caught 2 fishes!\"\n"
"\n"
"var my_message = \"Travelling to %s, at %2.2f km/h.\"\n"
"var location = \"Deep Valley\"\n"
"var speed = 40.3485\n"
"print(my_message % [location, speed]) # Prints \"Travelling to Deep Valley, "
"at 40.35 km/h.\"\n"
"[/codeblock]\n"
"For more information, see the [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_format_string.html]GDScript format strings[/url] tutorial.\n"
"[b]Note:[/b] In C#, this operator is not available. Instead, see [url=https://"
"learn.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/"
"interpolated]how to interpolate strings with \"$\"[/url]."
msgstr ""
"Formate le [String], en remplaçant les placeholders par un ou plusieurs "
"paramètres. Pour passer plusieurs paramètres, [param right] doit être un "
"[Array].\n"
"[codeblock]\n"
"print(\"J'ai attrapé %d poissons !\" % 2) # Affiche \"J'ai attrapé 2 "
"poissons !\"\n"
"\n"
"var my_message = \"Voyage vers %s, à %2.2f km/h.\"\n"
"var location = \"Vallée lointaine\"\n"
"var speed = 40.3485\n"
"print(my_message % [location, speed]) # Affiche \"Voyage vers Vallée "
"lointaine, à 40.35 km/h.\"\n"
"[/codeblock]\n"
"Pour plus d'informations, consultez le tutoriel [url=$DOCS_URL/tutorials/"
"scripting/gdscript/gdscript_format_string.html]Chaînes de format en GDScript[/"
"url].\n"
"[b]Note :[/b] En C#, cet opérateur n'est pas disponible. À la place, voir "
"[url=https://learn.microsoft.com/fr-fr/dotnet/csharp/language-reference/"
"tokens/interpolated]Comment interpoler des chaînes avec \"$\"[/url]."

msgid ""
"Appends [param right] at the end of this [String], also known as a string "
"concatenation."
msgstr ""
"Ajoute [param right] à la fin de cet [String], également appelé concaténation "
"de chaînes."

msgid ""
"Appends [param right] at the end of this [String], returning a [String]. This "
"is also known as a string concatenation."
msgstr ""
"Ajoute [param right] à la fin de ce [String], en renvoyant un [String]. Ceci "
"est également appelé une concaténation de chaînes."

msgid ""
"Returns [code]true[/code] if the left [String] comes before [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order. Useful for sorting."
msgstr ""
"Renvoie [code]true[/code] si la [String] de gauche arrive avant [param right] "
"dans l'[url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]ordre Unicode[/url], qui correspond à peu "
"près à l'ordre alphabétique. Utile pour le tri."

msgid ""
"Returns [code]true[/code] if the left [String] comes before [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order, or if both are equal."
msgstr ""
"Renvoie [code]true[/code] si la [String] de gauche arrive avant [param right] "
"dans l'[url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]ordre Unicode[/url], qui correspond à peu "
"près à l'ordre alphabétique, ou si les deux sont égales."

msgid ""
"Returns [code]true[/code] if both strings contain the same sequence of "
"characters."
msgstr ""
"Renvoie [code]true[/code] si les deux chaînes contiennent la même séquence de "
"caractères."

msgid ""
"Returns [code]true[/code] if this [String] is equivalent to the given "
"[StringName]."
msgstr ""
"Renvoie [code]true[/code] si cette [String] est équivalente au [StringName] "
"donné."

msgid ""
"Returns [code]true[/code] if the left [String] comes after [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order. Useful for sorting."
msgstr ""
"Renvoie [code]true[/code] si la [String] de gauche arrive après [param right] "
"dans l'[url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]ordre Unicode[/url], qui correspond à peu "
"près à l'ordre alphabétique. Utile pour le tri."

msgid ""
"Returns [code]true[/code] if the left [String] comes after [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order, or if both are equal."
msgstr ""
"Renvoie [code]true[/code] si la [String] de gauche arrive après [param right] "
"dans l'[url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]ordre Unicode[/url], qui correspond à peu "
"près à l'ordre alphabétique, ou si les deux sont égales."

msgid ""
"Returns a new [String] that only contains the character at [param index]. "
"Indices start from [code]0[/code]. If [param index] is greater or equal to "
"[code]0[/code], the character is fetched starting from the beginning of the "
"string. If [param index] is a negative value, it is fetched starting from the "
"end. Accessing a string out-of-bounds will cause a run-time error, pausing "
"the project execution if run from the editor."
msgstr ""
"Renvoie une nouvelle [String] qui ne contient que le caractère à [param "
"index]. Les indices commencent de [code]0[/code]. Si [param index] est "
"supérieur ou égal à [code]0[/code], le caractère est récupéré à partir du "
"début de la chaîne. Si [param index] est une valeur négative, il est récupéré "
"à partir de la fin. L'accès à une chaîne hors de ses limites causera une "
"erreur d'exécution, mettant en pause l'exécution du projet s'il est exécuté "
"depuis l'éditeur."

msgid "A built-in type for unique strings."
msgstr "Un type intégré pour les chaînes uniques."

msgid ""
"[StringName]s are immutable strings designed for general-purpose "
"representation of unique names (also called \"string interning\"). Two "
"[StringName]s with the same value are the same object. Comparing them is "
"extremely fast compared to regular [String]s.\n"
"You will usually pass a [String] to methods expecting a [StringName] and it "
"will be automatically converted (often at compile time), but in rare cases "
"you can construct a [StringName] ahead of time with the [StringName] "
"constructor or, in GDScript, the literal syntax [code]&\"example\"[/code]. "
"Manually constructing a [StringName] allows you to control when the "
"conversion from [String] occurs or to use the literal and prevent conversions "
"entirely.\n"
"See also [NodePath], which is a similar concept specifically designed to "
"store pre-parsed scene tree paths.\n"
"All of [String]'s methods are available in this class too. They convert the "
"[StringName] into a string, and they also return a string. This is highly "
"inefficient and should only be used if the string is desired.\n"
"[b]Note:[/b] In C#, an explicit conversion to [code]System.String[/code] is "
"required to use the methods listed on this page. Use the [code]ToString()[/"
"code] method to cast a [StringName] to a string, and then use the equivalent "
"methods in [code]System.String[/code] or [code]StringExtensions[/code].\n"
"[b]Note:[/b] In a boolean context, a [StringName] will evaluate to "
"[code]false[/code] if it is empty ([code]StringName(\"\")[/code]). Otherwise, "
"a [StringName] will always evaluate to [code]true[/code]."
msgstr ""
"Les [StringName]s sont des chaînes immuables conçues pour une représentation "
"générale des noms uniques (également appelé « string interning », litt. "
"internement de chaîne). Deux [StringName]s avec la même valeur sont le même "
"objet. La comparaison est extrêmement rapide par rapport aux [String] "
"habituelles.\n"
"Vous passerez généralement un [String] à des méthodes qui s'attendent à un "
"[StringName] et il sera automatiquement converti (souvent au moment de la "
"compilation), mais dans de rares cas vous pouvez construire un [StringName] "
"en avance avec le constructeur [StringName] ou, en GDScript, la syntaxe "
"littérale [code])&\"exemple\"[/code]. La construction manuelle d'un "
"[StringName] vous permet de contrôler lorsque la conversion depuis [String] "
"se produit ou d'utiliser le littéral et d'empêcher les conversions "
"entièrement.\n"
"Voir aussi [NodePath], qui est un concept similaire spécifiquement conçu pour "
"stocker des chemins d'arborescence de scène préparés.\n"
"Toutes les méthodes de [String] sont également disponibles dans cette classe. "
"Ils convertissent le [StringName] en une chaîne, et ils renvoient également "
"une chaîne. Ceci est très inefficace et ne devrait être utilisé que si la "
"chaîne est souhaitée.\n"
"[b]Note :[/b] En C#, une conversion explicite à [code]System.String[/code] "
"est nécessaire pour utiliser les méthodes énumérées sur cette page. Utilisez "
"la méthode [code]ToString()[/code] pour cast une [StringName] en une chaîne, "
"puis utilisez les méthodes équivalentes dans [code]System.String[/code] ou "
"[code]StringExtensions[/code].\n"
"[b]Note :[/b] Dans un contexte booléen, [StringName] évaluera à [code]false[/"
"code] si elle est vide ([code]StringName(\"\")[/code]). Sinon, un "
"[StringName] évaluera toujours à [code]true[/code]."

msgid "Constructs an empty [StringName]."
msgstr "Construit un [StringName] vide."

msgid "Constructs a [StringName] as a copy of the given [StringName]."
msgstr "Construit une [StringName] en tant que copie de la [StringName] donnée."

msgid ""
"Creates a new [StringName] from the given [String]. In GDScript, "
"[code]StringName(\"example\")[/code] is equivalent to [code]&\"example\"[/"
"code]."
msgstr ""
"Crée un nouveau [StringName] de la [String] donnée. En GDScript, "
"[code]StringName(\"exemple\")[/code] est équivalent à [code]&\"exemple\"[/"
"code]."

msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]1[/code] if greater than, or [code]0[/code] if "
"equal. \"Less than\" and \"greater than\" are determined by the [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of "
"each string, which roughly matches the alphabetical order.\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method nocasecmp_to], [method filecasecmp_to], "
"and [method naturalcasecmp_to]."
msgstr ""
"Effectue une comparaison sensible à la casse avec une autre chaîne. Renvoie "
"[code]-1[/code] si c’est inferieur, [code]1[/code] si c’est plus grand, ou "
"[code]0[/code] si c’est égal. \"Inférieur à\" et \"supérieur à\" sont "
"déterminés par [url=https://fr.m.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]points de code Unicode[/url] de chaque "
"chaîne, qui correspond approximativement à l'ordre alphabétique.\n"
"Avec des longueurs de chaîne différentes, renvoie [code]1[/code] si cette "
"chaîne est plus longue que la chaîne [param to], ou [code]-1[/code] si elle "
"est plus courte. Notez que la longueur des chaînes vides est [i]toujours[/i] "
"[code]0[/code].\n"
"Pour obtenir un résultat booléen [bool] d'une comparaison de chaînes, "
"utilisez plutôt l'opérateur [code]=[/code]. Voir aussi [method nocasecmp_to], "
"[method filecasecmp_to], et [method naturalcasecmp_to]."

msgid ""
"Performs a [b]case-sensitive[/b], [i]natural order[/i] comparison to another "
"string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, "
"or [code]0[/code] if equal. \"Less than\" or \"greater than\" are determined "
"by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode "
"code points[/url] of each string, which roughly matches the alphabetical "
"order.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalnocasecmp_to], [method "
"filecasecmp_to], and [method nocasecmp_to]."
msgstr ""
"Effectue une comparaison [i]dans l'ordre naturel[/i], [b]sensible à la casse[/"
"b] avec une autre chaîne. Renvoie [code]-1[/code] si inférieure à, [code]1[/"
"code] si plus supérieure à, ou [code]0[/code] si égales. \"Inférieure à\" ou "
"\"supérieure à\" sont déterminés par les [url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]points de code Unicode[/url] de chaque "
"chaîne, qui correspond approximativement à l'ordre alphabétique.\n"
"Lorsqu'utilisé pour le tri, la comparaison en ordre naturel ordonne des "
"séquences de nombres par la valeur combinée de chaque chiffre comme "
"généralement attendu, au lieu de la valeur du chiffre seul. Une séquence de "
"chaînes de nombres triée sera [code][\"1, \"2\", \"3\", ...][/code], pas "
"[code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"Avec différentes longueurs de chaîne, renvoie [code]1[/code] si cette chaîne "
"est plus longue que la chaîne [param to], ou [code]-1[/code] si elle est plus "
"courte. Notez que la longueur des chaînes vides est [i]toujours[/i] de "
"[code]0[/code].\n"
"Pour obtenir un résultat en [bool] d'une comparaison de chaîne, utilisez "
"plutôt l'opérateur [code]==[/code]. Voir aussi [method naturalnocasecmp_to], "
"[method filecasecmp_to], et [method nocasecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b], [i]natural order[/i] comparison to "
"another string. Returns [code]-1[/code] if less than, [code]1[/code] if "
"greater than, or [code]0[/code] if equal. \"Less than\" or \"greater than\" "
"are determined by the [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]Unicode code points[/url] of each string, which "
"roughly matches the alphabetical order. Internally, lowercase characters are "
"converted to uppercase for the comparison.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalcasecmp_to], [method "
"filenocasecmp_to], and [method casecmp_to]."
msgstr ""
"Effectue une comparaison [i]dans l'ordre naturel[/i], [b]insensible à la "
"casse[/b] avec une autre chaîne. Renvoie [code]-1[/code] si inférieure à, "
"[code]1[/code] si plus supérieure à, ou [code]0[/code] si égales. "
"\"Inférieure à\" ou \"supérieure à\" sont déterminés par les [url=https://"
"fr.wikipedia.org/wiki/Table_des_caract%C3%A8res_Unicode]points de code "
"Unicode[/url] de chaque chaîne, qui correspond approximativement à l'ordre "
"alphabétique.\n"
"Lorsqu'utilisé pour le tri, la comparaison en ordre naturel ordonne des "
"séquences de nombres par la valeur combinée de chaque chiffre comme "
"généralement attendu, au lieu de la valeur du chiffre seul. Une séquence de "
"chaînes de nombres triée sera [code][\"1, \"2\", \"3\", ...][/code], pas "
"[code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"Avec différentes longueurs de chaîne, renvoie [code]1[/code] si cette chaîne "
"est plus longue que la chaîne [param to], ou [code]-1[/code] si elle est plus "
"courte. Notez que la longueur des chaînes vides est [i]toujours[/i] de "
"[code]0[/code].\n"
"Pour obtenir un résultat en [bool] d'une comparaison de chaîne, utilisez "
"plutôt l'opérateur [code]==[/code]. Voir aussi [method naturalnocasecmp_to], "
"[method filecasecmp_to], et [method nocasecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b] comparison to another string. Returns "
"[code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/"
"code] if equal. \"Less than\" or \"greater than\" are determined by the "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code "
"points[/url] of each string, which roughly matches the alphabetical order. "
"Internally, lowercase characters are converted to uppercase for the "
"comparison.\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method casecmp_to], [method filenocasecmp_to], "
"and [method naturalnocasecmp_to]."
msgstr ""
"Effectue une comparaison [b]insensible à la casse[/b] avec une autre chaîne. "
"Renvoie [code]-1[/code] si inférieure à [code]1[/code] si plus supérieure à, "
"ou [code]0[/code] si égales. \"Inférieure à\" ou \"supérieure à\" sont "
"déterminés par les [url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]points de code Unicode[/url] de chaque "
"chaîne, qui correspond approximativement à l'ordre alphabétique. En interne, "
"les caractères minuscules sont convertis en majuscules pour la comparaison.\n"
"Avec des longueurs de chaîne différentes, renvoie [code]1[/code] si cette "
"chaîne est plus longue que la chaîne [param to], ou [code]-1[/code] si elle "
"est plus courte. Notez que la longueur des chaînes vides est [i]toujours[/i] "
"de [code]0[/code].\n"
"Pour obtenir un résultat en [bool] d'une comparaison de chaîne, utilisez "
"plutôt l'opérateur [code]==[/code]. Voir aussi [method casecmp_to], [method "
"filenocasecmp_to], et [method naturalnocasecmp_to]."

msgid ""
"Returns the character code at position [param at].\n"
"See also [method String.chr], [method @GDScript.char], and [method "
"@GDScript.ord]."
msgstr ""
"Renvoie le code du caractère à la position [param at].\n"
"Voir aussi [method String.chr], [method @GDScript.char], et [method "
"@GDScript.ord]."

msgid ""
"Returns [code]true[/code] if this [StringName] is not equivalent to the given "
"[String]."
msgstr ""
"Renvoie [code]true[/code] si ce [StringName] n'est pas équivalent au [String] "
"donné."

msgid ""
"Returns [code]true[/code] if the [StringName] and [param right] do not refer "
"to the same name. Comparisons between [StringName]s are much faster than "
"regular [String] comparisons."
msgstr ""
"Renvoie [code]true[/code] si [StringName] et [param right] ne se réfèrent pas "
"au même nom. Les comparaisons entre [StringName]s sont beaucoup plus rapides "
"que les comparaisons de [String] habituelles."

msgid ""
"Formats the [StringName], replacing the placeholders with one or more "
"parameters, returning a [String]. To pass multiple parameters, [param right] "
"needs to be an [Array].\n"
"For more information, see the [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_format_string.html]GDScript format strings[/url] tutorial.\n"
"[b]Note:[/b] In C#, this operator is not available. Instead, see [url=https://"
"learn.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/"
"interpolated]how to interpolate strings with \"$\"[/url]."
msgstr ""
"Formate le [StringName], remplaçant les placeholders par un ou plusieurs "
"paramètres, et renvoyant un [String]. Pour passer plusieurs paramètres, "
"[param right] doit être un [Array].\n"
"Pour plus d'informations, consultez le tutoriel [url=$DOCS_URL/tutorials/"
"scripting/gdscript/gdscript_format_string.html]Chaînes de format en GDScript[/"
"url].\n"
"[b]Note :[/b] En C#, cet opérateur n'est pas disponible. Au lieu de cela, "
"voir [url=https://learn.microsoft.com/fr-fr/dotnet/csharp/language-reference/"
"tokens/interpolated]Interpolation de chaîne à l’aide de \"$\"[/url]."

msgid ""
"Appends [param right] at the end of this [StringName], returning a [String]. "
"This is also known as a string concatenation."
msgstr ""
"Ajoute la chaîne [param right] à la fin de ce [StringName], renvoyant une "
"[String]. Ceci est également connu comme une concaténation de chaînes."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes before "
"[param right]. Note that this will not match their [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url]."
msgstr ""
"Renvoie [code]true[/code] si le pointeur du [StringName] de gauche arrive "
"avant le pointeur de [param right]. Notez que cela ne correspondra pas à leur "
"[url=https://fr.wikipedia.org/wiki/Table_des_caract%C3%A8res_Unicode]ordre "
"Unicode[/url]."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes before "
"[param right] or if they are the same. Note that this will not match their "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url]."
msgstr ""
"Renvoie [code]true[/code] si le pointeur du [StringName] de gauche arrive "
"avant le pointeur de [param right] ou s'ils sont les mêmes. Notez que cela ne "
"correspondra pas à leur [url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]ordre Unicode[/url]."

msgid ""
"Returns [code]true[/code] if this [StringName] is equivalent to the given "
"[String]."
msgstr ""
"Renvoie [code]true[/code] si ce [StringName] est équivalent au [String] donné."

msgid ""
"Returns [code]true[/code] if the [StringName] and [param right] refer to the "
"same name. Comparisons between [StringName]s are much faster than regular "
"[String] comparisons."
msgstr ""
"Renvoie [code]true[/code] si [StringName] et [param right] se réfèrent au "
"même nom. Les comparaisons entre [StringName]s sont beaucoup plus rapides que "
"les comparaisons de [String] habituelles."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes after "
"[param right]. Note that this will not match their [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url]."
msgstr ""
"Renvoie [code]true[/code] si le pointeur du [StringName] de gauche arrive "
"après le pointeur de [param right]. Notez que cela ne correspondra pas à leur "
"[url=https://fr.wikipedia.org/wiki/Table_des_caract%C3%A8res_Unicode]ordre "
"Unicode[/url]."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes after "
"[param right] or if they are the same. Note that this will not match their "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url]."
msgstr ""
"Renvoie [code]true[/code] si le pointeur du [StringName] de gauche arrive "
"après le pointeur de [param right] ou s'ils sont les mêmes. Notez que cela ne "
"correspondra pas à leur [url=https://fr.wikipedia.org/wiki/"
"Table_des_caract%C3%A8res_Unicode]ordre Unicode[/url]."

msgid ""
"Returns the [CanvasItem] that handles its [constant "
"CanvasItem.NOTIFICATION_DRAW] or [method CanvasItem._draw] callback at this "
"moment."
msgstr ""
"Renvoie le [CanvasItem] qui gère sa [constant CanvasItem.NOTIFICATION_DRAW] "
"ou sa méthode [method CanvasItem._draw] actuellement."

msgid "Returns the minimum size that this stylebox can be shrunk to."
msgstr ""
"Renvoie la taille minimale à laquelle cette boîte de style peut être réduite."

msgid ""
"Returns the \"offset\" of a stylebox. This helper function returns a value "
"equivalent to [code]Vector2(style.get_margin(MARGIN_LEFT), "
"style.get_margin(MARGIN_TOP))[/code]."
msgstr ""
"Renvoie le \"décalage\" d'une boîte de style. Cette fonction d'aide renvoie "
"une valeur équivalente à [code]Vector2(style.get_margin(MARGIN_LEFT), "
"style.get_margin(MARGIN_TOP))[/code]."

msgid "Test a position in a rectangle, return whether it passes the mask test."
msgstr ""
"Teste une position dans un rectangle, renvoie si elle passe le test de masque."

msgid ""
"The right margin for the contents of this style box. Increasing this value "
"reduces the space available to the contents from the right.\n"
"Refer to [member content_margin_bottom] for extra considerations."
msgstr ""
"La marge droite pour le contenu de cette boîte de style. L'augmentation de "
"cette valeur réduit l'espace disponible pour le contenu sur la droite.\n"
"Voir [member content_margin_bottom] pour des considérations supplémentaires."

msgid ""
"The top margin for the contents of this style box. Increasing this value "
"reduces the space available to the contents from the top.\n"
"Refer to [member content_margin_bottom] for extra considerations."
msgstr ""
"La marge supérieure pour le contenu de cette boîte de style. Augmenter cette "
"valeur réduit l'espace disponible pour le contenu en haut.\n"
"Voir [member content_margin_bottom] pour des considérations supplémentaires."

msgid ""
"By configuring various properties of this style box, you can achieve many "
"common looks without the need of a texture. This includes optionally rounded "
"borders, antialiasing, shadows, and skew.\n"
"Setting corner radius to high values is allowed. As soon as corners overlap, "
"the stylebox will switch to a relative system:\n"
"[codeblock lang=text]\n"
"height = 30\n"
"corner_radius_top_left = 50\n"
"corner_radius_bottom_left = 100\n"
"[/codeblock]\n"
"The relative system now would take the 1:2 ratio of the two left corners to "
"calculate the actual corner width. Both corners added will [b]never[/b] be "
"more than the height. Result:\n"
"[codeblock lang=text]\n"
"corner_radius_top_left: 10\n"
"corner_radius_bottom_left: 20\n"
"[/codeblock]"
msgstr ""
"En configurant diverses propriétés de cette boîte de style, vous pouvez "
"réaliser de nombreux looks communs sans avoir besoin d'une texture. Cela "
"comprend les bordures arrondies, l'anticrénelage, les ombres et le "
"cisaillement.\n"
"Définir le rayon des coins à des valeurs élevées est autorisé. Dès que les "
"coins se chevauchent, la boîte de style passe à un système relatif :\n"
"[codeblock lang=text]\n"
"hauteur = 30\n"
"rayon_coin_haut_gauche = 50\n"
"rayon_coin_bas_gauche = 100\n"
"[/codeblock]\n"
"Le système relatif prendrait maintenant le rapport 1:2 des deux coins gauches "
"pour calculer la largeur réelle des coins. Les deux coins ajoutés ne seront "
"[b]jamais[/b] plus grands que la hauteur. Résultat :\n"
"[codeblock lang=text]\n"
"rayon_coin_haut_gauche : 10\n"
"rayon_coin_bas_gauche : 20\n"
"[/codeblock]"

msgid "Returns the smallest border width out of all four borders."
msgstr "Renvoie la plus fine bordure parmi les quatre bordures."

msgid "The background color of the stylebox."
msgstr "La couleur d'arrière-plan de la stylebox."

msgid "If [code]true[/code], the border will fade into the background color."
msgstr ""
"Si [code]true[/code], la bordure fusionnera avec la couleur de l'arrière-plan."

msgid "Sets the color of the border."
msgstr "Définit la couleur de la bordure."

msgid "Border width for the bottom border."
msgstr "L'épaisseur de la bordure du bas."

msgid "Border width for the left border."
msgstr "L'épaisseur de la bordure de gauche."

msgid "Border width for the right border."
msgstr "L'épaisseur de la bordure de droite."

msgid "Border width for the top border."
msgstr "L'épaisseur de la bordure du haut."

msgid ""
"The bottom-left corner's radius. If [code]0[/code], the corner is not rounded."
msgstr ""
"Le rayon du coin bas-gauche. Si [code]0[/code], le coin n'est pas arrondi."

msgid ""
"The bottom-right corner's radius. If [code]0[/code], the corner is not "
"rounded."
msgstr ""
"Le rayon du coin bas-droit. Si [code]0[/code], le coin n'est pas arrondi."

msgid ""
"The top-left corner's radius. If [code]0[/code], the corner is not rounded."
msgstr ""
"Le rayon du coin haut-gauche. Si [code]0[/code], le coin n'est pas arrondi."

msgid ""
"The top-right corner's radius. If [code]0[/code], the corner is not rounded."
msgstr ""
"Le rayon du coin haut-droit. Si [code]0[/code], le coin n'est pas arrondi."

msgid "Toggles drawing of the inner part of the stylebox."
msgstr "Active l'affichage de l'intérieur de la stylebox."

msgid ""
"Expands the stylebox outside of the control rect on the bottom edge. Useful "
"in combination with [member border_width_bottom] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_bottom], [member "
"expand_margin_bottom] does [i]not[/i] affect the size of the clickable area "
"for [Control]s. This can negatively impact usability if used wrong, as the "
"user may try to click an area of the StyleBox that cannot actually receive "
"clicks."
msgstr ""
"Étend la boite en dehors du rectangle du contrôle pour la bordure du bas. "
"Utile avec [member border_width_bottom] pour afficher une bordure en dehors "
"du rectangle du contrôle.\n"
"[b]Note :[/b] Contrairement à [member StyleBox.content_margin_bottom], "
"[member expand_margin_bottom] n'étend [i]pas[/i] la taille de la zone qui "
"peut être cliquée du [Control]. Ça peut avoir un impact négatif sur "
"l’accessibilité si c'est mal réglé, puisque l'utilisateur peut vouloir "
"cliquer sur cette zone de la boite qui ne reçoit pas les clics."

msgid ""
"Expands the stylebox outside of the control rect on the left edge. Useful in "
"combination with [member border_width_left] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_left], [member "
"expand_margin_left] does [i]not[/i] affect the size of the clickable area for "
"[Control]s. This can negatively impact usability if used wrong, as the user "
"may try to click an area of the StyleBox that cannot actually receive clicks."
msgstr ""
"Étend la boite en dehors du rectangle du contrôle pour la bordure de gauche. "
"Utile avec [member border_width_left] pour afficher une bordure en dehors du "
"rectangle du contrôle.\n"
"[b]Note :[/b] Contrairement à [member StyleBox.content_margin_left], [member "
"expand_margin_left] n'étend [i]pas[/i] la taille de la zone qui peut être "
"cliquée du [Control]. Ça peut avoir un impact négatif sur l’accessibilité si "
"c'est mal réglé, puisque l'utilisateur peut vouloir cliquer sur cette zone de "
"la boite qui ne reçoit pas les clics."

msgid ""
"Expands the stylebox outside of the control rect on the right edge. Useful in "
"combination with [member border_width_right] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_right], [member "
"expand_margin_right] does [i]not[/i] affect the size of the clickable area "
"for [Control]s. This can negatively impact usability if used wrong, as the "
"user may try to click an area of the StyleBox that cannot actually receive "
"clicks."
msgstr ""
"Étend la boite en dehors du rectangle du contrôle pour la bordure de droite. "
"Utile avec [member border_width_right] pour afficher une bordure en dehors du "
"rectangle du contrôle.\n"
"[b]Note :[/b] Contrairement à [member StyleBox.content_margin_right], [member "
"expand_margin_right] n'étend [i]pas[/i] la taille de la zone qui peut être "
"cliquée du [Control]. Ça peut avoir un impact négatif sur l’accessibilité si "
"c'est mal réglé, puisque l'utilisateur peut vouloir cliquer sur cette zone de "
"la boite qui ne reçoit pas les clics."

msgid ""
"Expands the stylebox outside of the control rect on the top edge. Useful in "
"combination with [member border_width_top] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_top], [member "
"expand_margin_top] does [i]not[/i] affect the size of the clickable area for "
"[Control]s. This can negatively impact usability if used wrong, as the user "
"may try to click an area of the StyleBox that cannot actually receive clicks."
msgstr ""
"Étend la boite en dehors du rectangle du contrôle pour la bordure du haut. "
"Utile avec [member border_width_top] pour afficher une bordure en dehors du "
"rectangle du contrôle.\n"
"[b]Note :[/b] Contrairement à [member StyleBox.content_margin_top], [member "
"expand_margin_top] n'étend [i]pas[/i] la taille de la zone qui peut être "
"cliquée du [Control]. Ça peut avoir un impact négatif sur l’accessibilité si "
"c'est mal réglé, puisque l'utilisateur peut vouloir cliquer sur cette zone de "
"la boite qui ne reçoit pas les clics."

msgid ""
"The color of the shadow. This has no effect if [member shadow_size] is lower "
"than 1."
msgstr ""
"La couleur de l'ombre. Ça n'a aucun effet si [member shadow_size] est "
"inférieur à 1."

msgid ""
"The shadow offset in pixels. Adjusts the position of the shadow relatively to "
"the stylebox."
msgstr ""
"Le décalage de l'ombre en pixels. Ajuste la position de l'ombre relativement "
"à la boîte de style."

msgid "The shadow size in pixels."
msgstr "La taille de l'ombre en pixels."

msgid "The line's color."
msgstr "La couleur de la ligne."

msgid "The line's thickness in pixels."
msgstr "L'épaisseur de la ligne en pixels."

msgid ""
"If [code]true[/code], the line will be vertical. If [code]false[/code], the "
"line will be horizontal."
msgstr ""
"Si [code]true[/code], la ligne sera verticale. Si [code]false[/code], elle "
"sera horizontale."

msgid ""
"Expands the bottom margin of this style box when drawing, causing it to be "
"drawn larger than requested."
msgstr ""
"Augmente la marge du bas de cette boite de style lors de l'affichage, pour "
"qu'elle soit plus grande que demandé."

msgid ""
"Expands the left margin of this style box when drawing, causing it to be "
"drawn larger than requested."
msgstr ""
"Augmente la marge gauche de cette boite de style lors de l'affichage, pour "
"qu'elle soit plus grande que demandé."

msgid ""
"Expands the right margin of this style box when drawing, causing it to be "
"drawn larger than requested."
msgstr ""
"Augmente la marge droite de cette boite de style lors de l'affichage, pour "
"qu'elle soit plus grande que demandé."

msgid ""
"Expands the top margin of this style box when drawing, causing it to be drawn "
"larger than requested."
msgstr ""
"Agrandit la marge supérieure de cette zone de style lors du dessin, la "
"faisant être dessinée plus grande que demandé."

msgid "Modulates the color of the texture when this style box is drawn."
msgstr ""
"Module la couleur de la texture lorsque cette boîte de style est dessinée."

msgid "The texture to use when drawing this style box."
msgstr "La texture à utiliser pour l'affichage de cette boite de style."

msgid ""
"Increases the bottom margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the bottom border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_bottom] if it is negative."
msgstr ""
"Augmente la marge inférieure de la boîte de texture en 3×3.\n"
"Une valeur plus élevée signifie qu'une plus grande partie de la texture "
"source est considérée comme faisant partie de la bordure inférieure de la "
"boîte en 3×3.\n"
"C'est aussi la valeur de repli utilisée pour [member "
"StyleBox.content_margin_bottom] si elle est négative."

msgid ""
"Increases the left margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the left border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_left] if it is negative."
msgstr ""
"Augmente la marge gauche de la boîte de texture en 3×3.\n"
"Une valeur plus élevée signifie qu'une plus grande partie de la texture "
"source est considérée comme faisant partie de la bordure gauche de la boîte "
"3×3.\n"
"C'est aussi la valeur de repli utilisée pour [member "
"StyleBox.content_margin_left] si elle est négative."

msgid ""
"Increases the right margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the right border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_right] if it is negative."
msgstr ""
"Augmente la marge droite de la boîte de texture en 3×3.\n"
"Une valeur plus élevée signifie qu'une plus grande partie de la texture "
"source est considérée comme faisant partie de la droite frontière de la boîte "
"3×3.\n"
"C'est aussi la valeur de repli utilisée pour [member "
"StyleBox.content_margin_right] si elle est négative."

msgid ""
"Increases the top margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the top border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_top] if it is negative."
msgstr ""
"Augmente la marge supérieure de la boîte de texture en 3×3.\n"
"Une valeur plus élevée signifie qu'une plus grande partie de la texture "
"source est considérée comme faisant partie de la bordure supérieure de la "
"boîte 3×3.\n"
"C'est aussi la valeur de repli utilisée pour [member "
"StyleBox.content_margin_top] si elle est négative."

msgid ""
"Stretch the stylebox's texture. This results in visible distortion unless the "
"texture size matches the stylebox's size perfectly."
msgstr ""
"Étire la texture de la boîte de style. Cela entraîne une distorsion visible à "
"moins que la taille de la texture ne corresponde parfaitement à la taille de "
"la boîte de style."

msgid ""
"An interface to a game world that doesn't create a window or draw to the "
"screen directly."
msgstr ""
"Une interface vers un monde de jeu qui ne crée pas de fenêtre ou ne dessine "
"pas directement à l'écran."

msgid ""
"[SubViewport] Isolates a rectangular region of a scene to be displayed "
"independently. This can be used, for example, to display UI in 3D space.\n"
"[b]Note:[/b] [SubViewport] is a [Viewport] that isn't a [Window], i.e. it "
"doesn't draw anything by itself. To display anything, [SubViewport] must have "
"a non-zero size and be either put inside a [SubViewportContainer] or assigned "
"to a [ViewportTexture].\n"
"[b]Note:[/b] [InputEvent]s are not passed to a standalone [SubViewport] by "
"default. To ensure [InputEvent] propagation, a [SubViewport] can be placed "
"inside of a [SubViewportContainer]."
msgstr ""
"[SubViewport] isole une région rectangulaire d'une scène à afficher "
"indépendamment. Cela peut être utilisé, par exemple, pour afficher "
"l'interface utilisateur dans l'espace 3D.\n"
"[b]Note :[/b] [SubViewport] est un [Viewport] qui n'est pas une [Window], "
"c'est-à-dire qu'il ne dessine rien par lui-même. Pour afficher quoi que ce "
"soit, [SubViewport] doit avoir une taille non nulle et être placé à "
"l'intérieur d'un [SubViewportContainer] ou assigné à une [ViewportTexture].\n"
"[b]Note :[/b] Les [InputEvent] ne sont pas transmis à un [SubViewport] "
"autonome par défaut. Pour assurer la propagation des [InputEvent], un "
"[SubViewport] peut être placé à l'intérieur d'un [SubViewportContainer]."

msgid "Using Viewports"
msgstr "Utilisation des Viewports"

msgid "3D in 2D Viewport Demo"
msgstr "Démo pour de la 3D dans un viewport 2D"

msgid "Screen Capture Demo"
msgstr "Démo de capture d'écran"

msgid "Dynamic Split Screen Demo"
msgstr "Démo de l'écran partagé dynamique"

msgid "3D Resolution Scaling Demo"
msgstr "Démo de redimensionnement de la résolution 3D"

msgid ""
"The clear mode when the sub-viewport is used as a render target.\n"
"[b]Note:[/b] This property is intended for 2D usage."
msgstr ""
"Le mode de nettoyage quand le sub-viewport est utilisé comme cible de rendu.\n"
"[b]Note :[/b] Cette propriété est destinée à une utilisation 2D."

msgid "The update mode when the sub-viewport is used as a render target."
msgstr ""
"Le mode de mise à jour lorsque le sub-viewport est utilisé comme cible de "
"rendu."

msgid ""
"The width and height of the sub-viewport. Must be set to a value greater than "
"or equal to 2 pixels on both dimensions. Otherwise, nothing will be "
"displayed.\n"
"[b]Note:[/b] If the parent node is a [SubViewportContainer] and its [member "
"SubViewportContainer.stretch] is [code]true[/code], the viewport size cannot "
"be changed manually."
msgstr ""
"La largeur et la hauteur du sub-viewport. Doit être défini à une valeur "
"supérieure ou égale à 2 pixels dans les deux dimensions. Sinon, rien ne sera "
"affiché.\n"
"[b]Note :[/b] Si le nœud parent est un [SubViewportContainer] et son [member "
"SubViewportContainer.stretch] vaut [code]true[/code], la taille du viewport "
"ne peut pas être modifiée manuellement."

msgid ""
"The 2D size override of the sub-viewport. If either the width or height is "
"[code]0[/code], the override is disabled."
msgstr ""
"La redéfinition de la taille 2D du sub-viewport. Si la largeur ou la hauteur "
"vaut [code]0[/code], la redéfinition est désactivée."

msgid "If [code]true[/code], the 2D size override affects stretch as well."
msgstr ""
"Si [code]true[/code], la redéfinition de la taille 2D affecte également "
"l'étirement."

msgid "Always clear the render target before drawing."
msgstr "Toujours effacer la cible de rendu avant d'y dessiner."

msgid "Never clear the render target."
msgstr "Ne jamais nettoyer la cible de rendu."

msgid ""
"Clear the render target on the next frame, then switch to [constant "
"CLEAR_MODE_NEVER]."
msgstr ""
"Vider la cible de rendu pour la trame suivante, puis passer en [constant "
"CLEAR_MODE_NEVER]."

msgid "Do not update the render target."
msgstr "Ne pas mettre à jour la cible de rendu."

msgid ""
"Update the render target once, then switch to [constant UPDATE_DISABLED]."
msgstr ""
"Mettre à jour la cible de rendu une seule fois, puis passer en mode [constant "
"UPDATE_DISABLED]."

msgid ""
"Update the render target only when it is visible. This is the default value."
msgstr ""
"Mettre à jour la cible de rendu seulement quand elle est visible. Il s'agit "
"de la valeur par défaut."

msgid "Update the render target only when its parent is visible."
msgstr "Mettre à jour la cible de rendu seulement quand son parent est visible."

msgid "Always update the render target."
msgstr "Mettre toujours à jour la cible de rendu."

msgid "A container used for displaying the contents of a [SubViewport]."
msgstr "Un conteneur utilisé pour afficher le contenu d'un [SubViewport]."

msgid ""
"A container that displays the contents of underlying [SubViewport] child "
"nodes. It uses the combined size of the [SubViewport]s as minimum size, "
"unless [member stretch] is enabled.\n"
"[b]Note:[/b] Changing a [SubViewportContainer]'s [member Control.scale] will "
"cause its contents to appear distorted. To change its visual size without "
"causing distortion, adjust the node's margins instead (if it's not already in "
"a container).\n"
"[b]Note:[/b] The [SubViewportContainer] forwards mouse-enter and mouse-exit "
"notifications to its sub-viewports."
msgstr ""
"Un conteneur qui affiche le contenu des nœuds enfants [SubViewport] sous-"
"jacents. Il utilise la taille combinée des [SubViewport] comme taille "
"minimale, à moins que [member stretch] ne soit activé.\n"
"[b]Note :[/b] Modifier l'échelle [member Control.scale] d'un "
"[SubViewportContainer] fera apparaître son contenu comme déformé. Pour "
"changer sa taille visuelle sans causer de déformation, ajustez les marges du "
"nœud à la place (s'il n'est pas déjà dans un conteneur).\n"
"[b]Note :[/b] Le [SubViewportContainer] transmet les notifications d'entrée "
"et de sortie de la souris à ses sub-viewports."

msgid ""
"Virtual method to be implemented by the user. If it returns [code]true[/"
"code], the [param event] is propagated to [SubViewport] children. Propagation "
"doesn't happen if it returns [code]false[/code]. If the function is not "
"implemented, all events are propagated to SubViewports."
msgstr ""
"Méthode virtuelle à implémenter par l'utilisateur. Si elle renvoie "
"[code]true[/code], l'événement [param event] est propagé aux enfants "
"[SubViewport]. La propagation n'arrive pas si elle renvoie [code]false[/"
"code]. Si la fonction n'est pas implémentée, tous les événements sont "
"propagés aux SubViewports."

msgid ""
"Configure, if either the [SubViewportContainer] or alternatively the "
"[Control] nodes of its [SubViewport] children should be available as targets "
"of mouse-related functionalities, like identifying the drop target in drag-"
"and-drop operations or cursor shape of hovered [Control] node.\n"
"If [code]false[/code], the [Control] nodes inside its [SubViewport] children "
"are considered as targets.\n"
"If [code]true[/code], the [SubViewportContainer] itself will be considered as "
"a target."
msgstr ""
"Configure, si soit le [SubViewportContainer] ou soit les nœuds [Control] de "
"ses enfants [SubViewport] devraient être disponibles comme cibles de "
"fonctionnalités liées à la souris, comme l'identification de la cible du "
"dépôt dans les opérations de glisser-déposer ou la forme de curseur du nœud "
"[Control] survolé.\n"
"Si [code]false[/code], les nœuds [Control] à l'intérieur de ses enfants "
"[SubViewport] sont considérés comme des cibles.\n"
"Si [code]true[/code], le [SubViewportContainer] lui-même sera considéré comme "
"une cible."

msgid ""
"If [code]true[/code], the sub-viewport will be automatically resized to the "
"control's size.\n"
"[b]Note:[/b] If [code]true[/code], this will prohibit changing [member "
"SubViewport.size] of its children manually."
msgstr ""
"Si [code]true[/code], le sub-viewport sera automatiquement redimensionné à la "
"taille du contrôle.\n"
"[b]Note :[/b] Si [code]true[/code], cela interdira de changer le [member "
"SubViewport.size] de ses enfants manuellement."

msgid ""
"Divides the sub-viewport's effective resolution by this value while "
"preserving its scale. This can be used to speed up rendering.\n"
"For example, a 1280×720 sub-viewport with [member stretch_shrink] set to "
"[code]2[/code] will be rendered at 640×360 while occupying the same size in "
"the container.\n"
"[b]Note:[/b] [member stretch] must be [code]true[/code] for this property to "
"work."
msgstr ""
"Divise la résolution effective du sub-viewport par cette valeur tout en "
"préservant son échelle. Cela peut être utilisé pour accélérer le rendu.\n"
"Par exemple, un sub-viewport de 1280×720 avec [member stretch_shrink] défini "
"à [code]2[/code] sera rendu à 640×360 tout en occupant la même taille dans le "
"conteneur.\n"
"[b]Note :[/b] [member stretch] doit valoir [code]true[/code] pour que cette "
"propriété fonctionne."

msgid "Helper tool to create geometry."
msgstr "Un outil d'aide pour créer du géométrie."

msgid "Using the SurfaceTool"
msgstr "Utiliser le SurfaceTool"

msgid ""
"Specifies the position of current vertex. Should be called after specifying "
"other vertex properties (e.g. Color, UV)."
msgstr ""
"Spécifie la position de l'actuel sommet. Doit être appelé après avoir "
"spécifié les autres propriétés du sommet (par ex. la couleur, l'UV)."

msgid ""
"Called before adding any vertices. Takes the primitive type as an argument "
"(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])."
msgstr ""
"Appelé avant d'ajouter des sommets. Cela prend le type primitif comme "
"argument (par exemple [constant Mesh.PRIMITIVE_TRIANGLES])."

msgid "Clear all information passed into the surface tool so far."
msgstr "Efface toutes les informations passées à l'outil de surface jusque là."

msgid "Creates a vertex array from an existing [Mesh]."
msgstr "Crée un tableau de sommets depuis un [Mesh] existant."

msgid "Removes the index array by expanding the vertex array."
msgstr "Supprime le tableau d'indices en augmentant celui des sommets."

msgid "Sets [Material] to be used by the [Mesh] you are constructing."
msgstr "Définit le [Material] à utiliser pour le [Mesh] qui vous construisez."

msgid ""
"Specifies a normal to use for the [i]next[/i] vertex. If every vertex needs "
"to have this information set and you fail to submit it for the first vertex, "
"this information may not be used at all."
msgstr ""
"Spécifie une normale à utiliser pour le sommet [i]suivant[/i]. Si chaque "
"sommet a besoin d'avoir cette information définie et que vous ne l'avez pas "
"fournie pour le premier sommet, cette information peut ne jamais être "
"utilisée."

msgid ""
"Specifies a tangent to use for the [i]next[/i] vertex. If every vertex needs "
"to have this information set and you fail to submit it for the first vertex, "
"this information may not be used at all."
msgstr ""
"Spécifie une tangente à utiliser pour le sommet [i]suivant[/i]. Si chaque "
"sommet a besoin d'avoir cette information définie et que vous ne l'avez pas "
"fournie pour le premier sommet, cette information peut ne jamais être "
"utilisée."

msgid ""
"Specifies a set of UV coordinates to use for the [i]next[/i] vertex. If every "
"vertex needs to have this information set and you fail to submit it for the "
"first vertex, this information may not be used at all."
msgstr ""
"Spécifie les coordonnées UV à utiliser pour le sommet [i]suivant[/i]. Si "
"chaque sommet a besoin d'avoir cette information définie et que vous ne "
"l'avez pas fournie pour le premier sommet, cette information peut ne jamais "
"être utilisée."

msgid ""
"Specifies an optional second set of UV coordinates to use for the [i]next[/i] "
"vertex. If every vertex needs to have this information set and you fail to "
"submit it for the first vertex, this information may not be used at all."
msgstr ""
"Spécifie les coordonnées UV secondaires facultatives à utiliser pour le "
"sommet [i]suivant[/i]. Si chaque sommet a besoin d'avoir cette information "
"définie et que vous ne l'avez pas fournie pour le premier sommet, cette "
"information peut ne jamais être utilisée."

msgid "Used to indicate a disabled custom channel."
msgstr "Utilisé pour indiquer un canal personnalisé désactivé."

msgid "Each individual vertex can be influenced by up to 8 bone weights."
msgstr ""
"Chaque somment individuel peut être influencé uniquement par 8 poids d'os."

msgid "Virtual method which can be overridden to clear any local caches."
msgstr ""
"Méthode virtuelle qui peut être surchargée pour nettoyer certains caches "
"locaux."

msgid ""
"Virtual method which can be overridden to return syntax highlighting data.\n"
"See [method get_line_syntax_highlighting] for more details."
msgstr ""
"Méthode virtuelle qui peut être redéfinie pour renvoyer des données de "
"syntaxe.\n"
"Voir [method get_line_syntax_highlighting] pour plus de détails."

msgid "Virtual method which can be overridden to update any local caches."
msgstr ""
"Méthode virtuelle qui peut être surchargée pour mettre à jour les caches "
"locaux."

msgid "Returns the associated [TextEdit] node."
msgstr "Renvoie le nœud [TextEdit] associé."

msgid "If set to [code]true[/code], italic or oblique font is preferred."
msgstr ""
"Si définit à [code]true[/code], les polices en italique ou oblique sont "
"préférées."

msgid "Array of font family names to search, first matching font found is used."
msgstr ""
"Tableau de noms de familles de polices à chercher, la première police "
"correspondante est utilisée."

msgid ""
"Preferred font stretch amount, compared to a normal width. A percentage value "
"between [code]50%[/code] and [code]200%[/code]."
msgstr ""
"Valeur préférée de l'étirement de la police, comparée une largeur normale. "
"Une valeur de pourcentage entre [code]50%[/code] et [code]200%[/code]."

msgid "Font hinting mode."
msgstr "Mode d'hinting de police."

msgid "A control that provides a horizontal bar with tabs."
msgstr "Un contrôle qui fournit une barre horizontale avec des onglets."

msgid ""
"A control that provides a horizontal bar with tabs. Similar to [TabContainer] "
"but is only in charge of drawing tabs, not interacting with children."
msgstr ""
"Un contrôle qui fournit une barre horizontale avec des onglets. Semblable à "
"[TabContainer] mais est seulement chargé de dessiner les onglets, pas "
"d'interagir avec les enfants."

msgid "Adds a new tab."
msgstr "Ajoute un nouvel onglet."

msgid "Clears all tabs."
msgstr "Efface tous les onglets."

msgid "Moves the scroll view to make the tab visible."
msgstr "Déplace la vue de défilement pour rendre l'onglet visible."

msgid ""
"Returns [code]true[/code] if the offset buttons (the ones that appear when "
"there's not enough space for all tabs) are visible."
msgstr ""
"Renvoie [code]true[/code] si les boutons de décalage (les boutons qui "
"apparaissent lorsqu'il n'y a pas assez d'espace pour tous les onglets) sont "
"visibles."

msgid "Returns the previously active tab index."
msgstr "Renvoie l'index de l'onglet précédemment actif."

msgid ""
"Returns the icon for the right button of the tab at index [param tab_idx] or "
"[code]null[/code] if the right button has no icon."
msgstr ""
"Renvoie l'icône pour le bouton droit de l'onglet à l'index [param tab_idx] ou "
"[code]null[/code] si le bouton droit n'a pas d'icône."

msgid ""
"Returns the icon for the tab at index [param tab_idx] or [code]null[/code] if "
"the tab has no icon."
msgstr ""
"Renvoie l'icône pour l'onglet à l'index [param tab_idx] ou [code]null[/code] "
"si l'onglet n'a pas d'icône."

msgid ""
"Returns the maximum allowed width of the icon for the tab at index [param "
"tab_idx]."
msgstr ""
"Renvoie la largeur maximale autorisée de l'icône pour l'onglet à l'index "
"[param tab_idx]."

msgid ""
"Returns the index of the tab at local coordinates [param point]. Returns "
"[code]-1[/code] if the point is outside the control boundaries or if there's "
"no tab at the queried position."
msgstr ""
"Renvoie l'index de l'onglet aux coordonnées locales [param point]. Renvoie "
"[code]-1[/code] si le point est en dehors des limites du contrôle ou s'il n'y "
"a pas d'onglet à la position demandée."

msgid "Returns tab title language code."
msgstr "Renvoie le code de langue de l'onglet."

msgid ""
"Returns the metadata value set to the tab at index [param tab_idx] using "
"[method set_tab_metadata]. If no metadata was previously set, returns "
"[code]null[/code] by default."
msgstr ""
"Renvoie la valeur des métadonnées définies dans l'onglet à l'index [param "
"tab_idx] en utilisant [method set_tab_metadata]. Si aucune métadonnée n'a été "
"précédemment définie, renvoie [code]null[/code] par défaut."

msgid "Returns the number of hidden tabs offsetted to the left."
msgstr "Renvoie le nombre d'onglets cachés décalés vers la gauche."

msgid "Returns tab [Rect2] with local position and size."
msgstr "Renvoie l'onglet [Rect2] avec la position et la taille locales."

msgid "Returns tab title text base writing direction."
msgstr "Renvoie la direction d'écriture de base du texte du titre de l'onglet."

msgid "Returns the title of the tab at index [param tab_idx]."
msgstr "Renvoie le titre de l'onglet à l'index [param tab_idx]."

msgid "Returns the tooltip text of the tab at index [param tab_idx]."
msgstr "Renvoie le texte de l'info-bulle de l'onglet à l'index [param tab_idx]."

msgid ""
"Returns [code]true[/code] if the tab at index [param tab_idx] is disabled."
msgstr ""
"Renvoie [code]true[/code] si l'onglet à la position [param tab_idx] est "
"désactivé."

msgid "Returns [code]true[/code] if the tab at index [param tab_idx] is hidden."
msgstr ""
"Renvoie [code]true[/code] si l'onglet à l'index [param tab_idx] est masqué."

msgid "Moves a tab from [param from] to [param to]."
msgstr "Déplace un onglet de [param from] à [param to]."

msgid "Removes the tab at index [param tab_idx]."
msgstr "Retire l'onglet à l'index [param tab_idx]."

msgid ""
"Selects the first available tab with greater index than the currently "
"selected. Returns [code]true[/code] if tab selection changed."
msgstr ""
"Sélectionne le premier onglet disponible avec un index supérieur à celui "
"actuellement sélectionné. Renvoie[code]true[/code] si la sélection d'onglet a "
"changé."

msgid ""
"Selects the first available tab with lower index than the currently selected. "
"Returns [code]true[/code] if tab selection changed."
msgstr ""
"Sélectionne le premier onglet disponible avec un index inférieur à celui "
"actuellement sélectionné. Renvoie[code]true[/code] si la sélection d'onglet a "
"changé."

msgid ""
"Sets an [param icon] for the button of the tab at index [param tab_idx] "
"(located to the right, before the close button), making it visible and "
"clickable (See [signal tab_button_pressed]). Giving it a [code]null[/code] "
"value will hide the button."
msgstr ""
"Définit un [param icon] pour le bouton de l'onglet à l'index [param tab_idx] "
"(qui se trouve à droite, avant de bouton de fermeture), le rendant visible et "
"cliquable (voir [signal tab_button_pressed]). Lui donner une valeur "
"[code]null[/code] cachera le bouton."

msgid ""
"If [param disabled] is [code]true[/code], disables the tab at index [param "
"tab_idx], making it non-interactable."
msgstr ""
"Si [param disabled] est [code]true[/code], désactive l'onglet à l'index "
"[param tab_idx], le rendant non-interactif."

msgid ""
"If [param hidden] is [code]true[/code], hides the tab at index [param "
"tab_idx], making it disappear from the tab area."
msgstr ""
"Si [param hidden] vaut [code]true[/code], cache l'onglet à l'index [param "
"tab_idx], le faisait disparaître de la zone des onglets."

msgid "Sets an [param icon] for the tab at index [param tab_idx]."
msgstr "Définit une icône [param icon] pour l'onglet à l'index [param tab_idx]."

msgid ""
"Sets the maximum allowed width of the icon for the tab at index [param "
"tab_idx]. This limit is applied on top of the default size of the icon and on "
"top of [theme_item icon_max_width]. The height is adjusted according to the "
"icon's ratio."
msgstr ""
"Définit la largeur maximale autorisée de l'icône pour l'onglet à l'index "
"[param tab_idx]. Cette limite est appliquée en plus de la taille par défaut "
"de l'icône et en plus de [theme_item icon_max_width]. La hauteur est ajustée "
"selon le ratio de l'icône."

msgid ""
"Sets language code of tab title used for line-breaking and text shaping "
"algorithms, if left empty current locale is used instead."
msgstr ""
"Définit le code de langue du titre de l'onglet utilisé pour les algorithmes "
"de retour à la ligne et de façonnage de texte. Si vide, la langue courante "
"est utilisée à la place."

msgid ""
"Sets the metadata value for the tab at index [param tab_idx], which can be "
"retrieved later using [method get_tab_metadata]."
msgstr ""
"Définit la valeur des métadonnées pour l'onglet à l'index [param tab_idx], "
"qui peuvent être récupérées plus tard en utilisant [method get_tab_metadata]."

msgid "Sets tab title base writing direction."
msgstr "Définit la direction d'écriture de base du titre de l'onglet."

msgid "Sets a [param title] for the tab at index [param tab_idx]."
msgstr "Définit un titre [param title] pour l'onglet à l'index [param tab_idx]."

msgid ""
"Sets a [param tooltip] for tab at index [param tab_idx].\n"
"[b]Note:[/b] By default, if the [param tooltip] is empty and the tab text is "
"truncated (not all characters fit into the tab), the title will be displayed "
"as a tooltip. To hide the tooltip, assign [code]\" \"[/code] as the [param "
"tooltip] text."
msgstr ""
"Définit une info-bulle [param tooltip] pour l'onglet à l'index [param "
"tab_idx].\n"
"[b]Note :[/b] Par défaut, si l'info-bulle [param tooltip] est vide et que le "
"texte de l'onglet est tronqué (les caractères ne rentrent pas tous dans "
"l'onglet), le titre sera affiché en tant qu'info-bulle. Pour cacher l'info-"
"bulle, assignez [code]\" \"[/code] comme texte de [param tooltip]."

msgid ""
"If [code]true[/code], tabs overflowing this node's width will be hidden, "
"displaying two navigation buttons instead. Otherwise, this node's minimum "
"size is updated so that all tabs are visible."
msgstr ""
"Si [code]true[/code], les onglets débordant de la largeur de ce nœud seront "
"cachés, affichant deux boutons de navigation à la place. Sinon, la taille "
"minimale de ce nœud est mise à jour de sorte que tous les onglets soient "
"visibles."

msgid ""
"If [code]true[/code], middle clicking on the mouse will fire the [signal "
"tab_close_pressed] signal."
msgstr ""
"Si [code]true[/code], un clic du milieu de la souris émettra le signal "
"[signal tab_close_pressed]."

msgid ""
"The index of the current selected tab. A value of [code]-1[/code] means that "
"no tab is selected and can only be set when [member deselect_enabled] is "
"[code]true[/code] or if all tabs are hidden or disabled."
msgstr ""
"L'index de l'onglet sélectionné actuel. Une valeur de [code]-1[/code] "
"signifie qu'aucun onglet n'est sélectionné et ne peut être défini que lorsque "
"[member deselect_enabled] vaut [code]true[/code] ou si tous les onglets sont "
"cachés ou désactivés."

msgid ""
"If [code]true[/code], all tabs can be deselected so that no tab is selected. "
"Click on the current tab to deselect it."
msgstr ""
"Si [code]true[/code], tous les onglets peuvent être désélectionnés de sorte "
"qu'aucun onglet ne soit sélectionné. Cliquez sur l'onglet actuel pour le "
"désélectionner."

msgid "If [code]true[/code], tabs can be rearranged with mouse drag."
msgstr ""
"Si [code]true[/code], les onglets peuvent être réarrangés avec par déposé-"
"glissé."

msgid ""
"Sets the maximum width which all tabs should be limited to. Unlimited if set "
"to [code]0[/code]."
msgstr ""
"Définit la largeur maximale à laquelle tous les onglets devraient être "
"limités. Illimités si défini à [code]0[/code]."

msgid ""
"If [code]true[/code], the tab offset will be changed to keep the currently "
"selected tab visible."
msgstr ""
"Si [code]true[/code], le décalage de l'onglet sera modifié pour garder "
"l'onglet actuellement sélectionné visible."

msgid ""
"if [code]true[/code], the mouse's scroll wheel can be used to navigate the "
"scroll view."
msgstr ""
"si [code]true[/code], la roue de défilement de la souris permet de naviguer "
"dans la vue de défilement."

msgid ""
"If [code]true[/code], enables selecting a tab with the right mouse button."
msgstr ""
"Si [code]true[/code], active la possibilité de sélectionner les onglets avec "
"le clic droit."

msgid "The position at which tabs will be placed."
msgstr "La position à laquelle les onglets seront placés."

msgid "When the close button will appear on the tabs."
msgstr "Quand est-ce que le bouton de fermeture apparaîtra sur les onglets."

msgid "The number of tabs currently in the bar."
msgstr "Le nombre d'onglets actuellement dans la barre."

msgid ""
"[TabBar]s with the same rearrange group ID will allow dragging the tabs "
"between them. Enable drag with [member drag_to_rearrange_enabled].\n"
"Setting this to [code]-1[/code] will disable rearranging between [TabBar]s."
msgstr ""
"Des [TabBar]s avec le même ID de groupe de réorganisation permettront de "
"glisser les onglets entre eux. Activez le glissement avec [member "
"drag_to_rearrange_enabled].\n"
"Définir ceci à [code]-1[/code] désactivera la réorganisation entre les "
"[TabBar]s."

msgid ""
"Emitted when the active tab is rearranged via mouse drag. See [member "
"drag_to_rearrange_enabled]."
msgstr ""
"Émis quand l'onglet actif est réarrangé en glissant la souris. Voir [member "
"drag_to_rearrange_enabled]."

msgid ""
"Emitted when a tab's right button is pressed. See [method "
"set_tab_button_icon]."
msgstr ""
"Émis quand le bouton droit d'un onglet est appuyé. Voir [method "
"set_tab_button_icon]."

msgid "Emitted when switching to another tab."
msgstr "Émis au changement d'onglet."

msgid "Emitted when a tab is clicked, even if it is the current tab."
msgstr "Émis quand un onglet est cliqué, même si c'est l'onglet actuel."

msgid ""
"Emitted when a tab's close button is pressed or when middle-clicking on a "
"tab, if [member close_with_middle_mouse] is enabled.\n"
"[b]Note:[/b] Tabs are not removed automatically once the close button is "
"pressed, this behavior needs to be programmed manually. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"$TabBar.tab_close_pressed.connect($TabBar.remove_tab)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<TabBar>(\"TabBar\").TabClosePressed += "
"GetNode<TabBar>(\"TabBar\").RemoveTab;\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Émis lorsque le bouton de fermeture d'un onglet est appuyé ou lors du clic du "
"milieu sur un onglet, si [member close_with_middle_mouse] est activé.\n"
"[b]Note :[/b] Les onglets ne sont pas supprimés automatiquement une fois le "
"bouton de fermeture appuyé, ce comportement doit être programmé manuellement. "
"Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"$TabBar.tab_close_pressed.connect($TabBar.remove_tab)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<TabBar>(\"TabBar\").TabClosePressed += "
"GetNode<TabBar>(\"TabBar\").RemoveTab;\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Emitted when a tab is hovered by the mouse."
msgstr "Émis quand un onglet est survolé par la souris."

msgid ""
"Emitted when a tab is right-clicked. [member select_with_rmb] must be enabled."
msgstr ""
"Émis lorsqu'un clic droit est fait sur un onglet. [member select_with_rmb] "
"doit être activé."

msgid ""
"Emitted when a tab is selected via click, directional input, or script, even "
"if it is the current tab."
msgstr ""
"Émis lorsqu'un onglet est sélectionné par un clic, une entrée directionnelle "
"ou un script, même s'il s'agit de l'onglet actuel."

msgid "Places tabs to the left."
msgstr "Aligne les onglets à gauche."

msgid "Places tabs in the middle."
msgstr "Aligne les onglets au milieu."

msgid "Places tabs to the right."
msgstr "Aligne les onglets à droite."

msgid "Represents the size of the [enum AlignmentMode] enum."
msgstr "Représente la taille de l’enum [enum AlignmentMode]."

msgid "Never show the close buttons."
msgstr "Ne jamais afficher les boutons fermer."

msgid "Only show the close button on the currently active tab."
msgstr "N'afficher le bouton fermer que pour l'onglet actif."

msgid "Show the close button on all tabs."
msgstr "Affiche le bouton fermer sur tous les onglets."

msgid "Represents the size of the [enum CloseButtonDisplayPolicy] enum."
msgstr "Représente la taille de l’enum [enum CloseButtonDisplayPolicy]."

msgid "Modulation color for the [theme_item drop_mark] icon."
msgstr "Couleur de modulation pour l'icône [theme_item drop_mark]."

msgid "Font color of disabled tabs."
msgstr "La couleur de la police pour les onglets désactivés."

msgid ""
"Font color of the currently hovered tab. Does not apply to the selected tab."
msgstr ""
"Couleur de la police de l'onglet actuellement survolé. Ne s'applique pas à "
"l'onglet sélectionné."

msgid "The tint of text outline of the tab name."
msgstr "La teinte du contour du texte du nom de l'onglet."

msgid "Font color of the currently selected tab."
msgstr "La couleur de la police pour l'onglet actuellement sélectionné."

msgid "Font color of the other, unselected tabs."
msgstr "Couleur de police pour les autres onglets, non sélectionnés."

msgid "The horizontal separation between the elements inside tabs."
msgstr "La séparation horizontale entre les éléments dans les onglets."

msgid ""
"The maximum allowed width of the tab's icon. This limit is applied on top of "
"the default size of the icon, but before the value set with [method "
"set_tab_icon_max_width]. The height is adjusted according to the icon's ratio."
msgstr ""
"La largeur maximale autorisée de l'icône de l'onglet. Cette limite est "
"appliquée en plus de la taille par défaut de l'icône, mais avant la valeur "
"définie avec [method set_tab_icon_max_width]. La hauteur est ajustée selon le "
"ratio de l'icône."

msgid ""
"The size of the tab text outline.\n"
"[b]Note:[/b] If using a font with [member "
"FontFile.multichannel_signed_distance_field] enabled, its [member "
"FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of "
"[theme_item outline_size] for outline rendering to look correct. Otherwise, "
"the outline may appear to be cut off earlier than intended."
msgstr ""
"La taille du contour du texte de l'onglet.\n"
"[b]Note :[/b] Lors de l'utilisation d'une police avec [member "
"FontFile.multichannel_signed_distance_field] activé, son [member "
"FontFile.msdf_pixel_range] doit être défini à au moins [i]deux fois[/i] la "
"valeur de [theme_item outline_size] pour que le rendu puisse être correct. "
"Sinon, le contour peut sembler être coupé plus tôt que prévu."

msgid "The space between tabs in the tab bar."
msgstr "L'espace entre les onglets dans la barre d'onglets."

msgid "The font used to draw tab names."
msgstr "La police utilisée pour les noms des onglets."

msgid "Font size of the tab names."
msgstr "Taille de police des noms d'onglet."

msgid "The icon for the close button (see [member tab_close_display_policy])."
msgstr "L'icône pour le bouton fermer (voir [member tab_close_display_policy])."

msgid ""
"Icon for the left arrow button that appears when there are too many tabs to "
"fit in the container width. When the button is disabled (i.e. the first tab "
"is visible), it appears semi-transparent."
msgstr ""
"L'icône pour le bouton flèche de gauche qui apparaît quand il y a trop "
"d'onglets à afficher dans le conteneur. Lorsque le bouton est désactivé "
"(c'est-à-dire le premier onglet est visible), il apparaît en semi-transparent."

msgid ""
"Icon for the left arrow button that appears when there are too many tabs to "
"fit in the container width. Used when the button is being hovered with the "
"cursor."
msgstr ""
"L'icône pour le bouton flèche de gauche qui apparaît quand il y a trop "
"d'onglets à afficher dans le conteneur. Utilisé quand le bouton est survolé "
"par le curseur."

msgid ""
"Icon for the right arrow button that appears when there are too many tabs to "
"fit in the container width. When the button is disabled (i.e. the last tab is "
"visible) it appears semi-transparent."
msgstr ""
"L'icône pour le bouton flèche de droite qui apparaît quand il y a trop "
"d'onglets à afficher dans le conteneur. Lorsque le bouton est désactivé "
"(c'est-à-dire le dernier onglet est visible), il apparaît en semi-transparent."

msgid ""
"Icon for the right arrow button that appears when there are too many tabs to "
"fit in the container width. Used when the button is being hovered with the "
"cursor."
msgstr ""
"L'icône pour le bouton flèche de droite qui apparaît quand il y a trop "
"d'onglets à afficher dans le conteneur. Utilisé quand le bouton est survolé "
"par le curseur."

msgid ""
"Background of the tab and close buttons when they're being hovered with the "
"cursor."
msgstr ""
"Arrière-plan de l'onglet et des boutons de fermeture quand ils sont survolés "
"avec le curseur."

msgid "Background of the tab and close buttons when it's being pressed."
msgstr ""
"Arrière-plan de l'onglet et des boutons de fermeture quand ils sont appuyés."

msgid "The style of disabled tabs."
msgstr "Le style des onglets désactivés."

msgid ""
"[StyleBox] used when the [TabBar] is focused. The [theme_item tab_focus] "
"[StyleBox] is displayed [i]over[/i] the base [StyleBox] of the selected tab, "
"so a partially transparent [StyleBox] should be used to ensure the base "
"[StyleBox] remains visible. A [StyleBox] that represents an outline or an "
"underline works well for this purpose. To disable the focus visual effect, "
"assign a [StyleBoxEmpty] resource. Note that disabling the focus visual "
"effect will harm keyboard/controller navigation usability, so this is not "
"recommended for accessibility reasons."
msgstr ""
"[StyleBox] utilisé lorsque le [TabBar] a le focus. La [StyleBox] [theme_item "
"tab_focus] est affichée [i]par-dessus[/i] la [StyleBox] de base de l'onglet "
"sélectionné, ainsi une [StyleBox] partiellement transparente devrait être "
"utilisée pour s'assurer que la [StyleBox] de base reste visible. Une "
"[StyleBox] qui représente un contour ou un soulignement fonctionne bien à "
"cette fin. Pour désactiver l'effet visuel du focus, assignez une ressource "
"[StyleBoxEmpty]. Notez que la désactivation de l'effet visuel du focus va "
"nuire à l'utilisabilité de la navigation clavier/contrôleur, ce qui n'est "
"donc pas recommandé pour des raisons d'accessibilité."

msgid ""
"The style of the currently hovered tab. Does not apply to the selected tab.\n"
"[b]Note:[/b] This style will be drawn with the same width as [theme_item "
"tab_unselected] at minimum."
msgstr ""
"Le style de l'onglet actuellement survolé. Ne s'applique pas à l'onglet "
"sélectionné.\n"
"[b]Note :[/b] Ce style sera dessiné avec la même largeur que [theme_item "
"tab_unselected] au minimum."

msgid "The style of the currently selected tab."
msgstr "Le style de l'onglet actuellement sélectionné."

msgid "The style of the other, unselected tabs."
msgstr "Le style des autres onglets, non sélectionnés."

msgid "Returns the child [Control] node located at the active tab index."
msgstr "Renvoie le nœud [Control] enfant localisé à l'index de l'onglet actif."

msgid ""
"Returns the [TabBar] contained in this container.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it or "
"editing its tabs may cause a crash. If you wish to edit the tabs, use the "
"methods provided in [TabContainer]."
msgstr ""
"Renvoie le [TabBar] contenu dans ce conteneur.\n"
"[b]Attention :[/b] Il s'agit d'un nœud interne nécessaire, l'enlever et le "
"libérer ou en éditer les onglets peut causer un plantage. Si vous souhaitez "
"modifier les onglets, utilisez les méthodes fournies dans [TabContainer]."

msgid "Returns the button icon from the tab at index [param tab_idx]."
msgstr "Renvoie l'icône du bouton dans l'onglet à l'index [param tab_idx]."

msgid "Returns the [Control] node from the tab at index [param tab_idx]."
msgstr "Renvoie le nœud [Control] de l'onglet à l'index [param tab_idx]."

msgid "Returns the number of tabs."
msgstr "Renvoie le nombre d'onglets."

msgid ""
"Returns the [Texture2D] for the tab at index [param tab_idx] or [code]null[/"
"code] if the tab has no [Texture2D]."
msgstr ""
"Renvoie la [Texture2D] pour l'onglet à l'index [param tab_idx] ou [code]null[/"
"code] si l'onglet n'a pas de [Texture2D]."

msgid "Sets the button icon from the tab at index [param tab_idx]."
msgstr "Définit l'icône du bouton de l'onglet à l'index [param tab_idx]."

msgid "Sets an icon for the tab at index [param tab_idx]."
msgstr "Définit une icône pour l'onglet à la position [param tab_idx]."

msgid ""
"If [code]true[/code], all tabs are drawn in front of the panel. If "
"[code]false[/code], inactive tabs are drawn behind the panel."
msgstr ""
"Si [code]true[/code], tous les onglets sont dessinés devant le panneau. Si "
"[code]false[/code], les onglets inactifs sont dessinés derrière le panneau."

msgid "The position of the tab bar."
msgstr "La position de la barre d'onglets."

msgid ""
"If [code]true[/code], tabs are visible. If [code]false[/code], tabs' content "
"and titles are hidden."
msgstr ""
"Si [code]true[/code], les onglets sont visibles. Si [code]false[/code], le "
"contenu des onglets et les titres sont masqués."

msgid ""
"Emitted when the [TabContainer]'s [Popup] button is clicked. See [method "
"set_popup] for details."
msgstr ""
"Émis quand le bouton [Popup] du [TabContainer] est cliqué. Voir [method "
"set_popup] pour les détails."

msgid "Emitted when the user clicks on the button icon on this tab."
msgstr "Émis lorsque l'utilisateur clique sur l'icône du bouton de cet onglet."

msgid "Represents the size of the [enum TabPosition] enum."
msgstr "Représente la taille de l'énumération [enum TabPosition]."

msgid "The icon for the menu button (see [method set_popup])."
msgstr "L'icône pour le bouton de menu (voir [method set_popup])."

msgid ""
"The icon for the menu button (see [method set_popup]) when it's being hovered "
"with the cursor."
msgstr ""
"L'icône du bouton de menu (voir [method set_popup]) quand il est survolé par "
"le curseur de la souris."

msgid "The style for the background fill."
msgstr "Le style pour le remplissage de l'arrière-plan."

msgid "The style for the background fill of the [TabBar] area."
msgstr "Le style pour le remplissage de l'arrière-plan de la zone [TabBar]."

msgid "A TCP server."
msgstr "Un serveur TCP."

msgid "Returns [code]true[/code] if a connection is available for taking."
msgstr ""
"Renvoie [code]true[/code] si une connexion est disponible pour être utilisée."

msgid ""
"Returns [code]true[/code] if the server is currently listening for "
"connections."
msgstr ""
"Renvoie [code]true[/code] si un serveur écoute actuellement pour de nouvelles "
"connexions."

msgid "Stops listening."
msgstr "Arrête d'écouter."

msgid ""
"If a connection is available, returns a StreamPeerTCP with the connection."
msgstr ""
"Si une connexion est disponible, renvoie un StreamPeerTCP avec cette "
"connexion."

msgid "A multiline text editor."
msgstr "Un éditeur de texte multi-ligne."

msgid ""
"Override this method to define what happens when the user performs a copy "
"operation."
msgstr ""
"Redéfinissez cette méthode pour définir ce qui se passe quand l'utilisateur "
"effectue une opération de copie."

msgid ""
"Override this method to define what happens when the user performs a cut "
"operation."
msgstr ""
"Redéfinissez cette méthode pour définir ce qui se passe quand l'utilisateur "
"effectue une opération de coupe."

msgid ""
"Override this method to define what happens when the user performs a paste "
"operation."
msgstr ""
"Redéfinissez cette méthode pour définir ce qui se passe quand l'utilisateur "
"effectue une opération de collage."

msgid "Clears the undo history."
msgstr "Efface l'historique des annulations."

msgid "Deletes the selected text."
msgstr "Supprime le texte sélectionné."

msgid "Deselects the current selection."
msgstr "Désélectionne la sélection actuelle."

msgid "Returns the first visible line."
msgstr "Renvoie la première ligne visible."

msgid "Returns the text of a specific line."
msgstr "Renvoie le texte pour la ligne renseignée."

msgid "Use [method get_selection_origin_column] instead."
msgstr "Utilisez [method get_selection_origin_column] à la place."

msgid "Use [method get_selection_origin_line] instead."
msgstr "Utilisez [method get_selection_origin_line] à la place."

msgid "Returns the current selection mode."
msgstr "Renvoie le mode de sélection actuel."

msgid "Returns the [TextEdit]'s' tab size."
msgstr "Renvoie la taille des tabulations du [TextEdit]."

msgid "Pastes the primary clipboard."
msgstr "Colle le presse-papier primaire."

msgid "Perform redo operation."
msgstr "Effectue une opération refaire."

msgid ""
"Select all the text.\n"
"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
"Sélectionne tout le texte.\n"
"Si [member selecting_enabled] est [code]false[/code], aucun sélection ne se "
"fera."

msgid "Selects the word under the caret."
msgstr "Sélectionne le mot sous le curseur."

msgid "Sets the current selection mode."
msgstr "Définit le mode de sélection actuel."

msgid "Tag the current version as saved."
msgstr "Marque la version actuelle comme sauvegardée."

msgid "Perform undo operation."
msgstr "Effectuer une opération d'annulation."

msgid "Set the type of caret to draw."
msgstr "Définit le type de curseur à dessiner."

msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr "Si [code]true[/code], le caractère espace \" \" sera affiché."

msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr "Si [code]true[/code], le caractère de tabulation sera affiché."

msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr ""
"Si [code]true[/code], toutes les occurrences du texte sélectionné sont "
"surlignées."

msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr ""
"Si [code]true[/code], la ligne contenant le curseur de texte est surlignée."

msgid "The width, in pixels, of the minimap."
msgstr "La largeur, en pixels, de la mini-carte."

msgid ""
"If there is a horizontal scrollbar, this determines the current horizontal "
"scroll value in pixels."
msgstr ""
"S'il y a une barre de défilement horizontale, cela détermine le décalage de "
"défilement horizontal actuel en pixels."

msgid ""
"If there is a vertical scrollbar, this determines the current vertical scroll "
"value in line numbers, starting at 0 for the top line."
msgstr ""
"S'il y a une barre de défilement verticale, cela détermine le décalage de "
"défilement vertical actuel en nombres de lignes, en commençant par 0 pour la "
"ligne du haut."

msgid ""
"If [code]true[/code], text can be selected.\n"
"If [code]false[/code], text can not be selected by the user or by the [method "
"select] or [method select_all] methods."
msgstr ""
"Si [code]true[/code], le texte peut être sélectionné.\n"
"Si [code]false[/code], le texte ne peut pas être sélectionné par "
"l'utilisateur ou par les méthodes [method select] ou [method select_all]."

msgid "String value of the [TextEdit]."
msgstr "Valeur de la chaîne de caractères du [TextEdit]."

msgid "Emitted when a gutter is added."
msgstr "Émis lorsqu'un bandeau est ajouté."

msgid "Emitted when a gutter is clicked."
msgstr "Émis lorsqu'un bandeau est cliqué."

msgid "Emitted when a gutter is removed."
msgstr "Émis lorsqu'un bandeau est supprimé."

msgid ""
"Emitted immediately when the text changes.\n"
"When text is added [param from_line] will be less than [param to_line]. On a "
"remove [param to_line] will be less than [param from_line]."
msgstr ""
"Émis immédiatement lorsque le texte change.\n"
"Lorsque le texte est ajouté, [param from_line] sera inférieur à [param "
"to_line]. Sur une suppression, [param to_line] sera inférieur à [param "
"from_line]."

msgid "Emitted when [method clear] is called or [member text] is set."
msgstr ""
"Émis lorsque [method clear] est appelée ou que [member text] est défini."

msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
"Colle le texte dans le presse-papiers sur le texte sélectionné (ou à la "
"position du curseur)."

msgid "Erases the whole [TextEdit] text."
msgstr "Efface l’ensemble du texte [TextEdit]."

msgid "Selects the whole [TextEdit] text."
msgstr "Sélectionne l'ensemble du texte [TextEdit]."

msgid "Redoes the previous action."
msgstr "Refait l’action précédente."

msgid "No current action."
msgstr "Pas d'action actuelle."

msgid "A typing action."
msgstr "Action de saisie."

msgid "Match case when searching."
msgstr "Respecte la casse lors de la recherche."

msgid "Match whole words when searching."
msgstr "Faites correspondre des mots entiers lors de la recherche."

msgid "Search from end to beginning."
msgstr "Recherche de la fin au début."

msgid "Block caret."
msgstr "Bloc curseur."

msgid "Not selecting."
msgstr "Aucune sélection."

msgid "Sets the background [Color] of this [TextEdit]."
msgstr "Définit la [Color] d'arrière-plan pour ce [TextEdit]."

msgid "Sets the font [Color]."
msgstr "Définit la police [Color]."

msgid "[Color] of the border around text that matches the search query."
msgstr ""
"[Color] de la bordure autour du texte qui correspond à la requête de "
"recherche."

msgid "[Color] behind the text that matches the search query."
msgstr "[Color] derrière le texte qui correspond à la requête de recherche."

msgid "Sets the highlight [Color] of text selections."
msgstr "Définit la [Color] de surlignage pour la sélection de texte."

msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
msgstr ""
"Définir la [Color] de surlignage des multiples occurrences. [member "
"highlight_all_occurrences] doit être actif."

msgid "Sets the default [Font]."
msgstr "Définit la [Font] par défaut."

msgid "Sets default font size."
msgstr "Définit la taille de police par défaut."

msgid "Sets a custom [Texture2D] for tab text characters."
msgstr "Définit une [Texture2D] personnalisée pour le caractère de tabulation."

msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr "Définit la [StyleBox] pour ce [TextEdit]."

msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member editable] is disabled."
msgstr ""
"Définit la [StyleBox] de ce [TextEdit] quand [member editable] est désactivé."

msgid "Holds a line of text."
msgstr "Contient une ligne de texte."

msgid "Abstraction over [TextServer] for handling a single line of text."
msgstr ""
"Abstraction sur [TextServer] pour la manipulation d'une seule ligne de texte."

msgid "Returns TextServer buffer RID."
msgstr "Renvoie le RID de buffer du TextServer."

msgid "Sets new size and alignment of embedded object."
msgstr "Définit la nouvelle taille et alignement de l'objet intégré."

msgid ""
"Overrides BiDi for the structured text.\n"
"Override ranges should cover full source text without overlaps. BiDi "
"algorithm will be used on each range separately."
msgstr ""
"Redéfinit la BiDi pour le texte structuré.\n"
"Les plages de redéfinition devraient couvrir le texte source complet sans "
"chevauchements. L'algorithme BiDi sera utilisé sur chaque plage séparément."

msgid "Sets text alignment within the line as if the line was horizontal."
msgstr ""
"Définit l'alignement de texte dans la ligne comme si la ligne était "
"horizontale."

msgid "Text writing direction."
msgstr "Direction d'écriture du texte."

msgid "Line alignment rules. For more info see [TextServer]."
msgstr ""
"Règles d'alignement de la ligne. Pour plus d'informations, voir [TextServer]."

msgid "Text orientation."
msgstr "Orientation du texte."

msgid "If set to [code]true[/code] text will display control characters."
msgstr ""
"Si défini à [code]true[/code], le texte affichera les caractères de contrôle."

msgid "If set to [code]true[/code] text will display invalid characters."
msgstr ""
"Si défini à [code]true[/code], le texte affichera les caractères invalides."

msgid "The clipping behavior when the text exceeds the text line's set width."
msgstr ""
"Le comportement de coupure lorsque le texte dépasse la largeur de la ligne de "
"texte."

msgid "Text line width."
msgstr "La largeur de la ligne de texte."

msgid "Generate a [PrimitiveMesh] from the text."
msgstr "Génère un [PrimitiveMesh] à partir du texte."

msgid "Step (in pixels) used to approximate Bézier curves."
msgstr "Pas (en pixels) utilisée pour approximer les courbes de Bézier."

msgid "The size of one pixel's width on the text to scale it in 3D."
msgstr "La taille d'un des pixels du texte pour définir sa taille en 3D."

msgid "Holds a paragraph of text."
msgstr "Contient un paragraphe de texte."

msgid "Removes dropcap."
msgstr "Enlève la lettrine."

msgid "Returns number of lines in the paragraph."
msgstr "Renvoie le nombre de lignes dans le paragraphe."

msgid "Paragraph horizontal alignment."
msgstr "Alignement horizontal de paragraphe."

msgid "Paragraph width."
msgstr "Largeur du paragraphe."

msgid ""
"Draws box displaying character hexadecimal code. Used for replacing missing "
"characters."
msgstr ""
"Dessine une boîte qui affiche un code hexadécimal de caractère. Utilisé pour "
"remplacer les caractères manquants."

msgid "Returns font anti-aliasing mode."
msgstr "Renvoie le mode d'anticrénelage de la police."

msgid "Deprecated. This method always returns [code]1.0[/code]."
msgstr "Obsolète. Cette méthode renvoie toujours [code]1.0[/code]."

msgid "Returns a string containing all the characters available in the font."
msgstr ""
"Renvoie une chaîne contenant tous les caractères disponibles dans la police."

msgid ""
"Returns [code]true[/code] if system fonts can be automatically used as "
"fallbacks."
msgstr ""
"Renvoie [code]true[/code] si les polices du système peuvent être "
"automatiquement utilisées comme des repli."

msgid "Sets font anti-aliasing mode."
msgstr "Définit le mode d'anticrénelage de la police."

msgid "Deprecated. This method does nothing."
msgstr "Obsolète. Cette méthode ne fait rien."

msgid "Returns [code]true[/code] if locale is right-to-left."
msgstr "Renvoie [code]true[/code] si la langue va de droite à gauche."

msgid "Returns text span metadata."
msgstr "Renvoie les métadonnées de largeur du texte."

msgid "Returns text orientation."
msgstr "Renvoie l'orientation du texte."

msgid "Represents the size of the [enum FontLCDSubpixelLayout] enum."
msgstr "Représente la taille de l’enum [enum FontLCDSubpixelLayout]."

msgid "Text is written horizontally."
msgstr "Le texte est écrit horizontalement."

msgid ""
"Left to right text is written vertically from top to bottom.\n"
"Right to left text is written vertically from bottom to top."
msgstr ""
"Le texte de gauche à droite est écrit verticalement de haut en bas.\n"
"Le texte de droite à gauche est écrit verticalement de bas en haut."

msgid "Do not justify text."
msgstr "Ne pas justifier le texte."

msgid "Autowrap is disabled."
msgstr "Le retour à la ligne automatique est désactivé."

msgid "Disables font hinting (smoother but less crisp)."
msgstr "Désactive le \"font hinting\" (plus lisse mais moins net)."

msgid "Use the light font hinting mode."
msgstr "Utiliser le mode d'hinting de police léger."

msgid "TextServer supports simple text layouts."
msgstr "TextServer supporte des dispositions de texte simples."

msgid "TextServer supports bidirectional text layouts."
msgstr "TextServer supporte des dispositions de texte bidirectionnelles."

msgid "TextServer supports vertical layouts."
msgstr "TextServer supporte les dispositions verticales."

msgid "TextServer supports complex text shaping."
msgstr "TextServer supporte le text shaping complexe."

msgid "TextServer supports loading bitmap fonts."
msgstr "TextServer supporte le chargement de polices matricielles."

msgid "TextServer supports loading system fonts."
msgstr "TextServer supporte le chargement de polices du système."

msgid "Spacing for the space character."
msgstr "L'espacement pour le caractère d'espace."

msgid "Represents the size of the [enum SpacingType] enum."
msgstr "Représente la taille de l'énumération [enum SpacingType]."

msgid "Font is bold."
msgstr "La police est en gras."

msgid "Font is italic or oblique."
msgstr "La police est en italique ou en oblique."

msgid "A dummy text server that can't render text or manage fonts."
msgstr ""
"Un serveur de texte factice qui ne peut pas rendre du texte ou gérer des "
"polices."

msgid ""
"Converts a number from the Western Arabic (0..9) to the numeral systems used "
"in [param language]."
msgstr ""
"Convertit un nombre du système arabique occidental (0..9) vers les systèmes "
"numériques utilisés dans [param language]."

msgid ""
"Returns [code]true[/code] if text buffer is configured to display hexadecimal "
"codes in place of invalid characters."
msgstr ""
"Renvoie [code]true[/code] si le buffer de texte est configuré pour afficher "
"des codes hexadécimaux à la place des caractères invalides."

msgid "Sets desired text orientation."
msgstr "Définit l'orientation du texte désirée."

msgid "Returns the string converted to lowercase."
msgstr "Renvoie la chaîne convertie en minuscule."

msgid "Registers a [TextServer] interface."
msgstr "Enregistre une interface [TextServer]."

msgid "Emitted when a new interface has been added."
msgstr "Émis lorsqu'une nouvelle interface a été ajoutée."

msgid "Emitted when an interface is removed."
msgstr "Émis lorsqu'une interface est supprimée."

msgid "Base class for all texture types."
msgstr "Classe de base pour tous les types de textures."

msgid ""
"[Texture] is the base class for all texture types. Common texture types are "
"[Texture2D] and [ImageTexture]. See also [Image]."
msgstr ""
"[Texture] est la classe de base pour tous les types de textures. Les types de "
"textures communs sont [Texture2D] et [ImageTexture]. Voir aussi [Image]."

msgid "Texture for 2D and 3D."
msgstr "Texture pour 2D et 3D."

msgid ""
"A texture works by registering an image in the video hardware, which then can "
"be used in 3D models or 2D [Sprite2D] or GUI [Control].\n"
"Textures are often created by loading them from a file. See [method "
"@GDScript.load].\n"
"[Texture2D] is a base for other resources. It cannot be used directly.\n"
"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
"hardware limitations. Larger textures may fail to import."
msgstr ""
"Une texture fonctionne en inscrivant une image dans le matériel vidéo, qui "
"peut ensuite être utilisée dans des modèles 3D ou de[Sprite2D] 2D ou des "
"[Control] de GUI.\n"
"Les textures sont souvent créées en les chargeant depuis un fichier. Voir "
"[method @GDScript.load].\n"
"[Texture2D] est une base pour d'autres ressources. Elle ne peut pas être "
"utilisée directement.\n"
"[b]Note :[/b] La taille maximale d'une texture est de 16384×16384 pixels en "
"raison des limitations matérielles graphiques. Les textures plus grandes "
"peuvent ne pas s'importer."

msgid ""
"Called when the entire [Texture2D] is requested to be drawn over a "
"[CanvasItem], with the top-left offset specified in [param pos]. [param "
"modulate] specifies a multiplier for the colors being drawn, while [param "
"transpose] specifies whether drawing should be performed in column-major "
"order instead of row-major order (resulting in 90-degree clockwise "
"rotation).\n"
"[b]Note:[/b] This is only used in 2D rendering, not 3D."
msgstr ""
"Appelée lorsque la [Texture2D] entière est demandée à être dessinée sur un "
"[CanvasItem], avec le décalage supérieur gauche spécifié dans [param pos]. "
"[param modulate] spécifie un multiplicateur pour les couleurs dessinées, "
"tandis que [param transpose] spécifie si le dessin doit être effectué dans "
"l'ordre des colonnes plutôt que dans l'ordre des lignes (résultant en une "
"rotation de 90 degrés).\n"
"[b]Note :[/b] Ceci est seulement utilisé dans le rendu 2D, pas 3D."

msgid ""
"Called when the [Texture2D] is requested to be drawn onto [CanvasItem]'s "
"specified [param rect]. [param modulate] specifies a multiplier for the "
"colors being drawn, while [param transpose] specifies whether drawing should "
"be performed in column-major order instead of row-major order (resulting in "
"90-degree clockwise rotation).\n"
"[b]Note:[/b] This is only used in 2D rendering, not 3D."
msgstr ""
"Appelée lorsque la [Texture2D] est demandée à être dessinée sur le [param "
"rect] spécifié d'un [CanvasItem]. [param modulate] spécifie un multiplicateur "
"pour les couleurs dessinées, tandis que [param transpose] spécifie si le "
"dessin doit être effectué dans l'ordre des colonnes plutôt que dans l'ordre "
"des lignes (résultant en une rotation de 90 degrés).\n"
"[b]Note :[/b] Ceci est seulement utilisé dans le rendu 2D, pas 3D."

msgid ""
"Called when a part of the [Texture2D] specified by [param src_rect]'s "
"coordinates is requested to be drawn onto [CanvasItem]'s specified [param "
"rect]. [param modulate] specifies a multiplier for the colors being drawn, "
"while [param transpose] specifies whether drawing should be performed in "
"column-major order instead of row-major order (resulting in 90-degree "
"clockwise rotation).\n"
"[b]Note:[/b] This is only used in 2D rendering, not 3D."
msgstr ""
"Appelée lorsque une partie de la [Texture2D] spécifiée par les coordonnées de "
"[param src_rect] est demandée à être dessinée sur le [param rect] spécifié "
"d'un [CanvasItem]. [param modulate] spécifie un multiplicateur pour les "
"couleurs dessinées, tandis que [param transpose] spécifie si le dessin doit "
"être effectué dans l'ordre des colonnes plutôt que dans l'ordre des lignes "
"(résultant en une rotation de 90 degrés).\n"
"[b]Note :[/b] Ceci est seulement utilisé dans le rendu 2D, pas 3D."

msgid "Called when the [Texture2D]'s height is queried."
msgstr "Appelée quand la hauteur de la [Texture2D] est demandée."

msgid "Called when the [Texture2D]'s width is queried."
msgstr "Appelée quand la largeur de la [Texture2D] est demandée."

msgid ""
"Called when the presence of an alpha channel in the [Texture2D] is queried."
msgstr ""
"Appelée lorsque la présence d'un canal alpha dans la [Texture2D] est demandé."

msgid ""
"Called when a pixel's opaque state in the [Texture2D] is queried at the "
"specified [code](x, y)[/code] position."
msgstr ""
"Appelée lorsque l'état d'opacité d'un pixel dans la [Texture2D] est demandé à "
"la position [code](x, y)[/code] spécifiée."

msgid "Creates a placeholder version of this resource ([PlaceholderTexture2D])."
msgstr ""
"Crée une version placeholder de cette ressource ([PlaceholderTexture2D])."

msgid ""
"Draws the texture using a [CanvasItem] with the [RenderingServer] API at the "
"specified [param position]."
msgstr ""
"Dessine la texture en utilisant un [CanvasItem] avec l'API [RenderingServer] "
"à la [param position] spécifiée."

msgid "Draws the texture using a [CanvasItem] with the [RenderingServer] API."
msgstr ""
"Dessine la texture en utilisant un [CanvasItem] avec l'API [RenderingServer]."

msgid ""
"Draws a part of the texture using a [CanvasItem] with the [RenderingServer] "
"API."
msgstr ""
"Dessine une partie de la texture en utilisant un [CanvasItem] avec l'API "
"[RenderingServer]."

msgid "Returns the texture height in pixels."
msgstr "Renvoie la hauteur de la texture en pixels."

msgid ""
"Returns an [Image] that is a copy of data from this [Texture2D] (a new "
"[Image] is created each time). [Image]s can be accessed and manipulated "
"directly.\n"
"[b]Note:[/b] This will return [code]null[/code] if this [Texture2D] is "
"invalid.\n"
"[b]Note:[/b] This will fetch the texture data from the GPU, which might cause "
"performance problems when overused. Avoid calling [method get_image] every "
"frame, especially on large textures."
msgstr ""
"Renvoie une [Image] qui est une copie des données de cette [Texture2D] (une "
"nouvelle [Image] est créée à chaque fois). Les [Image]s peuvent être accédées "
"et manipulées directement.\n"
"[b]Note :[/b] Cela renverra [code]null[/code] si cette [Texture2D] est "
"invalide.\n"
"[b]Note :[/b] Cela récupérera les données de texture du GPU, ce qui pourrait "
"causer des problèmes de performance lorsque surutilisé. Évitez d'appeler "
"[method get_image] à chaque trame, en particulier sur de grandes textures."

msgid "Returns the texture size in pixels."
msgstr "Renvoie la taille de la texture en pixels."

msgid "Returns the texture width in pixels."
msgstr "Renvoie la largeur de texture en pixels."

msgid "Returns [code]true[/code] if this [Texture2D] has an alpha channel."
msgstr "Renvoie [code]true[/code] si cette [Texture2D] a un canal alpha."

msgid ""
"A single texture resource which consists of multiple, separate images. Each "
"image has the same dimensions and number of mipmap levels."
msgstr ""
"Une ressource de texture unique qui consiste en plusieurs images séparées. "
"Chaque image a les mêmes dimensions et le nombre de niveaux de mipmap."

msgid ""
"Creates a placeholder version of this resource ([PlaceholderTexture2DArray])."
msgstr ""
"Crée une version placeholder de cette ressource ([PlaceholderTexture2DArray])."

msgid "Called when the [Texture3D]'s data is queried."
msgstr "Appelée quand les données de la [Texture3D] sont demandées."

msgid "Called when the [Texture3D]'s depth is queried."
msgstr "Appelée quand la profondeur de la [Texture3D] est demandée."

msgid "Called when the [Texture3D]'s format is queried."
msgstr "Appelée quand le format de la [Texture3D] est demandé."

msgid "Called when the [Texture3D]'s height is queried."
msgstr "Appelée quand la hauteur de la [Texture3D] est demandée."

msgid "Called when the [Texture3D]'s width is queried."
msgstr "Appelée quand la largeur de la [Texture3D] est demandée."

msgid "Creates a placeholder version of this resource ([PlaceholderTexture3D])."
msgstr ""
"Crée une version placeholder de cette ressource ([PlaceholderTexture3D])."

msgid "Returns [code]true[/code] if the [Texture3D] has generated mipmaps."
msgstr "Renvoie [code]true[/code] si la [Texture3D] a des mipmaps générées."

msgid ""
"Texture-based button. Supports Pressed, Hover, Disabled and Focused states."
msgstr ""
"Un bouton affiché avec une Texture. Supporte les états appuyé, survolé, "
"désactivé, et avec le focus."

msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
"Image [BitMap] en pur noir et blanc à utiliser pour la détection de clics. "
"Sur le masque, les pixels blancs représentent la zone cliquable du bouton. "
"Utilisez-le pour créer des boutons avec des formes courbes."

msgid "Scale to fit the node's bounding rectangle."
msgstr "Change l'échelle pour adapter le rectangle total du nœud."

msgid "Tile inside the node's bounding rectangle."
msgstr "Répétition à l'intérieur du rectangle délimitant du nœud."

msgid ""
"The texture keeps its original size and stays in the bounding rectangle's top-"
"left corner."
msgstr ""
"La texture conserve sa taille d’origine et reste dans le coin supérieur "
"gauche du rectangle délimitant."

msgid ""
"The texture keeps its original size and stays centered in the node's bounding "
"rectangle."
msgstr ""
"La texture conserve sa taille d’origine et reste centrée dans le rectangle "
"délimitant du nœud."

msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
"Échelonne la texture pour s'adapter au rectangle délimitant du nœud, mais "
"maintient le rapport d'aspect de la texture."

msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
msgstr ""
"Échelonne la texture pour que le côté le plus court rentre dans le rectangle "
"délimitant du nœud. L'autre côté est coupé aux limites du nœud."

msgid "Returns the number of referenced [Image]s."
msgstr "Renvoie le nombre d'[Image]s référencées."

msgid "Returns [code]true[/code] if the layers have generated mipmaps."
msgstr "Renvoie [code]true[/code] si les couches ont des mipmaps générées."

msgid ""
"Texture-based progress bar. Useful for loading screens and life or stamina "
"bars."
msgstr ""
"Barre de progression avec une texture. Utile pour les écrans de chargement et "
"les barres de vie ou d'endurance."

msgid ""
"TextureProgressBar works like [ProgressBar], but uses up to 3 textures "
"instead of Godot's [Theme] resource. It can be used to create horizontal, "
"vertical and radial progress bars."
msgstr ""
"TextureProgressBar fonctionne comme [ProgressBar], mais utilise jusqu'à 3 "
"textures au lieu de la ressource [Theme] de Godot. Elle peut être utilisée "
"pour créer des barres de progression horizontales, verticales et radiales."

msgid ""
"Returns the stretch margin with the specified index. See [member "
"stretch_margin_bottom] and related properties."
msgstr ""
"Renvoie la marge d'étirement avec l'index spécifié. Voir [member "
"stretch_margin_bottom] et les propriétés liées."

msgid ""
"Sets the stretch margin with the specified index. See [member "
"stretch_margin_bottom] and related properties."
msgstr ""
"Définit la marge d'étirement avec l'index spécifié. Voir [member "
"stretch_margin_bottom] et les propriétés liées."

msgid ""
"If [code]true[/code], Godot treats the bar's textures like in "
"[NinePatchRect]. Use the [code]stretch_margin_*[/code] properties like "
"[member stretch_margin_bottom] to set up the nine patch's 3×3 grid. When "
"using a radial [member fill_mode], this setting will only enable stretching "
"for [member texture_progress], while [member texture_under] and [member "
"texture_over] will be treated like in [NinePatchRect]."
msgstr ""
"Si [code]true[/code], Godot traite les textures de la barre comme dans "
"[NinePatchRect]. Utilisez les propriétés [code]stretch_margin_*[/code] comme "
"[member stretch_margin_bottom] pour configurer la grille 3×3 des neuf patchs. "
"Lors de l'utilisation d'un mode de remplissage [member fill_mode] radial, ce "
"paramètre n'activera l'étirement que pour [member texture_progress], tandis "
"que [member texture_under] et [member texture_over] seront traités comme dans "
"[NinePatchRect]."

msgid ""
"Offsets [member texture_progress] if [member fill_mode] is [constant "
"FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], or [constant "
"FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE].\n"
"[b]Note:[/b] The effective radial center always stays within the [member "
"texture_progress] bounds. If you need to move it outside the texture's "
"bounds, modify the [member texture_progress] to contain additional empty "
"space where needed."
msgstr ""
"Décale [member texture_progress] si [member fill_mode] vaut [constant "
"FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], ou [constant "
"FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE].\n"
"[b]Note :[/b] Le centre radial effectif reste toujours dans les limites de "
"[member texture_progress]. Si vous devez le déplacer en dehors des limites de "
"la texture, modifiez [member texture_progress] pour contenir un espace vide "
"supplémentaire où il y en a besoin."

msgid ""
"Upper limit for the fill of [member texture_progress] if [member fill_mode] "
"is [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], or [constant "
"FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. When the node's [code]value[/code] is "
"equal to its [code]max_value[/code], the texture fills up to this angle.\n"
"See [member Range.value], [member Range.max_value]."
msgstr ""
"Limite supérieure pour le remplissage de [member texture_progress] si [member "
"fill_mode] vaut [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], "
"ou [constant FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. Lorsque la valeur "
"[code]value[/code] du nœud est égale à sa valeur maximale [code]max_value[/"
"code], la texture se remplit jusqu'à cet angle.\n"
"Voir [member Range.value], [member Range.max_value]."

msgid ""
"Starting angle for the fill of [member texture_progress] if [member "
"fill_mode] is [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], "
"or [constant FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. When the node's "
"[code]value[/code] is equal to its [code]min_value[/code], the texture "
"doesn't show up at all. When the [code]value[/code] increases, the texture "
"fills and tends towards [member radial_fill_degrees].\n"
"[b]Note:[/b] [member radial_initial_angle] is wrapped between [code]0[/code] "
"and [code]360[/code] degrees (inclusive)."
msgstr ""
"Angle de départ pour le remplissage de [member texture_progress] si [member "
"fill_mode] vaut [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], "
"ou [constant FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. Lorsque la valeur "
"[code]value[/code] du nœud est égale à sa valeur minimale [code]min_value[/"
"code], la texture ne s'affiche pas du tout. Lorsque la valeur [code]value[/"
"code] augmente, la texture se remplit et tend vers [member "
"radial_fill_degrees].\n"
"[b]Note :[/b] [member radial_initial_angle] est enroulé entre [code]0[/code] "
"et [code]360[/code] degrés (inclusifs)."

msgid ""
"The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's "
"bottom corners and side will have a height of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders. Only "
"effective if [member nine_patch_stretch] is [code]true[/code]."
msgstr ""
"La hauteur de la ligne du bas des 9 patchs. Une marge de 16 signifie que les "
"angles du bas des 9 patchs et les côtés auront une hauteur de 16 pixels. Vous "
"pouvez définir les 4 valeurs de marge individuellement pour créer des "
"panneaux avec des bordures non uniformes. Seulement effectif si [member "
"nine_patch_stretch] vaut [code]true[/code]."

msgid ""
"The width of the 9-patch's left column. Only effective if [member "
"nine_patch_stretch] is [code]true[/code]."
msgstr ""
"La largeur de la colonne de gauche du 9-patchs. Seulement effectif si [member "
"nine_patch_stretch] vaut [code]true[/code]."

msgid ""
"The width of the 9-patch's right column. Only effective if [member "
"nine_patch_stretch] is [code]true[/code]."
msgstr ""
"La largeur de la colonne de droite du 9-patchs. Seulement effectif si [member "
"nine_patch_stretch] vaut [code]true[/code]."

msgid ""
"The height of the 9-patch's top row. Only effective if [member "
"nine_patch_stretch] is [code]true[/code]."
msgstr ""
"La hauteur de la ligne du haut du 9-patchs. Seulement effectif si [member "
"nine_patch_stretch] vaut [code]true[/code]."

msgid ""
"[Texture2D] that draws over the progress bar. Use it to add highlights or an "
"upper-frame that hides part of [member texture_progress]."
msgstr ""
"[Texture2D] qui se dessine sur la barre de progression. Utilisez la pour "
"accentuer des parties ou ajouter un cadre par dessus qui cache une partie de "
"[member texture_progress]."

msgid ""
"[Texture2D] that clips based on the node's [code]value[/code] and [member "
"fill_mode]. As [code]value[/code] increased, the texture fills up. It shows "
"entirely when [code]value[/code] reaches [code]max_value[/code]. It doesn't "
"show at all if [code]value[/code] is equal to [code]min_value[/code].\n"
"The [code]value[/code] property comes from [Range]. See [member Range.value], "
"[member Range.min_value], [member Range.max_value]."
msgstr ""
"[Texture2D] qui se coupe selon la valeur [code]value[/code] du nœud et "
"[member fill_mode]. Quand la valeur [code]value[/code] augmente, la texture "
"se remplit. Elle est affichée entièrement lorsque [code]value[/code] atteint "
"[code]max_value[/code]. Elle n'est pas du tout affiché si [code]value[/code] "
"est égale à [code]min_value[/code].\n"
"La propriété [code]value[/code] provient de [Range]. Voir [member "
"Range.value], [member Range.min_value], [member Range.max_value]."

msgid ""
"The offset of [member texture_progress]. Useful for [member texture_over] and "
"[member texture_under] with fancy borders, to avoid transparent margins in "
"your progress texture."
msgstr ""
"Le décalage de [member texture_progress]. Utile pour [member texture_over] et "
"[member texture_under] avec des bordures détaillées, pour éviter des marges "
"transparentes dans votre texture de progression."

msgid "[Texture2D] that draws under the progress bar. The bar's background."
msgstr ""
"[Texture2D] qui est dessinée sous la barre de progression. L'arrière-plan de "
"la barre."

msgid ""
"Multiplies the color of the bar's [member texture_over] texture. The effect "
"is similar to [member CanvasItem.modulate], except it only affects this "
"specific texture instead of the entire node."
msgstr ""
"Multiplie la couleur de la texture [member texture_over] de la barre. L'effet "
"est semblable à [member CanvasItem.modulate], sauf qu'il affecte seulement "
"cette texture spécifique au lieu de l'ensemble du nœud."

msgid "Multiplies the color of the bar's [member texture_progress] texture."
msgstr ""
"Multiplie la couleur de la texture [member texture_progress] de la barre."

msgid "Multiplies the color of the bar's [member texture_under] texture."
msgstr "Multiplie la couleur de la texture [member texture_under] de la barre."

msgid "The [member texture_progress] fills from left to right."
msgstr "La [member texture_progress] remplis de gauche à droite."

msgid "The [member texture_progress] fills from right to left."
msgstr "La [member texture_progress] remplis de droite à gauche."

msgid "The [member texture_progress] fills from top to bottom."
msgstr "La [member texture_progress] remplis de haut en bas."

msgid "The [member texture_progress] fills from bottom to top."
msgstr "La [member texture_progress] remplis de bas en haut."

msgid ""
"Turns the node into a radial bar. The [member texture_progress] fills "
"clockwise. See [member radial_center_offset], [member radial_initial_angle] "
"and [member radial_fill_degrees] to control the way the bar fills up."
msgstr ""
"Transforme le nœud en une barre radiale. La texture [member texture_progress] "
"se remplit en sens horaire. Voir [member radial_center_offset], [member "
"radial_initial_angle] et [member radial_fill_degrees] pour contrôler la façon "
"dont la barre se remplit."

msgid ""
"Turns the node into a radial bar. The [member texture_progress] fills "
"counterclockwise. See [member radial_center_offset], [member "
"radial_initial_angle] and [member radial_fill_degrees] to control the way the "
"bar fills up."
msgstr ""
"Transforme le nœud en une barre radiale. La texture [member texture_progress] "
"se remplit en sens anti-horaire. Voir [member radial_center_offset], [member "
"radial_initial_angle] et [member radial_fill_degrees] pour contrôler la façon "
"dont la barre se remplit."

msgid ""
"The [member texture_progress] fills from the center, expanding both towards "
"the left and the right."
msgstr ""
"La texture [member texture_progress] se remplit depuis le centre, s'étendant "
"à la fois vers la gauche et la droite."

msgid ""
"The [member texture_progress] fills from the center, expanding both towards "
"the top and the bottom."
msgstr ""
"La texture [member texture_progress] se remplit depuis le centre, s'étendant "
"à la fois vers le haut et le bas."

msgid ""
"Turns the node into a radial bar. The [member texture_progress] fills "
"radially from the center, expanding both clockwise and counterclockwise. See "
"[member radial_center_offset], [member radial_initial_angle] and [member "
"radial_fill_degrees] to control the way the bar fills up."
msgstr ""
"Transforme le nœud en une barre radiale. La texture [member texture_progress] "
"se remplit de manière radiale depuis le centre, s’étendant à la fois dans le "
"sens horaire et anti-horaire . Voir [member radial_center_offset], [member "
"radial_initial_angle] et [member radial_fill_degrees] pour contrôler la façon "
"dont la barre se remplit."

msgid "A control that displays a texture."
msgstr "Un contrôle qui affiche une texture."

msgid ""
"A control that displays a texture, for example an icon inside a GUI. The "
"texture's placement can be controlled with the [member stretch_mode] "
"property. It can scale, tile, or stay centered inside its bounding rectangle."
msgstr ""
"Un contrôle qui affiche une texture, par exemple une icône dans un GUI. Le "
"placement de la texture peut être contrôlé avec la propriété [member "
"stretch_mode]. Elle peut être redimensionnée, répétée, ou rester centrée dans "
"son rectangle délimitant."

msgid ""
"Using [constant EXPAND_FIT_WIDTH], [constant EXPAND_FIT_WIDTH_PROPORTIONAL], "
"[constant EXPAND_FIT_HEIGHT], or [constant EXPAND_FIT_HEIGHT_PROPORTIONAL] "
"may result in unstable behavior in some [Container] controls. This behavior "
"may be re-evaluated and changed in the future."
msgstr ""
"Utiliser [constant EXPAND_FIT_WIDTH], [constant "
"EXPAND_FIT_WIDTH_PROPORTIONAL], [constant EXPAND_FIT_HEIGHT], ou [constant "
"EXPAND_FIT_HEIGHT_PROPORTIONAL] peut entraîner un comportement instable dans "
"certains contrôles [Container]. Ce comportement peut être réévalué et modifié "
"à l'avenir."

msgid "Defines how minimum size is determined based on the texture's size."
msgstr ""
"Définit comment la taille minimale est déterminée en fonction de la taille de "
"la texture."

msgid ""
"Controls the texture's behavior when resizing the node's bounding rectangle."
msgstr ""
"Contrôle le comportement de la texture en redimensionnant le rectangle "
"délimitant du nœud."

msgid "The node's [Texture2D] resource."
msgstr "La ressource [Texture2D] du nœud."

msgid ""
"The minimum size will be equal to texture size, i.e. [TextureRect] can't be "
"smaller than the texture."
msgstr ""
"La taille minimale sera égale à la taille de la texture, c'est-à-dire "
"[TextureRect] ne peut être plus petit que la texture."

msgid ""
"The size of the texture won't be considered for minimum size calculation, so "
"the [TextureRect] can be shrunk down past the texture size."
msgstr ""
"La taille de la texture ne sera pas considérée pour le calcul de la taille "
"minimale, ainsi le [TextureRect] peut être rétréci en dessous de la taille de "
"la texture."

msgid ""
"The height of the texture will be ignored. Minimum width will be equal to the "
"current height. Useful for horizontal layouts, e.g. inside [HBoxContainer]."
msgstr ""
"La hauteur de la texture sera ignorée. La largeur minimale sera égale à la "
"hauteur actuelle. Utilisable pour les dispositions horizontales, par exemple "
"à l'intérieur d'un [HBoxContainer]."

msgid "Same as [constant EXPAND_FIT_WIDTH], but keeps texture's aspect ratio."
msgstr ""
"Comme [constant EXPAND_FIT_WIDTH], mais garde le rapport d'aspect de texture."

msgid ""
"The width of the texture will be ignored. Minimum height will be equal to the "
"current width. Useful for vertical layouts, e.g. inside [VBoxContainer]."
msgstr ""
"La largeur de la texture sera ignorée. La hauteur minimale sera égale à la "
"largeur actuelle. Utile pour les dispositions verticales, par exemple à "
"l'intérieur d'un [VBoxContainer]."

msgid "Same as [constant EXPAND_FIT_HEIGHT], but keeps texture's aspect ratio."
msgstr ""
"Comme [constant EXPAND_FIT_HEIGHT], mais garde le rapport d'aspect de texture."

msgid ""
"Scale the texture to fit the node's bounding rectangle, center it and "
"maintain its aspect ratio."
msgstr ""
"Adapte la texture à la taille de l'élément en la centrant et en maintenant "
"ses proportions."

msgid "GUI skinning"
msgstr "Apparence GUI"

msgid "Using the theme editor"
msgstr "Utiliser l'éditeur de thème"

msgid "Theme's [Color] item type."
msgstr "Le type de l'élément [Color] du thème."

msgid "Theme's constant item type."
msgstr "Le type de la constante du thème."

msgid "Theme's [Font] item type."
msgstr "Le type [Font] du thème."

msgid "Theme's [StyleBox] item type."
msgstr "Le type [StyleBox] du thème."

msgid "Maximum value for the DataType enum."
msgstr "La valeur maximale pour l’énumération DateType."

msgid "A unit of execution in a process."
msgstr "Une unité d'exécution dans un processus."

msgid ""
"Returns [code]true[/code] if this [Thread] has been started. Once started, "
"this will return [code]true[/code] until it is joined using [method "
"wait_to_finish]. For checking if a [Thread] is still executing its task, use "
"[method is_alive]."
msgstr ""
"Renvoie [code]true[/code] si ce [Thread] a été lancé. Une fois lancé, cela "
"renverra [code]true[/code] jusqu'à ce qu'il soit joint en utilisant [method "
"wait_to_finish]. Pour vérifier si un [Thread] exécute encore sa tâche, "
"utilisez [method is_alive]."

msgid "A thread running with lower priority than normally."
msgstr "Un fil d'exécution avec une priorité inférieure à la normale."

msgid "A thread with a standard priority."
msgstr "Un fil d'exécution avec une priorité normale."

msgid "A thread running with higher priority than normally."
msgstr "Un fil d'exécution avec une priorité supérieure à la normale."

msgid "Use [method get_occluder_polygon] instead."
msgstr "Utilisez [method get_occluder_polygon] à la place."

msgid "Use [method set_occluder_polygon] instead."
msgstr "Utilisez [method set_occluder_polygon] à la place."

msgid ""
"Use multiple [TileMapLayer] nodes instead. To convert a TileMap to a set of "
"TileMapLayer nodes, open the TileMap bottom panel with the node selected, "
"click the toolbox icon in the top-right corner and choose 'Extract TileMap "
"layers as individual TileMapLayer nodes'."
msgstr ""
"Utilisez plusieurs nœuds [TileMapLayer] à la place. Pour convertir une "
"TileMap à un ensemble de nœuds TileMapLayer, ouvrez le panneau inférieur "
"TileMap avec le nœud sélectionné, cliquez sur l'icône de la boîte à outils "
"dans le coin supérieur droit et choisissez 'Extraire les couches TileMap en "
"nœuds TileMapLayer individuels'."

msgid "Node for 2D tile-based maps."
msgstr "Nœud pour les cartes à base de tuiles 2D."

msgid "Using Tilemaps"
msgstr "Utiliser les tilemaps"

msgid "2D Hexagonal Demo"
msgstr "Démo Hexagonale en 2D"

msgid "2D Grid-based Navigation with AStarGrid2D Demo"
msgstr "Démo de navigation sur une grille 2D avec AStarGrid2D"

msgid "2D Dynamic TileMap Layers Demo"
msgstr "Démo 2D de couches de TileMap dynamiques"

msgid "Clears all cells."
msgstr "Efface toutes les cellules."

msgid "Clears cells that do not exist in the tileset."
msgstr "Efface les cellules qui n'existent plus dans le tileset."

msgid ""
"Use [method notify_runtime_tile_data_update] and/or [method update_internals] "
"instead."
msgstr ""
"Utilisez [method notify_runtime_tile_data_update] et/ou [method "
"update_internals] à la place."

msgid "Returns the number of layers in the TileMap."
msgstr "Renvoie le nombre de couches dans la TileMap."

msgid "Use [method get_layer_navigation_map] instead."
msgstr "Utilisez [method get_layer_navigation_map] à la place."

msgid "Removes the layer at index [param layer]."
msgstr "Supprime la couche à l'index [param layer]."

msgid "Use [method set_layer_navigation_map] instead."
msgstr "Utilisez [method set_layer_navigation_map] à la place."

msgid "Emitted when the [TileSet] of this TileMap changes."
msgstr "Émis lorsque le [TileSet] de cette TileMap change."

msgid "Always hide."
msgstr "Toujours cacher."

msgid "Always show."
msgstr "Toujours montrer."

msgid "Erases the cell at coordinates [param coords]."
msgstr "Efface la cellule aux coordonnées [param coords]."

msgid "Enable or disable collisions."
msgstr "Active ou désactive les collisions."

msgid "Returns the size, in cells, of the pattern."
msgstr "Renvoie la taille, en cellules, du motif."

msgid "Returns whether the pattern has a tile at the given coordinates."
msgstr "Renvoie si le motif a une tuile aux coordonnées données."

msgid "Returns whether the pattern is empty or not."
msgstr "Renvoie si le motif est vide ou non."

msgid "Remove the cell at the given coordinates."
msgstr "Supprime la cellule aux coordonnées données."

msgid "Sets the size of the pattern."
msgstr "Définit la taille du motif."

msgid "Tile library for tilemaps."
msgstr "La bibliothèque des tuiles pour les cartes."

msgid "Clears all tile proxies."
msgstr "Efface toutes les substituts de tuiles."

msgid "Returns a terrain's color."
msgstr "Renvoie la couleur d'un terrain."

msgid "Returns a terrain's name."
msgstr "Renvoie le nom d'un terrain."

msgid "Changes a source's ID."
msgstr "Change l'identifiant d'une source."

msgid "Sets a terrain's name."
msgstr "Définit un nom de terrain."

msgid "The tile shape."
msgstr "La forme de la tuile."

msgid "Rectangular tile shape."
msgstr "Forme de tuile rectangulaire."

msgid "Hexagonal tile shape."
msgstr "Forme de tuile hexagonale."

msgid "Horizontal half-offset."
msgstr "Demi-décalage horizontal."

msgid "Vertical half-offset."
msgstr "Demi décalage vertical."

msgid "Neighbor on the right side."
msgstr "Voisin à droite."

msgid "Neighbor in the right corner."
msgstr "Voisin dans le coin droit."

msgid "Neighbor on the bottom right side."
msgstr "Voisin en bas à droite."

msgid "Neighbor in the bottom right corner."
msgstr "Voisin dans le coin en bas à droite."

msgid "Neighbor on the bottom side."
msgstr "Voisin en bas."

msgid "Neighbor in the bottom corner."
msgstr "Voisin dans le coin en bas."

msgid "Neighbor on the bottom left side."
msgstr "Voisin en bas à gauche."

msgid "Neighbor in the bottom left corner."
msgstr "Voisin dans le coin en bas à gauche."

msgid "Neighbor on the left side."
msgstr "Voisin à gauche."

msgid "Neighbor in the left corner."
msgstr "Voisin dans le coin gauche."

msgid "Neighbor on the top left side."
msgstr "Voisin en haut à gauche."

msgid "Neighbor in the top left corner."
msgstr "Voisin dans le coin en haut à gauche."

msgid "Neighbor on the top side."
msgstr "Voisin en haut."

msgid "Neighbor in the top corner."
msgstr "Voisin dans le coin en haut."

msgid "Neighbor on the top right side."
msgstr "Voisin en haut à droite."

msgid "Neighbor in the top right corner."
msgstr "Voisin dans le coin en haut à droite."

msgid ""
"Returns the sum of the sum of the frame durations of the tile at coordinates "
"[param atlas_coords]. This value needs to be divided by the animation speed "
"to get the actual animation loop duration."
msgstr ""
"Renvoie la somme des durées des trames de la tuile aux coordonnées [param "
"atlas_coords]. Cette valeur doit être divisée par la vitesse d'animation pour "
"obtenir la durée réelle de la boucle d'animation."

msgid "The atlas texture."
msgstr "La texture de l'atlas."

msgid "Represents the size of the [enum TileAnimationMode] enum."
msgstr "Représente la taille de l'énumération [enum TileAnimationMode]."

msgid "A singleton for working with time data."
msgstr "Un singleton pour travailler avec des données temporelles."

msgid ""
"The Time singleton allows converting time between various formats and also "
"getting time information from the system.\n"
"This class conforms with as many of the ISO 8601 standards as possible. All "
"dates follow the Proleptic Gregorian calendar. As such, the day before "
"[code]1582-10-15[/code] is [code]1582-10-14[/code], not [code]1582-10-04[/"
"code]. The year before 1 AD (aka 1 BC) is number [code]0[/code], with the "
"year before that (2 BC) being [code]-1[/code], etc.\n"
"Conversion methods assume \"the same timezone\", and do not handle timezone "
"conversions or DST automatically. Leap seconds are also not handled, they "
"must be done manually if desired. Suffixes such as \"Z\" are not handled, you "
"need to strip them away manually.\n"
"When getting time information from the system, the time can either be in the "
"local timezone or UTC depending on the [code]utc[/code] parameter. However, "
"the [method get_unix_time_from_system] method always uses UTC as it returns "
"the seconds passed since the [url=https://en.wikipedia.org/wiki/"
"Unix_time]Unix epoch[/url].\n"
"[b]Important:[/b] The [code]_from_system[/code] methods use the system clock "
"that the user can manually set. [b]Never use[/b] this method for precise time "
"calculation since its results are subject to automatic adjustments by the "
"user or the operating system. [b]Always use[/b] [method get_ticks_usec] or "
"[method get_ticks_msec] for precise time calculation instead, since they are "
"guaranteed to be monotonic (i.e. never decrease)."
msgstr ""
"Le singleton Time permet de convertir le temps entre différents formats et "
"d'obtenir du système des informations de temps.\n"
"Cette classe est conforme au plus grand nombre possible de normes ISO 8601. "
"Toutes les dates suivent le calendrier grégorien proleptique. Ainsi, la "
"veille de [code]1582-10-15[/code] est [code]1582-10-14[/code], pas "
"[code]1582-10-04[/code]. L'année précédant 1 ap. JC (i.e. 1 av. JC) est le "
"numéro [code]0[/code], l'année encore précédente (2 av. JC) étant [code]-1[/"
"code], etc.\n"
"Les méthodes de conversion supposent \"le même fuseau horaire\", et ne "
"traitent pas les conversions de fuseau horaire ou l'heure d'été "
"automatiquement. Les secondes intercalaires ne sont pas également gérées, "
"elles doivent être faites manuellement si désiré. Les suffixes comme \"Z\" ne "
"sont pas gérés, vous devez les retirer manuellement.\n"
"Lorsque vous obtenez des informations sur le temps du système, le temps peut "
"être soit dans le fuseau horaire local soit en UTC (temps universel "
"coordonné) en fonction du paramètre [code]utc[/code]. Cependant, la méthode "
"[method get_unix_time_from_system] utilise toujours l'UTC car elle renvoie "
"les secondes passées depuis l'[url=https://fr.wikipedia.org/wiki/"
"Heure_Unix]époque Unix[/url].\n"
"[b]Important :[/b] Les méthodes [code]_from_system[/code] utilisent l'horloge "
"du système que l'utilisateur peut définir manuellement. [b]N'utilisez jamais[/"
"b] cette méthode pour un calcul précis du temps puisque ses résultats sont "
"soumis à des ajustements automatiques par l'utilisateur ou le système "
"d'exploitation. [b]Utilisez toujours[/b] [method get_ticks_usec] ou [method "
"get_ticks_msec] pour un calcul précis du temps, car ils sont garantis être "
"monotones (c.-à-d. ne jamais diminuer)."

msgid ""
"Returns the current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], and [code]weekday[/code].\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Renvoie la date actuelle sous forme de dictionnaire avec les clés : "
"[code]year[/code], [code]month[/code], [code]day[/code], [code]weekday[/"
"code].\n"
"Les valeurs renvoyées sont dans l'heure locale du système quand [param utc] "
"vaut [code]false[/code], sinon elle sont en UTC."

msgid ""
"Converts the given Unix timestamp to a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], and [code]weekday[/code]."
msgstr ""
"Convertit l'horodatage Unix donné en un dictionnaire avec les clés : "
"[code]year[/code] (année), [code]month[/code] (mois), [code]day[/code] "
"(jour), et [code]weekday[/code] (jour de la semaine)."

msgid ""
"Returns the current date as an ISO 8601 date string (YYYY-MM-DD).\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Renvoie la date actuelle en tant que chaîne de caractère de date ISO 8601 "
"(AAAA-MM-JJ).\n"
"Les valeurs renvoyées sont dans l'heure locale du système lorsque [param utc] "
"vaut [code]false[/code], sinon elles sont en UTC."

msgid ""
"Converts the given Unix timestamp to an ISO 8601 date string (YYYY-MM-DD)."
msgstr "Convertit l'horodatage Unix au format de date ISO 8601 (AAAA-MM-JJ)."

msgid ""
"Converts the given ISO 8601 date and time string (YYYY-MM-DDTHH:MM:SS) to a "
"dictionary of keys: [code]year[/code], [code]month[/code], [code]day[/code], "
"[code skip-lint]weekday[/code], [code]hour[/code], [code]minute[/code], and "
"[code]second[/code].\n"
"If [param weekday] is [code]false[/code], then the [code skip-lint]weekday[/"
"code] entry is excluded (the calculation is relatively expensive).\n"
"[b]Note:[/b] Any decimal fraction in the time string will be ignored silently."
msgstr ""
"Convertit la chaîne de date et de tmpes ISO 8601 donnée (AAAA-MM-JJTHH:mm:SS) "
"en un dictionnaire avec les clés : [code]year[/code] (année), [code]month[/"
"code] (mois), [code]day[/code] (jour), et [code skip-lint]weekday[/code] "
"(jour de la semaine), [code]hour[/code] (heure), [code]minute[/code], et "
"[code]second[/code]es.\n"
"Si [param weekday] vaut [code]false[/code], alors l'entrée [code skip-"
"lint]weekday[/code] est exclue (le calcul est relativement cher).\n"
"[b]Note :[/b] Toute fraction décimale dans la chaîne du temps sera ignorée "
"silencieusement."

msgid ""
"Returns the current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]hour[/"
"code], [code]minute[/code], [code]second[/code], and [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
"Renvoie la date actuelle sous forme de dictionnaire avec les clés : "
"[code]year[/code] (année), [code]month[/code] (mois), [code]day[/code] "
"(jour), et [code]weekday[/code] (jour de la semaine), [code]hour[/code] "
"(heure), [code]minute[/code], [code]second[/code]es, et [code]dst[/code] "
"(Heure d'été)."

msgid ""
"Converts the given Unix timestamp to a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]hour[/"
"code], [code]minute[/code], and [code]second[/code].\n"
"The returned Dictionary's values will be the same as the [method "
"get_datetime_dict_from_system] if the Unix timestamp is the current time, "
"with the exception of Daylight Savings Time as it cannot be determined from "
"the epoch."
msgstr ""
"Convertit l'horodatage Unix donné en un dictionnaire avec les clés : "
"[code]year[/code] (année), [code]month[/code] (mois), [code]day[/code] "
"(jour), et [code]weekday[/code] (jour de la semaine), [code]hour[/code] "
"(heure), [code]minute[/code], et [code]second[/code]es.\n"
"Les valeurs du Dictionnary renvoyé seront les mêmes que [method "
"get_datetime_dict_from_system] si l'horodatage Unix est le temps actuel, à "
"l'exception de l'heure d'été qui ne peut être déterminée depuis l'epoch."

msgid ""
"Converts the given dictionary of keys to an ISO 8601 date and time string "
"(YYYY-MM-DDTHH:MM:SS).\n"
"The given dictionary can be populated with the following keys: [code]year[/"
"code], [code]month[/code], [code]day[/code], [code]hour[/code], [code]minute[/"
"code], and [code]second[/code]. Any other entries (including [code]dst[/"
"code]) are ignored.\n"
"If the dictionary is empty, [code]0[/code] is returned. If some keys are "
"omitted, they default to the equivalent values for the Unix epoch timestamp 0 "
"(1970-01-01 at 00:00:00).\n"
"If [param use_space] is [code]true[/code], the date and time bits are "
"separated by an empty space character instead of the letter T."
msgstr ""
"Convertit le dictionnaire donné en une chaîne de date et de temps ISO 8601 "
"(AAAA-MM-JJTHH:mm:SS).\n"
"Le dictionnaire donné peut être peuplé avec les clés suivantes : [code]year[/"
"code] (année), [code]month[/code] (mois), [code]day[/code] (jour), "
"[code]hour[/code] (heure), [code]minute[/code], et [code]second[/code]es. "
"Toute autre entrée (y compris [code]dst[/code]) est ignorée.\n"
"Si le dictionnaire est vide, [code]0[/code] est renvoyé. Si des clés sont "
"omises, elles sont remplacées par une valeur par défaut équivalente pour "
"l'horodatage 0 Unix (1970-01-01 à 00:00:00).\n"
"Si [param use_space] vaut [code]true[/code], les parties de date et d'heure "
"sont séparées par un caractère d'espace vide au lieu de la lettre T."

msgid ""
"Returns the current date and time as an ISO 8601 date and time string (YYYY-"
"MM-DDTHH:MM:SS).\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC.\n"
"If [param use_space] is [code]true[/code], the date and time bits are "
"separated by an empty space character instead of the letter T."
msgstr ""
"Renvoie la date et l'heure actuelle au format ISO 8601 (AAAA-MM-"
"JJTHH:mm:SS).\n"
"Les valeurs renvoyées sont dans la zone horaire locale du système quand "
"[param utc] vaut [code]false[/code], sinon elles sont dans la zone horaire "
"UTC (méridien de Greenwich).\n"
"Si [param use_space] vaut [code]true[/code], les parties de temps et d'heure "
"sont séparées par un caractère d'espace vide au lieu de la lettre T."

msgid ""
"Converts the given Unix timestamp to an ISO 8601 date and time string (YYYY-"
"MM-DDTHH:MM:SS).\n"
"If [param use_space] is [code]true[/code], the date and time bits are "
"separated by an empty space character instead of the letter T."
msgstr ""
"Convertit l'horodatage Unix au format de date et heure ISO 8601 (AAAA-MM-"
"JJTHH:mm:SS).\n"
"Si [param use_space] vaut [code]true[/code], les parties de temps et d'heure "
"sont séparées par un caractère d'espace vide au lieu de la lettre T."

msgid ""
"Converts the given timezone offset in minutes to a timezone offset string. "
"For example, -480 returns \"-08:00\", 345 returns \"+05:45\", and 0 returns "
"\"+00:00\"."
msgstr ""
"Convertit le décalage de fuseau horaire donné en minutes en une chaîne de "
"caractère de décalage de fuseau horaire. Par exemple, -480 renvoie "
"\"-08:00\", 345 renvoie \"+05:45\", et 0 renvoie \"+00:00\"."

msgid ""
"Returns the amount of time passed in milliseconds since the engine started.\n"
"Will always be positive or 0 and uses a 64-bit value (it will wrap after "
"roughly 500 million years)."
msgstr ""
"Renvoie le temps passé en millisecondes depuis le démarrage du moteur.\n"
"Il sera toujours positif ou 0 et utilise une valeur de 64 bits (il rebouclera "
"après environ 500 millions d'années)."

msgid ""
"Returns the amount of time passed in microseconds since the engine started.\n"
"Will always be positive or 0 and uses a 64-bit value (it will wrap after "
"roughly half a million years)."
msgstr ""
"Renvoie le temps passé en microsecondes depuis le démarrage du moteur.\n"
"Il sera toujours positif ou 0 et utilise une valeur de 64 bits (il rebouclera "
"après environ 500 millions d'années)."

msgid ""
"Returns the current time as a dictionary of keys: [code]hour[/code], "
"[code]minute[/code], and [code]second[/code].\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Renvoie l'heure actuelle sous forme de dictionnaire avec les clés : "
"[code]hour[/code] (heure), [code]minute[/code]s, et [code]second[/code]es.\n"
"Les valeurs renvoyées sont dans l'heure locale du système quand [param utc] "
"vaut [code]false[/code], sinon elle sont en UTC."

msgid ""
"Converts the given time to a dictionary of keys: [code]hour[/code], "
"[code]minute[/code], and [code]second[/code]."
msgstr ""
"Convertit le temps donné en dictionnaire avec les clés : [code]hour[/code] "
"(heure), [code]minute[/code]s, et [code]second[/code]es."

msgid ""
"Returns the current time as an ISO 8601 time string (HH:MM:SS).\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Renvoie l'heure actuelle en une chaîne de caractère ISO 8601 (HH:mm:SS).\n"
"Les valeurs renvoyées sont dans l'heure locale du système quand [param utc] "
"vaut [code]false[/code], sinon elle sont en UTC."

msgid "Converts the given Unix timestamp to an ISO 8601 time string (HH:MM:SS)."
msgstr "Convertit l'horodatage Unix au format d'heure ISO 8601 (HH:mm:SS)."

msgid ""
"Returns the current time zone as a dictionary of keys: [code]bias[/code] and "
"[code]name[/code].\n"
"- [code]bias[/code] is the offset from UTC in minutes, since not all time "
"zones are multiples of an hour from UTC.\n"
"- [code]name[/code] is the localized name of the time zone, according to the "
"OS locale settings of the current user."
msgstr ""
"Renvoie le fuseau horaire actuel en tant que dictionnaire avec les clés : "
"[code]bias[/code] et [code]name[/code].\n"
"- [code]bias[/code] est le décalage avec l'UTC en minutes, puisque tous les "
"fuseaux horaires ne sont pas des multiples d'une heure de l'UTC.\n"
"- [code]name[/code] est le nom localisé du fuseau horaire, selon les "
"paramètres locaux de l'OS de l'utilisateur courant."

msgid ""
"Converts a dictionary of time values to a Unix timestamp.\n"
"The given dictionary can be populated with the following keys: [code]year[/"
"code], [code]month[/code], [code]day[/code], [code]hour[/code], [code]minute[/"
"code], and [code]second[/code]. Any other entries (including [code]dst[/"
"code]) are ignored.\n"
"If the dictionary is empty, [code]0[/code] is returned. If some keys are "
"omitted, they default to the equivalent values for the Unix epoch timestamp 0 "
"(1970-01-01 at 00:00:00).\n"
"You can pass the output from [method get_datetime_dict_from_unix_time] "
"directly into this function and get the same as what was put in.\n"
"[b]Note:[/b] Unix timestamps are often in UTC. This method does not do any "
"timezone conversion, so the timestamp will be in the same timezone as the "
"given datetime dictionary."
msgstr ""
"Convertit le dictionnaire de temps donné en un horodatage Unix.\n"
"Le dictionnaire donné peut être peuplé avec les clés suivantes : [code]year[/"
"code] (année), [code]month[/code] (mois), [code]day[/code] (jour), "
"[code]hour[/code] (heure), [code]minute[/code], et [code]second[/code]es. "
"Toute autre entrée (y compris [code]dst[/code]) est ignorée.\n"
"Si le dictionnaire est vide, [code]0[/code] est renvoyé. Si des clés sont "
"omises, elles sont remplacées par une valeur par défaut équivalente pour le "
"horodatage 0 Unix (1970-01-01 à 00:00:00).\n"
"Vous pouvez passer la sortie de [method get_datetime_dict_from_unix_time] "
"directement dans cette fonction et ré-obtenir la valeur de départ.\n"
"[b]Note :[/b] Les horodatages Unix sont souvent en UTC. Cette méthode ne fait "
"aucune conversion de fuseau horaire, de sorte que l'horodatage sera dans le "
"même fuseau horaire que le dictionnaire date-heure donné."

msgid ""
"Converts the given ISO 8601 date and/or time string to a Unix timestamp. The "
"string can contain a date only, a time only, or both.\n"
"[b]Note:[/b] Unix timestamps are often in UTC. This method does not do any "
"timezone conversion, so the timestamp will be in the same timezone as the "
"given datetime string.\n"
"[b]Note:[/b] Any decimal fraction in the time string will be ignored silently."
msgstr ""
"Convertit la chaîne de date et/ou d'heure ISO 8601 donnée en horodatage Unix. "
"La chaîne peut contenir une date seulement, une heure seulement, ou les "
"deux.\n"
"[b]Note :[/b] Les horodatage Unix sont souvent en UTC. Cette méthode ne fait "
"aucune conversion de fuseau horaire, de sorte que le horodatage sera dans le "
"même fuseau horaire que le dictionnaire date-heure donné.\n"
"[b]Note :[/b] Toute fraction décimale dans la chaîne de l'heure sera ignorée "
"silencieusement."

msgid ""
"Returns the current Unix timestamp in seconds based on the system time in "
"UTC. This method is implemented by the operating system and always returns "
"the time in UTC. The Unix timestamp is the number of seconds passed since "
"1970-01-01 at 00:00:00, the [url=https://en.wikipedia.org/wiki/Unix_time]Unix "
"epoch[/url].\n"
"[b]Note:[/b] Unlike other methods that use integer timestamps, this method "
"returns the timestamp as a [float] for sub-second precision."
msgstr ""
"Renvoie le horodatage Unix actuel en secondes en fonction de l'heure du "
"système en UTC. Cette méthode est implémentée par le système d'exploitation "
"et renvoie toujours le temps en UTC. L'horodatage Unix est le nombre de "
"secondes écoulées depuis le 1er janvier 1970 à 00h00m00s, l'[url=https://"
"fr.wikipedia.org/wiki/Heure_Unix]epoch Unix[/url].\n"
"[b]Note :[/b] Contrairement à d'autres méthodes qui utilisent des horodatages "
"entiers, cette méthode renvoie l'horodatage en tant que [float] pour une "
"précision inférieure à la seconde."

msgid "The month of January, represented numerically as [code]01[/code]."
msgstr "Le mois de janvier, représenté numériquement par [code]01[/code]."

msgid "The month of February, represented numerically as [code]02[/code]."
msgstr "Le mois de février, représenté numériquement par [code]02[/code]."

msgid "The month of March, represented numerically as [code]03[/code]."
msgstr "Le mois de mars, représenté numériquement par [code]03[/code]."

msgid "The month of April, represented numerically as [code]04[/code]."
msgstr "Le mois de avril, représenté numériquement par [code]04[/code]."

msgid "The month of May, represented numerically as [code]05[/code]."
msgstr "Le mois de mai, représenté numériquement par [code]05[/code]."

msgid "The month of June, represented numerically as [code]06[/code]."
msgstr "Le mois de juin, représenté numériquement par [code]06[/code]."

msgid "The month of July, represented numerically as [code]07[/code]."
msgstr "Le mois de juillet, représenté numériquement par [code]07[/code]."

msgid "The month of August, represented numerically as [code]08[/code]."
msgstr "Le mois de août, représenté numériquement par [code]08[/code]."

msgid "The month of September, represented numerically as [code]09[/code]."
msgstr "Le mois de septembre, représenté numériquement par [code]09[/code]."

msgid "The month of October, represented numerically as [code]10[/code]."
msgstr "Le mois de octobre, représenté numériquement par [code]10[/code]."

msgid "The month of November, represented numerically as [code]11[/code]."
msgstr "Le mois de novembre, représenté numériquement par [code]11[/code]."

msgid "The month of December, represented numerically as [code]12[/code]."
msgstr "Le mois de décembre, représenté numériquement par [code]12[/code]."

msgid "The day of the week Sunday, represented numerically as [code]0[/code]."
msgstr ""
"Le jour de la semaine du dimanche, représenté numériquement par [code]0[/"
"code]."

msgid "The day of the week Monday, represented numerically as [code]1[/code]."
msgstr ""
"Le jour de la semaine du lundi, représenté numériquement par [code]1[/code]."

msgid "The day of the week Tuesday, represented numerically as [code]2[/code]."
msgstr ""
"Le jour de la semaine du mardi, représenté numériquement par [code]2[/code]."

msgid ""
"The day of the week Wednesday, represented numerically as [code]3[/code]."
msgstr ""
"Le jour de la semaine du mercredi, représenté numériquement par [code]3[/"
"code]."

msgid "The day of the week Thursday, represented numerically as [code]4[/code]."
msgstr ""
"Le jour de la semaine du jeudi, représenté numériquement par [code]4[/code]."

msgid "The day of the week Friday, represented numerically as [code]5[/code]."
msgstr ""
"Le jour de la semaine du vendredi, représenté numériquement par [code]5[/"
"code]."

msgid "The day of the week Saturday, represented numerically as [code]6[/code]."
msgstr ""
"Le jour de la semaine du samedi, représenté numériquement par [code]6[/code]."

msgid "A countdown timer."
msgstr "Un compte à rebours."

msgid ""
"The [Timer] node is a countdown timer and is the simplest way to handle time-"
"based logic in the engine. When a timer reaches the end of its [member "
"wait_time], it will emit the [signal timeout] signal.\n"
"After a timer enters the scene tree, it can be manually started with [method "
"start]. A timer node is also started automatically if [member autostart] is "
"[code]true[/code].\n"
"Without requiring much code, a timer node can be added and configured in the "
"editor. The [signal timeout] signal it emits can also be connected through "
"the Node dock in the editor:\n"
"[codeblock]\n"
"func _on_timer_timeout():\n"
"\tprint(\"Time to attack!\")\n"
"[/codeblock]\n"
"[b]Note:[/b] To create a one-shot timer without instantiating a node, use "
"[method SceneTree.create_timer].\n"
"[b]Note:[/b] Timers are affected by [member Engine.time_scale] unless [member "
"ignore_time_scale] is [code]true[/code]. The higher the time scale, the "
"sooner timers will end. How often a timer processes may depend on the "
"framerate or [member Engine.physics_ticks_per_second]."
msgstr ""
"Le nœud [Timer] est un minuteur de compte à rebours et est le moyen le plus "
"simple de gérer la logique basée sur le temps dans le moteur. Quand un "
"minuteur atteint la fin de son temps d'attente [member wait_time], il émettra "
"le signal [signal timeout].\n"
"Après qu'un minuteur entre dans l'arborescence de scène, il peut être démarré "
"manuellement avec [method start]. Un nœud minuteur est également démarré "
"automatiquement si [member autostart] vaut [code]true[/code].\n"
"Sans nécessiter beaucoup de code, un nœud minuteur peut être ajouté et "
"configuré dans l'éditeur. Le signal [signal timeout] qu'il émet peut "
"également être connecté par le dock Nœud dans l'éditeur :\n"
"[codeblock]\n"
"func _on_timer_timeout():\n"
"\tprint(\"C'est le moment d'attaquer !\")\n"
"[/codeblock]\n"
"[b]Note :[/b] Pour créer un minuteur à usage unique sans instancier un nœud, "
"utilisez [method SceneTree.create_timer].\n"
"[b]Note :[/b] Les Timers sont affectés par [member Engine.time_scale] à moins "
"que [member ignore_time_scale] ne vaille [code]true[/code]. Plus l'échelle du "
"temps sera élevée, plus les minuteurs se termineront tôt. Combien de fois un "
"minuteur effectue son traitement peut dépendre du framerate ou de [member "
"Engine.physics_ticks_per_second]."

msgid "Returns [code]true[/code] if the timer is stopped or has not started."
msgstr ""
"Renvoie [code]true[/code] si le minuteur est arrêté ou n'a pas commencé."

msgid ""
"Starts the timer, or resets the timer if it was started already. Fails if the "
"timer is not inside the scene tree. If [param time_sec] is greater than "
"[code]0[/code], this value is used for the [member wait_time].\n"
"[b]Note:[/b] This method does not resume a paused timer. See [member paused]."
msgstr ""
"Démarre le minuteur, ou réinitialise le minuteur s'il a déjà commencé. Échoue "
"si le minuteur n'est pas à l'intérieur de l'arborescence de scène. Si [param "
"time_sec] est supérieur à [code]0[/code], cette valeur est utilisée pour le "
"temps d'attente [member wait_time].\n"
"[b]Note :[/b] Cette méthode ne reprend pas un minuteur en pause. Voir [member "
"paused]."

msgid ""
"Stops the timer. See also [member paused]. Unlike [method start], this can "
"safely be called if the timer is not inside the scene tree.\n"
"[b]Note:[/b] Calling [method stop] does not emit the [signal timeout] signal, "
"as the timer is not considered to have timed out. If this is desired, use "
"[code]$Timer.timeout.emit()[/code] after calling [method stop] to manually "
"emit the signal."
msgstr ""
"Arrête le minuteur. Voir aussi [member paused]. Contrairement à [method "
"start], cela peut être appelé en toute sécurité si le minuteur n'est pas à "
"l'intérieur de l'arborescence de scène.\n"
"[b]Note :[/b] Appeler [method stop] n'émet pas le signal [signal timeout], "
"car le minuteur n'est pas considéré comme étant fini. Si cela est souhaité, "
"utilisez [code]$Timer.timeout.emit()[/code] après avoir appelé [method stop] "
"pour émettre manuellement le signal."

msgid ""
"If [code]true[/code], the timer will start immediately when it enters the "
"scene tree.\n"
"[b]Note:[/b] After the timer enters the tree, this property is automatically "
"set to [code]false[/code].\n"
"[b]Note:[/b] This property does nothing when the timer is running in the "
"editor."
msgstr ""
"Si [code]true[/code], le minuteur démarrera immédiatement lorsqu'il entre "
"dans l'arborescence de scène.\n"
"[b]Note :[/b] Après que le minuteur entre dans l'arborescence, cette "
"propriété est automatiquement définie à [code]false[/code].\n"
"[b]Note :[/b] Cette propriété ne fait rien lorsque le minuteur s'exécute dans "
"l'éditeur."

msgid ""
"If [code]true[/code], the timer will ignore [member Engine.time_scale] and "
"update with the real, elapsed time."
msgstr ""
"Si [code]true[/code], le minuteur ignorera [member Engine.time_scale] et se "
"mettra à jour avec le temps écoulé réel."

msgid ""
"If [code]true[/code], the timer will stop after reaching the end. Otherwise, "
"as by default, the timer will automatically restart."
msgstr ""
"Si [code]true[/code], le minuteur s'arrêtera après avoir atteint la fin. "
"Sinon, comme par défaut, le minuteur redémarrera automatiquement."

msgid ""
"If [code]true[/code], the timer is paused. A paused timer does not process "
"until this property is set back to [code]false[/code], even when [method "
"start] is called. See also [method stop]."
msgstr ""
"Si [code]true[/code], le minuteur est mis en pause. Un minuteur en pause ne "
"fait pas de traitement jusqu'à ce que cette propriété soit remise sur "
"[code]false[/code], même lorsque [method start] est appelée. Voir aussi "
"[method stop]."

msgid "Specifies when the timer is updated during the main loop."
msgstr "Spécifie quand le minuteur est mis à jour durant la boucle principale."

msgid ""
"The timer's remaining time in seconds. This is always [code]0[/code] if the "
"timer is stopped.\n"
"[b]Note:[/b] This property is read-only and cannot be modified. It is based "
"on [member wait_time]."
msgstr ""
"Le temps restant du minuteur en secondes. Il vaut toujours [code]0[/code] si "
"le minuteur est arrêté.\n"
"[b]Note :[/b] Cette propriété est en lecture seule et ne peut être modifiée. "
"Elle est basée sur [member wait_time]."

msgid ""
"The time required for the timer to end, in seconds. This property can also be "
"set every time [method start] is called.\n"
"[b]Note:[/b] Timers can only process once per physics or process frame "
"(depending on the [member process_callback]). An unstable framerate may cause "
"the timer to end inconsistently, which is especially noticeable if the wait "
"time is lower than roughly [code]0.05[/code] seconds. For very short timers, "
"it is recommended to write your own code instead of using a [Timer] node. "
"Timers are also affected by [member Engine.time_scale]."
msgstr ""
"Le temps nécessaire pour que le minuteur se termine, en secondes. Cette "
"propriété peut également être définie à chaque fois que [method start] est "
"appelée.\n"
"[b]Note :[/b] Les minuteurs ne peuvent traiter qu'une fois par trame physique "
"ou de traitement (selon [member process_callback]). Un framerate instable "
"peut entraîner une fin inconsistante du minuteur, ce qui est particulièrement "
"visible si le temps d'attente est inférieur à environ [code]0.05[/code] "
"secondes. Pour les minuteurs très courts, il est recommandé d'écrire votre "
"propre code au lieu d'utiliser un nœud [Timer]. Les minuteurs sont également "
"affectés par [member Engine.time_scale]."

msgid "Emitted when the timer reaches the end."
msgstr "Émis lorsque le minuteur atteint la fin."

msgid ""
"Update the timer every physics process frame (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Mettre à jour le minuteur à chaque trame de traitement de la physique (voir "
"[constant Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"Update the timer every process (rendered) frame (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Mettre à jour le minuteur à chaque trame de traitement (de rendu) (voir "
"[constant Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid "Class representing a torus [PrimitiveMesh]."
msgstr "Classe représentant un [PrimitiveMesh] en forme de tore."

msgid "Returns [code]true[/code] if this button is currently pressed."
msgstr "Renvoie [code]true[/code] si le bouton est actuellement appuyé."

msgid "The button's action. Actions can be handled with [InputEventAction]."
msgstr ""
"L'action du bouton. Les actions peuvent être interceptées avec "
"[InputEventAction]."

msgid "The button's bitmask."
msgstr "Le masque binaire du bouton."

msgid "The button's shape."
msgstr "La forme du bouton."

msgid "The button's texture for the normal state."
msgstr "La texture du bouton pour l'état normal."

msgid "The button's texture for the pressed state."
msgstr "La texture du bouton pour l'état appuyé."

msgid "Emitted when the button is pressed (down)."
msgstr "Émis quand le bouton est pressé."

msgid "Emitted when the button is released (up)."
msgstr "Émis quand le bouton est relâché."

msgid "Always visible."
msgstr "Toujours visible."

msgid "Visible on touch screens only."
msgstr "Visible que sur les écrans tactiles."

msgid "A 2×3 matrix representing a 2D transformation."
msgstr "Une matrice 2×3 représentant une transformation 2D."

msgid ""
"The [Transform2D] built-in [Variant] type is a 2×3 [url=https://"
"en.wikipedia.org/wiki/Matrix_(mathematics)]matrix[/url] representing a "
"transformation in 2D space. It contains three [Vector2] values: [member x], "
"[member y], and [member origin]. Together, they can represent translation, "
"rotation, scale, and skew.\n"
"The [member x] and [member y] axes form a 2×2 matrix, known as the "
"transform's [b]basis[/b]. The length of each axis ([method Vector2.length]) "
"influences the transform's scale, while the direction of all axes influence "
"the rotation. Usually, both axes are perpendicular to one another. However, "
"when you rotate one axis individually, the transform becomes skewed. Applying "
"a skewed transform to a 2D sprite will make the sprite appear distorted.\n"
"For a general introduction, see the [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Matrices and transforms[/url] tutorial.\n"
"[b]Note:[/b] Unlike [Transform3D], there is no 2D equivalent to the [Basis] "
"type. All mentions of \"basis\" refer to the [member x] and [member y] "
"components of [Transform2D]."
msgstr ""
"Le type [Variant] intégré [Transform2D] est une [url=https://fr.wikipedia.org/"
"wiki/Matrice_(math%C3%A9matiques)]matrice[/url] 2×3 représentant une "
"transformation de l'espace 2D. Il contient trois valeurs [Vector2] : [member "
"x], [member y], et [member origin]. Ensemble, ils peuvent représenter la "
"translation, la rotation, l'échelle et le cisaillement.\n"
"Les axes [member x] et [member y] forment une matrice 2×2, connue sous le nom "
"de [b]base[/b] de la transformation. La longueur de chaque axe ([method "
"Vector2.length]) influence l'échelle de la transformation, tandis que la "
"direction de tous les axes influence la rotation. Habituellement, les deux "
"axes sont perpendiculaires l'un avec l'autre. Cependant, lorsque vous tournez "
"un axe individuellement, la transformation devient cisaillée. L'application "
"d'une transformation cisaillée sur un sprite 2D fera apparaître le sprite "
"comme déformé.\n"
"Pour une introduction générale, voir le tutoriel [url=$DOCS_URL/tutorials/"
"math/matrices_and_transforms.html]Matrices et transformations[/url].\n"
"[b]Note :[/b] Contrairement à [Transform3D], il n'y a pas d'équivalent 2D du "
"type [Basis]. Toutes les mentions de \"base\" renvoient aux composants "
"[member x] et [member y] de [Transform2D]."

msgid ""
"Constructs a [Transform2D] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Transform2D] with all of its "
"components set to [constant Vector2.ZERO]."
msgstr ""
"Construit une [Transform2D] identique à [constant IDENTITY].\n"
"[b]Note :[/b] En C#, cela construit une [Transform2D] avec tous ses "
"composantes définies à [constant Vector2.ZERO]."

msgid "Constructs a [Transform2D] as a copy of the given [Transform2D]."
msgstr "Construit une [Transform2D] comme copie de la [Transform2D] donnée."

msgid "Constructs a [Transform2D] from a given angle (in radians) and position."
msgstr ""
"Construit une [Transform2D] à partir d’un angle (en radians) et d’une "
"position donnés."

msgid ""
"Constructs a [Transform2D] from a given angle (in radians), scale, skew (in "
"radians), and position."
msgstr ""
"Construit une [Transform2D] à partir d’un angle (en radians), d’une échelle, "
"d’un cisaillement (en radians) et d’une position donnés."

msgid ""
"Constructs a [Transform2D] from 3 [Vector2] values representing [member x], "
"[member y], and the [member origin] (the three matrix columns)."
msgstr ""
"Construit une [Transform2D] avec 3 valeurs de [Vector2] représentant [member "
"x], [member y] et l'origine [member origin] (les trois colonnes de la "
"matrice)."

msgid ""
"Returns the inverted version of this transform. Unlike [method inverse], this "
"method works with almost any basis, including non-uniform ones, but is "
"slower.\n"
"[b]Note:[/b] For this method to return correctly, the transform's basis needs "
"to have a determinant that is not exactly [code]0.0[/code] (see [method "
"determinant])."
msgstr ""
"Renvoie la version inversée de cette transformation. Contrairement à [method "
"inverse], cette méthode fonctionne avec presque n'importe quelle base, y "
"compris les non-uniformes, mais est plus lent.\n"
"[b]Note :[/b] Pour que cette méthode puisse se finir correctement, la base de "
"la transformation doit avoir un déterminant qui ne vaut pas exactement "
"[code]0.0[/code] (voir [method determinant])."

msgid ""
"Returns a copy of the [param v] vector, transformed (multiplied) by the "
"transform basis's matrix. Unlike the multiplication operator ([code]*[/"
"code]), this method ignores the [member origin]."
msgstr ""
"Renvoie une copie du vecteur [param v], transformé (multiplié) par la matrice "
"de la base de la transformation. Contrairement à l'opérateur de "
"multiplication ([code]*[/code]), cette méthode ignore l'origine [member "
"origin]."

msgid ""
"Returns a copy of the [param v] vector, transformed (multiplied) by the "
"inverse transform basis's matrix (see [method inverse]). This method ignores "
"the [member origin].\n"
"[b]Note:[/b] This method assumes that this transform's basis is "
"[i]orthonormal[/i] (see [method orthonormalized]). If the basis is not "
"orthonormal, [code]transform.affine_inverse().basis_xform(vector)[/code] "
"should be used instead (see [method affine_inverse])."
msgstr ""
"Renvoie une copie du vecteur [param v], transformé (multiplié) par la matrice "
"de la base de la transformation inverse. Cette méthode ignore l'origine "
"[member origin].\n"
"[b]Note :[/b] Cette méthode suppose que la base de cette transformation est "
"[i]orthonormée[/i] (voir [method orthonormalized]). Si la base n'est pas "
"orthonormée, [code]transformation.affine_inverse().basis_xform(vecteur)[/"
"code] devrait être utilisé à la place (voir [method affine_inverse])."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Determinant]determinant[/url] "
"of this transform basis's matrix. For advanced math, this number can be used "
"to determine a few attributes:\n"
"- If the determinant is exactly [code]0.0[/code], the basis is not invertible "
"(see [method inverse]).\n"
"- If the determinant is a negative number, the basis represents a negative "
"scale.\n"
"[b]Note:[/b] If the basis's scale is the same for every axis, its determinant "
"is always that scale by the power of 2."
msgstr ""
"Renvoie le [url=https://en.wikipedia.org/wiki/Determinant]determinant[/url] "
"de la matrice de la base de cette transformation. Pour les mathématiques "
"avancées, ce nombre peut être utilisé pour déterminer quelques attributs :\n"
"- Si le déterminant vaut exactement [code]0.0[/code], la base n'est pas "
"inversible (voir [method inverse]).\n"
"- Si le déterminant est un nombre négatif, la base représente une échelle "
"négative.\n"
"[b]Note :[/b] Si l'échelle de la base est la même pour chaque axe, son "
"déterminant vaut toujours cette échelle à la puissance 2."

msgid "Returns this transform's translation. Equivalent to [member origin]."
msgstr ""
"Renvoie la translation de cette transformation. Équivalent à [member origin]."

msgid ""
"Returns this transform's rotation (in radians). This is equivalent to [member "
"x]'s angle (see [method Vector2.angle])."
msgstr ""
"Renvoie la rotation de cette transformation (en radians). Cela est équivalent "
"à l’angle de [member x] (voir [method Vector2.angle])."

msgid ""
"Returns the length of both [member x] and [member y], as a [Vector2]. If this "
"transform's basis is not skewed, this value is the scaling factor. It is not "
"affected by rotation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_transform = Transform2D(\n"
"\tVector2(2, 0),\n"
"\tVector2(0, 4),\n"
"\tVector2(0, 0)\n"
")\n"
"# Rotating the Transform2D in any way preserves its scale.\n"
"my_transform = my_transform.rotated(TAU / 2)\n"
"\n"
"print(my_transform.get_scale()) # Prints (2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myTransform = new Transform2D(\n"
"\tVector3(2.0f, 0.0f),\n"
"\tVector3(0.0f, 4.0f),\n"
"\tVector3(0.0f, 0.0f)\n"
");\n"
"// Rotating the Transform2D in any way preserves its scale.\n"
"myTransform = myTransform.Rotated(Mathf.Tau / 2.0f);\n"
"\n"
"GD.Print(myTransform.GetScale()); // Prints (2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If the value returned by [method determinant] is negative, the "
"scale is also negative."
msgstr ""
"Renvoie la longueur de [member x] et [member y], en tant que [Vector2]. Si la "
"base de cette transformation n'est pas cisaillée, cette valeur est le facteur "
"d'échelle. Il n'est pas affecté par la rotation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ma_transformation = Transform2D(\n"
"\tVector2(2, 0),\n"
"\tVector2(0, 4),\n"
"\tVector2(0, 0)\n"
")\n"
"# Tourner la Transform2D de n'importe quelle manière conserve son échelle.\n"
"ma_transformation = ma_transformation.rotated(TAU / 2)\n"
"\n"
"print(ma_transformation.get_scale()) # Affiche (2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var maTransformation = new Transform2D(\n"
"\tVector3(2.0f, 0.0f),\n"
"\tVector3(0.0f, 4.0f),\n"
"\tVector3(0.0f, 0.0f)\n"
");\n"
"// Tourner la Transform2D de n'importe quelle manière conserve son échelle.\n"
"maTransformation = maTransformation.Rotated(Mathf.Tau / 2.0f);\n"
"\n"
"GD.Print(maTransformation.GetScale()); // Affiche (2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Si la valeur renvoyée par [method determinant] est négative, "
"l'échelle est aussi négative."

msgid "Returns this transform's skew (in radians)."
msgstr "Renvoie le cisaillement de cette transformation (en radians)."

msgid ""
"Returns the result of the linear interpolation between this transform and "
"[param xform] by the given [param weight].\n"
"The [param weight] should be between [code]0.0[/code] and [code]1.0[/code] "
"(inclusive). Values outside this range are allowed and can be used to perform "
"[i]extrapolation[/i] instead."
msgstr ""
"Renvoie le résultat de l'interpolation linéaire entre cette transformation et "
"[param xform] selon le poids [param weight] donné.\n"
"Le poids [param weight] devrait être compris entre [code]0.0[/code] et "
"[code]1.0[/code] (inclusifs). Les valeurs en dehors de cette plage sont "
"permises et peuvent être utilisées pour effectuer à la place une "
"[i]extrapolation[/i]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Invertible_matrix]inverted "
"version of this transform[/url].\n"
"[b]Note:[/b] For this method to return correctly, the transform's basis needs "
"to be [i]orthonormal[/i] (see [method orthonormalized]). That means the basis "
"should only represent a rotation. If it does not, use [method affine_inverse] "
"instead."
msgstr ""
"Renvoie la [url=https://fr.wikipedia.org/wiki/Matrice_inversible]version "
"inversée de cette transformation[/url].\n"
"[b]Note :[/b] Pour que cette méthode puisse se finir correctement, la base de "
"la transformation doit être [i]orthonormée[/i] (voir [method "
"orthonormalized]). Cela signifie que la base ne devrait représenter qu'une "
"rotation. Si ce n'est pas le cas, utilisez plutôt [method affine_inverse]."

msgid ""
"Returns [code]true[/code] if this transform's basis is conformal. A conformal "
"basis is both [i]orthogonal[/i] (the axes are perpendicular to each other) "
"and [i]uniform[/i] (the axes share the same length). This method can be "
"especially useful during physics calculations."
msgstr ""
"Renvoie [code]true[/code] si cette base de cette transformation est conforme. "
"Une base conforme est à la fois [i]orthogonale[/i] (les axes sont "
"perpendiculaires les uns aux autres) et [i]uniforme[/i] (les axes partagent "
"la même longueur). Cette méthode peut être particulièrement utile lors des "
"calculs de physique."

msgid ""
"Returns [code]true[/code] if this transform and [param xform] are "
"approximately equal, by running [method @GlobalScope.is_equal_approx] on each "
"component."
msgstr ""
"Renvoie [code]true[/code] si cette transformation et [param xform] sont "
"approximativement égales, en utilisant [method @GlobalScope.is_equal_approx] "
"sur chaque composante."

msgid ""
"Returns [code]true[/code] if this transform is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Renvoie [code]true[/code] si cette transformation est finie, en appelant "
"[method @GlobalScope.is_finite] sur chaque composante."

msgid ""
"Returns a copy of the transform rotated such that the rotated X-axis points "
"towards the [param target] position, in global space."
msgstr ""
"Renvoie une copie de la transformation tournée de telle sorte que l'axe X "
"tourné pointe vers la position cible [param target], dans l'espace global."

msgid ""
"Returns a copy of this transform with its basis orthonormalized. An "
"orthonormal basis is both [i]orthogonal[/i] (the axes are perpendicular to "
"each other) and [i]normalized[/i] (the axes have a length of [code]1.0[/"
"code]), which also means it can only represent a rotation."
msgstr ""
"Renvoie une copie de cette transformation avec sa base orthonormalisée. Une "
"base orthonormale est à la fois [i]orthogonale[/i] (les axes sont "
"perpendiculaires les uns aux autres) et [i]normalisée[/i] (les axes ont une "
"longueur de [code]1.0[/code]), ce qui signifie également qu'elle ne peut "
"représenter qu'une rotation."

msgid ""
"Returns a copy of this transform rotated by the given [param angle] (in "
"radians).\n"
"If [param angle] is positive, the transform is rotated clockwise.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the left, i.e., [code]R * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Renvoie une copie de cette transformation tournée d'un angle [param angle] "
"donné (en radians).\n"
"Si [param angle] est positif, la transformation est tournée dans le sens "
"horaire..\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de rotation "
"[code]R[/code] correspondante sur la gauche, c'est-à-dire [code]R * X[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère "
"global/parent."

msgid ""
"Returns a copy of the transform rotated by the given [param angle] (in "
"radians).\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the right, i.e., [code]X * R[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Renvoie une copie de cette transformation tournée d'un angle [param angle] "
"donné (en radians).\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de rotation "
"[code]R[/code] correspondante sur la droite, c'est-à-dire [code]X * R[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère local."

msgid ""
"Returns a copy of the transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"left, i.e., [code]S * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Renvoie une copie de cette transformation redimensionnée d'un facteur [param "
"scale] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation d'échelle "
"[code]S[/code] correspondante sur la gauche, c'est-à-dire [code]S * X[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère "
"global/parent."

msgid ""
"Returns a copy of the transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"right, i.e., [code]X * S[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Renvoie une copie de cette transformation redimensionnée d'un facteur [param "
"scale] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation d'échelle "
"[code]S[/code] correspondante sur la droite, c'est-à-dire [code]X * S[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère local."

msgid ""
"Returns a copy of the transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the left, i.e., [code]T * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Renvoie une copie de cette transformation translatée d'un décalage [param "
"offset] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de translation "
"[code]T[/code] correspondante sur la gauche, c'est-à-dire [code]T * X[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère "
"global/parent."

msgid ""
"Returns a copy of the transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the right, i.e., [code]X * T[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Renvoie une copie de cette transformation translatée d'un décalage [param "
"offset] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de translation "
"[code]T[/code] correspondante sur la droite, c'est-à-dire [code]X* T[/code].\n"
"Cela peut être considéré comme une transformation par rapport au repère local."

msgid ""
"The translation offset of this transform, and the column [code]2[/code] of "
"the matrix. In 2D space, this can be seen as the position."
msgstr ""
"Le décalage de translation de cette transformation, et la colonne [code]2[/"
"code] de la matrice. Dans l'espace 2D, cela peut être considéré comme la "
"position."

msgid ""
"The transform basis's X axis, and the column [code]0[/code] of the matrix. "
"Combined with [member y], this represents the transform's rotation, scale, "
"and skew.\n"
"On the identity transform, this vector points right ([constant "
"Vector2.RIGHT])."
msgstr ""
"L'axe X de la base de la transformation et la colonne [code]0[/code] de la "
"matrice. Combiné à [member y], cela représente la rotation, l'échelle et le "
"cisaillement de la transformation.\n"
"Sur la transformation identité, ce vecteur pointe vers la droite ([constant "
"Vector2.RIGHT])."

msgid ""
"The transform basis's Y axis, and the column [code]1[/code] of the matrix. "
"Combined with [member x], this represents the transform's rotation, scale, "
"and skew.\n"
"On the identity transform, this vector points down ([constant Vector2.DOWN])."
msgstr ""
"L'axe Y de la base de la transformation et la colonne [code]1[/code] de la "
"matrice. Combiné à [member x], cela représente la rotation, l'échelle et le "
"cisaillement de la transformation.\n"
"Sur la transformation identité, ce vecteur pointe vers le bas ([constant "
"Vector2.DOWN])."

msgid ""
"The identity [Transform2D]. This is a transform with no translation, no "
"rotation, and a scale of [constant Vector2.ONE]. This also means that:\n"
"- The [member x] points right ([constant Vector2.RIGHT]);\n"
"- The [member y] points down ([constant Vector2.DOWN]).\n"
"[codeblock]\n"
"var transform = Transform2D.IDENTITY\n"
"print(\"| X | Y | Origin\")\n"
"print(\"| %.f | %.f | %.f\" % [transform.x.x, transform.y.x, "
"transform.origin.x])\n"
"print(\"| %.f | %.f | %.f\" % [transform.x.y, transform.y.y, "
"transform.origin.y])\n"
"# Prints:\n"
"# | X | Y | Origin\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"[/codeblock]\n"
"If a [Vector2], a [Rect2], a [PackedVector2Array], or another [Transform2D] "
"is transformed (multiplied) by this constant, no transformation occurs.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Transform2D] without any arguments. It can be used to make your "
"code clearer, and for consistency with C#."
msgstr ""
"La [Transform2D] identité. Il s'agit d'une transformation sans translation, "
"sans rotation, et d'une échelle de [constant Vector2.ONE]. Cela signifie "
"également que :\n"
"- Le [member x] pointe vers la droite ([constant Vector2.RIGHT]);\n"
"- Le [member y] pointe vers le bas ([constant Vector2.DOWN]);\n"
"[codeblock]\n"
"var transformation = Transform2D.IDENTITY\n"
"print(\"| X | Y | Origin\")\n"
"print(\"| %.f | %.f | %.f\" % [transformation.x.x, transformation.y.x, "
"transformation.origin.x])\n"
"print(\"| %.f | %.f | %.f\" % [transformation.x.y, transformation.y.y, "
"transformation.origin.y])\n"
"# Affiche :\n"
"# | X | Y | Origine\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"[/codeblock]\n"
"Si un [Vector2], un [Rect2], un [PackedVector2Array], ou une autre "
"[Transform2D] est transformé (multiplié) par cette constante, aucune "
"transformation ne se produit.\n"
"[b]Note :[/b] En GDScript, cette constante est équivalente à la création "
"d'une [constructor Transform2D] sans aucun argument. Elle peut être utilisée "
"pour rendre votre code plus clair, et pour la cohérence avec le C#."

msgid ""
"When any transform is multiplied by [constant FLIP_X], it negates all "
"components of the [member x] axis (the X column).\n"
"When [constant FLIP_X] is multiplied by any transform, it negates the [member "
"Vector2.x] component of all axes (the X row)."
msgstr ""
"Lorsqu'une transformation est multipliée par [constant FLIP_X], cela inverse "
"le signe toutes les composantes de l'axe [member x] (la colonne X).\n"
"Lorsque [constant FLIP_X] est multiplié par n'importe quelle base, cela "
"inverse le signe de la composante [member Vector2.x] de tous les axes (la "
"ligne X)."

msgid ""
"When any transform is multiplied by [constant FLIP_Y], it negates all "
"components of the [member y] axis (the Y column).\n"
"When [constant FLIP_Y] is multiplied by any transform, it negates the [member "
"Vector2.y] component of all axes (the Y row)."
msgstr ""
"Lorsqu'une transformation est multipliée par [constant FLIP_Y], cela inverse "
"le signe toutes les composantes de l'axe [member y] (la colonne Y).\n"
"Lorsque [constant FLIP_Y] est multiplié par n'importe quelle base, cela "
"inverse le signe de la composante [member Vector2.y] de tous les axes (la "
"ligne Y)."

msgid ""
"Returns [code]true[/code] if the components of both transforms are not "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les composantes des deux transformations ne sont "
"pas égales.\n"
"[b]Note :[/b] En raison des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] qui est plus fiable."

msgid ""
"Transforms (multiplies) every [Vector2] element of the given "
"[PackedVector2Array] by this transformation matrix.\n"
"On larger arrays, this operation is much faster than transforming each "
"[Vector2] individually."
msgstr ""
"Transforme (multiplie) chaque élément [Vector2] du [PackedVector2Array] donné "
"par cette matrice de transformation.\n"
"Sur de plus grands tableaux, cette opération est beaucoup plus rapide que de "
"transformer chaque [Vector2] individuellement."

msgid "Transforms (multiplies) the [Rect2] by this transformation matrix."
msgstr "Transforme (multiplie) ce [Rect2] par cette matrice de transformation."

msgid ""
"Transforms (multiplies) this transform by the [param right] transform.\n"
"This is the operation performed between parent and child [CanvasItem] nodes.\n"
"[b]Note:[/b] If you need to only modify one attribute of this transform, "
"consider using one of the following methods, instead:\n"
"- For translation, see [method translated] or [method translated_local].\n"
"- For rotation, see [method rotated] or [method rotated_local].\n"
"- For scale, see [method scaled] or [method scaled_local]."
msgstr ""
"Transforme (multiplie) cette transformation par la transformation [param "
"right].\n"
"C'est l'opération effectuée entre les nœuds [CanvasItem] parent et enfant.\n"
"[b]Note :[/b] Si vous devez seulement modifier un attribut de cette "
"transformation, envisagez d'utiliser l'une des méthodes suivantes, à la "
"place :\n"
"- Pour la translation, voir [method translated] ou [method "
"translated_local].\n"
"- Pour la rotation, voir [method rotated] ou [method rotated_local].\n"
"- Pour l'échelle, voir [method scaled] ou [method scaled_local]."

msgid "Transforms (multiplies) the [Vector2] by this transformation matrix."
msgstr ""
"Transforme (multiplie) le [Vector2] par cette matrice de transformation."

msgid ""
"Multiplies all components of the [Transform2D] by the given [float], "
"including the [member origin]. This affects the transform's scale uniformly."
msgstr ""
"Multiplie toutes les composantes de la [Transform2D] par le flottant [float] "
"donné, y compris l'origine [member origin]. Cela affecte uniformément "
"l'échelle de la transformation."

msgid ""
"Multiplies all components of the [Transform2D] by the given [int], including "
"the [member origin]. This affects the transform's scale uniformly."
msgstr ""
"Multiplie toutes les composantes de la [Transform2D] par l'entier [int] "
"donné, y compris l'origine [member origin]. Cela affecte uniformément "
"l'échelle de la transformation."

msgid ""
"Divides all components of the [Transform2D] by the given [float], including "
"the [member origin]. This affects the transform's scale uniformly."
msgstr ""
"Divise toutes les composantes de la [Transform2D] par le flottant [float] "
"donné, y compris l'origine [member origin]. Cela affecte uniformément "
"l'échelle de la transformation."

msgid ""
"Divides all components of the [Transform2D] by the given [int], including the "
"[member origin]. This affects the transform's scale uniformly."
msgstr ""
"Divise toutes les composantes de la [Transform2D] par l'entier [int] donné, y "
"compris l'origine [member origin]. Cela affecte uniformément l'échelle de la "
"transformation."

msgid ""
"Returns [code]true[/code] if the components of both transforms are exactly "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Renvoie [code]true[/code] si les composantes des deux transformations sont "
"exactement égales.\n"
"[b]Note :[/b] En raison des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] qui est plus fiable."

msgid ""
"Accesses each axis (column) of this transform by their index. Index [code]0[/"
"code] is the same as [member x], index [code]1[/code] is the same as [member "
"y], and index [code]2[/code] is the same as [member origin]."
msgstr ""
"Accède à chaque axe (colonne) de cette transformation par son index. L'index "
"[code]0[/code] est identique à [member x], l'index [code]1[/code] est "
"identique à [member y], et l'index [code]2[/code] est identique à [member "
"origin]."

msgid "A 3×4 matrix representing a 3D transformation."
msgstr "Une matrice 3×4 représentant une transformation 3D."

msgid ""
"The [Transform3D] built-in [Variant] type is a 3×4 matrix representing a "
"transformation in 3D space. It contains a [Basis], which on its own can "
"represent rotation, scale, and shear. Additionally, combined with its own "
"[member origin], the transform can also represent a translation.\n"
"For a general introduction, see the [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Matrices and transforms[/url] tutorial.\n"
"[b]Note:[/b] Godot uses a [url=https://en.wikipedia.org/wiki/Right-"
"hand_rule]right-handed coordinate system[/url], which is a common standard. "
"For directions, the convention for built-in types like [Camera3D] is for -Z "
"to point forward (+X is right, +Y is up, and +Z is back). Other objects may "
"use different direction conventions. For more information, see the "
"[url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]3D asset "
"direction conventions[/url] tutorial."
msgstr ""
"Le type [Variant] intégré [Transform3D] est une matrice 3×4 représentant une "
"transformation dans l'espace 3D. Elle contient une [Basis] qui, à elle seule "
"peut représenter la rotation, l'échelle et le cisaillement. En plus, combinée "
"à sa propre origine [member origin], la transformation peut également "
"représenter une translation.\n"
"Pour une introduction générale, voir le tutoriel [url=$DOCS_URL/tutorials/"
"math/matrices_and_transforms.html]Matrices et transformations[/url].\n"
"[b]Note :[/b] Godot utilise un [url=https://fr.wikipedia.org/wiki/"
"R%C3%A8gle_de_la_main_droite]système de coordonnées main-droite[/url], qui "
"est une norme habituelle. Pour les directions, la convention pour les types "
"intégrés comme [Camera3D] est que -Z pointe vers l'avant (+X vers la droite, "
"+Y vers le haut, et +Z vers l'arrière). D'autres objets peuvent utiliser des "
"conventions de direction différentes. Pour plus d'informations, voir le "
"tutoriel [url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]Conventions de "
"direction de ressource 3D[/url]."

msgid ""
"Constructs a [Transform3D] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Transform3D] with its [member origin] "
"and the components of its [member basis] set to [constant Vector3.ZERO]."
msgstr ""
"Construit une [Transform3D] identique à [constant IDENTITY].\n"
"[b]Note :[/b] En C#, cela construit une [Transform3D] avec son [member "
"origin] et les composantes de sa [member basis] définis à [constant "
"Vector3.ZERO]."

msgid "Constructs a [Transform3D] as a copy of the given [Transform3D]."
msgstr "Construit une [Transform3D] à partir de la [Transform3D] donnée."

msgid "Constructs a [Transform3D] from a [Basis] and [Vector3]."
msgstr ""
"Construit une [Transform3D] à partir de la [Basis] et du [Vector3] (la "
"position) donnés."

msgid ""
"Constructs a [Transform3D] from a [Projection]. Because [Transform3D] is a "
"3×4 matrix and [Projection] is a 4×4 matrix, this operation trims the last "
"row of the projection matrix ([code]from.x.w[/code], [code]from.y.w[/code], "
"[code]from.z.w[/code], and [code]from.w.w[/code] are not included in the new "
"transform)."
msgstr ""
"Construit une [Transform3D] depuis une [Projection]. Comme [Transform3D] est "
"une matrice 3×4 et [Projection] est une matrice 4×4, cette opération coupe la "
"dernière ligne de la matrice de projection ([code]from.x.w[/code], "
"[code]from.y.w[/code], [code]from.z.w[/code], et [code]from.w.w[/code] ne "
"sont pas inclus dans la nouvelle transformation)."

msgid ""
"Constructs a [Transform3D] from four [Vector3] values (also called matrix "
"columns).\n"
"The first three arguments are the [member basis]'s axes ([member Basis.x], "
"[member Basis.y], and [member Basis.z])."
msgstr ""
"Construit une [Transform3D] à partir de quatre valeurs [Vector3] (également "
"appelées colonnes de la matrice).\n"
"Les trois premiers arguments sont les axes de [member basis] ([member "
"Basis.x], [member Basis.y] et [member Basis.z])."

msgid ""
"Returns the inverted version of this transform. Unlike [method inverse], this "
"method works with almost any [member basis], including non-uniform ones, but "
"is slower. See also [method Basis.inverse].\n"
"[b]Note:[/b] For this method to return correctly, the transform's [member "
"basis] needs to have a determinant that is not exactly [code]0.0[/code] (see "
"[method Basis.determinant])."
msgstr ""
"Renvoie la version inversée de cette transformation. Contrairement à [method "
"inverse], cette méthode fonctionne avec presque n'importe quelle base, y "
"compris les non-uniformes, mais est plus lent. Voir aussi [method "
"Basis.inverse].\n"
"[b]Note :[/b] Pour que cette méthode puisse se finir correctement, la [member "
"basis] de la transformation doit avoir un déterminant qui ne vaut pas "
"exactement [code]0.0[/code] (voir [method Basis.determinant])."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Invertible_matrix]inverted "
"version of this transform[/url]. See also [method Basis.inverse].\n"
"[b]Note:[/b] For this method to return correctly, the transform's [member "
"basis] needs to be [i]orthonormal[/i] (see [method orthonormalized]). That "
"means the basis should only represent a rotation. If it does not, use [method "
"affine_inverse] instead."
msgstr ""
"Renvoie la [url=https://fr.wikipedia.org/wiki/Matrice_inversible]version "
"inversée de cette transformation[/url]. Voir aussi [method Basis.inverse].\n"
"[b]Note :[/b] Pour que cette méthode puisse se finir correctement, la [member "
"basis] de la transformation doit être [i]orthonormée[/i] (voir [method "
"orthonormalized]). Cela signifie que la base ne devrait représenter qu'une "
"rotation. Si ce n'est pas le cas, utilisez plutôt [method affine_inverse]."

msgid ""
"Returns a copy of this transform rotated so that the forward axis (-Z) points "
"towards the [param target] position.\n"
"The up axis (+Y) points as close to the [param up] vector as possible while "
"staying perpendicular to the forward axis. The resulting transform is "
"orthonormalized. The existing rotation, scale, and skew information from the "
"original transform is discarded. The [param target] and [param up] vectors "
"cannot be zero, cannot be parallel to each other, and are defined in global/"
"parent space.\n"
"If [param use_model_front] is [code]true[/code], the +Z axis (asset front) is "
"treated as forward (implies +X is left) and points toward the [param target] "
"position. By default, the -Z axis (camera forward) is treated as forward "
"(implies +X is right)."
msgstr ""
"Renvoie une copie de cette transformation tournée de sorte que l'axe avant (-"
"Z) pointe vers la position cible [param target].\n"
"L'axe vers le haut (+Y) pointe aussi près du vecteur [param up] que possible "
"tout en restant perpendiculaire à l'axe avant. La transformation résultante "
"est orthonormalisée. L'information existante de rotation, d'échelle et de "
"cisaillement de la transformation originale est supprimée. Les vecteurs "
"[param target] et [param up] ne peuvent être nuls, ne peuvent être parallèles "
"entre eux, et sont définis dans l'espace global/parent.\n"
"Si [param use_model_front] vaut [code]true[/code], l'axe +Z (axe avant des "
"ressources) est traité comme l'avant (implique que +X est la gauche) et "
"pointe vers la position cible [param target]. Par défaut, l'axe -Z (avant de "
"la caméra) est traité comme l'avant (implique que +X est la droite)."

msgid ""
"Returns a copy of this transform with its [member basis] orthonormalized. An "
"orthonormal basis is both [i]orthogonal[/i] (the axes are perpendicular to "
"each other) and [i]normalized[/i] (the axes have a length of [code]1.0[/"
"code]), which also means it can only represent a rotation. See also [method "
"Basis.orthonormalized]."
msgstr ""
"Renvoie une copie de cette transformation avec sa [member basis] "
"orthonormalisée. Une base orthonormale est à la fois [i]orthogonale[/i] (les "
"axes sont perpendiculaires les uns aux autres) et [i]normalisée[/i] (les axes "
"ont une longueur de [code]1.0[/code]), ce qui signifie également qu'elle ne "
"peut représenter qu'une rotation. Voir aussi [method Basis.orthonormalized]."

msgid ""
"Returns a copy of this transform rotated around the given [param axis] by the "
"given [param angle] (in radians).\n"
"The [param axis] must be a normalized vector (see [method "
"Vector3.normalized]). If [param angle] is positive, the basis is rotated "
"counter-clockwise around the axis.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the left, i.e., [code]R * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Renvoie une copie de cette transformation tournée autour de l'axe [param "
"axis] donné d'un angle [param angle] donné (en radians).\n"
"L'axe [param axis] doit être un vecteur normalisé (voir [method "
"Vector3.normalized]). Si [param angle] est positif, la base est tournée dans "
"le sens antihoraire autour de l'axe.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de rotation "
"[code]R[/code] correspondante sur la gauche, c'est-à-dire [code]R * X[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère "
"global/parent."

msgid ""
"Returns a copy of this transform rotated around the given [param axis] by the "
"given [param angle] (in radians).\n"
"The [param axis] must be a normalized vector in the transform's local "
"coordinate system. For example, to rotate around the local X-axis, use "
"[constant Vector3.RIGHT].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the right, i.e., [code]X * R[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Renvoie une copie de cette transformation tournée autour de l'axe [param "
"axis] donné de l'angle [param angle] donné (en radians).\n"
"L'axe [param axis] doit être un vecteur normalisé dans le système de "
"coordonnées local de la transformation. Par exemple, pour tourner autour de "
"l'axe X local, utilisez [constant Vector3.RIGHT].\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de rotation "
"[code]R[/code] correspondante sur la droite, c'est-à-dire [code]X * R[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère local."

msgid ""
"Returns a copy of this transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"left, i.e., [code]S * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Renvoie une copie de cette transformation redimensionnée d'un facteur [param "
"scale] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation d'échelle "
"[code]S[/code] correspondante sur la gauche, c'est-à-dire [code]S * X[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère "
"global/parent."

msgid ""
"Returns a copy of this transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"right, i.e., [code]X * S[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Renvoie une copie de cette transformation redimensionnée d'un facteur [param "
"scale] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation d'échelle "
"[code]S[/code] correspondante sur la droite, c'est-à-dire [code]X * S[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère local."

msgid ""
"Returns a copy of this transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the left, i.e., [code]T * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Renvoie une copie de cette transformation translatée d'un décalage [param "
"offset] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de translation "
"[code]T[/code] correspondante sur la gauche, c'est-à-dire [code]T * X[/"
"code].\n"
"Cela peut être considéré comme une transformation par rapport au repère "
"global/parent."

msgid ""
"Returns a copy of this transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the right, i.e., [code]X * T[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Renvoie une copie de cette transformation translatée d'un décalage [param "
"offset] donné.\n"
"Cette méthode est une version optimisée de la multiplication de la "
"transformation [code]X[/code] donnée avec une transformation de translation "
"[code]T[/code] correspondante sur la droite, c'est-à-dire [code]X* T[/code].\n"
"Cela peut être considéré comme une transformation par rapport au repère local."

msgid ""
"The [Basis] of this transform. It is composed by 3 axes ([member Basis.x], "
"[member Basis.y], and [member Basis.z]). Together, these represent the "
"transform's rotation, scale, and shear."
msgstr ""
"La [Basis] de cette transformation. Elle est composée de 3 axes ([member "
"Basis.x], [member Basis.y], et [member Basis.z]). Ensemble, ils représentent "
"la rotation, l'échelle et le cisaillement de la transformation."

msgid ""
"The translation offset of this transform. In 3D space, this can be seen as "
"the position."
msgstr ""
"Le décalage de translation de la transformation. Dans l'espace 3D, cela peut "
"être vu comme la position."

msgid ""
"The identity [Transform3D]. This is a transform with no translation, no "
"rotation, and a scale of [constant Vector3.ONE]. Its [member basis] is equal "
"to [constant Basis.IDENTITY]. This also means that:\n"
"- Its [member Basis.x] points right ([constant Vector3.RIGHT]);\n"
"- Its [member Basis.y] points up ([constant Vector3.UP]);\n"
"- Its [member Basis.z] points back ([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var transform = Transform3D.IDENTITY\n"
"var basis = transform.basis\n"
"print(\"| X | Y | Z | Origin\")\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.x, basis.y.x, basis.z.x, "
"transform.origin.x])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.y, basis.y.y, basis.z.y, "
"transform.origin.y])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.z, basis.y.z, basis.z.z, "
"transform.origin.z])\n"
"# Prints:\n"
"# | X | Y | Z | Origin\n"
"# | 1 | 0 | 0 | 0\n"
"# | 0 | 1 | 0 | 0\n"
"# | 0 | 0 | 1 | 0\n"
"[/codeblock]\n"
"If a [Vector3], an [AABB], a [Plane], a [PackedVector3Array], or another "
"[Transform3D] is transformed (multiplied) by this constant, no transformation "
"occurs.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Transform3D] without any arguments. It can be used to make your "
"code clearer, and for consistency with C#."
msgstr ""
"La [Transform3D] identité. Il s'agit d'une transformation sans translation, "
"sans rotation, et une échelle de [constant Vector3.ONE]. Sa [member basis] "
"est égale à [constant Basis.IDENTITY]. Cela signifie également que :\n"
"- Son [member Basis.x] pointe vers la droite ([constant Vector3.RIGHT]);\n"
"- Son [member Basis.y] pointe vers le haut ([constant Vector3.UP]);\n"
"- Son [member Basis.z] pointe vers l'arrière([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var transformation = Transform3D.IDENTITY\n"
"var base = transformation.basis\n"
"print(\"| X | Y | Z | Origine\")\n"
"print(\"| %.f | %.f | %.f | %.f\" % [base.x.x, base.y.x, base.z.x, "
"transform.origin.x])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [base.x.y, base.y.y, base.z.y, "
"transform.origin.y])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [base.x.z, base.y.z, base.z.z, "
"transform.origin.z])\n"
"# Affiche :\n"
"# | X | Y | Z | Origin\n"
"# | 1 | 0 | 0 | 0\n"
"# | 0 | 1 | 0 | 0\n"
"# | 0 | 0 | 1 | 0\n"
"[/codeblock]\n"
"Si un [Vector3], un [AABB], un [Plane], un [PackedVector3Array], ou une autre "
"[Transform3D] est transformé (multiplié) par cette constante, aucune "
"transformation ne se produit.\n"
"[b]Note :[/b] En GDScript, cette constante est équivalente à la création "
"d'une [constructor Transform3D] sans aucun argument. Elle peut être utilisée "
"pour rendre votre code plus clair, et pour la cohérence avec le C#."

msgid ""
"[Transform3D] with mirroring applied perpendicular to the YZ plane. Its "
"[member basis] is equal to [constant Basis.FLIP_X]."
msgstr ""
"[Transform3D] avec effet miroir appliqué perpendiculairement au plan YZ. Sa "
"base [member basis] est égale à [constant Basis.FLIP_X]."

msgid ""
"[Transform3D] with mirroring applied perpendicular to the XZ plane. Its "
"[member basis] is equal to [constant Basis.FLIP_Y]."
msgstr ""
"[Transform3D] avec effet miroir appliqué perpendiculairement au plan XZ. Sa "
"base [member basis] est égale à [constant Basis.FLIP_Y]."

msgid ""
"[Transform3D] with mirroring applied perpendicular to the XY plane. Its "
"[member basis] is equal to [constant Basis.FLIP_Z]."
msgstr ""
"[Transform3D] avec effet miroir appliqué perpendiculairement au plan XY. Sa "
"base [member basis] est égale à [constant Basis.FLIP_Z]."

msgid "Transforms (multiplies) the [AABB] by this transformation matrix."
msgstr ""
"Transforme (multiplie) cette [AABB] par cette matrice de transformation."

msgid ""
"Transforms (multiplies) every [Vector3] element of the given "
"[PackedVector3Array] by this transformation matrix.\n"
"On larger arrays, this operation is much faster than transforming each "
"[Vector3] individually."
msgstr ""
"Transforme (multiplie) chaque élément [Vector3] du [PackedVector3Array] donné "
"par cette matrice de transformation.\n"
"Sur de plus grands tableaux, cette opération est beaucoup plus rapide que de "
"transformer chaque [Vector3] individuellement."

msgid "Transforms (multiplies) the [Plane] by this transformation matrix."
msgstr "Transforme (multiplie) ce [Plane] par cette matrice de transformation."

msgid ""
"Transforms (multiplies) this transform by the [param right] transform.\n"
"This is the operation performed between parent and child [Node3D]s.\n"
"[b]Note:[/b] If you need to only modify one attribute of this transform, "
"consider using one of the following methods, instead:\n"
"- For translation, see [method translated] or [method translated_local].\n"
"- For rotation, see [method rotated] or [method rotated_local].\n"
"- For scale, see [method scaled] or [method scaled_local]."
msgstr ""
"Transforme (multiplie) cette transformation par la transformation [param "
"right].\n"
"C'est l'opération effectuée entre les [Node3D]s parent et enfant.\n"
"[b]Note :[/b] Si vous devez seulement modifier un attribut de cette "
"transformation, envisagez à la place d'utiliser l'une des méthodes "
"suivantes ::\n"
"- Pour la translation, voir [method translated] ou [method "
"translated_local].\n"
"- Pour la rotation, voir [method rotated] ou [method rotated_local].\n"
"- Pour l'échelle, voir [method scaled] ou [method scaled_local]."

msgid "Transforms (multiplies) the [Vector3] by this transformation matrix."
msgstr ""
"Transforme (multiplie) ce [Vector3] par cette matrice de transformation."

msgid ""
"Multiplies all components of the [Transform3D] by the given [float], "
"including the [member origin]. This affects the transform's scale uniformly, "
"scaling the [member basis]."
msgstr ""
"Multiplie tous les composantes de la [Transform3D] par le [float] donné, y "
"compris l'origine [member origin]. Cela affecte uniformément l'échelle de la "
"transformation, en redimensionnant la [member basis]."

msgid ""
"Multiplies all components of the [Transform3D] by the given [int], including "
"the [member origin]. This affects the transform's scale uniformly, scaling "
"the [member basis]."
msgstr ""
"Multiplie tous les composantes de la [Transform3D] par l'[int] donné, y "
"compris l'origine [member origin]. Cela affecte uniformément l'échelle de la "
"transformation, en redimensionnant la [member basis]."

msgid ""
"Divides all components of the [Transform3D] by the given [float], including "
"the [member origin]. This affects the transform's scale uniformly, scaling "
"the [member basis]."
msgstr ""
"Divise tous les composantes de la [Transform3D] par le [float] donné, y "
"compris l'origine [member origin]. Cela affecte uniformément l'échelle de la "
"transformation, en redimensionnant la [member basis]."

msgid ""
"Divides all components of the [Transform3D] by the given [int], including the "
"[member origin]. This affects the transform's scale uniformly, scaling the "
"[member basis]."
msgstr ""
"Divise tous les composantes de la [Transform3D] par le [int] donné, y compris "
"l'origine [member origin]. Cela affecte uniformément l'échelle de la "
"transformation, en redimensionnant la [member basis]."

msgid ""
"A language translation that maps a collection of strings to their individual "
"translations."
msgstr ""
"Une traduction de langue qui associe une collection de chaînes à leurs "
"traductions individuelles."

msgid ""
"[Translation]s are resources that can be loaded and unloaded on demand. They "
"map a collection of strings to their individual translations, and they also "
"provide convenience methods for pluralization."
msgstr ""
"Les [Translation]s sont des ressources qui peuvent être chargées et "
"déchargées sur demande. Ils associent une collection de chaînes à leurs "
"traductions individuelles, et ils fournissent également des méthodes de "
"commodité pour la pluralisation."

msgid "Internationalizing games"
msgstr "Internationalisation des jeux"

msgid "Localization using gettext"
msgstr "Localisation en utilisant gettext"

msgid "Locales"
msgstr "Locales"

msgid "Virtual method to override [method get_message]."
msgstr "La méthode virtuelle [method get_message] à surcharger."

msgid "Virtual method to override [method get_plural_message]."
msgstr "Méthode virtuelle pour redéfinir [method get_plural_message]."

msgid ""
"Adds a message if nonexistent, followed by its translation.\n"
"An additional context could be used to specify the translation context or "
"differentiate polysemic words."
msgstr ""
"Ajoute un message s'il n'existe pas, suivi de sa traduction.\n"
"Un contexte supplémentaire pourrait être utilisé pour spécifier le contexte "
"de traduction ou différencier les mots polysémiques."

msgid ""
"Adds a message involving plural translation if nonexistent, followed by its "
"translation.\n"
"An additional context could be used to specify the translation context or "
"differentiate polysemic words.\n"
"[b]Note:[/b] Plurals are only supported in [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]gettext-based translations (PO)[/url], not "
"CSV."
msgstr ""
"Ajoute un message impliquant la traduction plurielle s'il n'existe pas, suivi "
"de sa traduction.\n"
"Un contexte supplémentaire pourrait être utilisé pour spécifier le contexte "
"de traduction ou différencier les mots polysémiques.\n"
"[b]Note :[/b] Les pluriels sont uniquement supportées dans les [url=$DOCS_URL/"
"tutorials/i18n/localization_using_gettext.html]traductions basées sur gettext "
"(PO)[/url], pas en CSV."

msgid "Erases a message."
msgstr "Efface un message."

msgid "Returns a message's translation."
msgstr "Renvoie la traduction d’un message."

msgid "Returns the number of existing messages."
msgstr "Renvoie le nombre de messages existants."

msgid "Returns all the messages (keys)."
msgstr "Renvoie tous les messages (clés)."

msgid ""
"Returns a message's translation involving plurals.\n"
"The number [param n] is the number or quantity of the plural object. It will "
"be used to guide the translation system to fetch the correct plural form for "
"the selected language.\n"
"[b]Note:[/b] Plurals are only supported in [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]gettext-based translations (PO)[/url], not "
"CSV."
msgstr ""
"Renvoie la traduction d'un message impliquant des pluriels.\n"
"Le nombre [param n] est le nombre ou la quantité de l'objet pluriel. Il sera "
"utilisé pour guider le système de traduction pour obtenir la bonne forme du "
"pluriel pour la langue choisie.\n"
"[b]Note :[/b] Les pluriels sont uniquement supportées dans les [url=$DOCS_URL/"
"tutorials/i18n/localization_using_gettext.html]traductions basées sur gettext "
"(PO)[/url], pas en CSV."

msgid "Returns all the messages (translated text)."
msgstr "Renvoie tous les messages (texte traduit)."

msgid "The locale of the translation."
msgstr "La langue de la traduction."

msgid "A self-contained collection of [Translation] resources."
msgstr "Une collection autonome de ressources [Translation]."

msgid "Adds a translation."
msgstr "Ajoute une traduction."

msgid "Removes all translations."
msgstr "Supprime toutes les traductions."

msgid "Removes the given translation."
msgstr "Retire la traduction donnée."

msgid ""
"Returns the current locale of the project.\n"
"See also [method OS.get_locale] and [method OS.get_locale_language] to query "
"the locale of the user system."
msgstr ""
"Renvoie le langage actuel du projet.\n"
"Voir aussi [method OS.get_locale] et [method OS.get_locale_language] pour "
"récupérer le langage du système de l'utilisateur."

msgid ""
"Returns a locale's language and its variant (e.g. [code]\"en_US\"[/code] "
"would return [code]\"English (United States)\"[/code])."
msgstr ""
"Renvoie la langue de la locale et sa variation (ex. [code]\"fr_FR\"[/code] "
"renverra [code]\"Français (France)\"[/code])."

msgid ""
"A control used to show a set of internal [TreeItem]s in a hierarchical "
"structure."
msgstr ""
"Un contrôle utilisé pour afficher un ensemble de [TreeItem]s internes en une "
"structure hiérarchique."

msgid "Clears the tree. This removes all items."
msgstr "Efface l'arborescence. Cela retire tous les éléments."

msgid "Returns the button ID at [param position], or -1 if no button is there."
msgstr ""
"Renvoie l'identifiant du bouton à la position [param position], ou -1 si "
"aucun bouton n'est là."

msgid "Returns the column index at [param position], or -1 if no item is there."
msgstr ""
"Renvoie l'index de la colonne à la position [param position], ou -1 s'il n'y "
"en a aucune."

msgid "Returns the expand ratio assigned to the column."
msgstr "Renvoie le rapport d'extension assigné à la colonne."

msgid "Returns the column's title."
msgstr "Renvoie le titre de la colonne."

msgid "Returns the column title alignment."
msgstr "Renvoie l'alignement du titre de colonne."

msgid "Returns column title base writing direction."
msgstr "Renvoie la direction d'écriture de base du titre de colonne."

msgid "Returns column title language code."
msgstr "Renvoie le code de langue du titre de colonne."

msgid "Returns the column's width in pixels."
msgstr "Renvoie la largeur de la colonne en pixels."

msgid "Returns the column for the currently edited item."
msgstr "Renvoie la colonne de l'élément actuellement modifié."

msgid ""
"Returns the tree item at the specified position (relative to the tree origin "
"position)."
msgstr ""
"Renvoie l'élément de l'arborescence à la position spécifiée (relative à la "
"position d'origine de l'arborescence)."

msgid "Returns the last pressed button's index."
msgstr "Renvoie l'index du dernier bouton pressé."

msgid "Returns the tree's root item, or [code]null[/code] if the tree is empty."
msgstr ""
"Renvoie l'élément racine de l'arborescence, ou [code]null[/code] si "
"l'arborescence est vide."

msgid "Returns the current scrolling position."
msgstr "Renvoie la position de défilement actuelle."

msgid ""
"Returns the currently focused item, or [code]null[/code] if no item is "
"focused.\n"
"In [constant SELECT_ROW] and [constant SELECT_SINGLE] modes, the focused item "
"is same as the selected item. In [constant SELECT_MULTI] mode, the focused "
"item is the item under the focus cursor, not necessarily selected.\n"
"To get the currently selected item(s), use [method get_next_selected]."
msgstr ""
"Renvoie l'élément ayant actuellement le focus, ou [code]null[/code] si aucun "
"élément n'a le focus.\n"
"Dans les modes [constant SELECT_ROW] et [constant SELECT_SINGLE], l'élément "
"avec le focus est le même que l'élément sélectionné. En mode [constant "
"SELECT_MULTI], l'élément avec le focus est l'élément sous le curseur de "
"focus, et pas nécessairement sélectionné.\n"
"Pour obtenir le ou les éléments actuellement sélectionnés, utilisez [method "
"get_next_selected]."

msgid ""
"Returns [code]true[/code] if the column has enabled clipping (see [method "
"set_column_clip_content])."
msgstr ""
"Renvoie [code]true[/code] si la colonne a activé le clipping (litt. coupure, "
"voir [method set_column_clip_content])."

msgid ""
"Returns [code]true[/code] if the column has enabled expanding (see [method "
"set_column_expand])."
msgstr ""
"Renvoie [code]true[/code] si la colonne a l'expansion activée (voir [method "
"set_column_expand])."

msgid "Causes the [Tree] to jump to the specified [TreeItem]."
msgstr "Amène le [Tree] à sauter vers le [TreeItem] spécifié."

msgid ""
"Allows to enable clipping for column's content, making the content size "
"ignored."
msgstr ""
"Permet d'activer le clipping pour le contenu de la colonne, ignorant la "
"taille du contenu."

msgid ""
"Sets the relative expand ratio for a column. See [method set_column_expand]."
msgstr ""
"Définit le rapport d'expansion relatif pour une colonne. Voir [method "
"set_column_expand]."

msgid "Sets the title of a column."
msgstr "Définit le titre d’une colonne."

msgid "Sets column title base writing direction."
msgstr "Définit la direction d'écriture de base du titre de colonne."

msgid "Selects the specified [TreeItem] and column."
msgstr "Sélectionne la colonne et le [TreeItem] spécifiés."

msgid "If [code]true[/code], the currently selected cell may be selected again."
msgstr ""
"Si [code]true[/code], la cellule actuellement sélectionnée peut être "
"sélectionnée à nouveau."

msgid "If [code]true[/code], a right mouse button click can select items."
msgstr ""
"Si [code]true[/code], une clic droit de la souris peut sélectionner des "
"éléments."

msgid ""
"If [code]true[/code], allows navigating the [Tree] with letter keys through "
"incremental search."
msgstr ""
"Si [code]true[/code], permet de naviguer dans le [Tree] avec les touches "
"alphabétiques grâce à une recherche incrémentale."

msgid "If [code]true[/code], column titles are visible."
msgstr "Si [code]true[/code], les titres des colonnes sont visibles."

msgid "The number of columns."
msgstr "Le nombre de colonnes."

msgid "If [code]true[/code], the folding arrow is hidden."
msgstr "Si [code]true[/code], la flèche de réduction est masquée."

msgid "If [code]true[/code], the tree's root is hidden."
msgstr "Si [code]true[/code], la racine de l'arborescence est masquée."

msgid "If [code]true[/code], enables horizontal scrolling."
msgstr "Si [code]true[/code], permet le défilement horizontal."

msgid "If [code]true[/code], enables vertical scrolling."
msgstr "Si [code]true[/code], permet le défilement vertical."

msgid ""
"Allows single or multiple selection. See the [enum SelectMode] constants."
msgstr ""
"Permet de sélectionner un seul ou plusieurs éléments. Voir les constantes "
"[enum SelectMode]."

msgid ""
"Emitted when a button on the tree was pressed (see [method "
"TreeItem.add_button])."
msgstr ""
"Émis quand le bouton de l'arborescence a été pressé (voir [method "
"TreeItem.add_button])."

msgid "Emitted when a cell is selected."
msgstr "Émis lorsqu’une cellule est sélectionnée."

msgid ""
"Emitted when a column's title is clicked with either [constant "
"MOUSE_BUTTON_LEFT] or [constant MOUSE_BUTTON_RIGHT]."
msgstr ""
"Émis lorsque le titre d'une colonne est cliqué avec le clic gauche ([constant "
"MOUSE_BUTTON_LEFT]) ou le clic droit ([constant MOUSE_BUTTON_RIGHT])."

msgid ""
"Emitted when an item with [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
"with a mouse button."
msgstr ""
"Émis quand un élément en mode [constant TreeItem.CELL_MODE_CUSTOM] a été "
"cliqué avec un bouton de souris."

msgid ""
"Emitted when a cell with the [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
"to be edited."
msgstr ""
"Émis quand une cellule en mode [constant TreeItem.CELL_MODE_CUSTOM] a été "
"cliquée pour être modifiée."

msgid "Emitted when a mouse button is clicked in the empty space of the tree."
msgstr ""
"Émis lorsqu'un bouton de souris est cliqué dans l'espace vide de "
"l'arborescence."

msgid "Emitted when an item is edited."
msgstr "Émis lorsqu'un élément est modifié."

msgid "Emitted when an item is selected with a mouse button."
msgstr "Émis lorsqu'un élément est sélectionné avec un bouton de souris."

msgid "Emitted when an item is selected."
msgstr "Émis lorsqu’un élément est sélectionné."

msgid ""
"Emitted instead of [signal item_selected] if [member select_mode] is set to "
"[constant SELECT_MULTI]."
msgstr ""
"Émis au lieu de [signal item_selected] si [member select_mode] est défini à "
"[constant SELECT_MULTI]."

msgid "Emitted when a left mouse button click does not select any item."
msgstr "Émis quand un clic gauche n'a sélectionné aucun élément."

msgid ""
"The [Color] of the relationship lines between the selected [TreeItem] and its "
"children."
msgstr ""
"La [Color] des liens relationnels entre le [TreeItem] sélectionné et ses "
"enfants."

msgid ""
"Text [Color] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
"hovered."
msgstr ""
"La [Color] du texte pour un mode de cellule [constant "
"TreeItem.CELL_MODE_CUSTOM] quand elle est survolée."

msgid "Text [Color] used when the item is selected."
msgstr "La [Color] du texte utilisée quand l'élément est sélectionné."

msgid "[Color] of the guideline."
msgstr "[Color] de la ligne directrice."

msgid ""
"The [Color] of the relationship lines between the selected [TreeItem] and its "
"parents."
msgstr ""
"La [Color] des liens relationnels entre le [TreeItem] sélectionné et ses "
"parents."

msgid "The default [Color] of the relationship lines."
msgstr "La [Color] par défaut des lignes relationnelles."

msgid "Default text [Color] of the title button."
msgstr "La [Color] par défaut du titre du bouton."

msgid "The horizontal space between each button in a cell."
msgstr "L'espacement horizontal entre chaque bouton dans une cellule."

msgid ""
"The width of the relationship lines between the selected [TreeItem] and its "
"children."
msgstr ""
"La largeur des lignes relationnelles entre le [TreeItem] sélectionné et ses "
"enfants."

msgid ""
"The horizontal space between item cells. This is also used as the margin at "
"the start of an item when folding is disabled."
msgstr ""
"L'espace horizontal entre les cellules d'éléments. Ceci est également utilisé "
"en tant que marge au début d'un élément lorsque le repliage est désactivé."

msgid "The inner bottom margin of a cell."
msgstr "La marge inférieure intérieure d'une cellule."

msgid "The inner left margin of a cell."
msgstr "La marge gauche intérieure d'une cellule."

msgid "The inner right margin of a cell."
msgstr "La marge droite intérieure d'une cellule."

msgid "The inner top margin of a cell."
msgstr "La marge supérieure intérieure d'une cellule."

msgid ""
"The width of the relationship lines between the selected [TreeItem] and its "
"parents."
msgstr ""
"La largeur des lignes relationnelles entre le [TreeItem] sélectionné et ses "
"parents."

msgid "The default width of the relationship lines."
msgstr "La largeur par défaut des lignes relationnelles."

msgid "The speed of border scrolling."
msgstr "La vitesse de défilement des bordures."

msgid "The horizontal separation of tree content and scrollbar."
msgstr ""
"La séparation horizontale entre le contenu de l'arborescence et la barre de "
"défilement."

msgid ""
"The bottom margin of the scrollbars. When negative, uses [theme_item panel] "
"bottom margin."
msgstr ""
"La marge inférieure des barres de défilement. Lorsque négative, utilise la "
"marge inférieure de [theme_item panel]."

msgid ""
"The right margin of the scrollbars. When negative, uses [theme_item panel] "
"right margin."
msgstr ""
"La marge de droite des barres de défilement. Lorsque négative, utilise la "
"marge de droite de [theme_item panel]."

msgid "The vertical separation of tree content and scrollbar."
msgstr ""
"La séparation verticale entre le contenu de l'arborescence et la barre de "
"défilement."

msgid ""
"The vertical padding inside each item, i.e. the distance between the item's "
"content and top/bottom border."
msgstr ""
"Le rembourrage vertical à l'intérieur de chaque élément, c'est-à-dire la "
"distance entre le contenu de l'élément et la bordure supérieure/inférieure."

msgid "[Font] of the title button's text."
msgstr "[Font] du texte du bouton de titre."

msgid "Font size of the title button's text."
msgstr "Taille de police du texte du bouton du titre."

msgid "The arrow icon used when a foldable item is not collapsed."
msgstr "L'icône de la flèche utilisée quand un élément n'est pas replié."

msgid ""
"The arrow icon used when a foldable item is collapsed (for left-to-right "
"layouts)."
msgstr ""
"L'icône de flèche utilisée lorsqu'un objet repliable est réduit (pour les "
"mises en pages de gauche à droite)."

msgid ""
"The arrow icon used when a foldable item is collapsed (for right-to-left "
"layouts)."
msgstr ""
"L'icône de flèche utilisée lorsqu'un objet repliable est réduit (pour les "
"mises en pages de droite à gauche)."

msgid ""
"The arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode "
"cell."
msgstr ""
"L'icône de la flèche à afficher pour les cellules en mode [constant "
"TreeItem.CELL_MODE_RANGE]."

msgid ""
"The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] "
"mode cell."
msgstr ""
"L'icône de la flèche haut-bas à afficher quand la cellule en mode [constant "
"TreeItem.CELL_MODE_RANGE]."

msgid "[StyleBox] used when a button in the tree is hovered."
msgstr "Lq [StyleBox] utilisée quand un bouton dans l'arborescence est survolé."

msgid "[StyleBox] used when a button in the tree is pressed."
msgstr "La [StyleBox] utilisée quand un bouton dans l'arborescence est appuyé."

msgid "[StyleBox] used for the cursor, when the [Tree] is being focused."
msgstr "La [StyleBox] utilisée pour le curseur, quand le [Tree] a le focus."

msgid "[StyleBox] used for the cursor, when the [Tree] is not being focused."
msgstr ""
"La [StyleBox] utilisée pour le curseur, quand le [Tree] n'a pas le focus."

msgid ""
"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode button cell when "
"it's hovered."
msgstr ""
"La [StyleBox] pour une cellule de bouton avec le mode [constant "
"TreeItem.CELL_MODE_CUSTOM] quand elle est survolée."

msgid ""
"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode button cell when "
"it's pressed."
msgstr ""
"La [StyleBox] pour une cellule de bouton avec le mode [constant "
"TreeItem.CELL_MODE_CUSTOM] quand elle est appuyée."

msgid "The focused style for the [Tree], drawn on top of everything."
msgstr "Le style de focus pour le [Tree], dessiné au dessus de tout."

msgid "[StyleBox] for the item being hovered, but not selected."
msgstr "La [StyleBox] pour l'élément étant survolé, mais pas sélectionné."

msgid "The background style for the [Tree]."
msgstr "Le style d'arrière-plan pour le [Tree]."

msgid ""
"[StyleBox] for the selected items, used when the [Tree] is not being focused."
msgstr ""
"La [StyleBox] pour les éléments sélectionnés, utilisée quand le [Tree] n'a "
"pas le focus."

msgid ""
"[StyleBox] for the selected items, used when the [Tree] is being focused."
msgstr ""
"La [StyleBox] pour les éléments sélectionnés, utilisée quand le [Tree] a le "
"focus."

msgid "[StyleBox] used when the title button is being hovered."
msgstr "La [StyleBox] utilisée quand le titre du bouton est survolé."

msgid "Default [StyleBox] for the title button."
msgstr "La [StyleBox] par défaut pour le titre du bouton."

msgid "[StyleBox] used when the title button is being pressed."
msgstr "La [StyleBox] utilisée quand le titre du bouton est appuyé."

msgid "Resets the background color for the given column to default."
msgstr "Rétablit la couleur d'arrière-plan par défaut de la colonne spécifiée."

msgid "Resets the color for the given column to default."
msgstr "Rétablit la couleur de la colonne spécifiée à la valeur par défaut."

msgid "Deselects the given column."
msgstr "Désélectionne la colonne donnée."

msgid "Returns the column's auto translate mode."
msgstr "Renvoie le mode de traduction automatique de la colonne."

msgid "Returns the column's cell mode."
msgstr "Renvoie le mode des cellules de la colonne."

msgid "Returns the custom color of column [param column]."
msgstr "Renvoie la couleur personnalisée de la colonne [param column]."

msgid "Returns [code]true[/code] if [code]expand_right[/code] is set."
msgstr "Renvoie [code]true[/code] si [code]expand_right[/code] est défini."

msgid "Returns the TreeItem's first child."
msgstr "Renvoie le premier enfant du TreeItem."

msgid "Returns the [Color] modulating the column's icon."
msgstr "Renvoie la [Color] modulant l'icône de la colonne."

msgid "Returns the value of a [constant CELL_MODE_RANGE] column."
msgstr "Renvoie la valeur d'une colonne [constant CELL_MODE_RANGE]."

msgid ""
"Returns a dictionary containing the range parameters for a given column. The "
"keys are \"min\", \"max\", \"step\", and \"expr\"."
msgstr ""
"Renvoie un dictionnaire contenant les paramètres de plage pour une colonne "
"donnée. Les clés sont \"min\", \"max\", \"step\", et \"expr\"."

msgid "Gets the suffix string shown after the column value."
msgstr "Obtient le suffixe affiché après la valeur de la colonne."

msgid "Returns the given column's text."
msgstr "Renvoie le texte de la colonne donnée."

msgid "Returns the given column's text alignment."
msgstr "Renvoie l'alignement du texte de la colonne donnée."

msgid "Selects the given [param column]."
msgstr "Sélectionne la colonne [param column] donnée."

msgid "Sets the given column's custom color."
msgstr "Définit la couleur personnalisée de la colonne donnée."

msgid "Use [method TreeItem.set_custom_draw_callback] instead."
msgstr "Utilisez [method TreeItem.set_custom_draw_callback] à la place."

msgid "Modulates the given column's icon with [param modulate]."
msgstr "Module l'icône de la colonne donnée avec [param modulate]."

msgid ""
"Sets the metadata value for the given column, which can be retrieved later "
"using [method get_metadata]. This can be used, for example, to store a "
"reference to the original data."
msgstr ""
"Définit la valeur des métadonnées pour la colonne donnée, qui peut être "
"récupérée ultérieurement en utilisant [method get_metadata]. Cela peut être "
"utilisé, par exemple, pour stocker une référence aux données d'origine."

msgid "Sets the value of a [constant CELL_MODE_RANGE] column."
msgstr "Définit la valeur d'une colonne [constant CELL_MODE_RANGE]."

msgid ""
"Sets a string to be shown after a column's value (for example, a unit "
"abbreviation)."
msgstr ""
"Définit un texte à afficher après la valeur d'une colonne (par exemple, une "
"abréviation d'unité)."

msgid "Sets the given column's text value."
msgstr "Définit le texte pour la colonne donnée."

msgid "Sets the given column's tooltip text."
msgstr "Définit le texte de l’info-bulle de la colonne donnée."

msgid "If [code]true[/code], the TreeItem is collapsed."
msgstr "Si [code]true[/code], le TreeItem est développé."

msgid "The custom minimum height."
msgstr "La hauteur minimale personnalisée."

msgid "If [code]true[/code], folding is disabled for this TreeItem."
msgstr "Si [code]true[/code], la réduction est désactivée pour ce TreeItem."

msgid "Triangle geometry for efficient, physicsless intersection queries."
msgstr ""
"Géométrie de triangles pour des requêtes d'intersection efficaces et sans "
"physique."

msgid ""
"Determines the radius of the tube along its length. The radius of a "
"particular section ring is obtained by multiplying the baseline [member "
"radius] by the value of this curve at the given distance. For values smaller "
"than [code]0[/code], the faces will be inverted. Should be a unit [Curve]."
msgstr ""
"Détermine le rayon du tube le long de sa longueur. Le rayon d'un anneau de "
"section particulier est obtenu en multipliant le niveau de référence [member "
"radius] par la valeur de cette courbe à la distance donnée. Pour les valeurs "
"inférieures à [code]0[/code], les faces seront inversées. Devrait être une "
"[Curve] unitaire."

msgid "The length of a section of the tube."
msgstr "La longueur d'une section du tube."

msgid "The total number of sections on the tube."
msgstr "Le nombre total de sections sur le tube."

msgid ""
"Lightweight object used for general-purpose animation via script, using "
"[Tweener]s."
msgstr ""
"Objet léger utilisé pour l'animation générale par script, en utilisant des "
"[Tweener]s."

msgid ""
"Makes the next [Tweener] run parallelly to the previous one.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(...);\n"
"tween.Parallel().TweenProperty(...);\n"
"tween.Parallel().TweenProperty(...);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"All [Tweener]s in the example will run at the same time.\n"
"You can make the [Tween] parallel by default by using [method set_parallel]."
msgstr ""
"Fait que le prochain [Tweener] s'exécute en parallèle au précédent.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"Tween.TweenProperty(...)\n"
"tween.Parallel().TweenProperty(...)\n"
"tween.Parallel().TweenProperty(...)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Tous les [Tweener] de l'exemple s'exécuteront en même temps.\n"
"Vous pouvez rendre le [Tween] parallèle par défaut en utilisant [method "
"set_parallel]."

msgid "Resumes a paused or stopped [Tween]."
msgstr "Reprend un [Tween] en pause ou arrêté."

msgid ""
"Scales the speed of tweening. This affects all [Tweener]s and their delays."
msgstr ""
"Redimensionne la vitesse du tweening. Cela affecte tous les [Tweener]s et "
"leurs délais."

msgid ""
"Creates and appends a [MethodTweener]. This method is similar to a "
"combination of [method tween_callback] and [method tween_property]. It calls "
"a method over time with a tweened value provided as an argument. The value is "
"tweened between [param from] and [param to] over the time specified by [param "
"duration], in seconds. Use [method Callable.bind] to bind additional "
"arguments for the call. You can use [method MethodTweener.set_ease] and "
"[method MethodTweener.set_trans] to tweak the easing and transition of the "
"value or [method MethodTweener.set_delay] to delay the tweening.\n"
"[b]Example:[/b] Making a 3D object look from one point to another point:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_method(look_at.bind(Vector3.UP), Vector3(-1, 0, -1), Vector3(1, "
"0, -1), 1.0) # The look_at() method takes up vector as second argument.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenMethod(Callable.From((Vector3 target) => LookAt(target, "
"Vector3.Up)), new Vector3(-1.0f, 0.0f, -1.0f), new Vector3(1.0f, 0.0f, "
"-1.0f), 1.0f); // Use lambdas to bind additional arguments for the call.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Setting the text of a [Label], using an intermediate method "
"and after a delay:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar tween = create_tween()\n"
"\ttween.tween_method(set_label_text, 0, 10, 1.0).set_delay(1.0)\n"
"\n"
"func set_label_text(value: int):\n"
"\t$Label.text = \"Counting \" + str(value)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tbase._Ready();\n"
"\n"
"\tTween tween = CreateTween();\n"
"\ttween.TweenMethod(Callable.From<int>(SetLabelText), 0.0f, 10.0f, "
"1.0f).SetDelay(1.0f);\n"
"}\n"
"\n"
"private void SetLabelText(int value)\n"
"{\n"
"\tGetNode<Label>(\"Label\").Text = $\"Counting {value}\";\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Crée et ajoute un [MethodTweener]. Cette méthode est similaire à une "
"combinaison de [method tween_callback] et [method tween_property]. Elle "
"appelle une méthode au fil du temps avec une valeur tweenée fournie comme "
"argument. La valeur est tweenée entre [param from] et [param to] au cours du "
"temps spécifié par [param duration], en secondes. Utilisez [method "
"Callable.bind] pour lier des arguments supplémentaires à l'appel. Vous pouvez "
"utiliser [method MethodTweener.set_ease] et [method MethodTweener.set_trans] "
"pour modifier l'assouplissement et la transition de la valeur ou [method "
"MethodTweener.set_delay] pour retarder le tweening.\n"
"[b]Exemple:[/b] Faire regarder un objet 3D d'un point à un autre :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_method(look_at.bind(Vector3.UP), Vector3(-1, 0, -1), Vector3(1, "
"0, -1), 1.0) # La méthode look_at() prend le vecteur up comme arguement.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenMethod(Callable.From((Vector3 target) => LookAt(target, "
"Vector3.Up)), new Vector3(-1.0f, 0.0f, -1.0f), new Vector3(1.0f, 0.0f, "
"-1.0f), 1.0f); // Utilisez des fonctions lambda pour lier des arguments "
"supplémentaires à l'appel.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Exemple :[/b] Définir le texte d'un [Label], en utilisant une méthode "
"intermédiaire et après un délai :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar tween = create_tween()\n"
"\ttween.tween_method(set_label_text, 0, 10, 1.0).set_delay(1.0)\n"
"\n"
"func definir_texte_label(valeur: int):\n"
"\t$Label.text = \"Comptage \" + str(valeur)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tbase._Ready();\n"
"\n"
"\tTween tween = CreateTween();\n"
"\ttween.TweenMethod(Callable.From<int>(SetLabelText), 0.0f, 10.0f, "
"1.0f).SetDelay(1.0f);\n"
"}\n"
"\n"
"private void DefinirTexteLabel(int value)\n"
"{\n"
"\tGetNode<Label>(\"Label\").Text = $\"Comptage {value}\";\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The [Tween] updates after each physics frame (see [method "
"Node._physics_process])."
msgstr ""
"Le [Tween] se met à jour après chaque trame de physique (voir [method "
"Node._physics_process])."

msgid "The animation is interpolated linearly."
msgstr "L'animation est interpolée linéairement."

msgid "The animation is interpolated using a sine function."
msgstr "L'animation est interpolée à l'aide d'une fonction sinusoïdale."

msgid ""
"The animation is interpolated with a quintic (to the power of 5) function."
msgstr ""
"L'animation est interpolée avec une fonction quintique (à la puissance 5)."

msgid ""
"The animation is interpolated with a quartic (to the power of 4) function."
msgstr ""
"L'animation est interpolée avec une fonction quartique (à la puissance 4)."

msgid ""
"The animation is interpolated with a quadratic (to the power of 2) function."
msgstr ""
"L'animation est interpolée avec une fonction quadratique (à la puissance 2)."

msgid ""
"The animation is interpolated with an exponential (to the power of x) "
"function."
msgstr ""
"L'animation est interpolée avec une fonction exponentielle (à la puissance x)."

msgid ""
"The animation is interpolated with elasticity, wiggling around the edges."
msgstr ""
"L'animation est interpolée avec un effet élastique, se balançant aux niveaux "
"des bornes."

msgid "The animation is interpolated with a cubic (to the power of 3) function."
msgstr ""
"L'animation est interpolée avec une fonction cubique (à la puissance 3)."

msgid "The animation is interpolated with a function using square roots."
msgstr "L'animation est interpolée avec la fonction de racine carrée."

msgid "The animation is interpolated by bouncing at the end."
msgstr "L'animation est interpolée en rebondissant à la fin."

msgid "The animation is interpolated backing out at ends."
msgstr "L’animation est interpolée en reculant aux extrémités."

msgid "The interpolation starts slowly and speeds up towards the end."
msgstr "L'interpolation démarre lentement puis s'accélère à la fin."

msgid "The interpolation starts quickly and slows down towards the end."
msgstr "L'interpolation démarre rapidement puis ralentit à la fin."

msgid ""
"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
"interpolation is slowest at both ends."
msgstr ""
"Une combinaison de [constant EASE_IN] et de [constant EASE_OUT]. "
"L'interpolation est plus lente au début et à la fin."

msgid ""
"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
"interpolation is fastest at both ends."
msgstr ""
"Une combinaison de [constant EASE_IN] et de [constant EASE_OUT]. "
"L'interpolation est plus rapide au début et à la fin."

msgid "Abstract class for all Tweeners used by [Tween]."
msgstr "Classe abstraite pour tous les Tweeners utilisés par [Tween]."

msgid ""
"Tweeners are objects that perform a specific animating task, e.g. "
"interpolating a property or calling a method at a given time. A [Tweener] "
"can't be created manually, you need to use a dedicated method from [Tween]."
msgstr ""
"Les tweeners sont des objets qui effectuent une tâche d'animation spécifique, "
"par exemple interpoler une propriété ou appeler une méthode à un moment "
"donné. Un [Tweener] ne peut pas être créé manuellement, vous devez utiliser "
"une méthode dédiée de [Tween]."

msgid ""
"Emitted when the [Tweener] has just finished its job or became invalid (e.g. "
"due to a freed object)."
msgstr ""
"Émis quand le [Tweener] a terminé son travail ou est devenu invalide (par ex. "
"à cause d'un objet libéré)."

msgid "Helper class to implement a UDP server."
msgstr "Une classe d'aide pour implémenter un serveur UDP."

msgid ""
"A simple server that opens a UDP socket and returns connected [PacketPeerUDP] "
"upon receiving new packets. See also [method PacketPeerUDP.connect_to_host].\n"
"After starting the server ([method listen]), you will need to [method poll] "
"it at regular intervals (e.g. inside [method Node._process]) for it to "
"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# server_node.gd\n"
"class_name ServerNode\n"
"extends Node\n"
"\n"
"var server = UDPServer.new()\n"
"var peers = []\n"
"\n"
"func _ready():\n"
"\tserver.listen(4242)\n"
"\n"
"func _process(delta):\n"
"\tserver.poll() # Important!\n"
"\tif server.is_connection_available():\n"
"\t\tvar peer = server.take_connection()\n"
"\t\tvar packet = peer.get_packet()\n"
"\t\tprint(\"Accepted peer: %s:%s\" % [peer.get_packet_ip(), "
"peer.get_packet_port()])\n"
"\t\tprint(\"Received data: %s\" % [packet.get_string_from_utf8()])\n"
"\t\t# Reply so it knows we received the message.\n"
"\t\tpeer.put_packet(packet)\n"
"\t\t# Keep a reference so we can keep contacting the remote peer.\n"
"\t\tpeers.append(peer)\n"
"\n"
"\tfor i in range(0, peers.size()):\n"
"\t\tpass # Do something with the connected peers.\n"
"[/gdscript]\n"
"[csharp]\n"
"// ServerNode.cs\n"
"using Godot;\n"
"using System.Collections.Generic;\n"
"\n"
"public partial class ServerNode : Node\n"
"{\n"
"\tprivate UdpServer _server = new UdpServer();\n"
"\tprivate List<PacketPeerUdp> _peers  = new List<PacketPeerUdp>();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_server.Listen(4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\t_server.Poll(); // Important!\n"
"\t\tif (_server.IsConnectionAvailable())\n"
"\t\t{\n"
"\t\t\tPacketPeerUdp peer = _server.TakeConnection();\n"
"\t\t\tbyte[] packet = peer.GetPacket();\n"
"\t\t\tGD.Print($\"Accepted Peer: {peer.GetPacketIP()}:{peer.GetPacketPort()}"
"\");\n"
"\t\t\tGD.Print($\"Received Data: {packet.GetStringFromUtf8()}\");\n"
"\t\t\t// Reply so it knows we received the message.\n"
"\t\t\tpeer.PutPacket(packet);\n"
"\t\t\t// Keep a reference so we can keep contacting the remote peer.\n"
"\t\t\t_peers.Add(peer);\n"
"\t\t}\n"
"\t\tforeach (var peer in _peers)\n"
"\t\t{\n"
"\t\t\t// Do something with the peers.\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[codeblocks]\n"
"[gdscript]\n"
"# client_node.gd\n"
"class_name ClientNode\n"
"extends Node\n"
"\n"
"var udp = PacketPeerUDP.new()\n"
"var connected = false\n"
"\n"
"func _ready():\n"
"\tudp.connect_to_host(\"127.0.0.1\", 4242)\n"
"\n"
"func _process(delta):\n"
"\tif !connected:\n"
"\t\t# Try to contact server\n"
"\t\tudp.put_packet(\"The answer is... 42!\".to_utf8_buffer())\n"
"\tif udp.get_available_packet_count() > 0:\n"
"\t\tprint(\"Connected: %s\" % udp.get_packet().get_string_from_utf8())\n"
"\t\tconnected = true\n"
"[/gdscript]\n"
"[csharp]\n"
"// ClientNode.cs\n"
"using Godot;\n"
"\n"
"public partial class ClientNode : Node\n"
"{\n"
"\tprivate PacketPeerUdp _udp = new PacketPeerUdp();\n"
"\tprivate bool _connected = false;\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_udp.ConnectToHost(\"127.0.0.1\", 4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\tif (!_connected)\n"
"\t\t{\n"
"\t\t\t// Try to contact server\n"
"\t\t\t_udp.PutPacket(\"The Answer Is..42!\".ToUtf8Buffer());\n"
"\t\t}\n"
"\t\tif (_udp.GetAvailablePacketCount() > 0)\n"
"\t\t{\n"
"\t\t\tGD.Print($\"Connected: {_udp.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t_connected = true;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Un simple serveur qui ouvre un socket UDP et renvoie les [PacketPeerUDP] "
"connectés lors de la réception de nouveaux paquets. Voir aussi [method "
"PacketPeerUDP.connect_to_host].\n"
"Après avoir lancé le serveur (avec [method listen]), vous devez appeler "
"[method poll] régulièrement (ex. à l'intérieur de [method Node._process]) "
"pour qu'il traite les nouveaux paquets, les envoie aux [PacketPeerUDP] "
"appropriés, ou reçoit de nouvelles connexions.\n"
"Voici une petit exemple sur la façon de l'utiliser :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# noeud_serveur.gd\n"
"class_name NoeudServeur\n"
"extends Node\n"
"\n"
"var serveur = UDPServer.new()\n"
"var pairs = []\n"
"\n"
"func _ready():\n"
"\tserver.listen(4242)\n"
"\n"
"func _process(delta):\n"
"\tserveur.poll() # Important !\n"
"\tif serveur.is_connection_available():\n"
"\t\tvar pair = serveur.take_connection()\n"
"\t\tvar paquet = pair.get_packet()\n"
"\t\tprint(\"Pair accepté : %s:%s\" % [pair.get_packet_ip(), "
"pair.get_packet_port()])\n"
"\t\tprint(\"Données reçues : %s\" % [paquet.get_string_from_utf8()])\n"
"\t\t# Réponse pour qu'il sache que nous avons reçu le message\n"
"\t\tpair.put_packet(paquet)\n"
"\t\t# Gardons une référence afin que nous pussions contacter le pair "
"distant.\n"
"\t\tpairs.append(pair)\n"
"\n"
"\tfor i in range(0, pairs.size()):\n"
"\t\tpass # Faire quelque chose avec les pairs connectés.\n"
"[/gdscript]\n"
"[csharp]\n"
"// NoeudServeur.cs\n"
"using Godot;\n"
"using System.Collections.Generic;\n"
"\n"
"public partial class NoeudServeur : Node\n"
"{\n"
"\tprivate UdpServer _serveur = new UdpServer();\n"
"\tprivate List<PacketPeerUdp> _pairs = new List<PacketPeerUdp>();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_serveur.Listen(4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\t_serveur.Poll(); // Important!\n"
"\t\tif (_serveur.IsConnectionAvailable())\n"
"\t\t{\n"
"\t\t\tPacketPeerUdp pair = _serveur.TakeConnection();\n"
"\t\t\tbyte[] paquet = pair.GetPacket();\n"
"\t\t\tGD.Print($\"Pair accepté : {pair.GetPacketIP()}:{paquet.GetPacketPort()}"
"\");\n"
"\t\t\tGD.Print($\"Données reçues : {paquet.GetStringFromUtf8()}\");\n"
"\t\t\t// Réponse pour qu'il sache que nous avons reçu le message\n"
"\t\t\tpaquet.PutPacket(paquet);\n"
"\t\t\t// Gardons une référence afin que nous pussions contacter le pair "
"distant.\n"
"\t\t\t_pairs.Add(pair);\n"
"\t\t}\n"
"\t\tforeach (var pair in _pairs)\n"
"\t\t{\n"
"\t\t\t// Faire quelque chose avec les pairs connectés.\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[codeblocks]\n"
"[gdscript]\n"
"# noeud_client.gd\n"
"class_name NoeudClient\n"
"extends Node\n"
"\n"
"var udp = PacketPeerUDP.new()\n"
"var connecte = false\n"
"\n"
"func _ready():\n"
"\tudp.connect_to_host(\"127.0.0.1\", 4242)\n"
"\n"
"func _process(delta):\n"
"\tif !connecte:\n"
"\t\t# Essayer de contacter le serveur\n"
"\t\tudp.put_packet(\"La réponse est ... 42 !\".to_utf8_buffer())\n"
"\tif udp.get_available_packet_count() > 0:\n"
"\t\tprint(\"Connecté : %s\" % udp.get_packet().get_string_from_utf8())\n"
"\t\tconnecte = true\n"
"[/gdscript]\n"
"[csharp]\n"
"// NoeudClient.cs\n"
"using Godot;\n"
"\n"
"public partial class NoeudClient : Node\n"
"{\n"
"\tprivate PacketPeerUdp _udp = new PacketPeerUdp();\n"
"\tprivate bool _connecte = false;\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_udp.ConnectToHost(\"127.0.0.1\", 4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\tif (!_connecte)\n"
"\t\t{\n"
"\t\t\t// Essayer de contacter le serveur\n"
"\t\t\t_udp.PutPacket(\"La réponse est ... 42 !\".ToUtf8Buffer());\n"
"\t\t}\n"
"\t\tif (_udp.GetAvailablePacketCount() > 0)\n"
"\t\t{\n"
"\t\t\tGD.Print($\"Connected: {_udp.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t_connecte = true;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if a packet with a new address/port combination was "
"received on the socket."
msgstr ""
"Renvoie [code]true[/code] si un paquet avec une nouvelle combinaison "
"adresse / port a été reçu sur la socket."

msgid "Returns [code]true[/code] if the socket is open and listening on a port."
msgstr "Renvoie [code]true[/code] si le socket est ouvert et écoute à un port."

msgid ""
"Starts the server by opening a UDP socket listening on the given [param "
"port]. You can optionally specify a [param bind_address] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.bind]."
msgstr ""
"Démarre le serveur en ouvrant un socket UDP écoutant le [param port] donné. "
"Vous pouvez en option spécifier une adresse [param bind_address] pour écouter "
"seulement les paquets envoyés à cette adresse. Voir aussi [method "
"PacketPeerUDP.bind]."

msgid ""
"Stops the server, closing the UDP socket if open. Will close all connected "
"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
"be notified)."
msgstr ""
"Arrête le serveur, fermant le socket UDP si ouvert. Fermera toutes les "
"connexions [PacketPeerUDP] acceptées avec [method take_connection] (les pairs "
"distantes ne seront pas notifiés)."

msgid ""
"UndoRedo works by registering methods and property changes inside "
"\"actions\". You can create an action, then provide ways to do and undo this "
"action using function calls and property changes, then commit the action.\n"
"When an action is committed, all of the [code]do_*[/code] methods will run. "
"If the [method undo] method is used, the [code]undo_*[/code] methods will "
"run. If the [method redo] method is used, once again, all of the [code]do_*[/"
"code] methods will run.\n"
"Here's an example on how to add an action:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var undo_redo = UndoRedo.new()\n"
"\n"
"func do_something():\n"
"\tpass # Put your code here.\n"
"\n"
"func undo_something():\n"
"\tpass # Put here the code that reverts what's done by \"do_something()\".\n"
"\n"
"func _on_my_button_pressed():\n"
"\tvar node = get_node(\"MyNode2D\")\n"
"\tundo_redo.create_action(\"Move the node\")\n"
"\tundo_redo.add_do_method(do_something)\n"
"\tundo_redo.add_undo_method(undo_something)\n"
"\tundo_redo.add_do_property(node, \"position\", Vector2(100, 100))\n"
"\tundo_redo.add_undo_property(node, \"position\", node.position)\n"
"\tundo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"private UndoRedo _undoRedo;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_undoRedo = new UndoRedo();\n"
"}\n"
"\n"
"public void DoSomething()\n"
"{\n"
"\t// Put your code here.\n"
"}\n"
"\n"
"public void UndoSomething()\n"
"{\n"
"\t// Put here the code that reverts what's done by \"DoSomething()\".\n"
"}\n"
"\n"
"private void OnMyButtonPressed()\n"
"{\n"
"\tvar node = GetNode<Node2D>(\"MyNode2D\");\n"
"\t_undoRedo.CreateAction(\"Move the node\");\n"
"\t_undoRedo.AddDoMethod(new Callable(this, MethodName.DoSomething));\n"
"\t_undoRedo.AddUndoMethod(new Callable(this, MethodName.UndoSomething));\n"
"\t_undoRedo.AddDoProperty(node, \"position\", new Vector2(100, 100));\n"
"\t_undoRedo.AddUndoProperty(node, \"position\", node.Position);\n"
"\t_undoRedo.CommitAction();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Before calling any of the [code]add_(un)do_*[/code] methods, you need to "
"first call [method create_action]. Afterwards you need to call [method "
"commit_action].\n"
"If you don't need to register a method, you can leave [method add_do_method] "
"and [method add_undo_method] out; the same goes for properties. You can also "
"register more than one method/property.\n"
"If you are making an [EditorPlugin] and want to integrate into the editor's "
"undo history, use [EditorUndoRedoManager] instead.\n"
"If you are registering multiple properties/method which depend on one "
"another, be aware that by default undo operation are called in the same order "
"they have been added. Therefore instead of grouping do operation with their "
"undo operations it is better to group do on one side and undo on the other as "
"shown below.\n"
"[codeblocks]\n"
"[gdscript]\n"
"undo_redo.create_action(\"Add object\")\n"
"\n"
"# DO\n"
"undo_redo.add_do_method(_create_object)\n"
"undo_redo.add_do_method(_add_object_to_singleton)\n"
"\n"
"# UNDO\n"
"undo_redo.add_undo_method(_remove_object_from_singleton)\n"
"undo_redo.add_undo_method(_destroy_that_object)\n"
"\n"
"undo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"_undo_redo.CreateAction(\"Add object\");\n"
"\n"
"// DO\n"
"_undo_redo.AddDoMethod(new Callable(this, MethodName.CreateObject));\n"
"_undo_redo.AddDoMethod(new Callable(this, MethodName.AddObjectToSingleton));\n"
"\n"
"// UNDO\n"
"_undo_redo.AddUndoMethod(new Callable(this, "
"MethodName.RemoveObjectFromSingleton));\n"
"_undo_redo.AddUndoMethod(new Callable(this, MethodName.DestroyThatObject));\n"
"\n"
"_undo_redo.CommitAction();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"UndoRedo fonctionne en enregistrant des changements de méthode et de "
"propriété dans des \"actions\". Vous pouvez créer une action, puis fournir "
"des moyens de faire et annuler cette action en utilisant des appels de "
"fonction et des modifications de propriété, puis commit l'action.\n"
"Lorsqu'une action est commit, toutes les méthodes [code]do_*[/code] "
"s'exécuteront. Si la méthode [method undo] est utilisée, les méthodes "
"[code]undo_*[/code] s'exécuteront. Si la méthode [method redo] est utilisée, "
"une fois de plus, toutes les méthodes [code]do_*[/code] seront exécutées.\n"
"Voici un exemple de comment d'ajouter une action :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var undo_redo = UndoRedo.new()\n"
"\n"
"func faire_quelque_chose():\n"
"\tpass # Mettez votre code ici.\n"
"\n"
"func defaire_quelque_chose():\n"
"\tpass # Mettez ici le code qui annule ce qui est fait par "
"\"faire_quelque_chose()\".\n"
"\n"
"func _on_my_button_pressed():\n"
"\tvar noeud = get_node(\"MyNode2D\")\n"
"\tundo_redo.create_action(\"Déplacer le noeud\")\n"
"\tundo_redo.add_do_method(faire_quelque_chose)\n"
"\tundo_redo.add_undo_method(defaire_quelque_chose)\n"
"\tundo_redo.add_do_property(noeud, \"position\", Vector2(100, 100))\n"
"\tundo_redo.add_undo_property(noeud, \"position\", noeud.position)\n"
"\tundo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"private UndoRedo _undoRedo;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_undoRedo = new UndoRedo();\n"
"}\n"
"\n"
"public void FaireQuelquechose()\n"
"{\n"
"\t// Mettez votre code ici.\n"
"}\n"
"\n"
"public void DefaireQuelquechose()\n"
"{\n"
"\t// Mettez ici le code qui annule ce qui est fait par \"FaireQuelquechose()"
"\".\n"
"}\n"
"\n"
"private void OnMyButtonPressed()\n"
"{\n"
"\tvar noeud = GetNode<Node2D>(\"MyNode2D\");\n"
"\t_undoRedo.CreateAction(\"Déplacer le noeud\");\n"
"\t_undoRedo.AddDoMethod(new Callable(this, MethodName.FaireQuelquechose));\n"
"\t_undoRedo.AddUndoMethod(new Callable(this, "
"MethodName.DefaireQuelquechose));\n"
"\t_undoRedo.AddDoProperty(noeud, \"position\", new Vector2(100, 100));\n"
"\t_undoRedo.AddUndoProperty(noeud, \"position\", noeud.Position);\n"
"\t_undoRedo.CommitAction();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Avant d'appeler l'une des méthodes [code]add_(un)do_*[/code], vous devez "
"d'abord appeler [method create_action]. Ensuite, vous devez appeler [method "
"commit_action].\n"
"Si vous n'avez pas besoin d'enregistrer une méthode, vous pouvez ignorer "
"[method add_do_method] et [method add_undo_method], il en va de même pour les "
"propriétés. Vous pouvez également enregistrer plus d'une méthode/propriété.\n"
"Si vous faites un [EditorPlugin] et que vous voulez l'intégrer à l'historique "
"de l'éditeur, utilisez plutôt [EditorUndoRedoManager].\n"
"Si vous enregistrez plusieurs propriétés/méthodes qui dépendent les unes des "
"autres, soyez conscient que par défaut l'opération d'annulation est appelée "
"dans le même ordre qu'elles ont été ajoutées. Par conséquent, au lieu de "
"regrouper les opérations à faire avec les opérations d'annulation, il est "
"préférable de regrouper les actions à faire d'un côté et les actions à "
"défaire de l'autre, comme indiqué ci-dessous.\n"
"[codeblocks]\n"
"[gdscript]\n"
"undo_redo.create_action(\"Ajouter objet\")\n"
"\n"
"# FAIRE\n"
"undo_redo.add_do_method(_creer_objet)\n"
"undo_redo.add_do_method(_ajouter_objet_au_singleton)\n"
"\n"
"# UNDO\n"
"undo_redo.add_undo_method(_retirer_objet_du_singleton)\n"
"undo_redo.add_undo_method(_detruire_cet_objet)\n"
"\n"
"undo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"_undo_redo.CreateAction(\"Ajouter objet\");\n"
"\n"
"// DO\n"
"_undo_redo.AddDoMethod(new Callable(this, MethodName.CreerObjet));\n"
"_undo_redo.AddDoMethod(new Callable(this, "
"MethodName.AjouterObjetAuSingleton));\n"
"\n"
"// UNDO\n"
"_undo_redo.AddUndoMethod(new Callable(this, "
"MethodName.RetirerObjetDuSingleton));\n"
"_undo_redo.AddUndoMethod(new Callable(this, MethodName.DetruireCetObjet));\n"
"\n"
"_undo_redo.CommitAction();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns how many elements are in the history."
msgstr "Renvoie combien d'éléments sont dans l'historique."

msgid ""
"Gets the version. Every time a new action is committed, the [UndoRedo]'s "
"version number is increased automatically.\n"
"This is useful mostly to check if something changed from a saved version."
msgstr ""
"Obtient la version. Chaque fois qu'une nouvelle action est engagée, le numéro "
"de version du [UndoRedo] est augmenté automatiquement.\n"
"Ceci est surtout utile pour vérifier si quelque chose a changé par rapport à "
"une version sauvegardée."

msgid ""
"Returns [code]true[/code] if the [UndoRedo] is currently committing the "
"action, i.e. running its \"do\" method or property change (see [method "
"commit_action])."
msgstr ""
"Renvoie [code]true[/code] si l'[UndoRedo] engage actuellement l'action, c'est-"
"à-dire en exécutant sa méthode « faire » (do) ou son changement de propriété "
"(voir [method commit_action])."

msgid "Redo the last action."
msgstr "Refaire la dernière action."

msgid "Undo the last action."
msgstr "Annule la dernière action."

msgid "Called when [method undo] or [method redo] was called."
msgstr "Appelée quand [method undo] ou [method redo] sont appelées."

msgid "Makes \"do\"/\"undo\" operations stay in separate actions."
msgstr ""
"Fait que les opérations \"annuler\"/\"refaire\" utilisent des actions "
"séparées."

msgid ""
"Universal Plug and Play (UPnP) functions for network device discovery, "
"querying and port forwarding."
msgstr ""
"Fonctions Universal Plug and Play (UPnP, litt. \"Brancher et jouer "
"Universel\") pour la découverte de périphériques, les requêtes et la "
"redirection de port sur un réseau."

msgid "Adds the given [UPNPDevice] to the list of discovered devices."
msgstr "Ajouter le [UPNPDevice] spécifié à la liste des appareils découverts."

msgid "Clears the list of discovered devices."
msgstr "Efface la liste des appareils découverts."

msgid ""
"Discovers local [UPNPDevice]s. Clears the list of previously discovered "
"devices.\n"
"Filters for IGD (InternetGatewayDevice) type devices by default, as those "
"manage port forwarding. [param timeout] is the time to wait for responses in "
"milliseconds. [param ttl] is the time-to-live; only touch this if you know "
"what you're doing.\n"
"See [enum UPNPResult] for possible return values."
msgstr ""
"Découvre les [UPNPDevice]s locaux. Efface la liste des appareils précédemment "
"découverts.\n"
"Filtre pour les appareils de type IGD (InternetGatewayDevice) par défaut, "
"comme ceux gèrent le suivi de port. [param timeout] est la durée d'attente "
"des réponses en millisecondes. [param ttl] est le temps de vie, changez-le "
"seulement si vous savez ce que vous faites.\n"
"Voir [enum UPNPResult] pour les valeurs de renvoi possibles."

msgid "Returns the [UPNPDevice] at the given [param index]."
msgstr "Renvoie l'appareil [UPNPDevice] à l'[param index] donné."

msgid "Returns the number of discovered [UPNPDevice]s."
msgstr "Renvoie le nombre de [UPNPDevice] découverts."

msgid ""
"Returns the default gateway. That is the first discovered [UPNPDevice] that "
"is also a valid IGD (InternetGatewayDevice)."
msgstr ""
"Renvoie la passerelle par défaut. Il s'agit du premier [UPNPDevice] découvert "
"qui est également un IGD (InternetGatewayDevice) valide."

msgid ""
"Returns the external [IP] address of the default gateway (see [method "
"get_gateway]) as string. Returns an empty string on error."
msgstr ""
"Renvoie l'adresse [IP] externe de la passerelle par défaut (voir [method "
"get_gateway]) en tant que chaîne. Retourne une chaîne vide en cas d'erreur."

msgid "If [code]true[/code], IPv6 is used for [UPNPDevice] discovery."
msgstr ""
"Si [code]true[/code], l'IPv6 est utilisée pour la découverte des [UPNPDevice]."

msgid ""
"If [code]0[/code], the local port to use for discovery is chosen "
"automatically by the system. If [code]1[/code], discovery will be done from "
"the source port 1900 (same as destination port). Otherwise, the value will be "
"used as the port."
msgstr ""
"Si [code]0[/code], le port local à utiliser pour la découverte est choisi "
"automatiquement par le système. Si [code]1[/code], la découverte sera faite à "
"partir du port source 1900 (même comme port de destination.) Sinon, la valeur "
"sera utilisée comme port."

msgid ""
"Multicast interface to use for discovery. Uses the default multicast "
"interface if empty."
msgstr ""
"L'interface multicast à utiliser pour la découverte. Utilise l'interface "
"multicast par défaut si vide."

msgid "UPNP command or discovery was successful."
msgstr "La commande ou la découverte UPNP a réussi."

msgid ""
"Not authorized to use the command on the [UPNPDevice]. May be returned when "
"the user disabled UPNP on their router."
msgstr ""
"Non autorisé à utiliser la commande sur le [UPNPDevice]. Peut être retourné "
"lorsque l'utilisateur a désactivé UPNP sur son routeur."

msgid ""
"No port mapping was found for the given port, protocol combination on the "
"given [UPNPDevice]."
msgstr ""
"Aucune carte des ports n'a été trouvée pour le port donné, la combinaison de "
"protocole sur le [UPNPDevice] donné."

msgid "Inconsistent parameters."
msgstr "Paramètres inconsistants."

msgid ""
"No such entry in array. May be returned if a given port, protocol combination "
"is not found on a [UPNPDevice]."
msgstr ""
"Aucune telle entrée dans le tableau. Peut être renvoyé si pour une "
"combinaison de port/protocole donnée n'est pas trouvée sur un [UPNPDevice]."

msgid "The action failed."
msgstr "L’action a échoué."

msgid ""
"The [UPNPDevice] does not allow wildcard values for the source IP address."
msgstr ""
"Le [UPNPDevice] ne permet pas les valeurs joker pour l'adresse IP source."

msgid "The [UPNPDevice] does not allow wildcard values for the external port."
msgstr ""
"Les [UPNPDevice] n'autorisent pas les astérismes pour les ports externes."

msgid "The [UPNPDevice] does not allow wildcard values for the internal port."
msgstr ""
"Les [UPNPDevice] n'autorisent pas les astérismes pour les ports internes."

msgid "The remote host value must be a wildcard."
msgstr "La valeur de l'hôte distante doit être un astérisme."

msgid "The external port value must be a wildcard."
msgstr "La valeur du port externe doit être un astérisme."

msgid ""
"No port maps are available. May also be returned if port mapping "
"functionality is not available."
msgstr ""
"Aucune carte de ports n'est disponible. Peut également être retourné si la "
"fonctionnalité de carte des ports n'est pas disponible."

msgid ""
"Conflict with other mechanism. May be returned instead of [constant "
"UPNP_RESULT_CONFLICT_WITH_OTHER_MAPPING] if a port mapping conflicts with an "
"existing one."
msgstr ""
"Est en conflit avec un autre mécanisme. Peut être retourné au lieu de "
"[constant UPNP_RESULT_CONFLICT_WITH_OTHER_MAPPING] si une carte des ports est "
"en conflit avec une carte existante."

msgid "Conflict with an existing port mapping."
msgstr "Est en conflit avec une carte des ports existante."

msgid "External and internal port values must be the same."
msgstr "Le port externe et interne doivent être les mêmes."

msgid ""
"Only permanent leases are supported. Do not use the [code]duration[/code] "
"parameter when adding port mappings."
msgstr ""
"Seuls les baux permanents sont pris en charge. N'utilisez pas le paramètre "
"[code]duration[/code] lors de l'ajout de carte des ports."

msgid "Invalid gateway."
msgstr "Passerelle invalide."

msgid "Invalid port."
msgstr "Port invalide."

msgid "Invalid protocol."
msgstr "Protocole invalide."

msgid "Invalid duration."
msgstr "Durée non valide."

msgid "Invalid arguments."
msgstr "Arguments non valides."

msgid "Invalid response."
msgstr "Réponse invalide."

msgid "Invalid parameter."
msgstr "Paramètre invalide."

msgid "HTTP error."
msgstr "Erreur HTTP."

msgid "Socket error."
msgstr "Erreur de socket."

msgid "Error allocating memory."
msgstr "Erreur d’allocation de mémoire."

msgid ""
"No gateway available. You may need to call [method discover] first, or "
"discovery didn't detect any valid IGDs (InternetGatewayDevices)."
msgstr ""
"Aucune passerelle disponible. Vous pouvez avoir besoin d'appeler [method "
"discover] d'abord, ou la découverte n'a pas détecté de IGD "
"(InternetGatewayDevices) valide."

msgid ""
"No devices available. You may need to call [method discover] first, or "
"discovery didn't detect any valid [UPNPDevice]s."
msgstr ""
"Aucun appareil disponible. Vous pouvez avoir besoin d'appeler [method "
"discover] d'abord, ou la découverte n'a pas détecté des [UPNPDevice] valides."

msgid "Unknown error."
msgstr "Erreur inconnue."

msgid "Universal Plug and Play (UPnP) device."
msgstr "Périphérique Universal Plug and Play (UPnP)."

msgid ""
"Universal Plug and Play (UPnP) device. See [UPNP] for UPnP discovery and "
"utility functions. Provides low-level access to UPNP control commands. Allows "
"to manage port mappings (port forwarding) and to query network information of "
"the device (like local and external IP address and status). Note that methods "
"on this class are synchronous and block the calling thread."
msgstr ""
"Appareil UPNP (Universal Plug And Play). Voir [UPNP] pour les fonctions UPNP "
"de découverte et utilitaires. Fournit un accès de bas niveau aux commandes "
"UPNP. Permet de gérer les cartes de ports (suivi de port) et de demander des "
"informations réseau sur l'appareil (comme l'adresse IP locale et externe, et "
"le statut). Notez que les méthodes de cette classe sont synchrones et "
"bloquent le fil d'exécution dans lequel ces méthodes sont appelées."

msgid ""
"Adds a port mapping to forward the given external port on this [UPNPDevice] "
"for the given protocol to the local machine. See [method "
"UPNP.add_port_mapping]."
msgstr ""
"Ajoute une carte des ports pour faire passer le port externe donné sur ce "
"[UPNPDevice] pour le protocole donné à la machine locale. Voir [method "
"UPNP.add_port_mapping]."

msgid ""
"Deletes the port mapping identified by the given port and protocol "
"combination on this device. See [method UPNP.delete_port_mapping]."
msgstr ""
"Supprime la carte des ports identifiée par la combinaison de ports et le "
"protocole donnée sur cet appareil. Voir [method UPNP.delete_port_mapping]."

msgid ""
"Returns [code]true[/code] if this is a valid IGD (InternetGatewayDevice) "
"which potentially supports port forwarding."
msgstr ""
"Renvoie [code]true[/code] si c'est un IGD (InternetGatewayDevice) valide qui "
"supporte potentiellement le suivi de port."

msgid "Returns the external IP address of this [UPNPDevice] or an empty string."
msgstr "Renvoie l'adresse IP externe de ce [UPNPDevice], ou une chaîne vide."

msgid "URL to the device description."
msgstr "URL de la description de l’appareil."

msgid "IDG control URL."
msgstr "URL de contrôle IDG."

msgid ""
"Address of the local machine in the network connecting it to this "
"[UPNPDevice]."
msgstr ""
"L'adresse locale sur le réseau de la machine qui se connecte à ce "
"[UPNPDevice]."

msgid "IGD service type."
msgstr "Type de service IGD."

msgid "IGD status."
msgstr "Status IGD."

msgid "Service type."
msgstr "Type de service."

msgid "OK."
msgstr "D'accord."

msgid "Empty HTTP response."
msgstr "Réponse HTTP vide."

msgid "Returned response contained no URLs."
msgstr "La réponse retournée ne contenait pas d’URL."

msgid "Not a valid IGD."
msgstr "Ce n'est pas un IGD valide."

msgid "Disconnected."
msgstr "Déconnecté."

msgid "Unknown device."
msgstr "Périphérique inconnu."

msgid "Invalid control."
msgstr "Contrôle invalide."

msgid "Memory allocation error."
msgstr "Erreur d’allocation de mémoire."

msgid "The most important data type in Godot."
msgstr "Le plus important type de donnée dans Godot."

msgid "Variant class introduction"
msgstr "Introduction à la classe Variant"

msgid "A container that arranges its child controls vertically."
msgstr "Un conteneur qui arrange ses contrôles enfant verticalement."

msgid ""
"A variant of [BoxContainer] that can only arrange its child controls "
"vertically. Child controls are rearranged automatically when their minimum "
"size changes."
msgstr ""
"Une variante de [BoxContainer] qui ne peut arranger ses contrôles enfants que "
"verticalement. Les contrôles enfants sont ré-organisés automatiquement "
"lorsque leur taille minimale change."

msgid "A 2D vector using floating-point coordinates."
msgstr "Un vecteur 2D utilisant des coordonnées flottantes."

msgid ""
"A 2-element structure that can be used to represent 2D coordinates or any "
"other pair of numeric values.\n"
"It uses floating-point coordinates. By default, these floating-point values "
"use 32-bit precision, unlike [float] which is always 64-bit. If double "
"precision is needed, compile the engine with the option "
"[code]precision=double[/code].\n"
"See [Vector2i] for its integer counterpart.\n"
"[b]Note:[/b] In a boolean context, a Vector2 will evaluate to [code]false[/"
"code] if it's equal to [code]Vector2(0, 0)[/code]. Otherwise, a Vector2 will "
"always evaluate to [code]true[/code]."
msgstr ""
"Une structure de 2 éléments qui peut être utilisée pour représenter les "
"coordonnées 2D ou toute autre paire de valeurs numériques.\n"
"Il utilise des coordonnées flottantes. Par défaut, ces valeurs flottantes "
"utilisent une précision de 32 bits, contrairement à [float] qui est toujours "
"de 64 bits. Si une double précision est nécessaire, compilez le moteur avec "
"l'option [code]précision=double[/code].\n"
"Voir [Vector2i] pour son homologue entier.\n"
"[b]Note :[/b] Dans un contexte booléen, un Vector2 évaluera [code]false[/"
"code] s'il est égal à [code]Vector2(0, 0)[/code]. Sinon, un Vector2 évaluera "
"toujours [code]true[/code]."

msgid "3Blue1Brown Essence of Linear Algebra"
msgstr "3Blue1Brown Essence of Linear Algebra"

msgid ""
"Constructs a default-initialized [Vector2] with all components set to "
"[code]0[/code]."
msgstr ""
"Construit un [Vector2] initialisé par défaut avec toutes les composantes "
"définies à [code]0[/code]."

msgid "Constructs a [Vector2] as a copy of the given [Vector2]."
msgstr "Construit un [Vector2] comme copie du [Vector2] donné."

msgid "Constructs a new [Vector2] from [Vector2i]."
msgstr "Construit un nouveau [Vector2] depuis un [Vector2i]."

msgid "Constructs a new [Vector2] from the given [param x] and [param y]."
msgstr ""
"Construit un nouveau [Vector2] depuis les [param x] et [param y] donnés."

msgid ""
"Returns a new vector with all components in absolute values (i.e. positive)."
msgstr ""
"Renvoie un nouveau vecteur avec tous ses composantes en valeurs absolues "
"(c'est-à-dire toujours positives)."

msgid ""
"Returns this vector's angle with respect to the positive X axis, or [code](1, "
"0)[/code] vector, in radians.\n"
"For example, [code]Vector2.RIGHT.angle()[/code] will return zero, "
"[code]Vector2.DOWN.angle()[/code] will return [code]PI / 2[/code] (a quarter "
"turn, or 90 degrees), and [code]Vector2(1, -1).angle()[/code] will return "
"[code]-PI / 4[/code] (a negative eighth turn, or -45 degrees).\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle.png]Illustration of the returned angle.[/url]\n"
"Equivalent to the result of [method @GlobalScope.atan2] when called with the "
"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
"Renvoie l'angle de ce vecteur par rapport à l'axe X positif, ou aussi le "
"vecteur [code](1,0)[/code], en radians.\n"
"Par exemple, [code]Vector2.RIGHT.angle()[/code] va renvoyer zéro, "
"[code]Vector2.DOWN.angle()[/code] va renvoyer [code]PI / 2[/code] (un quart "
"de tour, ou 90 degrés), et [code]Vector2(1,-1).angle()[/code] va renvoyer "
"[code]-PI / 4[/code] (un huitième de tour négatif, ou -45 degrés).\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle.png]Illustration de l'angle renvoyé.[/url]\n"
"Équivalent au résultat de [method @GlobalScope.atan2] quand appelé avec le "
"[member y] et le [member x] du vecteur comme paramètres : [code]atan2(y,x)[/"
"code]."

msgid ""
"Returns the signed angle to the given vector, in radians.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to.png]Illustration of the returned angle.[/url]"
msgstr ""
"Renvoie l'angle signé avec le vecteur donné, en radians.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to.png]Illustration de l'angle retourné.[/url]"

msgid ""
"Returns the angle between the line connecting the two points and the X axis, "
"in radians.\n"
"[code]a.angle_to_point(b)[/code] is equivalent of doing [code](b - a).angle()"
"[/code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to_point.png]Illustration of the returned angle.[/url]"
msgstr ""
"Renvoie l'angle entre la ligne reliant les deux points et l'axe X, en "
"radians.\n"
"[code]a.angle_to_point(b)[/code] est équivalent à [code](b - a).angle()[/"
"code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to_point.png]Illustration de l'angle renvoyé.[/url]"

msgid ""
"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
"y]."
msgstr ""
"Renvoie le ratio d'aspect de ce vecteur, soit [member x] divisé par [member "
"y]."

msgid ""
"Returns the derivative at the given [param t] on the [url=https://"
"en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this "
"vector and the given [param control_1], [param control_2], and [param end] "
"points."
msgstr ""
"Renvoie la dérivée au [param t] donné sur la [url=https://fr.wikipedia.org/"
"wiki/Courbe_de_B%C3%A9zier]courbe de Bézier[/url] définie par ce vecteur et "
"les points [param control_1], [param control_2], et [param end] donnés."

msgid ""
"Returns the point at the given [param t] on the [url=https://en.wikipedia.org/"
"wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this vector and the "
"given [param control_1], [param control_2], and [param end] points."
msgstr ""
"Renvoie le point au [param t] donné sur la [url=https://fr.wikipedia.org/wiki/"
"Courbe_de_B%C3%A9zier]courbe de Bézier[/url] définie par ce vecteur et les "
"points [param control_1], [param control_2], et [param end] donnés."

msgid ""
"Returns the vector \"bounced off\" from a line defined by the given normal "
"[param n] perpendicular to the line.\n"
"[b]Note:[/b] [method bounce] performs the operation that most engines and "
"frameworks call [code skip-lint]reflect()[/code]."
msgstr ""
"Renvoie le vecteur \"réfléchi\" d'une ligne définie par la normale [param n] "
"donnée perpendiculaire à la ligne.\n"
"[b]Note:[/b] [method bounce] effectue l'opération que la plupart des moteurs "
"et des frameworks appellent [code skip-lint]reflect()[/code]."

msgid ""
"Returns a new vector with all components rounded up (towards positive "
"infinity)."
msgstr ""
"Renvoie un nouveau vecteur avec tous les composantes arrondies vers le haut "
"(vers +infini)."

msgid ""
"Returns a new vector with all components clamped between the components of "
"[param min] and [param max], by running [method @GlobalScope.clamp] on each "
"component."
msgstr ""
"Renvoie un nouveau vecteur avec toutes les composantes bornées entre les "
"composantes de [param min] et [param max], en exécutant [method "
"@GlobalScope.clamp] sur chaque composante."

msgid ""
"Returns a new vector with all components clamped between [param min] and "
"[param max], by running [method @GlobalScope.clamp] on each component."
msgstr ""
"Renvoie un nouveau vecteur avec toutes les composantes bornées entre [param "
"min] et [param max], en exécutant [method @GlobalScope.clamp] sur chaque "
"composante."

msgid ""
"Returns the 2D analog of the cross product for this vector and [param with].\n"
"This is the signed area of the parallelogram formed by the two vectors. If "
"the second vector is clockwise from the first vector, then the cross product "
"is the positive area. If counter-clockwise, the cross product is the negative "
"area. If the two vectors are parallel this returns zero, making it useful for "
"testing if two vectors are parallel.\n"
"[b]Note:[/b] Cross product is not defined in 2D mathematically. This method "
"embeds the 2D vectors in the XY plane of 3D space and uses their cross "
"product's Z component as the analog."
msgstr ""
"Renvoie l'analogue 2D produit vectoriel de ce vecteur et [param with].\n"
"C'est l'aire signée du parallélogramme formé par les deux vecteurs. Si le "
"second vecteur est dans le sens des aiguilles d'une montre depuis le premier "
"vecteur, le produit vectoriel est l'aire positive. S'il est dans le sens "
"inverse, le produit vectoriel est l'aire négative. Si les deux vecteurs sont "
"parallèle, ceci renvoie zéro, ce qui la rend utile pour tester si deux "
"vecteurs sont parallèles.\n"
"[b]Note :[/b] Le produit vectoriel n'est pas défini en 2D mathématiquement. "
"Cette méthode intègre les vecteurs 2D dans le plan XY de l'espace 3D et "
"utilise la composante Z du produit vectoriel comme l'analogue."

msgid ""
"Performs a cubic interpolation between this vector and [param b] using [param "
"pre_a] and [param post_b] as handles, and returns the result at position "
"[param weight]. [param weight] is on the range of 0.0 to 1.0, representing "
"the amount of interpolation."
msgstr ""
"Effectue une interpolation cubique entre ce vecteur et [param b] en utilisant "
"[param pre_a] et [param post_b] comme poignées, et renvoie le résultat à la "
"position [param weight]. [param weight] est dans l'intervalle de 0,0 à 1,0, "
"représentant le montant d'interpolation."

msgid ""
"Performs a cubic interpolation between this vector and [param b] using [param "
"pre_a] and [param post_b] as handles, and returns the result at position "
"[param weight]. [param weight] is on the range of 0.0 to 1.0, representing "
"the amount of interpolation.\n"
"It can perform smoother interpolation than [method cubic_interpolate] by the "
"time values."
msgstr ""
"Effectue une interpolation cubique entre ce vecteur et [param b] en utilisant "
"[param pre_a] et [param post_b] comme poignées, et renvoie le résultat à la "
"position [param weight]. [param weight] est dans l'intervalle de 0,0 à 1,0, "
"représentant la quantité d'interpolation.\n"
"Elle peut effectuer une interpolation plus lisse que [method "
"cubic_interpolate] pour les valeurs temporelles."

msgid ""
"Returns the normalized vector pointing from this vector to [param to]. This "
"is equivalent to using [code](b - a).normalized()[/code]."
msgstr ""
"Renvoie le vecteur normalisé pointant de ce vecteur en direction de [param "
"to]. Ceci est équivalent à l'utilisation de [code](b - a).normalized()[/code]."

msgid ""
"Returns the squared distance between this vector and [param to].\n"
"This method runs faster than [method distance_to], so prefer it if you need "
"to compare vectors or need the squared distance for some formula."
msgstr ""
"Renvoie la distance au carré entre ce vecteur et [param to].\n"
"Cette méthode est plus rapide que [method distance_to], alors préfèrez-la si "
"vous avez besoin de comparer des vecteurs ou besoin de la distance carrée "
"pour une formule."

msgid "Returns the distance between this vector and [param to]."
msgstr "Renvoie la distance entre ce vecteur et [param to]."

msgid ""
"Returns the dot product of this vector and [param with]. This can be used to "
"compare the angle between two vectors. For example, this can be used to "
"determine whether an enemy is facing the player.\n"
"The dot product will be [code]0[/code] for a right angle (90 degrees), "
"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
"angles wider than 90 degrees.\n"
"When using unit (normalized) vectors, the result will always be between "
"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
"aligned.\n"
"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
"Renvoie le produit scalaire de ce vecteur avec [param with]. Ceci peut être "
"utilisé pour comparer l'angle entre deux vecteurs. Par exemple, cela peut "
"être utilisé pour déterminer si un ennemi est face au joueur.\n"
"Le produit scalaire sera [code]0[/code] pour un angle droit (90 degrés), "
"supérieur à 0 pour les angles plus étroits que 90 degrés et inférieur à 0 "
"pour les angles plus larges que 90 degrés.\n"
"Lors de l'utilisation de vecteurs unitaires (normalisés), le résultat sera "
"toujours compris entre [code]-1.0[/code] (angle de 180 degrés) lorsque les "
"vecteurs font face à des directions opposées, et [code]1.0[/code] (angle de 0 "
"degré) lorsque les vecteurs sont alignés.\n"
"[b]Note :[/b] [code]a.dot(b)[/code] est équivalent à [code]b.dot(a)[/code]."

msgid ""
"Returns a new vector with all components rounded down (towards negative "
"infinity)."
msgstr ""
"Renvoie un nouveau vecteur avec tous les composantes arrondies vers le bas "
"(vers -infini)."

msgid ""
"Creates a [Vector2] rotated to the given [param angle] in radians. This is "
"equivalent to doing [code]Vector2(cos(angle), sin(angle))[/code] or "
"[code]Vector2.RIGHT.rotated(angle)[/code].\n"
"[codeblock]\n"
"print(Vector2.from_angle(0)) # Prints (1.0, 0.0)\n"
"print(Vector2(1, 0).angle()) # Prints 0.0, which is the angle used above.\n"
"print(Vector2.from_angle(PI / 2)) # Prints (0.0, 1.0)\n"
"[/codeblock]\n"
"[b]Note:[/b] The length of the returned [Vector2] is [i]approximately[/i] "
"[code]1.0[/code], but is is not guaranteed to be exactly [code]1.0[/code] due "
"to floating-point precision issues. Call [method normalized] on the returned "
"[Vector2] if you require a unit vector."
msgstr ""
"Crée un [Vector2] unitaire tourné de l'[param angle] donné en radians. Ceci "
"équivaut à faire [code]Vector2(cos(angle), sin(angle))[/code] ou "
"[code]Vector2.RIGHT.rotated(angle)[/code].\n"
"[codeblock]\n"
"print(Vector2.from_angle(0)) # Affiche (1.0, 0.0)\n"
"print(Vector2(1, 0).angle()) # Affiche 0.0, qui est l'angle utilisé ci-"
"dessus.\n"
"print(Vector2.from_angle(PI / 2)) # Affiche (0.0, 1.0)\n"
"[/codeblock]\n"
"[b]Note :[/b] La longueur du [Vector2] renvoyé est [i]approximativement[/i] "
"[code]1.0[/code], mais elle n'est pas garantie d'être exactement [code]1.0[/"
"code] en raison de problèmes de précision flottants. Appelez [method "
"normalized] sur le [Vector2] renvoyé si vous avez besoin d'un vecteur "
"unitaire."

msgid ""
"Returns [code]true[/code] if this vector and [param to] are approximately "
"equal, by running [method @GlobalScope.is_equal_approx] on each component."
msgstr ""
"Renvoie [code]true[/code] si ce vecteur et [param to] sont approximativement "
"égaux, en exécutant [method @GlobalScope.is_equal_approx] sur chaque "
"composante."

msgid ""
"Returns [code]true[/code] if this vector is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Renvoie [code]true[/code] si ce vecteur est fini, en appelant [method "
"@GlobalScope.is_finite] sur chaque composante."

msgid ""
"Returns [code]true[/code] if the vector is normalized, i.e. its length is "
"approximately equal to 1."
msgstr ""
"Renvoie [code]true[/code] si le vecteur est normalisé, c.a.d. sa longueur est "
"environ égale à 1."

msgid ""
"Returns [code]true[/code] if this vector's values are approximately zero, by "
"running [method @GlobalScope.is_zero_approx] on each component.\n"
"This method is faster than using [method is_equal_approx] with one value as a "
"zero vector."
msgstr ""
"Renvoie [code]true[/code] si les valeurs de ce vecteur sont approximativement "
"nulles, en exécutant [method @GlobalScope.is_zero_approx] sur chaque "
"composante.\n"
"Cette méthode est plus rapide qu'utiliser [method is_equal_approx] avec un "
"vecteur nul comme valeur."

msgid "Returns the length (magnitude) of this vector."
msgstr "Renvoie la longueur (magnitude) de ce vecteur."

msgid ""
"Returns the squared length (squared magnitude) of this vector.\n"
"This method runs faster than [method length], so prefer it if you need to "
"compare vectors or need the squared distance for some formula."
msgstr ""
"Renvoie la longeur (magnitude) au carré de ce vecteur.\n"
"Cette méthode est plus rapide que [method length] donc préférez-le si vous "
"devez comparer des vecteurs ou avoir besoin de la distance carrée pour "
"certaines formules."

msgid ""
"Returns the result of the linear interpolation between this vector and [param "
"to] by amount [param weight]. [param weight] is on the range of [code]0.0[/"
"code] to [code]1.0[/code], representing the amount of interpolation."
msgstr ""
"Renvoie le résultat de l'interpolation linéaire entre ce vecteur et [param "
"to] par la quantité [param weight]. [param weight] est compris entre "
"[code]0.0[/code] et [code]1.0[/code], représentant le montant d'interpolation."

msgid ""
"Returns the vector with a maximum length by limiting its length to [param "
"length]. If the vector is non-finite, the result is undefined."
msgstr ""
"Renvoie le vecteur avec une longueur maximale en limitant sa longueur à "
"[param length]. Si le vecteur n'est pas fini, le résultat est indéfini."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2(maxf(x, with.x), maxf(y, with.y))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector2(maxf(x, with.x), maxf(y, with.y))[/code]."

msgid ""
"Returns the axis of the vector's highest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_X]."
msgstr ""
"Renvoie l'axe de la valeur la plus importante du vecteur. Voir les "
"constantes[code]AXIS_*[/code]. Si tous les composants sont égaux, cette "
"méthode renvoie [constant AXIS_X]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2(maxf(x, with), maxf(y, with))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector2(maxf(x, with), maxf(y, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2(minf(x, with.x), minf(y, with.y))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector2(minf(x, with.x), minf(y, with.y))[/code]."

msgid ""
"Returns the axis of the vector's lowest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_Y]."
msgstr ""
"Renvoie l'axe de la valeur la moins importante du vecteur. Voir les "
"constantes[code]AXIS_*[/code]. Si tous les composants sont égaux, cette "
"méthode renvoie [constant AXIS_Y]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2(minf(x, with), minf(y, with))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector2(minf(x, with), minf(y, with))[/code]."

msgid ""
"Returns a new vector moved toward [param to] by the fixed [param delta] "
"amount. Will not go past the final value."
msgstr ""
"Renvoie un nouveau vecteur déplacé en direction de [param to] par la quantité "
"[param delta]. Ne dépassera pas la valeur finale."

msgid ""
"Returns the result of scaling the vector to unit length. Equivalent to "
"[code]v / v.length()[/code]. Returns [code](0, 0)[/code] if [code]v.length() "
"== 0[/code]. See also [method is_normalized].\n"
"[b]Note:[/b] This function may return incorrect values if the input vector "
"length is near zero."
msgstr ""
"Renvoie le résultat de la mise à l'échelle du vecteur à la longueur unité. "
"Équivalent à [code]v / v.length()[/code]. Renvoie [code](0, 0)[/code] si "
"[code]v.length() == 0[/code]. Voir aussi [method is_normalized].\n"
"[b]Note :[/b] Cette fonction peut renvoyer des valeurs incorrectes si la "
"longueur du vecteur d'entrée est proche de zéro."

msgid ""
"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
"to the original, with the same length."
msgstr ""
"Renvoie un vecteur perpendiculaire, pivoté de 90 degrés dans le sens anti-"
"horaire comparé à l'original, avec la même longueur."

msgid ""
"Returns a vector composed of the [method @GlobalScope.fposmod] of this "
"vector's components and [param mod]."
msgstr ""
"Renvoie un vecteur composé du [method @GlobalScope.fposmod] des composantes "
"de ce vecteur et [param mod]."

msgid ""
"Returns a vector composed of the [method @GlobalScope.fposmod] of this "
"vector's components and [param modv]'s components."
msgstr ""
"Renvoie un vecteur composé du [method @GlobalScope.fposmod] des composantes "
"du vecteur et des composantes de [param modv]."

msgid ""
"Returns a new vector resulting from projecting this vector onto the given "
"vector [param b]. The resulting new vector is parallel to [param b]. See also "
"[method slide].\n"
"[b]Note:[/b] If the vector [param b] is a zero vector, the components of the "
"resulting new vector will be [constant @GDScript.NAN]."
msgstr ""
"Renvoie un nouveau vecteur résultant de la projection de ce vecteur sur le "
"vecteur [param b] donné. Le nouveau vecteur résultant sera parallèle à [param "
"b]. Voir aussi [method slide].\n"
"[b]Note :[/b] Si le vecteur [param b] est un vecteur nul, les composantes du "
"nouveau vecteur résultant seront [constant @GDScript.NAN]."

msgid ""
"Returns the result of reflecting the vector from a line defined by the given "
"direction vector [param line].\n"
"[b]Note:[/b] [method reflect] differs from what other engines and frameworks "
"call [code skip-lint]reflect()[/code]. In other engines, [code skip-"
"lint]reflect()[/code] takes a normal direction which is a direction "
"perpendicular to the line. In Godot, you specify the direction of the line "
"directly. See also [method bounce] which does what most engines call [code "
"skip-lint]reflect()[/code]."
msgstr ""
"Renvoie le résultat de la réflexion du vecteur par rapport à une ligne "
"définie par le vecteur de direction [param line] donné.\n"
"[b]Note :[/b] [method reflect] diffère de ce que les autres moteurs et "
"frameworks appellent [code skip-lint]reflect()[/code]. Dans d'autres moteurs "
"[code skip-lint]reflect()[/code] prends une direction normale qui est une "
"direction perpendiculaire à la ligne. Dans Godot, vous spécifiez la direction "
"de la ligne directement. Voir aussi [method bounce] qui fait ce que la "
"plupart des moteurs appellent [code skip-lint]reflect()[/code]."

msgid ""
"Returns the result of rotating this vector by [param angle] (in radians). See "
"also [method @GlobalScope.deg_to_rad]."
msgstr ""
"Renvoie le résultat de la rotation de ce vecteur par [param angle] (en "
"radians). Voir aussi [method @GlobalScope.deg_to_rad]."

msgid ""
"Returns a new vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
"Renvoie une nouveau vecteur avec tous ses composantes arrondies à l'entier le "
"plus proche, avec les demis arrondis à l'entier supérieur."

msgid ""
"Returns a new vector with each component set to [code]1.0[/code] if it's "
"positive, [code]-1.0[/code] if it's negative, and [code]0.0[/code] if it's "
"zero. The result is identical to calling [method @GlobalScope.sign] on each "
"component."
msgstr ""
"Renvoie un nouveau vecteur avec chaque composante définie à [code]1.0[/code] "
"si elle est positive, [code]-1.0[/code] si elle est négative, et [code]0.0[/"
"code] si elle est nulle. Le résultat est identique à celui d'appeler [method "
"@GlobalScope.sign] sur chaque composante."

msgid ""
"Returns the result of spherical linear interpolation between this vector and "
"[param to], by amount [param weight]. [param weight] is on the range of 0.0 "
"to 1.0, representing the amount of interpolation.\n"
"This method also handles interpolating the lengths if the input vectors have "
"different lengths. For the special case of one or both input vectors having "
"zero length, this method behaves like [method lerp]."
msgstr ""
"Renvoie le résultat de l'interpolation linéaire sphérique entre ce vecteur et "
"[param to], par la quantité [param weight]. [param weight] est compris entre "
"0,0 et 1,0, représentant le montant d'interpolation.\n"
"Cette méthode gère également l'interpolation des longueurs si les vecteurs "
"d'entrée ont des longueurs différentes. Pour le cas particulier où un ou deux "
"vecteurs d'entrée ont une longueur nulle, cette méthode se comporte comme "
"[method lerp]."

msgid ""
"Returns a new vector with each component snapped to the nearest multiple of "
"the corresponding component in [param step]. This can also be used to round "
"the components to an arbitrary number of decimals."
msgstr ""
"Renvoie un nouveau vecteur avec chaque composante arrondie au multiple le "
"plus proche de la composante correspondante dans [param step]. Cela peut "
"également être utilisé pour arrondir les composantes à un nombre arbitraire "
"de décimales."

msgid ""
"Returns a new vector with each component snapped to the nearest multiple of "
"[param step]. This can also be used to round the components to an arbitrary "
"number of decimals."
msgstr ""
"Renvoie un nouveau vecteur avec chaque composante arrondie au multiple le "
"plus proche de [param step]. Cela peut également être utilisé pour arrondir "
"des composantes à un nombre arbitraire de décimales."

msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr ""
"La composante vectorielle X. Également accessible en utilisant le code de "
"position index [code][0][/code]."

msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr ""
"La composante vectorielle X. Également accessible en utilisant le code de "
"position index [code][1][/code]."

msgid ""
"Enumerated value for the X axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"La valeur de l'énumération pour l'axe X. Renvoyé par [method max_axis_index] "
"et [method min_axis_index]."

msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"La valeur de l'énumération pour l'axe Y. Retourné par [method max_axis_index] "
"et [method min_axis_index]."

msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr ""
"Le vecteur zéro, un vecteur avec tous ses composants définis [code]0[/code]."

msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr ""
"Le vecteur unitaire, un vecteur avec tous ses composants définis à [code]1[/"
"code]."

msgid ""
"Infinity vector, a vector with all components set to [constant @GDScript.INF]."
msgstr ""
"Le vecteur infini, un vecteur avec tous ses composants définit à [constant "
"@GDScript.INF]."

msgid "Left unit vector. Represents the direction of left."
msgstr "Le vecteur unitaire gauche. Représente la direction vers la gauche."

msgid "Right unit vector. Represents the direction of right."
msgstr "Le vecteur unitaire droit. Représente la direction vers la droite."

msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
"Le vecteur unitaire vers le haut. Y représente le bas en 2D, donc ce vecteur "
"pointe vers -Y."

msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
"Le vecteur unitaire vers le bas. Y représente le bas en 2D, donc ce vecteur "
"pointe vers +Y."

msgid ""
"Returns [code]true[/code] if the vectors are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si les vecteurs ne sont pas égaux.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Inversely transforms (multiplies) the [Vector2] by the given [Transform2D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]vector * transform[/code] is equivalent to [code]transform.inverse() * "
"vector[/code]. See [method Transform2D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * vector[/code] can be used instead. See "
"[method Transform2D.affine_inverse]."
msgstr ""
"Transforme (multiplie) de manière inverse le [Vector2] par la matrice de "
"transformation [Transform2D] donnée, avec la supposition que la base de la "
"transformation est orthonormée (c.a.d. une rotation/réflexion est OK, une "
"échelle/un cisaillement ne l'est pas).\n"
"[code]vector * transform[/code] est équivalent à [code]transform.inverse() * "
"vector[/code]. Voir [method Transform2D.inverse].\n"
"Pour transformer par l'inverse d'une transformation affine (par ex. avec une "
"mise à l'échelle), [code]transform.affine_inverse() * vector[/code] peut être "
"utilisé à la place. Voir [method Transform2D.affine_inverse]."

msgid ""
"Multiplies each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) * Vector2(3, 4)) # Prints (30.0, 80.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector2] par les composantes du [Vector2] "
"donné.\n"
"[codeblock]\n"
"print(Vector2(10, 20) * Vector2(3, 4)) # Affiche (30.0, 80.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector2] by the given [float]."
msgstr "Multiplie chaque composante du [Vector2] par le flottant [float] donné."

msgid "Multiplies each component of the [Vector2] by the given [int]."
msgstr "Multiplie chaque composante du [Vector2] par l'entier [int] donné."

msgid ""
"Adds each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) + Vector2(3, 4)) # Prints (13.0, 24.0)\n"
"[/codeblock]"
msgstr ""
"Ajoute chaque composante du [Vector2] aux composantes du [Vector2] donné.\n"
"[codeblock]\n"
"print(Vector2(10, 20) + Vector2(3, 4)) # Affiche (13.0, 24.0)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) - Vector2(3, 4)) # Prints (7.0, 16.0)\n"
"[/codeblock]"
msgstr ""
"Soustrait chaque composante du [Vector2] par les composantes du [Vector2] "
"donné.\n"
"[codeblock]\n"
"print(Vector2(10, 20) - Vector2(3, 4)) # Affiche (7.0, 16.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) / Vector2(2, 5)) # Prints (5.0, 4.0)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector2] par les composantes du [Vector2] "
"donné.\n"
"[codeblock]\n"
"print(Vector2(10, 20) / Vector2(2, 5)) # Affiche (5.0, 4.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector2] by the given [float]."
msgstr "Divise chaque composante du [Vector2] par le flottant [float] donné."

msgid "Divides each component of the [Vector2] by the given [int]."
msgstr "Divise chaque composante du [Vector2] par l'entier [int] donné."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector2] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs. Cet opérateur est utile pour trier des "
"vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas de la même façon que les autres vecteurs. Ainsi, les résultats "
"de cet opérateur peuvent ne pas être exacts si des NaN sont inclus."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector2i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs. Cet opérateur est utile "
"pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas de la même façon que les autres vecteurs. Ainsi, les résultats "
"de cet opérateur peuvent ne pas être exacts si des NaN sont inclus."

msgid ""
"Returns [code]true[/code] if the vectors are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Renvoie [code]true[/code] si les vecteurs sont exactement égaux.\n"
"[b]Note :[/b] À cause des erreurs de précision des flottants, envisagez "
"d'utiliser [method is_equal_approx] à la place, qui est plus fiable.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector2] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs. Cet opérateur est utile pour trier des "
"vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas de la même façon que les autres vecteurs. Ainsi, les résultats "
"de cet opérateur peuvent ne pas être exacts si des NaN sont inclus."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector2] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs. Cet opérateur est utile "
"pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas de la même façon que les autres vecteurs. Ainsi, les résultats "
"de cet opérateur peuvent ne pas être exacts si des NaN sont inclus."

msgid ""
"Access vector components using their [param index]. [code]v[0][/code] is "
"equivalent to [code]v.x[/code], and [code]v[1][/code] is equivalent to "
"[code]v.y[/code]."
msgstr ""
"Accède aux composantes du vecteur par leur [param index]. [code]v[0][/code] "
"est équivalent à [code]v.x[/code] et [code]v[1][/code] est équivalent à "
"[code]v.y[/code]."

msgid ""
"Returns the negative value of the [Vector2]. This is the same as writing "
"[code]Vector2(-v.x, -v.y)[/code]. This operation flips the direction of the "
"vector while keeping the same magnitude. With floats, the number zero can be "
"either positive or negative."
msgstr ""
"Renvoie la valeur négative du [Vector2]. C'est la même chose qu'écrire "
"[code]Vector2(-v.x, -v.y)[/code]. Cette opération retourne la direction du "
"vecteur tout en gardant la même magnitude. Avec des flottants, le nombre zéro "
"peut être positif ou négatif."

msgid "A 2D vector using integer coordinates."
msgstr "Un vecteur 2D utilisant des coordonnées entières."

msgid ""
"A 2-element structure that can be used to represent 2D grid coordinates or "
"any other pair of integers.\n"
"It uses integer coordinates and is therefore preferable to [Vector2] when "
"exact precision is required. Note that the values are limited to 32 bits, and "
"unlike [Vector2] this cannot be configured with an engine build option. Use "
"[int] or [PackedInt64Array] if 64-bit values are needed.\n"
"[b]Note:[/b] In a boolean context, a Vector2i will evaluate to [code]false[/"
"code] if it's equal to [code]Vector2i(0, 0)[/code]. Otherwise, a Vector2i "
"will always evaluate to [code]true[/code]."
msgstr ""
"Une structure de 2 éléments qui peut être utilisée pour représenter les "
"coordonnées d'une grille 2D ou toute autre paire d'entiers.\n"
"Il utilise des coordonnées entières et est donc préférable à [Vector2] "
"lorsque la précision exacte est requise. Notez que les valeurs sont limitées "
"à 32 bits, et contrairement à [Vector2] cela ne peut pas être configuré avec "
"une option de compilation du moteur. Utilisez [int] ou [PackedInt64Array] si "
"des valeurs 64 bits sont nécessaires.\n"
"[b]Note :[/b] Dans un contexte booléen, un Vector2i évaluera [code]false[/"
"code] si elle est égale à [code]Vector2i(0, 0)[/code]. Sinon, un Vector2i "
"évaluera toujours [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector2i] with all components set to "
"[code]0[/code]."
msgstr ""
"Construit un [Vector2i] initialisé par défaut avec toutes les composantes "
"définies à [code]0[/code]."

msgid "Constructs a [Vector2i] as a copy of the given [Vector2i]."
msgstr "Construit un [Vector2i] comme copie du [Vector2i] donné."

msgid ""
"Constructs a new [Vector2i] from the given [Vector2] by truncating "
"components' fractional parts (rounding towards zero). For a different "
"behavior consider passing the result of [method Vector2.ceil], [method "
"Vector2.floor] or [method Vector2.round] to this constructor instead."
msgstr ""
"Construit un nouveau [Vector2i] depuis le [Vector2] donné en tronquant les "
"parties fractionnelles des composantes (arrondissant vers 0). Pour un "
"comportement différent, envisagez de passer le résultat de [method "
"Vector2.ceil], [method Vector2.floor] ou [method Vector2.round] à ce "
"constructeur à la place."

msgid "Constructs a new [Vector2i] from the given [param x] and [param y]."
msgstr ""
"Construit un nouveau [Vector2i] depuis les [param x] et [param y] donnés."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2i(maxi(x, with.x), maxi(y, with.y))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector2i(maxf(x, with.x), maxf(y, with.y))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2i(maxi(x, with), maxi(y, with))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector2i(maxf(x, with), maxf(y, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2i(mini(x, with.x), mini(y, with.y))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector2i(minf(x, with.x), minf(y, with.y))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2i(mini(x, with), mini(y, with))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector2i(minf(x, with), minf(y, with))[/code]."

msgid ""
"Returns a new vector with each component set to [code]1[/code] if it's "
"positive, [code]-1[/code] if it's negative, and [code]0[/code] if it's zero. "
"The result is identical to calling [method @GlobalScope.sign] on each "
"component."
msgstr ""
"Renvoie un nouveau vecteur avec chaque composante définie à [code]1[/code] si "
"elle est positive, [code]-1[/code] si elle est négative, et [code]0[/code] si "
"elle est nulle. Le résultat est identique à celui d'appeler [method "
"@GlobalScope.sign] sur chaque composante."

msgid ""
"Returns a new vector with each component snapped to the closest multiple of "
"the corresponding component in [param step]."
msgstr ""
"Renvoie un nouveau vecteur avec chaque composante arrondie au multiple le "
"plus proche de la composante correspondante dans [param step]."

msgid ""
"Returns a new vector with each component snapped to the closest multiple of "
"[param step]."
msgstr ""
"Renvoie un nouveau vecteur avec chaque composante arrondie au multiple le "
"plus proche de [param step]."

msgid ""
"Min vector, a vector with all components equal to [code]INT32_MIN[/code]. Can "
"be used as a negative integer equivalent of [constant Vector2.INF]."
msgstr ""
"Vecteur minimum, un vecteur avec toutes ses composantes égales à "
"[code]INT32_MIN[/code]. Peut être utilisé comme un équivalent entier négatif "
"de [constant Vector2.INF]."

msgid ""
"Max vector, a vector with all components equal to [code]INT32_MAX[/code]. Can "
"be used as an integer equivalent of [constant Vector2.INF]."
msgstr ""
"Vecteur maximum, un vecteur avec toutes ses composantes égales à "
"[code]INT32_MAX[/code]. Peut être utilisé comme un équivalent entier de "
"[constant Vector2.INF]."

msgid "Returns [code]true[/code] if the vectors are not equal."
msgstr "Renvoie [code]true[/code] si les vecteurs ne sont pas égaux."

msgid ""
"Gets the remainder of each component of the [Vector2i] with the components of "
"the given [Vector2i]. This operation uses truncated division, which is often "
"not desired as it does not work well with negative numbers. Consider using "
"[method @GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % Vector2i(7, 8)) # Prints (3, -4)\n"
"[/codeblock]"
msgstr ""
"Obtient le reste de la division euclidienne de chaque composante du "
"[Vector2i] par les composantes du [Vector2i] donné. Cette opération utilise "
"une division tronquée, qui n'est souvent pas souhaité car elle ne fonctionne "
"pas bien avec des nombres négatifs. Considérez utiliser [method "
"@GlobalScope.posmod] plutôt si vous voulez gérer les nombres négatifs.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % Vector2i(7, 8) # Affiche (3, -4)\n"
"[/codeblock]"

msgid ""
"Gets the remainder of each component of the [Vector2i] with the given [int]. "
"This operation uses truncated division, which is often not desired as it does "
"not work well with negative numbers. Consider using [method "
"@GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % 7) # Prints (3, -6)\n"
"[/codeblock]"
msgstr ""
"Obtient le reste de la division euclidienne de chaque composante du "
"[Vector2i] par l'entier [int] donné. Cette opération utilise une division "
"tronquée, qui n'est souvent pas souhaité car elle ne fonctionne pas bien avec "
"des nombres négatifs. Considérez utiliser [method @GlobalScope.posmod] plutôt "
"si vous voulez gérer les nombres négatifs.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % 7) # Affiche (3, -6)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) * Vector2i(3, 4)) # Prints (30, 80)\n"
"[/codeblock]"
msgstr ""
"Multiple chaque composante du [Vector2i] par les composantes du [Vector2i] "
"donné.\n"
"[codeblock]\n"
"print(Vector2i(10, 20) * Vector2i(3, 4)) # Affiche (30, 80)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector2i] by the given [float]. Returns a "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2i(10, 15) * 0.9) # Prints (9.0, 13.5)\n"
"[/codeblock]"
msgstr ""
"Multiple chaque composante du [Vector2i] par le flottant [float] donné. "
"Renvoie un [Vector2]\n"
"[codeblock]\n"
"print(Vector2i(10, 15) * 0.9) # Affiche (9.0, 13.5)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector2i] by the given [int]."
msgstr "Multiple chaque composante du [Vector2i] par l'entier [int] donné."

msgid ""
"Adds each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) + Vector2i(3, 4)) # Prints (13, 24)\n"
"[/codeblock]"
msgstr ""
"Ajoute chaque composante du [Vector2i] aux composantes du [Vector2i] donné.\n"
"[codeblock]\n"
"print(Vector2i(10, 20) + Vector2i(3, 4)) # Affiche (13, 24)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) - Vector2i(3, 4)) # Prints (7, 16)\n"
"[/codeblock]"
msgstr ""
"Soustrait chaque composante du [Vector2i] par les composantes du [Vector2i] "
"donné.\n"
"[codeblock]\n"
"print(Vector2i(10, 20) - Vector2i(3, 4)) # Affiche (7, 16)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / Vector2i(2, 5)) # Prints (5, 4)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector2i] par les composantes du [Vector2i] "
"donné.\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / Vector2i(2, 5)) # Affiche (5, 4)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector2i] by the given [float]. Returns a "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / 2.9) # Prints (5.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector2i] par le flottant [float] donné. Renvoie "
"un [Vector2].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / 2.9) # Affiche (5.0, 10.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector2i] by the given [int]."
msgstr "Divise chaque composante du [Vector2i] par l'entier [int] donné."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors. This operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector2i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs. Cet opérateur est utile pour trier des "
"vecteurs."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors. This operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector2i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs. Cet opérateur est utile "
"pour trier des vecteurs."

msgid "Returns [code]true[/code] if the vectors are equal."
msgstr "Renvoie [code]true[/code] si les vecteurs sont égaux."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors. This operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector2i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs. Cet opérateur est utilise pour trier des "
"vecteurs."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors. This operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector2i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs. Cet opérateur est utile "
"pour trier des vecteurs."

msgid ""
"Returns the negative value of the [Vector2i]. This is the same as writing "
"[code]Vector2i(-v.x, -v.y)[/code]. This operation flips the direction of the "
"vector while keeping the same magnitude."
msgstr ""
"Renvoie la valeur négative du [Vector2i]. C'est la même chose qu'écrire "
"[code]Vector2i(-v.x, -v.y)[/code]. Cette opération retourne la direction du "
"vecteur tout en gardant la même magnitude."

msgid "A 3D vector using floating-point coordinates."
msgstr "Un vecteur 3D utilisant des coordonnées flottantes."

msgid ""
"A 3-element structure that can be used to represent 3D coordinates or any "
"other triplet of numeric values.\n"
"It uses floating-point coordinates. By default, these floating-point values "
"use 32-bit precision, unlike [float] which is always 64-bit. If double "
"precision is needed, compile the engine with the option "
"[code]precision=double[/code].\n"
"See [Vector3i] for its integer counterpart.\n"
"[b]Note:[/b] In a boolean context, a Vector3 will evaluate to [code]false[/"
"code] if it's equal to [code]Vector3(0, 0, 0)[/code]. Otherwise, a Vector3 "
"will always evaluate to [code]true[/code]."
msgstr ""
"Une structure de 3 éléments qui peut être utilisée pour représenter des "
"coordonnées 3D ou tout autre triplet de valeurs numériques.\n"
"Elle utilise des coordonnées flottantes. Par défaut, ces valeurs flottantes "
"utilisent une précision 32 bits, contrairement à [float] qui est toujours en "
"64 bits. Si une précision double est nécessaire, compilez le moteur avec "
"l'option [code]precision=double[/code].\n"
"Voir [Vector3i] pour l'équivalent entier.\n"
"[b]Note :[/b] Avec des booléens, un Vector3 sera évalué à [code]false[/code] "
"s'il est égal à [code]Vector3(0, 0, 0)[/code]. Sinon, un Vector4 sera "
"toujours évalué à [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector3] with all components set to "
"[code]0[/code]."
msgstr ""
"Construit un [Vector3] initialisé par défaut, avec toutes ses composantes "
"définies à [code]0[/code]."

msgid "Constructs a [Vector3] as a copy of the given [Vector3]."
msgstr "Construit un [Vector3] comme copie du [Vector3] donné."

msgid "Constructs a new [Vector3] from [Vector3i]."
msgstr "Construit un nouveau [Vector3] à partir d'un [Vector3i]."

msgid "Returns a [Vector3] with the given components."
msgstr "Renvoie un [Vector3] avec les coordonnées spécifiées."

msgid "Returns the unsigned minimum angle to the given vector, in radians."
msgstr "Renvoie l'angle non signé minimum avec le vecteur donné, en radians."

msgid ""
"Returns the vector \"bounced off\" from a plane defined by the given normal "
"[param n].\n"
"[b]Note:[/b] [method bounce] performs the operation that most engines and "
"frameworks call [code skip-lint]reflect()[/code]."
msgstr ""
"Renvoie le vecteur \"réfléchi\" d'un plan défini par la normale [param n] "
"donnée.\n"
"[b]Note:[/b] [method bounce] effectue l'opération que la plupart des moteurs "
"et des frameworks appellent [code skip-lint]reflect()[/code]."

msgid ""
"Returns the cross product of this vector and [param with].\n"
"This returns a vector perpendicular to both this and [param with], which "
"would be the normal vector of the plane defined by the two vectors. As there "
"are two such vectors, in opposite directions, this method returns the vector "
"defined by a right-handed coordinate system. If the two vectors are parallel "
"this returns an empty vector, making it useful for testing if two vectors are "
"parallel."
msgstr ""
"Renvoie le produit vectoriel de ce vecteur et [param with].\n"
"Cela renvoie un vecteur perpendiculaire à ceci et [param with], ce qui serait "
"le vecteur normal au plan défini par les deux vecteurs. Comme il y a deux "
"vecteurs possibles, dans des directions opposées, cette méthode renvoie le "
"vecteur défini par un système de coordonnées main droite. Si les deux "
"vecteurs sont parallèles, cette méthode renvoie un vecteur vide, ce qui la "
"rend utile pour tester si deux vecteurs sont parallèles."

msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3(1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z)[/code]."
msgstr ""
"Renvoie l'inverse du vecteur. Cela est identique à [code]Vector3( 1.0 / v.x, "
"1.0 / v.y, 1.0 / v.z )[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector3(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3(maxf(x, with), maxf(y, with), maxf(z, with))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector3(maxf(x, with), maxf(y, with), maxf(z, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3(minf(x, with.x), minf(y, with.y), minf(z, with.z))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector3(minf(x, with.x), minf(y, with.y), minf(z, with.z))[/code]."

msgid ""
"Returns the axis of the vector's lowest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_Z]."
msgstr ""
"Renvoie l'axe de la valeur la moins importante du vecteur. Voir les "
"constantes[code]AXIS_*[/code]. Si tous les composants sont égaux, cette "
"méthode renvoie [constant AXIS_Z]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3(minf(x, with), minf(y, with), minf(z, with))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector3(minf(x, with), minf(y, with), minf(z, with))[/code]."

msgid ""
"Returns the result of scaling the vector to unit length. Equivalent to "
"[code]v / v.length()[/code]. Returns [code](0, 0, 0)[/code] if "
"[code]v.length() == 0[/code]. See also [method is_normalized].\n"
"[b]Note:[/b] This function may return incorrect values if the input vector "
"length is near zero."
msgstr ""
"Renvoie le résultat de la mise à l'échelle du vecteur à la longueur unité. "
"Équivalent à [code]v / v.length()[/code]. Renvoie [code](0, 0, 0)[/code] si "
"[code]v.length() == 0[/code]. Voir aussi [method is_normalized].\n"
"[b]Note :[/b] Cette fonction peut renvoyer des valeurs incorrectes si la "
"longueur du vecteur d'entrée est proche de zéro."

msgid ""
"Returns the [Vector3] from an octahedral-compressed form created using "
"[method octahedron_encode] (stored as a [Vector2])."
msgstr ""
"Renvoie le [Vector3] depuis une forme compressé octaédrique créée en "
"utilisant [method octahedron_encode] (stocké comme un [Vector2])."

msgid ""
"Returns the octahedral-encoded (oct32) form of this [Vector3] as a [Vector2]. "
"Since a [Vector2] occupies 1/3 less memory compared to [Vector3], this form "
"of compression can be used to pass greater amounts of [method normalized] "
"[Vector3]s without increasing storage or memory requirements. See also "
"[method octahedron_decode].\n"
"[b]Note:[/b] [method octahedron_encode] can only be used for [method "
"normalized] vectors. [method octahedron_encode] does [i]not[/i] check whether "
"this [Vector3] is normalized, and will return a value that does not "
"decompress to the original value if the [Vector3] is not normalized.\n"
"[b]Note:[/b] Octahedral compression is [i]lossy[/i], although visual "
"differences are rarely perceptible in real world scenarios."
msgstr ""
"Renvoie la forme encodée octaédrique de ce [Vector3] en tant que [Vector2]. "
"Comme un [Vector2] occupe 1/3 moins de mémoire comparé à [Vector3], cette "
"forme de compression peut être utilisée pour passer de plus grandes quantités "
"de [Vector3]s normalisés ([method normalized]) sans augmenter la nécessité de "
"mémoire et de stockage. Voir aussi [method octahedron_decode].\n"
"[b]Note :[/b] [method octahedron_encode] peut seulement être utilisée pour "
"des vecteurs normalisés ([method normalized]). [method octahedron_encode] ne "
"vérifie [i]pas[/i] si ce [Vector3] est normalisé, et va renvoyer une valeur "
"qui ne se décompresse pas en la valeur originale si le [Vector3] n'est pas "
"normalisée.\n"
"[b]Note :[/b] La compression octaédrique a des [i]pertes[/i], même si les "
"différences visuels sont rarement perceptibles dans des scénarios réels."

msgid "Returns the outer product with [param with]."
msgstr "Renvoie le produit extérieur avec [param with]."

msgid ""
"Returns the result of reflecting the vector through a plane defined by the "
"given normal vector [param n].\n"
"[b]Note:[/b] [method reflect] differs from what other engines and frameworks "
"call [code skip-lint]reflect()[/code]. In other engines, [code skip-"
"lint]reflect()[/code] returns the result of the vector reflected by the given "
"plane. The reflection thus passes through the given normal. While in Godot "
"the reflection passes through the plane and can be thought of as bouncing off "
"the normal. See also [method bounce] which does what most engines call [code "
"skip-lint]reflect()[/code]."
msgstr ""
"Renvoie le résultat de la réflexion du vecteur à travers un plan défini par "
"le vecteur normal [param n] donné.\n"
"[b]Note :[/b] [method reflect] diffère de ce que les autres moteurs et "
"frameworks appellent [code skip-lint]reflect()[/code]. Dans d'autres moteurs, "
"[code skip-lint]reflect()[/code] renvoie le résultat du vecteur réfléchi par "
"le plan donné. La réflexion passe donc par la normale donnée. Tandis que dans "
"Godot, la réflexion passe par le plan et peut être pensé comme rebondissant "
"de la normale. Voir aussi [method bounce] qui fait ce que la plupart des "
"moteurs appellent [code skip-lint]reflect()[/code]."

msgid ""
"Returns the result of rotating this vector around a given axis by [param "
"angle] (in radians). The axis must be a normalized vector. See also [method "
"@GlobalScope.deg_to_rad]."
msgstr ""
"Renvoie le résultat de la rotation de ce vecteur autour d'un axe donné, d'un "
"[param angle] donné (en radians). L'axe doit être un vecteur normalisé. Voir "
"aussi [method @GlobalScope.deg_to_rad]."

msgid ""
"Returns the signed angle to the given vector, in radians. The sign of the "
"angle is positive in a counter-clockwise direction and negative in a "
"clockwise direction when viewed from the side specified by the [param axis]."
msgstr ""
"Renvoie l'angle signé du vecteur donné, en radians. Le signe de l'angle est "
"positif dans le sens inverse des aiguilles d'une montre et négatif dans "
"l'autre direction lorsqu'il est vu du côté spécifié par l'axe [param axis]."

msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
"Le composant vectoriel Z. Également accessible en utilisant l'index [code][2]"
"[/code]."

msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"La valeur de l'énumération pour l'axe Z. Renvoyé par [method max_axis_index] "
"et [method min_axis_index]."

msgid ""
"Left unit vector. Represents the local direction of left, and the global "
"direction of west."
msgstr ""
"Le vecteur unitaire gauche. Représente la direction locale à gauche, et la "
"direction globale vers l'ouest."

msgid ""
"Right unit vector. Represents the local direction of right, and the global "
"direction of east."
msgstr ""
"Le vecteur unitaire vers la droite. Représente la direction locale à droite, "
"et la direction globale vers l'est."

msgid "Up unit vector."
msgstr "Vecteur unitaire vers le haut."

msgid "Down unit vector."
msgstr "Vecteur unitaire vers le bas."

msgid ""
"Forward unit vector. Represents the local direction of forward, and the "
"global direction of north. Keep in mind that the forward direction for "
"lights, cameras, etc is different from 3D assets like characters, which face "
"towards the camera by convention. Use [constant Vector3.MODEL_FRONT] and "
"similar constants when working in 3D asset space."
msgstr ""
"Un vecteur avant unité. Représente la direction locale de l'avant et la "
"direction globale du nord. Gardez à l'esprit que la direction vers l'avant "
"pour les lumières, les caméras, etc est différente des ressources 3D comme "
"les personnages, qui se tournent vers la caméra par convention. Utilisez "
"[constant Vector3.MODEL_FRONT] et les constantes similaires quand vous "
"travaillez dans l'espace de ressource 3D."

msgid ""
"Back unit vector. Represents the local direction of back, and the global "
"direction of south."
msgstr ""
"Vecteur unitaire vers l'arrière. Représente la direction locale vers "
"l'arrière, et la direction globale vers le sud."

msgid "Unit vector pointing towards the left side of imported 3D assets."
msgstr "Vecteur unité pointant vers le côté gauche des ressources 3D importées."

msgid "Unit vector pointing towards the right side of imported 3D assets."
msgstr "Vecteur unité pointant vers le côté droit des ressources 3D importées."

msgid "Unit vector pointing towards the top side (up) of imported 3D assets."
msgstr "Vecteur unité pointant vers le haut des ressources 3D importées."

msgid ""
"Unit vector pointing towards the bottom side (down) of imported 3D assets."
msgstr "Vecteur unité pointant vers le bas des ressources 3D importées."

msgid ""
"Unit vector pointing towards the front side (facing forward) of imported 3D "
"assets."
msgstr "Vecteur unité pointant vers l'avant des ressources 3D importées."

msgid "Unit vector pointing towards the rear side (back) of imported 3D assets."
msgstr "Vecteur unité pointant vers l'arrière des ressources 3D importées."

msgid ""
"Inversely transforms (multiplies) the [Vector3] by the given [Basis] matrix, "
"under the assumption that the basis is orthonormal (i.e. rotation/reflection "
"is fine, scaling/skew is not).\n"
"[code]vector * basis[/code] is equivalent to [code]basis.transposed() * "
"vector[/code]. See [method Basis.transposed].\n"
"For transforming by inverse of a non-orthonormal basis (e.g. with scaling) "
"[code]basis.inverse() * vector[/code] can be used instead. See [method "
"Basis.inverse]."
msgstr ""
"Transforme (multiplie) de manière inverse le [Vector3] par la matrice de base "
"[Basis] donnée, avec la supposition que la base est orthonormée (c.a.d. une "
"rotation/réflexion est OK, une échelle/un cisaillement ne l'est pas).\n"
"[code]vector * basis[/code] est équivalent à [code]basis.transposed() * "
"vector[/code]. Voir [method Basis.transposed].\n"
"Pour transformer par l'inverse d'une base non-orthonormée (par ex. avec une "
"mise à l'échelle), [code]basis.inverse() * vector[/code] peut être utilisé à "
"la place. Voir [method Basis.inverse]."

msgid ""
"Inversely transforms (multiplies) the [Vector3] by the given [Quaternion].\n"
"[code]vector * quaternion[/code] is equivalent to [code]quaternion.inverse() "
"* vector[/code]. See [method Quaternion.inverse]."
msgstr ""
"Transforme (multiplie) de manière inverse le [Vector3] par le [Quaternion] "
"donné.\n"
"[code]vector * quaternion[/code] est équivalent à [code]quaternion.inverse() "
"* vector[/code]. Voir [method Quaternion.inverse]."

msgid ""
"Inversely transforms (multiplies) the [Vector3] by the given [Transform3D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]vector * transform[/code] is equivalent to [code]transform.inverse() * "
"vector[/code]. See [method Transform3D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * vector[/code] can be used instead. See "
"[method Transform3D.affine_inverse]."
msgstr ""
"Transforme (multiplie) de manière inverse le [Vector3] par la matrice de "
"transformation [Transform3D] donnée, avec la supposition que la base de la "
"transformation est orthonormée (c.a.d. une rotation/réflexion est OK, une "
"échelle/un cisaillement ne l'est pas).\n"
"[code]vector * transform[/code] est équivalent à [code]transform.inverse() * "
"vector[/code]. Voir [method Transform3D.inverse].\n"
"Pour transformer par l'inverse d'une transformation affine (par ex. avec une "
"mise à l'échelle), [code]transform.affine_inverse() * vector[/code] peut être "
"utilisé à la place. Voir [method Transform3D.affine_inverse]."

msgid ""
"Multiplies each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) * Vector3(3, 4, 5)) # Prints (30.0, 80.0, 150.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector3] par les composantes du [Vector3] "
"donné.\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) * Vector3(3, 4, 5)) # Affiche (30.0, 80.0, 150.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector3] by the given [int]."
msgstr "Multiplie chaque composante du [Vector3] par l'entier [int] donné."

msgid ""
"Adds each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) + Vector3(3, 4, 5)) # Prints (13.0, 24.0, 35.0)\n"
"[/codeblock]"
msgstr ""
"Ajoute chaque composante du [Vector3] aux composantes du [Vector3] donné.\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) + Vector3(3, 4, 5)) # Affiche (13.0, 24.0, 35.0)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) - Vector3(3, 4, 5)) # Prints (7.0, 16.0, 25.0)\n"
"[/codeblock]"
msgstr ""
"Soustrait chaque composante du [Vector3] par les composantes du [Vector3] "
"donné.\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) - Vector3(3, 4, 5)) # Affiche (7.0, 16.0, 25.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) / Vector3(2, 5, 3)) # Prints (5.0, 4.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector3] par les composantes du [Vector3] "
"donné.\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) / Vector3(2, 5, 3)) # Affiche (5.0, 4.0, 10.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector3] by the given [float]."
msgstr "Divise chaque composante du [Vector3] par le flottant [float] donné."

msgid "Divides each component of the [Vector3] by the given [int]."
msgstr "Divise chaque composante du [Vector3] par l'entier [int] donné."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, and then with the Z values. This operator is useful for sorting "
"vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector3] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, puis sur les valeurs en Z. Cet opérateur "
"est utile pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, and then with the Z values. This operator is useful for "
"sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector3] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, puis sur les valeurs en "
"Z. Cet opérateur est utile pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, and then with the Z values. This operator is useful for sorting "
"vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector3] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, puis sur les valeurs en Z. Cet opérateur "
"est utile pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, and then with the Z values. This operator is "
"useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector3] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, puis sur les valeurs en "
"Z. Cet opérateur est utile pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Access vector components using their [param index]. [code]v[0][/code] is "
"equivalent to [code]v.x[/code], [code]v[1][/code] is equivalent to [code]v.y[/"
"code], and [code]v[2][/code] is equivalent to [code]v.z[/code]."
msgstr ""
"Accède aux composantes du vecteur par leur [param index]. [code]v[0][/code] "
"est équivalent à [code]v.x[/code], [code]v[1][/code] est équivalent à "
"[code]v.y[/code], et [code]v[2][/code] est équivalent à [code]v.z[/code]."

msgid ""
"Returns the negative value of the [Vector3]. This is the same as writing "
"[code]Vector3(-v.x, -v.y, -v.z)[/code]. This operation flips the direction of "
"the vector while keeping the same magnitude. With floats, the number zero can "
"be either positive or negative."
msgstr ""
"Renvoie la valeur négative du [Vector3]. C'est la même chose qu'écrire "
"[code]Vector3(-v.x, -v.y,-v.z)[/code]. Cette opération retourne la direction "
"du vecteur tout en gardant la même magnitude. Avec des flottants, le nombre "
"zéro peut être positif ou négatif."

msgid "A 3D vector using integer coordinates."
msgstr "Un vecteur 3D utilisant des coordonnées entières."

msgid ""
"A 3-element structure that can be used to represent 3D grid coordinates or "
"any other triplet of integers.\n"
"It uses integer coordinates and is therefore preferable to [Vector3] when "
"exact precision is required. Note that the values are limited to 32 bits, and "
"unlike [Vector3] this cannot be configured with an engine build option. Use "
"[int] or [PackedInt64Array] if 64-bit values are needed.\n"
"[b]Note:[/b] In a boolean context, a Vector3i will evaluate to [code]false[/"
"code] if it's equal to [code]Vector3i(0, 0, 0)[/code]. Otherwise, a Vector3i "
"will always evaluate to [code]true[/code]."
msgstr ""
"Une structure de 3 éléments qui peut être utilisée pour représenter des "
"coordonnées de grille 3D ou tout autre triplet d'entiers.\n"
"Elle utilise des coordonnées entières et elle est donc préférable à [Vector3] "
"quand une précision exacte est nécessaire. Par défaut, ces valeurs sont "
"limitées à 32 bits, et contrairement à [Vector3], elle ne peut être "
"configurée avec une option de compilation du moteur. Utilisez [int] ou "
"[PackedInt64Array] si des valeurs 64 bits sont nécessaires.\n"
"[b]Note :[/b] Avec des booléens, un Vector3i sera évalué à [code]false[/code] "
"s'il est égal à [code]Vector3i(0, 0, 0,0)[/code]. Sinon, un Vector3i sera "
"toujours évalué à [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector3i] with all components set to "
"[code]0[/code]."
msgstr ""
"Construit un [Vector3i] initialisé par défaut avec toutes les composantes "
"définies à [code]0[/code]."

msgid "Constructs a [Vector3i] as a copy of the given [Vector3i]."
msgstr "Construit un [Vector3i] comme copie du [Vector3i] donné."

msgid ""
"Constructs a new [Vector3i] from the given [Vector3] by truncating "
"components' fractional parts (rounding towards zero). For a different "
"behavior consider passing the result of [method Vector3.ceil], [method "
"Vector3.floor] or [method Vector3.round] to this constructor instead."
msgstr ""
"Construit un nouveau [Vector3i] depuis le [Vector3] donné en tronquant les "
"parties fractionnelles des composantes (arrondissant vers 0). Pour un "
"comportement différent, envisagez de passer le résultat de [method "
"Vector3.ceil], [method Vector3.floor] ou [method Vector3.round] à ce "
"constructeur à la place."

msgid "Returns a [Vector3i] with the given components."
msgstr "Renvoie un [Vector3i] avec les composantes données."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3i(maxi(x, with.x), maxi(y, with.y), maxi(z, with.z))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector3i(maxi(x, with.x), maxi(y, with.x), maxi(z, with.z))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3i(maxi(x, with), maxi(y, with), maxi(z, with))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector3i(maxi(x, with), maxi(y, with), maxi(z, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3i(mini(x, with.x), mini(y, with.y), mini(z, with.z))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector3i(mini(x, with.x), mini(y, with.y),mini(z,with.z))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3i(mini(x, with), mini(y, with), mini(z, with))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector3i(mini(x, with), mini(y, with),mini(z,with))[/code]."

msgid ""
"Min vector, a vector with all components equal to [code]INT32_MIN[/code]. Can "
"be used as a negative integer equivalent of [constant Vector3.INF]."
msgstr ""
"Vecteur minimum, un vecteur avec toutes ses composantes égales à "
"[code]INT32_MIN[/code]. Peut être utilisé comme un équivalent entier négatif "
"de [constant Vector3.INF]."

msgid ""
"Max vector, a vector with all components equal to [code]INT32_MAX[/code]. Can "
"be used as an integer equivalent of [constant Vector3.INF]."
msgstr ""
"Vecteur maximum, un vecteur avec toutes ses composantes égales à "
"[code]INT32_MAX[/code]. Peut être utilisé comme un équivalent entier de "
"[constant Vector3.INF]."

msgid ""
"Forward unit vector. Represents the local direction of forward, and the "
"global direction of north."
msgstr ""
"Vecteur unitaire en avant. Représente la direction locale en avant, et la "
"direction globale vers le nord."

msgid ""
"Gets the remainder of each component of the [Vector3i] with the components of "
"the given [Vector3i]. This operation uses truncated division, which is often "
"not desired as it does not work well with negative numbers. Consider using "
"[method @GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % Vector3i(7, 8, 9)) # Prints (3, -4, 3)\n"
"[/codeblock]"
msgstr ""
"Obtient le reste de la division euclidienne de chaque composante du "
"[Vector3i] par les composantes du [Vector3i] donné. Cette opération utilise "
"une division tronquée, ce qui n'est souvent pas souhaité car elle ne "
"fonctionne pas bien avec des nombres négatifs. Considérez d'utiliser [method "
"@GlobalScope.posmod] plutôt si vous voulez gérer les nombres négatifs.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % Vector3i(7, 8, 9) # Affiche (3, -4, 3)\n"
"[/codeblock]"

msgid ""
"Gets the remainder of each component of the [Vector3i] with the given [int]. "
"This operation uses truncated division, which is often not desired as it does "
"not work well with negative numbers. Consider using [method "
"@GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % 7) # Prints (3, -6, 2)\n"
"[/codeblock]"
msgstr ""
"Obtient le reste de la division euclidienne de chaque composante du "
"[Vector3i] par l'entier [int] donné. Cette opération utilise une division "
"tronquée, ce qui n'est souvent pas souhaité car elle ne fonctionne pas bien "
"avec des nombres négatifs. Considérez d'utiliser [method @GlobalScope.posmod] "
"plutôt si vous voulez gérer les nombres négatifs.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % 7) # Affiche (3, -6, 2)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) * Vector3i(3, 4, 5)) # Prints (30, 80, 150)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector3i] par les composantes du [Vector3i] "
"donné.\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) * Vector3i(3, 4, 5)) # Affiche (30, 80, 150)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector3i] by the given [float]. Returns a "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 15, 20) * 0.9) # Prints (9.0, 13.5, 18.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector3i] par le flottant [float] donné. "
"Renvoie un [Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 15, 20) * 0.9) # Affiche (9.0, 13.5, 18.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector3i] by the given [int]."
msgstr "Multiplie chaque composante du [Vector3i] par l'entier [int] donné."

msgid ""
"Adds each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) + Vector3i(3, 4, 5)) # Prints (13, 24, 35)\n"
"[/codeblock]"
msgstr ""
"Ajoute chaque composante du [Vector3i] aux composantes du [Vector3i] donné.\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) + Vector3i(3, 4, 5)) # Affiche (13, 24, 35)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) - Vector3i(3, 4, 5)) # Prints (7, 16, 25)\n"
"[/codeblock]"
msgstr ""
"Soustrait chaque composante du [Vector3i] par les composantes du [Vector3i] "
"donné.\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) - Vector3i(3, 4, 5)) # Affiche (7, 16, 25)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / Vector3i(2, 5, 3)) # Prints (5, 4, 10)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector3i] par les composantes du [Vector3i] "
"donné.\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / Vector3i(2, 5, 3)) # Affiche (5, 4, 10)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector3i] by the given [float]. Returns a "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / 2.9) # Prints (5.0, 10.0, 15.0)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector3i] par le flottant [float] donné. Renvoie "
"un [Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / 2.9) # Affiche (5.0, 10.0, 15.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector3i] by the given [int]."
msgstr "Divise chaque composante du [Vector3i] par l'entier [int] donné."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, and then with the Z values. This operator is useful for sorting "
"vectors."
msgstr ""
"Compare deux [Vector3i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, puis sur les valeurs en Z. Cet opérateur "
"est utile pour trier des vecteurs."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, and then with the Z values. This operator is useful for "
"sorting vectors."
msgstr ""
"Compare deux [Vector3i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, puis sur les valeurs en "
"Z. Cet opérateur est utile pour trier des vecteurs."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, and then with the Z values. This operator is useful for sorting "
"vectors."
msgstr ""
"Compare deux [Vector3i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, puis sur les valeurs en Z. Cet opérateur "
"est utile pour trier des vecteurs."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, and then with the Z values. This operator is "
"useful for sorting vectors."
msgstr ""
"Compare deux [Vector3i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, puis sur les valeurs en "
"Z. Cet opérateur est utile pour trier des vecteurs."

msgid ""
"Returns the negative value of the [Vector3i]. This is the same as writing "
"[code]Vector3i(-v.x, -v.y, -v.z)[/code]. This operation flips the direction "
"of the vector while keeping the same magnitude."
msgstr ""
"Renvoie la valeur négative du [Vector3i]. C'est la même chose qu'écrire "
"[code]Vector3i(-v.x, -v.y,-v.z)[/code]. Cette opération retourne la direction "
"du vecteur tout en gardant la même magnitude."

msgid "A 4D vector using floating-point coordinates."
msgstr "Un vecteur 4D utilisant des coordonnés flottantes."

msgid ""
"A 4-element structure that can be used to represent 4D coordinates or any "
"other quadruplet of numeric values.\n"
"It uses floating-point coordinates. By default, these floating-point values "
"use 32-bit precision, unlike [float] which is always 64-bit. If double "
"precision is needed, compile the engine with the option "
"[code]precision=double[/code].\n"
"See [Vector4i] for its integer counterpart.\n"
"[b]Note:[/b] In a boolean context, a Vector4 will evaluate to [code]false[/"
"code] if it's equal to [code]Vector4(0, 0, 0, 0)[/code]. Otherwise, a Vector4 "
"will always evaluate to [code]true[/code]."
msgstr ""
"Une structure de 4 éléments qui peut être utilisée pour représenter des "
"coordonnées 4D ou tout autre quadruplet de valeurs numériques.\n"
"Elle utilise des coordonnées flottantes. Par défaut, ces valeurs flottantes "
"utilisent une précision 32 bits, contrairement à [float] qui est toujours en "
"64 bits. Si une précision double est nécessaire, compilez le moteur avec "
"l'option [code]precision=double[/code].\n"
"Voir [Vector4i] pour l'équivalent entier.\n"
"[b]Note :[/b] Avec des booléens, un Vector4 sera évalué à [code]false[/code] "
"s'il est égal à [code]Vector4(0, 0, 0,0)[/code]. Sinon, un Vector4 sera "
"toujours évalué à [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector4] with all components set to "
"[code]0[/code]."
msgstr ""
"Construit un [Vector4] initialisé par défaut, avec toutes ses composantes "
"définies à [code]0[/code]."

msgid "Constructs a [Vector4] as a copy of the given [Vector4]."
msgstr "Construit un [Vector4i] comme copie du [Vector4i] donné."

msgid "Constructs a new [Vector4] from the given [Vector4i]."
msgstr "Construit un nouveau [Vector4] à partir d'un [Vector4i]."

msgid "Returns a [Vector4] with the given components."
msgstr "Renvoie un [Vector4] avec les coordonnées spécifiées."

msgid "Returns the dot product of this vector and [param with]."
msgstr "Renvoie le produit scalaire de ce vecteur avec [param with]."

msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector4(1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z, 1.0 / v.w)[/code]."
msgstr ""
"Renvoie l'inverse du vecteur. Cela est identique à [code]Vector4( 1.0 / v.x, "
"1.0 / v.y, 1.0 / v.z, 1.0 / v.w )[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z), maxf(w, "
"with.w))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector4(maxf(x, with), maxf(y, with), maxf(z, with), maxf(w,with))[/"
"code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4(maxf(x, with), maxf(y, with), maxf(z, with), maxf(w, with))[/"
"code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector4(maxf(x, with), maxf(y, with), maxf(z, with), maxf(w,with))[/"
"code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4(minf(x, with.x), minf(y, with.y), minf(z, with.z), minf(w, "
"with.w))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector4(minf(x, with.x), minf(y, with.y), minf(z, "
"with.z),minf(w,with.w))[/code]."

msgid ""
"Returns the axis of the vector's lowest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_W]."
msgstr ""
"Renvoie l'axe de la valeur la moins importante du vecteur. Voir les "
"constantes [code]AXIS_*[/code]. Si tous les composantes sont égales, cette "
"méthode renvoie [constant AXIS_W]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4(minf(x, with), minf(y, with), minf(z, with), minf(w, with))[/"
"code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector4(minf(x, with), minf(y, with), minf(z, with),minf(w,with))[/"
"code]."

msgid ""
"Returns the result of scaling the vector to unit length. Equivalent to "
"[code]v / v.length()[/code]. Returns [code](0, 0, 0, 0)[/code] if "
"[code]v.length() == 0[/code]. See also [method is_normalized].\n"
"[b]Note:[/b] This function may return incorrect values if the input vector "
"length is near zero."
msgstr ""
"Renvoie le résultat de la mise à l'échelle du vecteur à la longueur unité. "
"Équivalent à [code]v / v.length()[/code]. Renvoie [code](0, 0, 0, 0)[/code] "
"si [code]v.length() == 0[/code]. Voir aussi [method is_normalized].\n"
"[b]Note :[/b] Cette fonction peut renvoyer des valeurs incorrectes si la "
"longueur du vecteur d'entrée est proche de zéro."

msgid ""
"The vector's W component. Also accessible by using the index position [code]"
"[3][/code]."
msgstr ""
"La composante W du vecteur. Aussi accessible en utilisant la position d'index "
"[code][3][/code]."

msgid ""
"Enumerated value for the W axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"La valeur de l'énumération pour l'axe W. Renvoyé par [method max_axis_index] "
"et [method min_axis_index]."

msgid ""
"Transforms (multiplies) the [Vector4] by the transpose of the given "
"[Projection] matrix.\n"
"For transforming by inverse of a projection [code]projection.inverse() * "
"vector[/code] can be used instead. See [method Projection.inverse]."
msgstr ""
"Transforme (multiplie) le [Vector4] par la transposée de la matrice de "
"[Projection] donnée.\n"
"Pour transformer par l'inverse d'une projection, [code]projection.inverse() * "
"vector[/code] peut être utilisée à la place. Voir [method Projection.inverse]."

msgid ""
"Multiplies each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * Vector4(3, 4, 5, 6)) # Prints (30.0, 80.0, "
"150.0, 240.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector4] par les composantes du [Vector4] "
"donné.\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * Vector4(3, 4, 5, 6)) # Affiche (30.0, 80.0, "
"150.0, 240.0)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector4] by the given [float].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * 2) # Prints (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector4] par le flottant [float] donné.\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * 2) # Affiche (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector4] by the given [int]."
msgstr "Multiplie chaque composante du [Vector4] par l'entier [int] donné."

msgid ""
"Adds each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) + Vector4(3, 4, 5, 6)) # Prints (13.0, 24.0, "
"35.0, 46.0)\n"
"[/codeblock]"
msgstr ""
"Ajoute chaque composante du [Vector4] aux composantes du [Vector4] donné.\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) + Vector4(3, 4, 5, 6)) # Affiche (13.0, 24.0, "
"35.0, 46.0)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) - Vector4(3, 4, 5, 6)) # Prints (7.0, 16.0, "
"25.0, 34.0)\n"
"[/codeblock]"
msgstr ""
"Sosutrait chaque composante du [Vector4] par les composantes du [Vector4] "
"donné.\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) - Vector4(3, 4, 5, 6)) # Affiche (7.0, 16.0, "
"25.0, 34.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / Vector4(2, 5, 3, 4)) # Prints (5.0, 4.0, "
"10.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector4] par les composantes du [Vector4] "
"donné.\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / Vector4(2, 5, 3, 4)) # Affiche (5.0, 4.0, "
"10.0, 10.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4] by the given [float].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / 2) # Prints (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector4] par le flottant [float] donné.\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / 2) # Affiche (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector4] by the given [int]."
msgstr "Divise chaque composante du [Vector4] par l'entier [int] donné."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector4] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, sur les valeurs en Z des deux vecteurs, "
"puis sur les valeurs en W. Cet opérateur est utile pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, Z values of the two vectors, and then with the W values. "
"This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector4] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, sur les valeurs en Z des "
"deux vecteurs, puis sur les valeurs en W. Cet opérateur est utile pour trier "
"des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector4] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, sur les valeurs en Z des deux vecteurs, "
"puis sur les valeurs en W. Cet opérateur est utile pour trier des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, Z values of the two vectors, and then with the W "
"values. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Compare deux [Vector4] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, sur les valeurs en Z des "
"deux vecteurs, puis sur les valeurs en W. Cet opérateur est utile pour trier "
"des vecteurs.\n"
"[b]Note :[/b] Les vecteurs avec des éléments [constant @GDScript.NAN] ne se "
"comportent pas comme les autres vecteurs. Ainsi, les résultats de cet "
"opérateur peuvent ne pas être précis quand des NaNs sont présents."

msgid ""
"Access vector components using their [param index]. [code]v[0][/code] is "
"equivalent to [code]v.x[/code], [code]v[1][/code] is equivalent to [code]v.y[/"
"code], [code]v[2][/code] is equivalent to [code]v.z[/code], and [code]v[3][/"
"code] is equivalent to [code]v.w[/code]."
msgstr ""
"Accède aux composantes du vecteur par leur [param index]. [code]v[0][/code] "
"est équivalent à [code]v.x[/code], [code]v[1][/code] est équivalent à "
"[code]v.y[/code], [code]v[2][/code] est équivalent à [code]v.z[/code], et "
"[code]v[3][/code] est équivalent à [code]v.w[/code]."

msgid ""
"Returns the negative value of the [Vector4]. This is the same as writing "
"[code]Vector4(-v.x, -v.y, -v.z, -v.w)[/code]. This operation flips the "
"direction of the vector while keeping the same magnitude. With floats, the "
"number zero can be either positive or negative."
msgstr ""
"Renvoie la valeur négative du [Vector4]. C'est la même chose qu'écrire "
"[code]Vector4(-v.x, -v.y,-v.z,-v.w)[/code]. Cette opération retourne la "
"direction du vecteur tout en gardant la même magnitude. Avec des flottants, "
"le nombre zéro peut être positif ou négatif."

msgid "A 4D vector using integer coordinates."
msgstr "Un vecteur 4D utilisant des coordonnés entières."

msgid ""
"A 4-element structure that can be used to represent 4D grid coordinates or "
"any other quadruplet of integers.\n"
"It uses integer coordinates and is therefore preferable to [Vector4] when "
"exact precision is required. Note that the values are limited to 32 bits, and "
"unlike [Vector4] this cannot be configured with an engine build option. Use "
"[int] or [PackedInt64Array] if 64-bit values are needed.\n"
"[b]Note:[/b] In a boolean context, a Vector4i will evaluate to [code]false[/"
"code] if it's equal to [code]Vector4i(0, 0, 0, 0)[/code]. Otherwise, a "
"Vector4i will always evaluate to [code]true[/code]."
msgstr ""
"Une structure de 4 éléments qui peut être utilisée pour représenter des "
"coordonnées de grille 4D ou tout autre quadruplet d'entiers.\n"
"Elle utilise des coordonnées entières et elle est donc préférable à [Vector4] "
"quand une précision exacte est nécessaire. Par défaut, ces valeurs sont "
"limitées à 32 bits, et contrairement à [Vector4], elle ne peut être "
"configurée avec une option de compilation du moteur. Utilisez [int] ou "
"[PackedInt64Array] si des valeurs 64 bits sont nécessaires.\n"
"[b]Note :[/b] Avec des booléens, un Vector4i sera évalué à [code]false[/code] "
"s'il est égal à [code]Vector4i(0, 0, 0,0)[/code]. Sinon, un Vector4i sera "
"toujours évalué à [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector4i] with all components set to "
"[code]0[/code]."
msgstr ""
"Construit un [Vector4i] initialisé par défaut, avec toutes ses composantes "
"définies à [code]0[/code]."

msgid "Constructs a [Vector4i] as a copy of the given [Vector4i]."
msgstr "Construit un [Vector4i] comme copie du [Vector4i] donné."

msgid ""
"Constructs a new [Vector4i] from the given [Vector4] by truncating "
"components' fractional parts (rounding towards zero). For a different "
"behavior consider passing the result of [method Vector4.ceil], [method "
"Vector4.floor] or [method Vector4.round] to this constructor instead."
msgstr ""
"Construit un nouveau [Vector4i] depuis le [Vector4] donné en tronquant les "
"parties fractionnelles des composantes (arrondissant vers 0). Pour un "
"comportement différent, envisagez de passer le résultat de [method "
"Vector4.ceil], [method Vector4.floor] ou [method Vector4.round] à ce "
"constructeur à la place."

msgid "Returns a [Vector4i] with the given components."
msgstr "Renvoie un [Vector4i] avec les coordonnées spécifiées."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4i(maxi(x, with.x), maxi(y, with.y), maxi(z, with.z), maxi(w, "
"with.w))[/code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector4i(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z), "
"maxf(w,with.w))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4i(maxi(x, with), maxi(y, with), maxi(z, with), maxi(w, with))[/"
"code]."
msgstr ""
"Renvoie le maximum par composante de ceci et [param with], équivalent à "
"[code]Vector4i(maxf(x, with), maxf(y, with), maxf(z, with), maxf(w,with))[/"
"code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4i(mini(x, with.x), mini(y, with.y), mini(z, with.z), mini(w, "
"with.w))[/code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector4i(mini(x, with.x), mini(y, with.y),mini(z,with.z),mini(w,with.w))"
"[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4i(mini(x, with), mini(y, with), mini(z, with), mini(w, with))[/"
"code]."
msgstr ""
"Renvoie le minimum par composante de ceci et [param with], équivalent à "
"[code]Vector4i(mini(x, with), mini(y, with),mini(z,with),mini(w,with))[/code]."

msgid ""
"Min vector, a vector with all components equal to [code]INT32_MIN[/code]. Can "
"be used as a negative integer equivalent of [constant Vector4.INF]."
msgstr ""
"Vecteur minimum, un vecteur avec toutes ses composantes égales à "
"[code]INT32_MIN[/code]. Peut être utilisé comme un équivalent entier négatif "
"de [constant Vector4.INF]."

msgid ""
"Max vector, a vector with all components equal to [code]INT32_MAX[/code]. Can "
"be used as an integer equivalent of [constant Vector4.INF]."
msgstr ""
"Vecteur maximum, un vecteur avec toutes ses composantes égales à "
"[code]INT32_MAX[/code]. Peut être utilisé comme un équivalent entier de "
"[constant Vector4.INF]."

msgid ""
"Gets the remainder of each component of the [Vector4i] with the components of "
"the given [Vector4i]. This operation uses truncated division, which is often "
"not desired as it does not work well with negative numbers. Consider using "
"[method @GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % Vector4i(7, 8, 9, 10)) # Prints (3, -4, 3, "
"0)\n"
"[/codeblock]"
msgstr ""
"Obtient le reste de la division euclidienne de chaque composante du "
"[Vector4i] avec les composantes du [Vector4i] donné. Cette opération utilise "
"une division tronquée, ce qui n'est souvent pas souhaité car elle ne "
"fonctionne pas bien avec des nombres négatifs. Considérez d'utiliser [method "
"@GlobalScope.posmod] plutôt si vous voulez gérer les nombres négatifs.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % Vector4i(7, 8, 9, 10) # Affiche (3, -4, 3, "
"0)\n"
"[/codeblock]"

msgid ""
"Gets the remainder of each component of the [Vector4i] with the given [int]. "
"This operation uses truncated division, which is often not desired as it does "
"not work well with negative numbers. Consider using [method "
"@GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % 7) # Prints (3, -6, 2, -5)\n"
"[/codeblock]"
msgstr ""
"Obtient le reste de la division euclidienne de chaque composante du "
"[Vector4i] avec l'entier [int] donné. Cette opération utilise une division "
"tronquée, ce qui n'est souvent pas souhaité car elle ne fonctionne pas bien "
"avec des nombres négatifs. Considérez d'utiliser [method @GlobalScope.posmod] "
"plutôt si vous voulez gérer les nombres négatifs.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % 7) # Affiche (3, -6, 2, -5)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * Vector4i(3, 4, 5, 6)) # Prints (30, 80, 150, "
"240)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector4i] par les composantes du [Vector4i] "
"donné.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * Vector4i(3, 4, 5, 6)) # Affiche (30, 80, "
"150, 240)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector4i] by the given [float].\n"
"Returns a Vector4 value due to floating-point operations.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * 2) # Prints (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"
msgstr ""
"Multiplie chaque composante du [Vector4i] par le flottant [float] donné.\n"
"Renvoie une valeur [Vector4] à cause des opérations de virgule flottante.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * 2) # Affiche (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector4i] by the given [int]."
msgstr "Multiplie chaque composante du [Vector4i] par l'entier [int] donné."

msgid ""
"Adds each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) + Vector4i(3, 4, 5, 6)) # Prints (13, 24, 35, "
"46)\n"
"[/codeblock]"
msgstr ""
"Ajoute chaque composante du [Vector4i] aux composantes du [Vector4i] donné.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) + Vector4i(3, 4, 5, 6)) # Affiche (13, 24, 35, "
"46)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) - Vector4i(3, 4, 5, 6)) # Prints (7, 16, 25, "
"34)\n"
"[/codeblock]"
msgstr ""
"Soustrait chaque composant du [Vector4i] par les composantes du [Vector4i] "
"donné.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) - Vector4i(3, 4, 5, 6)) # Affiche (7, 16, 25, "
"34)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / Vector4i(2, 5, 3, 4)) # Prints (5, 4, 10, "
"10)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector4i] par les composantes du [Vector4i] "
"donné.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / Vector4i(2, 5, 3, 4)) # Affiche (5, 4, 10, "
"10)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4i] by the given [float].\n"
"Returns a Vector4 value due to floating-point operations.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / 2) # Prints (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"
msgstr ""
"Divise chaque composante du [Vector4i] par le flottant [float] donné.\n"
"Renvoie une valeur Vector4 due aux opérations de virgule flottante.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / 2) # Affiche (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector4i] by the given [int]."
msgstr "Divise chaque composante du [Vector4i] par l'entier [int] donné."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector4i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, sur les valeurs en Z des deux vecteurs, "
"puis sur les valeurs en W. Cet opérateur est utile pour trier des vecteurs."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, Z values of the two vectors, and then with the W values. "
"This operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector4i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est inférieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, sur les valeurs en Z des "
"deux vecteurs, puis sur les valeurs en W. Cet opérateur est utile pour trier "
"des vecteurs."

msgid "Returns [code]true[/code] if the vectors are exactly equal."
msgstr "Renvoie [code]true[/code] si les vecteurs sont exactement égaux."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector4i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure à la valeur en X du vecteur [param right]. Si les "
"deux valeurs en X sont exactement égales, alors il répète la vérification sur "
"les valeurs en Y des deux vecteurs, sur les valeurs en Z des deux vecteurs, "
"puis sur les valeurs en W. Cet opérateur est utile pour trier des vecteurs."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, Z values of the two vectors, and then with the W "
"values. This operator is useful for sorting vectors."
msgstr ""
"Compare deux [Vector4i] en vérifiant en premier si la valeur en X du vecteur "
"de gauche est supérieure ou égale à la valeur en X du vecteur [param right]. "
"Si les deux valeurs en X sont exactement égales, alors il répète la "
"vérification sur les valeurs en Y des deux vecteurs, sur les valeurs en Z des "
"deux vecteurs, puis sur les valeurs en W. Cet opérateur est utile pour trier "
"des vecteurs."

msgid ""
"Returns the negative value of the [Vector4i]. This is the same as writing "
"[code]Vector4i(-v.x, -v.y, -v.z, -v.w)[/code]. This operation flips the "
"direction of the vector while keeping the same magnitude."
msgstr ""
"Renvoie la valeur négative du [Vector4i]. C'est la même chose qu'écrire "
"[code]Vector4i(-v.x, -v.y,-v.z,-v.w)[/code]. Cette opération retourne la "
"direction du vecteur tout en gardant la même magnitude."

msgid "A 3D physics body that simulates the behavior of a car."
msgstr "Un corps physique 3D qui simule le comportement d'une voiture."

msgid ""
"This physics body implements all the physics logic needed to simulate a car. "
"It is based on the raycast vehicle system commonly found in physics engines. "
"Aside from a [CollisionShape3D] for the main body of the vehicle, you must "
"also add a [VehicleWheel3D] node for each wheel. You should also add a "
"[MeshInstance3D] to this node for the 3D model of the vehicle, but this model "
"should generally not include meshes for the wheels. You can control the "
"vehicle by using the [member brake], [member engine_force], and [member "
"steering] properties. The position or orientation of this node shouldn't be "
"changed directly.\n"
"[b]Note:[/b] The local forward for this node is [constant "
"Vector3.MODEL_FRONT].\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the center "
"of gravity of your vehicle. To make the vehicle more grounded, the origin "
"point is usually kept low, moving the [CollisionShape3D] and [MeshInstance3D] "
"upwards.\n"
"[b]Note:[/b] This class has known issues and isn't designed to provide "
"realistic 3D vehicle physics. If you want advanced vehicle physics, you may "
"have to write your own physics integration using [CharacterBody3D] or "
"[RigidBody3D]."
msgstr ""
"Ce corps physique implémente toute la logique physique nécessaire pour "
"simuler une voiture. Il est basé sur le système de véhicules à raycast "
"communément présents dans des moteurs de physique. En dehors d'un "
"[CollisionShape3D] pour le corps principal du véhicule, vous devez également "
"ajouter un nœud [VehicleWheel3D] pour chaque roue. Vous devriez également "
"ajouter un [MeshInstance3D] à ce nœud pour le modèle 3D du véhicule, mais ce "
"modèle ne devrait généralement pas inclure de maillages pour les roues. Vous "
"pouvez contrôler le véhicule en utilisant les propriétés [member brake], "
"[member engine_force] et [member steering]. La position ou l'orientation de "
"ce nœud ne devrait pas être changée directement.\n"
"[b]Note :[/b] Le vecteur avant local pour ce nœud est [constant "
"Vector3.MODEL_FRONT].\n"
"[b]Note :[/b] Le point d'origine de votre VehicleBody3D déterminera le centre "
"de gravité de votre véhicule. Pour rendre le véhicule plus proche du sol, le "
"point d'origine est généralement maintenu bas, en déplaçant la "
"[CollisionShape3D] et le [MeshInstance3D] vers le haut.\n"
"[b]Note :[/b] Cette classe a des problèmes connus et n'est pas conçue pour "
"fournir une physique réaliste pour des véhicules 3D. Si vous voulez de la "
"physique avancée des véhicules, vous devrez peut-être écrire votre propre "
"intégration physique en utilisant [CharacterBody3D] ou [RigidBody3D]."

msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
"to apply to adequately slow down your vehicle depends on the [member "
"RigidBody3D.mass] of the vehicle. For a vehicle with a mass set to 1000, try "
"a value in the 25 - 30 range for hard braking."
msgstr ""
"Ralentit le véhicule en appliquant une force de freinage. Le véhicule n'est "
"ralenti que si les roues sont en contact avec une surface. La force que vous "
"devez appliquer pour ralentir adéquatement votre véhicule dépend de la masse "
"[member RigidBody3D.mass] du véhicule. Pour un véhicule dont la masse est "
"fixée à 1000, essayez une valeur dans l'intervalle 25-30 pour un freinage dur."

msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only sped "
"up if the wheels that have [member VehicleWheel3D.use_as_traction] set to "
"[code]true[/code] and are in contact with a surface. The [member "
"RigidBody3D.mass] of the vehicle has an effect on the acceleration of the "
"vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 "
"range for acceleration.\n"
"[b]Note:[/b] The simulation does not take the effect of gears into account, "
"you will need to add logic for this if you wish to simulate gears.\n"
"A negative value will result in the vehicle reversing."
msgstr ""
"Accélère le véhicule en appliquant une force moteur. Le véhicule n'est "
"accéléré que si les roues qui ont [member VehicleWheel3D.use_as_traction] "
"défini à [code]true[/code] sont en contact avec une surface. La masse [member "
"RigidBody3D.mass] du véhicule a un effet sur l'accélération du véhicule. Pour "
"un véhicule avec une masse de 1000, essayez une valeur dans l'intervalle "
"25-50 pour l'accélération.\n"
"[b]Note :[/b] La simulation ne prend pas en compte l'effet des rapports de "
"vitesse, vous devrez ajouter de la logique pour cela si vous souhaitez "
"simuler des rapports de vitesse.\n"
"Une valeur négative entraînera la marche arrière du véhicule."

msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
"VehicleWheel3D.use_as_steering] set to [code]true[/code] will automatically "
"be rotated.\n"
"[b]Note:[/b] This property is edited in the inspector in degrees. In code the "
"property is set in radians."
msgstr ""
"L'angle de direction du véhicule. Définir cette valeur à une valeur non nulle "
"entraînera le virage du véhicule lorsqu'il se déplace. Les roues qui ont "
"[member VehicleWheel3D.use_as_steering] défini à [code]true[/code] seront "
"automatiquement tournées.\n"
"[b]Note :[/b] Cette propriété est modifiée en degrés dans l'inspecteur. Dans "
"le code, la propriété est définie en radians."

msgid ""
"A 3D physics body for a [VehicleBody3D] that simulates the behavior of a "
"wheel."
msgstr ""
"Un corps physique 3D pour un [VehicleBody3D] qui simule le comportement d'une "
"roue."

msgid ""
"A node used as a child of a [VehicleBody3D] parent to simulate the behavior "
"of one of its wheels. This node also acts as a collider to detect if the "
"wheel is touching a surface.\n"
"[b]Note:[/b] This class has known issues and isn't designed to provide "
"realistic 3D vehicle physics. If you want advanced vehicle physics, you may "
"need to write your own physics integration using another [PhysicsBody3D] "
"class."
msgstr ""
"Un nœud utilisé comme enfant d'un [VehicleBody3D] parent pour simuler le "
"comportement d'une de ses roues. Ce nœud agit également comme une forme de "
"collision pour détecter si la roue touche une surface.\n"
"[b]Note :[/b] Cette classe a des problèmes connus et n'est pas conçue pour "
"fournir une physique réaliste des véhicules 3D. Si vous voulez de la physique "
"avancée pour des véhicules, vous pouvez avoir besoin d'écrire votre propre "
"intégration physique en utilisant une autre classe [PhysicsBody3D]."

msgid ""
"Returns the contacting body node if valid in the tree, as [Node3D]. At the "
"moment, [GridMap] is not supported so the node will be always of type "
"[PhysicsBody3D].\n"
"Returns [code]null[/code] if the wheel is not in contact with a surface, or "
"the contact body is not a [PhysicsBody3D]."
msgstr ""
"Renvoie le nœud du corps en contact si valide dans l'arbre, en tant que "
"[Node3D]. Pour le moment, [GridMap] n'est pas supporté de sorte que le nœud "
"sera toujours de type [PhysicsBody3D].\n"
"Renvoie [code]null[/code] si la roue n'est pas en contact avec une surface, "
"ou si le corps en contact n'est pas un [PhysicsBody3D]."

msgid ""
"Returns the normal of the suspension's collision in world space if the wheel "
"is in contact. If the wheel isn't in contact with anything, returns a vector "
"pointing directly along the suspension axis toward the vehicle in world space."
msgstr ""
"Renvoie la normale de la collision de la suspension dans l'espace global si "
"la roue est en contact. Si la roue n'est pas en contact avec quoi que ce "
"soit, renvoie un vecteur pointant directement le long de l'axe de suspension "
"vers le véhicule dans l'espace global."

msgid ""
"Returns the point of the suspension's collision in world space if the wheel "
"is in contact. If the wheel isn't in contact with anything, returns the "
"maximum point of the wheel's ray cast in world space, which is defined by "
"[code]wheel_rest_length + wheel_radius[/code]."
msgstr ""
"Renvoie le point de la collision de la suspension dans l'espace global si la "
"roue est en contact. Si la roue n'est pas en contact avec quoi que ce soit, "
"renvoie le point maximal du raycast de la roue dans l'espace global, défini "
"par [code]wheel_rest_length + wheel_radius[/code]."

msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr "Renvoie la vitesse de rotation de la roue en tours par minute."

msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
"Renvoie une valeur entre 0.0 et 1.0 qui indique si cette roue dérape. 0.0 est "
"le dérapage (la roue a perdu l'adhérence, p.ex. sur terrain glacé), 1.0 "
"signifie pas de dérapage (la roue a pleine adhérence, p.ex. sur route en "
"asphalte sèche)."

msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
"Renvoie [code]true[/code] si cette roue est en contact avec une surface."

msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
"adequately slow down your vehicle depends on the [member RigidBody3D.mass] of "
"the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - "
"30 range for hard braking."
msgstr ""
"Ralentit la roue en appliquant une force de freinage. La roue n'est ralentie "
"que si elle est en contact avec une surface. La force que vous devez "
"appliquer pour ralentir adéquatement votre véhicule dépend de la masse "
"[member RigidBody3D.mass] du véhicule. Pour un véhicule dont la masse est "
"fixée à 1000, essayez une valeur dans l'intervalle 25-30 pour un freinage dur."

msgid ""
"The damping applied to the suspension spring when being compressed, meaning "
"when the wheel is moving up relative to the vehicle. It is measured in Newton-"
"seconds per millimeter (N⋅s/mm), or megagrams per second (Mg/s). This value "
"should be between 0.0 (no damping) and 1.0, but may be more. A value of 0.0 "
"means the car will keep bouncing as the spring keeps its energy. A good value "
"for this is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
"L'amortissement appliqué au ressort de suspension lorsqu'il se compresse, ce "
"qui signifie que la roue monte par rapport au véhicule. Il est mesuré en "
"newton-secondes par millimètre (N⋅s/mm), ou mégagrammes par seconde (Mg/s). "
"Cette valeur devrait être entre 0.0 (pas d'amortissement) et 1.0, mais peut "
"être plus. Une valeur de 0.0 signifie que la voiture continuera de rebondir "
"car le ressort conserve son énergie. Une bonne valeur pour ceci est d'environ "
"0.3 pour une voiture normale, 0.5 pour une voiture de course."

msgid ""
"The damping applied to the suspension spring when rebounding or extending, "
"meaning when the wheel is moving down relative to the vehicle. It is measured "
"in Newton-seconds per millimeter (N⋅s/mm), or megagrams per second (Mg/s). "
"This value should be between 0.0 (no damping) and 1.0, but may be more. This "
"value should always be slightly higher than the [member damping_compression] "
"property. For a [member damping_compression] value of 0.3, try a relaxation "
"value of 0.5."
msgstr ""
"L'amortissement appliqué au ressort de suspension lorsqu'il rebondit ou "
"s'étend, ce qui signifie que la roue descend par rapport au véhicule. Il est "
"mesuré en newton-secondes par millimètre (N⋅s/mm), ou mégagrammes par seconde "
"(Mg/s). Cette valeur devrait être entre 0.0 (pas d'amortissement) et 1.0, "
"mais peut être plus. Cette valeur devrait toujours être légèrement supérieure "
"à la propriété [member damping_compression]. Pour une valeur [member "
"damping_compression] de 0.3, essayez une valeur de relaxation de 0.5."

msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only sped up "
"if it is in contact with a surface. The [member RigidBody3D.mass] of the "
"vehicle has an effect on the acceleration of the vehicle. For a vehicle with "
"a mass set to 1000, try a value in the 25 - 50 range for acceleration.\n"
"[b]Note:[/b] The simulation does not take the effect of gears into account, "
"you will need to add logic for this if you wish to simulate gears.\n"
"A negative value will result in the wheel reversing."
msgstr ""
"Accélère la roue en appliquant une force moteur. La roue n'est accélérée que "
"si elle est en contact avec une surface. La masse [member RigidBody3D.mass] "
"du véhicule a un effet sur l'accélération du véhicule. Pour un véhicule avec "
"une masse de 1000, essayez une valeur dans l'intervalle 25-50 pour "
"l'accélération.\n"
"[b]Note :[/b] La simulation ne prend pas en compte l'effet des rapports de "
"vitesse, vous devrez ajouter de la logique pour cela si vous souhaitez "
"simuler des rapports de vitesse.\n"
"Une valeur négative entraînera la marche arrière de la roue."

msgid ""
"The steering angle for the wheel, in radians. Setting this to a non-zero "
"value will result in the vehicle turning when it's moving."
msgstr ""
"L'angle de direction de la roue, en radians. Définir cette valeur à une "
"valeur non nulle fera tourner le véhicule quand il se déplace."

msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the spring "
"will not carry the weight of the vehicle. Good results are often obtained by "
"a value that is about 3× to 4× this number."
msgstr ""
"La force maximale à laquelle le ressort peut résister. Cette valeur devrait "
"être supérieure à un quart de la masse [member RigidBody3D.mass] du "
"[VehicleBody3D] ou sinon le ressort ne portera pas le poids du véhicule. Les "
"bons résultats sont souvent obtenus avec une valeur d'environ 3× à 4× ce "
"nombre."

msgid ""
"The stiffness of the suspension, measured in Newtons per millimeter (N/mm), "
"or megagrams per second squared (Mg/s²). Use a value lower than 50 for an off-"
"road car, a value between 50 and 100 for a race car and try something around "
"200 for something like a Formula 1 car."
msgstr ""
"La rigidité de la suspension, en Newtons par millimètre (N/mm), ou "
"mégagrammes par seconde carrée. Utilisez une valeur inférieure à 50 pour une "
"voiture tout terrain, une valeur entre 50 et 100 pour une voiture de course "
"et essayez quelque chose autour de 200 pour quelque chose comme une voiture "
"de Formule 1."

msgid ""
"This is the distance the suspension can travel. As Godot units are equivalent "
"to meters, keep this setting relatively low. Try a value between 0.1 and 0.3 "
"depending on the type of car."
msgstr ""
"Il s'agit de la distance que la suspension peut parcourir. Comme les unités "
"de Godot sont équivalentes aux mètres, gardez ce paramètre relativement bas. "
"Essayez une valeur entre 0,1 et 0,3 selon le type de voiture."

msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and ignored "
"if you are using the per-wheel [member steering] value instead."
msgstr ""
"Si [code]true[/code], cette roue sera tournée lorsque la voiture tourne. "
"Cette valeur est utilisée en conjonction avec [member VehicleBody3D.steering] "
"et ignorée si vous utilisez plutôt la valeur [member steering] par roue."

msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
"VehicleBody3D.engine_force] and ignored if you are using the per-wheel "
"[member engine_force] value instead."
msgstr ""
"Si [code]true[/code], cette roue transfère la force du moteur au sol pour "
"propulser le véhicule vers l'avant. Cette valeur est utilisée en conjonction "
"avec [member VehicleBody3D.engine_force] et est ignorée si vous utilisez "
"plutôt la valeur par roue [member engine_force]."

msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
"grip, 1.0 is normal grip. For a drift car setup, try setting the grip of the "
"rear wheels slightly lower than the front wheels, or use a lower value to "
"simulate tire wear.\n"
"It's best to set this to 1.0 when starting out."
msgstr ""
"Cela détermine combien d'adhérence possède cette roue. Elle est combiné avec "
"le paramètre de friction de la surface avec laquelle la roue est en contact. "
"0.0 signifie pas d'adhérence, 1.0 est l'adhérence normale. Pour une "
"configuration de voiture de dérapage, essayez de définir l'adhérence des "
"roues arrière légèrement plus bas que celle des roues avant, ou utilisez une "
"valeur inférieure pour simuler l'usure du pneu.\n"
"Il est préférable de définir cela à 1.0 au début."

msgid "The radius of the wheel in meters."
msgstr "La rayon de la roue en mètres."

msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
"origin point of your wheel (the gizmo in Godot) to the position the wheel "
"will take when bottoming out, then use the rest length to move the wheel down "
"to the position it should be in when the car is in rest."
msgstr ""
"Il s'agit de la distance en mètres de laquelle la roue est abaissée de son "
"point d'origine. Ne définissez pas ceci à 0.0 et déplacez la roue à la "
"position, déplacez plutôt le point d'origine de votre roue (le manipulateur "
"dans Godot) à la position que la roue prendra lorsque la suspension est au "
"minimum, puis utilisez la longueur de repos pour déplacer la roue vers le bas "
"à la position à laquelle elle devrait être lorsque la voiture est au repos."

msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will resist body roll, while a value of 0.0 will be prone to "
"rolling over."
msgstr ""
"Cette valeur affecte la roulade de votre véhicule. Si défini à 1.0 pour "
"toutes les roues, votre véhicule résistera aux roulades, tandis qu'une valeur "
"de 0.0 provoquera des roulades."

msgid ""
"A container that arranges its child controls vertically and wraps them around "
"at the borders."
msgstr ""
"Un conteneur qui arrange ses contrôles enfants verticalement et fait "
"automatiquement un retour à la ligne aux frontières."

msgid ""
"A variant of [FlowContainer] that can only arrange its child controls "
"vertically, wrapping them around at the borders. This is similar to how text "
"in a book wraps around when no more words can fit on a line, except "
"vertically."
msgstr ""
"Une variante de [FlowContainer] qui organise ses contrôles enfants "
"verticalement, faisant automatiquement un retour à la ligne (\"wrapping\", "
"litt. enrouler) aux frontières. C'est similaire à la façon dont le texte dans "
"un livre revient à la ligne automatiquement lorsque aucun mot de plus ne peut "
"rentrer sur une ligne."

msgid "Base resource for video streams."
msgstr "Ressource de base pour les flux vidéo."

msgid ""
"Base resource type for all video streams. Classes that derive from "
"[VideoStream] can all be used as resource types to play back videos in "
"[VideoStreamPlayer]."
msgstr ""
"Type de ressources de base pour tous les flux vidéo. Les classes qui dérivent "
"de [VideoStream] peuvent tous être utilisées comme types de ressources pour "
"lire des vidéos dans [VideoStreamPlayer]."

msgid "Playing videos"
msgstr "Lire des vidéos"

msgid ""
"Called when the video starts playing, to initialize and return a subclass of "
"[VideoStreamPlayback]."
msgstr ""
"Appelée lorsque la vidéo commence à jouer, pour initialiser et renvoyer une "
"sous-classe de [VideoStreamPlayback]."

msgid ""
"The video file path or URI that this [VideoStream] resource handles.\n"
"For [VideoStreamTheora], this filename should be an Ogg Theora video file "
"with the [code].ogv[/code] extension."
msgstr ""
"Le chemin de fichier vidéo ou URI que cette ressource [VideoStream] gère.\n"
"Pour [VideoStreamTheora], ce nom de fichier devrait être un fichier vidéo Ogg "
"Theora avec l'extension [code].ogv[/code]."

msgid ""
"Internal class used by [VideoStream] to manage playback state when played "
"from a [VideoStreamPlayer]."
msgstr ""
"Classe interne utilisée par [VideoStream] pour gérer l'état de lecture "
"lorsque joué depyis un [VideoStreamPlayer]."

msgid ""
"This class is intended to be overridden by video decoder extensions with "
"custom implementations of [VideoStream]."
msgstr ""
"Cette classe est destinée à être redéfinie par des extensions de décodeur "
"vidéo avec des implémentations personnalisées de [VideoStream]."

msgid "Returns the number of audio channels."
msgstr "Renvoie le nombre de canaux audio."

msgid "Returns the video duration in seconds, if known, or 0 if unknown."
msgstr ""
"Renvoie la durée de la vidéo en secondes, si elle est connue, ou 0 si elle "
"est inconnue."

msgid "Returns the audio sample rate used for mixing."
msgstr "Renvoie le taux d'échantillonnage audio utilisé pour le mixage."

msgid ""
"Return the current playback timestamp. Called in response to the [member "
"VideoStreamPlayer.stream_position] getter."
msgstr ""
"Renvoie l’horodatage de lecture actuel. Appelée en réponse au getter [member "
"VideoStreamPlayer.stream_position]."

msgid "Allocates a [Texture2D] in which decoded video frames will be drawn."
msgstr ""
"Alloue une [Texture2D] dans laquelle les trames vidéos décodées seront "
"dessinées."

msgid "Returns the paused status, as set by [method _set_paused]."
msgstr "Renvoie le statut de pause, tel que défini par [method _set_paused]."

msgid ""
"Returns the playback state, as determined by calls to [method _play] and "
"[method _stop]."
msgstr ""
"Renvoie l'état de la lecture, tel que déterminé par les appels à [method "
"_play] et [method _stop]."

msgid ""
"Called in response to [member VideoStreamPlayer.autoplay] or [method "
"VideoStreamPlayer.play]. Note that manual playback may also invoke [method "
"_stop] multiple times before this method is called. [method _is_playing] "
"should return [code]true[/code] once playing."
msgstr ""
"Appelée en réponse à [member VideoStreamPlayer.autoplay] ou [method "
"VideoStreamPlayer.play]. Notez que la lecture manuelle peut également "
"invoquer [method _stop] plusieurs fois avant que cette méthode soit appelée. "
"[method _is_playing] devrait renvoyer [code]true[/code] lors de la lecture."

msgid ""
"Seeks to [param time] seconds. Called in response to the [member "
"VideoStreamPlayer.stream_position] setter."
msgstr ""
"Se rend au temps [param time], en secondes. Appelée en réponse au setter "
"[member VideoStreamPlayer.stream_position]."

msgid ""
"Select the audio track [param idx]. Called when playback starts, and in "
"response to the [member VideoStreamPlayer.audio_track] setter."
msgstr ""
"Sélectionne la piste audio d'index [param idx]. Appelée quand la lecture "
"commence, et en réponse au setter de [member VideoStreamPlayer.audio_track]."

msgid ""
"Set the paused status of video playback. [method _is_paused] must return "
"[param paused]. Called in response to the [member VideoStreamPlayer.paused] "
"setter."
msgstr ""
"Définit l'état de la pause de la lecture vidéo. [method _is_paused] doit "
"renvoyer [param paused]. Appelée en réponse au setter de [member "
"VideoStreamPlayer.paused]."

msgid ""
"Stops playback. May be called multiple times before [method _play], or in "
"response to [method VideoStreamPlayer.stop]. [method _is_playing] should "
"return [code]false[/code] once stopped."
msgstr ""
"Arrête la lecture. Peut être appelée plusieurs fois avant [method _play], ou "
"en réponse à [method VideoStreamPlayer.stop]. [method _is_playing] devrait "
"renvoyer [code]false[/code] une fois arrêtée."

msgid "A control used for video playback."
msgstr "Un contrôle utilisé pour la lecture vidéo."

msgid ""
"A control used for playback of [VideoStream] resources.\n"
"Supported video formats are [url=https://www.theora.org/]Ogg Theora[/url] "
"([code].ogv[/code], [VideoStreamTheora]) and any format exposed via a "
"GDExtension plugin.\n"
"[b]Warning:[/b] On Web, video playback [i]will[/i] perform poorly due to "
"missing architecture-specific assembly optimizations."
msgstr ""
"Un contrôle utilisé pour la lecture des ressources [VideoStream].\n"
"Les formats vidéo supportés sont [url=https://www.theora.org/]Ogg Theora[/"
"url] ([code].ogv[/code], [VideoStreamTheora]) et tout format exposé par un "
"plugin GDExtension.\n"
"[b]Attention :[/b] Sur le Web, la lecture vidéo [i]se produira[/i] mal en "
"raison de l'absence d'optimisations d'assemblies spécifiques à l'architecture."

msgid "The length of the current stream, in seconds."
msgstr "La longueur du flux courant, en secondes."

msgid ""
"Returns the video stream's name, or [code]\"<No Stream>\"[/code] if no video "
"stream is assigned."
msgstr ""
"Renvoie le nom du flux vidéo, ou [code]\"<No Stream>\"[/code] si aucun flux "
"vidéo n'est assigné."

msgid "Returns the current frame as a [Texture2D]."
msgstr "Renvoie la trame actuelle en une [Texture]."

msgid ""
"Returns [code]true[/code] if the video is playing.\n"
"[b]Note:[/b] The video is still considered playing if paused during playback."
msgstr ""
"Renvoie [code]true[/code] si la vidéo joue.\n"
"[b]Note :[/b] La vidéo est toujours considérée comme en train de jouer si "
"elle est mise en pause pendant la lecture."

msgid ""
"Starts the video playback from the beginning. If the video is paused, this "
"will not unpause the video."
msgstr ""
"Commence la lecture vidéo dès le début. Si la vidéo est en pause, cela ne la "
"fera pas reprendre."

msgid ""
"Stops the video playback and sets the stream position to 0.\n"
"[b]Note:[/b] Although the stream position will be set to 0, the first frame "
"of the video stream won't become the current frame."
msgstr ""
"Arrête la lecture vidéo et fixe la position du flux à 0.\n"
"[b]Note :[/b] Bien que la position du flux soit définie à 0, la première "
"trame du flux vidéo ne deviendra pas le trame actuel."

msgid "The embedded audio track to play."
msgstr "La piste audio intégrée à lire."

msgid "If [code]true[/code], playback starts when the scene loads."
msgstr "Si [code]true[/code], la lecture commence au chargement de la scène."

msgid "Amount of time in milliseconds to store in buffer while playing."
msgstr "La durée en millisecondes à stocker dans la mémoire lors de la lecture."

msgid "Audio bus to use for sound playback."
msgstr "Le bus audio pour la lecture de sons."

msgid ""
"If [code]true[/code], the video scales to the control size. Otherwise, the "
"control minimum size will be automatically adjusted to match the video "
"stream's dimensions."
msgstr ""
"Si [code]true[/code], la taille des contrôles dépendront de la vidéo. Sinon, "
"la taille minimale des contrôles sera automatiquement ajustée pour "
"correspondre aux dimensions du flux vidéo."

msgid "If [code]true[/code], the video restarts when it reaches its end."
msgstr "Si [code]true[/code], la vidéo redémarre quand elle atteint sa fin."

msgid "If [code]true[/code], the video is paused."
msgstr "Si [code]true[/code], la vidéo est en pause."

msgid ""
"The stream's current speed scale. [code]1.0[/code] is the normal speed, while "
"[code]2.0[/code] is double speed and [code]0.5[/code] is half speed. A speed "
"scale of [code]0.0[/code] pauses the video, similar to setting [member "
"paused] to [code]true[/code]."
msgstr ""
"L'échelle de vitesse actuelle du flux. [code]1.0[/code] est la vitesse "
"normale, tandis que [code]2.0[/code] est une vitesse doublée et [code]0.5[/"
"code] est une vitesse divisée par 2. Une échelle de vitesse de [code]0.0[/"
"code] met en pause la vidéo, comme en définissant [member paused] à "
"[code]true[/code]."

msgid "The assigned video stream. See description for supported formats."
msgstr "Le flux vidéo assigné. Voir la description pour les formats supportés."

msgid "The current position of the stream, in seconds."
msgstr "La position actuelle du flux, en secondes."

msgid "Audio volume as a linear value."
msgstr "Le volume sonore comme valeur linéaire."

msgid "Audio volume in dB."
msgstr "Volume audio en dB."

msgid "Emitted when playback is finished."
msgstr "Émis lorsque la lecture est terminée."

msgid "[VideoStream] resource for Ogg Theora videos."
msgstr "Ressource [VideoStream] pour les vidéos Ogg Theora."

msgid ""
"Returns the first valid [World2D] for this viewport, searching the [member "
"world_2d] property of itself and any Viewport ancestor."
msgstr ""
"Renvoie le premier [World2D] valide de ce viewport, en cherchant dans sa "
"propriété [member world_2d] ainsi que celle de ses parents Viewport."

msgid "Returns the currently active 3D camera."
msgstr "Renvoie la caméra 3D actuellement active."

msgid ""
"Returns the mouse's position in this [Viewport] using the coordinate system "
"of this [Viewport]."
msgstr ""
"Renvoie la position de la souris dans ce [Viewport] en utilisant le système "
"de coordonnées de ce [Viewport]."

msgid "Returns the viewport's RID from the [RenderingServer]."
msgstr "Renvoie le RID du viewport depuis le [RenderingServer]."

msgid "Returns the visible rectangle in global screen coordinates."
msgstr ""
"Renvoie le rectangle de visibilité à l'écran dans les coordonnées globales."

msgid "Returns [code]true[/code] if the drag operation is successful."
msgstr "Renvoie [code]true[/code] si l'opération de glisser-déposer a réussi."

msgid "Use [method push_input] instead."
msgstr "Utilisez [method push_input] à la place."

msgid "If [code]true[/code], the viewport will process 2D audio streams."
msgstr "Si [code]true[/code], la fenêtre d'affichage gèrera les flux audio 2D."

msgid "If [code]true[/code], the viewport will process 3D audio streams."
msgstr "Si [code]true[/code], la fenêtre d'affichage gèrera les flux audio 3D."

msgid ""
"The canvas transform of the viewport, useful for changing the on-screen "
"positions of all child [CanvasItem]s. This is relative to the global canvas "
"transform of the viewport."
msgstr ""
"La transformation du canevas de la fenpetre d'affichage, utile pour changer "
"les positions à l'écran de tous les [CanvasItem] enfants. C'est relatif à la "
"transformation globale du canevas de la fenêtre d'affichage."

msgid "The overlay mode for test rendered geometry in debug purposes."
msgstr ""
"Le mode de surcouche (\"overlay\") pour tester la géométrie rendue lors du "
"débogage."

msgid "Disable 3D rendering (but keep 2D rendering)."
msgstr "Désactive le rendu 3D (mais garde le rendu 2D)."

msgid ""
"The global canvas transform of the viewport. The canvas transform is relative "
"to this."
msgstr ""
"La transformation globale de la toile de cette fenêtre d'affichage. La "
"transformation en toile est relative à cela."

msgid "If [code]true[/code], the viewport will not receive input events."
msgstr ""
"Si [code]true[/code], la fenêtre d'affichage ne recevra pas les événements "
"d'entrée."

msgid ""
"If [code]true[/code], the GUI controls on the viewport will lay pixel "
"perfectly."
msgstr ""
"Si [code]true[/code], les contrôles de l'interface graphique dans la fenêtre "
"d'affichage s'alignent au pixel près."

msgid "The subdivision amount of the first quadrant on the shadow atlas."
msgstr "La quantité de sous-division du premier quadrant de l'atlas de l'ombre."

msgid "The subdivision amount of the second quadrant on the shadow atlas."
msgstr ""
"La quantité de sous-division du deuxième quadrant de l'atlas de l'ombre."

msgid "The subdivision amount of the third quadrant on the shadow atlas."
msgstr ""
"La quantité de sous-division du troisième quadrant de l'atlas de l'ombre."

msgid "The subdivision amount of the fourth quadrant on the shadow atlas."
msgstr ""
"La quantité de sous-division du quatrième quadrant de l'atlas de l'ombre."

msgid ""
"If [code]true[/code], the viewport should render its background as "
"transparent."
msgstr ""
"Si [code]true[/code], la fenêtre d'affichage doit faire le rendu de l'arrière-"
"plan de manière transparente."

msgid "The custom [World2D] which can be used as 2D environment source."
msgstr ""
"Le [World3D] personnalisé qui peut être utilisé comme source pour "
"l'environnement 2D."

msgid "This quadrant will not be used."
msgstr "Ce quadrant ne sera pas utilisé."

msgid "This quadrant will only be used by one shadow map."
msgstr "Ce quadrant ne sera utilisé que par une seule carte d'ombre."

msgid "This quadrant will be split in 4 and used by up to 4 shadow maps."
msgstr ""
"Ce quadrant sera découpé en 4, et utilisé pour jusqu'à 4 parties d'ombre."

msgid "This quadrant will be split 16 ways and used by up to 16 shadow maps."
msgstr ""
"Ce quadrant sera découpé en 16, et utilisé pour jusqu'à 16 parties d'ombre."

msgid "This quadrant will be split 64 ways and used by up to 64 shadow maps."
msgstr ""
"Ce quadrant sera découpé en 64, et utilisé pour jusqu'à 64 parties d'ombre."

msgid ""
"Represents the size of the [enum PositionalShadowAtlasQuadrantSubdiv] enum."
msgstr ""
"Représente la taille de l'énumération [enum "
"PositionalShadowAtlasQuadrantSubdiv]."

msgid "Represents the size of the [enum Scaling3DMode] enum."
msgstr "Représente la taille de l'énumération [enum Scaling3DMode]."

msgid "Represents the size of the [enum MSAA] enum."
msgstr "Représente la taille de l'énumération [enum MSAA]."

msgid "Represents the size of the [enum AnisotropicFiltering] enum."
msgstr "Représente la taille de l’énumération [enum AnisotropicFiltering]."

msgid "Represents the size of the [enum ScreenSpaceAA] enum."
msgstr "Représente la taille de l'énumération [enum ScreenSpaceAA]."

msgid "Amount of objects in frame."
msgstr "Quantité d’objets dans le cadre."

msgid "Amount of vertices in frame."
msgstr "Quantité de sommets dans l'image."

msgid "Amount of draw calls in frame."
msgstr "Le nombre de draw calls à chaque trame."

msgid "Represents the size of the [enum RenderInfo] enum."
msgstr "Représente la taille de l'énumération [enum RenderInfo]."

msgid "Represents the size of the [enum RenderInfoType] enum."
msgstr "Représente la taille de l'énumération [enum RenderInfoType]."

msgid "Objects are displayed normally."
msgstr "Les objets sont affichés normalement."

msgid "Represents the size of the [enum DefaultCanvasItemTextureFilter] enum."
msgstr ""
"Représente la taille de l’énumération [enum DefaultCanvasItemTextureFilter]."

msgid "Represents the size of the [enum DefaultCanvasItemTextureRepeat] enum."
msgstr ""
"Représente la taille de l’énumération [enum DefaultCanvasItemTextureRepeat]."

msgid "Represents the size of the [enum SDFOversize] enum."
msgstr "Représente la taille de l'énumération [enum SDFOversize]."

msgid "Represents the size of the [enum SDFScale] enum."
msgstr "Représente la taille de l'énumération [enum SDFScale]."

msgid "Represents the size of the [enum VRSMode] enum."
msgstr "Représente la taille de l'énumération [enum VRSMode]."

msgid "Represents the size of the [enum VRSUpdateMode] enum."
msgstr "Représente la taille de l'énumération [enum VRSUpdateMode]."

msgid "Corresponds to [constant Node.PROCESS_MODE_INHERIT]."
msgstr "Correspond à [constant Node.PROCESS_MODE_INHERIT]."

msgid "Corresponds to [constant Node.PROCESS_MODE_ALWAYS]."
msgstr "Correspond à [constant Node.PROCESS_MODE_ALWAYS]."

msgid "Corresponds to [constant Node.PROCESS_MODE_WHEN_PAUSED]."
msgstr "Correspond à [constant Node.PROCESS_MODE_WHEN_PAUSED]."

msgid "The VisibleOnScreenNotifier2D's bounding rectangle."
msgstr "Le rectangle délimitant du VisibleOnScreenNotifier2D."

msgid "Emitted when the VisibleOnScreenNotifier2D enters the screen."
msgstr "Émis lorsque le VisibleOnScreenNotifier2D apparaît à l'écran."

msgid "Emitted when the VisibleOnScreenNotifier2D exits the screen."
msgstr "Émis lorsque le VisibleOnScreenNotifier2D quitte l’écran."

msgid "The [VisibleOnScreenNotifier3D]'s bounding box."
msgstr "La boîte délimitante du [VisibleOnScreenNotifier3D]."

msgid "Parent of all visual 3D nodes."
msgstr "Le parent de tous les nœuds visuels 3D."

msgid "A custom shader program with a visual editor."
msgstr "Un programme de shader personnalisé dans l'éditeur visuel."

msgid ""
"This class provides a graph-like visual editor for creating a [Shader]. "
"Although [VisualShader]s do not require coding, they share the same logic "
"with script shaders. They use [VisualShaderNode]s that can be connected to "
"each other to control the flow of the shader. The visual shader graph is "
"converted to a script shader behind the scenes."
msgstr ""
"Cette classe fournit un éditeur visuel en forme de graphe pour créer un "
"[Shader]. Bien que les [VisualShader]s ne nécessitent pas de codage, ils "
"partagent la même logique que les shaders en script. Ils utilisent des "
"[VisualShaderNode]s qui peuvent être connectés l'un à l'autre pour contrôler "
"le flux du shader. Le graphe de shader visuel est converti en shader en "
"script dans les coulisses."

msgid "Using VisualShaders"
msgstr "Utiliser VisualShaders"

msgid "Adds the specified [param node] to the shader."
msgstr "Ajoute le nœud [param node] spécifié au shader."

msgid "Adds a new varying value node to the shader."
msgstr "Ajoute un nouveau nœud de valeur varying au shader."

msgid "Attaches the given node to the given frame."
msgstr "Attache le nœud donné au cadre donné."

msgid ""
"Returns [code]true[/code] if the specified nodes and ports can be connected "
"together."
msgstr ""
"Renvoie [code]true[/code] si les nœuds spécifiés et les ports peuvent être "
"connectés ensemble."

msgid "Connects the specified nodes and ports."
msgstr "Connecte les nœuds et les ports spécifiés."

msgid ""
"Connects the specified nodes and ports, even if they can't be connected. Such "
"connection is invalid and will not function properly."
msgstr ""
"Connecte les nœuds et les ports spécifiés, même s'ils ne peuvent pas être "
"connectés. Cette connexion est invalide et ne fonctionnera pas correctement."

msgid "Detaches the given node from the frame it is attached to."
msgstr "Détache le nœud donné du cadre auquel il est attaché."

msgid ""
"Returns the shader node instance with specified [param type] and [param id]."
msgstr ""
"Renvoie l'instance de nœud de shader avec le type [param type] et "
"l'identifiant [param id] spécifiés."

msgid "Returns the list of connected nodes with the specified type."
msgstr "Renvoie la liste des nœuds connectés avec le type spécifié."

msgid "Returns the list of all nodes in the shader with the specified type."
msgstr "Renvoie la liste de tous les nœuds du shader avec le type spécifié."

msgid "Returns the position of the specified node within the shader graph."
msgstr "Renvoie la position du nœud spécifié dans le graphe du shader."

msgid "Returns next valid node ID that can be added to the shader graph."
msgstr ""
"Renvoie le prochain identifiant de nœud valide qui peut être ajouté au graphe "
"de shader."

msgid ""
"Returns [code]true[/code] if the shader has a varying with the given [param "
"name]."
msgstr ""
"Renvoie [code]true[/code] si le shader a un varying avec le nom [param name] "
"donné."

msgid ""
"Returns [code]true[/code] if the specified node and port connection exist."
msgstr ""
"Renvoie [code]true[/code] si le nœud et le port de connexion spécifiés "
"existent."

msgid "Removes the specified node from the shader."
msgstr "Retire les nœuds spécifiés du shader."

msgid ""
"Removes a varying value node with the given [param name]. Prints an error if "
"a node with this name is not found."
msgstr ""
"Retire un nœud de valeur de varying avec le nom [param name] donné. Affiche "
"une erreur si un nœud avec ce nom n'est pas trouvé."

msgid "Replaces the specified node with a node of new class type."
msgstr "Remplace le nœud spécifié avec un nœud du type de la nouvelle classe."

msgid "Sets the mode of this shader."
msgstr "Règle le mode de ce shader."

msgid "Sets the position of the specified node."
msgstr "Définit la position du nœud spécifié."

msgid "This property does nothing and always equals to zero."
msgstr "Cette propriété ne fait rien et est toujours égale à zéro."

msgid "Deprecated."
msgstr "Obsolète."

msgid "A vertex shader, operating on vertices."
msgstr "Un shader de sommet, s'appliquant sur chacun des sommets."

msgid "A fragment shader, operating on fragments (pixels)."
msgstr "Un shader de fragment, s'appliquant sur chacun des pixels (fragments)."

msgid "A shader for light calculations."
msgstr "Un shader pour les calculs de lumière."

msgid "A function for the \"start\" stage of particle shader."
msgstr "Une fonction pour le stade \"start\" (départ) du shader de particule."

msgid "A function for the \"process\" stage of particle shader."
msgstr ""
"Une fonction pour le stade \"process\" (traitement) du shader de particules."

msgid ""
"A function for the \"collide\" stage (particle collision handler) of particle "
"shader."
msgstr ""
"Une fonction pour le stade \"collide\" (gestionnaire des collisions des "
"particules) du shader de particules."

msgid ""
"A function for the \"start\" stage of particle shader, with customized output."
msgstr ""
"Une fonction pour le stade \"start\" (départ) du shader de particule, avec "
"une sortie personnalisée."

msgid ""
"A function for the \"process\" stage of particle shader, with customized "
"output."
msgstr ""
"Une fonction pour le stade \"process\" (traitement) du shader de particules, "
"avec une sortie personnalisée."

msgid "A shader for 3D environment's sky."
msgstr "Un shader pour un ciel d'environnement 3D."

msgid "A compute shader that runs for each froxel of the volumetric fog map."
msgstr ""
"Un shader de calcul qui s'exécute pour chaque froxel de la carte de "
"brouillard volumétrique."

msgid "Represents the size of the [enum Type] enum."
msgstr "Représente la taille de l'énumération [enum Type]."

msgid ""
"Varying is passed from [code]Vertex[/code] function to [code]Fragment[/code] "
"and [code]Light[/code] functions."
msgstr ""
"Le varying est passé de la fonction [code]Vertex[/code] aux fonctions "
"[code]Fragment[/code] et [code]Light[/code]."

msgid ""
"Varying is passed from [code]Fragment[/code] function to [code]Light[/code] "
"function."
msgstr ""
"Le varying est passé de la fonction [code]Fragment[/code] à la fonction "
"[code]Light[/code]."

msgid "Represents the size of the [enum VaryingMode] enum."
msgstr "Représente la taille de l'énumération [enum VaryingMode]."

msgid "Varying is of type [float]."
msgstr "Le varying est du type [float]."

msgid "Varying is of type [int]."
msgstr "Le varying est du type [int]."

msgid "Varying is of type unsigned [int]."
msgstr "Le varying est du type [int] non signé."

msgid "Varying is of type [Vector2]."
msgstr "Le varying est de type [Vector2]."

msgid "Varying is of type [Vector3]."
msgstr "Le varying est du type [Vector3]."

msgid "Varying is of type [Vector4]."
msgstr "Le varying est du type [Vector4]."

msgid "Varying is of type [bool]."
msgstr "Le varying est du type [bool]."

msgid "Varying is of type [Transform3D]."
msgstr "Le varying est du type [Transform3D]."

msgid "Represents the size of the [enum VaryingType] enum."
msgstr "Représente la taille de l'énumération [enum VaryingType]."

msgid "Indicates an invalid [VisualShader] node."
msgstr "Indique un nœud [VisualShader] invalide."

msgid "Indicates an output node of [VisualShader]."
msgstr "Indique un nœud de sortie du [VisualShader]."

msgid "Represents the size of the [enum PortType] enum."
msgstr "Représente la taille de l'énumération [enum PortType]."

msgid "Represents the size of the [enum BillboardType] enum."
msgstr "Représente la taille de l'énumération [enum BillboardType]."

msgid "A boolean constant to be used within the visual shader graph."
msgstr "Un booléen constant à utiliser dans le graphe de shader visuel."

msgid "A boolean constant which represents a state of this node."
msgstr "Un booléen constant qui représente l'état de ce nœud."

msgid "A boolean parameter to be used within the visual shader graph."
msgstr "Un paramètre booléen à utiliser dans le graphe de shader visuel."

msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr "Sera traduit en [code]uniform bool[/code] dans le code du shader."

msgid "A default value to be assigned within the shader."
msgstr "Une valeur par défaut à attribuer dans le shader."

msgid "Enables usage of the [member default_value]."
msgstr "Active l'utilisation de [member default_value]."

msgid "Clamps a value within the visual shader graph."
msgstr "Borne une valeur dans le graphe de shader visuel."

msgid ""
"Constrains a value to lie between [code]min[/code] and [code]max[/code] "
"values."
msgstr "Limite une valeur aux bornes [code]min[/code] et [code]max[/code]."

msgid "A floating-point scalar."
msgstr "Un scalaire à virgule flottante."

msgid "An integer scalar."
msgstr "Un scalaire entier."

msgid "An unsigned integer scalar."
msgstr "Un scalaire entier non signé."

msgid "A 2D vector type."
msgstr "Un type de vecteur 2D."

msgid "A 3D vector type."
msgstr "Un type de vecteur 3D."

msgid "A 4D vector type."
msgstr "Un type de vecteur 4D."

msgid "Represents the size of the [enum OpType] enum."
msgstr "Représente la taille de l'énumération [enum OpType]."

msgid "A [Color] constant to be used within the visual shader graph."
msgstr "Une [Color] constante à utiliser dans le graphe de shader visuel."

msgid "A [Color] constant which represents a state of this node."
msgstr "Une [Color] constante qui représente l'état de ce nœud."

msgid "A [Color] function to be used within the visual shader graph."
msgstr "Une fonction [Color] à utiliser dans le graphe de shader visuel."

msgid ""
"Accept a [Color] to the input port and transform it according to [member "
"function]."
msgstr ""
"Accepte une [Color] pour le port d'entrée et la transforme en fonction de "
"[member function]."

msgid ""
"Converts the color to grayscale using the following formula:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float max1 = max(c.r, c.g);\n"
"float max2 = max(max1, c.b);\n"
"float max3 = max(max1, max2);\n"
"return vec3(max3, max3, max3);\n"
"[/codeblock]"
msgstr ""
"Convertit une couleur en niveau de gris à partir de la formule suivante :\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float max1 = max(c.r, c.g);\n"
"float max2 = max(max1, c.b);\n"
"float max3 = max(max1, max2);\n"
"return vec3(max3, max3, max3);\n"
"[/codeblock]"

msgid "Converts HSV vector to RGB equivalent."
msgstr "Convertit le vecteur HSV en équivalent RGB."

msgid "Converts RGB vector to HSV equivalent."
msgstr "Convertit le vecteur RGB en équivalent HSV."

msgid ""
"Applies sepia tone effect using the following formula:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float r = (c.r * 0.393) + (c.g * 0.769) + (c.b * 0.189);\n"
"float g = (c.r * 0.349) + (c.g * 0.686) + (c.b * 0.168);\n"
"float b = (c.r * 0.272) + (c.g * 0.534) + (c.b * 0.131);\n"
"return vec3(r, g, b);\n"
"[/codeblock]"
msgstr ""
"Applique un effet sépia à partir de la formule suivante :\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float r = (c.r * 0.393) + (c.g * 0.769) + (c.b * 0.189);\n"
"float g = (c.r * 0.349) + (c.g * 0.686) + (c.b * 0.168);\n"
"float b = (c.r * 0.272) + (c.g * 0.534) + (c.b * 0.131);\n"
"return vec3(r, g, b);\n"
"[/codeblock]"

msgid "Represents the size of the [enum Function] enum."
msgstr "Représente la taille de l'énumération [enum Function]."

msgid "A [Color] operator to be used within the visual shader graph."
msgstr "Un opérateur de [Color] à utiliser dans le graphe de shader visuel."

msgid "Applies [member operator] to two color inputs."
msgstr "Appliquer [member operator] aux deux entrées."

msgid "An operator to be applied to the inputs."
msgstr "Un opérateur à appliquer aux entrées."

msgid ""
"Produce a difference effect with the following formula:\n"
"[codeblock]\n"
"result = abs(a - b);\n"
"[/codeblock]"
msgstr ""
"Produire un effet de différence avec la formule suivante :\n"
"[codeblock]\n"
"resultat = abs(a - b);\n"
"[/codeblock]"

msgid ""
"Produce a darken effect with the following formula:\n"
"[codeblock]\n"
"result = min(a, b);\n"
"[/codeblock]"
msgstr ""
"Produit un effet d'assombrissement à partir de la formule suivante :\n"
"[codeblock]\n"
"result = min(a, b);\n"
"[/codeblock]"

msgid ""
"Produce a lighten effect with the following formula:\n"
"[codeblock]\n"
"result = max(a, b);\n"
"[/codeblock]"
msgstr ""
"Produit un effet d'éclaircissement à partir de la formule suivante :\n"
"[codeblock]\n"
"result = max(a, b);\n"
"[/codeblock]"

msgid ""
"Produce a burn effect with the following formula:\n"
"[codeblock]\n"
"result = vec3(1.0) - (vec3(1.0) - a) / b;\n"
"[/codeblock]"
msgstr ""
"Produit un effet de brûlure avec la formule suivante :\n"
"[codeblock]\n"
"resultat = vec3(1.0) - (vec3(1.0) - a) / b;\n"
"[/codeblock]"

msgid "Represents the size of the [enum Operator] enum."
msgstr "Représente la taille de l'énumération [enum Operator]."

msgid "A [Color] parameter to be used within the visual shader graph."
msgstr "Un paramètre [Color] à utiliser dans le graphe de shader visuel."

msgid "Translated to [code]uniform vec4[/code] in the shader language."
msgstr "Sera traduit en [code]uniform vec4[/code] dans le code du shader."

msgid "A comparison function for common types within the visual shader graph."
msgstr ""
"Une fonction de comparaison pour les types courants dans le graphe de shader "
"visuel."

msgid ""
"Compares [code]a[/code] and [code]b[/code] of [member type] by [member "
"function]. Returns a boolean scalar. Translates to [code]if[/code] "
"instruction in shader code."
msgstr ""
"Compare [code]a[/code] et [code]b[/code] du type [member type] par la "
"fonction [member function]. Renvoie un scalaire booléen. Traduit en "
"instruction [code]if[/code] dans le code du shader."

msgid "A comparison function."
msgstr "Une fonction de comparaison."

msgid "The type to be used in the comparison."
msgstr "Le type à utiliser dans la comparaison."

msgid "A boolean type."
msgstr "Un type booléen."

msgid "A transform ([code]mat4[/code]) type."
msgstr "Le type de transformation ([code]mat4[/code])."

msgid "Represents the size of the [enum ComparisonType] enum."
msgstr "Représente la taille de l'énumération [enum ComparisonType]."

msgid "Comparison for equality ([code]a == b[/code])."
msgstr "La comparaison pour l'égalité ([code]a == b[/code])."

msgid "Comparison for inequality ([code]a != b[/code])."
msgstr "La comparaison pour l'égalité ([code]a != b[/code])."

msgid ""
"Comparison for greater than ([code]a > b[/code]). Cannot be used if [member "
"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
msgstr ""
"Comparaison pour supérieur à ([code]a > b[/code]). Ne peut pas être utilisé "
"si [member type] est défini à [constant CTYPE_BOOLEAN] ou [constant "
"CTYPE_TRANSFORM]."

msgid ""
"Comparison for greater than or equal ([code]a >= b[/code]). Cannot be used if "
"[member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
msgstr ""
"Comparaison pour supérieur ou égal à ([code]a >= b[/code]). Ne peut pas être "
"utilisé si [member type] est défini à [constant CTYPE_BOOLEAN] ou [constant "
"CTYPE_TRANSFORM]."

msgid ""
"Comparison for less than ([code]a < b[/code]). Cannot be used if [member "
"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
msgstr ""
"Comparaison pour inférieur à ([code]a < b[/code]). Ne peut pas être utilisé "
"si [member type] est défini à [constant CTYPE_BOOLEAN] ou [constant "
"CTYPE_TRANSFORM]."

msgid "Represents the size of the [enum Condition] enum."
msgstr "Représente la taille de l'énumération [enum Condition]."

msgid "A base type for the constants within the visual shader graph."
msgstr "Un type de base pour les constantes dans le graphe de shader visuel."

msgid ""
"Translated to [code]texture(cubemap, vec3)[/code] in the shader language. "
"Returns a color vector and alpha channel as scalar."
msgstr ""
"Sera traduit en [code]texture(cubemap, vec3)[/code] dans le code du shader. "
"Renvoie une couleur dans un vecteur et le canal alpha comme scalaire."

msgid "Represents the size of the [enum Source] enum."
msgstr "Représente la taille de l'énumération [enum Source]."

msgid "No hints are added to the uniform declaration."
msgstr "Aucun indice n'a été ajouté à la déclaration de l'uniform."

msgid ""
"Adds [code]hint_normal[/code] as hint to the uniform declaration, which "
"internally converts the texture for proper usage as normal map."
msgstr ""
"Ajoute [code]hint_normal[/code] comme indication de la déclaration d'uniform, "
"qui convertit en interne la texture pour l'utiliser de manière appropriée "
"comme normal map."

msgid "Comes with a built-in editor for texture's curves."
msgstr "Vient avec un éditeur intégré pour les courbes de texture."

msgid "The source texture."
msgstr "La texture source."

msgid "Performs a [CurveXYZTexture] lookup within the visual shader graph."
msgstr ""
"Effectue une recherche de [CurveXYZTexture] dans le graphe de shader visuel."

msgid ""
"Virtual class to define custom [VisualShaderNode]s for use in the Visual "
"Shader Editor."
msgstr ""
"Classe virtuelle pour définir des [VisualShaderNode]s personnalisés à "
"utiliser dans l'éditeur de shaders visuels."

msgid "Visual Shader plugins"
msgstr "Plugins de Visual Shader"

msgid ""
"Override this method to define the description of the associated custom node "
"in the Visual Shader Editor's members dialog.\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Redéfinissez cette méthode pour définir la description du nœud personnalisé "
"associé dans la fenêtre des membres de l'éditeur de shader visuel.\n"
"La définition de cette méthode est [b]optionnelle[/b]."

msgid "Calculates a derivative within the visual shader graph."
msgstr "Calcule une dérivée dans le graphe de shader visuel."

msgid ""
"This node is only available in [code]Fragment[/code] and [code]Light[/code] "
"visual shaders."
msgstr ""
"Ce nœud n'est disponible que dans les shaders visuels [code]Fragment[/code] "
"et [code]Light[/code]."

msgid "Sum of absolute derivative in [code]x[/code] and [code]y[/code]."
msgstr ""
"La somme d'une dérivation absolue dans [code]x[/code] et [code]y[/code]."

msgid "Derivative in [code]x[/code] using local differencing."
msgstr "Dérive selon [code]x[/code] par différenciation locale."

msgid "Derivative in [code]y[/code] using local differencing."
msgstr "Dérive selon [code]y[/code] par différenciation locale."

msgid "Represents the size of the [enum Precision] enum."
msgstr "Représente la taille de l'énumération [enum Precision]."

msgid ""
"Calculates the determinant of a [Transform3D] within the visual shader graph."
msgstr ""
"Calcule le déterminant d’un [Transform3D] dans le graphe de shader visuel."

msgid "Translates to [code]determinant(x)[/code] in the shader language."
msgstr "Sera traduit en [code]deteminant(x)[/code] dans le code du shader."

msgid ""
"The distance fade effect fades out each pixel based on its distance to "
"another object."
msgstr ""
"L'effet d'estomper par distance efface chaque pixel en fonction de la "
"distance qui le sépare d'un autre objet."

msgid "Calculates a dot product of two vectors within the visual shader graph."
msgstr ""
"Calcule un produit scalaire de deux vecteurs dans le graphe de shader visuel."

msgid "Translates to [code]dot(a, b)[/code] in the shader language."
msgstr "Sera traduit en [code]dot(a, b)[/code] dans le code du shader."

msgid "Translated to [code skip-lint]float[/code] in the shader language."
msgstr "Traduit en [code skip-lint]float[/code] dans le langage du shader."

msgid "A function to be applied to the scalar."
msgstr "Une fonction à appliquer au scalaire."

msgid ""
"Returns the sine of the parameter. Translates to [code]sin(x)[/code] in the "
"Godot Shader Language."
msgstr ""
"Renvoie le sinus du paramètre. Traduit en [code]sin(x)[/code] dans le langage "
"de shader de Godot."

msgid ""
"Returns the cosine of the parameter. Translates to [code]cos(x)[/code] in the "
"Godot Shader Language."
msgstr ""
"Renvoie le cosinus du paramètre. Traduit en [code]cos(x)[/code] dans le "
"langage de shader de Godot."

msgid ""
"Returns the tangent of the parameter. Translates to [code]tan(x)[/code] in "
"the Godot Shader Language."
msgstr ""
"Renvoie la tangente du paramètre. Traduit en [code]tan(x)[/code] dans le "
"langage de shader de Godot."

msgid ""
"Clamps the value between [code]0.0[/code] and [code]1.0[/code] using "
"[code]min(max(x, 0.0), 1.0)[/code]."
msgstr ""
"Borne la valeur entre [code]0.0[/code] et [code]1.0[/code] en utilisant "
"[code]min(max(x, 0.0), 1.0)[/code]."

msgid "Negates the [code]x[/code] using [code]-(x)[/code]."
msgstr "Inverse le signe de [code]x[/code] en utilisant [code]-(x)[/code]."

msgid "Subtracts scalar [code]x[/code] from 1 (i.e. [code]1 - x[/code])."
msgstr "Soustrait le scalaire [code]x[/code] de 1 (c.à.d. [code]1 - x[/code])."

msgid ""
"Applies [member operator] to two floating-point inputs: [code]a[/code] and "
"[code]b[/code]."
msgstr ""
"Applique [member operator] aux deux entrées de flottants : [code]a[/code] et "
"[code]b[/code]."

msgid "Sums two numbers using [code]a + b[/code]."
msgstr "Additionne deux nombres en utilisant [code]a + b[/code]."

msgid "Subtracts two numbers using [code]a - b[/code]."
msgstr "Soustrait deux nombres en utilisant [code]a - b[/code]."

msgid "Multiplies two numbers using [code]a * b[/code]."
msgstr "Multiplie deux nombres en utilisant [code]a * b[/code]."

msgid "Divides two numbers using [code]a / b[/code]."
msgstr "Divise deux nombres en utilisant [code]a / b[/code]."

msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr "Traduit en [code]uniform float[/code] dans le langage de shader."

msgid "No hint used."
msgstr "Aucun indice utilisé."

msgid "Represents the size of the [enum Hint] enum."
msgstr "Représente la taille de l'énumération [enum Hint]."

msgid "A Fresnel effect to be used within the visual shader graph."
msgstr "Un effet de Fresnel à utiliser dans le graphe de shader visuel."

msgid ""
"Returns falloff based on the dot product of surface normal and view direction "
"of camera (pass associated inputs to it)."
msgstr ""
"Renvoie l'atténuation en fonction du produit scalaire de la surface normale "
"et de la direction de la caméra (transmettez-lui les entrées associées)."

msgid ""
"Base class for a family of nodes with variable number of input and output "
"ports within the visual shader graph."
msgstr ""
"Classe de base pour une famille de nœuds avec un nombre variable de ports "
"d'entrée et de sortie dans le graphe de shader visuel."

msgid "Currently, has no direct usage, use the derived classes instead."
msgstr ""
"Actuellement, ça n'a aucune utilisation, utilisez plutôt les classes dérivées."

msgid "Removes all previously specified input ports."
msgstr "Retire tous les ports d'entrées précédemment spécifiés."

msgid "Removes all previously specified output ports."
msgstr "Retire tous les ports de sortie précédemment spécifiés."

msgid ""
"Returns a free input port ID which can be used in [method add_input_port]."
msgstr ""
"Renvoie un identifiant d'un port d'entrée libre qui peut être utilisé pour "
"[method add_input_port]."

msgid ""
"Returns a free output port ID which can be used in [method add_output_port]."
msgstr ""
"Renvoie un identifiant d'un port de sortie libre qui peut être utilisé pour "
"[method add_input_port]."

msgid ""
"Returns the number of input ports in use. Alternative for [method "
"get_free_input_port_id]."
msgstr ""
"Renvoie le nombre de ports d'entrée utilisés. C'est une alternative à [method "
"get_free_input_port_id]."

msgid ""
"Returns the number of output ports in use. Alternative for [method "
"get_free_output_port_id]."
msgstr ""
"Renvoie le nombre de ports de sortie utilisés. C'est une alternative à "
"[method get_free_output_port_id]."

msgid ""
"Returns a [String] description of the output ports as a colon-separated list "
"using the format [code]id,type,name;[/code] (see [method add_output_port])."
msgstr ""
"Renvoie une [String] de description des ports sortants sous forme de liste "
"séparée par une virgule avec le format [code]identifiant,type,nom;[/code] "
"(voir [method add_output_port])."

msgid "Returns [code]true[/code] if the specified input port exists."
msgstr "Renvoie [code]true[/code] si le port d'entrée spécifié existe."

msgid "Returns [code]true[/code] if the specified output port exists."
msgstr "Renvoie [code]true[/code] si le port de sortie spécifié existe."

msgid "Removes the specified input port."
msgstr "Supprime le port d'entrée spécifié."

msgid "Removes the specified output port."
msgstr "Supprime le port de sortie spécifié."

msgid "Renames the specified input port."
msgstr "Renomme le port d’entrée spécifié."

msgid ""
"Sets the specified input port's type (see [enum VisualShaderNode.PortType])."
msgstr ""
"Définit le type du port d'entrée spécifié (voir [enum "
"VisualShaderNode.PortType])."

msgid ""
"Defines all input ports using a [String] formatted as a colon-separated list: "
"[code]id,type,name;[/code] (see [method add_input_port])."
msgstr ""
"Définit tous les ports entrants avec une [String] composée de valeurs "
"séparées par un point-virgule : [code]identifiant,type,nom;[/code] (voir "
"[method add_input_port])."

msgid "Renames the specified output port."
msgstr "Renomme le port de sortie spécifié."

msgid ""
"Sets the specified output port's type (see [enum VisualShaderNode.PortType])."
msgstr ""
"Définit le type du port de sortie spécifié (voir [enum "
"VisualShaderNode.PortType])."

msgid ""
"Defines all output ports using a [String] formatted as a colon-separated "
"list: [code]id,type,name;[/code] (see [method add_output_port])."
msgstr ""
"Définit tous les ports sortants avec une [String] composée de valeurs "
"séparées par un point-virgule : [code]identifiant,type,nom;[/code] (voir "
"[method add_input_port])."

msgid "Shading reference index"
msgstr "Index de la référence de shading"

msgid "Translated to [code skip-lint]int[/code] in the shader language."
msgstr "Traduit en [code skip-lint]int[/code] dans le langage du shader."

msgid "The parameter will not constrain its value."
msgstr "Le paramètre ne contraindra pas sa valeur."

msgid ""
"Returns the boolean result of the comparison between [code]INF[/code] or "
"[code]NaN[/code] and a scalar parameter."
msgstr ""
"Renvoie le résultat booléen de la comparaison entre [code]INF[/code] "
"(l'infini) [code]NaN[/code] (n'est pas un nombre) et un paramètre scalaire."

msgid "The comparison function."
msgstr "La fonction de comparaison."

msgid "Comparison with [code]INF[/code] (Infinity)."
msgstr "Comparaison avec [code]INF[/code] (Infinité)."

msgid "Translates to [code]mix(a, b, weight)[/code] in the shader language."
msgstr "Sera traduit en [code]mix(a, b, weight)[/code] dans le code du shader."

msgid "A floating-point scalar type."
msgstr "Un scalaire à virgule flottante."

msgid "Represents the size of the [enum Qualifier] enum."
msgstr "Représente la taille de l'énumération [enum Qualifier]."

msgid "A reference to an existing [VisualShaderNodeParameter]."
msgstr "Une référence à un [VisualShaderNodeParameter] existant."

msgid "A visual shader node that accelerates particles."
msgstr "Un nœud de shader visuel qui accélère des particules."

msgid "Represents the size of the [enum Mode] enum."
msgstr "Représente la taille de l'énumération [enum Mode]."

msgid "A base class for particle emitters."
msgstr "Une classe de base pour les émetteurs de particules."

msgid "A visual shader node that makes particles emitted in a sphere shape."
msgstr ""
"Un nœud de shader visuel qui fait émettre des particules en une forme de "
"sphère."

msgid ""
"[VisualShaderNodeParticleEmitter] that makes the particles emitted in sphere "
"shape with the specified inner and outer radii."
msgstr ""
"[VisualShaderNodeParticleEmitter] qui fait émettre des particules en forme de "
"sphère avec le rayon intérieur et extérieur spécifiés."

msgid ""
"The proximity fade effect fades out each pixel based on its distance to "
"another object."
msgstr ""
"L'effet d'estomper par proximité efface chaque pixel en fonction de la "
"distance qui le sépare d'un autre objet."

msgid "The size of the node in the visual shader graph."
msgstr "La taille du nœud dans le graphe de shader visuel."

msgid "An input source type."
msgstr "Un type de source d'entrée."

msgid "Calculates a SmoothStep function within the visual shader graph."
msgstr "Calcule une fonction SmoothStep dans le graphe de shader visuel."

msgid "Calculates a Step function within the visual shader graph."
msgstr "Calcule une fonction Step dans le graphe de shader visuel."

msgid ""
"Translates to [code]step(edge, x)[/code] in the shader language.\n"
"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge[/code] "
"and [code]1.0[/code] otherwise."
msgstr ""
"Sera traduit en [code]step(edge, x)[/code] dans le code du shader.\n"
"Renvoie [code]0.0[/code] si [code]x[/code] est inférieur à [code]edge[/code], "
"et [code]1.0[/code] sinon."

msgid "A transform type."
msgstr "Un type de transform."

msgid "Use the current viewport's texture as the source."
msgstr "Utilise la texture de la fenêtre d'affichage actuelle comme source."

msgid "Use the texture provided in the input port for this function."
msgstr "Utilise la texture spécifiée en entrée pour cette fonction."

msgid ""
"Translated to [code]uniform sampler2DArray[/code] in the shader language."
msgstr ""
"Sera traduit en [code]uniform sampler2DArray[/code] dans le langage du shader."

msgid "Performs a uniform texture lookup within the visual shader graph."
msgstr ""
"Effectue une recherche de texture de type uniform dans le graphe de shader "
"visuel."

msgid ""
"Performs a lookup operation on the texture provided as a uniform for the "
"shader."
msgstr ""
"Effectue une opération de recherche sur la texture fournie comme uniform pour "
"le shader."

msgid "Sets the default color if no texture is assigned to the uniform."
msgstr ""
"Définit la couleur par défaut si aucune texture n'est affectée à l'uniform."

msgid "Represents the size of the [enum ColorDefault] enum."
msgstr "Représente la taille de l'énumération [enum ColorDefault]."

msgid "Texture will repeat normally."
msgstr "La texture va se répéter normalement."

msgid "Texture will not repeat."
msgstr "La texture ne de répétera pas."

msgid "Represents the size of the [enum TextureSource] enum."
msgstr "Représente la taille de l’énumération [enum TextureSource]."

msgid ""
"Performs a uniform texture lookup with triplanar within the visual shader "
"graph."
msgstr ""
"Effectue une projection de texture uniforme en triplanaire dans le graphe de "
"shader visuel."

msgid ""
"Composes a [Transform3D] from four [Vector3]s within the visual shader graph."
msgstr ""
"Compose une [Transform3D] à partir de quatre [Vector3]s dans le graphe de "
"shader visuel."

msgid "A [Transform3D] constant for use within the visual shader graph."
msgstr "Une constante [Transform3D] à utiliser dans le graphe de shader visuel."

msgid "A constant [Transform3D], which can be used as an input node."
msgstr ""
"Une constante [Transform3D], qui peut être utilisée comme nœud d’entrée."

msgid "A [Transform3D] constant which represents the state of this node."
msgstr "Une constante [Transform3D] qui représente l'état de ce nœud."

msgid ""
"Decomposes a [Transform3D] into four [Vector3]s within the visual shader "
"graph."
msgstr ""
"Décompose une [Transform3D] en quatre [Vector3] dans le graphe de shader "
"visuel."

msgid "Computes a [Transform3D] function within the visual shader graph."
msgstr "Calcule une fonction [Transform3D] dans le graphe de shader visuel."

msgid "Computes an inverse or transpose function on the provided [Transform3D]."
msgstr "Calcule une fonction inverse ou transposée de la [Transform3D] donnée."

msgid "The function to be computed."
msgstr "La fonction à calculer."

msgid "Perform the inverse operation on the [Transform3D] matrix."
msgstr "Effectue l'opération inverse sur la matrice [Transform3D]."

msgid "Perform the transpose operation on the [Transform3D] matrix."
msgstr "Effectue l’opération de transposition sur la matrice [Transform3D]."

msgid "Multiplies transform [code]a[/code] by the transform [code]b[/code]."
msgstr ""
"Multiplie la transformation [code]a[/code] par la transformation [code]b[/"
"code]."

msgid "Multiplies transform [code]b[/code] by the transform [code]a[/code]."
msgstr ""
"Multiplie la transformation [code]b[/code] par la transformation [code]a[/"
"code]."

msgid ""
"Performs a component-wise multiplication of transform [code]a[/code] by the "
"transform [code]b[/code]."
msgstr ""
"Multiplie chaque composant de la transformation [code]a[/code] par la "
"transformation [code]b[/code]."

msgid ""
"Performs a component-wise multiplication of transform [code]b[/code] by the "
"transform [code]a[/code]."
msgstr ""
"Multiplie chaque composant de la transformation [code]b[/code] par la "
"transformation [code]a[/code]."

msgid "Adds two transforms."
msgstr "Ajoute deux transforms."

msgid "A [Transform3D] parameter for use within the visual shader graph."
msgstr "Un paramètre [Transform3D] à utiliser dans le graphe de shader visuel."

msgid "Translated to [code]uniform mat4[/code] in the shader language."
msgstr "Sera traduit en [code]uniform mat4[/code] dans le code du shader."

msgid ""
"Multiplies a [Transform3D] and a [Vector3] within the visual shader graph."
msgstr ""
"Multiplie une [Transform3D] et un [Vector3] dans le graphe de shader visuel."

msgid "Multiplies transform [code]a[/code] by the vector [code]b[/code]."
msgstr ""
"Multiplie la transformation [code]a[/code] par le vecteur [code]b[/code]."

msgid "Multiplies vector [code]b[/code] by the transform [code]a[/code]."
msgstr ""
"Multiplie le vecteur [code]b[/code] par la transformation [code]a[/code]."

msgid ""
"Multiplies transform [code]a[/code] by the vector [code]b[/code], skipping "
"the last row and column of the transform."
msgstr ""
"Multiplie la transformation [code]a[/code] par le vecteur [code]b[/code], "
"ignorant la dernière ligne et colonne de la transformation."

msgid ""
"Multiplies vector [code]b[/code] by the transform [code]a[/code], skipping "
"the last row and column of the transform."
msgstr ""
"Multiplie le vecteur [code]b[/code] par la transformation [code]a[/code], "
"ignorant la dernière ligne et colonne de la transformation."

msgid "A visual shader node that gets a value of a varying."
msgstr "Un nœud de shader visuel qui obtient une valeur d'un varying."

msgid "A visual shader node that sets a value of a varying."
msgstr "Un nœud de shader visuel qui définit la valeur d'un varying."

msgid "A [Vector2] constant to be used within the visual shader graph."
msgstr "Une constante [Vector2] à utiliser dans le graphe de shader visuel."

msgid "A constant [Vector2], which can be used as an input node."
msgstr "Une constante [Vector2], qui peut être utilisée comme nœud d'entrée."

msgid "A [Vector2] constant which represents the state of this node."
msgstr "Une constante [Vector2] qui représente l'état de ce nœud."

msgid "A [Vector2] parameter to be used within the visual shader graph."
msgstr "Un paramètre [Vector2] à utiliser dans le graphe de shader visuel."

msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr "Un [Vector3] constant à utiliser dans le graphe de shader visuel."

msgid "A constant [Vector3], which can be used as an input node."
msgstr "Un [Vector3] constant, qui peut être utilisé comme un nœud d'entrée."

msgid "A [Vector3] parameter to be used within the visual shader graph."
msgstr "Un paramètre [Vector3] à utiliser dans le graphe de shader visuel."

msgid "Translated to [code]uniform vec3[/code] in the shader language."
msgstr "Sera traduit en [code]uniform vec3[/code] dans le code du shader."

msgid ""
"A 4D vector (represented as a [Quaternion]) constant which represents the "
"state of this node."
msgstr ""
"Une constante vecteur 4D (représenté comme un [Quaternion]) qui représente "
"l'état de ce nœud."

msgid ""
"Calculates distance from point represented by vector [code]p0[/code] to "
"vector [code]p1[/code].\n"
"Translated to [code]distance(p0, p1)[/code] in the shader language."
msgstr ""
"Calcule la distance entre le point représenté par le vecteur [code]p0[/code] "
"et le vecteur [code]p1[/code].\n"
"Sera traduit en [code]distance(p0, p1)[/code] dans le code du shader."

msgid "A vector function to be used within the visual shader graph."
msgstr ""
"Une fonction vectorielle qui peut être utilisée dans le graphe de shader "
"visuel."

msgid "The function to be performed."
msgstr "La fonction à effectuer."

msgid ""
"Normalizes the vector so that it has a length of [code]1[/code] but points in "
"the same direction."
msgstr ""
"Normalise le vecteur pour qu'il ait une longueur de [code]1[/code] mais qu'il "
"pointe dans la même direction."

msgid "Clamps the value between [code]0.0[/code] and [code]1.0[/code]."
msgstr "Borne la valeur entre [code]0.0[/code] et [code]1.0[/code]."

msgid "Returns the opposite value of the parameter."
msgstr "Renvoie la valeur opposée du paramètre."

msgid "Returns [code]1/vector[/code]."
msgstr "Renvoie [code]1/vector[/code]."

msgid "Returns the absolute value of the parameter."
msgstr "Renvoie la valeur absolue du paramètre."

msgid "Returns the arc-cosine of the parameter."
msgstr "Renvoie l'arc cosinus du paramètre."

msgid "Returns the inverse hyperbolic cosine of the parameter."
msgstr "Renvoie le cosinus hyperbolique inverse du paramètre."

msgid "Returns the arc-sine of the parameter."
msgstr "Renvoie l'arc sinus du paramètre."

msgid "Returns the inverse hyperbolic sine of the parameter."
msgstr "Renvoie le sinus hyperbolique inverse du paramètre."

msgid "Returns the arc-tangent of the parameter."
msgstr "Renvoie l'arc tangente du paramètre."

msgid "Returns the inverse hyperbolic tangent of the parameter."
msgstr "Renvoie la tangente hyperbolique inverse du paramètre."

msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
msgstr ""
"Recherche l'entier le plus proche qui est supérieur ou égal au paramètre."

msgid "Returns the cosine of the parameter."
msgstr "Renvoie le cosinus du paramètre."

msgid "Returns the hyperbolic cosine of the parameter."
msgstr "Renvoie le cosinus hyperbolique du paramètre."

msgid "Converts a quantity in radians to degrees."
msgstr "Convertit une quantité en radians en degrés."

msgid "Base-e Exponential."
msgstr "Exponentiel en base e."

msgid "Base-2 Exponential."
msgstr "Exponentiel en base 2."

msgid "Finds the nearest integer less than or equal to the parameter."
msgstr "Recherche l'entier le plus proche inférieur ou égal au paramètre."

msgid "Computes the fractional part of the argument."
msgstr "Calcule la partie décimale de l'argument."

msgid "Returns the inverse of the square root of the parameter."
msgstr "Renvoie l'inverse de la racine carrée du paramètre."

msgid "Natural logarithm."
msgstr "Logarithme naturel."

msgid "Base-2 logarithm."
msgstr "Logarithme base-2."

msgid "Converts a quantity in degrees to radians."
msgstr "Convertit une quantité de degrés en radians."

msgid "Finds the nearest integer to the parameter."
msgstr "Renvoie l'entier le plus proche du paramètre."

msgid "Finds the nearest even integer to the parameter."
msgstr "Renvoie l'entier pair le plus proche du paramètre."

msgid "Returns the sine of the parameter."
msgstr "Renvoie le sinus du paramètre."

msgid "Returns the hyperbolic sine of the parameter."
msgstr "Renvoie le sinus hyperbolique du paramètre."

msgid "Returns the square root of the parameter."
msgstr "Renvoie la racine carrée du paramètre."

msgid "Returns the tangent of the parameter."
msgstr "Renvoie la tangente du paramètre."

msgid "Returns the hyperbolic tangent of the parameter."
msgstr "Renvoie la tangente hyperbolique du paramètre."

msgid ""
"Returns a value equal to the nearest integer to the parameter whose absolute "
"value is not larger than the absolute value of the parameter."
msgstr ""
"Renvoie une valeur égale à l’entier le plus proche au paramètre dont la "
"valeur absolue n’est pas supérieure à la valeur absolue du paramètre."

msgid "Returns [code]1.0 - vector[/code]."
msgstr "Renvoie [code]1.0 - vector[/code]."

msgid "Returns the length of a [Vector3] within the visual shader graph."
msgstr "Renvoie la longueur d'un [Vector3] dans le graphe de shader visuel."

msgid "Translated to [code]length(p0)[/code] in the shader language."
msgstr "Sera traduit en [code]length(p0)[/code] dans le code du shader."

msgid "A vector operator to be used within the visual shader graph."
msgstr ""
"Un opérateur vectoriel qui peut être utilisé dans le graphe de shader visuel."

msgid ""
"A visual shader node for use of vector operators. Operates on vector [code]a[/"
"code] and vector [code]b[/code]."
msgstr ""
"Un nœud de shader visuel pour les opérations vectorielles. Opère sur les "
"vecteurs [code]a[/code] et [code]b[/code]."

msgid "The operator to be used."
msgstr "L'opérateur à utiliser."

msgid "Adds two vectors."
msgstr "Ajoute deux vecteurs."

msgid "Subtracts a vector from a vector."
msgstr "Soustrait un vecteur d'un autre vecteur."

msgid "Multiplies two vectors."
msgstr "Multiplie deux vecteurs."

msgid "Divides vector by vector."
msgstr "Divise un vecteur par un vecteur."

msgid "Returns the remainder of the two vectors."
msgstr "Renvoie le reste de deux vecteurs."

msgid "Calculates the cross product of two vectors."
msgstr "Calcule le produit vectoriel de deux vecteurs."

msgid "Returns the arc-tangent of the parameters."
msgstr "Renvoie l'arc tangente des paramètres."

msgid ""
"Vector step operator. Returns [code]0.0[/code] if [code]a[/code] is smaller "
"than [code]b[/code] and [code]1.0[/code] otherwise."
msgstr ""
"Opérateur d’étape vectorielle. Renvoie [code]0.0[/code] si [code]a[/code] est "
"inférieur à [code]b[/code] et [code]1.0[/code] autrement."

msgid "Real-time global illumination (GI) probe."
msgstr "Sonde d’éclairage global (GI) en temps réel."

msgid "Using Voxel global illumination"
msgstr "Utiliser l'illumination globale Voxel"

msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
msgstr "Appelle [method bake] avec [code]create_visual_debug[/code] activé."

msgid ""
"Use 64 subdivisions. This is the lowest quality setting, but the fastest. Use "
"it if you can, but especially use it on lower-end hardware."
msgstr ""
"Utilise 64 subdivisions. C’est le réglage de qualité la plus basse, mais le "
"plus rapide. Utilisez-le si vous le pouvez, mais surtout utilisez-le sur du "
"matériel bas de gamme."

msgid "Use 128 subdivisions. This is the default quality setting."
msgstr "Utilise 128 subdivisions. Il s’agit du paramètre de qualité par défaut."

msgid "Use 256 subdivisions."
msgstr "Utilise 256 subdivisions."

msgid ""
"Use 512 subdivisions. This is the highest quality setting, but the slowest. "
"On lower-end hardware, this could cause the GPU to stall."
msgstr ""
"Utilise 64 subdivisions. C’est le réglage de qualité la plus haute, mais le "
"plus lent. Le GPU peut même ramer sur les appareils peu puissants."

msgid "Represents the size of the [enum Subdiv] enum."
msgstr "Représente la taille de l'énumération [enum Subdiv]."

msgid "A vertical scrollbar that goes from top (min) to bottom (max)."
msgstr "Une barre de défilement verticale qui va de haut (min) en bas (max)."

msgid ""
"A vertical scrollbar, typically used to navigate through content that extends "
"beyond the visible height of a control. It is a [Range]-based control and "
"goes from top (min) to bottom (max). Note that this direction is the opposite "
"of [VSlider]'s."
msgstr ""
"Une barre de défilement verticale, généralement utilisée pour parcourir du "
"contenu qui s'étend au-delà de la hauteur visible d'un contrôle. C'est un "
"contrôle basé sur [Range] et qui va de haut (minimum) en bas (maximum). Notez "
"que la direction est l'opposée de celle de [VSlider]."

msgid "A vertical line used for separating other controls."
msgstr "Une ligne verticale utilisée pour séparer d'autres contrôles."

msgid ""
"A vertical separator used for separating other controls that are arranged "
"[b]horizontally[/b]. [VSeparator] is purely visual and normally drawn as a "
"[StyleBoxLine]."
msgstr ""
"Un séparateur vertical utilisé pour séparer d'autres contrôles arrangés "
"[b]horizontalement[/b]. [VSeparator] est purement visuel et normalement "
"dessinée comme une [StyleBoxLine]."

msgid "A vertical slider that goes from bottom (min) to top (max)."
msgstr "Un slider vertical qui va de bas (minimum) en haut (maximum)."

msgid ""
"A container that splits two child controls vertically and provides a grabber "
"for adjusting the split ratio."
msgstr ""
"Un conteneur qui divise deux contrôles enfants verticalement et fournit un "
"séparateur pour ajuster le ratio de division."

msgid ""
"A container that accepts only two child controls, then arranges them "
"vertically and creates a divisor between them. The divisor can be dragged "
"around to change the size relation between the child controls."
msgstr ""
"Un conteneur qui n'accepte que deux contrôles enfants, puis les arrange "
"verticalement et crée un diviseur entre eux. Le diviseur peut être coulissé "
"pour changer la relation de taille entre les contrôles enfants."

msgid ""
"Returns the [Object] this weakref is referring to. Returns [code]null[/code] "
"if that object no longer exists."
msgstr ""
"Renvoie l'[Object] auquel cette weakref se réfère. Renvoie [code]null[/code] "
"si l'objet n'existe plus."

msgid "Closes this data channel, notifying the other peer."
msgstr "Ferme ce canal de données, en notifiant l’autre homologue."

msgid ""
"Returns the number of bytes currently queued to be sent over this channel."
msgstr ""
"Renvoie le nombre d'octets actuellement en queue pour être envoyés sur ce "
"canal."

msgid "Returns the label assigned to this channel during creation."
msgstr "Renvoie l'étiquette attribuée à cette chaîne lors de sa création."

msgid ""
"Returns the sub-protocol assigned to this channel during creation. An empty "
"string if not specified."
msgstr ""
"Renvoie le sous-protocole assigné à ce canal lors de la création. Une chaîne "
"de caractères vide si il n'est pas spécifié."

msgid "Reserved, but not used for now."
msgstr "Réservé, mais non utilisé pour l'instant."

msgid ""
"Returns [code]true[/code] if the last received packet was transferred as "
"text. See [member write_mode]."
msgstr ""
"Renvoie [code]true[/code] si le dernier paquet reçu a été transféré comme "
"texte. Voir [member write_mode]."

msgid ""
"The transfer mode to use when sending outgoing packet. Either text or binary."
msgstr ""
"Le mode de transfert à utiliser lors de l'envoi de paquets sortants. Soit "
"texte, soit binaire."

msgid ""
"Tells the channel to send data over this channel as text. An external peer "
"(non-Godot) would receive this as a string."
msgstr ""
"Demande au canal d'envoyer des données sur ce canal sous forme de texte. Un "
"pair externe (non Godot) le reçoit sous forme de chaîne de caractères."

msgid ""
"Tells the channel to send data over this channel as binary. An external peer "
"(non-Godot) would receive this as array buffer or blob."
msgstr ""
"Demande au canal d'envoyer des données sur ce canal sous forme binaire. Un "
"pair externe (non Godot) le reçoit sous forme de tableau tampon ou de blob."

msgid "The channel was created, but it's still trying to connect."
msgstr "Le canal a été créé, mais il essaie toujours de se connecter."

msgid "The channel is currently open, and data can flow over it."
msgstr "Le canal est actuellement ouvert, et les données peuvent y circuler."

msgid ""
"The channel is being closed, no new messages will be accepted, but those "
"already in queue will be flushed."
msgstr ""
"Le canal est en cours de fermeture, aucun nouveau message ne sera accepté, "
"mais ceux déjà en file d'attente seront vidés."

msgid "The channel was closed, or connection failed."
msgstr "Le canal a été fermé ou la connexion a échoué."

msgid ""
"Returns a dictionary which keys are the peer ids and values the peer "
"representation as in [method get_peer]."
msgstr ""
"Renvoie un dictionnaire dont les clés sont les identifiants des pairs et les "
"valeurs sont la représentation des pairs comme dans [method get_peer]."

msgid "Interface to a WebRTC peer connection."
msgstr "L'interface de connexion par pair via WebRTC."

msgid ""
"Add an ice candidate generated by a remote peer (and received over the "
"signaling server). See [signal ice_candidate_created]."
msgstr ""
"Ajoute un candidat de glace généré par un pair distant (et reçu sur le "
"serveur de signalisation). Voir [signal ice_candidate_created]."

msgid ""
"Close the peer connection and all data channels associated with it.\n"
"[b]Note:[/b] You cannot reuse this object for a new connection unless you "
"call [method initialize]."
msgstr ""
"Ferme la connexion de ce pair et tous les canaux de données lui étant "
"associés.\n"
"[b]Note :[/b] Vous ne pouvez pas réutiliser cet objet pour une nouvelle "
"connexion sans appeler [method initialize]."

msgid ""
"Returns a new [WebRTCDataChannel] (or [code]null[/code] on failure) with "
"given [param label] and optionally configured via the [param options] "
"dictionary. This method can only be called when the connection is in state "
"[constant STATE_NEW].\n"
"There are two ways to create a working data channel: either call [method "
"create_data_channel] on only one of the peer and listen to [signal "
"data_channel_received] on the other, or call [method create_data_channel] on "
"both peers, with the same values, and the [code]\"negotiated\"[/code] option "
"set to [code]true[/code].\n"
"Valid [param options] are:\n"
"[codeblock]\n"
"{\n"
"\t\"negotiated\": true, # When set to true (default off), means the channel "
"is negotiated out of band. \"id\" must be set too. \"data_channel_received\" "
"will not be called.\n"
"\t\"id\": 1, # When \"negotiated\" is true this value must also be set to the "
"same value on both peer.\n"
"\n"
"\t# Only one of maxRetransmits and maxPacketLifeTime can be specified, not "
"both. They make the channel unreliable (but also better at real time).\n"
"\t\"maxRetransmits\": 1, # Specify the maximum number of attempt the peer "
"will make to retransmits packets if they are not acknowledged.\n"
"\t\"maxPacketLifeTime\": 100, # Specify the maximum amount of time before "
"giving up retransmitions of unacknowledged packets (in milliseconds).\n"
"\t\"ordered\": true, # When in unreliable mode (i.e. either "
"\"maxRetransmits\" or \"maxPacketLifetime\" is set), \"ordered\" (true by "
"default) specify if packet ordering is to be enforced.\n"
"\n"
"\t\"protocol\": \"my-custom-protocol\", # A custom sub-protocol string for "
"this channel.\n"
"}\n"
"[/codeblock]\n"
"[b]Note:[/b] You must keep a reference to channels created this way, or it "
"will be closed."
msgstr ""
"Renvoie un nouveau [WebRTCDataChannel] (ou [code]null[/code] lors d'un échec) "
"avec une étiquette [param label] donnée et optionnellement configuré via le "
"dictionnaire [param options]. Cette méthode peut seulement être appelée "
"lorsque la connexion est dans l'état [constant STATE_NEW].\n"
"Il y a deux façons de créer un canal de données fonctionnel : soit appeler "
"[method create_data_channel] sur un seul de ses pairs et écouter [signal "
"data_channel_received] sur l'autre, ou appeler [method create_data_channel] "
"sur les deux pairs, avec les mêmes valeurs, et l'option [code]\"negotiated\"[/"
"code] définie à [code]true[/code]..\n"
"Les [param options] valides sont : \n"
"[codeblock]\n"
"{\n"
"\t\"negotiated\": true, # Quand défini à true (false par défaut), signifie "
"que le canal est négocié hors bande. \"id\" doit être aussi défini. "
"\"data_channel_received\" ne sera pas appelé.\n"
"\t\"id\": 1, # Quand \"negotiated\" vaut true, cette valeur doit aussi être "
"définie à la même valeur sur les deux pairs.\n"
"\n"
"\t# Seul un entre maxRetransmits et maxPacketLifeTime peut être spécifié, pas "
"les deux. Ils rendent le canal moins fiable (mais aussi meilleur en temps "
"réel).\n"
"\t\"maxRetransmits\": 1, # Spécifiez le nombre maximum d'essais que le pair "
"va faire pour retransmettre les paquets s'ils ne sont pas reconnus.\n"
"\t\"maxPacketLifeTime\": 100, # Spécifiez la quantité maximale de temps avant "
"de renoncer à des retransmissions de paquets non reconnus (en "
"millisecondes).\n"
"\t\"ordered\": true, # Quand en mode non fiable (c.-à-d. \"maxRetransmits\" "
"ou \"maxPacketLifetime\" est défini), \"ordered\" (true par défaut) spécifie "
"si l'ordre des paquets doit être imposée.\n"
"\n"
"\t\"protocol\": \"my-custom-protocol\", # Une chaîne de sous-protocole "
"personnalisée pour ce canal.\n"
"}\n"
"[/codeblock]\n"
"[b]Note :[/b] Vous devez garder une référence aux canaux créés de cette "
"façon, ou ils seront fermés."

msgid ""
"Creates a new SDP offer to start a WebRTC connection with a remote peer. At "
"least one [WebRTCDataChannel] must have been created before calling this "
"method.\n"
"If this functions returns [constant OK], [signal session_description_created] "
"will be called when the session is ready to be sent."
msgstr ""
"Crée une nouvelle offre SDP pour démarrer une connexion WebRTC avec un pair "
"distant. Au moins un [WebRTCDataChannel] doit avoir été créé avant d’appeler "
"cette méthode.\n"
"Si cette fonction renvoie [constant OK], [signal session_description_created] "
"sera appelé lorsque la session est prête à être envoyée."

msgid ""
"Re-initialize this peer connection, closing any previously active connection, "
"and going back to state [constant STATE_NEW]. A dictionary of [param "
"configuration] options can be passed to configure the peer connection.\n"
"Valid [param configuration] options are:\n"
"[codeblock]\n"
"{\n"
"\t\"iceServers\": [\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"stun:stun.example.com:3478\" ], # One or more STUN "
"servers.\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"turn:turn.example.com:3478\" ], # One or more TURN "
"servers.\n"
"\t\t\t\"username\": \"a_username\", # Optional username for the TURN server.\n"
"\t\t\t\"credential\": \"a_password\", # Optional password for the TURN "
"server.\n"
"\t\t}\n"
"\t]\n"
"}\n"
"[/codeblock]"
msgstr ""
"Ré-initialise la connexion de ce pair, fermant n'importe quelle précédente "
"connexion active, et retourne à l'état [constant STATE_NEW]. Un dictionnaire "
"d'options de [param configuration] peut être passé pour configurer la "
"connexion du pair.\n"
"Les options de [param configuration] valides sont :\n"
"[codeblock]\n"
"{\n"
"\t\"iceServers\": [\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"stun:stun.example.com:3478\" ], # Un ou plusieurs "
"serveurs STUN.\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"turn:turn.example.com:3478\" ], # Un ou plusieurs "
"serveurs TURN.\n"
"\t\t\t\"username\": \"un_nom_utilisateur\", # Le nom d'utilisateur facultatif "
"pour le serveur TURN.\n"
"\t\t\t\"credential\": \"un_mot_de_passe\", # Le mot de passe facultatif pour "
"le serveur TURN.\n"
"\t\t}\n"
"\t]\n"
"}\n"
"[/codeblock]"

msgid ""
"Call this method frequently (e.g. in [method Node._process] or [method "
"Node._physics_process]) to properly receive signals."
msgstr ""
"Appelez cette méthode fréquemment (par ex. dans [method Node._process] ou "
"[method Node._physics_process]) pour recevoir correctement les signaux."

msgid ""
"The connection is new, data channels and an offer can be created in this "
"state."
msgstr ""
"La connexion est nouvelle, les canaux de données et une offre peut être créée "
"dans cet état."

msgid ""
"The peer is connecting, ICE is in progress, none of the transports has failed."
msgstr "Le pair se connecte, ICE est en cours, aucun des transports n’a échoué."

msgid "The peer is connected, all ICE transports are connected."
msgstr "Le pair est connecté, tous les transports ICE sont connectés."

msgid "At least one ICE transport is disconnected."
msgstr "Au moins un transport ICE est déconnecté."

msgid "One or more of the ICE transports failed."
msgstr "Un ou plusieurs des transports ICE ont échoué."

msgid ""
"The peer connection is closed (after calling [method close] for example)."
msgstr ""
"La connexion par les pairs est fermée (après avoir appelé [method close] par "
"exemple)."

msgid "The [WebRTCPeerConnection] has been closed."
msgstr "La [WebRTCPeerConnection] a été fermée."

msgid "Base class for WebSocket server and client."
msgstr "Classe de base pour le serveur et le client WebSocket."

msgid "Returns the IP address of the given peer."
msgstr "Renvoie l'adresse IP du pair donné."

msgid "Returns the remote port of the given peer."
msgstr "Renvoie le port distant du pair spécifié."

msgid ""
"The extra headers to use during handshake. See [member "
"WebSocketPeer.handshake_headers] for more details."
msgstr ""
"Les en-têtes supplémentaires à utiliser pendant la poignée de main. Voir "
"[member WebSocketPeer.handshake_headers] pour plus de détails."

msgid "A WebSocket connection."
msgstr "Une connexion WebSocket."

msgid ""
"Returns [code]true[/code] if the last received packet was sent as a text "
"payload. See [enum WriteMode]."
msgstr ""
"Renvoie [code]true[/code] si le dernier paquet reçu a été envoyé sous forme "
"textuelle. Voir [enum WriteMode]."

msgid ""
"Specifies that WebSockets messages should be transferred as text payload "
"(only valid UTF-8 is allowed)."
msgstr ""
"Spécifie que les messages WebSockets doivent être transférés sous forme de "
"texte (uniquement l'UTF-8 est autorisé)."

msgid ""
"Specifies that WebSockets messages should be transferred as binary payload "
"(any byte combination is allowed)."
msgstr ""
"Spécifie que les messages WebSockets doivent être transférés sous forme "
"binaire (toute les combinaison d'octets sont autorisés)."

msgid "XR interface using WebXR."
msgstr "Une interface XR utilisant WebXR."

msgid ""
"Returns the target ray mode for the given [param input_source_id].\n"
"This can help interpret the input coming from that input source. See "
"[url=https://developer.mozilla.org/en-US/docs/Web/API/XRInputSource/"
"targetRayMode]XRInputSource.targetRayMode[/url] for more information."
msgstr ""
"Renvoie le mode du rayon de la cible pour le [param input_source_id] "
"spécifié.\n"
"Cela peut aider à interpréter les entrées provenant de ce contrôleur. Voir "
"[url=https://developer.mozilla.org/en-US/docs/Web/API/XRInputSource/"
"targetRayMode]XRInputSource.targetRayMode[/url] (en anglais) pour plus "
"d'informations."

msgid "Emitted after the display's refresh rate has changed."
msgstr "Émis après que le taux de rafraîchissement de l'affichage a changé."

msgid ""
"Emitted when one of the input source has started its \"primary action\".\n"
"Use [method get_input_source_tracker] and [method "
"get_input_source_target_ray_mode] to get more information about the input "
"source."
msgstr ""
"Émis lorsque l'une des sources d'entrée a commencé son \"action primaire\".\n"
"Utilisez [method get_input_source_tracker] et [method "
"get_input_source_target_ray_mode] pour obtenir plus d'informations sur la "
"source d'entrée."

msgid ""
"Emitted when the user ends the WebXR session (which can be done using UI from "
"the browser or device).\n"
"At this point, you should do [code]get_viewport().use_xr = false[/code] to "
"instruct Godot to resume rendering to the screen."
msgstr ""
"Émis lorsque l'utilisateur termine la session WebXR (ce qui peut être fait à "
"l'aide de l'interface utilisateur du navigateur ou de l'appareil).\n"
"À ce stade, vous devriez faire [code]get_viewport().use_xr = false[/code] "
"pour demander à Godot de reprendre le rendu à l'écran."

msgid ""
"Emitted by [method XRInterface.initialize] if the session fails to start.\n"
"[param message] may optionally contain an error message from WebXR, or an "
"empty string if no message is available."
msgstr ""
"Émis par [method XRInterface.initialize] si la session échoue au démarrage.\n"
"[param message] peut éventuellement contenir un message d'erreur de WebXR, ou "
"une chaîne vide si aucun message n'est disponible."

msgid ""
"Emitted by [method XRInterface.initialize] if the session is successfully "
"started.\n"
"At this point, it's safe to do [code]get_viewport().use_xr = true[/code] to "
"instruct Godot to start rendering to the XR device."
msgstr ""
"Émis par [method XRInterface.initialize] si la session a démarré avec "
"succès.\n"
"À ce stade, il est sûr de faire [code]get_viewport().use_xr = true[/code] "
"pour demander à Godot de commencer à rendre vers le périphérique XR."

msgid ""
"Emitted by [method is_session_supported] to indicate if the given [param "
"session_mode] is supported or not."
msgstr ""
"Émis par [method is_session_supported] pour indiquer si le mode de session "
"[param session_mode] donné est supporté ou pas."

msgid "Emitted when [member visibility_state] has changed."
msgstr "Émis lorsque [member visibility_state] modifié."

msgid "Base class for all windows, dialogs, and popups."
msgstr "Classe de base pour toutes les fenêtres, boîtes de dialogue et popups."

msgid ""
"A node that creates a window. The window can either be a native system window "
"or embedded inside another [Window] (see [member "
"Viewport.gui_embed_subwindows]).\n"
"At runtime, [Window]s will not close automatically when requested. You need "
"to handle it manually using the [signal close_requested] signal (this applies "
"both to pressing the close button and clicking outside of a popup)."
msgstr ""
"Un nœud qui crée une fenêtre. La fenêtre peut être soit une fenêtre du "
"système natif soit intégrée dans une autre [Window] (voir [member "
"Viewport.gui_embed_subwindows]).\n"
"Durant l'exécution, les [Window]s ne fermeront pas automatiquement lorsque "
"demandé. Vous devez le manipuler manuellement en utilisant le signal [signal "
"close_requested] (ceci s'applique à la fois à l'appui sur le bouton de "
"fermeture et au clic en dehors d'une popup)."

msgid ""
"Virtual method to be implemented by the user. Overrides the value returned by "
"[method get_contents_minimum_size]."
msgstr ""
"Méthode virtuelle implémentée par l'utilisateur. Redéfinit la valeur renvoyée "
"par [method get_contents_minimum_size]."

msgid ""
"Creates a local override for a theme [Color] with the specified [param name]. "
"Local overrides always take precedence when fetching theme items for the "
"control. An override can be removed with [method "
"remove_theme_color_override].\n"
"See also [method get_theme_color] and [method "
"Control.add_theme_color_override] for more details."
msgstr ""
"Crée une redéfinition locale pour une [Color] de thème nommée [param name]. "
"Les redéfinitions locales ont toujours la priorité lors de la récupération "
"des éléments du thème d'un contrôle. Une redéfinition peut être retirée avec "
"[method remove_theme_color_override].\n"
"Voir aussi [method get_theme_color] et [method "
"Control.add_theme_color_override] pour plus de détails."

msgid ""
"Creates a local override for a theme [StyleBox] with the specified [param "
"name]. Local overrides always take precedence when fetching theme items for "
"the control. An override can be removed with [method "
"remove_theme_stylebox_override].\n"
"See also [method get_theme_stylebox] and [method "
"Control.add_theme_stylebox_override] for more details."
msgstr ""
"Crée une redéfinition locale pour une [StyleBox] de thème nommée [param "
"name]. Les redéfinitions locales ont toujours la priorité lors de la "
"récupération des éléments du thème d'un contrôle. Une redéfinition peut être "
"retirée avec [method remove_theme_stylebox_override].\n"
"Voir aussi [method get_theme_stylebox] et [method "
"Control.add_theme_stylebox_override] pour plus de détails."

msgid "Returns whether the window is being drawn to the screen."
msgstr "Renvoie si la fenêtre est dessinée à l'écran."

msgid ""
"Requests an update of the [Window] size to fit underlying [Control] nodes."
msgstr ""
"Demande une mise à jour de la taille de la [Window] pour contenir les nœuds "
"[Control] sous-jacents."

msgid ""
"Returns the combined minimum size from the child [Control] nodes of the "
"window. Use [method child_controls_changed] to update it when child nodes "
"have changed.\n"
"The value returned by this method can be overridden with [method "
"_get_contents_minimum_size]."
msgstr ""
"Renvoie la taille minimale combinée des nœuds [Control] enfants de la "
"fenêtre. Utilisez [method child_controls_changed] pour la mettre à jour "
"lorsque les nœuds enfants ont changé.\n"
"La valeur renvoyée par cette méthode peut être redéfinie par [method "
"_get_contents_minimum_size]."

msgid "Returns [code]true[/code] if the [param flag] is set."
msgstr "Renvoie [code]true[/code] si le drapeau [param flag] est défini."

msgid "Returns the focused window."
msgstr "Renvoie la fenêtre ayant le focus."

msgid "Returns layout direction and text writing direction."
msgstr ""
"Renvoie la direction de la mise en page et la direction d'écriture du texte."

msgid ""
"Returns the window's position including its border.\n"
"[b]Note:[/b] If [member visible] is [code]false[/code], this method returns "
"the same value as [member position]."
msgstr ""
"Renvoie la position de la fenêtre en prenant en compte sa bordure.\n"
"[b]Note :[/b] Si [member visible] vaut [code]false[/code], cette méthode "
"renvoie la même valeur que [member position]."

msgid ""
"Returns the window's size including its border.\n"
"[b]Note:[/b] If [member visible] is [code]false[/code], this method returns "
"the same value as [member size]."
msgstr ""
"Renvoie la taille de la fenêtre, y compris sa bordure.\n"
"[b]Note :[/b] Si [member visible] vaut [code]false[/code], cette méthode "
"renvoie la même valeur que [member size]."

msgid ""
"Returns a [Color] from the first matching [Theme] in the tree if that [Theme] "
"has a color item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for more details."
msgstr ""
"Renvoie une [Color] du premier [Theme] correspondant dans l'arborescence si "
"ce [Theme] a un élément de couleur nommé [param name] et du type de thème "
"[param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns a constant from the first matching [Theme] in the tree if that "
"[Theme] has a constant item with the specified [param name] and [param "
"theme_type].\n"
"See [method Control.get_theme_color] for more details."
msgstr ""
"Renvoie une constante du premier [Theme] correspondant dans l'arborescence si "
"ce [Theme] a un élément de constante nommé [param name] et du type de thème "
"[param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns the default base scale value from the first matching [Theme] in the "
"tree if that [Theme] has a valid [member Theme.default_base_scale] value.\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie la valeur d'échelle de base par défaut du premier [Theme] "
"correspondant dans l'arborescence si ce [Theme] a une valeur [member "
"Theme.default_base_scale] valide.\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns the default font from the first matching [Theme] in the tree if that "
"[Theme] has a valid [member Theme.default_font] value.\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie la police par défaut du premier [Theme] correspondant dans "
"l'arborescence si ce [Theme] a une valeur [member Theme.default_font] "
"valide.\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns the default font size value from the first matching [Theme] in the "
"tree if that [Theme] has a valid [member Theme.default_font_size] value.\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie la taille de police par défaut du premier [Theme] correspondant dans "
"l'arborescence si ce [Theme] a une valeur [member Theme.default_font_size] "
"valide.\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns a [Font] from the first matching [Theme] in the tree if that [Theme] "
"has a font item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie une [Font] du premier [Theme] correspondant dans l'arborescence si ce "
"[Theme] a un élément de police nommé [param name] et du type de thème [param "
"theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns a font size from the first matching [Theme] in the tree if that "
"[Theme] has a font size item with the specified [param name] and [param "
"theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie une taille de police du premier [Theme] correspondant dans "
"l'arborescence si ce [Theme] a un élément de taille de police nommé [param "
"name] et du type de thème [param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns an icon from the first matching [Theme] in the tree if that [Theme] "
"has an icon item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie une icône du premier [Theme] correspondant dans l'arborescence si ce "
"[Theme] a un élément d'icône nommé [param name] et du type de thème [param "
"theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns a [StyleBox] from the first matching [Theme] in the tree if that "
"[Theme] has a stylebox item with the specified [param name] and [param "
"theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie une [StyleBox] du premier [Theme] correspondant dans l'arborescence "
"si ce [Theme] a un élément de stylebox nommé [param name] et du type de thème "
"[param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid "Returns the ID of the window."
msgstr "Renvoie l'identifiant de la fenêtre."

msgid "Causes the window to grab focus, allowing it to receive user input."
msgstr ""
"Force la fenêtre à saisir le focus, lui permettant de recevoir l'entrée "
"utilisateur."

msgid "Returns [code]true[/code] if the window is focused."
msgstr "Renvoie [code]true[/code] si la fenêtre a le focus."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a color item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a un élément de couleur nommé [param name] et du type de "
"thème [param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a constant item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a un élément de constante nommé [param name] et du type de "
"thème [param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a un élément de police nommé [param name] et du type de "
"thème [param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font size item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a un élément de taille de police nommé [param name] et du "
"type de thème [param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"an icon item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a un élément d'icône nommé [param name] et du type de "
"thème [param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a stylebox item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Renvoie [code]true[/code] s'il y a un [Theme] correspondant dans "
"l'arborescence qui a un élément de stylebox nommé [param name] et du type de "
"thème [param theme_type].\n"
"Voir [method Control.get_theme_color] pour plus de détails."

msgid ""
"Hides the window. This is not the same as minimized state. Hidden window "
"can't be interacted with and needs to be made visible with [method show]."
msgstr ""
"Cache la fenêtre. Ceci n'est pas identique à l'état minimisé. Une fenêtre "
"cachée ne peut pas être interagie avec et doit être rendue visible avec "
"[method show]."

msgid ""
"Returns [code]true[/code] if the window is currently embedded in another "
"window."
msgstr ""
"Renvoie [code]true[/code] si la fenêtre est actuellement intégrée dans une "
"autre fenêtre."

msgid "Returns [code]true[/code] if the layout is right-to-left."
msgstr "Renvoie [code]true[/code] si la mise en page est de droite à gauche."

msgid ""
"Returns [code]true[/code] if the window can be maximized (the maximize button "
"is enabled)."
msgstr ""
"Renvoie [code]true[/code] si la fenêtre peut être maximisée (le bouton de "
"maximisation est activé)."

msgid ""
"Returns [code]true[/code] if font oversampling is enabled. See [method "
"set_use_font_oversampling]."
msgstr ""
"Renvoie [code]true[/code] si le sur-échantillonnage de la police est activé. "
"Voir [method set_use_font_oversampling]."

msgid ""
"Centers a native window on the current screen and an embedded window on its "
"embedder [Viewport]."
msgstr ""
"Centre une fenêtre native sur l'écran actuel et une fenêtre intégrée sur le "
"[Viewport] dans lequel elle est intégrée."

msgid "Use [method Window.grab_focus] instead."
msgstr "Utilisez [method Window.grab_focus] à la place."

msgid ""
"Shows the [Window] and makes it transient (see [member transient]). If [param "
"rect] is provided, it will be set as the [Window]'s size. Fails if called on "
"the main window.\n"
"If [member ProjectSettings.display/window/subwindows/embed_subwindows] is "
"[code]true[/code] (single-window mode), [param rect]'s coordinates are global "
"and relative to the main window's top-left corner (excluding window "
"decorations). If [param rect]'s position coordinates are negative, the window "
"will be located outside the main window and may not be visible as a result.\n"
"If [member ProjectSettings.display/window/subwindows/embed_subwindows] is "
"[code]false[/code] (multi-window mode), [param rect]'s coordinates are global "
"and relative to the top-left corner of the leftmost screen. If [param rect]'s "
"position coordinates are negative, the window will be placed at the top-left "
"corner of the screen.\n"
"[b]Note:[/b] [param rect] must be in global coordinates if specified."
msgstr ""
"Affiche la [Window] et le rend transitoire (voir [member transient]). Si un "
"rectangle [param rect] est fourni, il sera défini comme la taille de la "
"[Window]. Échoue si appelée sur la fenêtre principale.\n"
"Si [member ProjectSettings.display/window/subwindows/embed_subwindows] vaut "
"[code]true[/code] (mode fenêtre unique), les coordonnées du [param rect] sont "
"globales et relatives au coin supérieur gauche de la fenêtre principale (hors "
"décorations de la fenêtre). Si les coordonnées de position du [param rect] "
"sont négatives, la fenêtre sera située à l'extérieur de la fenêtre principale "
"et ne sera ainsi peut-être pas visible.\n"
"Si [member ProjectSettings.display/window/subwindows/embed_subwindows] vaut "
"[code]false[/code] (mode multi-fenêtre), les coordonnées du [param rect] sont "
"globales et relatives au coin supérieur gauche de l'écran le plus à gauche. "
"Si les coordonnées de position du [param rect] sont négatives, la fenêtre "
"sera placée au coin supérieur gauche de l'écran.\n"
"[b]Note :[/b] [param rect] doit être dans les coordonnées globales si "
"spécifié."

msgid ""
"Popups the [Window] at the center of the current screen, with optionally "
"given minimum size. If the [Window] is embedded, it will be centered in the "
"parent [Viewport] instead.\n"
"[b]Note:[/b] Calling it with the default value of [param minsize] is "
"equivalent to calling it with [member size]."
msgstr ""
"Fait apparaître la [Window] comme une popup au centre de l'écran actuel, avec "
"en option une taille minimale donnée. Si la [Window] est intégrée, elle sera "
"à la place centrée dans le [Viewport] parent.\n"
"[b]Note :[/b] L'appeler avec la valeur par défaut de [param minsize] équivaut "
"à l'appeler avec [member size]."

msgid ""
"Popups the [Window] centered inside its parent [Window]. [param "
"fallback_ratio] determines the maximum size of the [Window], in relation to "
"its parent.\n"
"[b]Note:[/b] Calling it with the default value of [param minsize] is "
"equivalent to calling it with [member size]."
msgstr ""
"Fait apparaître la [Window] comme une popup centrée dans sa [Window] parente. "
"[param fallback_ratio] détermine la taille maximale de la [Window], en "
"relation avec son parent.\n"
"[b]Note :[/b] L'appeler avec la valeur par défaut de [param minsize] équivaut "
"à l'appeler avec [member size]."

msgid ""
"If [Window] is embedded, popups the [Window] centered inside its embedder and "
"sets its size as a [param ratio] of embedder's size.\n"
"If [Window] is a native window, popups the [Window] centered inside the "
"screen of its parent [Window] and sets its size as a [param ratio] of the "
"screen size."
msgstr ""
"Si la [Window] est intégrée, fait apparaître la [Window] comme une popup "
"centrée à l'intérieur de son intégrateur et définit sa taille en tant que "
"[param ratio] de la taille de l'intégrateur.\n"
"Si la [Window] est une fenêtre native, fait apparaître la [Window] comme une "
"popup centrée à l'intérieur de l'écran de sa [Window] parente et définit sa "
"taille en tant que [param ratio] de la taille de l'écran."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup] on it. The dialog "
"must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive "
"relative à [param from_node], puis appelle [method Window.popup] dessus. La "
"boîte de dialogue ne doit pas avoir de parent actuel, sinon la méthode "
"échoue.\n"
"Voir aussi [method set_unparent_when_invisible] et [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_centered] on it. The "
"dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive "
"relative à [param from_node], puis appelle [method Window.popup_centered] "
"dessus. La boîte de dialogue ne doit pas avoir de parent actuel, sinon la "
"méthode échoue.\n"
"Voir aussi [method set_unparent_when_invisible] et [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_centered_clamped] on "
"it. The dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive "
"relative à [param from_node], puis appelle [method "
"Window.popup_centered_clamped] dessus. La boîte de dialogue ne doit pas avoir "
"de parent actuel, sinon la méthode échoue.\n"
"Voir aussi [method set_unparent_when_invisible] et [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_centered_ratio] on it. "
"The dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive "
"relative à [param from_node], puis appelle [method "
"Window.popup_centered_ratio] dessus. La boîte de dialogue ne doit pas avoir "
"de parent actuel, sinon la méthode échoue.\n"
"Voir aussi [method set_unparent_when_invisible] et [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_on_parent] on it. The "
"dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Essaye de parenter cette boîte de dialogue à la dernière fenêtre exclusive "
"relative à [param from_node], puis appelle [method Window.popup_on_parent] "
"dessus. La boîte de dialogue ne doit pas avoir de parent actuel, sinon la "
"méthode échoue.\n"
"Voir aussi [method set_unparent_when_invisible] et [method "
"Node.get_last_exclusive_window]."

msgid ""
"Popups the [Window] with a position shifted by parent [Window]'s position. If "
"the [Window] is embedded, has the same effect as [method popup]."
msgstr ""
"Fait apparaître la [Window] comme une popup avec une position décalée par la "
"positon de la [Window] parente. Si la [Window] est intégrée, a le même effet "
"que [method popup]."

msgid ""
"Tells the OS that the [Window] needs an attention. This makes the window "
"stand out in some way depending on the system, e.g. it might blink on the "
"task bar."
msgstr ""
"Indique à l'OS que le [Window] a besoin d'attention. Cela fait que la fenêtre "
"se démarque d'une certaine manière en fonction du système, par exemple, elle "
"peut clignoter dans la barre des tâches."

msgid ""
"Resets the size to the minimum size, which is the max of [member min_size] "
"and (if [member wrap_controls] is enabled) [method "
"get_contents_minimum_size]. This is equivalent to calling "
"[code]set_size(Vector2i())[/code] (or any size below the minimum)."
msgstr ""
"Réinitialise la taille à la taille minimale, qui est le max de [member "
"min_size] et (si [member wrap_controls] est activé) [method "
"get_contents_minimum_size]. Ceci est équivalent à appeler "
"[code]set_size(Vector2i())[/code] (ou toute taille inférieure au minimum)."

msgid "Sets a specified window flag."
msgstr "Définit un drapeau de fenêtre spécifié."

msgid ""
"If [param active] is [code]true[/code], enables system's native IME (Input "
"Method Editor)."
msgstr ""
"Si [param active] vaut [code]true[/code], active l'IME natif du système "
"(Input Method Editor, litt. \"Éditeur de la méthode d'entrée\")."

msgid "Moves IME to the given position."
msgstr "Déplace l'IME à la position donnée."

msgid ""
"Sets layout direction and text writing direction. Right-to-left layouts are "
"necessary for certain languages (e.g. Arabic and Hebrew)."
msgstr ""
"Définit la direction de mise en page et la direction d'écriture de texte. Les "
"mises en page de droite à gauche sont nécessaires pour certaines langues (par "
"exemple, l'arabe et l'hébreu)."

msgid ""
"If [param unparent] is [code]true[/code], the window is automatically "
"unparented when going invisible.\n"
"[b]Note:[/b] Make sure to keep a reference to the node, otherwise it will be "
"orphaned. You also need to manually call [method Node.queue_free] to free the "
"window if it's not parented."
msgstr ""
"Si [param unparent] vaut [code]true[/code], la fenêtre est automatiquement "
"retirée de son parent lorsqu'elle devient invisible.\n"
"[b]Note :[/b] Assurez-vous de garder une référence au nœud, sinon il sera "
"orphelin. Vous devez également appeler manuellement [method Node.queue_free] "
"pour libérer la fenêtre si elle n'est pas parentée."

msgid ""
"Enables font oversampling. This makes fonts look better when they are scaled "
"up."
msgstr ""
"Active le sur-échantillonnage de la police. Cela rend les polices plus belles "
"quand elles sont agrandies."

msgid ""
"Makes the [Window] appear. This enables interactions with the [Window] and "
"doesn't change any of its property other than visibility (unlike e.g. [method "
"popup])."
msgstr ""
"Fait apparaître la [Window]. Cela permet d'interagir avec la [Window] et ne "
"change aucune de ses propriétés autre que sa visibilité (contrairement à par "
"exemple [method popup])."

msgid ""
"Starts an interactive resize operation on the window, using the current mouse "
"position. Call this method when handling a mouse button being pressed to "
"simulate a pressed event on the window's edge."
msgstr ""
"Démarre une opération de redimensionnement interactive sur la fenêtre, en "
"utilisant la position actuelle de la souris. Appelez cette méthode lors de la "
"manipulation d'un bouton de souris appuyé pour simuler un événement d'appui "
"sur le bord de la fenêtre."

msgid ""
"If [code]true[/code], the window will be on top of all other windows. Does "
"not work if [member transient] is enabled."
msgstr ""
"Si [code]true[/code], la fenêtre sera au-dessus de toutes les autres "
"fenêtres. Ne fonctionne pas si [member transient] est activé."

msgid "If [code]true[/code], the window will have no borders."
msgstr "Si [code]true[/code], la fenêtre n'aura pas de bordures."

msgid ""
"Specifies how the content's aspect behaves when the [Window] is resized. The "
"base aspect is determined by [member content_scale_size]."
msgstr ""
"Spécifie comment le rapport d'aspect du contenu se comporte lorsque la "
"[Window] est redimensionnée. L'aspect de base est déterminé par [member "
"content_scale_size]."

msgid ""
"Specifies the base scale of [Window]'s content when its [member size] is "
"equal to [member content_scale_size]. See also [method "
"Viewport.get_stretch_transform]."
msgstr ""
"Spécifie l'échelle de base du contenu de la [Window] lorsque sa [member size] "
"est égale à [member content_scale_size]. Voir aussi [method "
"Viewport.get_stretch_transform]."

msgid "Specifies how the content is scaled when the [Window] is resized."
msgstr ""
"Spécifie comment le contenu est mis à l'échelle lorsque la [Window] est "
"redimensionnée."

msgid ""
"Base size of the content (i.e. nodes that are drawn inside the window). If "
"non-zero, [Window]'s content will be scaled when the window is resized to a "
"different size."
msgstr ""
"Taille de base du contenu (c.-à-d. des nœuds qui sont dessinés à l'intérieur "
"de la fenêtre). Si différent de zéro, le contenu de la [Window] sera réduit "
"lorsque la fenêtre est redimensionnée à une taille différente."

msgid ""
"The policy to use to determine the final scale factor for 2D elements. This "
"affects how [member content_scale_factor] is applied, in addition to the "
"automatic scale factor determined by [member content_scale_size]."
msgstr ""
"La politique à utiliser pour déterminer le facteur d'échelle finale pour les "
"éléments 2D. Cela affecte la façon dont [member content_scale_factor] est "
"appliqué, en plus du facteur d'échelle automatique déterminé par [member "
"content_scale_size]."

msgid "The screen the window is currently on."
msgstr "L'écran sur lequel est actuellement la fenêtre."

msgid ""
"If [code]true[/code], the [Window] is excluded from screenshots taken by "
"[method DisplayServer.screen_get_image], [method "
"DisplayServer.screen_get_image_rect], and [method "
"DisplayServer.screen_get_pixel].\n"
"[b]Note:[/b] This property is implemented on macOS and Windows.\n"
"[b]Note:[/b] Enabling this setting will prevent standard screenshot methods "
"from capturing a window image, but does [b]NOT[/b] guarantee that other apps "
"won't be able to capture an image. It should not be used as a DRM or security "
"measure."
msgstr ""
"Si [code]true[/code], la [Window] est exclue des captures d'écran prises par "
"[method DisplayServer.screen_get_image], [method "
"DisplayServer.screen_get_image_rect] et [method "
"DisplayServer.screen_get_pixel].\n"
"[b]Note :[/b] Cette propriété est implémentée sur macOS et Windows.\n"
"[b]Note :[/b] L'activation de ce paramètre empêchera les méthodes standard de "
"capture d'écran de capturer une image de la fenêtre, mais ne garantit [b]PAS[/"
"b] que d'autres applications ne pourront pas capturer une image. Il ne doit "
"pas être utilisé comme mesure de DRM ou de sécurité."

msgid ""
"If [code]true[/code], the [Window] will be in exclusive mode. Exclusive "
"windows are always on top of their parent and will block all input going to "
"the parent [Window].\n"
"Needs [member transient] enabled to work."
msgstr ""
"Si [code]true[/code], la [Window] sera en mode exclusif. Les fenêtres "
"exclusives sont toujours en haut de leur parent et bloqueront toutes les "
"entrées vers la [Window] parente.\n"
"Nécessite que [member transient] soit activé pour fonctionner."

msgid ""
"If [code]true[/code], the [Window] contents is expanded to the full size of "
"the window, window title bar is transparent.\n"
"[b]Note:[/b] This property is implemented only on macOS.\n"
"[b]Note:[/b] This property only works with native windows."
msgstr ""
"Si [code]true[/code], le contenu de la [Window] est étendu à la taille "
"complète de la fenêtre, la barre du titre de la fenêtre est transparente.\n"
"[b]Note :[/b] Cette propriété n'est implémentée que sur macOS.\n"
"[b]Note :[/b] Cette propriété ne fonctionne qu'avec des fenêtres natives."

msgid ""
"If [code]true[/code], native window will be used regardless of parent "
"viewport and project settings."
msgstr ""
"Si [code]true[/code], une fenêtre native sera utilisée indépendamment des "
"paramètres du viewport parent et du projet."

msgid "Specifies the initial type of position for the [Window]."
msgstr "Spécifie le type initial de position pour la [Window]."

msgid ""
"If [code]true[/code], the [Window] width is expanded to keep the title bar "
"text fully visible."
msgstr ""
"Si [code]true[/code], la largeur de la [Window] est étendue pour garder le "
"texte de la barre du titre entièrement visible."

msgid ""
"If non-zero, the [Window] can't be resized to be bigger than this size.\n"
"[b]Note:[/b] This property will be ignored if the value is lower than [member "
"min_size]."
msgstr ""
"Si différent de zéro, la [Window] ne peut être redimensionné pour être plus "
"grande que cette taille.\n"
"[b]Note :[/b] Cette propriété sera ignorée si la valeur est inférieure à "
"[member min_size]."

msgid ""
"If [code]true[/code], the [Window]'s maximize button is disabled.\n"
"[b]Note:[/b] If both minimize and maximize buttons are disabled, buttons are "
"fully hidden, and only close button is visible.\n"
"[b]Note:[/b] This property is implemented only on macOS and Windows."
msgstr ""
"Si [code]true[/code], le bouton de maximisation de la [Window] est "
"désactivé.\n"
"[b]Note :[/b] Si les boutons de minimisation et de minimisation sont tous "
"deux désactivés, les boutons sont entièrement cachés, et seul le bouton de "
"fermeture est visible.\n"
"[b]Note :[/b] Cette propriété est implémentée uniquement sur macOS et Windows."

msgid ""
"If non-zero, the [Window] can't be resized to be smaller than this size.\n"
"[b]Note:[/b] This property will be ignored in favor of [method "
"get_contents_minimum_size] if [member wrap_controls] is enabled and if its "
"size is bigger."
msgstr ""
"Si différent de zéro, la [Window] ne peut être redimensionnée pour être plus "
"petite que cette taille.\n"
"[b]Note :[/b] Cette propriété sera ignorée en faveur de [method "
"get_contents_minimum_size] si [member wrap_controls] est activé et si sa "
"taille est plus grande."

msgid ""
"If [code]true[/code], the [Window]'s minimize button is disabled.\n"
"[b]Note:[/b] If both minimize and maximize buttons are disabled, buttons are "
"fully hidden, and only close button is visible.\n"
"[b]Note:[/b] This property is implemented only on macOS and Windows."
msgstr ""
"Si [code]true[/code], le bouton de minimisation de la [Window] est "
"désactivé.\n"
"[b]Note :[/b] Si les boutons de minimisation et de minimisation sont tous "
"deux désactivés, les boutons sont entièrement cachés, et seul le bouton de "
"fermeture est visible.\n"
"[b]Note :[/b] Cette propriété est implémentée uniquement sur macOS et Windows."

msgid ""
"Set's the window's current mode.\n"
"[b]Note:[/b] Fullscreen mode is not exclusive full screen on Windows and "
"Linux.\n"
"[b]Note:[/b] This method only works with native windows, i.e. the main window "
"and [Window]-derived nodes when [member Viewport.gui_embed_subwindows] is "
"disabled in the main viewport."
msgstr ""
"Définit le mode actuel de la fenêtre.\n"
"[b]Note :[/b] Le mode plein écran n'est pas un plein écran exclusif sur "
"Windows et Linux.\n"
"[b]Note :[/b] Cette méthode ne fonctionne qu'avec des fenêtres natives, c'est-"
"à-dire la fenêtre principale et les nœuds dérivés de [Window] lorsque [member "
"Viewport.gui_embed_subwindows] est désactivé dans le viewport principal."

msgid ""
"If [code]true[/code], all mouse events will be passed to the underlying "
"window of the same application. See also [member mouse_passthrough_polygon].\n"
"[b]Note:[/b] This property is implemented on Linux (X11), macOS and Windows.\n"
"[b]Note:[/b] This property only works with native windows."
msgstr ""
"Si [code]true[/code], tous les événements de la souris seront transmis à la "
"fenêtre sous-jacente de la même application. Voir aussi [member "
"mouse_passthrough_polygon].\n"
"[b]Note :[/b] Cette propriété est implémentée sur Linux (X11), macOS et "
"Windows.\n"
"[b]Note :[/b] Cette propriété ne fonctionne qu'avec des fenêtres natives."

msgid ""
"Sets a polygonal region of the window which accepts mouse events. Mouse "
"events outside the region will be passed through.\n"
"Passing an empty array will disable passthrough support (all mouse events "
"will be intercepted by the window, which is the default behavior).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set region, using Path2D node.\n"
"$Window.mouse_passthrough_polygon = $Path2D.curve.get_baked_points()\n"
"\n"
"# Set region, using Polygon2D node.\n"
"$Window.mouse_passthrough_polygon = $Polygon2D.polygon\n"
"\n"
"# Reset region to default.\n"
"$Window.mouse_passthrough_polygon = []\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set region, using Path2D node.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Path2D>(\"Path2D\").Curve.GetBakedPoints();\n"
"\n"
"// Set region, using Polygon2D node.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Polygon2D>(\"Polygon2D\").Polygon;\n"
"\n"
"// Reset region to default.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = [];\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This property is ignored if [member mouse_passthrough] is set to "
"[code]true[/code].\n"
"[b]Note:[/b] On Windows, the portion of a window that lies outside the region "
"is not drawn, while on Linux (X11) and macOS it is.\n"
"[b]Note:[/b] This property is implemented on Linux (X11), macOS and Windows."
msgstr ""
"Définit une région polygonale de la fenêtre qui accepte les événements de la "
"souris. Les évènements de souris en dehors de cette région passeront au "
"travers.\n"
"Passer un tableau vide désactivera cet effet (tous les événements de la "
"souris seront acceptés par la fenêtre, ce qui est le comportement par "
"défaut).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Définir une région, avec un nœud Path2D.\n"
"$Window.mouse_passthrough_polygon = $Path2D.curve.get_baked_points()\n"
"\n"
"# Définir une région, avec un nœud Polygon2D.\n"
"$Window.mouse_passthrough_polygon = $Polygon2D.polygon\n"
"\n"
"# Rétablir la région par défaut.\n"
"$Window.set_window_mouse_passthrough= []\n"
"[/gdscript]\n"
"[csharp]\n"
"// Définir une région, avec un nœud Path2D.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Path2D>(\"Path2D\").Curve.GetBakedPoints();\n"
"\n"
"// Définir une région, avec un nœud Polygon2D.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Polygon2D>(\"Polygon2D\").Polygon;\n"
"\n"
"// Rétablir la région par défaut.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = [];\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Cette propriété est ignorée si [member mouse_passthrough] est "
"défini à [code]true[/code].\n"
"[b]Note :[/b] Sous Windows, la partie de la fenêtre en dehors de la région "
"définie n'est pas dessinée, alors qu'elle l'est sous Linux (X11) et macOS.\n"
"[b]Note :[/b] Cette méthode est implémentée sur Linux (X11), macOS et Windows."

msgid ""
"If [code]true[/code], the [Window] will be considered a popup. Popups are sub-"
"windows that don't show as separate windows in system's window manager's "
"window list and will send close request when anything is clicked outside of "
"them (unless [member exclusive] is enabled)."
msgstr ""
"Si [code]true[/code], la [Window] sera considérée comme une popup. Les popups "
"sont des sous-fenêtres qui ne s'affichent pas comme des fenêtres séparées "
"dans la liste des fenêtres du gestionnaire de fenêtre du système et qui "
"enverront une demande de fermeture lorsque un clic est effectué à l'extérieur "
"d'elles (sauf si [member exclusive] est activé)."

msgid ""
"The window's position in pixels.\n"
"If [member ProjectSettings.display/window/subwindows/embed_subwindows] is "
"[code]false[/code], the position is in absolute screen coordinates. This "
"typically applies to editor plugins. If the setting is [code]true[/code], the "
"window's position is in the coordinates of its parent [Viewport].\n"
"[b]Note:[/b] This property only works if [member initial_position] is set to "
"[constant WINDOW_INITIAL_POSITION_ABSOLUTE]."
msgstr ""
"La position de la fenêtre en pixels.\n"
"Si [member ProjectSettings.display/window/subwindows/embed_subwindows] vaut "
"[code]false[/code], la position est dans les coordonnées de l'écran absolues. "
"Cela s'applique généralement aux plugins d'éditeur. Si le paramètre vaut "
"[code]true[/code], la position de la fenêtre est dans les coordonnées de son "
"[Viewport] parent.\n"
"[b]Note :[/b] Cette propriété ne fonctionne que si [member initial_position] "
"est défini à [constant WINDOW_INITIAL_POSITION_ABSOLUTE]."

msgid ""
"If [code]true[/code], the [Window] will override the OS window style to "
"display sharp corners.\n"
"[b]Note:[/b] This property is implemented only on Windows (11).\n"
"[b]Note:[/b] This property only works with native windows."
msgstr ""
"Si [code]true[/code], la [Window] remplacera le style de fenêtre OS pour "
"afficher des coins pointus.\n"
"[b]Note :[/b] Cette propriété est implémentée uniquement sur Windows (11).\n"
"[b]Note :[/b] Cette propriété ne fonctionne qu'avec des fenêtres natives."

msgid "The window's size in pixels."
msgstr "La taille de la fenêtre en pixels."

msgid ""
"The name of a theme type variation used by this [Window] to look up its own "
"theme items. See [member Control.theme_type_variation] for more details."
msgstr ""
"Le nom d'une variation de type de thème utilisée par cette [Window] pour "
"rechercher ses propres éléments de thème. Voir [member "
"Control.theme_type_variation] pour plus de détails."

msgid ""
"The window's title. If the [Window] is native, title styles set in [Theme] "
"will have no effect."
msgstr ""
"Le titre de la fenêtre. Si la [Window] est native, les styles de titre "
"définis dans le [Theme] n'auront aucun effet."

msgid ""
"If [code]true[/code], the [Window] is transient, i.e. it's considered a child "
"of another [Window]. The transient window will be destroyed with its "
"transient parent and will return focus to their parent when closed. The "
"transient window is displayed on top of a non-exclusive full-screen parent "
"window. Transient windows can't enter full-screen mode.\n"
"Note that behavior might be different depending on the platform."
msgstr ""
"Si [code]true[/code], la [Window] est transitoire, c'est-à-dire qu'elle est "
"considérée comme un enfant d'une autre [Window]. La fenêtre transitoire sera "
"détruite avec son parent transitoire et redonnera le focus à son parent "
"lorsqu'elle sera fermée. La fenêtre transitoire est affichée par dessus une "
"fenêtre parente en plein écran non exclusif. Les fenêtres transitoires ne "
"peuvent pas entrer en mode plein écran.\n"
"Notez que le comportement peut être différent selon la plate-forme."

msgid ""
"If [code]true[/code], and the [Window] is [member transient], this window "
"will (at the time of becoming visible) become transient to the currently "
"focused window instead of the immediate parent window in the hierarchy. Note "
"that the transient parent is assigned at the time this window becomes "
"visible, so changing it afterwards has no effect until re-shown."
msgstr ""
"Si [code]true[/code], et la [Window] a [member transient] d'actif, cette "
"fenêtre deviendra (au moment de devenir visible) transitoire à la fenêtre "
"ayant actuellement le focus au lieu de la fenêtre parente immédiate dans la "
"hiérarchie. Notez que le parent transitoire est assigné au moment où cette "
"fenêtre devient visible, de sorte que le changer après n'a pas d'effet "
"jusqu'à ce qu'elle soit ré-affichée."

msgid ""
"If [code]true[/code], the [Window]'s background can be transparent. This is "
"best used with embedded windows.\n"
"[b]Note:[/b] Transparency support is implemented on Linux, macOS and Windows, "
"but availability might vary depending on GPU driver, display manager, and "
"compositor capabilities.\n"
"[b]Note:[/b] This property has no effect if [member ProjectSettings.display/"
"window/per_pixel_transparency/allowed] is set to [code]false[/code]."
msgstr ""
"Si [code]true[/code], le fond de la [Window] peut être transparent. Ceci est "
"généralement utilisé avec des fenêtres intégrées.\n"
"[b]Note :[/b] Le support de la transparence est implémenté sur Linux, macOS "
"et Windows, mais la disponibilité peut varier en fonction du pilote GPU, du "
"gestionnaire d'affichage et des capacités du compositeur.\n"
"[b]Note :[/b] Cette propriété n'a aucun effet si [member "
"ProjectSettings.display/window/per_pixel_transparency/allowed] est défini à "
"[code]false[/code]."

msgid ""
"If [code]true[/code], the [Window] can't be focused nor interacted with. It "
"can still be visible."
msgstr ""
"Si [code]true[/code], la [Window] ne peut avoir le focus ni être interagie "
"avec. Elle peut encore être visible."

msgid "If [code]true[/code], the window can't be resized."
msgstr "Si [code]true[/code], la fenêtre ne peut pas être redimensionnée."

msgid "If [code]true[/code], the window is visible."
msgstr "Si [code]true[/code], la fenêtre est visible."

msgid ""
"If [code]true[/code], the window's size will automatically update when a "
"child node is added or removed, ignoring [member min_size] if the new size is "
"bigger.\n"
"If [code]false[/code], you need to call [method child_controls_changed] "
"manually."
msgstr ""
"Si [code]true[/code], la taille de la fenêtre sera automatiquement mise à "
"jour lorsqu'un nœud enfant est ajouté ou enlevé, en ignorant [member "
"min_size] si la nouvelle taille est plus grande.\n"
"Si [code]false[/code], vous devez appeler manuellement [method "
"child_controls_changed]."

msgid ""
"Emitted right after [method popup] call, before the [Window] appears or does "
"anything."
msgstr ""
"Émis juste après l'appel à [method popup], avant que la [Window] n'apparaisse "
"ou ne fasse quelque chose."

msgid ""
"Emitted when the [Window]'s close button is pressed or when [member "
"popup_window] is enabled and user clicks outside the window.\n"
"This signal can be used to handle window closing, e.g. by connecting it to "
"[method hide]."
msgstr ""
"Émis lorsque le bouton de fermeture de la [Window] est appuyé ou lorsque "
"[member popup_window] est activé et que l'utilisateur clique à l'extérieur de "
"la fenêtre.\n"
"Ce signal peut être utilisé pour traiter la fermeture de la fenêtre, par "
"exemple en le connectant à [method hide]."

msgid ""
"Emitted when the [Window]'s DPI changes as a result of OS-level changes (e.g. "
"moving the window from a Retina display to a lower resolution one).\n"
"[b]Note:[/b] Only implemented on macOS and Linux (Wayland)."
msgstr ""
"Émis lorsque le DPI de la [Window] change en raison de changements de niveau "
"de l'OS (p. ex. déplacer la fenêtre d'un écran Retina à un écran de "
"résolution inférieure).\n"
"[b]Note :[/b] Seulement implémenté sur MacOS et Linux (Wayland)."

msgid ""
"Emitted when files are dragged from the OS file manager and dropped in the "
"game window. The argument is a list of file paths.\n"
"[codeblock]\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(on_files_dropped)\n"
"\n"
"func on_files_dropped(files):\n"
"\tprint(files)\n"
"[/codeblock]\n"
"[b]Note:[/b] This signal only works with native windows, i.e. the main window "
"and [Window]-derived nodes when [member Viewport.gui_embed_subwindows] is "
"disabled in the main viewport."
msgstr ""
"Émis lorsque des fichiers sont glissés du gestionnaire de fichiers de l'OS et "
"déposés dans la fenêtre de jeu. L'argument est une liste de chemins de "
"fichiers.\n"
"[codeblock]\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(on_files_dropped)\n"
"\n"
"func on_files_dropped(files):\n"
"\tprint(files)\n"
"[/codeblock]\n"
"[b]Note :[/b] Ce signal ne fonctionne qu'avec des fenêtres natives, c'est-à-"
"dire la fenêtre principale et les nœuds dérivés de [Window] lorsque [member "
"Viewport.gui_embed_subwindows] est désactivé dans le viewport principal."

msgid "Emitted when the [Window] gains focus."
msgstr "Émis lorsque la [Window] prend le focus."

msgid "Emitted when the [Window] loses its focus."
msgstr "Émis lorsque la [Window] perd le focus."

msgid ""
"Emitted when a go back request is sent (e.g. pressing the \"Back\" button on "
"Android), right after [constant Node.NOTIFICATION_WM_GO_BACK_REQUEST]."
msgstr ""
"Émis lorsqu'une demande d'aller en arrière est envoyée (p. ex. appuyant sur "
"le bouton \"Retour\" sur Android), juste après [constant "
"Node.NOTIFICATION_WM_GO_BACK_REQUEST]."

msgid ""
"Emitted when the mouse cursor enters the [Window]'s visible area, that is not "
"occluded behind other [Control]s or windows, provided its [member "
"Viewport.gui_disable_input] is [code]false[/code] and regardless if it's "
"currently focused or not."
msgstr ""
"Émis lorsque le curseur de la souris pénètre dans la zone visible de la "
"[Window], qui n'est pas cachée derrière d'autres [Control]s ou fenêtres, à "
"condition que son [member Viewport.gui_disable_input] vaille [code]false[/"
"code], peu importe si elle a le focus ou non."

msgid ""
"Emitted when the mouse cursor leaves the [Window]'s visible area, that is not "
"occluded behind other [Control]s or windows, provided its [member "
"Viewport.gui_disable_input] is [code]false[/code] and regardless if it's "
"currently focused or not."
msgstr ""
"Émis lorsque le curseur de la souris quitte la zone visible de la [Window], "
"qui n'est pas cachée derrière d'autres [Control]s ou fenêtres, à condition "
"que son [member Viewport.gui_disable_input] vaille [code]false[/code], peu "
"importe si elle a le focus ou non."

msgid "Emitted when window title bar text is changed."
msgstr "Émis lorsque le texte de la barre du titre de la fenêtre est modifié."

msgid ""
"Emitted when window title bar decorations are changed, e.g. macOS window "
"enter/exit full screen mode, or extend-to-title flag is changed."
msgstr ""
"Émis lorsque les décorations de la barre du titre de la fenêtre sont "
"modifiées, p.ex. la fenêtre macOS entre/sort du mode plein écran, ou le "
"drapeau d'extension au titre est changé."

msgid "Emitted when [Window] is made visible or disappears."
msgstr "Émis lorsque la [Window] est rendue visible ou disparaît."

msgid ""
"Emitted when the [Window] is currently focused and receives any input, "
"passing the received event as an argument. The event's position, if present, "
"is in the embedder's coordinate system."
msgstr ""
"Émis lorsque la [Window] a actuellement le focus et reçoit une entrée, en "
"passant l'évènement reçu en tant qu'arguement. La position de l'événement, si "
"elle est présente, est dans le système de coordonnées de l'intégrateur."

msgid ""
"Emitted when [Window]'s visibility changes, right before [signal "
"visibility_changed]."
msgstr ""
"Émis lorsque la visibilité de la [Window] change, juste avant [signal "
"visibility_changed]."

msgid ""
"Sent when the node needs to refresh its theme items. This happens in one of "
"the following cases:\n"
"- The [member theme] property is changed on this node or any of its "
"ancestors.\n"
"- The [member theme_type_variation] property is changed on this node.\n"
"- The node enters the scene tree.\n"
"[b]Note:[/b] As an optimization, this notification won't be sent from changes "
"that occur while this node is outside of the scene tree. Instead, all of the "
"theme item updates can be applied at once when the node enters the scene tree."
msgstr ""
"Envoyé quand le nœud a besoin de rafraîchir ses éléments de thème. Cela se "
"produit dans l'un des cas suivants :\n"
"- La propriété [member theme] est modifiée sur ce nœud ou l'un de ses "
"ancêtres.\n"
"- La propriété [member theme_type_variation] est modifiée sur ce nœud.\n"
"- Le nœud entre dans l'arborescence de la scène.\n"
"[b]Note :[/b] En tant qu'optimisation, cette notification ne sera pas envoyée "
"lors de modifications qui se produisent alors que ce nœud est à l'extérieur "
"de l'arborescence de la scène. Au lieu de cela, toutes les mises à jour "
"d'élément de thème peuvent être appliquées en une fois lorsque le nœud entre "
"dans l'arborescence de la scène."

msgid ""
"A single window full screen mode. This mode has less overhead, but only one "
"window can be open on a given screen at a time (opening a child window or "
"application switching will trigger a full screen transition).\n"
"Full screen window covers the entire display area of a screen and has no "
"border or decorations. The display's video mode is not changed.\n"
"[b]Note:[/b] This mode might not work with screen recording software.\n"
"[b]On Android:[/b] This enables immersive mode.\n"
"[b]On Windows:[/b] Depending on video driver, full screen transition might "
"cause screens to go black for a moment.\n"
"[b]On macOS:[/b] A new desktop is used to display the running project. "
"Exclusive full screen mode prevents Dock and Menu from showing up when the "
"mouse pointer is hovering the edge of the screen.\n"
"[b]On Linux (X11):[/b] Exclusive full screen mode bypasses compositor.\n"
"[b]On Linux (Wayland):[/b] Equivalent to [constant MODE_FULLSCREEN].\n"
"[b]Note:[/b] Regardless of the platform, enabling full screen will change the "
"window size to match the monitor's size. Therefore, make sure your project "
"supports [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]multiple resolutions[/url] when enabling full "
"screen mode."
msgstr ""
"Un mode de fenêtre simple en plein écran. Ce mode a moins de surcoût, mais "
"une seule fenêtre peut être ouverte sur un écran donné à la fois (ouvrir une "
"fenêtre enfant ou changer d'application déclenchera une transition de plein "
"écran).\n"
"La fenêtre en plein écran couvre l'ensemble de la zone d'affichage d'un écran "
"et n'a aucune bordure ou de décoration. Le mode vidéo de l'écran n'est pas "
"modifié.\n"
"[b]Note :[/b] Ce mode pourrait ne pas fonctionner avec des logiciels "
"d'enregistrement d'écran.\n"
"[b] Sur Android :[/b] Cela active le mode immersif.\n"
"[b]Sur Windows :[/b] Selon le pilote vidéo, la transition vers le plein écran "
"peut forcer l'écran à devenir noir pendant un court moment.\n"
"[b] Sur macOS :[/b] Un nouveau bureau est utilisé pour afficher le projet en "
"cours. Le mode plein écran exclusif empêche le Dock et le Menu de s'afficher "
"lorsque le pointeur de la souris survole le bord de l'écran.\n"
"[b] Sur Linux (X11) :[/b] Le mode plein écran exclusif contourne le "
"compositeur.\n"
"[b]Sur Linux (Wayland) :[/b] Équivalent à [constant MODE_FULLSCREEN].\n"
"[b]Note :[/b] Quelle que soit la plate-forme, activer le plein écran va "
"modifier taille de la fenêtre pour correspondre à la taille du moniteur. Par "
"conséquent, assurez-vous que votre projet supporte des [url=$DOCS_URL/"
"tutorials/rendering/multiple_résolutions.html]résolutions multiples[/url] "
"lors de l'activation du mode plein écran."

msgid ""
"The window can't be resized by dragging its resize grip. It's still possible "
"to resize the window using [member size]. This flag is ignored for full "
"screen windows. Set with [member unresizable]."
msgstr ""
"La fenêtre ne peut pas être redimensionnée en tirant sur sa poignée de "
"redimensionnement. Il est encore possible de redimensionner la fenêtre en "
"utilisant [member size]. Ce drapeau est ignoré pour les fenêtres en plein "
"écran. Défini avec [member unresizable]."

msgid ""
"The window do not have native title bar and other decorations. This flag is "
"ignored for full-screen windows. Set with [member borderless]."
msgstr ""
"La fenêtre n'a pas de barre de titre natif et d'autres décorations. Ce "
"drapeau est ignoré pour les fenêtres en plein écran. Défini avec [member "
"borderless]."

msgid ""
"The window is floating on top of all other windows. This flag is ignored for "
"full-screen windows. Set with [member always_on_top]."
msgstr ""
"La fenêtre flotte au dessus de toutes les autres fenêtres. Ce drapeau est "
"ignoré pour les fenêtres en plein écran. Défini avec [member always_on_top]."

msgid ""
"The window background can be transparent. Set with [member transparent].\n"
"[b]Note:[/b] This flag has no effect if either [member "
"ProjectSettings.display/window/per_pixel_transparency/allowed], or the "
"window's [member Viewport.transparent_bg] is set to [code]false[/code]."
msgstr ""
"L'arrière-plan de la fenêtre peut être transparent. Défini avec [member "
"transparent].\n"
"[b]Note :[/b] Ce drapeau n'a aucun effet si [member ProjectSettings.display/"
"window/per_pixel_transparency/allowed] ou le [member Viewport.transparent_bg] "
"de la fenêtre est défini à [code]false[/code]."

msgid ""
"The window can't be focused. No-focus window will ignore all input, except "
"mouse clicks. Set with [member unfocusable]."
msgstr ""
"La fenêtre ne peut pas recevoir le focus. Une fenêtre sans focus ignorera "
"toutes les entrées, sauf les clics de souris. Défini avec [member "
"unfocusable]."

msgid ""
"Window content is expanded to the full size of the window. Unlike borderless "
"window, the frame is left intact and can be used to resize the window, title "
"bar is transparent, but have minimize/maximize/close buttons. Set with "
"[member extend_to_title].\n"
"[b]Note:[/b] This flag is implemented only on macOS.\n"
"[b]Note:[/b] This flag has no effect in embedded windows."
msgstr ""
"Le contenu de la fenêtre est élargi à la taille de la fenêtre. Contrairement "
"à la fenêtre sans bords, le cadre est laissé intact et peut être utilisé pour "
"redimensionner la fenêtre, la barre de titre est transparente, mais dispose "
"des boutons de minimisation/maximisation/fermeture. Défini avec [member "
"extend_to_title].\n"
"[b]Note :[/b] Ce drapeau n'est implémenté que sur macOS.\n"
"[b]Note :[/b] Ce drapeau n'a aucun effet dans les fenêtres intégrées."

msgid ""
"All mouse events are passed to the underlying window of the same "
"application.\n"
"[b]Note:[/b] This flag has no effect in embedded windows."
msgstr ""
"Tous les événements de la souris sont passés à la fenêtre sous-jacente de la "
"même application.\n"
"[b]Note :[/b] Ce drapeau n'a aucun effet dans les fenêtres intégrées."

msgid ""
"Window style is overridden, forcing sharp corners.\n"
"[b]Note:[/b] This flag has no effect in embedded windows.\n"
"[b]Note:[/b] This flag is implemented only on Windows (11)."
msgstr ""
"Le style de fenêtre est redéfini, forçant des coins pointus.\n"
"[b]Note :[/b] Cette option n'a aucun effet dans les fenêtres intégrées.\n"
"[b]Note :[/b] Cette option n'est implémentée que sous Windows (11)."

msgid ""
"Windows is excluded from screenshots taken by [method "
"DisplayServer.screen_get_image], [method "
"DisplayServer.screen_get_image_rect], and [method "
"DisplayServer.screen_get_pixel].\n"
"[b]Note:[/b] This flag has no effect in embedded windows.\n"
"[b]Note:[/b] This flag is implemented on macOS and Windows (10, 20H1).\n"
"[b]Note:[/b] Setting this flag will prevent standard screenshot methods from "
"capturing a window image, but does [b]NOT[/b] guarantee that other apps won't "
"be able to capture an image. It should not be used as a DRM or security "
"measure."
msgstr ""
"La fenêtre est exclue des captures d'écran prises par [method "
"DisplayServer.screen_get_image], [method "
"DisplayServer.screen_get_image_rect], et [method "
"DisplayServer.screen_get_pixel].\n"
"[b]Note :[/b] Ce drapeau n'a aucun effet dans les fenêtres intégrées.\n"
"[b]Note :[/b] Ce drapeau est implémenté sur macOS et Windows (10, 20H1).\n"
"[b]Note :[/b] Définir ce drapeau empêchera les méthodes standard de capture "
"d'écran de capturer une image de fenêtre, mais ne garantit [b]PAS[/b] que "
"d'autres applications ne pourront pas capturer une image. Il ne doit pas être "
"utilisé comme mesure de DRM ou de sécurité."

msgid "Max value of the [enum Flags]."
msgstr "Valeur maximale pour les drapeaux [enum Flags]."

msgid "The content will not be scaled to match the [Window]'s size."
msgstr ""
"Le contenu ne sera pas mis à l'échelle pour correspondre à la taille de la "
"[Window]."

msgid ""
"The content will be rendered at the target size. This is more performance-"
"expensive than [constant CONTENT_SCALE_MODE_VIEWPORT], but provides better "
"results."
msgstr ""
"Le contenu sera rendu à la taille cible. Ceci est plus cher en performances "
"que [constant CONTENT_SCALE_MODE_VIEWPORT], mais fournit de meilleurs "
"résultats."

msgid ""
"The content will be rendered at the base size and then scaled to the target "
"size. More performant than [constant CONTENT_SCALE_MODE_CANVAS_ITEMS], but "
"results in pixelated image."
msgstr ""
"Le contenu sera rendu à la taille de base et ensuite échelonné à la taille "
"cible. Plus performant que [constant CONTENT_SCALE_MODE_CANVAS_ITEMS], mais "
"résulte en une image pixelisée."

msgid ""
"The aspect will be ignored. Scaling will simply stretch the content to fit "
"the target size."
msgstr ""
"Le rapport d'aspect sera ignoré. L'échelle va simplement étirer le contenu "
"pour correspondre à la taille cible."

msgid ""
"The content's aspect will be preserved. If the target size has different "
"aspect from the base one, the image will be centered and black bars will "
"appear on left and right sides."
msgstr ""
"Le rapport d'aspect du contenu sera préservé. Si la taille de la cible a un "
"rapport différent de la base, l'image sera centrée et des barres noires "
"apparaîtront sur les côtés gauche et droit."

msgid ""
"The content can be expanded vertically. Scaling horizontally will result in "
"keeping the width ratio and then black bars on left and right sides."
msgstr ""
"Le contenu peut être étendu verticalement. Redimensionner horizontalement "
"résultera en le maintien du rapport de largeur et des barres noires sur les "
"côtés gauche et droit."

msgid ""
"The content can be expanded horizontally. Scaling vertically will result in "
"keeping the height ratio and then black bars on top and bottom sides."
msgstr ""
"Le contenu peut être étendu horizontalement. Redimensionner verticalement "
"résultera en le maintien du rapport de hauteur et des barres noires en haut "
"et en bas."

msgid ""
"The content's aspect will be preserved. If the target size has different "
"aspect from the base one, the content will stay in the top-left corner and "
"add an extra visible area in the stretched space."
msgstr ""
"Le rapport d'aspect du contenu sera préservé. Si la taille de cible a un "
"rapport différent de la taille de base, le contenu restera dans le coin "
"supérieur gauche et ajoutera une zone visible supplémentaire dans l'espace "
"étiré."

msgid ""
"The content will be stretched according to a fractional factor. This fills "
"all the space available in the window, but allows \"pixel wobble\" to occur "
"due to uneven pixel scaling."
msgstr ""
"Le contenu sera étiré selon un facteur fractionnel. Cela remplit tout "
"l'espace disponible dans la fenêtre, mais cause du \"pixel wobble\" en raison "
"de l'échelle inégale des pixels."

msgid ""
"The content will be stretched only according to an integer factor, preserving "
"sharp pixels. This may leave a black background visible on the window's edges "
"depending on the window size."
msgstr ""
"Le contenu sera étiré seulement selon un facteur entier, en conservant les "
"pixels nets. Cela peut laisser un fond noir visible sur les bords de la "
"fenêtre en fonction de la taille de la fenêtre."

msgid ""
"Automatic layout direction, determined from the parent window layout "
"direction."
msgstr ""
"Direction de mise en page automatique, déterminée à partir de la direction de "
"mise en page de la fenêtre parente."

msgid "Automatic layout direction, determined from the current locale."
msgstr ""
"Direction de mise en page automatique, déterminée à partir de la langue "
"actuelle."

msgid "Automatic layout direction, determined from the system locale."
msgstr ""
"Direction de mise en page automatique, déterminée à partir de la langue du "
"système."

msgid "Initial window position is determined by [member position]."
msgstr ""
"La position initiale de la fenêtre est déterminée par [member position]."

msgid "Initial window position is the center of the primary screen."
msgstr "La position initiale de la fenêtre est le centre de l'écran principal."

msgid "Initial window position is the center of the main window screen."
msgstr ""
"La position initiale de la fenêtre est le centre de l'écran de la fenêtre "
"principale."

msgid "Initial window position is the center of [member current_screen] screen."
msgstr ""
"La position initiale de la fenêtre est le centre de l'écran [member "
"current_screen]."

msgid ""
"Initial window position is the center of the screen containing the mouse "
"pointer."
msgstr ""
"La position initiale de la fenêtre est le centre de l'écran contenant le "
"pointeur de la souris."

msgid ""
"Initial window position is the center of the screen containing the window "
"with the keyboard focus."
msgstr ""
"La position initiale de la fenêtre est le centre de l'écran contenant la "
"fenêtre avec le focus du clavier."

msgid "The color of the title's text."
msgstr "La couleur du texte du titre."

msgid "The color of the title's text outline."
msgstr "La couleur du contour du texte du titre."

msgid ""
"Horizontal position offset of the close button, relative to the end of the "
"title bar, towards the beginning of the title bar."
msgstr ""
"Décalage horizontal de position du bouton de fermeture, par rapport à la fin "
"de la barre du titre, vers le début de la barre du titre."

msgid ""
"Vertical position offset of the close button, relative to the bottom of the "
"title bar, towards the top of the title bar."
msgstr ""
"Décalage vertical de position du bouton de fermeture, par rapport au bas de "
"la barre du titre, vers le haut de la barre du titre."

msgid ""
"Defines the outside margin at which the window border can be grabbed with "
"mouse and resized."
msgstr ""
"Définit la marge extérieure à laquelle la bordure de la fenêtre peut être "
"saisie avec la souris et redimensionnée."

msgid "Height of the title bar."
msgstr "Hauteur de la barre du titre."

msgid "The size of the title outline."
msgstr "La taille du contour du titre."

msgid "The font used to draw the title."
msgstr "La police utilisée pour dessiner le titre."

msgid "The size of the title font."
msgstr "La taille de la police de titre."

msgid "The icon for the close button."
msgstr "L'icône personnalisée pour le bouton de fermeture."

msgid "The icon for the close button when it's being pressed."
msgstr "L'icône pour le bouton de fermeture lorsqu'il est appuyé."

msgid ""
"The background style used when the [Window] is embedded. Note that this is "
"drawn only under the window's content, excluding the title. For proper "
"borders and title bar style, you can use [code]expand_margin_*[/code] "
"properties of [StyleBoxFlat].\n"
"[b]Note:[/b] The content background will not be visible unless [member "
"transparent] is enabled."
msgstr ""
"Le style d'arrière-plan utilisé lorsque la [Window] est intégrée. Notez que "
"cela n'est affiché que sous le contenu de la fenêtre, à l'exception du titre. "
"Pour des bordures et un style de barre de titre appropriés, vous pouvez "
"utiliser les propriétés [code]expand_margin_*[/code] de [StyleBoxFlat].\n"
"[b]Note :[/b] L'arrière-plan du contenu ne sera visible que si [member "
"transparent] est activé."

msgid "The background style used when the [Window] is embedded and unfocused."
msgstr ""
"Le style d'arrière-plan utilisé lorsque la [Window] est intégrée et sans le "
"focus."

msgid ""
"A resource that holds all components of a 2D world, such as a canvas and a "
"physics space."
msgstr ""
"Une ressource qui détient toutes les composantes d'un monde 2D, comme un "
"canevas et un espace physique."

msgid ""
"Class that has everything pertaining to a 2D world: A physics space, a "
"canvas, and a sound space. 2D nodes register their resources into the current "
"2D world."
msgstr ""
"Une classe qui a tout ce qui concerne un monde 2D : Un espace physique, un "
"canevas et un espace de son. Les nœuds 2D enregistrent leurs ressources dans "
"le monde 2D actuel."

msgid ""
"The [RID] of this world's canvas resource. Used by the [RenderingServer] for "
"2D drawing."
msgstr ""
"Le [RID] de la ressource du canevas de ce monde. Utilisé par le "
"[RenderingServer] pour le dessin 2D."

msgid ""
"Direct access to the world's physics 2D space state. Used for querying "
"current and potential collisions. When using multi-threaded physics, access "
"is limited to [method Node._physics_process] in the main thread."
msgstr ""
"Accès direct à l'état de l'espace physique 2D du monde. Utilisé pour "
"interroger sur des collisions actuelles et potentielles. Lors de "
"l'utilisation de la physique multi-threaded, l'accès est limité à [method "
"Node._physics_process] dans le fil d'exécution principal."

msgid ""
"The [RID] of this world's navigation map. Used by the [NavigationServer2D]."
msgstr ""
"Le [RID] de la carte de navigation de ce monde. Utilisé par le "
"[NavigationServer2D]."

msgid ""
"The [RID] of this world's physics space resource. Used by the "
"[PhysicsServer2D] for 2D physics, treating it as both a space and an area."
msgstr ""
"Le [RID] de la ressource de l’espace physique de ce monde. Utilisé par le "
"[PhysicsServer2D] pour la physique 2D, le traitant à la fois comme un espace "
"et une zone."

msgid ""
"A resource that holds all components of a 3D world, such as a visual scenario "
"and a physics space."
msgstr ""
"Une ressource qui détient toutes les composantes d'un monde 3D, comme un "
"scénario visuel et un espace physique."

msgid ""
"Class that has everything pertaining to a world: A physics space, a visual "
"scenario, and a sound space. 3D nodes register their resources into the "
"current 3D world."
msgstr ""
"Une classe qui a tout ce qui concerne un monde 3D : Un espace physique, un "
"scénario visuel et un espace de son. Les nœuds 3D enregistrent leurs "
"ressources dans le monde 3D actuel."

msgid ""
"The default [CameraAttributes] resource to use if none set on the [Camera3D]."
msgstr ""
"La ressource [CameraAttributes] par défaut à utiliser si aucune n'est définie "
"sur la [Camera3D]."

msgid ""
"Direct access to the world's physics 3D space state. Used for querying "
"current and potential collisions. When using multi-threaded physics, access "
"is limited to [method Node._physics_process] in the main thread."
msgstr ""
"Accès direct à l'état de l'espace physique 3D du monde. Utilisé pour "
"interroger sur des collisions actuelles et potentielles. Lors de "
"l'utilisation de la physique multi-threaded, l'accès est limité à [method "
"Node._physics_process] dans le fil d'exécution principal."

msgid "The World3D's [Environment]."
msgstr "L'[Environment] du World3D."

msgid ""
"The World3D's fallback environment will be used if [member environment] fails "
"or is missing."
msgstr ""
"L'environnement de repli du World3D qui sera utilisé si [member environment] "
"échoue ou est manquant."

msgid ""
"The [RID] of this world's navigation map. Used by the [NavigationServer3D]."
msgstr ""
"Le [RID] de la carte de navigation de ce monde. Utilisé par le "
"[NavigationServer3D]."

msgid "The World3D's visual scenario."
msgstr "Le scénario visuel du World3D."

msgid "The World3D's physics space."
msgstr "L’espace physique du World3D."

msgid "A 2D world boundary (half-plane) shape used for physics collision."
msgstr ""
"Une forme de limite de monde 2D (demi-plan) utilisée pour les collisions "
"physiques."

msgid ""
"A 2D world boundary shape, intended for use in physics. "
"[WorldBoundaryShape2D] works like an infinite straight line that forces all "
"physics bodies to stay above it. The line's normal determines which direction "
"is considered as \"above\" and in the editor, the smaller line over it "
"represents this direction. It can for example be used for endless flat floors."
msgstr ""
"Une forme de limite de monde 2D, destinée à être utilisée pour la physique. "
"[WorldBoundaryShape2D] fonctionne comme une ligne droite infinie qui force "
"tous les corps physiques à rester au-dessus d'elle. La normale de la ligne "
"détermine quelle direction est considérée comme \"au-dessus\" et dans "
"l'éditeur, la ligne plus petite au-dessus représente cette direction. Elle "
"peut par exemple être utilisée pour des sols plats infinis."

msgid ""
"The distance from the origin to the line, expressed in terms of [member "
"normal] (according to its direction and magnitude). Actual absolute distance "
"from the origin to the line can be calculated as [code]abs(distance) / "
"normal.length()[/code].\n"
"In the scalar equation of the line [code]ax + by = d[/code], this is [code]d[/"
"code], while the [code](a, b)[/code] coordinates are represented by the "
"[member normal] property."
msgstr ""
"La distance entre l'origine et la ligne, exprimée en termes de [member "
"normal] (selon sa direction et sa longueur). La distance absolue réelle de "
"l'origine vers la ligne peut être calculée avec [code]abs(distance) / "
"normal.length()[/code].\n"
"Dans l'équation scalaire de la ligne [code]ax + by = d[/code], c'est [code]d[/"
"code], tandis que les coordonnées [code](a, b)[/code] sont représentées par "
"la propriété [member normal]."

msgid ""
"The line's normal, typically a unit vector. Its direction indicates the non-"
"colliding half-plane. Can be of any length but zero. Defaults to [constant "
"Vector2.UP]."
msgstr ""
"La normale de la ligne, généralement un vecteur unitaire. Sa direction "
"indique le demi-plan n'entrant pas en collision. Peut être de n'importe "
"quelle longueur sauf zéro. Vaut par défaut [constant Vector2.UP]."

msgid "A 3D world boundary (half-space) shape used for physics collision."
msgstr ""
"Une forme de limite de monde 3D (demi-espace) utilisée pour les collisions "
"physiques."

msgid ""
"A 3D world boundary shape, intended for use in physics. "
"[WorldBoundaryShape3D] works like an infinite plane that forces all physics "
"bodies to stay above it. The [member plane]'s normal determines which "
"direction is considered as \"above\" and in the editor, the line over the "
"plane represents this direction. It can for example be used for endless flat "
"floors.\n"
"[b]Note:[/b] When the physics engine is set to [b]Jolt Physics[/b] in the "
"project settings ([member ProjectSettings.physics/3d/physics_engine]), "
"[WorldBoundaryShape3D] has a finite size (centered at the shape's origin). It "
"can be adjusted by changing [member ProjectSettings.physics/jolt_physics_3d/"
"limits/world_boundary_shape_size]."
msgstr ""
"Une forme de limite de monde 3D, destinée à être utilisée pour la physique. "
"[WorldBoundaryShape3D] fonctionne comme un plan infini qui force tous les "
"corps physiques à rester au-dessus de lui. La normale du plan [member plane] "
"détermine quelle direction est considérée comme \"au-dessus\" et dans "
"l'éditeur, la ligne au-dessus du plan représente cette direction. Elle peut "
"par exemple être utilisée pour des sols plats infinis.\n"
"[b]Note :[/b] Lorsque le moteur de physique est défini à [b]Jolt Physics[/b] "
"dans les paramètres du projet ([member ProjectSettings.physics/3d/"
"physics_engine]), [WorldBoundaryShape3D] a une taille finie (centrée à "
"l'origine de la forme). Cela peut être ajusté en changeant [member "
"ProjectSettings.physics/jolt_physics_3d/limits/world_boundary_shape_size]."

msgid "The [Plane] used by the [WorldBoundaryShape3D] for collision."
msgstr "Le [Plane] utilisé par le [WorldBoundaryShape3D] pour les collisions."

msgid ""
"Default environment properties for the entire scene (post-processing effects, "
"lighting and background settings)."
msgstr ""
"Les propriétés par défaut de l'environnement de toute la scène (effets de "
"post-processing, éclairage et réglages de l'arrière-plan)."

msgid ""
"The [WorldEnvironment] node is used to configure the default [Environment] "
"for the scene.\n"
"The parameters defined in the [WorldEnvironment] can be overridden by an "
"[Environment] node set on the current [Camera3D]. Additionally, only one "
"[WorldEnvironment] may be instantiated in a given scene at a time.\n"
"The [WorldEnvironment] allows the user to specify default lighting parameters "
"(e.g. ambient lighting), various post-processing effects (e.g. SSAO, DOF, "
"Tonemapping), and how to draw the background (e.g. solid color, skybox). "
"Usually, these are added in order to improve the realism/color balance of the "
"scene."
msgstr ""
"Le nœud [WorldEnvironment] est utilisé pour configurer l'[Environment] par "
"défaut pour la scène.\n"
"Les paramètres définis dans le [WorldEnvironment] peuvent être redéfinis par "
"un nœud [Environment] défini sur la [Camera3D] courante. En plus, un seul "
"[WorldEnvironment] peut être instancié dans une scène donnée à la fois.\n"
"Le [WorldEnvironment] permet à l'utilisateur de spécifier les paramètres de "
"lumière par défaut (par exemple l'éclairage ambiant), les divers effets de "
"post-traitement (p. ex. SSAO, profondeur de champ, Tonemapping) et comment "
"dessiner l'arrière-plan (p. ex. couleur solide, skybox). Habituellement, ils "
"sont ajoutés afin d'améliorer le réalisme/la balance des couleurs de la scène."

msgid "The default [Compositor] resource to use if none set on the [Camera3D]."
msgstr ""
"La ressource [Compositor] par défaut à utiliser si aucune n'est définie sur "
"la [Camera3D]."

msgid ""
"The [Environment] resource used by this [WorldEnvironment], defining the "
"default properties."
msgstr ""
"La ressource du [Environment] utilisé par ce [WorldEnvironment], définissant "
"les propriétés par défaut."

msgid "An X509 certificate (e.g. for TLS)."
msgstr "Un certificat X509 (par ex. pour TLS)."

msgid ""
"The X509Certificate class represents an X509 certificate. Certificates can be "
"loaded and saved like any other [Resource].\n"
"They can be used as the server certificate in [method "
"StreamPeerTLS.accept_stream] (along with the proper [CryptoKey]), and to "
"specify the only certificate that should be accepted when connecting to a TLS "
"server via [method StreamPeerTLS.connect_to_stream]."
msgstr ""
"La classe X509Certificate représente un certificat X509. Les certificats "
"peuvent être chargés et sauvegardés comme tout autre [Resource].\n"
"Ils peuvent être utilisés comme certificat de serveur dans [method "
"StreamPeerTLS.accept_stream] (avec la clé [CryptoKey] correcte), et pour "
"spécifier le seul certificat qui devrait être accepté lors de la connexion à "
"un serveur TLS via [method StreamPeerTLS.connect_to_stream]."

msgid "Loads a certificate from [param path] (\"*.crt\" file)."
msgstr "Charge un certificat depuis [param path] (fichier \"*.crt\")."

msgid "Loads a certificate from the given [param string]."
msgstr "Charge un certificat depuis la chaîne [param string] donnée."

msgid ""
"Saves a certificate to the given [param path] (should be a \"*.crt\" file)."
msgstr ""
"Sauvegarde un certificat au chemin [param path] donné (devrait être un "
"fichier \"*.crt\")."

msgid ""
"Returns a string representation of the certificate, or an empty string if the "
"certificate is invalid."
msgstr ""
"Renvoie une représentation en chaîne du certificat, ou une chaîne vide si le "
"certificat est invalide."

msgid ""
"Returns [code]true[/code] if the currently parsed element is empty, e.g. "
"[code]<element />[/code]."
msgstr ""
"Renvoie [code]true[/code] si l’élément actuellement traité est vide, par "
"exemple [code]<element />[/code]."

msgid "There's no node (no file or buffer opened)."
msgstr "Il y aucun nœud (pas de fichier ou de mémoire tampon ouverte)."

msgid "An anchor point in AR space."
msgstr "Un point d'ancrage dans l'espace AR."

msgid ""
"The [XRAnchor3D] point is an [XRNode3D] that maps a real world location "
"identified by the AR platform to a position within the game world. For "
"example, as long as plane detection in ARKit is on, ARKit will identify and "
"update the position of planes (tables, floors, etc.) and create anchors for "
"them.\n"
"This node is mapped to one of the anchors through its unique ID. When you "
"receive a signal that a new anchor is available, you should add this node to "
"your scene for that anchor. You can predefine nodes and set the ID; the nodes "
"will simply remain on [code](0, 0, 0)[/code] until a plane is recognized.\n"
"Keep in mind that, as long as plane detection is enabled, the size, placing "
"and orientation of an anchor will be updated as the detection logic learns "
"more about the real world out there especially if only part of the surface is "
"in view."
msgstr ""
"Le point [XRAnchor3D] est un nœud [XRNode3D] qui associe un emplacement réel "
"du monde identifié par la plateforme AR à une position dans le monde du jeu. "
"Par exemple, tant que la détection des plans dans ARKit est activée, ARKit "
"identifiera et mettra à jour la position des plans (tables, planchers, etc) "
"et créera des ancrages pour eux.\n"
"Ce nœud est associé à l'un des ancrage à travers son identifiant unique. "
"Lorsque vous recevez un signal qu'un nouvel ancrage est disponible, vous "
"devez ajouter ce nœud à votre scène pour cet ancrage. Vous pouvez prédéfinir "
"les nœuds et définir l'identifiant, les nœuds resteront simplement sur [code]"
"(0, 0, 0)[/code] jusqu'à ce qu'un plan soit reconnu.\n"
"Gardez à l'esprit que, tant que la détection des plans est activée, la "
"taille, le placement et l'orientation d'un ancrage seront mis à jour pendant "
"que la logique de détection en apprend davantage sur le monde réel, surtout "
"si une partie seulement de la surface est en vue."

msgid "XR documentation index"
msgstr "Index de la documentation sur la XR"

msgid "Returns a plane aligned with our anchor; handy for intersection testing."
msgstr ""
"Renvoie un plan aligné avec notre ancre. Pratique pour les essais "
"d’intersection."

msgid ""
"Returns the estimated size of the plane that was detected. Say when the "
"anchor relates to a table in the real world, this is the estimated size of "
"the surface of that table."
msgstr ""
"Renvoie la taille estimée du plan détecté. Disons que lorsque l’ancre se "
"rapporte à une table dans le monde réel, c’est la taille estimée de la "
"surface de cette table."

msgid "A node for driving body meshes from [XRBodyTracker] data."
msgstr ""
"Un nœud pour contrôler les maillage de corps depuis des données "
"[XRBodyTracker]."

msgid ""
"This node uses body tracking data from an [XRBodyTracker] to pose the "
"skeleton of a body mesh.\n"
"Positioning of the body is performed by creating an [XRNode3D] ancestor of "
"the body mesh driven by the same [XRBodyTracker].\n"
"The body tracking position-data is scaled by [member Skeleton3D.motion_scale] "
"when applied to the skeleton, which can be used to adjust the tracked body to "
"match the scale of the body model."
msgstr ""
"Ce nœud utilise les données de suivi du corps d'un [XRBodyTracker] pour "
"rendre les poses du squelette d'un maillage de corps.\n"
"Le positionnement du corps est effectué en créant un ancêtre [XRNode3D] du "
"maillage de corps conduit par le même [XRBodyTracker].\n"
"Les données de position du corps sont dimensionnées par [member "
"Skeleton3D.motion_scale] lorsqu'elles sont appliquées au squelette, ce qui "
"peut être utilisé pour ajuster le corps suivi afin de correspondre à "
"l'échelle du modèle de corps."

msgid ""
"The name of the [XRBodyTracker] registered with [XRServer] to obtain the body "
"tracking data from."
msgstr ""
"Le nom du [XRBodyTracker] enregistré avec [XRServer] d'où obtenir les données "
"de suivi du corps."

msgid "Specifies the body parts to update."
msgstr "Spécifie les parties du corps à mettre à jour."

msgid "Specifies the type of updates to perform on the bones."
msgstr "Spécifie le type de mises à jour à effectuer sur les os."

msgid "The skeleton's upper body joints are updated."
msgstr "Les articulations supérieures du squelette sont mises à jour."

msgid "The skeleton's lower body joints are updated."
msgstr "Les articulations inférieures du squelette sont mises à jour."

msgid "The skeleton's hand joints are updated."
msgstr "Les articulations des mains du squelette sont mises à jour."

msgid ""
"The skeleton's bones are fully updated (both position and rotation) to match "
"the tracked bones."
msgstr ""
"Les os du squelette sont complètement mis à jour (à la fois en position et en "
"rotation) pour correspondre aux os suivis."

msgid ""
"The skeleton's bones are only rotated to align with the tracked bones, "
"preserving bone length."
msgstr ""
"Les os du squelette ne sont tournés que pour s'aligner avec les os suivis, "
"préservant la longueur des os."

msgid "Represents the size of the [enum BoneUpdate] enum."
msgstr "Représente la taille de l'énumération [enum BoneUpdate]."

msgid "A tracked body in XR."
msgstr "Un corps suivi en XR."

msgid ""
"A body tracking system will create an instance of this object and add it to "
"the [XRServer]. This tracking system will then obtain skeleton data, convert "
"it to the Godot Humanoid skeleton and store this data on the [XRBodyTracker] "
"object.\n"
"Use [XRBodyModifier3D] to animate a body mesh using body tracking data."
msgstr ""
"Un système de suivi du corps créera une instance de cet objet et l'ajoutera "
"au [XRServer]. Ce système de suivi obtiendra ensuite des données de "
"squelette, les convertira au squelette Godot Humanoid et stockera ces données "
"sur l'objet [XRBodyTracker].\n"
"Utilisez [XRBodyModifier3D] pour animer un maillage de corps en utilisant les "
"données de suivi du corps."

msgid ""
"Returns flags about the validity of the tracking data for the given body "
"joint."
msgstr ""
"Renvoie des drapeaux sur la validité des données de suivi pour l'articulation "
"du corps donnée."

msgid "Returns the transform for the given body joint."
msgstr "Renvoie la transformation pour l'articulation du corps donnée."

msgid ""
"Sets flags about the validity of the tracking data for the given body joint."
msgstr ""
"Définit des drapeaux sur la validité des données de suivi pour l'articulation "
"du corps donnée."

msgid "Sets the transform for the given body joint."
msgstr "Définit la transformation pour l'articulation du corps donnée."

msgid "The type of body tracking data captured."
msgstr "Le type de données de suivi du corps capturées."

msgid "If [code]true[/code], the body tracking data is valid."
msgstr "Si [code]true[/code], les données de suivi du corps sont valides."

msgid "Upper body tracking supported."
msgstr "Suivi du corps supérieur supporté."

msgid "Lower body tracking supported."
msgstr "Suivi du corps inférieur supporté."

msgid "Hand tracking supported."
msgstr "Le suivi des mains est supporté."

msgid "Root joint."
msgstr "Articulation de la racine."

msgid "Hips joint."
msgstr "Articulation de la hanche."

msgid "Spine joint."
msgstr "Articulation de colonne vertébrale."

msgid "Chest joint."
msgstr "Articulation de la poitrine."

msgid "Upper chest joint."
msgstr "Articulation de la poitrine supérieure."

msgid "Neck joint."
msgstr "Articulation du cou."

msgid "Head joint."
msgstr "Articulation de la tête."

msgid "Head tip joint."
msgstr "Articulation du haut de la tête."

msgid "Left shoulder joint."
msgstr "Articulation de l'épaule gauche."

msgid "Left upper arm joint."
msgstr "Articulation du bras supérieur gauche."

msgid "Left lower arm joint."
msgstr "Articulation du bras inférieur gauche."

msgid "Right shoulder joint."
msgstr "Articulation de l'épaule droite."

msgid "Right upper arm joint."
msgstr "Articulation du bras supérieur droit."

msgid "Right lower arm joint."
msgstr "Articulation du bras inférieur droit."

msgid "Left upper leg joint."
msgstr "Articulation de la jambe supérieure gauche."

msgid "Left lower leg joint."
msgstr "Articulation de la jambe inférieure gauche."

msgid "Left foot joint."
msgstr "Articulation du pied gauche."

msgid "Left toes joint."
msgstr "Articulation des orteils gauche."

msgid "Right upper leg joint."
msgstr "Articulation de la jambe supérieure droite."

msgid "Right lower leg joint."
msgstr "Articulation de la jambe inférieure droite."

msgid "Right foot joint."
msgstr "Articulation du pied droit."

msgid "Right toes joint."
msgstr "Articulation des orteils droit."

msgid "Left hand joint."
msgstr "Articulation de la main gauche."

msgid "Left palm joint."
msgstr "Articulation de la paume gauche."

msgid "Left wrist joint."
msgstr "Articulation du poignet gauche."

msgid "Left thumb metacarpal joint."
msgstr "Articulation métacarpienne du pouce gauche."

msgid "Left thumb phalanx proximal joint."
msgstr "Articulation de phalange proximale du pouce gauche."

msgid "Left thumb phalanx distal joint."
msgstr "Articulation de phalange distale du pouce gauche."

msgid "Left thumb tip joint."
msgstr "Articulation du bout du pouce gauche."

msgid "Left index finger metacarpal joint."
msgstr "Articulation métacarpienne de l'index gauche."

msgid "Left index finger phalanx proximal joint."
msgstr "Articulation de phalange proximale de l'index gauche."

msgid "Left index finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire de l'index gauche."

msgid "Left index finger phalanx distal joint."
msgstr "Articulation de phalange distale de l'index gauche."

msgid "Left index finger tip joint."
msgstr "Articulation du bout de l'index gauche."

msgid "Left middle finger metacarpal joint."
msgstr "Articulation métacarpienne du majeur gauche."

msgid "Left middle finger phalanx proximal joint."
msgstr "Articulation de phalange proximale du majeur."

msgid "Left middle finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire du majeur gauche."

msgid "Left middle finger phalanx distal joint."
msgstr "Articulation de phalange distale du majeur gauche."

msgid "Left middle finger tip joint."
msgstr "Articulation du bout du majeur."

msgid "Left ring finger metacarpal joint."
msgstr "Articulation métacarpienne de l’annulaire gauche."

msgid "Left ring finger phalanx proximal joint."
msgstr "Articulation de phalange proximale de l'annulaire gauche."

msgid "Left ring finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire de l'annulaire gauche."

msgid "Left ring finger phalanx distal joint."
msgstr "Articulation de phalange distale de l'annulaire gauche."

msgid "Left ring finger tip joint."
msgstr "Articulation du bout de l'annulaire."

msgid "Left pinky finger metacarpal joint."
msgstr "Articulation métacarpienne de l'auriculaire gauche."

msgid "Left pinky finger phalanx proximal joint."
msgstr "Articulation de phalange proximale de l'auriculaire gauche."

msgid "Left pinky finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire de l'auriculaire gauche."

msgid "Left pinky finger phalanx distal joint."
msgstr "Articulation de phalange distale de l'auriculaire gauche."

msgid "Left pinky finger tip joint."
msgstr "Articulation du bout de l'auriculaire."

msgid "Right hand joint."
msgstr "Articulation de la main droite."

msgid "Right palm joint."
msgstr "Articulation de la paume droite."

msgid "Right wrist joint."
msgstr "Articulation du poignet droit."

msgid "Right thumb metacarpal joint."
msgstr "Articulation métacarpienne du pouce droit."

msgid "Right thumb phalanx proximal joint."
msgstr "Articulation de la phalange proximale du pouce droit."

msgid "Right thumb phalanx distal joint."
msgstr "Articulation de la phalange distale du pouce droit."

msgid "Right thumb tip joint."
msgstr "Articulation du bout du pouce gauche."

msgid "Right index finger metacarpal joint."
msgstr "Articulation métacarpienne de l'index droit."

msgid "Right index finger phalanx proximal joint."
msgstr "Articulation de phalange proximale de l'index droit."

msgid "Right index finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire de l'index droit."

msgid "Right index finger phalanx distal joint."
msgstr "Articulation de phalange distale de l'index droit."

msgid "Right index finger tip joint."
msgstr "Articulation du bout de l'index droit."

msgid "Right middle finger metacarpal joint."
msgstr "Articulation métacarpienne du majeur droit."

msgid "Right middle finger phalanx proximal joint."
msgstr "Articulation de phalange proximale du majeur droit."

msgid "Right middle finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire du majeur droit."

msgid "Right middle finger phalanx distal joint."
msgstr "Articulation de phalange distale du majeur droit."

msgid "Right middle finger tip joint."
msgstr "Articulation du bout du majeur droit."

msgid "Right ring finger metacarpal joint."
msgstr "Articulation métacarpienne de l'annulaire droit."

msgid "Right ring finger phalanx proximal joint."
msgstr "Articulation de phalange proximale de l'annulaire droit."

msgid "Right ring finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire de l'annulaire droit."

msgid "Right ring finger phalanx distal joint."
msgstr "Articulation de phalange distale de l'annulaire droit."

msgid "Right ring finger tip joint."
msgstr "Articulation du bout de l'annulaire."

msgid "Right pinky finger metacarpal joint."
msgstr "Articulation métacarpienne de l'auriculaire droit."

msgid "Right pinky finger phalanx proximal joint."
msgstr "Articulation de phalange proximale d'auriculaire droit."

msgid "Right pinky finger phalanx intermediate joint."
msgstr "Articulation de phalange intermédiaire de l'auriculaire droit."

msgid "Right pinky finger phalanx distal joint."
msgstr "Articulation de phalange distale de l'auriculaire droit."

msgid "Right pinky finger tip joint."
msgstr "Articulation du bout de l'auriculaire droit."

msgid "Lower chest joint."
msgstr "Articulation de la poitrine inférieure."

msgid "Left scapula joint."
msgstr "Articulation de la scapula gauche."

msgid "Right scapula joint."
msgstr "Articulation de la scapula droite."

msgid "Left heel joint."
msgstr "Articulation du talon gauche."

msgid "Left middle foot joint."
msgstr "Articulation du milieu du pied gauche."

msgid "Right heel joint."
msgstr "Articulation du talon droit."

msgid "Right middle foot joint."
msgstr "Articulation du milieu du pied droit."

msgid "Represents the size of the [enum Joint] enum."
msgstr "Représente la taille de l'énumération [enum Joint]."

msgid "The joint's orientation data is valid."
msgstr "Les données d'orientation de l'articulation sont valides."

msgid ""
"The joint's orientation is actively tracked. May not be set if tracking has "
"been temporarily lost."
msgstr ""
"L'orientation de l'articulation est activement suivie. Peut ne pas être "
"défini si le suivi a été temporairement perdu."

msgid "The joint's position data is valid."
msgstr "Les données de position de l'articulation sont valides."

msgid ""
"The joint's position is actively tracked. May not be set if tracking has been "
"temporarily lost."
msgstr ""
"La position de l'articulation est activement suivie. Peut ne pas être défini "
"si le suivi a été temporairement perdu."

msgid ""
"A camera node with a few overrules for AR/VR applied, such as location "
"tracking."
msgstr ""
"Un nœud de caméra avec quelques dérogations pour AR / VR appliquée, comme le "
"suivi de localisation."

msgid ""
"This is a helper 3D node for our camera. Note that, if stereoscopic rendering "
"is applicable (VR-HMD), most of the camera properties are ignored, as the HMD "
"information overrides them. The only properties that can be trusted are the "
"near and far planes.\n"
"The position and orientation of this node is automatically updated by the XR "
"Server to represent the location of the HMD if such tracking is available and "
"can thus be used by game logic. Note that, in contrast to the XR Controller, "
"the render thread has access to the most up-to-date tracking data of the HMD "
"and the location of the XRCamera3D can lag a few milliseconds behind what is "
"used for rendering as a result."
msgstr ""
"Ceci est un nœud 3D d'aide pour notre caméra. Notez que, si le rendu "
"stéréoscopique est applicable (VR-HMD), la plupart des propriétés de la "
"caméra sont ignorées, car l'information du HMD les redéfinit. Les seules "
"propriétés qui peuvent être fiables sont les plans de coupe proche et "
"lointain.\n"
"La position et l'orientation de ce nœud sont automatiquement mises à jour par "
"le serveur XR pour représenter l'emplacement du HMD si ce suivi est "
"disponible et peut donc être utilisé par la logique du jeu. Notez que, "
"contrairement au XRController3D, le fil d'exécution de rendu a accès aux "
"données de suivi les plus récentes du HMD et donc l'emplacement de la "
"XRCamera3D peut être à la traîne de quelques millisecondes derrière ce qui "
"est utilisé pour le rendu."

msgid "A 3D node representing a spatially-tracked controller."
msgstr "Un nœud 3D représentant un contrôleur suivi spatialement."

msgid ""
"Returns a numeric value for the input with the given [param name]. This is "
"used for triggers and grip sensors.\n"
"[b]Note:[/b] The current [XRInterface] defines the [param name] for each "
"input. In the case of OpenXR, these are the names of actions in the current "
"action set."
msgstr ""
"Renvoie une valeur numérique pour l'entrée avec le nom [param name] donné. "
"Ceci est utilisé pour les gâchettes et les capteurs de préhension.\n"
"[b]Note :[/b] La [XRInterface] actuelle définit le nom [param name] pour "
"chaque entrée. Dans le cas d'OpenXR, ce sont les noms des actions dans "
"l'ensemble d'actions actuel."

msgid ""
"Returns a [Variant] for the input with the given [param name]. This works for "
"any input type, the variant will be typed according to the actions "
"configuration.\n"
"[b]Note:[/b] The current [XRInterface] defines the [param name] for each "
"input. In the case of OpenXR, these are the names of actions in the current "
"action set."
msgstr ""
"Renvoie un [Variant] pour l'entrée avec le nom [param name] donné. Cela "
"fonctionne pour tout type d'entrée, la variante sera typée selon la "
"configuration des actions.\n"
"[b]Note :[/b] La [XRInterface] actuelle définit le nom [param name] pour "
"chaque entrée. Dans le cas d'OpenXR, ce sont les noms des actions dans "
"l'ensemble d'actions actuel."

msgid "Returns the hand holding this controller, if known."
msgstr "Renvoie la main tenant ce contrôleur, si connue."

msgid ""
"Returns [code]true[/code] if the button with the given [param name] is "
"pressed.\n"
"[b]Note:[/b] The current [XRInterface] defines the [param name] for each "
"input. In the case of OpenXR, these are the names of actions in the current "
"action set."
msgstr ""
"Renvoie [code]true[/code] si le bouton avec le nom [param name] donné est "
"appuyé.\n"
"[b]Note :[/b] La [XRInterface] actuelle définit le nom [param name] pour "
"chaque entrée. Dans le cas d'OpenXR, ce sont les noms des actions dans "
"l'ensemble d'actions actuel."

msgid "Emitted when a button on this controller is pressed."
msgstr "Émis lorsqu’un bouton de ce contrôleur est appuyé."

msgid "Emitted when a button on this controller is released."
msgstr "Émis lorsqu'un bouton de ce contrôleur est relâché."

msgid ""
"Emitted when a trigger or similar input on this controller changes value."
msgstr ""
"Émis lorsqu'une gâchette ou une entrée similaire sur ce contrôleur modifie la "
"valeur."

msgid "Emitted when the interaction profile on this controller is changed."
msgstr "Émis lorsque le profil d'interaction sur ce contrôleur est modifié."

msgid "A tracked controller."
msgstr "Un contrôleur suivi."

msgid ""
"An instance of this object represents a controller that is tracked.\n"
"As controllers are turned on and the [XRInterface] detects them, instances of "
"this object are automatically added to this list of active tracking objects "
"accessible through the [XRServer].\n"
"The [XRController3D] consumes objects of this type and should be used in your "
"project."
msgstr ""
"Une instance de cet objet représente un contrôleur qui est suivi.\n"
"Quand les contrôleurs sont activés et que [XRInterface] les détecte, les "
"instances de cet objet sont automatiquement ajoutées à cette liste d'objets "
"suivis actifs accessibles par le [XRServer].\n"
"Le [XRController3D] consomme des objets de ce type et devrait être utilisé "
"dans votre projet."

msgid "A node for driving standard face meshes from [XRFaceTracker] weights."
msgstr ""
"Un nœud pour contrôler des maillages de visage standards depuis des poids "
"[XRFaceTracker]."

msgid "The [XRFaceTracker] path."
msgstr "Le chemin du [XRFaceTracker]."

msgid "The [NodePath] of the face [MeshInstance3D]."
msgstr "Le [NodePath] du [MeshInstance3D] du visage."

msgid "A tracked face."
msgstr "Un visage suivi."

msgid ""
"An instance of this object represents a tracked face and its corresponding "
"blend shapes. The blend shapes come from the [url=https://docs.vrcft.io/docs/"
"tutorial-avatars/tutorial-avatars-extras/unified-blendshapes]Unified "
"Expressions[/url] standard, and contain extended details and visuals for each "
"blend shape. Additionally the [url=https://docs.vrcft.io/docs/tutorial-"
"avatars/tutorial-avatars-extras/compatibility/overview]Tracking Standard "
"Comparison[/url] page documents the relationship between Unified Expressions "
"and other standards.\n"
"As face trackers are turned on they are registered with the [XRServer]."
msgstr ""
"Une instance de cet objet représente un visage suivi et ses blend shape "
"correspondantes. Les blendshapes proviennent du standard [url=https://"
"docs.vrcft.io/docs/tutorial-avatars/tutorial-avatars-extras/unified-"
"blendshapes] Expressions unifiées[/url] et contient des détails et des "
"visuels étendus pour chaque forme de mélange. En outre, [url=https://"
"docs.vrcft.io/docs/tutorial-avatars/tutorial-avatars-extras/compatibility/"
"overview] Comparaison des standards de suivi[/url] documente la relation "
"entre les expressions unifiées et les autres standards.\n"
"Tant que les trackers de visage sont allumés, ils sont enregistrés avec le "
"[XRServer]."

msgid "Returns the requested face blend shape weight."
msgstr "Renvoie le poids de la blend shape de visage demandée."

msgid "Sets a face blend shape weight."
msgstr "Définit un poids de blend shape de visage."

msgid ""
"The array of face blend shape weights with indices corresponding to the [enum "
"BlendShapeEntry] enum."
msgstr ""
"Le tableau de poids des blend shape de visage avec des indices correspondant "
"à l'énumération [enum BlendShapeEntry]."

msgid "Right eye looks outwards."
msgstr "L'œil droit regarde vers l'extérieur."

msgid "Right eye looks inwards."
msgstr "L'œil droit regarde vers l'intérieur."

msgid "Right eye looks upwards."
msgstr "L'œil droit regarde vers le haut."

msgid "Right eye looks downwards."
msgstr "L'œil droit regarde vers le bas."

msgid "Left eye looks outwards."
msgstr "L'œil gauche regarde vers l'extérieur."

msgid "Left eye looks inwards."
msgstr "L'œil gauche regarde vers l'intérieur."

msgid "Left eye looks upwards."
msgstr "L'œil gauche regarde vers le haut."

msgid "Left eye looks downwards."
msgstr "L'œil gauche regarde vers le bas."

msgid "Closes the right eyelid."
msgstr "Ferme la paupière droite."

msgid "Closes the left eyelid."
msgstr "Ferme la paupière gauche."

msgid "Squeezes the right eye socket muscles."
msgstr "Serre les muscles autour de l’œil droit."

msgid "Squeezes the left eye socket muscles."
msgstr "Serre les muscles autour de l’œil gauche."

msgid "Right eyelid widens beyond relaxed."
msgstr "La paupière droite s'élargit au-delà de relaxée."

msgid "Left eyelid widens beyond relaxed."
msgstr "La paupière gauche s'élargit au-delà de relaxée."

msgid "Dilates the right eye pupil."
msgstr "Dilate la pupille de l’œil droit."

msgid "Dilates the left eye pupil."
msgstr "Dilate la pupille de l’œil gauche."

msgid "Constricts the right eye pupil."
msgstr "Constricte la pupille de l’œil droit."

msgid "Constricts the left eye pupil."
msgstr "Constricte la pupille de l’œil gauche."

msgid "Right eyebrow pinches in."
msgstr "Le sourcil droit se fronce."

msgid "Left eyebrow pinches in."
msgstr "Le sourcil gauche se fronce."

msgid "Outer right eyebrow pulls down."
msgstr "Le sourcil droit extérieur descend."

msgid "Outer left eyebrow pulls down."
msgstr "Le sourcil gauche extérieur descend."

msgid "Inner right eyebrow pulls up."
msgstr "Le sourcil droit intérieur monte."

msgid "Inner left eyebrow pulls up."
msgstr "Le sourcil gauche intérieur monte."

msgid "Outer right eyebrow pulls up."
msgstr "Le sourcil droit extérieur se lève."

msgid "Outer left eyebrow pulls up."
msgstr "Le sourcil gauche extérieur se lève."

msgid "Right side face sneers."
msgstr "Le côté droit du visage ricane."

msgid "Left side face sneers."
msgstr "Le côté gauche du visage ricane."

msgid "Right side nose canal dilates."
msgstr "Le canal nasal droit se dilate."

msgid "Left side nose canal dilates."
msgstr "Le canal nasal gauche se dilate."

msgid "Right side nose canal constricts."
msgstr "Le canal nasal droit se resserre."

msgid "Left side nose canal constricts."
msgstr "Le canal nasal gauche se resserre."

msgid "Raises the right side cheek."
msgstr "Soulève la joue droite."

msgid "Raises the left side cheek."
msgstr "Soulève la joue gauche."

msgid "Puffs the right side cheek."
msgstr "Gonfle la joue droite."

msgid "Puffs the left side cheek."
msgstr "Gonfle la joue gauche."

msgid "Sucks in the right side cheek."
msgstr "Aspire la joue droite."

msgid "Sucks in the left side cheek."
msgstr "Aspire la joue gauche."

msgid "Opens jawbone."
msgstr "Ouvre le maxillaire."

msgid "Closes the mouth."
msgstr "Ferme la bouche."

msgid "Pushes jawbone right."
msgstr "Pousse la mâchoire à droite."

msgid "Pushes jawbone left."
msgstr "Pousse la mâchoire à gauche."

msgid "Pushes jawbone forward."
msgstr "Pousse la mandibule en avant."

msgid "Pushes jawbone backward."
msgstr "Pousse la mandibule en arrière."

msgid "Flexes jaw muscles."
msgstr "Fléchit les muscles de la mâchoire."

msgid "Raises the jawbone."
msgstr "Remonte la mâchoire."

msgid "Upper right lip part tucks in the mouth."
msgstr "La lèvre supérieure droite est rentrée dans la bouche."

msgid "Upper left lip part tucks in the mouth."
msgstr "La lèvre supérieure gauche est rentrée dans la bouche."

msgid "Lower right lip part tucks in the mouth."
msgstr "La lèvre inférieure droite est rentrée dans la bouche."

msgid "Lower left lip part tucks in the mouth."
msgstr "La lèvre inférieure gauche est rentrée dans la bouche."

msgid "Right lip corner folds into the mouth."
msgstr "Le coin de la lèvre droit se plie dans la bouche."

msgid "Left lip corner folds into the mouth."
msgstr "Le coin de la lèvre gauche se plie dans la bouche."

msgid "Upper right lip part pushes into a funnel."
msgstr "La lèvre supérieure droite fait un entonnoir."

msgid "Upper left lip part pushes into a funnel."
msgstr "La lèvre supérieure gauche fait un entonnoir."

msgid "Lower right lip part pushes into a funnel."
msgstr "La lèvre inférieure droite fait un entonnoir."

msgid "Lower left lip part pushes into a funnel."
msgstr "La lèvre inférieure gauche fait un entonnoir."

msgid "Upper right lip part pushes outwards."
msgstr "La lèvre supérieure droit pousse vers l'extérieur."

msgid "Upper left lip part pushes outwards."
msgstr "La lèvre supérieure gauche pousse vers l'extérieur."

msgid "Lower right lip part pushes outwards."
msgstr "La lèvre inférieur droit pousse vers l'extérieur."

msgid "Lower left lip part pushes outwards."
msgstr "La lèvre inférieur gauche pousse vers l'extérieur."

msgid "Upper right part of the lip pulls up."
msgstr "Le côté en haut à droite des lèvres se lève."

msgid "Upper left part of the lip pulls up."
msgstr "Le côté en haut à gauche des lèvres se lève."

msgid "Lower right part of the lip pulls up."
msgstr "Le côté en bas à droite des lèvres se lève."

msgid "Lower left part of the lip pulls up."
msgstr "Le côté en bas à gauche des lèvres se lève."

msgid "Upper right lip part pushes in the cheek."
msgstr "La lèvre supérieure droit rentre dans la joue."

msgid "Upper left lip part pushes in the cheek."
msgstr "La lèvre supérieure gauche rentre dans la joue."

msgid "Moves upper lip right."
msgstr "Déplace la lèvre supérieure vers la droite."

msgid "Moves upper lip left."
msgstr "Déplace la lèvre supérieure vers la gauche."

msgid "Moves lower lip right."
msgstr "Déplace la lèvre inférieure vers la droite."

msgid "Moves lower lip left."
msgstr "Déplace la lèvre inférieure vers la gauche."

msgid "Right lip corner pulls diagonally up and out."
msgstr "La coin droit des lèvres est tiré en diagonal haut vers l'extérieur."

msgid "Left lip corner pulls diagonally up and out."
msgstr "La coin gauche des lèvres est tiré en diagonal haut vers l'extérieur."

msgid "Right corner lip slants up."
msgstr "Le coin droit des lèvres s'incline vers le haut."

msgid "Left corner lip slants up."
msgstr "Le coin gauche des lèvres s'incline vers le haut."

msgid "Right corner lip pulls down."
msgstr "Le coin droit des lèvres s'incline vers le bas."

msgid "Left corner lip pulls down."
msgstr "Le coin gauche des lèvres s'incline vers le bas."

msgid "Mouth corner lip pulls out and down."
msgstr "Le coin de la lèvre est tiré à l'extérieur et en bas."

msgid "Right lip corner is pushed backwards."
msgstr "Le coin de droite des lèvres est poussé en arrière."

msgid "Left lip corner is pushed backwards."
msgstr "Le coin de gauche des lèvres est poussé en arrière."

msgid "Raises and slightly pushes out the upper mouth."
msgstr "Relève et pousse légèrement vers l'extérieur la bouche supérieure."

msgid "Raises and slightly pushes out the lower mouth."
msgstr "Relève et pousse légèrement vers l'extérieur la bouche inférieure."

msgid "Right side lips press and flatten together vertically."
msgstr "Le côté droit des lèvres se presse et s’aplatit ensemble verticalement."

msgid "Left side lips press and flatten together vertically."
msgstr ""
"Le côté gauche des lèvres se presse et s’aplatit ensemble verticalement."

msgid "Right side lips squeeze together horizontally."
msgstr "Le côté droit des lèvres se serre horizontalement."

msgid "Left side lips squeeze together horizontally."
msgstr "Le côté gauche des lèvres se serre horizontalement."

msgid "Tongue visibly sticks out of the mouth."
msgstr "La langue sort de la bouche de manière visible."

msgid "Tongue points upwards."
msgstr "La langue pointe vers le haut."

msgid "Tongue points downwards."
msgstr "La langue pointe vers le bas."

msgid "Tongue points right."
msgstr "La langue pointe vers la droite."

msgid "Tongue points left."
msgstr "La langue pointe vers la gauche."

msgid "Sides of the tongue funnel, creating a roll."
msgstr "Les côtés de la langue se relèvent, créant un entonnoir."

msgid "Tongue arches up then down inside the mouth."
msgstr ""
"La langue se courbe vers le haut puis vers le bas à l'intérieur de la bouche."

msgid "Tongue arches down then up inside the mouth."
msgstr ""
"La langue se courbe vers le bas puis vers le haut à l'intérieur de la bouche."

msgid "Tongue squishes together and thickens."
msgstr "La langue se comprime et s'épaissit."

msgid "Tongue flattens and thins out."
msgstr "La langue s’aplatit et s'affine."

msgid "Tongue tip rotates clockwise, with the rest following gradually."
msgstr ""
"La pointe de la langue tourne dans le sens des aiguilles d'une montre, le "
"reste suivant progressivement."

msgid "Tongue tip rotates counter-clockwise, with the rest following gradually."
msgstr ""
"La pointe de la langue tourne dans le sens inverse des aiguilles d'une "
"montre, le reste suivant progressivement."

msgid "Inner mouth throat closes."
msgstr "La gorge interne de la bouche se ferme."

msgid "The Adam's apple visibly swallows."
msgstr "La pomme d'Adam avale de manière visible."

msgid "Right side neck visibly flexes."
msgstr "La nuque droite se contracte de manière visible."

msgid "Left side neck visibly flexes."
msgstr "La nuque gauche se contracte de manière visible."

msgid "Closes both eye lids."
msgstr "Ferme les deux paupières."

msgid "Widens both eye lids."
msgstr "Élargit les deux paupières."

msgid "Squints both eye lids."
msgstr "Plisse les deux paupières."

msgid "Dilates both pupils."
msgstr "Dilate les deux pupilles."

msgid "Constricts both pupils."
msgstr "Constricte les deux pupilles."

msgid "Pulls the right eyebrow down and in."
msgstr "Tire le sourcil droit en bas et à l'intérieur."

msgid "Pulls the left eyebrow down and in."
msgstr "Tire le sourcil gauche en bas et à l'intérieur."

msgid "Pulls both eyebrows down and in."
msgstr "Tire les deux sourcils en bas et à l'intérieur."

msgid "Right brow appears worried."
msgstr "Le sourcil droit semble inquiet."

msgid "Left brow appears worried."
msgstr "Le sourcil gauche semble inquiet."

msgid "Both brows appear worried."
msgstr "Les deux sourcils semblent inquiets."

msgid "Entire face sneers."
msgstr "Tout le visage ricane."

msgid "Both nose canals dilate."
msgstr "Les deux canaux du nez se dilatent."

msgid "Both nose canals constrict."
msgstr "Les deux canaux du nez se constrictent."

msgid "Puffs both cheeks."
msgstr "Gonfle les deux joues."

msgid "Sucks in both cheeks."
msgstr "Aspire les deux joues."

msgid "Raises both cheeks."
msgstr "Lève les deux joues."

msgid "Tucks in the upper lips."
msgstr "Rentre la lèvre supérieure."

msgid "Tucks in the lower lips."
msgstr "Rentre la lèvre inférieure."

msgid "Tucks in both lips."
msgstr "Rentre les deux lèvres."

msgid "Funnels in the upper lips."
msgstr "Les lèvres supérieures font un entonnoir."

msgid "Funnels in the lower lips."
msgstr "Les lèvres inférieures font un entonnoir."

msgid "Upper lip part pushes outwards."
msgstr "La lèvre supérieure pousse vers l’extérieur."

msgid "Lower lip part pushes outwards."
msgstr "La lèvre inférieure pousse vers l’extérieur."

msgid "Lips push outwards."
msgstr "Les lèvres poussent vers l'extérieur."

msgid "Raises the upper lips."
msgstr "Lève les lèvres supérieures."

msgid "Lowers the lower lips."
msgstr "Baisse les lèvres inférieures."

msgid "Mouth opens, revealing teeth."
msgstr "La bouche s'ouvre, révélant les dents."

msgid "Moves mouth right."
msgstr "Déplace la bouche vers la droite."

msgid "Moves mouth left."
msgstr "Déplace la joue à gauche."

msgid "Right side of the mouth smiles."
msgstr "Le côté droit de la bouche sourit."

msgid "Left side of the mouth smiles."
msgstr "Le côté gauche de la bouche sourit."

msgid "Mouth expresses a smile."
msgstr "La bouche exprime un sourire."

msgid "Right side of the mouth expresses sadness."
msgstr "Le côté droit de la bouche exprime de la tristesse."

msgid "Left side of the mouth expresses sadness."
msgstr "Le côté gauche de la bouche exprime de la tristesse."

msgid "Mouth expresses sadness."
msgstr "La bouche exprime de la tristesse."

msgid "Mouth stretches."
msgstr "La bouche s'étire."

msgid "Lip corners dimple."
msgstr "Les angles de la lèvre se creusent."

msgid "Mouth tightens."
msgstr "La bouche se serre."

msgid "Mouth presses together."
msgstr "La bouche se presse ensemble."

msgid "Represents the size of the [enum BlendShapeEntry] enum."
msgstr "Représente la taille de l'énumération [enum BlendShapeEntry]."

msgid "A node for driving hand meshes from [XRHandTracker] data."
msgstr ""
"Un nœud pour contrôler des maillage de main des données [XRHandTracker]."

msgid ""
"This node uses hand tracking data from an [XRHandTracker] to pose the "
"skeleton of a hand mesh.\n"
"Positioning of hands is performed by creating an [XRNode3D] ancestor of the "
"hand mesh driven by the same [XRHandTracker].\n"
"The hand tracking position-data is scaled by [member Skeleton3D.motion_scale] "
"when applied to the skeleton, which can be used to adjust the tracked hand to "
"match the scale of the hand model."
msgstr ""
"Ce nœud utilise des données de suivi des mains d'un [XRHandTracker] pour "
"rendre les poses du squelette d'un maillage de main.\n"
"Le positionnement des mains est effectué en créant un ancêtre [XRNode3D] du "
"maillage de main contrôlé par le même [XRHandTracker].\n"
"Les données de position du suivi des mains sont dimensionnées par [member "
"Skeleton3D.motion_scale] lorsqu'elles sont appliquées au squelette, ce qui "
"peut être utilisé pour ajuster la main suivie afin de correspondre à "
"l'échelle du modèle de main."

msgid ""
"The name of the [XRHandTracker] registered with [XRServer] to obtain the hand "
"tracking data from."
msgstr ""
"Le nom du [XRHandTracker] enregistré avec [XRServer] d'où obtenir les données "
"de suivi des mains."

msgid "A tracked hand in XR."
msgstr "Une main suivie en XR."

msgid ""
"A hand tracking system will create an instance of this object and add it to "
"the [XRServer]. This tracking system will then obtain skeleton data, convert "
"it to the Godot Humanoid hand skeleton and store this data on the "
"[XRHandTracker] object.\n"
"Use [XRHandModifier3D] to animate a hand mesh using hand tracking data."
msgstr ""
"Un système de suivi des mains créera une instance de cet objet et l'ajoutera "
"au [XRServer]. Ce système de suivi obtiendra ensuite des données de "
"squelette, les convertira en squelette de main Godot Humanoid et stockera ces "
"données sur l'objet [XRHandTracker].\n"
"Utilisez [XRHandModifier3D] pour animer un maillage de main en utilisant des "
"données de suivi des mains."

msgid "Returns the angular velocity for the given hand joint."
msgstr "Renvoie la vélocité angulaire en l'articulation de main donnée."

msgid ""
"Returns flags about the validity of the tracking data for the given hand "
"joint."
msgstr ""
"Renvoie des drapeaux sur la validité des données de suivi pour l'articulation "
"de main donnée."

msgid "Returns the linear velocity for the given hand joint."
msgstr "Renvoie la vélocité linéaire pour l'articulation de main donnée."

msgid "Returns the radius of the given hand joint."
msgstr "Renvoie le rayon de l'articulation de main donnée."

msgid "Returns the transform for the given hand joint."
msgstr "Renvoie la transformation pour l'articulation de main donnée."

msgid "Sets the angular velocity for the given hand joint."
msgstr "Définit la vélocité angulaire pour l'articulation de main donnée."

msgid ""
"Sets flags about the validity of the tracking data for the given hand joint."
msgstr ""
"Définit des drapeaux sur la validité des données de suivi pour l'articulation "
"de main donnée."

msgid "Sets the linear velocity for the given hand joint."
msgstr "Définit la vélocité linéaire pour l'articulation de main donnée."

msgid "Sets the radius of the given hand joint."
msgstr "Définit le rayon de l'articulation de main donnée."

msgid "Sets the transform for the given hand joint."
msgstr "Définit la transformation pour l'articulation de main donnée."

msgid "The source of the hand tracking data."
msgstr "La source des données du suivi des mains."

msgid "If [code]true[/code], the hand tracking data is valid."
msgstr "Si [code]true[/code], les données de suivi des mains sont valides."

msgid "The source of hand tracking data is unknown."
msgstr "La source de données de suivi des mains est inconnue."

msgid ""
"The source of hand tracking data is unobstructed, meaning that an accurate "
"method of hand tracking is used. These include optical hand tracking, data "
"gloves, etc."
msgstr ""
"La source de données de suivi à la main n'est pas obstruée, ce qui signifie "
"qu'une méthode précise de suivi des mains est utilisée. Cela inclut du suivi "
"optique des mains, des gants de données, etc."

msgid ""
"The source of hand tracking data is a controller, meaning that joint "
"positions are inferred from controller inputs."
msgstr ""
"La source de données du suivi des mains est un contrôleur, ce qui signifie "
"que les positions des articulations sont inférées à partir des entrées du "
"contrôleur."

msgid ""
"No hand tracking data is tracked, this either means the hand is obscured, the "
"controller is turned off, or tracking is not supported for the current input "
"type."
msgstr ""
"Aucune donnée de suivi des mains n'est suivie, cela signifie que soit la main "
"est obstruée, soit le contrôleur est éteint, ou le suivi n'est pas supporté "
"pour le type d'entrée actuel."

msgid "Represents the size of the [enum HandTrackingSource] enum."
msgstr "Représente la taille de l'énumération [enum HandTrackingSource]."

msgid "Thumb phalanx proximal joint."
msgstr "Articulation de la phalange proximale du pouce."

msgid "Thumb phalanx distal joint."
msgstr "Articulation de la phalange distale du pouce."

msgid "Represents the size of the [enum HandJoint] enum."
msgstr "Représente la taille de l'énumération [enum HandJoint]."

msgid "The hand joint's orientation data is valid."
msgstr "La donnée de l'orientation de l'articulation de la main est valide."

msgid ""
"The hand joint's orientation is actively tracked. May not be set if tracking "
"has been temporarily lost."
msgstr ""
"L'orientation de l'articulation de main est activement suivie. Peut ne pas "
"être défini si le suivi a été temporairement perdu."

msgid "The hand joint's position data is valid."
msgstr "Les données de position de l'articulation de la main est valide."

msgid ""
"The hand joint's position is actively tracked. May not be set if tracking has "
"been temporarily lost."
msgstr ""
"La position de l'articulation de main est activement suivie. Peut ne pas être "
"défini si le suivi a été temporairement perdu."

msgid "The hand joint's linear velocity data is valid."
msgstr ""
"La donnée de la vitesse linéaire de l'articulation de la main est valide."

msgid "The hand joint's angular velocity data is valid."
msgstr ""
"La donnée de la vélocité angulaire de l’articulation de la main est valide."

msgid "Base class for an XR interface implementation."
msgstr "Classe de base pour une implémentation d’interface XR."

msgid ""
"If this is an AR interface that requires displaying a camera feed as the "
"background, this method returns the feed ID in the [CameraServer] for this "
"interface."
msgstr ""
"S’il s’agit d’une interface AR qui nécessite l’affichage d’un flux de caméra "
"en arrière-plan, cette méthode renvoie l’ID de flux dans le [CameraServer] "
"pour cette interface."

msgid ""
"Returns a combination of [enum Capabilities] flags providing information "
"about the capabilities of this interface."
msgstr ""
"Renvoie une combinaison d’indicateurs [enum Capabilities] fournissant des "
"informations sur les capacités de cette interface."

msgid ""
"Returns the name of this interface ([code]\"OpenXR\"[/code], [code]"
"\"OpenVR\"[/code], [code]\"OpenHMD\"[/code], [code]\"ARKit\"[/code], etc.)."
msgstr ""
"Renvoie le nom de cette interface ([code]\"OpenXR\"[/code], [code]\"OpenVR\"[/"
"code], [code]\"OpenHMD\"[/code], [code]\"ARKit\"[/code], etc.)."

msgid "Returns the projection matrix for a view/eye."
msgstr "Renvoie la matrice de projection pour un(e) vue/œil."

msgid ""
"Returns the resolution at which we should render our intermediate results "
"before things like lens distortion are applied by the VR platform."
msgstr ""
"Renvoie la résolution à laquelle nous devrions rendre nos résultats "
"intermédiaires avant que des choses comme la distorsion des lentilles ne "
"soient appliquées par la plate-forme VR."

msgid ""
"Returns a [Dictionary] with extra system info. Interfaces are expected to "
"return [code]XRRuntimeName[/code] and [code]XRRuntimeVersion[/code] providing "
"info about the used XR runtime. Additional entries may be provided specific "
"to an interface.\n"
"[b]Note:[/b]This information may only be available after [method initialize] "
"was successfully called."
msgstr ""
"Renvoie un [Dictionary] avec des informations supplémentaires sur le système. "
"Les interfaces sont censées renvoyer [code]XRRuntimeName[/code] et "
"[code]XRRuntimeVersion[/code] fournissant des informations sur le runtime XR "
"utilisé. Des entrées supplémentaires peuvent être fournies spécifiquement "
"pour une interface.\n"
"[b]Note :[/b]Cette information peut n'être disponible qu'après que [method "
"initialize] ait été appelé avec succès."

msgid ""
"If supported, returns the status of our tracking. This will allow you to "
"provide feedback to the user whether there are issues with positional "
"tracking."
msgstr ""
"Si supporté, renvoie l'état de notre suivi. Cela vous permettra de fournir un "
"retour à l'utilisateur s'il y a des problèmes avec le suivi de position."

msgid ""
"Returns the number of views that need to be rendered for this device. 1 for "
"Monoscopic, 2 for Stereoscopic."
msgstr ""
"Renvoie le nombre de vues qui doivent être rendues pour cet appareil. 1 en "
"Monoscopique, 2 en Stéréoscopique."

msgid ""
"Call this to initialize this interface. The first interface that is "
"initialized is identified as the primary interface and it will be used for "
"rendering output.\n"
"After initializing the interface you want to use you then need to enable the "
"AR/VR mode of a viewport and rendering should commence.\n"
"[b]Note:[/b] You must enable the XR mode on the main viewport for any device "
"that uses the main output of Godot, such as for mobile VR.\n"
"If you do this for a platform that handles its own output (such as OpenVR) "
"Godot will show just one eye without distortion on screen. Alternatively, you "
"can add a separate viewport node to your scene and enable AR/VR on that "
"viewport. It will be used to output to the HMD, leaving you free to do "
"anything you like in the main window, such as using a separate camera as a "
"spectator camera or rendering something completely different.\n"
"While currently not used, you can activate additional interfaces. You may "
"wish to do this if you want to track controllers from other platforms. "
"However, at this point in time only one interface can render to an HMD."
msgstr ""
"Appelez ceci pour initialiser cette interface. La première interface qui est "
"initialisée est identifiée comme l'interface primaire et elle sera utilisée "
"pour faire le rendu de la sortie.\n"
"Après l'initialisation de l'interface que vous souhaitez utiliser, vous devez "
"activer le mode AR/VR d'un viewport et le rendu devrait commencer.\n"
"[b]Note :[/b] Vous devez activer le mode XR sur le viewport principal pour "
"tout appareil qui utilise la sortie principale de Godot, comme pour la VR "
"mobile.\n"
"Si vous faites cela pour une plate-forme qui gère sa propre sortie (comme "
"OpenVR), Godot affichera juste un des yeux sans distorsion à l'écran. "
"Alternativement, vous pouvez ajouter un nœud viewport séparé à votre scène et "
"activer AR/VR sur ce viewport. Il sera utilisée pour la sortie du HMD, vous "
"permettant d'utiliser la fenêtre principale pour tout autre utilisation, "
"comme l'utilisation d'une caméra séparée comme pour un spectateur ou faire un "
"rendu complètement différent.\n"
"Bien que non utilisé pour l'instant, vous pouvez activer des interfaces "
"supplémentaires. Vous pouvez le faire si vous voulez suivre les contrôleurs "
"d'autres plateformes. Cependant, actuellement, une seule interface peut "
"rendre vers un HMD."

msgid "Returns [code]true[/code] if this interface has been initialized."
msgstr "Renvoie [code]true[/code] si cette interface a été initialisée."

msgid ""
"Check if [member environment_blend_mode] is [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND], instead."
msgstr ""
"Vérifiez si [member environment_blend_mode] vaut [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND], à la place."

msgid "Returns [code]true[/code] if passthrough is enabled."
msgstr "Renvoie [code]true[/code] si le passthrough est activé."

msgid ""
"Check that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] is supported "
"using [method get_supported_environment_blend_modes], instead."
msgstr ""
"Vérifiez que [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] est "
"supporté en utilisant [method get_supported_environment_blend_modes] à la "
"place."

msgid "Returns [code]true[/code] if this interface supports passthrough."
msgstr "Renvoie [code]true[/code] si cette interface supporte le passthrough."

msgid "Stops passthrough."
msgstr "Arrête de passer à travers."

msgid "Turns the interface off."
msgstr "Désactive l'interface."

msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
msgstr ""
"Sur une interface AR, [code]true[/code] si la détection d’ancrage est activée."

msgid "[code]true[/code] if this is the primary interface."
msgstr "[code]true[/code] (vrai) si c'est l'interface principale."

msgid "The play area mode for this interface."
msgstr "Le mode de zone de jeu pour cette interface."

msgid "No XR capabilities."
msgstr "Pas de capacité XR."

msgid "This interface can work with normal rendering output (non-HMD based AR)."
msgstr ""
"Cette interface peut fonctionner avec la sortie de rendu normale (AR non "
"basée sur HMD)."

msgid "This interface supports stereoscopic rendering."
msgstr "Cette interface est compatible avec le rendu stéréoscopique."

msgid "This interface supports quad rendering (not yet supported by Godot)."
msgstr ""
"Cette interface supporte le quad rendering (pas encore supporté par Godot)."

msgid "This interface supports VR."
msgstr "Cette interface supporte la VR."

msgid "This interface supports AR (video background and real world tracking)."
msgstr ""
"Cette interface supporte la AR (arrière-plan vidéo et suivi du monde réel)."

msgid ""
"This interface outputs to an external device. If the main viewport is used, "
"the on screen output is an unmodified buffer of either the left or right eye "
"(stretched if the viewport size is not changed to the same aspect ratio of "
"[method get_render_target_size]). Using a separate viewport node frees up the "
"main viewport for other purposes."
msgstr ""
"Cette interface envoie sa sortie vers un périphérique externe. Si le viewport "
"principal est utilisé, la sortie à l'écran est un buffer non modifié de l'œil "
"gauche ou droit (étiré si la taille du viewport n'est pas changée au même "
"rapport d'aspect que [method get_render_target_size]). L'utilisation d'un "
"nœud Viewport séparé libère le viewport principal pour être utilisé pour "
"autre chose."

msgid "Tracking is behaving as expected."
msgstr "Le suivi se comporte comme prévu."

msgid ""
"Tracking is hindered by excessive motion (the player is moving faster than "
"tracking can keep up)."
msgstr ""
"Le suivi est gêné par un mouvement excessif (le joueur se déplace trop vite "
"par rapport à ce que le suivi peut suivre)."

msgid ""
"Tracking is hindered by insufficient features, it's too dark (for camera-"
"based tracking), player is blocked, etc."
msgstr ""
"Le suivi est gêné par des caractéristiques insuffisantes, il fait trop sombre "
"(pour du suivi par caméra), le joueur est bloqué, etc..."

msgid ""
"We don't know the status of the tracking or this interface does not provide "
"feedback."
msgstr ""
"Nous ne connaissons pas l'état du suivi, ou alors cette interface ne fournit "
"aucune indication."

msgid ""
"Tracking is not functional (camera not plugged in or obscured, lighthouses "
"turned off, etc.)."
msgstr ""
"Le suivi n'est pas fonctionnel (la caméra n'est pas branchée ou cachée, les "
"lumières sont éteintes, etc.)."

msgid "Play area mode not set or not available."
msgstr "Mode de zone de jeu non défini ou non disponible."

msgid ""
"Play area only supports orientation tracking, no positional tracking, area "
"will center around player."
msgstr ""
"La zone de jeu ne supporte que le suivi de l'orientation, pas le suivi "
"positionnel, la zone se centrera autour du joueur."

msgid ""
"Player is in seated position, limited positional tracking, fixed guardian "
"around player."
msgstr ""
"Le joueur est en position assise, avec suivi positionnel limité, avec des "
"limites (\"Guardian\") fixes autour du joueur."

msgid "Player is free to move around, full positional tracking."
msgstr "Le joueur est libre de se déplacer, suivi positionnel complet."

msgid ""
"Same as [constant XR_PLAY_AREA_ROOMSCALE] but origin point is fixed to the "
"center of the physical space. In this mode, system-level recentering may be "
"disabled, requiring the use of [method XRServer.center_on_hmd]."
msgstr ""
"Comme [constant XR_PLAY_AREA_ROOMSCALE] mais le point d'origine est fixé au "
"centre de l'espace physique. Dans ce mode, le recentrage au niveau du système "
"peut être désactivé, nécessitant l'utilisation de [method "
"XRServer.center_on_hmd]."

msgid "Custom play area set by a GDExtension."
msgstr "Aire de jeu personnalisée définie par une GDExtension."

msgid "Opaque blend mode. This is typically used for VR devices."
msgstr ""
"Mode de mélange opaque. Ceci est généralement utilisé pour les appareils VR."

msgid ""
"Additive blend mode. This is typically used for AR devices or VR devices with "
"passthrough."
msgstr ""
"Mode de mélange additif. Ceci est généralement utilisé pour les appareils AR "
"ou les appareils VR avec passthrough."

msgid ""
"Alpha blend mode. This is typically used for AR or VR devices with "
"passthrough capabilities. The alpha channel controls how much of the "
"passthrough is visible. Alpha of 0.0 means the passthrough is visible and "
"this pixel works in ADDITIVE mode. Alpha of 1.0 means that the passthrough is "
"not visible and this pixel works in OPAQUE mode."
msgstr ""
"Mode de mélange alpha. Ceci est généralement utilisé pour les appareils AR ou "
"VR avec des capacités de passthrough. Le canal alpha contrôle à quel point le "
"passthrough est visible. Un alpha de 0.0 signifie que le passthrough est "
"visible et ce pixel fonctionne en mode ADDITIVE. Un alpha de 1.0 signifie que "
"le passthrough n'est pas visible et que ce pixel fonctionne en mode OPAQUE."

msgid ""
"The texture format is the same as returned by [method XRVRS.make_vrs_texture]."
msgstr ""
"Le format de texture est le même que celle renvoyée par [method "
"XRVRS.make_vrs_texture]."

msgid ""
"The texture format is the same as expected by the Vulkan "
"[code]VK_KHR_fragment_shading_rate[/code] extension."
msgstr ""
"Le format de texture est le même qu'attendu par l'extension Vulkan "
"[code]VK_KHR_fragment_shading_rate[/code]."

msgid ""
"The texture format is the same as expected by the Vulkan "
"[code]VK_EXT_fragment_density_map[/code] extension."
msgstr ""
"Le format de texture est le même qu'attendu par l'extension Vulkan "
"[code]VK_EXT_fragment_density_map[/code]."

msgid "Base class for XR interface extensions (plugins)."
msgstr "Classe de base pour une implémentation d’interface XR."

msgid "External XR interface plugins should inherit from this class."
msgstr "Les plugins d'interface XR externes devraient hériter de cette classe."

msgid ""
"Return [code]true[/code] if anchor detection is enabled for this interface."
msgstr ""
"Renvoie [code]true[/code] si la détection d'ancrage est activée sur cette "
"interface."

msgid "Returns the [Transform3D] that positions the [XRCamera3D] in the world."
msgstr "Renvoie la [Transform3D] qui positionne la [XRCamera3D] dans le monde."

msgid "Returns the name of this interface."
msgstr "Renvoie le nom de cette interface."

msgid ""
"Returns a [PackedVector3Array] that represents the play areas boundaries (if "
"applicable)."
msgstr ""
"Renvoie un [PackedVector3Array] qui représente les limites de la zone de jeu "
"(le cas échéant)."

msgid "Returns the play area mode that sets up our play area."
msgstr "Renvoie le mode de zone de jeu qui configure notre zone de jeu."

msgid ""
"Returns the projection matrix for the given view as a [PackedFloat64Array]."
msgstr ""
"Renvoie la matrice de projection pour la vue donnée en tant que "
"[PackedFloat64Array]."

msgid "Returns a [Transform3D] for a given view."
msgstr "Renvoie une [Transform3D] pour une vue donnée."

msgid "Initializes the interface, returns [code]true[/code] on success."
msgstr "Initialise l'interface, renvoie [code]true[/code] en cas de succès."

msgid "Enables anchor detection on this interface if supported."
msgstr ""
"Active la détection d'ancrage sur cette interface si elle est supportée."

msgid ""
"Returns [code]true[/code] if this interface supports this play area mode."
msgstr ""
"Renvoie [code]true[/code] si cette interface supporte ce mode de zone de jeu."

msgid "Uninitialize the interface."
msgstr "Désinitialise l'interface."

msgid "A 3D node that has its position automatically updated by the [XRServer]."
msgstr ""
"Un nœud 3D qui a sa position automatiquement mise à jour par le [XRServer]."

msgid ""
"This node can be bound to a specific pose of an [XRPositionalTracker] and "
"will automatically have its [member Node3D.transform] updated by the "
"[XRServer]. Nodes of this type must be added as children of the [XROrigin3D] "
"node."
msgstr ""
"Ce nœud peut être lié à une pose spécifique d'un [XRPositionalTracker] et "
"aura automatiquement sa transformation [member Node3D.transform] mise à jour "
"par le [XRServer]. Les nœuds de ce type doivent être ajoutés comme enfants du "
"nœud [XROrigin3D]."

msgid ""
"Returns [code]true[/code] if the [member tracker] has current tracking data "
"for the [member pose] being tracked."
msgstr ""
"Renvoie [code]true[/code] si le [member tracker] dispose de données de suivi "
"actuelles pour la [member pose] suivie."

msgid ""
"Returns [code]true[/code] if the [member tracker] has been registered and the "
"[member pose] is being tracked."
msgstr ""
"Renvoie [code]true[/code] si le [member tracker] a été enregistré et que la "
"[member pose] est suivie."

msgid ""
"Returns the [XRPose] containing the current state of the pose being tracked. "
"This gives access to additional properties of this pose."
msgstr ""
"Renvoie la [XRPose] contenant l'état actuel de la pose en cours de suivi. "
"Cela donne accès à des propriétés supplémentaires de cette pose."

msgid ""
"Triggers a haptic pulse on a device associated with this interface.\n"
"[param action_name] is the name of the action for this pulse.\n"
"[param frequency] is the frequency of the pulse, set to [code]0.0[/code] to "
"have the system use a default frequency.\n"
"[param amplitude] is the amplitude of the pulse between [code]0.0[/code] and "
"[code]1.0[/code].\n"
"[param duration_sec] is the duration of the pulse in seconds.\n"
"[param delay_sec] is a delay in seconds before the pulse is given."
msgstr ""
"Déclenche une impulsion haptique sur un appareil associé à cette interface.\n"
"[param action_name] est le nom de l'action pour cette impulsion.\n"
"[param frequency] est la fréquence de l'impulsion, définie à [code]0.0[/code] "
"pour que le système utilise une fréquence par défaut.\n"
"[param amplitude] est l'amplitude de l'impulsion entre [code]0.0[/code] et "
"[code]1.0[/code].\n"
"[param duration_sec] est la durée de l'impulsion en secondes.\n"
"[param delay_sec] est un délai en secondes avant que l'impulsion ne soit "
"donnée."

msgid ""
"The name of the pose we're bound to. Which poses a tracker supports is not "
"known during design time.\n"
"Godot defines number of standard pose names such as [code]aim[/code] and "
"[code]grip[/code] but other may be configured within a given [XRInterface]."
msgstr ""
"Le nom de la pose à laquelle nous sommes liés. Quelle pose un tracker "
"supporte n'est pas connu au moment du design.\n"
"Godot définit de nombreux noms de pose standard tels que [code]aim[/code] et "
"[code]grip[/code], mais d'autres peuvent être configurés dans une "
"[XRInterface] donnée."

msgid ""
"Enables showing the node when tracking starts, and hiding the node when "
"tracking is lost."
msgstr ""
"Active l'affichage du nœud quand le suivi commence, et cache le nœud quand le "
"suivi est perdu."

msgid ""
"The name of the tracker we're bound to. Which trackers are available is not "
"known during design time.\n"
"Godot defines a number of standard trackers such as [code]left_hand[/code] "
"and [code]right_hand[/code] but others may be configured within a given "
"[XRInterface]."
msgstr ""
"Le nom du tracker auquel nous sommes liés. Quels trackers sont disponibles "
"n'est pas connu lors de la conception.\n"
"Godot définit un certain nombre de trackers standards tels que "
"[code]left_hand[/code] et [code]right_hand[/code], mais d'autres peuvent être "
"configurés dans une [XRInterface] donnée."

msgid ""
"Emitted when the [member tracker] starts or stops receiving updated tracking "
"data for the [member pose] being tracked. The [param tracking] argument "
"indicates whether the tracker is getting updated tracking data."
msgstr ""
"Émis lorsque le [member tracker] commence ou arrête de recevoir des données "
"de suivi à jour pour la [member pose] suivie. L'argument [param tracking] "
"indique si le tracker obtient des données de suivi à jour."

msgid "The origin point in AR/VR."
msgstr "Le point d'origine en AR / VR."

msgid ""
"This is a special node within the AR/VR system that maps the physical "
"location of the center of our tracking space to the virtual location within "
"our game world.\n"
"Multiple origin points can be added to the scene tree, but only one can used "
"at a time. All the [XRCamera3D], [XRController3D], and [XRAnchor3D] nodes "
"should be direct children of this node for spatial tracking to work "
"correctly.\n"
"It is the position of this node that you update when your character needs to "
"move through your game world while we're not moving in the real world. "
"Movement in the real world is always in relation to this origin point.\n"
"For example, if your character is driving a car, the [XROrigin3D] node should "
"be a child node of this car. Or, if you're implementing a teleport system to "
"move your character, you should change the position of this node."
msgstr ""
"C'est un nœud spécial dans le système AR/VR qui associe l'emplacement "
"physique du centre de notre espace de suivi à l'emplacement virtuel dans "
"notre monde de jeu.\n"
"Plusieurs points d'origine peuvent être ajoutés à l'arborescence de scène, "
"mais un seul peut être utilisé à la fois. Tous les nœuds [XRCamera3D], "
"[XRController3D] et [XRAnchor3D] devraient être des enfants directs de ce "
"nœud pour que le suivi spatial fonctionne correctement.\n"
"C'est la position de ce nœud que vous mettez à jour lorsque votre personnage "
"a besoin de passer à travers votre monde de jeu alors qu'on ne se déplace pas "
"dans le monde réel. Le mouvement dans le monde réel est toujours en relation "
"avec ce point d'origine.\n"
"Par exemple, si votre personnage conduit une voiture, le nœud [XROrigin3D] "
"devrait être un nœud enfant de cette voiture. Ou, si vous implémentez un "
"système de téléportation pour déplacer votre personnage, vous devriez changer "
"la position de ce nœud."

msgid ""
"If [code]true[/code], this origin node is currently being used by the "
"[XRServer]. Only one origin point can be used at a time."
msgstr ""
"Si [code]true[/code], ce nœud d'origine est actuellement utilisé par le "
"[XRServer]. Un seul point d'origine peut être utilisé à la fois."

msgid ""
"The scale of the game world compared to the real world. This is the same as "
"[member XRServer.world_scale]. By default, most AR/VR platforms assume that 1 "
"game unit corresponds to 1 real world meter."
msgstr ""
"L'échelle du monde du jeu par rapport au monde réel. Identique à [member "
"XRServer.world_scale]. Par défaut, la plupart des plateformes AR/VR supposent "
"que 1 unité de jeu correspond à 1 mètre du monde réel."

msgid "This object contains all data related to a pose on a tracked object."
msgstr ""
"Cet objet contient toutes les données relatives à une pose sur un objet suivi."

msgid ""
"XR runtimes often identify multiple locations on devices such as controllers "
"that are spatially tracked.\n"
"Orientation, location, linear velocity and angular velocity are all provided "
"for each pose by the XR runtime. This object contains this state of a pose."
msgstr ""
"Les runtimes XR identifient souvent plusieurs emplacements sur des appareils "
"tels que les contrôleurs qui sont suivis spatialements.\n"
"L'orientation, la localisation, la vitesse linéaire et la vitesse angulaire "
"sont tous fournis pour chaque pose par le runtime XR. Cet objet contient cet "
"état d'une pose."

msgid ""
"Returns the [member transform] with world scale and our reference frame "
"applied. This is the transform used to position [XRNode3D] objects."
msgstr ""
"Renvoie la transformation [member transform] avec l'échelle globale et notre "
"repère de référence appliqués. C'est la transformation utilisée pour "
"positionner les objets [XRNode3D]."

msgid "The angular velocity for this pose."
msgstr "La vitesse angulaire pour cette pose."

msgid ""
"If [code]true[/code] our tracking data is up to date. If [code]false[/code] "
"we're no longer receiving new tracking data and our state is whatever that "
"last valid state was."
msgstr ""
"Si [code]true[/code], nos données de suivi sont à jour. Si [code]false[/"
"code], nous ne recevons plus de nouvelles données de suivi et notre état est "
"ce qu'était le dernier état valide."

msgid "The linear velocity of this pose."
msgstr "La vitesse linéaire pour cette pose."

msgid ""
"The name of this pose. Usually, this name is derived from an action map set "
"up by the user. Godot also suggests some pose names that [XRInterface] "
"objects are expected to implement:\n"
"- [code]root[/code] is the root location, often used for tracked objects that "
"do not have further nodes.\n"
"- [code]aim[/code] is the tip of a controller with its orientation pointing "
"outwards, often used for raycasts.\n"
"- [code]grip[/code] is the location where the user grips the controller.\n"
"- [code]skeleton[/code] is the root location for a hand mesh, when using hand "
"tracking and an animated skeleton is supplied by the XR runtime."
msgstr ""
"Le nom de cette pose. Habituellement, ce nom est dérivé d'une action map "
"établie par l'utilisateur. Godot suggère également quelques noms de pose que "
"les objets [XRInterface] sont censés implémenter :\n"
"- [code]root[/code] est l'emplacement racine, souvent utilisé pour les objets "
"suivis qui n'ont pas d'autres nœuds.\n"
"- [code]aim[/code] est la pointe d'un contrôleur avec son orientation "
"pointant vers l'extérieur, souvent utilisé pour les raycasts.\n"
"- [code]grip[/code] est l'endroit où l'utilisateur tient le contrôleur.\n"
"- [code]skeleton[/code] est l'emplacement racine d'un maillage de main, "
"lorsqu'on utilise le suivi des mains et qu'un squelette animé est fourni par "
"le runtime XR."

msgid ""
"The tracking confidence for this pose, provides insight on how accurate the "
"spatial positioning of this record is."
msgstr ""
"La confiance du suivi pour cette pose, donne un aperçu d'à quel point le "
"positionnement spatial de cet enregistrement est précis."

msgid ""
"The transform containing the original and transform as reported by the XR "
"runtime."
msgstr ""
"La transformation contenant la transformation originale comme rapporté par le "
"runtime XR."

msgid "No tracking information is available for this pose."
msgstr "Aucune information de suivi n'est disponible pour cette pose."

msgid ""
"Tracking information may be inaccurate or estimated. For example, with inside "
"out tracking this would indicate a controller may be (partially) obscured."
msgstr ""
"Les informations de suivi peuvent être inexactes ou estimées. Par exemple, "
"avec le suivi \"inside out\" (sans balises externes), cela indiquerait qu'un "
"contrôleur peut être (partiellement) obscurci."

msgid "Tracking information is considered accurate and up to date."
msgstr "L'information de suivi est considérée comme exacte et à jour."

msgid "A tracked object."
msgstr "Un objet suivi."

msgid ""
"An instance of this object represents a device that is tracked, such as a "
"controller or anchor point. HMDs aren't represented here as they are handled "
"internally.\n"
"As controllers are turned on and the [XRInterface] detects them, instances of "
"this object are automatically added to this list of active tracking objects "
"accessible through the [XRServer].\n"
"The [XRNode3D] and [XRAnchor3D] both consume objects of this type and should "
"be used in your project. The positional trackers are just under-the-hood "
"objects that make this all work. These are mostly exposed so that GDExtension-"
"based interfaces can interact with them."
msgstr ""
"Une instance de cet objet représente un dispositif qui est suivi, comme un "
"contrôleur ou un point d'ancrage. Les casques ne sont pas représentés ici car "
"ils sont gérés en interne.\n"
"Quand les contrôleurs sont activés et que [XRInterface] les détecte, les "
"instances de cet objet sont automatiquement ajoutées à cette liste d'objets "
"suivis actifs accessibles par le [XRServer].\n"
"Les [XRNode3D] et [XRAnchor3D] consomment tous les deux des objets de ce type "
"et doivent être utilisés dans votre projet. Les trackers positionnels sont "
"juste des objets sous le capot qui font fonctionner tout ça. Ceux-ci sont "
"généralement exposés de sorte que les interfaces basées sur GDExtension "
"peuvent interagir avec eux."

msgid ""
"Returns an input for this tracker. It can return a boolean, float or "
"[Vector2] value depending on whether the input is a button, trigger or "
"thumbstick/thumbpad."
msgstr ""
"Renvoie une entrée pour ce tracker. Peut renvoyer une valeur booléenne, "
"flottante ou [Vector2] selon que l'entrée soit un bouton, une gâchette ou un "
"joystick/pavé directionnel."

msgid ""
"Returns the current [XRPose] state object for the bound [param name] pose."
msgstr "Renvoie l'objet d'état [XRPose] actuel pour la pose [param name] liée."

msgid ""
"Returns [code]true[/code] if the tracker is available and is currently "
"tracking the bound [param name] pose."
msgstr ""
"Renvoie [code]true[/code] si le tracker est disponible et suit actuellement "
"la pose nommée [param name] liée."

msgid ""
"Marks this pose as invalid, we don't clear the last reported state but it "
"allows users to decide if trackers need to be hidden if we lose tracking or "
"just remain at their last known position."
msgstr ""
"Marque cette pose comme invalide, nous ne vidons pas le dernier état "
"rapporté, mais cela permet aux utilisateurs de décider si les trackers "
"doivent être cachés si nous perdons le suivi ou doivent rester à leur "
"dernière position connue."

msgid ""
"Changes the value for the given input. This method is called by an "
"[XRInterface] implementation and should not be used directly."
msgstr ""
"Change la valeur pour l'entrée donnée. Cette méthode est appelée par une "
"implémentation d'[XRInterface] et ne devrait pas être utilisée directement."

msgid ""
"Sets the transform, linear velocity, angular velocity and tracking confidence "
"for the given pose. This method is called by an [XRInterface] implementation "
"and should not be used directly."
msgstr ""
"Définit la transformation, la vitesse linéaire, la vitesse angulaire et la "
"confiance du suivi pour la pose donnée. Cette méthode est appelée par une "
"implémentation de [XRInterface] et ne devrait pas être utilisée directement."

msgid "Defines which hand this tracker relates to."
msgstr "Définit à quelle main correspond ce tracker."

msgid ""
"The profile associated with this tracker, interface dependent but will "
"indicate the type of controller being tracked."
msgstr ""
"Le profil associé à ce tracker, dépendant de l'interface mais indiquera le "
"type du contrôleur suivi."

msgid ""
"Emitted when a button on this tracker is pressed. Note that many XR runtimes "
"allow other inputs to be mapped to buttons."
msgstr ""
"Émis quand un bouton sur ce tracker est pressé. Notez que de nombreux "
"environnements d'exécution XR permettent de mapper d'autres entrées sur des "
"boutons."

msgid "Emitted when a button on this tracker is released."
msgstr "Émis lorsqu'un bouton sur ce tracker est relâché."

msgid "Emitted when a trigger or similar input on this tracker changes value."
msgstr ""
"Émis lorsqu'une gâchette ou une entrée similaire sur ce tracker change de "
"valeur."

msgid "Emitted when a thumbstick or thumbpad on this tracker moves."
msgstr "Émis lorsqu'un joystick ou un pavé directionnel sur ce tracker bouge."

msgid "Emitted when the state of a pose tracked by this tracker changes."
msgstr "Émis lorsque l'état d'une pose suivie par ce tracker change."

msgid ""
"Emitted when a pose tracked by this tracker stops getting updated tracking "
"data."
msgstr ""
"Émis quand une pose suivie par ce tracker cesse de recevoir des données de "
"suivi à jour."

msgid "Emitted when the profile of our tracker changes."
msgstr "Émis lorsque le profil de notre tracker change."

msgid "The hand this tracker is held in is unknown or not applicable."
msgstr "La main de ce traqueur est inconnue ou sa valeur est invalide."

msgid "This tracker is the left hand controller."
msgstr "Ce tracker est la manette de la main gauche."

msgid "This tracker is the right hand controller."
msgstr "Ce tracker est la manette de la main droite."

msgid "Represents the size of the [enum TrackerHand] enum."
msgstr "Représente la taille de l'énumération [enum TrackerHand]."

msgid "Server for AR and VR features."
msgstr "Serveur pour les fonctionnalités AR et VR."

msgid ""
"The AR/VR server is the heart of our Advanced and Virtual Reality solution "
"and handles all the processing."
msgstr ""
"Les serveurs AR/VR sont au cœur de nos solutions avancées de réalité "
"virtuelle, traitant tous les processus."

msgid "Registers an [XRInterface] object."
msgstr "Enregistre un objet [XRInterface]."

msgid "Registers a new [XRTracker] that tracks a physical object."
msgstr "Enregistre un nouveau [XRTracker] qui suit un objet physique."

msgid ""
"Finds an interface by its [param name]. For example, if your project uses "
"capabilities of an AR/VR platform, you can find the interface for that "
"platform by name and initialize it."
msgstr ""
"Trouve une interface par son nom [param name]. Par exemple, si votre projet "
"utilise des capacités d'une plateforme AR/VR, vous pouvez trouver l'interface "
"pour cette plateforme par son nom et l'initialiser."

msgid "Returns the primary interface's transformation."
msgstr "Renvoie la transformation de l'interface primaire."

msgid ""
"Returns the interface registered at the given [param idx] index in the list "
"of interfaces."
msgstr ""
"Renvoie l'interface enregistrée à l'index [param idx] donné dans la liste des "
"interfaces."

msgid ""
"Returns the number of interfaces currently registered with the AR/VR server. "
"If your project supports multiple AR/VR platforms, you can look through the "
"available interface, and either present the user with a selection or simply "
"try to initialize each interface and use the first one that returns "
"[code]true[/code]."
msgstr ""
"Renvoie le nombre d'interfaces actuellement enregistrées avec le serveur AR/"
"VR. Si votre projet prend en charge plusieurs plateformes AR/VR, vous pouvez "
"lister les interfaces disponibles, et présenter à l'utilisateur une sélection "
"ou simplement essayer d'initialiser chaque interface et utiliser la première "
"interface qui retourne [code]true[/code]."

msgid ""
"Returns a list of available interfaces the ID and name of each interface."
msgstr ""
"Renvoie une liste des interfaces disponibles avec l'identifiant et le nom de "
"chaque interface."

msgid "Returns the positional tracker with the given [param tracker_name]."
msgstr "Renvoie le tracker positionnel avec le nom [param tracker_name] donné."

msgid "Returns a dictionary of trackers for [param tracker_types]."
msgstr "Renvoie un dictionnaire de trackers pour [param tracker_types]."

msgid "Removes this [param interface]."
msgstr "Supprime cette [param interface]."

msgid "Removes this [param tracker]."
msgstr "Supprime ce [param tracker]."

msgid "The primary [XRInterface] currently bound to the [XRServer]."
msgstr "La [XRInterface] principale actuellement connectée à ce [XRServer]."

msgid ""
"The scale of the game world compared to the real world. By default, most AR/"
"VR platforms assume that 1 game unit corresponds to 1 real world meter."
msgstr ""
"L'échelle du monde du jeu par rapport au monde réel. Par défaut, la plupart "
"des plateformes AR/VR supposent que 1 unité de jeu correspond à 1 mètre du "
"monde réel."

msgid "Emitted when the reference frame transform changes."
msgstr "Émis lorsque la transformation du cadre de référence change."

msgid ""
"Emitted when a new tracker has been added. If you don't use a fixed number of "
"controllers or if you're using [XRAnchor3D]s for an AR solution, it is "
"important to react to this signal to add the appropriate [XRController3D] or "
"[XRAnchor3D] nodes related to this new tracker."
msgstr ""
"Émis quand un nouveau tracker a été ajouté. Si vous n'utilisez pas un nombre "
"fixe de contrôleurs ou si vous utilisez [XRAnchor3D] pour une solution AR, il "
"est important de réagir à ce signal pour ajouter les nœuds [XRController3D] "
"ou [XRAnchor3D] appropriés liés à ce nouveau tracker."

msgid ""
"Emitted when a tracker is removed. You should remove any [XRController3D] or "
"[XRAnchor3D] points if applicable. This is not mandatory, the nodes simply "
"become inactive and will be made active again when a new tracker becomes "
"available (i.e. a new controller is switched on that takes the place of the "
"previous one)."
msgstr ""
"Émis quand un tracker est retiré. Vous devez supprimer tout [XRController3D] "
"ou [XRAnchor3D] si nécessaire. Ce n'est pas obligatoire, les nœuds deviennent "
"tout simplement inactifs et seront de nouveau actifs lorsqu'un nouveau "
"tracker sera disponible (quand un nouveau contrôleur activé prendra la place "
"du précédent)."

msgid ""
"Emitted when an existing tracker has been updated. This can happen if the "
"user switches controllers."
msgstr ""
"Émis lorsqu'un tracker existant a été mis à jour. Cela peut se produire si "
"l'utilisateur change de contrôleurs."

msgid "The tracker tracks the location of a controller."
msgstr "Le traqueur permet de suivre la localisation d'un contrôleur."

msgid "The tracker tracks the location of a base station."
msgstr "Le traqueur permet de suivre l'emplacement d'une station de base."

msgid "The tracker tracks the location and size of an AR anchor."
msgstr ""
"Le traqueur permet de suivre l'emplacement et la taille d'une ancre en "
"réalité augmentée."

msgid "The tracker tracks the location and joints of a hand."
msgstr "Le tracker suit l'emplacement et les articulations d'une main."

msgid "The tracker tracks the location and joints of a body."
msgstr "Le tracker suit l'emplacement et les articulations d'un corps."

msgid "The tracker tracks the expressions of a face."
msgstr "Le tracker suit les expressions d'un visage."

msgid "Used internally to filter trackers of any known type."
msgstr ""
"Utilisé en interne pour filtrer les trackers de n’importe quel type connu."

msgid "Used internally if we haven't set the tracker type yet."
msgstr ""
"Utilisé en interne si nous n'avons pas encore défini le type de tracker."

msgid "Used internally to select all trackers."
msgstr "Utilisé en interne pour sélectionner tous les traqueurs."

msgid ""
"Fully reset the orientation of the HMD. Regardless of what direction the user "
"is looking to in the real world. The user will look dead ahead in the virtual "
"world."
msgstr ""
"Réinitialise complètement l'orientation du visiocasque. Indépendamment de la "
"direction que l'utilisateur regarde dans le monde réel. L'utilisateur "
"regardera droit devant dans le monde virtuel."

msgid ""
"Resets the orientation but keeps the tilt of the device. So if we're looking "
"down, we keep looking down but heading will be reset."
msgstr ""
"Réinitialise l'orientation mais conserve l'inclinaison du dispositif. Donc si "
"nous regardons en bas, nous continuons de regarder en bas mais le titre sera "
"réinitialisé."

msgid ""
"Does not reset the orientation of the HMD, only the position of the player "
"gets centered."
msgstr ""
"Ne réinitialise pas l'orientation du visiocasque, centre seulement la "
"position du joueur."

msgid "This object is the base of all XR trackers."
msgstr "Cet objet est la base de tous les trackers XR."

msgid "The description of this tracker."
msgstr "La description de ce tracker."

msgid ""
"The unique name of this tracker. The trackers that are available differ "
"between various XR runtimes and can often be configured by the user. Godot "
"maintains a number of reserved names that it expects the [XRInterface] to "
"implement if applicable:\n"
"- [code]\"head\"[/code] identifies the [XRPositionalTracker] of the player's "
"head\n"
"- [code]\"left_hand\"[/code] identifies the [XRControllerTracker] in the "
"player's left hand\n"
"- [code]\"right_hand\"[/code] identifies the [XRControllerTracker] in the "
"player's right hand\n"
"- [code]\"/user/hand_tracker/left\"[/code] identifies the [XRHandTracker] for "
"the player's left hand\n"
"- [code]\"/user/hand_tracker/right\"[/code] identifies the [XRHandTracker] "
"for the player's right hand\n"
"- [code]\"/user/body_tracker\"[/code] identifies the [XRBodyTracker] for the "
"player's body\n"
"- [code]\"/user/face_tracker\"[/code] identifies the [XRFaceTracker] for the "
"player's face"
msgstr ""
"Le nom unique de ce tracker. Les trackers qui sont disponibles diffèrent "
"entre les différents runtime XR et peuvent souvent être configurés par "
"l'utilisateur. Godot maintient un certain nombre de noms réservés auxquels il "
"s'attend à ce que la [XRInterface] implémente le cas échéant :\n"
"- [code]head[/code] identifie le [XRPositionalTracker] de la tête du joueur\n"
"- [code]left_hand[/code] identifie le [XRControllerTracker] dans la main "
"gauche du joueur\n"
"- [code]right_hand[/code] identifie le [XRControllerTracker] dans la main "
"droite du joueur\n"
"- [code]/user/hand_tracker/left[/code] identifie le [XRHandTracker] pour la "
"main gauche du joueur\n"
"- [code]/user/hand_tracker/right[/code] identifie le [XRHandTracker] pour la "
"main droite du joueur\n"
"- [code]/user/body_tracker[/code] identifie le [XRBodyTracker] pour le corps "
"du joueur\n"
"- [code]/user/face_tracker[/code] identifie le [XRFaceTracker] pour le visage "
"du joueur"

msgid "The type of tracker."
msgstr "Le type de tracker."

msgid "Helper class for XR interfaces that generates VRS images."
msgstr "Classe d'aide pour les interfaces XR qui génèrent des images VRS."

msgid ""
"This class is used by various XR interfaces to generate VRS textures that can "
"be used to speed up rendering."
msgstr ""
"Cette classe est utilisée par diverses interfaces XR pour générer des "
"textures VRS qui peuvent être utilisées pour accélérer le rendu."

msgid ""
"Generates the VRS texture based on a render [param target_size] adjusted by "
"our VRS tile size. For each eyes focal point passed in [param eye_foci] a "
"layer is created. Focal point should be in NDC.\n"
"The result will be cached, requesting a VRS texture with unchanged parameters "
"and settings will return the cached RID."
msgstr ""
"Génère la texture VRS selon une cible de rendu [param target_size] ajustée "
"par notre taille de tuile VRS. Pour chaque point focal d’œil passé dans "
"[param eye_foci], une couche est créée. Le point focal devrait être en NDC.\n"
"Le résultat sera mis en cache, nécessitant une texture VRS avec des "
"paramètres inchangés et renvoyant le RID mis en cache."

msgid ""
"The minimum radius around the focal point where full quality is guaranteed if "
"VRS is used as a percentage of screen size."
msgstr ""
"Le rayon minimal autour du point focal où la qualité complète est garantie si "
"le VRS est utilisé comme un pourcentage de la taille de l'écran."

msgid "The render region that the VRS texture will be scaled to when generated."
msgstr ""
"La région de rendu à laquelle la texture VRS sera étendue une fois générée."

msgid ""
"The strength used to calculate the VRS density map. The greater this value, "
"the more noticeable VRS is."
msgstr ""
"La force utilisée pour calculer la carte de densité VRS. Plus cette valeur "
"est élevée, plus le VRS est visible."

msgid "Allows the creation of ZIP files."
msgstr "Permet la création de fichiers ZIP."

msgid ""
"This class implements a writer that allows storing the multiple blobs in a "
"ZIP archive. See also [ZIPReader] and [PCKPacker].\n"
"[codeblock]\n"
"# Create a ZIP archive with a single file at its root.\n"
"func write_zip_file():\n"
"\tvar writer = ZIPPacker.new()\n"
"\tvar err = writer.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn err\n"
"\twriter.start_file(\"hello.txt\")\n"
"\twriter.write_file(\"Hello World\".to_utf8_buffer())\n"
"\twriter.close_file()\n"
"\n"
"\twriter.close()\n"
"\treturn OK\n"
"[/codeblock]"
msgstr ""
"Cette classe implémente un writer qui permet de stocker de multiples blobs "
"dans une archive ZIP. Voir aussi [ZIPReader] et [PCKPacker].\n"
"[codeblock]\n"
"# Créer une archive ZIP avec un seul fichier à sa racine.\n"
"func write_zip_file():\n"
"\tvar writer = ZIPPacker.new()\n"
"\tvar err = writer.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn err\n"
"\twriter.start_file(\"hello.txt\")\n"
"\twriter.write_file(\"Hello World\".to_utf8_buffer())\n"
"\twriter.close_file()\n"
"\n"
"\twriter.close()\n"
"\treturn OK\n"
"[/codeblock]"

msgid "Closes the underlying resources used by this instance."
msgstr "Ferme les ressources sous-jacentes utilisées par cette instance."

msgid ""
"Stops writing to a file within the archive.\n"
"It will fail if there is no open file."
msgstr ""
"Arrête d'écrire vers un fichier dans l'archive.\n"
"Échouera s'il n'y a pas de fichier ouvert."

msgid ""
"Opens a zip file for writing at the given path using the specified write "
"mode.\n"
"This must be called before everything else."
msgstr ""
"Ouvre un fichier zip pour l'écriture au chemin donné en utilisant le mode "
"d'écriture spécifié.\n"
"Cela doit être appelé avant quoi que ce soit d'autre."

msgid ""
"Starts writing to a file within the archive. Only one file can be written at "
"the same time.\n"
"Must be called after [method open]."
msgstr ""
"Commence à écrire vers un fichier dans l'archive. Seul un fichier peut être "
"écrit à la fois.\n"
"Doit être appelée après [method open]."

msgid ""
"Write the given [param data] to the file.\n"
"Needs to be called after [method start_file]."
msgstr ""
"Écrit les données [param data] données dans le fichier.\n"
"Doit être appelée après [method start_file]."

msgid ""
"The compression level used when [method start_file] is called. Use [enum "
"ZIPPacker.CompressionLevel] as a reference."
msgstr ""
"Le niveau de compression utilisé lorsque [method start_file] est appelée. "
"Utilisez [enum ZIPPacker.CompressionLevel] comme référence."

msgid "Create a new zip archive at the given path."
msgstr "Crée une nouvelle archive zip au chemin indiqué."

msgid ""
"Append a new zip archive to the end of the already existing file at the given "
"path."
msgstr ""
"Ajoute une nouvelle archive zip à la fin du fichier existant à l'emplacement "
"donné."

msgid "Add new files to the existing zip archive at the given path."
msgstr ""
"Ajoute de nouveaux fichiers à l'archive zip existante à l'emplacement donné."

msgid ""
"Start a file with the default Deflate compression level ([code]6[/code]). "
"This is a good compromise between speed and file size."
msgstr ""
"Commence un fichier avec le niveau de compression Deflate par défaut "
"([code]6[/code]). C'est un bon compromis entre la vitesse et la taille du "
"fichier."

msgid ""
"Start a file with no compression. This is also known as the \"Store\" "
"compression mode and is the fastest method of packing files inside a ZIP "
"archive. Consider using this mode for files that are already compressed (such "
"as JPEG, PNG, MP3, or Ogg Vorbis files)."
msgstr ""
"Commence un fichier sans compression. Ceci est également connu comme le mode "
"de compression \"Store\" et est la méthode la plus rapide d'empaquetage de "
"fichier dans une archive ZIP. Envisagez d'utiliser ce mode pour les fichiers "
"déjà compressés (comme les fichiers JPEG, PNG, MP3, ou Ogg Vorbis)."

msgid ""
"Start a file with the fastest Deflate compression level ([code]1[/code]). "
"This is fast to compress, but results in larger file sizes than [constant "
"COMPRESSION_DEFAULT]. Decompression speed is generally unaffected by the "
"chosen compression level."
msgstr ""
"Commence un fichier avec le niveau de compression Deflate le plus rapide "
"([code]1[/code]). Ceci est rapide à compresser, mais résulte en de plus "
"grandes tailles de fichiers que [constant COMPRESSION_DEFAULT]. La vitesse de "
"décompression n'est généralement pas affectée par le niveau de compression "
"choisi."

msgid ""
"Start a file with the best Deflate compression level ([code]9[/code]). This "
"is slow to compress, but results in smaller file sizes than [constant "
"COMPRESSION_DEFAULT]. Decompression speed is generally unaffected by the "
"chosen compression level."
msgstr ""
"Commence un fichier avec le meilleur niveau de compression Deflate ([code]1[/"
"code]). Ceci est lent à compresser, mais résulte en de plus petites tailles "
"de fichiers que [constant COMPRESSION_DEFAULT]. La vitesse de décompression "
"n'est généralement pas affectée par le niveau de compression choisi."

msgid "Allows reading the content of a ZIP file."
msgstr "Permet de lire le contenu d'un fichier ZIP."

msgid ""
"This class implements a reader that can extract the content of individual "
"files inside a ZIP archive. See also [ZIPPacker].\n"
"[codeblock]\n"
"# Read a single file from a ZIP archive.\n"
"func read_zip_file():\n"
"\tvar reader = ZIPReader.new()\n"
"\tvar err = reader.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn PackedByteArray()\n"
"\tvar res = reader.read_file(\"hello.txt\")\n"
"\treader.close()\n"
"\treturn res\n"
"\n"
"# Extract all files from a ZIP archive, preserving the directories within.\n"
"# This acts like the \"Extract all\" functionality from most archive "
"managers.\n"
"func extract_all_from_zip():\n"
"\tvar reader = ZIPReader.new()\n"
"\treader.open(\"res://archive.zip\")\n"
"\n"
"\t# Destination directory for the extracted files (this folder must exist "
"before extraction).\n"
"\t# Not all ZIP archives put everything in a single root folder,\n"
"\t# which means several files/folders may be created in `root_dir` after "
"extraction.\n"
"\tvar root_dir = DirAccess.open(\"user://\")\n"
"\n"
"\tvar files = reader.get_files()\n"
"\tfor file_path in files:\n"
"\t\t# If the current entry is a directory.\n"
"\t\tif file_path.ends_with(\"/\"):\n"
"\t\t\troot_dir.make_dir_recursive(file_path)\n"
"\t\t\tcontinue\n"
"\n"
"\t\t# Write file contents, creating folders automatically when needed.\n"
"\t\t# Not all ZIP archives are strictly ordered, so we need to do this in "
"case\n"
"\t\t# the file entry comes before the folder entry.\n"
"\t\troot_dir.make_dir_recursive(root_dir.get_current_dir().path_join(file_path).get_base_dir())\n"
"\t\tvar file = "
"FileAccess.open(root_dir.get_current_dir().path_join(file_path), "
"FileAccess.WRITE)\n"
"\t\tvar buffer = reader.read_file(file_path)\n"
"\t\tfile.store_buffer(buffer)\n"
"[/codeblock]"
msgstr ""
"Cette classe implémente un lecteur qui peut extraire le contenu de fichiers "
"individuels dans une archive ZIP. Voir aussi [ZIPPacker].\n"
"[codeblock]\n"
"# Lire un seul fichier d'un fichier ZIP.\n"
"func read_zip_file():\n"
"\tvar lecteur = ZIPReader.new()\n"
"\tvar err = lecteur.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn PackedByteArray()\n"
"\tvar res = lecteur.read_file(\"hello.txt\")\n"
"\tlecteur.close()\n"
"\treturn res\n"
"\n"
"# Extraire tous les fichiers de l'archive ZIP, préservant les dossiers "
"dedans.\n"
"# Cela fonctionne comme la fonctionnalité \"Tout Extraire\" des gestionnaires "
"d'archive.\n"
"func extract_all_from_zip():\n"
"\tvar lecteur = ZIPReader.new()\n"
"\tlecteur.open(\"res://archive.zip\")\n"
"\n"
"\t# Dossier de destination pour les fichiers extraits (ce dossier doit "
"exister avant l'extraction).\n"
"\t# Les archives ZIP ne mettent pas toujours tout dans un dossier racine\n"
"\t# ce qui signifie que des fichiers/dossiers peuvent être créés dans le "
"dossier `doss_racine` après l'extraction.\n"
"\tvar doss_racine = DirAccess.open(\"user://\")\n"
"\n"
"\tvar fichiers = lecteur.get_files()\n"
"\tfor chemin_fichier in fichiers:\n"
"\t\t# Si l'entrée actuelle est un dossier.\n"
"\t\tif chemin_fichier.ends_with(\"/\"):\n"
"\t\t\tdoss_racine.make_dir_recursive(chemin_fichier)\n"
"\t\t\tcontinue\n"
"\n"
"\t\t# Écrire le contenu du fichier, créant automatiquement les dossiers si "
"besoin.\n"
"\t\t# Les archives ZIP ne sont pas triées strictement, nous devons donc faire "
"ceci au cas où\n"
"\t\t# l'entrée du fichier arrive avant l'entrée du dossier.\n"
"\t\tdoss_racine.make_dir_recursive(doss_racine.get_current_dir().path_join(chemin_fichier).get_base_dir())\n"
"\t\tvar fichier = "
"FileAccess.open(doss_racine.get_current_dir().path_join(chemin_fichier), "
"FileAccess.WRITE)\n"
"\t\tvar buffer = lecteur.read_file(chemin_fichier)\n"
"\t\tfichier.store_buffer(buffer)\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the file exists in the loaded zip archive.\n"
"Must be called after [method open]."
msgstr ""
"Renvoie [code]true[/code] si le fichier existe dans l'archive zip chargée.\n"
"Doit être appelée après [method open]."

msgid ""
"Returns the compression level of the file in the loaded zip archive. Returns "
"[code]-1[/code] if the file doesn't exist or any other error occurs. Must be "
"called after [method open]."
msgstr ""
"Renvoie le niveau de compression du fichier dans l'archive zip chargée. "
"Renvoie [code]-1[/code] si le fichier n'existe pas ou si une autre erreur se "
"produit. Doit être appelée après [method open]."

msgid ""
"Returns the list of names of all files in the loaded archive.\n"
"Must be called after [method open]."
msgstr ""
"Renvoie la liste des noms de tous les fichiers de l'archive chargée.\n"
"Doit être appelée après [method open]."

msgid ""
"Opens the zip archive at the given [param path] and reads its file index."
msgstr ""
"Ouvre l'archive zip au chemin [param path] donné et lit son index de fichier."

msgid ""
"Loads the whole content of a file in the loaded zip archive into memory and "
"returns it.\n"
"Must be called after [method open]."
msgstr ""
"Charge l'intégralité du contenu d'un fichier dans l'archive zip chargée en "
"mémoire et le renvoie.\n"
"Doit être appelée après [method open]."
