OverviewFilesCommitsIssuesDocsReleasesPeers

nvidia-rtx-godot / doc / translations / fr.po

135494 lines · po ref:
# 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, 2025.
# 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, 2026.
# 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.
# vitawrap <thevitawrap@gmail.com>, 2025.
# Tuflix <lemetayerlilian.pro@gmail.com>, 2025.
# Sébastien Tessot <sebastien.tessot@gmail.com>, 2025.
# Dahim0 <abderrahim.athimni2011@gmail.com>, 2025.
# Bamowen <mathieu.monsauret@gmail.com>, 2025.
# Colisan <colisan@loveteit.fr>, 2025.
# Hedi Jouida <saida.mkadem42@gmail.com>, 2025.
# MERCRED <augustinseroul@gmail.com>, 2026.
# Posemartonis <weblate.drainage895@passmail.net>, 2026.
# Le cathogeek <etienne.pacault@gmail.com>, 2026.
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: 2026-01-25 00:40+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.16-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é par :"

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 "
"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 "
"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ération. Aidez-nous "
"en 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 "
"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 "
"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 "
"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 "
"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 "
"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 "
"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 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"
"@export_multiline(\"monospace\", \"no_wrap\") var favorite_ascii_art: 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 biographie_personnage\n"
"@export_multiline var dialogues_pnj: Array[String]\n"
"@export_multiline(\"monospace\", \"no_wrap\") var art_ascii_favori: 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]\"prefer_slider\"[/code] hint will make integer "
"values use the slider instead of arrows for editing, while [code]"
"\"hide_control\"[/code] will hide the element controlling the value 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] et, facultativement, "
"par un pas [param step] et une variété d'indices supplémentaires. Le pas "
"[param step] est par défaut [code]1[/code] pour les entiers. 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 ""
"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.drink) # 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] qui correspond à [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 19\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 19\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 typeof(result) == TYPE_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 [NavigationServer2DManager] singleton."
msgstr "Le singleton [NavigationServer2DManager]."

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

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

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 message sent when the value of the pitch bender changes, usually a wheel "
"on the MIDI device."
msgstr ""
"Message MIDI envoyé lorsque la valeur du Pitch Bend change, généralement une "
"roue sur l'appareil MIDI."

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, [code]\"prefer_slider\"[/code] to "
"show the slider for integers, [code]\"hide_control\"[/code] to hide the "
"slider or up-down arrows, and [code]\"suffix:px/s\"[/code] to display a "
"suffix indicating the value's unit (e.g. [code]px/s[/code] for pixels per "
"second)."
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, [code]\"hide_control\"[/"
"code] pour cacher les feches haut et bas et [code]\"suffix:px/s\"[/code] pour "
"afficher un suffixe qui indique l'unité de la valeur (par ex. [code]px/s[/"
"code] pour les pixels par secondes)."

msgid ""
"Hints that an [int], [String], or [StringName] 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]. Whitespace is [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] or [StringName] property can be an enumerated value to "
"pick in a list specified via a hint string such as [code]"
"\"Hello,Something,Else\"[/code]. See [constant PROPERTY_HINT_ENUM] for "
"details.\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 ""
"Conseils 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 cet 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]. Whitespace is [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 masque 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 telles 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 suivants, 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.\n"
"The hint string can be set to [code]\"monospace\"[/code] to force the input "
"field to use a monospaced font.\n"
"If the hint string [code]\"no_wrap\"[/code] is set, the input field will not "
"wrap lines at boundaries, instead resorting to making the area scrollable."
msgstr ""
"Indique qu’une propriété [String] est du texte avec des sauts de ligne. La "
"modifier affichera un champ de saisie de texte où les sauts de ligne peuvent "
"être tapés.\n"
"La chaîne d’indice peut être définie sur [code]\"monospace\" [/code] pour "
"forcer le champ de saisie à utiliser une police à espacement fixe.\n"
"Si la chaîne d’indice [code]\"no_wrap\"[/code] est définie, le champ de "
"saisie n’enroulera pas les lignes aux limites, au lieu de rendre la zone "
"d'enroulable."

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 the element count of a property array, i.e. a list of groups "
"of related properties. Properties defined with this usage also need a "
"specific [code]class_name[/code] field in the form of [code]label,prefix[/"
"code]. The field may also include additional comma-separated options:\n"
"- [code]page_size=N[/code]: Overrides [member EditorSettings.interface/"
"inspector/max_array_dictionary_items_per_page] for this array.\n"
"- [code]add_button_text=text[/code]: The text displayed by the \"Add "
"Element\" button.\n"
"- [code]static[/code]: The elements can't be re-arranged.\n"
"- [code]const[/code]: New elements can't be added.\n"
"- [code]numbered[/code]: An index will appear next to each element.\n"
"- [code]unfoldable[/code]: The array can't be folded.\n"
"- [code]swap_method=method_name[/code]: The method that will be called when "
"two elements switch places. The method should take 2 [int] parameters, which "
"will be indices of the elements being swapped.\n"
"Note that making a full-fledged property array requires boilerplate code "
"involving [method Object._get_property_list]."
msgstr ""
"La propriété est le nombre d’éléments d’un tableau de propriétés, c’est-à-"
"dire une liste de groupes de propriétés liées. Les propriétés définies avec "
"cet usage nécessitent également un champ spécifique [code]class_name[/code] "
"sous la forme de [code]label,prefix[/code]. Le champ peut également inclure "
"des options supplémentaires séparées par des virgules :\n"
"- [code]page_size=N[/code] : Remplace [member EditorSettings.interface/"
"inspector/max_array_dictionary_items_per_page] pour ce tableau.\n"
"- [code]add_button_text=text[/code] : Le texte affiché par le bouton "
"\"Ajouter un élément\".\n"
"- [code]static[/code] : Les éléments ne peuvent pas être réarrangés.\n"
"- [code]const[/code] : Les nouveaux éléments ne peuvent pas être ajoutés.\n"
"- [code]numbered[/code] : Un index apparaîtra à côté de chaque élément.\n"
"- [code]unfoldable[/code] : Le tableau ne peut pas être plié.\n"
"- [code]swap_method=method_name[/code] : La méthode qui sera appelée lorsque "
"deux éléments changent de place. La méthode devrait prendre 2 [int] "
"paramètres, qui seront des indices des éléments échangés.\n"
"Notez que la création d’un tableau de propriétés à part entière nécessite du "
"code standard impliquant [method Object._get_property_list]."

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 ""
"The [AABB] built-in [Variant] type represents an axis-aligned bounding box in "
"a 3D space. It is defined by its [member position] and [member size], which "
"are [Vector3]. It is frequently used for fast overlap tests (see [method "
"intersects]). Although [AABB] itself is axis-aligned, it can be combined with "
"[Transform3D] to represent a rotated or skewed bounding box.\n"
"It uses floating-point coordinates. The 2D counterpart to [AABB] is [Rect2]. "
"There is no version of [AABB] that uses integer coordinates.\n"
"[b]Note:[/b] Negative values for [member size] are not supported. With "
"negative size, most [AABB] methods do not work correctly. Use [method abs] to "
"get an equivalent [AABB] with a non-negative size.\n"
"[b]Note:[/b] In a boolean context, an [AABB] evaluates to [code]false[/code] "
"if both [member position] and [member size] are zero (equal to [constant "
"Vector3.ZERO]). Otherwise, it always evaluates to [code]true[/code]."
msgstr ""
"Le type [Variant] intégré [AABB] représente une boîte délimitante alignée sur "
"les axes dans un espace 3D. Elle est définie par sa [member position] et sa "
"taille [member size], qui sont des [Vector3]. Elle est fréquemment utilisée "
"pour les tests de chevauchement rapide (voir [method intersects]). Bien que "
"[AABB] elle-même soit alignée sur les axes, elle peut être combinée avec "
"[Transform3D] pour représenter une boîte englobante tournée ou cisaillée.\n"
"Elle utilise des coordonnées flottantes. La contrepartie 2D de [AABB] est "
"[Rect2]. Il n'y a pas de version de [AABB] qui utilise des coordonnées "
"entières.\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 [AABB] ne "
"fonctionnent pas correctement. Utilisez [method abs] pour obtenir une [AABB] "
"équivalente avec une taille non négative.\n"
"[b]Note :[/b] Dans un contexte booléen, une [AABB] évalue à [code]false[/"
"code] si [member position] et [member size] valent tous les deux zéro (égaux "
"à [constant Vector3.ZERO]). Sinon, elle évalue toujours à [code]true[/code]."

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.\n"
"[b]Note:[/b] [AcceptDialog] is invisible by default. To make it visible, call "
"one of the [code]popup_*[/code] methods from [Window] on the node, such as "
"[method Window.popup_centered_clamped]."
msgstr ""
"Par défaut, [AcceptDialog] permet uniquement d'accepter ou de fermer la boîte "
"de dialogue, avec le même résultat. Cependant, les signaux [signal confirmed] "
"et [signal canceled] permettent de différencier les deux actions, et la "
"méthode [method add_button] permet d'ajouter des boutons et des actions "
"personnalisés.\n"
"[b]Remarque :[/b] [AcceptDialog] est invisible par défaut. Pour le rendre "
"visible, appelez l'une des méthodes [code]popup_*[/code] de [Window] sur le "
"nœud, telle que [method Window.popup_centered_clamped]."

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_close_dialog[/code] action is pressed (by default, this action is "
"bound to [kbd]Escape[/kbd], or [kbd]Cmd + W[/kbd] on macOS)."
msgstr ""
"Si [code]true[/code], la boîte de dialogue sera cachée lorsque l'action "
"[code]ui_close_dialog[/code] est pressée (par défaut, cette action est liée à "
"o [kbd]Echap[/kbd], ou [kbd]Cmd + W[/kbd] sur macOS)."

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 block chaining encryption mode."
msgstr "Mode de chiffrement par chaînage de blocs AES."

msgid "AES cipher block chaining decryption mode."
msgstr "Mode de déchiffrement par 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 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 "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 ""
"Sets relative option in the setting at [param index] to [param enabled].\n"
"If sets [param enabled] to [code]true[/code], the rotation is applied "
"relative to the pose.\n"
"If sets [param enabled] to [code]false[/code], the rotation is applied "
"relative to the rest. It means to replace the current pose with the "
"[AimModifier3D]'s result."
msgstr ""
"Définit l'option relative dans le paramètre [param index] sur [param "
"enabled].\n"
"Si [param enabled] est défini sur [code]true[/code], la rotation est "
"appliquée par rapport à la pose.\n"
"Si [param enabled] est défini sur [code]false[/code], la rotation est "
"appliquée par rapport au repos. Cela signifie que la pose actuelle est "
"remplacée par le résultat de [AimModifier3D]."

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 motion delta of position with the [member root_motion_track] as "
"a [Vector3] that can be used elsewhere.\n"
"If [member root_motion_track] is not a path to a track of type [constant "
"Animation.TYPE_POSITION_3D], returns [code]Vector3(0, 0, 0)[/code].\n"
"See also [member root_motion_track] and [RootMotionView].\n"
"The most basic example is applying position to [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_rotation\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tcurrent_rotation = get_quaternion()\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar velocity = current_rotation * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"By using this in combination with [method "
"get_root_motion_rotation_accumulator], you can apply the root motion position "
"more correctly to account for the rotation of the node.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar velocity = "
"(animation_tree.get_root_motion_rotation_accumulator().inverse() * "
"get_quaternion()) * animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"If [member root_motion_local] is [code]true[/code], returns the pre-"
"multiplied translation value with the inverted rotation.\n"
"In this case, the code can be written as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar velocity = get_quaternion() * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Récupère le différentiel de position du mouvement avec [member "
"root_motion_track] en tant que [Vector3] qui peut être utilisé autre part.\n"
"Si [member root_motion_track] n'est pas un chemin vers une piste de type "
"[constant Animation.TYPE_POSITION_3D], renvoie [code]Vector3(0,0,0)[/code].\n"
"Voir aussi [member root_motion_track] et [RootMotionView];\n"
"Le plus simple example est d'appliquer la position à [CharacterBody3D] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rotation_actuelle\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\trotation_actuelle = get_quaternion()\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar velocite = rotation_actuelle * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocite)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"En utilisant ceci en combinaison avec [method "
"get_root_motion_rotation_accumulator], vous pouvez appliquer la position du "
"mouvement racine correctement pour prendre en compte la rotation du nœud.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar vitesse = "
"(animation_tree.get_root_motion_rotation_accumulator().inverse() * "
"get_quaternion()) * animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(vitesse)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Si [member root_motion_local] vaut [code]true[/code], renvoie la valeur de "
"translation pré-multipliée avec la rotation inversée.\n"
"Dans ce cas, le code peut être écrit comme suit :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar vitesse = get_quaternion() * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(vitesse)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Retrieve the blended value of the position tracks with the [member "
"root_motion_track] as a [Vector3] that can be used elsewhere.\n"
"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]Vector3(0, 0, 0)[/code] "
"is played in the previous frame and then an animation with only one key "
"[code]Vector3(1, 0, 1)[/code] is played in the next frame, the difference can "
"be calculated as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_position_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_position_accumulator = "
"animation_tree.get_root_motion_position_accumulator()\n"
"\tvar difference = current_root_motion_position_accumulator - "
"prev_root_motion_position_accumulator\n"
"\tprev_root_motion_position_accumulator = "
"current_root_motion_position_accumulator\n"
"\ttransform.origin += 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 mélangée des pistes de position avec [member "
"root_motion_track] en tant que [Vector3] qui peut être utilisé autre part.\n"
"Ceci 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 seulement une clé [code]Vector3(0, 0, 0)[/"
"code] est jouée dans la trame précédente et ensuite une animation avec "
"seulement une clé [code]Vector3(1, 0, 1)[/code] est jouée à la trame "
"suivante, la différence peut-être calculée comme suit :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var accumulateur_position_mouvement_racine_precedent\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar accumulateur_position_mouvement_racine_actuel = "
"animation_tree.get_root_motion_position_accumulator()\n"
"\tvar difference = accumulateur_position_mouvement_racine_actuel - "
"accumulateur_position_mouvement_racine_precedent\n"
"\taccumulateur_position_mouvement_racine_precedent = "
"accumulateur_position_mouvement_racine_actuel\n"
"\ttransform.origin += 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 motion delta of rotation with the [member root_motion_track] as "
"a [Quaternion] that can be used elsewhere.\n"
"If [member root_motion_track] is not a path to a track of type [constant "
"Animation.TYPE_ROTATION_3D], returns [code]Quaternion(0, 0, 0, 1)[/code].\n"
"See also [member root_motion_track] and [RootMotionView].\n"
"The most basic example is applying rotation to [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Récupère le différentiel de rotation du mouvement avec [member "
"root_motion_track] en tant que [Quaternion] qui peut être utilisé autre "
"part.\n"
"Si [member root_motion_track] n'est pas un chemin vers une piste de type "
"[constant Animation.TYPE_ROTATION_3D], renvoie [code]Quaternion(0, 0, 0, 1)[/"
"code].\n"
"Voir aussi [member root_motion_track] et [RootMotionView];\n"
"Le plus simple example est d'appliquer la rotation à [CharacterBody3D] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"[/gdscript]\n"
"[/codeblocks]"

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 motion delta of scale with the [member root_motion_track] as a "
"[Vector3] that can be used elsewhere.\n"
"If [member root_motion_track] is not a path to a track of type [constant "
"Animation.TYPE_SCALE_3D], returns [code]Vector3(0, 0, 0)[/code].\n"
"See also [member root_motion_track] and [RootMotionView].\n"
"The most basic example is applying scale to [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_scale = Vector3(1, 1, 1)\n"
"var scale_accum = Vector3(1, 1, 1)\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tcurrent_scale = get_scale()\n"
"\t\tscale_accum = Vector3(1, 1, 1)\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tscale_accum += animation_tree.get_root_motion_scale()\n"
"\tset_scale(current_scale * scale_accum)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Récupère le différentiel d'échelle du mouvement avec [member "
"root_motion_track] en tant que [Vector3] qui peut être utilisé autre part.\n"
"Si [member root_motion_track] n'est pas un chemin vers une piste de type "
"[constant Animation.TYPE_SCALE_3D], renvoie [code]Vector3(0, 0, 0)[/code].\n"
"Voir aussi [member root_motion_track] et [RootMotionView];\n"
"Le plus simple exemple est d'appliquer l'échelle à [CharacterBody3D] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var echelle_actuelle = Vector3(1, 1, 1)\n"
"var accum_echelle = Vector3(1, 1, 1)\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\techelle_actuelle = get_scale()\n"
"\t\taccum_echelle = Vector3(1, 1, 1)\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\taccum_echelle += animation_tree.get_root_motion_scale()\n"
"\tset_scale(echelle_actuelle * accum_echelle)\n"
"[/gdscript]\n"
"[/codeblocks]"

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 ""
"Ordinarily, tracks can be set to [constant Animation.UPDATE_DISCRETE] to "
"update infrequently, usually when using nearest interpolation.\n"
"However, when blending with [constant Animation.UPDATE_CONTINUOUS] several "
"results are considered. The [member callback_mode_discrete] specify it "
"explicitly. See also [enum AnimationCallbackModeDiscrete].\n"
"To make the blended results look good, it is recommended to set this to "
"[constant ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] to update every "
"frame during blending. Other values exist for compatibility and they are fine "
"if there is no blending, but not so, may produce artifacts."
msgstr ""
"Habituellement, les pistes peuvent être définies à [constant "
"Animation.UPDATE_DISCRETE] pour se mettre à jour infréquemment, "
"habituellement en utilisant l'interpolation du plus proche.\n"
"Cependant, lors du mélange avec [constant Animation.UPDATE_CONTINUOUS], "
"plusieurs résultats sont pris en considération. Le [member "
"callback_mode_discrete] le spécifie explicitement. Voir aussi [enum "
"AnimationCallbackModeDiscrete].\n"
"Pour que les résultats mélangés soient bons, il est recommandé de définir "
"ceci à [constant ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] pour se "
"mettre à jour à chaque trame pendant le mélange. D'autres valeurs existent "
"pour la compatibilité et elles sont bonnes s'il n'y a pas de mélange, mais "
"pas ainsi, peuvent produire des artéfacts."

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 ""
"If [code]true[/code], [method get_root_motion_position] value is extracted as "
"a local translation value before blending. In other words, it is treated like "
"the translation is done after the rotation."
msgstr ""
"Si [code]true[/code], la valeur de [method get_root_motion_position] est "
"extraite en tant que valeur de translation locale avant le mélange. En "
"d'autres termes, c'est traité comme si la translation est faite après la "
"rotation."

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 [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 set of [AnimationRootNode]s placed on a virtual axis, crossfading between "
"the two adjacent ones. Used by [AnimationTree]."
msgstr ""
"Un ensemble d'[AnimationRootNode]s placés sur un axe virtuel, faisant un "
"fondu enchaîné entre les deux nœuds adjacents. Utilisé par [AnimationTree]."

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 set of [AnimationRootNode]s placed on 2D coordinates, crossfading between "
"the three adjacent ones. Used by [AnimationTree]."
msgstr ""
"Un ensemble d'[AnimationRootNode]s placés sur des coordonnées 2D, faisant un "
"fondu enchaîné entre les trois nœuds adjacents. Utilisé par [AnimationTree]."

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 ""
"Determines how cross-fading between animations is eased. If empty, the "
"transition will be linear. Should be a unit [Curve]."
msgstr ""
"Détermine comment le fondu enchaîné entre les animations est amorti. Si vide, "
"la transition sera linéaire. Devrait être une [Curve] unitaire."

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], allows teleport to the self state with [method "
"AnimationNodeStateMachinePlayback.travel]. When the reset option is enabled "
"in [method AnimationNodeStateMachinePlayback.travel], the animation is "
"restarted. If [code]false[/code], nothing happens on the teleportation to the "
"self state."
msgstr ""
"Si [code]true[/code], permet la téléportation à son propre état avec [method "
"AnimationNodeStateMachinePlayback.travel]. Lorsque l'option de "
"réinitialisation est activée dans [method "
"AnimationNodeStateMachinePlayback.travel], l'animation est redémarrée. Si "
"[code]false[/code], rien ne se passe lors de la téléportation à son propre "
"état."

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 ""
"Ease curve for better control over cross-fade between this state and the "
"next. Should be a unit [Curve]."
msgstr ""
"Courbe d'atténuation pour un meilleur contrôle du fondu enchaîné entre cet "
"état et le prochain. Devrait être une [Curve] unitaire."

msgid ""
"The time to cross-fade between this state and the next.\n"
"[b]Note:[/b] [AnimationNodeStateMachine] transitions the current state "
"immediately after the start of the fading. The precise remaining time can "
"only be inferred from the main animation. When [AnimationNodeOutput] is "
"considered as the most upstream, so the [member xfade_time] is not scaled "
"depending on the downstream delta. See also [member "
"AnimationNodeOneShot.fadeout_time]."
msgstr ""
"Le temps du fondu enchaîné entre cet état et le prochain.\n"
"[b]Note :[/b] [AnimationNodeStateMachine] transitionne de l'état actuel "
"immédiatement après le début du fondu. Le temps restant précis ne peut être "
"déduit que de l'animation principale. Si [AnimationNodeOutput] est considéré "
"comme le plus en amont, le [member xfade_time] n'est pas échelonné selon le "
"delta de l'aval. Voir aussi [member AnimationNodeOneShot.fadeout_time]."

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 "A time-seeking animation node used in [AnimationTree]."
msgstr ""
"Un nœud d'animation fixant à un temps donné utilisé dans [AnimationTree]."

msgid ""
"This animation node can be used to cause a seek command to happen to any sub-"
"children of the animation graph. Use to play an [Animation] from the start or "
"a certain playback position inside the [AnimationNodeBlendTree].\n"
"After setting the time and changing the animation playback, the time seek "
"node automatically goes into sleep mode on the next process frame by setting "
"its [code]seek_request[/code] value to [code]-1.0[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Play child animation from the start.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 0.0)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 0.0\n"
"\n"
"# Play child animation from 12 second timestamp.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 12.0)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 12.0\n"
"[/gdscript]\n"
"[csharp]\n"
"// Play child animation from the start.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 0.0);\n"
"\n"
"// Play child animation from 12 second timestamp.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 12.0);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Ce nœud d'animation peut être utilisé pour causer une commande de recherche "
"dans n'importe quel nœud enfant du graphe d'animation. Utilisez le pour jouer "
"une [Animation] depuis le début ou une certaine position dans "
"l'[AnimationNodeBlendTree].\n"
"Après avoir défini le temps et changé la lecture de l'animation, ce nœud "
"s'endormira automatiquement à la trame de traitement suivante en définissant "
"sa valeur [code]seek_position[/code] à [code]-1.0[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Jouer l'animation enfant depuis le début.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 0.0)\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 0.0\n"
"\n"
"# Jouer l'animation enfant en commençant à 12 secondes.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 12.0)\n"
"# Syntaxe alternative (même résultat qu'au dessus).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 12.0\n"
"[/gdscript]\n"
"[csharp]\n"
"// Jouer l'animation enfant depuis le début.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 0.0);\n"
"\n"
"// Jouer l'animation enfant en commençant à 12 secondes.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 12.0);\n"
"[/csharp]\n"
"[/codeblocks]"

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 breaks the loop at the end of the loop cycle "
"for transition."
msgstr ""
"Renvoie si l'animation brise la boucle à la fin du cycle de boucle pour la "
"transition."

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 ""
"If [code]true[/code], allows transition to the self state. When the reset "
"option is enabled in input, the animation is restarted. If [code]false[/"
"code], nothing happens on the transition to the self state."
msgstr ""
"Si [code]true[/code], permet la transition vers son propre état. Lorsque "
"l'option de réinitialisation est activée en entrée, l'animation est "
"redémarrée. Si [code]false[/code], rien ne se passe lors de la transition "
"vers son propre état."

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 ""
"Cross-fading time (in seconds) between each animation connected to the "
"inputs.\n"
"[b]Note:[/b] [AnimationNodeTransition] transitions the current state "
"immediately after the start of the fading. The precise remaining time can "
"only be inferred from the main animation. When [AnimationNodeOutput] is "
"considered as the most upstream, so the [member xfade_time] is not scaled "
"depending on the downstream delta. See also [member "
"AnimationNodeOneShot.fadeout_time]."
msgstr ""
"Temps du fondu croisé (en secondes) entre chaque animation connectée aux "
"entrées.\n"
"[b]Note :[/b] [AnimationNodeStateMachine] transitionne de l'état actuel "
"immédiatement après le début du fondu. Le temps restant précis ne peut être "
"déduit que de l'animation principale. Si [AnimationNodeOutput] est considéré "
"comme le plus en amont, le [member xfade_time] n'est pas échelonné selon le "
"delta de l'aval. Voir aussi [member AnimationNodeOneShot.fadeout_time]."

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 ""
"Returns [code]true[/code] if the an animation is currently active. An "
"animation is active if it was played by calling [method play] and was not "
"finished yet, or was stopped by calling [method stop].\n"
"This can be used to check whether an animation is currently paused or "
"stopped.\n"
"[codeblock]\n"
"var is_paused = not is_playing() and is_animation_active()\n"
"var is_stopped = not is_playing() and not is_animation_active()\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si une animation est actuellement active. Une "
"animation est active si elle a été jouée en appelant [method play] et n'est "
"pas encore finie, ou a été arrêtée en appelant [method stop].\n"
"Cela peut être utilisé pour vérifier si une animation est actuellement "
"interrompue ou arrêtée.\n"
"[codeblock]\n"
"var est_en_pause = not is_playing() and is_animation_active()\n"
"var est_arretee = not is_playing() and not is_animation_active()\n"
"[/codeblock]"

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 ease type of the capture interpolation. See also [enum Tween.EaseType]."
msgstr ""
"Le type d'accélération de l'interpolation de capture. Voir aussi [enum "
"Tween.EaseType]."

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 nœud (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 renvoie 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 renvoie 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 un tableau à partir d'un [PackedByteArray]."

msgid "Constructs an array from a [PackedColorArray]."
msgstr "Construit un 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 un 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 ""
"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 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 ""
"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."
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égatif, [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 plutôt [method erase].\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 en performance notable, en "
"particulier sur les grands tableaux."

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 blend shapes 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 [param from_id] point is disabled, returns an empty array (even if "
"[code]from_id == to_id[/code]).\n"
"If [param from_id] point is not disabled, 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"
"Si le point [param from_id] est désactivé, renvoie un tableau vide (même si "
"[code]from_id == to_id[/code]).\n"
"Si le point [param from_id] n'est pas désactivé, et qu'il n'y a pas de chemin "
"valide vers la cible, et [param allow_partial_path] vaut[code]true[/code], "
"renvoie le point le 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 [param from_id] point is disabled, returns an empty array (even if "
"[code]from_id == to_id[/code]).\n"
"If [param from_id] point is not disabled, 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"
"Si [param from_id] point est désactivé, retourne un tableau vide (même si "
"[code]from_id == to_id[/code]).\n"
"Si [param from_id] point n'est pas désactivé, qu''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 [param from_id] point is disabled, returns an empty array (even if "
"[code]from_id == to_id[/code]).\n"
"If [param from_id] point is not disabled, 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"
"Si [param from_id] point est désactivé, retourne un tableau vide (même si "
"[code]from_id == to_id[/code]).\n"
"Si [param from_id] point n'est pas désactivé, qu'il n'y a pas de chemin "
"valide vers la cible, et [param allow_partial_path] vauest [code]true[/code], "
"renvoitourne 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 [param from_id] point is disabled, returns an empty array (even if "
"[code]from_id == to_id[/code]).\n"
"If [param from_id] point is not disabled, 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"
"Si [param from_id] point est désactivé, retourne un tableau vide (même si "
"[code]from_id == to_id[/code]).\n"
"Si [param from_id] point n'est pas désactivé, qu''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 [param from_id] point is disabled, returns an empty array (even if "
"[code]from_id == to_id[/code]).\n"
"If [param from_id] point is not disabled, 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"
"Si le point [param from_id] est désactivé, renvoie un tableau vide (même si "
"[code]from_id == to_id[/code]).\n"
"Si le point [param from_id] n'est pas désactivé, qu'il n'y a pas de chemin "
"valide vers la cible, et que [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 "
"que [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 ""
"Returns an array with the points that are in the path found by [AStarGrid2D] "
"between the given points. The array is ordered from the starting point to the "
"ending point of the path.\n"
"If [param from_id] point is disabled, returns an empty array (even if "
"[code]from_id == to_id[/code]).\n"
"If [param from_id] point is not disabled, 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 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 "
"[AStarGrid2D] entre les points donnés. Le tableau est trié du point de départ "
"au point final du chemin.\n"
"Si [param from_id] point est désactivé, retourne un tableau vide (même si "
"[code]from_id == to_id[/code]).\n"
"Si [param from_id] point n'est pas désactivé, qu'il n'y a pas de chemin "
"valide vers la cible, et que [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] Cette méthode n'est pas thread-safe, elle ne peut être utilisée "
"qu'à partir d'un seul [Thread] à un moment donné. Envisagez d'utiliser "
"[Mutex] pour garantir un accès exclusif à un thread pour éviter les race "
"conditions.\n"
"De plus, lorsque [param allow_partial_path] vaut [code]true[/code] et que "
"[param to_id] est solide, la recherche peut prendre un temps inhabituellement "
"long pour se terminer."

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.\n"
"[b]Note:[/b] The image size is always an integer, so the actual region size "
"is rounded down."
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.\n"
"[b]Note:[/b] La taille de l'image est toujours un entier, donc la taille "
"réelle de la région est arrondie."

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 ""
"Dynamic range compressor reduces the level of the sound when the amplitude "
"goes over a certain threshold in Decibels. One of the main uses of a "
"compressor is to increase the dynamic range by clipping as little as possible "
"(when sound goes over 0dB).\n"
"Compressor has many uses in the mix:\n"
"- In the Master bus to compress the whole output (although an "
"[AudioEffectHardLimiter] is probably better).\n"
"- In voice channels to ensure they sound as balanced as possible.\n"
"- Sidechained. This can reduce the sound level sidechained with another audio "
"bus for threshold detection. This technique is common in video game mixing to "
"the level of music and SFX while voices are being heard.\n"
"- Accentuates transients by using a wider attack, making effects sound more "
"punchy."
msgstr ""
"Le compresseur dynamique d'intensité réduit le niveau du son lorsque le "
"volume dépasse un certain seuil de décibels. L'une des principales "
"utilisations d'un compresseur est d'augmenter la gamme dynamique en essayant "
"de saturer le moins possible le son (quand le son dépasse 0dB).\n"
"Le compresseur a de nombreuses utilisations dans le mixage :\n"
"- Dans le bus Maître pour compresser toute la sortie (même si un "
"[AudioEffectHardLimiter] est souvent plus adapté).\n"
"- Dans les canaux de voix pour s'assurer qu'ils sonnent aussi équilibré que "
"possible.\n"
"- Pour le \"Sidechained\". Cela peut réduire le niveau de son enchaîné avec "
"un autre bus audio pour la détection des seuils. Cette technique est courante "
"dans le jeu vidéo pour mixer le niveau de la musique et les effets spéciaux "
"tandis que les voix sont entendues.\n"
"- Accentue les transitions en utilisant une attaque plus grande, rendant les "
"effets sonores plus percutants."

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 ""
"Widens sound stage through phase shifting in conjunction with [member "
"time_pullout_ms]. Just pans sound to the left channel if [member "
"time_pullout_ms] is 0."
msgstr ""
"Élargit la scène sonore avec du déplacement de phase en conjonction avec "
"[member time_pullout_ms]. Balance seulement le son vers le canal de gauche si "
"[member time_pullout_ms] vaut 0."

msgid ""
"Widens sound stage through phase shifting in conjunction with [member "
"surround]. Just delays the right channel if [member surround] is 0."
msgstr ""
"Élargit la scène sonore avec du déplacement de phase en conjonction avec "
"[member surround]. Retarde seulement le canal de droite si [member surround] "
"vaut 0."

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'auditeur pour utiliser à la place celui de la caméra actuelle."

msgid "Returns the listener's global orthonormalized [Transform3D]."
msgstr "Renvoie la [Transform3D] globale orthonormalisée 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 ""
"If not [constant DOPPLER_TRACKING_DISABLED], this listener 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 n'est pas [constant DOPPLER_TRACKING_DISABLED], cet auditeur 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 que sur des "
"[AudioStreamPlayer3D]s si [member AudioStreamPlayer3D.doppler_tracking] n'est "
"pas défini à [constant AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED]."

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 absolute size of the microphone input buffer. This is set to a "
"multiple of the audio latency and can be used to estimate the minimum rate at "
"which the frames need to be fetched."
msgstr ""
"Renvoie la taille absolue du tampon d'entrée du microphone. Il s'agit d'un "
"multiple de la latence audio et peut être utilisé pour estimer le taux "
"minimum auquel les trames doivent être récupérées."

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 a [PackedVector2Array] containing exactly [param frames] audio "
"samples from the internal microphone buffer if available, otherwise returns "
"an empty [PackedVector2Array].\n"
"The buffer is filled at the rate of [method get_input_mix_rate] frames per "
"second when [method set_input_device_active] has successfully been set to "
"[code]true[/code].\n"
"The samples are signed floating-point PCM values between [code]-1[/code] and "
"[code]1[/code]."
msgstr ""
"Renvoie un [PackedVector2Array] contenant exactement [param frames] "
"d'échantillons audio du buffer du microphone interne si disponible, sinon "
"renvoie un [PackedVector2Array] vide.\n"
"Le buffer est rempli au taux de [method get_input_mix_rate] images par "
"seconde lorsque [method set_input_device_active] a été définie avec succès à "
"[code]true[/code].\n"
"Les échantillons sont des valeurs PCM flottantes entre [code]-1[/code] et "
"[code]1[/code]."

msgid ""
"Returns the number of frames available to read using [method "
"get_input_frames]."
msgstr ""
"Renvoie le nombre de trames disponibles à la lecture en utilisant [method "
"get_input_frames]."

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 ""
"If [param active] is [code]true[/code], starts the microphone input stream "
"specified by [member input_device] or returns an error if it failed.\n"
"If [param active] is [code]false[/code], stops the input stream if it is "
"running."
msgstr ""
"Si [param active] vaut [code]true[/code], démarre le flux d'entrée du "
"microphone spécifié par [member input_device] ou renvoie une erreur s'il a "
"échoué.\n"
"Si [param active] vaut [code]false[/code], arrête le flux d'entrée s'il est "
"en cours d'exécution."

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 ""
"The sample rate to use (in Hz). Higher values are more demanding for the CPU "
"to generate, 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 "
"generating 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.\n"
"[b]Note:[/b] [AudioStreamGenerator] is not automatically resampling input "
"data, to produce expected result [member mix_rate_mode] should match the "
"sampling rate of input data.\n"
"[b]Note:[/b] If you are using [AudioEffectCapture] as the source of your "
"data, set [member mix_rate_mode] to [constant MIX_RATE_INPUT] or [constant "
"MIX_RATE_OUTPUT] to automatically match current [AudioServer] mixing rate."
msgstr ""
"Le taux d'échantillonnage à utiliser (en Hz). Les valeurs plus élevées "
"demandent plus de puissance de CPU, mais cela résulte en 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é.\n"
"[b]Note :[/b] [AudioStreamGenerator] ne ré-échantillonne pas les données "
"d'entrée, pour produire le résultat attendu [member mix_rate_mode] devrait "
"correspondre au taux d'échantillonnage des données d'entrée.\n"
"[b]Note :[/b] Si vous utilisez [AudioEffectCapture] comme source de vos "
"données, définissez [member mix_rate_mode] à [constant MIX_RATE_INPUT] ou "
"[constant MIX_RATE_OUTPUT] pour correspondre automatiquement au taux de "
"mixage de l'[AudioServer] courant."

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 ""
"Do not use fade for the transition. This is useful when transitioning from a "
"clip-end to clip-beginning, and each clip has their begin/end."
msgstr ""
"Ne pas utiliser de fondu pour la transition. Ceci est utile lors du passage "
"d'une fin de clip à un début de clip, et que chaque clip a son début/fin."

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 ""
"Mixes up to [param frames] of audio from the stream from the current "
"position, at a rate of [param rate_scale], advancing the stream.\n"
"Returns a [PackedVector2Array] where each element holds the left and right "
"channel volume levels of each frame.\n"
"[b]Note:[/b] Can return fewer frames than requested, make sure to use the "
"size of the return value."
msgstr ""
"Mixe jusqu'à [param frames] trames d'audio à partir du flux de la position "
"actuelle, à une vitesse de [param rate_scale], en avançant le flux.\n"
"Renvoie un [PackedVector2Array] où chaque élément contient les niveaux de "
"volume du canal gauche et droit de chaque trame.\n"
"[b]Note :[/b] Peut renvoyer moins de trames que demandé, assurez-vous "
"s'utilise la taille de la valeur renvoyée."

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 ""
"Scales the panning strength for this node by multiplying the base [member "
"ProjectSettings.audio/general/3d_panning_strength] by this factor. If the "
"product is [code]0.0[/code] then stereo panning is disabled and the volume is "
"the same for all channels. If the product is [code]1.0[/code] then one of the "
"channels will be muted when the sound is located exactly to the left (or "
"right) of the listener.\n"
"Two speaker stereo arrangements implement the [url=https://webaudio.github.io/"
"web-audio-api/#stereopanner-algorithm]WebAudio standard for StereoPannerNode "
"Panning[/url] where the volume is cosine of half the azimuth angle to the "
"ear.\n"
"For other speaker arrangements such as the 5.1 and 7.1 the SPCAP (Speaker-"
"Placement Correction Amplitude) algorithm is implemented."
msgstr ""
"Redimensionne la force de balance de ce nœud en multipliant la base [member "
"ProjectSettings.audio/general/3d_panning_strength] par ce facteur. Si le "
"produit vaut [code]0.0[/code], la balance stéréo est désactivée et le volume "
"est le même pour tous les canaux. Si le produit vaut [code]1.0[/code], l'un "
"des canaux sera muet lorsque le son est situé exactement à gauche (ou à "
"droite) de l'auditeur.\n"
"Les arrangements stéréo à 2 haut-parleurs implémentent le [url=https://"
"webaudio.github.io/web-audio-api/#stereopanner-algorithm]standard WebAudio "
"pour la balance StereoPannerNode[/url] où le volume est le cosinus de la "
"moitié de l'angle d'azimut à l'oreille.\n"
"Pour d'autres arrangements des haut-parleurs tels que le 5.1 et 7.1, "
"l'algorithme SPCAP (Speaker-Placement Correction Amplitude) est implémenté."

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 largest possible frequency multiplier of the random pitch variation. "
"Pitch will be randomly chosen within a range of [code skip-lint]1.0 / "
"random_pitch[/code] and [code skip-lint]random_pitch[/code]. A value of "
"[code]1.0[/code] means no variation. A value of [code]2.0[/code] means pitch "
"will be randomized between double and half.\n"
"[b]Note:[/b] Setting this property also sets [member random_pitch_semitones]."
msgstr ""
"Le plus grand multiplicateur de fréquence possible de la variation aléatoire "
"de la hauteur. La hauteur sera choisie aléatoirement dans une plage de [code "
"skip-lint]1.0 / random_pitch[/code] et [code skip-lint]random_pitch[/code]. "
"Une valeur de [code]1.0[/code] ne signifie aucune variation. Une valeur de "
"[code]2.0[/code] signifie que la hauteur sera aléatoire entre le double et la "
"moitié.\n"
"[b]Note :[/b] Définir cette propriété définit également [member "
"random_pitch_semitones]."

msgid ""
"The largest possible distance, in semitones, of the random pitch variation. A "
"value of [code]0.0[/code] means no variation.\n"
"[b]Note:[/b] Setting this property also sets [member random_pitch]."
msgstr ""
"La plus grande distance possible, en demi-tons, de la variation aléatoire de "
"la hauteur. Une valeur de [code]0.0[/code] signifie aucune variation.\n"
"[b]Note :[/b] Définir cette propriété définit également [member random_pitch]."

msgid ""
"The intensity of random volume variation. Volume will be increased or "
"decreased by a random value up to [code skip-lint]random_volume_offset_db[/"
"code]. A value of [code]0.0[/code] means no variation. A value of [code]3.0[/"
"code] means volume will be randomized between [code]-3.0 dB[/code] and [code]"
"+3.0 dB[/code]."
msgstr ""
"L'intensité de la variation aléatoire du volume. Le volume sera augmenté ou "
"diminué par une valeur aléatoire jusqu'à [code skip-"
"lint]random_volume_offset_db[/code]. Une valeur de [code]0.0[/code] signifie "
"aucune variation. Une valeur de [code]3.0[/code] signifie que le volume sera "
"aléatoire entre [code]-3.0 dB[/code] et [code]+3.0 dB[/code]."

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's state is pressed. Means the button is "
"pressed down or toggled (if [member toggle_mode] is active). Only works if "
"[member toggle_mode] is [code]true[/code].\n"
"[b]Note:[/b] Changing the value of [member button_pressed] will result in "
"[signal toggled] to be emitted. If you want to change the pressed state "
"without emitting that signal, use [method set_pressed_no_signal]."
msgstr ""
"Si [code]true[/code], l'état du bouton est appuyé. Ce qui signifie que le "
"bouton est appuyé ou basculé (si [member toggle_mode] est actif). Ne "
"fonctionne que si [member toggle_mode] est [code]true[/code].\n"
"[b]Note :[/b] Changer la valeur de [member button_pressed] émettra le signal "
"[signal toggled]. Si vous voulez changer l'état pressé sans émettre ce "
"signal, utilisez plutôt [method set_pressed_no_signal]."

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 [param feature] is enabled."
msgstr ""
"Renvoie [code]true[/code] si la fonctionnalité [param feature] spécifiée est "
"active."

msgid "Returns [code]true[/code] if the specified [param flag] is enabled."
msgstr ""
"Renvoie [code]true[/code] si le drapeau [param flag] spécifié est activé."

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 ""
"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 ""
"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 "The algorithm used for diffuse light scattering."
msgstr "L'algorithme utilisé pour la diffusion de la lumière diffuse."

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 ""
"If [code]true[/code], enables the vertex grow setting. This can be used to "
"create mesh-based outlines using a second material pass and its [member "
"cull_mode] set to [constant CULL_FRONT]. See also [member grow_amount].\n"
"[b]Note:[/b] Vertex growth cannot create new vertices, which means that "
"visible gaps may occur in sharp corners. This can be alleviated by designing "
"the mesh to use smooth normals exclusively using [url=http://"
"wiki.polycount.com/wiki/Face_weighted_normals]face weighted normals[/url] in "
"the 3D authoring software. In this case, grow will be able to join every "
"outline together, just like in the original mesh."
msgstr ""
"Si [code]true[/code], permet le réglage de l'agrandissement des sommets. Cela "
"peut être utilisé pour créer des contours basés sur le maillage à l'aide d'un "
"deuxième passe du matériau et son [member cull_mode] défini à [constant "
"CULL_FRONT]. Voir aussi [member grow_amount].\n"
"[b]Note :[/b] L'agrandissement des sommets ne peut pas créer de nouveaux "
"sommets, ce qui signifie que des écarts visibles peuvent se produire dans les "
"coins tranchants. Cela peut être atténué en concevant le maillage pour qu'il "
"utilise des normales lisses exclusivement en utilisant [url=http://"
"wiki.polycount.com/wiki/Face_weighted_normals]normales pondérées par les "
"faces[/url] dans le logiciel de développent 3D. Dans ce cas, l'agrandissement "
"sera en mesure de faire rejoindre tous les contours, comme dans le maillage "
"original."

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], uses parallax occlusion mapping to represent depth in "
"the material instead of simple offset mapping (see [member "
"heightmap_enabled]). This results in a more convincing depth effect, but is "
"much more expensive on the GPU. Only enable this on materials where it makes "
"a significant visual difference."
msgstr ""
"Si [code]true[/code], utilise le parallax occlusion mapping pour représenter "
"la profondeur dans le matériau au lieu d'un simple mapping de décalage (voir "
"[member heightmap_enabled]). Cela résulte en un effet de profondeur plus "
"convaincant, mais est beaucoup plus cher sur le GPU. N'activez ceci que sur "
"les matériaux où cela fait une différence visuelle significative."

msgid ""
"If [code]true[/code], height mapping is enabled (also called \"parallax "
"mapping\" or \"depth mapping\"). See also [member normal_enabled]. Height "
"mapping is a demanding feature on the GPU, so it should only be used on "
"materials where it makes a significant visual difference.\n"
"[b]Note:[/b] Height mapping is not supported if triplanar mapping is used on "
"the same material. The value of [member heightmap_enabled] will be ignored if "
"[member uv1_triplanar] is enabled."
msgstr ""
"Si [code]true[/code], le height mapping est actif (également appelé "
"« parallax mapping » ou « depth mapping »). Voir aussi [member "
"normal_enabled]. Le height mapping est une fonctionnalité exigeante sur le "
"GPU, donc il ne devrait être utilisé que sur les matériaux où cela fait une "
"différence visuelle significative.\n"
"[b]Note :[/b] Le height mapping n'est pas supporté si le triplanar mapping "
"est utilisé sur le même matériau. La valeur de [member heightmap_enabled] "
"sera ignorée si [member uv1_triplanar] est actif."

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 number of layers to use for parallax occlusion mapping when the camera is "
"up close to the material. Higher values result in a more convincing depth "
"effect, especially in materials that have steep height changes. Higher values "
"have a significant cost on the GPU, so it should only be increased on "
"materials where it makes a significant visual difference.\n"
"[b]Note:[/b] Only effective if [member heightmap_deep_parallax] is "
"[code]true[/code]."
msgstr ""
"Le nombre de couches à utiliser pour le parallax occlusion mapping lorsque la "
"caméra est à proximité du matériau. Les valeurs plus élevées entraînent un "
"effet de profondeur plus convaincant, surtout dans les matériaux qui ont des "
"changements de hauteur raides. Les valeurs plus élevées ont un coût important "
"sur le GPU, donc il ne devrait être augmenté que sur les matériaux où cela "
"fait une différence visuelle significative.\n"
"[b]Note :[/b] Seulement effectif si [member heightmap_deep_parallax] vaut "
"[code]true[/code]."

msgid ""
"The number of layers to use for parallax occlusion mapping when the camera is "
"far away from the material. Higher values result in a more convincing depth "
"effect, especially in materials that have steep height changes. Higher values "
"have a significant cost on the GPU, so it should only be increased on "
"materials where it makes a significant visual difference.\n"
"[b]Note:[/b] Only effective if [member heightmap_deep_parallax] is "
"[code]true[/code]."
msgstr ""
"Le nombre de couches à utiliser pour le parallax occlusion mapping lorsque la "
"caméra est loin du matériau. Les valeurs plus élevées entraînent un effet de "
"profondeur plus convaincant, surtout dans les matériaux qui ont des "
"changements de hauteur raides. Les valeurs plus élevées ont un coût important "
"sur le GPU, donc il ne devrait être augmenté que sur les matériaux où cela "
"fait une différence visuelle significative.\n"
"[b]Note :[/b] Seulement effectif si [member heightmap_deep_parallax] vaut "
"[code]true[/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 ""
"Adjusts the strength of specular reflections. Specular reflections are "
"composed of scene reflections and the specular lobe which is the bright spot "
"that is reflected from light sources. When set to [code]0.0[/code], no "
"specular reflections will be visible. This differs from the [constant "
"SPECULAR_DISABLED] [enum SpecularMode] as [constant SPECULAR_DISABLED] only "
"applies to the specular lobe from the light source.\n"
"[b]Note:[/b] Unlike [member metallic], this is not energy-conserving, so it "
"should be left at [code]0.5[/code] in most cases. See also [member roughness]."
msgstr ""
"Ajuste la force des réflexions spéculaires. Les réflexions spéculaires sont "
"composés des réflexions de la scène et du lobe spéculaire qui est le point "
"lumineux qui est reflété de sources lumineuses. Lorsqu'elle est définie à "
"[code]0.0[/code], aucune réflexion spéculaire ne sera visible. Cela diffère "
"du mode [enum SpecularMode] [constant SPECULAR_DISABLED] car [constant "
"SPECULAR_DISABLED] s'applique seulement au lobe spéculaire de la source "
"lumineuse.\n"
"[b]Note :[/b] Contrairement à [member metallic], cela ne conserve pas "
"l'énergie, donc elle devrait être laissée à [code]0.5[/code] dans la plupart "
"des cas. Voir aussi [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 Occlusion/Roughness/Metallic texture to use. This is a more efficient "
"replacement of [member ao_texture], [member roughness_texture] and [member "
"metallic_texture] in [ORMMaterial3D]. Ambient occlusion is stored in the red "
"channel. Roughness map is stored in the green channel. Metallic map is stored "
"in the blue channel. The alpha channel is ignored."
msgstr ""
"La texture Occlusion/Rugosité/Metallique à utiliser. Il s'agit d'un "
"remplacement plus efficace de [member ao_texture], [member roughness_texture] "
"et [member metallic_texture] dans [ORMMaterial3D]. L'occlusion ambiante est "
"stockée dans le canal rouge. La rugosité est stockée dans le canal vert. Le "
"métallique est stockée dans le canal bleu. Le canal alpha est ignoré."

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 ""
"If [code]true[/code], enables the \"shadow to opacity\" render mode where "
"lighting modifies the alpha so shadowed areas are opaque and non-shadowed "
"areas are transparent. Useful for overlaying shadows onto a camera feed in AR."
msgstr ""
"Si [code]true[/code], permet le mode de rendu « ombre vers opacité » où "
"l'éclairage modifie l'alpha de sorte que les zones ombragées sont opaques et "
"les zones non ombragées sont transparentes. Utilise pour superposer des "
"ombres sur un flux de caméra en RA."

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 primary color of the stencil effect."
msgstr "La couleur primaire de l'effet de pochoir."

msgid "The outline thickness for [constant STENCIL_MODE_OUTLINE]."
msgstr "L'épaisseur du contour pour [constant STENCIL_MODE_OUTLINE]."

msgid "The stencil reference value (0-255). Typically a power of 2."
msgstr ""
"La valeur de référence du pochoir (0-255). Typiquement une puissance de 2."

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].\n"
"[b]Note:[/b] Subsurface scattering is not supported on viewports that have a "
"transparent background (where [member Viewport.transparent_bg] is [code]true[/"
"code])."
msgstr ""
"Si [code]true[/code], la diffusion de la surface est activée. Émule la "
"lumière qui pénètre la surface d'un objet, est dispersée, puis émerge. La "
"qualité de diffusion de la surface est contrôlée par [member "
"ProjectSettings.rendering/environment/subsurface_scattering/"
"subsurface_scattering_quality].\n"
"[b]Note:[/b] La diffusion de la surface n'est pas pris en charge dans les "
"vues qui ont un fond transparent (où [member Viewport.transparent_bg] est "
"[code]true[/code])."

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 ""
"The texture to use for multiplying the intensity of the subsurface scattering "
"transmittance intensity. See also [member subsurf_scatter_texture]. Ignored "
"if [member subsurf_scatter_skin_mode] is [code]true[/code]."
msgstr ""
"La texture à utiliser pour multiplier l'intensité de l'intensité de la "
"transluminescence. Voir aussi [member subsurf_scatter_texture]. Ignoré si "
"[member subsurf_scatter_skin_mode] vaut [code]true[/code]."

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 ""
"If [code]true[/code] use [member z_clip_scale] to scale the object being "
"rendered towards the camera to avoid clipping into things like walls."
msgstr ""
"Si [code]true[/code], utilise [member z_clip_scale] pour redimensionner "
"l'objet rendu vers la caméra pour éviter le clipping dans des objets comme "
"des murs."

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 ""
"If [code]true[/code], instead of using [code]UV[/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 les textures [code]UV[/code], "
"utilisera une recherche de texture tri-planaire pour déterminer comment "
"appliquer les textures. Le tri-planaire 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 et puis mélange les résultats "
"en fonction de la proximité du pixel avec chaque axe. Cela est souvent "
"utilisé pour les caractéristiques naturelles pour obtenir un mélange réaliste "
"des matériaux. Comme le texturage tri-planaire nécessite beaucoup plus de "
"lectures de texture par-pixel, il est beaucoup plus lent que le texturage UV "
"normal. De plus, comme il mélange la texture entre les trois axes, il est "
"inapproprié lorsque vous essayez d'obtenir du texturage net."

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], 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 ""
"Scales the object being rendered towards the camera to avoid clipping into "
"things like walls. This is intended to be used for objects that are fixed "
"with respect to the camera like player arms, tools, etc. Lighting and shadows "
"will continue to work correctly when this setting is adjusted, but screen-"
"space effects like SSAO and SSR may break with lower scales. Therefore, try "
"to keep this setting as close to [code]1.0[/code] as possible."
msgstr ""
"Redimensionne l'objet rendu vers la caméra pour éviter le clipping dans des "
"objets comme des murs. Ceci est destiné à être utilisé pour les objets qui "
"sont fixés par rapport à la caméra comme les bras du joueur, les outils, etc. "
"L'éclairage et les ombres continueront de fonctionner correctement lorsque ce "
"paramètre est ajusté, mais les effets de l'espace-écran comme le SSAO et le "
"SSR peuvent casser pour les échelles inférieures. Par conséquent, essayez de "
"garder ce paramètre aussi près que possible de [code]1.0[/code]."

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 ""
"The texture filter reads from the nearest pixel and blends between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look pixelated from up close, "
"and smooth from a distance."
msgstr ""
"Le filtre de texture lit le pixel le plus proche et mélange entre les 2 "
"mipmaps les plus proches. (ou utilise la mipmap la plus proche si [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"vaut [code]true[/code]). Cela rend la texture pixelisée de près, et lisse à "
"une certaine distance."

msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look smooth from up close, and "
"smooth from a distance."
msgstr ""
"Le filtre de texture mélange les 4 pixels les plus proches et les 2 mipmaps "
"les plus proches. (ou utilise la mipmap la plus proche si [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"vaut [code]true[/code]). Cela rend la texture lisse de près, et lisse à une "
"certaine distance."

msgid ""
"The texture filter reads from the nearest pixel and blends between 2 mipmaps "
"(or uses the nearest mipmap if [member ProjectSettings.rendering/textures/"
"default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the "
"angle between the surface and the camera view. This makes the texture look "
"pixelated from up close, and smooth from a distance. Anisotropic filtering "
"improves texture quality on surfaces that are almost in line with the camera, "
"but is slightly slower. The anisotropic filtering level can be changed by "
"adjusting [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."
msgstr ""
"Le filtre de texture lit le pixel le plus proche et mélange entre 2 mipmaps "
"(ou utilise la mipmap la plus proche si [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] vaut [code]true[/code]) "
"selon l'angle entre la surface et la vue de la caméra. Cela rend la texture "
"pixelisée de près, et lisse à une certaine distance. Le filtrage "
"anisotropique améliore la qualité de la texture sur les surfaces qui sont "
"quasiment alignées avec la caméra, mais est légèrement plus lent. Le niveau "
"du filtrage anisotropique peut être changé en ajustant [member "
"ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."

msgid ""
"The texture filter blends between the nearest 4 pixels and blends between 2 "
"mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) "
"based on the angle between the surface and the camera view. This makes the "
"texture look smooth from up close, and smooth from a distance. Anisotropic "
"filtering improves texture quality on surfaces that are almost in line with "
"the camera, but is slightly slower. The anisotropic filtering level can be "
"changed by adjusting [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level]."
msgstr ""
"Le filtre de texture lit les 4 pixels les plus proches et mélange entre 2 "
"mipmaps (ou utilise la mipmap la plus proche si [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"vaut [code]true[/code]) selon l'angle entre la surface et la vue de la "
"caméra. Cela rend la texture lisse de près, et lisse à une certaine distance. "
"Le filtrage anisotropique améliore la qualité de la texture sur les surfaces "
"qui sont quasiment alignées avec la caméra, mais est légèrement plus lent. Le "
"niveau du filtrage anisotropique peut être changé en ajustant [member "
"ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."

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 ""
"The material will cut off all values below a spatially-deterministic "
"threshold, the rest will remain opaque. This is faster to render than alpha "
"blending, but slower than opaque rendering. This also supports casting "
"shadows. Alpha hashing is suited for hair rendering."
msgstr ""
"Le matériau coupera toutes les valeurs en dessous d'un seuil déterminé "
"spatialement, le reste restera opaque. Ceci est plus rapide à rendre que le "
"mélange alpha, mais plus lent que le rendu opaque. Cela prend également en "
"charge la projection d'ombres. Le hachage Alpha est adapté pour le rendu des "
"cheveux."

msgid ""
"The material will use the texture's alpha value for transparency, but will "
"discard fragments with an alpha of less than 0.99 during the depth prepass "
"and fragments with an alpha less than 0.1 during the shadow pass. This also "
"supports casting shadows."
msgstr ""
"Le matériau utilisera la valeur alpha de la texture pour la transparence, "
"mais rejettera les fragments avec un alpha inférieur à 0,99 lors de la pré-"
"passe de profondeur et les fragments avec un alpha inférieur à 0,1 pendant la "
"passe d'ombre. Cela prend également en charge les projections 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 ""
"Depth test will discard the pixel if it is in front of other pixels. Useful "
"for stencil effects."
msgstr ""
"Le test de profondeur va défausser le pixel s'il est devant d'autres pixels. "
"Utile pour les effets de pochoir."

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 nonlinear sRGB encoding and are "
"converted to linear encoding 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 un encodage sRGB "
"et sont converties en encodage 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 nonlinear sRGB encoding to linear "
"encoding. See also [member albedo_texture_force_srgb]."
msgstr ""
"Force le shader à convertir l'albedo d'un encodage sRGB en un encodage "
"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 shadow to opacity feature."
msgstr "Active la fonctionnalité de l'ombre vers opacité."

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 "Disables stencil operations."
msgstr "Désactive les opérations de pochoir."

msgid ""
"Stencil preset which applies an outline to the object.\n"
"[b]Note:[/b] Requires a [member Material.next_pass] material which will be "
"automatically applied. Any manual changes made to [member Material.next_pass] "
"will be lost when the stencil properties are modified or the scene is "
"reloaded. To safely apply a [member Material.next_pass] material on a "
"material that uses stencil presets, use [member "
"GeometryInstance3D.material_overlay] instead."
msgstr ""
"Pré-réglage de pochoir qui applique un contour à l'objet.\n"
"[b]Note :[/b] Nécessite un matériau [member Material.next_pass] qui sera "
"automatiquement appliqué. Tout changement manuel apporté à [member "
"Material.next_pass] sera perdu lorsque les propriétés du pochoir sont "
"modifiées ou que la scène est rechargée. Pour appliquer en toute sécurité un "
"matériau [member Material.next_pass] sur un matériau qui utilise des pré-"
"réglages de pochoir, utilisez [member GeometryInstance3D.material_overlay] à "
"la place."

msgid ""
"Stencil preset which shows a silhouette of the object behind walls.\n"
"[b]Note:[/b] Requires a [member Material.next_pass] material which will be "
"automatically applied. Any manual changes made to [member Material.next_pass] "
"will be lost when the stencil properties are modified or the scene is "
"reloaded. To safely apply a [member Material.next_pass] material on a "
"material that uses stencil presets, use [member "
"GeometryInstance3D.material_overlay] instead."
msgstr ""
"Pré-réglage de pochoir qui affiche une silhouette de l'objet derrière les "
"murs.\n"
"[b]Note :[/b] Nécessite un matériau [member Material.next_pass] qui sera "
"automatiquement appliqué. Tout changement manuel apporté à [member "
"Material.next_pass] sera perdu lorsque les propriétés du pochoir sont "
"modifiées ou que la scène est rechargée. Pour appliquer en toute sécurité un "
"matériau [member Material.next_pass] sur un matériau qui utilise des pré-"
"réglages de pochoir, utilisez [member GeometryInstance3D.material_overlay] à "
"la place."

msgid "Enables stencil operations without a preset."
msgstr "Active les opérations de pochoir sans un pré-réglage."

msgid ""
"The material will write the reference value to the stencil buffer where it "
"passes the depth test."
msgstr ""
"Le matériau écrira la valeur de référence dans le buffer de pochoir la où il "
"passe le test de profondeur."

msgid ""
"The material will write the reference value to the stencil buffer where it "
"fails the depth test."
msgstr ""
"Le matériau écrira la valeur de référence dans le buffer de pochoir la où il "
"échoue au test de profondeur."

msgid "Always passes the stencil test."
msgstr "Passe toujours le test de pochoir."

msgid ""
"Passes the stencil test when the reference value is less than the existing "
"stencil value."
msgstr ""
"Passe le test du pochoir lorsque la valeur de référence est inférieure à la "
"valeur existante du pochoir."

msgid ""
"Passes the stencil test when the reference value is equal to the existing "
"stencil value."
msgstr ""
"Passe le test du pochoir lorsque la valeur de référence est égale à la valeur "
"existante du pochoir."

msgid ""
"Passes the stencil test when the reference value is less than or equal to the "
"existing stencil value."
msgstr ""
"Passe le test du pochoir lorsque la valeur de référence est inférieure ou "
"égale à la valeur existante du pochoir."

msgid ""
"Passes the stencil test when the reference value is greater than the existing "
"stencil value."
msgstr ""
"Passe le test du pochoir lorsque la valeur de référence est supérieure à la "
"valeur existante du pochoir."

msgid ""
"Passes the stencil test when the reference value is not equal to the existing "
"stencil value."
msgstr ""
"Passe le test du pochoir lorsque la valeur de référence n'est pas égale à la "
"valeur existante du pochoir."

msgid ""
"Passes the stencil test when the reference value is greater than or equal to "
"the existing stencil value."
msgstr ""
"Passe le test du pochoir lorsque la valeur de référence est supérieure ou "
"égale à la valeur existante du pochoir."

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 nœud "
"[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 reference node path of the setting at [param index].\n"
"This node will be only referenced and not modified by this modifier."
msgstr ""
"Renvoie le chemin du nœud de référence du paramètre à l'index [param index].\n"
"Ce nœud sera uniquement référencé et non modifié par ce modificateur."

msgid ""
"Returns the reference target type of the setting at [param index]. See also "
"[enum ReferenceType]."
msgstr ""
"Renvoie le type de cible de référence du réglage à [param index]. Voir aussi "
"[enum ReferenceType]."

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 reference target type of the setting at [param index] to [param "
"type]. See also [enum ReferenceType]."
msgstr ""
"Définit le type de cible de référence du réglage à [param index] à [param "
"type]. Voir aussi [enum ReferenceType]."

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 node that propagates and disperses the child bone's twist to the parent "
"bones."
msgstr ""
"Un nœud qui propage et disperse la torsion de l'os enfant aux os parent."

msgid ""
"This [BoneTwistDisperser3D] allows for smooth twist interpolation between "
"multiple bones by dispersing the end bone's twist to the parents. This only "
"changes the twist without changing the global position of each joint.\n"
"This is useful for smoothly twisting bones in combination with "
"[CopyTransformModifier3D] and IK.\n"
"[b]Note:[/b] If an extracted twist is greater than 180 degrees, flipping "
"occurs. This is similar to [ConvertTransformModifier3D]."
msgstr ""
"Ce [BoneTwistDisperser3D] permet d'interpoler une torsion lisse entre "
"plusieurs os en dispersant la torsion de l'os final à ses parents. Cela ne "
"change que la torsion sans changer la position globale de chaque "
"articulation.\n"
"Ceci est utile pour tordre des os de manière lisse en combinaison avec "
"[CopyTransformModifier3D] et de l'IK.\n"
"[b]Note :[/b] Si une torsion extraite est supérieure à 180 degrés, une "
"inversion se produit. Ceci est similaire à [ConvertTransformModifier3D]."

msgid "Clears all settings."
msgstr "Efface tous les paramètres."

msgid ""
"Returns the damping curve when [method get_disperse_mode] is [constant "
"DISPERSE_MODE_CUSTOM]."
msgstr ""
"Renvoie la courbe d'amortissement lorsque [method get_disperse_mode] est "
"[constant DISPERSE_MODE_CUSTOM]."

msgid ""
"Returns whether to use automatic amount assignment or to allow manual "
"assignment."
msgstr ""
"Renvoie s'il faut utiliser l'assignation automatique ou autoriser "
"l'assignation manuelle."

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 name of the bone chain."
msgstr "Renvoie le nom de l'os de fin 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 twist amount at [param joint] in the bone chain's joint list when "
"[method get_disperse_mode] is [constant DISPERSE_MODE_CUSTOM]."
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 get_disperse_mode] vaut [constant "
"DISPERSE_MODE_CUSTOM]."

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 position at which to divide the segment between joints for weight "
"assignment when [method get_disperse_mode] is [constant "
"DISPERSE_MODE_WEIGHTED]."
msgstr ""
"Renvoie la position à laquelle diviser le segment entre les articulations "
"pour la répartition du poids lorsque [method get_disperse_mode] vaut "
"[constant DISPERSE_MODE_WEIGHTED]."

msgid "Returns [code]true[/code] if the end bone is extended to have a tail."
msgstr ""
"Renvoie [code]true[/code] si l'os final est prolongé pour avoir une queue."

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 ""
"If [param enabled] is [code]true[/code], the end bone is extended to have a "
"tail.\n"
"If [param enabled] is [code]false[/code], [method get_reference_bone] becomes "
"a parent of the end bone and it uses the vector to the end bone as a twist "
"axis."
msgstr ""
"Si [param enabled] vaut [code]true[/code], l'os final est prolongé pour avoir "
"une queue.\n"
"Si [param enabled] vaut [code]false[/code], [method get_reference_bone] "
"devient un parent de l'os final et il utilise le vecteur à l'os final comme "
"axe de torsion."

msgid ""
"Sets the twist amount at [param joint] in the bone chain's joint list when "
"[method get_disperse_mode] is [constant DISPERSE_MODE_CUSTOM]."
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 get_disperse_mode] is [constant "
"DISPERSE_MODE_CUSTOM]."

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 "The number of settings."
msgstr "Le nombre de paramètres."

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 ""
"Autowrap space trimming flags. See [constant "
"TextServer.BREAK_TRIM_START_EDGE_SPACES] and [constant "
"TextServer.BREAK_TRIM_END_EDGE_SPACES] for more info."
msgstr ""
"Drapeaux de trimming des espaces en autowrap. Voir [constant "
"TextServer.BREAK_TRIM_START_EDGE_SPACES] et [constant "
"TextServer.BREAK_TRIM_END_EDGE_SPACES] pour plus d'informations."

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 "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 ""
"Additional vertical spacing between lines (in pixels), spacing is added to "
"line descent. This value can be negative."
msgstr ""
"Espacement vertical supplémentaire entre les lignes (en pixels), l'espacement "
"est ajouté à la descente de la ligne. Cette valeur peut être négative."

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 "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 this camera's target position, in global coordinates.\n"
"[b]Note:[/b] The returned value is not the same as [member "
"Node2D.global_position], as it is affected by the drag properties. It is also "
"not the same as the current position if [member position_smoothing_enabled] "
"is [code]true[/code] (see [method get_screen_center_position])."
msgstr ""
"Renvoie la position cible de cette caméra, dans les coordonnées globales.\n"
"[b]Note :[/b] La valeur renvoyée n'est pas la même que [member "
"Node2D.global_position], car elle est affectée par les propriétés de "
"glissage. Ce n'est aussi pas la même que la position actuelle si [member "
"position_smoothing_enabled] vaut [code]true[/code] (voir [method "
"get_screen_center_position])."

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 ""
"Bottom margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the bottom edge of the screen."
msgstr ""
"La marge inférieure nécessaire pour faire glisser la caméra. Une valeur de "
"[code]1[/code] fait que la caméra se déplace uniquement lorsqu'elle atteint "
"le bord inférieur de l'écran."

msgid ""
"If [code]true[/code], the camera only moves when reaching the horizontal "
"(left and right) drag margins. If [code]false[/code], the camera moves "
"horizontally regardless of margins."
msgstr ""
"Si [code]true[/code], la caméra ne bouge que lorsqu'elle atteint les marges "
"horizontales (droite et gauche) de glissage. Si [code]false[/code], la caméra "
"se déplace horizontalement indépendamment des marges."

msgid ""
"The relative horizontal drag offset of the camera between the right "
"([code]-1[/code]) and left ([code]1[/code]) drag margins.\n"
"[b]Note:[/b] Used to set the initial horizontal drag offset; determine the "
"current offset; or force the current offset. It's not automatically updated "
"when [member drag_horizontal_enabled] is [code]true[/code] or the drag "
"margins are changed."
msgstr ""
"Le décalage de glissage horizontal relatif de la caméra entre les marges de "
"glissage droite ([code]-1[/code]) et gauche ([code]1[/code]).\n"
"[b]Note :[/b] Utilisé pour régler le décalage initial du glissement "
"horizontal, déterminer le décalage actuel, ou forcer le décalage actuel. Il "
"n'est pas automatiquement mis à jour lorsque [member drag_horizontal_enabled] "
"vaut [code]true[/code] ou que les marges sont modifiées."

msgid ""
"Left margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the left edge of the screen."
msgstr ""
"Marge de gauche nécessaire pour faire glisser la caméra. Une valeur de "
"[code]1[/code] ne déplace la caméra que lorsqu'elle atteint le bord gauche de "
"l'écran."

msgid ""
"Right margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the right edge of the screen."
msgstr ""
"Marge de droite nécessaire pour faire glisser la caméra. Une valeur de "
"[code]1[/code] ne déplace la caméra que lorsqu'elle atteint le bord droit de "
"l'écran."

msgid ""
"Top margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the top edge of the screen."
msgstr ""
"Marge du haut nécessaire pour faire glisser la caméra. Une valeur de [code]1[/"
"code] ne déplace la caméra que lorsqu'elle atteint le bord du haut de l'écran."

msgid ""
"If [code]true[/code], the camera only moves when reaching the vertical (top "
"and bottom) drag margins. If [code]false[/code], the camera moves vertically "
"regardless of the drag margins."
msgstr ""
"Si [code]true[/code], la caméra ne bouge que lorsqu'elle atteint les marges "
"verticales (haut et bas) de glissage. Si [code]false[/code], la caméra se "
"déplace verticalement indépendamment des marges de glissage."

msgid ""
"The relative vertical drag offset of the camera between the bottom ([code]-1[/"
"code]) and top ([code]1[/code]) drag margins.\n"
"[b]Note:[/b] Used to set the initial vertical drag offset; determine the "
"current offset; or force the current offset. It's not automatically updated "
"when [member drag_vertical_enabled] is [code]true[/code] or the drag margins "
"are changed."
msgstr ""
"Le décalage de glissement vertical relatif de la caméra entre le bas "
"([code]-1[/code]) et le dessus ([code]1[/code])) des marges de glissement.\n"
"[b]Note :[/b] Utilisé pour régler le décalage initial du glissement vertical, "
"déterminer le décalage courant, ou forcer le décalage courant. Il n'est pas "
"automatiquement mis à jour lorsque [member drag_vertical_enabled] vaut "
"[code]true[/code] ou que les marges de glissement sont modifiées."

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 a normal vector from the screen point location directed along the "
"camera. Orthogonal cameras are normalized. Perspective cameras account for "
"perspective, screen width/height, etc."
msgstr ""
"Renvoie un vecteur normal à partir de l'emplacement du point d'écran, dirigé "
"le long de la caméra. Les caméras orthogonales sont normalisées. Les caméras "
"avec perspective prennent en compte la perspective, la largeur/hauteur "
"d'écran, etc..."

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 ""
"Based on [param value], enables or disables the specified layer in the "
"[member cull_mask], given a [param layer_number] between 1 and 20."
msgstr ""
"Selon [param value], active ou désactive la couche spécifiée dans le masque "
"de cull [member cull_mask], selon un [param layer_number] entre 1 et 20."

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 distance to the far culling boundary for this camera relative to its "
"local Z axis. Higher values allow the camera to see further away, while "
"decreasing [member far] can improve performance if it results in objects "
"being partially or fully culled."
msgstr ""
"La distance jusqu'au plan de coupe lointain pour cette caméra par rapport à "
"son axe Z local. Des valeurs plus élevées permettent à la caméra de voir plus "
"loin, et diminuer [member far] peut améliorer le performances si cela résulte "
"en des objets partiellement ou complètement coupés."

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 distance to the near culling boundary for this camera relative to its "
"local Z axis. Lower values allow the camera to see objects more up close to "
"its origin, at the cost of lower precision across the [i]entire[/i] range. "
"Values lower than the default can lead to increased Z-fighting."
msgstr ""
"La distance jusqu'au plan de coupe proche pour cette caméra par rapport à son "
"axe Z local. Des valeurs plus faibles permettent à la caméra de voir des "
"objets plus proche de son origine, au coût d'une précision plus faible sur sa "
"plage [i]entière[/i]. Des valeurs plus faibles que le défaut peut mener à une "
"augmentation du Z-fighting."

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.\n"
"[b]Note:[/b] Depth of field blur is not supported on viewports that have a "
"transparent background (where [member Viewport.transparent_bg] is [code]true[/"
"code])."
msgstr ""
"Active le flou de profondeur de champ pour les objets plus loin 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é.\n"
"[b]Note:[/b] La profondeur du flou de champ n'est pas supportée sur les "
"points de vue qui ont un fond transparent (où [member "
"Viewport.transparent_bg] est [code]true[/code])."

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.\n"
"[b]Note:[/b] Depth of field blur is not supported on viewports that have a "
"transparent background (where [member Viewport.transparent_bg] is [code]true[/"
"code])."
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 "
"moteurs de rendu Forward+ et Mobile, pas Compatibilité.\n"
"[b]Note :[/b] Le flou de profondeur de champ n'est pas supporté sur les "
"viewports qui ont un arrière-plan transparent (où [member "
"Viewport.transparent_bg] vaut [code]true[/code])."

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 "Sets Y and CbCr images for this feed."
msgstr "Définit les images Y et CbCr 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 ""
"If [code]true[/code], the server is actively monitoring available camera "
"feeds.\n"
"This has a performance cost, so only set it to [code]true[/code] when you're "
"actively accessing the camera.\n"
"[b]Note:[/b] After setting it to [code]true[/code], you can receive updated "
"camera feeds through the [signal camera_feeds_updated] signal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tCameraServer.camera_feeds_updated.connect(_on_camera_feeds_updated)\n"
"\tCameraServer.monitoring_feeds = true\n"
"\n"
"func _on_camera_feeds_updated():\n"
"\tvar feeds = CameraServer.feeds()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCameraServer.CameraFeedsUpdated += OnCameraFeedsUpdated;\n"
"\tCameraServer.MonitoringFeeds = true;\n"
"}\n"
"\n"
"void OnCameraFeedsUpdated()\n"
"{\n"
"\tvar feeds = CameraServer.Feeds();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Si défini à [code]true[/code], le serveur surveillera les flux de caméra "
"disponibles.\n"
"Cela vient avec un coût en performance, alors à définir à [code]true[/code] "
"si vous vous assurez d'accéder activement à la caméra.\n"
"[b]Remarque :[/b] Après définition à [code]true[/code], vous pouvez recevoir "
"les flux de caméra mis à jour depuis le signal [signal "
"camera_feeds_updated].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tCameraServer.camera_feeds_updated.connect(_on_camera_feeds_updated)\n"
"\tCameraServer.monitoring_feeds = true\n"
"\n"
"func _on_camera_feeds_updated():\n"
"\tvar feeds = CameraServer.feeds()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCameraServer.CameraFeedsUpdated += OnCameraFeedsUpdated;\n"
"\tCameraServer.MonitoringFeeds = true;\n"
"}\n"
"\n"
"void OnCameraFeedsUpdated()\n"
"{\n"
"\tvar feeds = CameraServer.Feeds();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 the margin used to expand the clearing rect of this "
"[CanvasGroup]. This expands the area of the backbuffer that will be used by "
"the [CanvasGroup]. A smaller margin will reduce the area of the backbuffer "
"used which can increase performance, however if [member use_mipmaps] is "
"enabled, a small margin may result in mipmap errors at the edge of the "
"[CanvasGroup]. Accordingly, this should be left as small as possible, but "
"should be increased if artifacts appear along the edges of the canvas group."
msgstr ""
"Définit la taille de la marge utilisée pour élargir le rectangle d’effacement "
"de ce [CanvasGroup]. Cela étend l'aire du tampon arrière qui sera utilisée "
"par le [CanvasGroup]. Une marge plus basse réduira l'aire du tampon arrière "
"utilisée qui peut améliorer la performance, cependant si [member use_mipmaps] "
"est activé, une marge basse causera des erreurs de mipmap aux extrémités du "
"[CanvasGroup]. De ce fait, la valeur doit rester aussi basse que possible, "
"mais peut être rehaussée si des artefacts sont visibles aux extrémités du "
"groupe."

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 ""
"Called when [CanvasItem] has been requested to redraw (after [method "
"queue_redraw] is called, either manually or by the engine).\n"
"Corresponds to the [constant NOTIFICATION_DRAW] notification in [method "
"Object._notification]."
msgstr ""
"Appelée lorsque le [CanvasItem] a été demandé de redessiner (après que "
"[method queue_redraw] soit appelée, manuellement ou par le moteur).\n"
"Correspond à la notification [constant NOTIFICATION_DRAW] dans [method "
"Object._notification]."

msgid ""
"Subsequent drawing commands will be ignored unless they fall within the "
"specified animation slice. This is a faster way to implement animations that "
"loop on background rather than redrawing constantly."
msgstr ""
"Les commandes de dessin qui suivent seront ignorées sauf si elles tombent "
"dans la tranche d'animation spécifiée. C'est une manière plus rapide "
"d'implémenter des animations qui bouclent en arrière-plan au lieu de devoir "
"constamment redessiner."

msgid ""
"Draws a string first character using a custom font. If [param oversampling] "
"is greater than zero, it is used as font oversampling factor, otherwise "
"viewport oversampling settings are used. [param pos] is defined in local "
"space."
msgstr ""
"Dessine le premier caractère d'une chaîne de caractères en utilisant une "
"police personnalisée. Si [param oversampling] est supérieur à zéro, il est "
"utilisé comme facteur de sur-échantillonnage de la police, sinon les "
"paramètres de sur-échantillonnage du viewport sont utilisés. [param pos] est "
"défini dans l'espace local."

msgid ""
"Draws a string first character outline using a custom font. If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used. [param pos] is defined in "
"local space."
msgstr ""
"Dessine le contour du premier caractère d'une chaîne en utilisant une police "
"personnalisée. Si [param oversampling] est supérieur à zéro, il est utilisé "
"comme facteur de sur-échantillonnage de la police, sinon les paramètres de "
"sur-échantillonnage du viewport sont utilisés. [param pos] est défini dans "
"l'espace local."

msgid ""
"Draws a colored polygon of any number of points, convex or concave. The "
"points in the [param points] array are defined in local space. Unlike [method "
"draw_polygon], a single color must be specified for the whole polygon.\n"
"[b]Note:[/b] If you frequently redraw the same polygon with a large number of "
"vertices, consider pre-calculating the triangulation with [method "
"Geometry2D.triangulate_polygon] and using [method draw_mesh], [method "
"draw_multimesh], or [method RenderingServer.canvas_item_add_triangle_array].\n"
"[b]Note:[/b] Styleboxes, textures, and meshes stored only inside local "
"variables should [b]not[/b] be used with this method in GDScript, because the "
"drawing operation doesn't begin immediately once this method is called. In "
"GDScript, when the function with the local variables ends, the local "
"variables get destroyed before the rendering takes place."
msgstr ""
"Dessine un polygone coloré à n'importe quel nombre de points, convexe ou "
"concave. Les points dans le tableau [param points] sont définis en espace "
"local. Unlike [method draw_polygon], a single color must be specified for the "
"whole polygon.\n"
"[b]Note:[/b] Si un polygone avec un nombre considérable de sommets est "
"fréquemment redessiné, il serait conseillé de pré-calculer la triangulation "
"avec [method Geometry2D.triangulate_polygon] et utiliser la méthode [method "
"draw_mesh], [method draw_multimesh], ou [method "
"RenderingServer.canvas_item_add_triangle_array].\n"
"[b]Note:[/b] Les boîtes de styles, les textures et les mailles stockées "
"uniquement dans les variables locales ne devraient [b]pas[/b] être utilisées "
"avec cette méthode dans GDScript, parce que l'opération de dessin ne commence "
"pas immédiatement une fois cette méthode appelée. Dans GDScript, lorsque la "
"fonction avec les variables locales se termine, les variables locales sont "
"détruites avant le rendu."

msgid ""
"Draws a dashed line from a 2D point to another, with a given color and width. "
"The [param from] and [param to] positions are defined in local space. See "
"also [method draw_line], [method draw_multiline], and [method "
"draw_polyline].\n"
"If [param width] is negative, then a two-point primitives will be drawn "
"instead of a four-point ones. This means that when the CanvasItem is scaled, "
"the line parts will remain thin. If this behavior is not desired, then pass a "
"positive [param width] like [code]1.0[/code].\n"
"[param dash] is the length of each dash in pixels, with the gap between each "
"dash being the same length. If [param aligned] is [code]true[/code], the "
"length of the first and last dashes may be shortened or lengthened to allow "
"the line to begin and end at the precise points defined by [param from] and "
"[param to]. Both ends are always symmetrical when [param aligned] is "
"[code]true[/code]. If [param aligned] is [code]false[/code], all dashes will "
"have the same length, but the line may appear incomplete at the end due to "
"the dash length not dividing evenly into the line length. Only full dashes "
"are drawn when [param aligned] is [code]false[/code].\n"
"If [param antialiased] is [code]true[/code], half transparent \"feathers\" "
"will be attached to the boundary, making outlines smooth.\n"
"[b]Note:[/b] [param antialiased] is only effective if [param width] is "
"greater than [code]0.0[/code]."
msgstr ""
"Dessine une ligne en tirets d'un point 2D à un autre, avec une couleur et une "
"largeur données. Les positions [param from] et [param to] sont définies dans "
"l'espace local. Voir aussi [method draw_line], [method draw_multiline], et "
"[method draw_polyline].\n"
"Si [param width] est négative, alors des primitives à deux points seront "
"dessinées au lieu de celles à 4 points. Cela signifie que lorsque le "
"CanvasItem est redimensionné, les lignes resteront fines. Si ce comportement "
"n'est pas souhaité, passez une largeur [param width] positive comme "
"[code]1.0[/code].\n"
"[param dash] est la longueur de chaque tiret en pixels, avec l'écart entre "
"chaque tiret étant la même longueur. Si [param aligned] vaut [code]true[/"
"code], la longueur des premier et dernier tirets peut être raccourcie ou "
"allongée pour permettre à la ligne de commencer et de se terminer aux points "
"précis définis par [param from] et [param to]. Les deux extrémités sont "
"toujours symétriques lorsque [param aligned] vaut [code]true[/code]. Si "
"[param aligned] vaut [code]false[/code], tous les tirets auront la même "
"longueur, mais la ligne peut apparaître incomplète à la fin à cause de la "
"longueur du tiret qui ne divise pas parfaitement la longueur de la ligne. "
"Seules les tirets complets sont dessinés lorsque [param aligned] vaut "
"[code]false[/code].\n"
"Si [param antialiased] vaut [code]true[/code], des « gaines » à moitié "
"transparentes seront attachées aux bords, rendant les contours lisses.\n"
"[b]Note :[/b] [param antialiased] est seulement effectif si [param width] est "
"supérieure à [code]0.0[/code]."

msgid ""
"After submitting all animations slices via [method draw_animation_slice], "
"this function can be used to revert drawing to its default state (all "
"subsequent drawing commands will be visible). If you don't care about this "
"particular use case, usage of this function after submitting the slices is "
"not required."
msgstr ""
"Après l'envoi de toutes les tranches d'animations via [method "
"draw_animation_slice], cette fonction peut être utilisée pour restaurer le "
"dessin à l'état par défaut (toutes les commandes de dessin qui suivent seront "
"visibles). Si ce cas d'utilisation particulier peut être négligé, "
"l'utilisation de cette fonction après l'envoi des tranches n'est pas requis."

msgid ""
"Draws a textured rectangle region of the font texture with LCD subpixel anti-"
"aliasing at a given position, optionally modulated by a color. The [param "
"rect] is defined in local space.\n"
"Texture is drawn using the following blend operation, blend mode of the "
"[CanvasItemMaterial] is ignored:\n"
"[codeblock]\n"
"dst.r = texture.r * modulate.r * modulate.a + dst.r * (1.0 - texture.r * "
"modulate.a);\n"
"dst.g = texture.g * modulate.g * modulate.a + dst.g * (1.0 - texture.g * "
"modulate.a);\n"
"dst.b = texture.b * modulate.b * modulate.a + dst.b * (1.0 - texture.b * "
"modulate.a);\n"
"dst.a = modulate.a + dst.a * (1.0 - modulate.a);\n"
"[/codeblock]\n"
"[b]Note:[/b] Styleboxes, textures, and meshes stored only inside local "
"variables should [b]not[/b] be used with this method in GDScript, because the "
"drawing operation doesn't begin immediately once this method is called. In "
"GDScript, when the function with the local variables ends, the local "
"variables get destroyed before the rendering takes place."
msgstr ""
"Dessine un rectangle texturé de la texture de la police avec anticrénelage "
"des sous-pixels LCD à une position donnée, éventuellement modulé par une "
"couleur. Le paramètre [param rect] est défini dans l'espace local.\n"
"La texture est dessinée à l'aide de l'opération de fusion suivante ; le mode "
"de fusion de [CanvasItemMaterial] est ignoré :\n"
"[codeblock]\n"
"dst.r = texture.r * modulate.r * modulate.a + dst.r * (1.0 - texture.r * "
"modulate.a);\n"
"dst.g = texture.g * modulate.g * modulate.a + dst.g * (1.0 - texture.g * "
"modulate.a);\n"
"dst.b = texture.b * modulate.b * modulate.a + dst.b * (1.0 - texture.b * "
"modulate.a);\n"
"dst.a = modulate.a + dst.a * (1.0 - modulate.a);\n"
"[/codeblock]\n"
"[b]Note:[/b] Les boîtes de styles, les textures et les maillages stockées "
"uniquement dans les variables locales ne devraient [b]pas[/b] être utilisées "
"avec cette méthode dans GDScript, parce que l'opération de dessin ne commence "
"pas immédiatement une fois cette méthode appelée. Dans GDScript, lorsque la "
"fonction avec les variables locales se termine, les variables locales sont "
"détruites avant le rendu."

msgid ""
"Draws a line from a 2D point to another, with a given color and width. It can "
"be optionally antialiased. The [param from] and [param to] positions are "
"defined in local space. See also [method draw_dashed_line], [method "
"draw_multiline], and [method draw_polyline].\n"
"If [param width] is negative, then a two-point primitive will be drawn "
"instead of a four-point one. This means that when the CanvasItem is scaled, "
"the line will remain thin. If this behavior is not desired, then pass a "
"positive [param width] like [code]1.0[/code]."
msgstr ""
"Dessine une ligne d'un point 2D à un autre, avec une couleur et une largeur "
"données. Elle peut être en option anti-crénelée. Les positions [param from] "
"et [param to] sont définies dans l'espace local. Voir aussi [method "
"draw_dashed_line], [method draw_multiline], et [method draw_polyline].\n"
"Si [param width] est négative, alors des primitives à deux points seront "
"dessinées au lieu de celles à 4 points. Cela signifie que lorsque le "
"CanvasItem est redimensionné, les lignes resteront fines. Si ce comportement "
"n'est pas souhaité, passez une largeur [param width] positive comme "
"[code]1.0[/code]."

msgid ""
"Draws a textured rectangle region of the multichannel signed distance field "
"texture at a given position, optionally modulated by a color. The [param "
"rect] is defined in local space. See [member "
"FontFile.multichannel_signed_distance_field] for more information and caveats "
"about MSDF font rendering.\n"
"If [param outline] is positive, each alpha channel value of pixel in region "
"is set to maximum value of true distance in the [param outline] radius.\n"
"Value of the [param pixel_range] should the same that was used during "
"distance field texture generation.\n"
"[b]Note:[/b] Styleboxes, textures, and meshes stored only inside local "
"variables should [b]not[/b] be used with this method in GDScript, because the "
"drawing operation doesn't begin immediately once this method is called. In "
"GDScript, when the function with the local variables ends, the local "
"variables get destroyed before the rendering takes place."
msgstr ""
"Dessine une région rectangulaire texturée de la texture du champ de distance "
"signé multicanal à une position donnée, avec modulation optionnelle par une "
"couleur. Le [param rect] est défini en espace local. Voir [member "
"FontFile.multichannel_signed_distance_field] pour plus d'informations et "
"d'avertissements sur le rendu de police en CDSM.\n"
"Si la valeur [param outline] est positive, chaque valeur de canal alpha d'un "
"pixel dans la région est affectée a la valeur maximale de la distance réelle "
"dans le rayon [param outline].\n"
"La valeur de [param pixel_range] doit être la même que celle qui a été "
"utilisée pour la génération de la texture de distance signées.\n"
"[b]Note:[/b] Les boîtes de styles, les textures et les mailles stockées "
"uniquement dans les variables locales ne devraient [b]pas[/b] être utilisées "
"avec cette méthode dans GDScript, parce que l'opération de dessin ne commence "
"pas immédiatement une fois cette méthode appelée. Dans GDScript, lorsque la "
"fonction avec les variables locales se termine, les variables locales sont "
"détruites avant le rendu."

msgid ""
"Draws multiple disconnected lines with a uniform [param width] and [param "
"color]. Each line is defined by two consecutive points from [param points] "
"array in local space, i.e. i-th segment consists of [code]points[2 * i][/"
"code], [code]points[2 * i + 1][/code] endpoints. When drawing large amounts "
"of lines, this is faster than using individual [method draw_line] calls. To "
"draw interconnected lines, use [method draw_polyline] instead.\n"
"If [param width] is negative, then two-point primitives will be drawn instead "
"of a four-point ones. This means that when the CanvasItem is scaled, the "
"lines will remain thin. If this behavior is not desired, then pass a positive "
"[param width] like [code]1.0[/code].\n"
"[b]Note:[/b] [param antialiased] is only effective if [param width] is "
"greater than [code]0.0[/code]."
msgstr ""
"Dessine des lignes déconnectées avec une largueur [param width] et une "
"couleur [param color] uniformes. Chaque ligne est définie par deux points "
"consécutifs du tableau [param points], c.à.d. le i-ème segment est formé des "
"points [code]points[2 * i][/code] et [code]points[2 * i + 1][/code]. Lorsque "
"vous dessinez de grandes quantités de lignes, ceci est plus rapide que "
"d'utiliser des appels individuels à [method draw_line]. Pour tracer des "
"lignes interconnectées, utilisez [method draw_polyline] à la place.\n"
"Si [param width] est négative, alors des primitives à deux points seront "
"dessinées au lieu de celles à 4 points. Cela signifie que lorsque le "
"CanvasItem est redimensionné, les lignes resteront fines. Si ce comportement "
"n'est pas souhaité, passez une largeur [param width] positive comme "
"[code]1.0[/code].\n"
"[b]Note :[/b] [param antialiased] n'est effectif que si [param width] est "
"supérieur à [code]0.0[/code]."

msgid ""
"Draws multiple disconnected lines with a uniform [param width] and segment-by-"
"segment coloring. Each segment is defined by two consecutive points from "
"[param points] array in local space and a corresponding color from [param "
"colors] array, i.e. i-th segment consists of [code]points[2 * i][/code], "
"[code]points[2 * i + 1][/code] endpoints and has [code]colors[i][/code] "
"color. When drawing large amounts of lines, this is faster than using "
"individual [method draw_line] calls. To draw interconnected lines, use "
"[method draw_polyline_colors] instead.\n"
"If [param width] is negative, then two-point primitives will be drawn instead "
"of a four-point ones. This means that when the CanvasItem is scaled, the "
"lines will remain thin. If this behavior is not desired, then pass a positive "
"[param width] like [code]1.0[/code].\n"
"[b]Note:[/b] [param antialiased] is only effective if [param width] is "
"greater than [code]0.0[/code]."
msgstr ""
"Dessine des lignes déconnectées avec une largeur [param width] uniforme et "
"une coloration segment par segment. Chaque ligne est définie par deux points "
"consécutifs du tableau [param points] et une couleur correspondante du "
"tableau [param colors], c.à.d. le i-ème segment est formé des points "
"[code]points[2 * i][/code] et [code]points[2 * i + 1][/code] et a comme "
"couleur [code]colors[i][/code]. Lorsque vous dessinez de grandes quantités de "
"lignes, ceci est plus rapide que d'utiliser des appels individuels à [method "
"draw_line]. Pour tracer des lignes interconnectées, utilisez [method "
"draw_polyline_colors] à la place.\n"
"Si [param width] est négative, alors des primitives à deux points seront "
"dessinées au lieu de celles à 4 points. Cela signifie que lorsque le "
"CanvasItem est redimensionné, les lignes resteront fines. Si ce comportement "
"n'est pas souhaité, passez une largeur [param width] positive comme "
"[code]1.0[/code].\n"
"[b]Note :[/b] [param antialiased] n'est effectif que si [param width] est "
"supérieur à [code]0.0[/code]."

msgid ""
"Breaks [param text] into lines and draws it using the specified [param font] "
"at the [param pos] in local space (top-left corner). The text will have its "
"color multiplied by [param modulate]. If [param width] is greater than or "
"equal to 0, the text will be clipped if it exceeds the specified width. If "
"[param oversampling] is greater than zero, it is used as font oversampling "
"factor, otherwise viewport oversampling settings are used."
msgstr ""
"Sépare [param text] en lignes et le dessine avec la police [param font] "
"spécifiée à la position [param pos] en espace local (coin supérieur gauche). "
"La couleur du texte sera multipliée par [param modulate]. Si [param width] "
"est supérieur ou égal à 0, le texte sera tronqué s'il dépasse la largeur "
"spécifiée. Si le paramètre [param oversampling] est supérieur à 0, il est "
"utilisé comme facteur de sur-échantillonnage, sinon les paramètres de sur-"
"échantillonnage de la fenêtre d'affichage sont utilisés."

msgid ""
"Breaks [param text] to the lines and draws text outline using the specified "
"[param font] at the [param pos] in local space (top-left corner). The text "
"will have its color multiplied by [param modulate]. If [param width] is "
"greater than or equal to 0, the text will be clipped if it exceeds the "
"specified width. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used."
msgstr ""
"Sépare [param text] en lignes et dessine le contour du texte avec la police "
"[param font] spécifiée à la position [param pos] dans l'espace local (coin "
"supérieur gauche). La couleur du texte sera multipliée par [param modulate]. "
"Si [param width] est supérieure ou égale à 0, le texte sera coupé s'il "
"dépasse la largeur spécifiée. Si [param oversampling] est supérieur à 0, il "
"est utilisé comme facteur de sur-échantillonnage de la police, sinon les "
"paramètres de sur-échantillonnage du viewport sont utilisés."

msgid ""
"Draws a solid polygon of any number of points, convex or concave. Unlike "
"[method draw_colored_polygon], each point's color can be changed "
"individually. The [param points] array is defined in local space. See also "
"[method draw_polyline] and [method draw_polyline_colors]. If you need more "
"flexibility (such as being able to use bones), use [method "
"RenderingServer.canvas_item_add_triangle_array] instead.\n"
"[b]Note:[/b] If you frequently redraw the same polygon with a large number of "
"vertices, consider pre-calculating the triangulation with [method "
"Geometry2D.triangulate_polygon] and using [method draw_mesh], [method "
"draw_multimesh], or [method RenderingServer.canvas_item_add_triangle_array].\n"
"[b]Note:[/b] Styleboxes, textures, and meshes stored only inside local "
"variables should [b]not[/b] be used with this method in GDScript, because the "
"drawing operation doesn't begin immediately once this method is called. In "
"GDScript, when the function with the local variables ends, the local "
"variables get destroyed before the rendering takes place."
msgstr ""
"Dessine un polygone rempli avec un nombre quelconque de points, qu’il soit "
"convexe ou concave. Contrairement à [method draw_colored_polygon], la couleur "
"de chaque point peut être modifiée individuellement. Le tableau [param "
"points] est défini dans l’espace local. Voir également [method draw_polyline] "
"et [method draw_polyline_colors]. Si vous avez besoin de plus de flexibilité "
"(par exemple pour utiliser des os), utilisez plutôt [method "
"RenderingServer.canvas_item_add_triangle_array].\n"
"[b]Note:[/b] Si un polygone avec un nombre considérable de sommets est "
"fréquemment redessiné, il serait conseillé de pré-calculer la triangulation "
"avec [method Geometry2D.triangulate_polygon] et utiliser la méthode [method "
"draw_mesh], [method draw_multimesh], ou [method "
"RenderingServer.canvas_item_add_triangle_array].\n"
"[b]Note:[/b] Les boîtes de styles, les textures et les mailles stockées "
"uniquement dans les variables locales ne devraient [b]pas[/b] être utilisées "
"avec cette méthode dans GDScript, parce que l'opération de dessin ne commence "
"pas immédiatement une fois cette méthode appelée. Dans GDScript, lorsque la "
"fonction avec les variables locales se termine, les variables locales sont "
"détruites avant le rendu."

msgid ""
"Draws interconnected line segments with a uniform [param color] and [param "
"width] and optional antialiasing (supported only for positive [param width]). "
"The [param points] array is defined in local space. When drawing large "
"amounts of lines, this is faster than using individual [method draw_line] "
"calls. To draw disconnected lines, use [method draw_multiline] instead. See "
"also [method draw_polygon].\n"
"If [param width] is negative, it will be ignored and the polyline will be "
"drawn using [constant RenderingServer.PRIMITIVE_LINE_STRIP]. This means that "
"when the CanvasItem is scaled, the polyline will remain thin. If this "
"behavior is not desired, then pass a positive [param width] like [code]1.0[/"
"code]."
msgstr ""
"Dessine des segments interconnectés d'une couleur [param color] et d'une "
"épaisseur [param width] uniforme avec un anticrénelage facultatif (supporté "
"seulement pour une [param width] positive). Le tableau [param points] est "
"défini dans l'espace local. Si vous dessinez de grandes quantités de lignes, "
"ceci est plus rapide que d'appeler [method draw_line] individuellement. Pour "
"dessiner des lignes déconnectées, utilisez plutôt [method draw_multiline]. "
"Voir aussi [method draw_polygon].\n"
"Si [param width] est négative, elle sera ignorée et la polyligne sera "
"dessinée en utilisant [constant RenderingServer.PRIMITIVE_LINE_STRIP]. Cela "
"signifie que lorsque le CanvasItem est redimensionné, la polyligne restera "
"fine. Si ce comportement n'est pas souhaité, passez une [param width] "
"positive comme [code]1.0[/code]."

msgid ""
"Draws interconnected line segments with a uniform [param width], point-by-"
"point coloring, and optional antialiasing (supported only for positive [param "
"width]). Colors assigned to line points match by index between [param points] "
"and [param colors], i.e. each line segment is filled with a gradient between "
"the colors of the endpoints. The [param points] array is defined in local "
"space. When drawing large amounts of lines, this is faster than using "
"individual [method draw_line] calls. To draw disconnected lines, use [method "
"draw_multiline_colors] instead. See also [method draw_polygon].\n"
"If [param width] is negative, it will be ignored and the polyline will be "
"drawn using [constant RenderingServer.PRIMITIVE_LINE_STRIP]. This means that "
"when the CanvasItem is scaled, the polyline will remain thin. If this "
"behavior is not desired, then pass a positive [param width] like [code]1.0[/"
"code]."
msgstr ""
"Dessine des segments de ligne interconnectés avec une largeur [param width] "
"uniforme, une coloration point par point, et un anti-crénelage optionnel "
"(supporté seulement pour une [param width] positive). Les couleurs assignées "
"aux points de la ligne correspondent par index entre [param points] et [param "
"colors], c'est-à-dire chaque segment de ligne est rempli avec le gradient se "
"trouvant entre les couleurs des points de début et de fin. Le tableau [param "
"points] est défini dans l'espace local. Lorsque vous dessinez de grandes "
"quantités de lignes, ceci est plus rapide que d'utiliser des appels "
"individuels à [method draw_line]. Pour dessiner des lignes déconnectées, "
"utilisez plutôt [method draw_multiline_colors]. Voir aussi [method "
"draw_polygon].\n"
"Si [param width] est négative, elle sera ignorée et la polyligne sera "
"dessinée en utilisant [constant RenderingServer.PRIMITIVE_LINE_STRIP]. Cela "
"signifie que lorsque le CanvasItem est redimensionné, la polyligne restera "
"fine. Si ce comportement n'est pas souhaité, passez une [param width] "
"positive comme [code]1.0[/code]."

msgid ""
"Draws a custom primitive. 1 point for a point, 2 points for a line, 3 points "
"for a triangle, and 4 points for a quad. If 0 points or more than 4 points "
"are specified, nothing will be drawn and an error message will be printed. "
"The [param points] array is defined in local space. See also [method "
"draw_line], [method draw_polyline], [method draw_polygon], and [method "
"draw_rect].\n"
"[b]Note:[/b] Styleboxes, textures, and meshes stored only inside local "
"variables should [b]not[/b] be used with this method in GDScript, because the "
"drawing operation doesn't begin immediately once this method is called. In "
"GDScript, when the function with the local variables ends, the local "
"variables get destroyed before the rendering takes place."
msgstr ""
"Dessine une primitive personnalisée. 1 point pour dessiner un point, 2 points "
"pour une ligne, 3 points pour un triangle, et 4 points pour un quad. Si 0 "
"points ou plus de 4 points sont spécifiés, rien ne sera dessiné et un message "
"d'erreur sera affiché. Voir aussi [method draw_line], [method draw_polyline], "
"[method draw_polygon], et [method draw_rect].\n"
"[b]Note:[/b] Les boîtes de styles, les textures et les mailles stockées "
"uniquement dans les variables locales ne devraient [b]pas[/b] être utilisées "
"avec cette méthode dans GDScript, parce que l'opération de dessin ne commence "
"pas immédiatement une fois cette méthode appelée. Dans GDScript, lorsque la "
"fonction avec les variables locales se termine, les variables locales sont "
"détruites avant le rendu."

msgid ""
"Draws a rectangle. If [param filled] is [code]true[/code], the rectangle will "
"be filled with the [param color] specified. If [param filled] is [code]false[/"
"code], the rectangle will be drawn as a stroke with the [param color] and "
"[param width] specified. The [param rect] is specified in local space. See "
"also [method draw_texture_rect].\n"
"If [param width] is negative, then two-point primitives will be drawn instead "
"of a four-point ones. This means that when the CanvasItem is scaled, the "
"lines will remain thin. If this behavior is not desired, then pass a positive "
"[param width] like [code]1.0[/code].\n"
"If [param antialiased] is [code]true[/code], half transparent \"feathers\" "
"will be attached to the boundary, making outlines smooth.\n"
"[b]Note:[/b] [param width] is only effective if [param filled] is "
"[code]false[/code].\n"
"[b]Note:[/b] Unfilled rectangles drawn with a negative [param width] may not "
"display perfectly. For example, corners may be missing or brighter due to "
"overlapping lines (for a translucent [param color])."
msgstr ""
"Dessine un rectangle. Si [param filled] vaut [code]true[/code], le rectangle "
"sera rempli avec la couleur [param color] spécifiée. Si [param filled] vaut "
"[code]false[/code], le rectangle sera dessiné en tant que trait avec la "
"[param color] et la largeur [param width] spécifiées. Le [param rect] est "
"spécifié dans l'espace local. Voir aussi [method draw_texture_rect].\n"
"Si [param width] est négative, alors des primitives à deux points seront "
"dessinées au lieu de celles à 4 points. Cela signifie que lorsque le "
"CanvasItem est redimensionné, les lignes resteront fines. Si ce comportement "
"n'est pas souhaité, passez une largeur [param width] positive comme "
"[code]1.0[/code].\n"
"Si [param antialiased] vaut [code]true[/code], des « gaines » à moitié "
"transparentes seront attachées aux bords, rendant les contours lisses.\n"
"[b]Note :[/b] [param width] est seulement effectif si [param filled] vaut "
"[code]false[/code].\n"
"[b]Note :[/b] Les rectangles non remplis dessinés avec une [param width] "
"négative peuvent ne pas s'afficher parfaitement. Par exemple, des coins "
"peuvent être manquants ou plus lumineux en raison de lignes se chevauchant "
"(pour une [param color] translucide)."

msgid ""
"Sets a custom local transform for drawing via components. Anything drawn "
"afterwards will be transformed by this.\n"
"[b]Note:[/b] [member FontFile.oversampling] does [i]not[/i] take [param "
"scale] into account. This means that scaling up/down will cause bitmap fonts "
"and rasterized (non-MSDF) dynamic fonts to appear blurry or pixelated. To "
"ensure text remains crisp regardless of scale, 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 ""
"Définit une transformation locale personnalisée pour le dessin par des "
"composants. Tout ce qui a été dessiné par la suite sera transformé par cela.\n"
"[b]Note :[/b] [member FontFile.oversampling] ne prend [i]pas[/i] [param "
"scale] en compte. Cela signifie que l'agrandissement/le rétrécissement va "
"causer aux polices bitmap et aux polices dynamiques rasterisées (non-MSDF) "
"d'apparaître floues ou pixelisées. Pour garantir que le texte reste net "
"indépendamment de l'échelle, vous pouvez activer le rendu de police MSDF 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'import d'une DynamicFont pour les polices "
"personnalisées. Sur les polices du système, [member "
"SystemFont.multichannel_signed_distance_field] peut être activé dans "
"l'inspecteur."

msgid ""
"Sets a custom local transform for drawing via matrix. Anything drawn "
"afterwards will be transformed by this."
msgstr ""
"Définit une transformation personnalisée pour le dessin via la matrice. Tout "
"ce qui sera dessiné par la suite sera transformé par cela."

msgid ""
"Draws [param text] outline using the specified [param font] at the [param "
"pos] in local space (bottom-left corner using the baseline of the font). The "
"text will have its color multiplied by [param modulate]. If [param width] is "
"greater than or equal to 0, the text will be clipped if it exceeds the "
"specified width. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used."
msgstr ""
"Dessine le contour du [param text] en utilisant la police [param font] "
"spécifiée à la position [param pos] dans l'espace local (coin en bas à gauche "
"en utilisant la ligne de base de la police). Le texte aura sa couleur "
"multipliée par [param modulate]. Si [param width] est supérieure ou égale à "
"0, le texte sera coupé s'il dépasse la largeur spécifiée. Si [param "
"oversampling] est supérieur à zéro, il est utilisé comme facteur de sur-"
"échantillonnage de la police, sinon les paramètres de sur-échantillonnage du "
"viewport sont utilisés."

msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. The [param rect] is defined in local space. If [param transpose] is "
"[code]true[/code], the texture will have its X and Y coordinates swapped. See "
"also [method draw_rect] and [method draw_texture_rect_region].\n"
"[b]Note:[/b] Styleboxes, textures, and meshes stored only inside local "
"variables should [b]not[/b] be used with this method in GDScript, because the "
"drawing operation doesn't begin immediately once this method is called. In "
"GDScript, when the function with the local variables ends, the local "
"variables get destroyed before the rendering takes place."
msgstr ""
"Dessine un rectangle texturé à une position donnée, possiblement modulé par "
"une couleur. Le [param rect] est défini dans l'espace local. Si [param "
"transpose] vaut [code]true[/code], la texture aura ses coordonnées X et Y "
"échangées. Voir aussi [method draw_rect] et [method "
"draw_texture_rect_region].\n"
"[b]Note:[/b] Les boîtes de styles, les textures et les mailles stockées "
"uniquement dans les variables locales ne devraient [b]pas[/b] être utilisées "
"avec cette méthode dans GDScript, parce que l'opération de dessin ne commence "
"pas immédiatement une fois cette méthode appelée. Dans GDScript, lorsque la "
"fonction avec les variables locales se termine, les variables locales sont "
"détruites avant le rendu."

msgid ""
"Draws a textured rectangle from a texture's region (specified by [param "
"src_rect]) at a given position in local space, optionally modulated by a "
"color. If [param transpose] is [code]true[/code], the texture will have its X "
"and Y coordinates swapped. See also [method draw_texture_rect].\n"
"[b]Note:[/b] Styleboxes, textures, and meshes stored only inside local "
"variables should [b]not[/b] be used with this method in GDScript, because the "
"drawing operation doesn't begin immediately once this method is called. In "
"GDScript, when the function with the local variables ends, the local "
"variables get destroyed before the rendering takes place."
msgstr ""
"Dessine un rectangle texturé depuis une région d'une texture (précisé par "
"[param src_rect]) à une position donnée dans l'espace local, possiblement "
"modulé par une couleur. Si [param transpose] vaut [code]true[/code], la "
"texture aura ses coordonnées X et Y échangées. Voir aussi [method "
"draw_texture_rect].\n"
"[b]Note:[/b] Les boîtes de styles, les textures et les mailles stockées "
"uniquement dans les variables locales ne devraient [b]pas[/b] être utilisées "
"avec cette méthode dans GDScript, parce que l'opération de dessin ne commence "
"pas immédiatement une fois cette méthode appelée. Dans GDScript, lorsque la "
"fonction avec les variables locales se termine, les variables locales sont "
"détruites avant le rendu."

msgid ""
"Forces the node's transform to update. Fails if the node is not inside the "
"tree. See also [method get_transform].\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 [CanvasItem] children, as well. Therefore, use this method "
"only when you need an up-to-date transform (such as during physics "
"operations)."
msgstr ""
"Force la mise à jour de la transformation du nœud. Échoue si le nœud n'est "
"pas dans l'arborescence. Voir aussi [method get_transform].\n"
"[b]Remarque :[/b] Pour des raisons de performances, les modifications de "
"transformation sont généralement cumulées et appliquées [i]en une fois[/i] à "
"la fin de la trame. La mise à jour se propage également aux [CanvasItem] "
"enfants. Par conséquent, utilisez cette méthode uniquement lorsque vous avez "
"besoin d'une transformation à jour (par exemple, lors d'opérations de "
"physique)."

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 ""
"Returns the transform from the local coordinate system of this [CanvasItem] "
"to the [Viewport]s coordinate system."
msgstr ""
"Renvoie la transformation du système de coordonnées local de ce [CanvasItem] "
"vers le système de coordonnées du [Viewport]."

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 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 ""
"Returns the transform of this node, converted from its registered canvas's "
"coordinate system to its viewport embedder's coordinate system. See also "
"[method Viewport.get_final_transform] and [method Node.get_viewport]."
msgstr ""
"Renvoie la transformation de ce nœud, convertie du système de coordonnées de "
"son canevas enregistré à son système de coordonnées du viewport intégrant. "
"Voir aussi [method Viewport.get_final_transform] et [method "
"Node.get_viewport]."

msgid ""
"Returns [code]true[/code] if the layer at the given index is set in [member "
"visibility_layer]."
msgstr ""
"Renvoie [code]true[/code] si l'élément à l'index donné est défini dans "
"[member visibility_layer]."

msgid ""
"Returns the [World2D] this node is registered to.\n"
"Usually, this is the same as this node's viewport (see [method "
"Node.get_viewport] and [method Viewport.find_world_2d])."
msgstr ""
"Renvoie le [World2D] auquel ce nœud est enregistré.\n"
"En général, il s'agit du même que celui du viewport de ce nœud (voir [method "
"Node.get_viewport] et [method Viewport.find_world_2d])."

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 receives [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever its local 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 sa transformation "
"locale change. Ceci est activé avec [method set_notify_local_transform]."

msgid ""
"Returns [code]true[/code] if the node receives [constant "
"NOTIFICATION_TRANSFORM_CHANGED] whenever its 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 sa transformation globale "
"change. Ceci est activé avec [method set_notify_transform]."

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 ""
"Transforms [param viewport_point] from the viewport's coordinates to this "
"node's local coordinates.\n"
"For the opposite operation, use [method get_global_transform_with_canvas].\n"
"[codeblock]\n"
"var viewport_point = get_global_transform_with_canvas() * local_point\n"
"[/codeblock]"
msgstr ""
"Transforme [param viewport_point] des coordonnées de la fenêtre d'affichage "
"aux coordonnées locales de ce nœud.\n"
"Pour l'opération inverse, utilisez [method "
"get_global_transform_with_canvas].\n"
"[codeblock]\n"
"var viewport_point = get_global_transform_with_canvas() * local_point\n"
"[/codeblock]"

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 ""
"Moves this node below its siblings, usually causing the node to draw on top "
"of its siblings. Does nothing if this node does not have a parent. See also "
"[method Node.move_child]."
msgstr ""
"Déplace ce nœud sous ses frères, ce qui provoque généralement son dessin par-"
"dessus. Ne fait rien si ce nœud n'a pas de parent. Voir aussi [method "
"Node.move_child]."

msgid ""
"Queues the [CanvasItem] to redraw. During idle time, if [CanvasItem] is "
"visible, [constant NOTIFICATION_DRAW] is sent and [method _draw] is called. "
"This only occurs [b]once[/b] per frame, even if this method has been called "
"multiple times."
msgstr ""
"Met l'élément [CanvasItem] en file d'attente pour le redessiner. En période "
"d'inactivité, si [CanvasItem] est visible, [constant NOTIFICATION_DRAW] est "
"envoyée et la [method _draw] est appelée. Cela ne se produit [b]qu'une seule "
"fois[/b] par trame, même si cette méthode a été appelée plusieurs fois."

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)."
msgstr ""
"Définit 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 assigner un uniform à toutes les "
"instances utilisant le même [ShaderMaterial].\n"
"[b]Note :[/b] Pour qu'un uniform de shader soit assignable instance par "
"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 (et non au nom en majuscules dans "
"l'inspecteur)."

msgid ""
"If [code]true[/code], the node will receive [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever its local transform changes.\n"
"[b]Note:[/b] Many canvas items such as [Bone2D] or [CollisionShape2D] "
"automatically enable this in order to function correctly."
msgstr ""
"Si [code]true[/code], le nœud recevra [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] chaque fois que sa transformation "
"locale change.\n"
"[b]Note :[/b] De nombreux éléments de canevas tels que [Bone2D] ou "
"[CollisionShape2D] activent automatiquement ceci afin de fonctionner "
"correctement."

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 mode in which this node clips its children, acting as a mask.\n"
"[b]Note:[/b] Clipping nodes cannot be nested or placed within a "
"[CanvasGroup]. If an ancestor of this node clips its children or is a "
"[CanvasGroup], then this node's clip mode should be set to [constant "
"CLIP_CHILDREN_DISABLED] to avoid unexpected behavior."
msgstr ""
"Le mode avec lequel ce nœud découpe ses enfants, agissant comme un masque.\n"
"[b]Remarque :[/b] Les nœuds de découpage ne peuvent pas être imbriqués ni "
"placés dans un [CanvasGroup]. Si un ancêtre de ce nœud découpe ses enfants ou "
"est un [CanvasGroup], le mode de découpage de ce nœud doit être défini sur "
"[constant CLIP_CHILDREN_DISABLED] pour éviter tout comportement inattendu."

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 ""
"The repeating mode used to render this [CanvasItem]'s texture(s). It affects "
"what happens when the texture is sampled outside its extents, for example by "
"setting a [member Sprite2D.region_rect] that is larger than the texture or "
"assigning [Polygon2D] UV points outside the texture.\n"
"[b]Note:[/b] [TextureRect] is not affected by [member texture_repeat], as it "
"uses its own texture repeating implementation."
msgstr ""
"Le mode de répétition utilisé pour rendre la/les texture(s) de ce "
"[CanvasItem]. Cela affecte le comportement lorsque la texture est "
"échantillonnée hors de son étendue, par exemple en définissant un [member "
"Sprite2D.region_rect] plus grand que la texture ou en assignant des points UV "
"[Polygon2D] hors de la texture.\n"
"[b]Remarque :[/b] [TextureRect] n'est pas affecté par [member "
"texture_repeat], car il utilise sa propre implémentation de répétition de "
"texture."

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 ""
"If [code]true[/code], this [CanvasItem] may be drawn. Whether this "
"[CanvasItem] is actually drawn depends on the visibility of all of its "
"[CanvasItem] ancestors. In other words: this [CanvasItem] will be drawn when "
"[method is_visible_in_tree] returns [code]true[/code] and all [CanvasItem] "
"ancestors share at least one [member visibility_layer] with this "
"[CanvasItem].\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 ""
"Si [code]true[/code], ce [CanvasItem] peut être dessiné. Que ce [CanvasItem] "
"soit effectivement tiré dépend de la visibilité de tous ses ancêtres "
"[CanvasItem]. En d'autres termes, ce [CanvasItem] sera dessiné lorsque "
"[method is_visible_in_tree] renvoie [code]true[/code] et que tous les "
"ancêtres [CanvasItem] partagent au moins un [member visibility_layer] avec ce "
"[CanvasItem].\n"
"[b]Note :[/b] Pour les contrôles qui héritent de [Popup], la bonne façon de "
"les rendre visibles est d'appeler l'une des multiples fonction [code]popup*()"
"[/code] à la place."

msgid ""
"If [code]true[/code], this and child [CanvasItem] nodes with a higher Y "
"position are rendered in front of nodes with a lower Y position. If "
"[code]false[/code], this and child [CanvasItem] nodes are rendered normally "
"in scene tree order.\n"
"With Y-sorting enabled on a parent node ('A') but disabled on a child node "
"('B'), the child node ('B') is sorted but its children ('C1', 'C2', etc.) "
"render together on the same Y position as the child node ('B'). This allows "
"you to organize the render order of a scene without changing the scene tree.\n"
"Nodes sort relative to each other only if they are on the same [member "
"z_index]."
msgstr ""
"Si [code]true[/code], ce nœud et les nœuds [CanvasItem] enfants avec une "
"position Y plus élevée sont rendus devant les nœuds avec une position Y plus "
"basse. Si [code]false[/code], ce nœud et les nœuds [CanvasItem] enfants sont "
"rendus normalement dans l'ordre de l'arborescence de scène.\n"
"Si le tri Y est activé sur un nœud parent ('A') mais désactivé sur un nœud "
"enfant ('B'), le nœud enfant ('B') est trié, mais ses nœuds enfants ('C1', "
"'C2', etc.) sont rendus ensemble à la même position Y que le nœud enfant "
"('B'). Cela vous permet d'organiser l'ordre du rendu d'une scène sans "
"modifier l'arborescence de scène.\n"
"Les nœuds sont triés les uns par rapport aux autres uniquement s'ils se "
"trouvent sur le même [member z_index]."

msgid ""
"If [code]true[/code], this node's final Z index is relative to its parent's Z "
"index.\n"
"For example, if [member z_index] is [code]2[/code] and its parent's final Z "
"index is [code]3[/code], then this node's final Z index will be [code]5[/"
"code] ([code]2 + 3[/code])."
msgstr ""
"Si [code]true[/code], l'index Z final de ce nœud est relatif à l'index Z de "
"son parent.\n"
"Par exemple, si [member z_index] vaut [code]2[/code] et que l'index Z final "
"de son parent vaut [code]3[/code], alors l'index Z final de ce nœud sera "
"[code]5[/code] ([code]2 + 3[/code])."

msgid ""
"The order in which this node is drawn. A node with a higher Z index will "
"display in front of others. Must be between [constant "
"RenderingServer.CANVAS_ITEM_Z_MIN] and [constant "
"RenderingServer.CANVAS_ITEM_Z_MAX] (inclusive).\n"
"[b]Note:[/b] The Z index does [b]not[/b] affect the order in which "
"[CanvasItem] nodes are processed or the way input events are handled. This is "
"especially important to keep in mind for [Control] nodes."
msgstr ""
"L'ordre dans lequel ce nœud est dessiné. Un nœud avec un index Z supérieur "
"s'affichera par dessus les autres. Doit être entre [constant "
"RenderingServer.CANVAS_ITEM_Z_MIN] et [constant "
"RenderingServer.CANVAS_ITEM_Z_MAX] (inclusifs).\n"
"[b]Note :[/b] L'index Z n'affecte [b]pas[/b] l'ordre dans lequel les nœuds "
"[CanvasItem] sont traités ou la façon dont les événements d'entrée sont "
"traités. Il est particulièrement important de garder ceci à l'esprit pour les "
"nœuds [Control]."

msgid ""
"Emitted when the [CanvasItem] must redraw, [i]after[/i] the related [constant "
"NOTIFICATION_DRAW] notification, and [i]before[/i] [method _draw] is called.\n"
"[b]Note:[/b] Deferred connections do not allow drawing through the "
"[code]draw_*[/code] methods."
msgstr ""
"Émis lorsque l'élément [CanvasItem] doit se redessiner, [i]après[/i] la "
"notification [constant NOTIFICATION_DRAW] associée et [i]avant[/i] que "
"[method _draw] soit appelée.\n"
"[b]Remarque :[/b] Les connexions différées ne permettent pas de dessiner via "
"les méthodes [code]draw_*[/code]."

msgid ""
"Emitted when this node becomes hidden, i.e. it's no longer visible in the "
"tree (see [method is_visible_in_tree])."
msgstr ""
"Émis lorsque ce nœud devient masqué, c'est-à-dire qu'il n'est plus visible "
"dans l'arborescence (voir [method is_visible_in_tree])."

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 ""
"Emitted when the [CanvasItem]'s visibility changes, either because its own "
"[member visible] property changed or because its visibility in the tree "
"changed (see [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é du [CanvasItem] change, soit parce que sa propre "
"propriété [member visible] a changé ou parce que sa visibilité dans "
"l'arborescence a changé (voir [method is_visible_in_tree]).\n"
"Ce signal est émis [i]après[/i] la notification correspondante [constant "
"NOTIFICATION_VISIBILITY_CHANGED]."

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 nœud 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.\n"
"This notification is sent in reversed order."
msgstr ""
"Le [CanvasItem] a quitté le canevas.\n"
"Cette notification est envoyée en ordre inverse."

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 filter reads from the nearest pixel and blends between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look pixelated from up close, "
"and smooth from a distance.\n"
"Use this for non-pixel art textures that may be viewed at a low scale (e.g. "
"due to [Camera2D] zoom or sprite scaling), as mipmaps are important to smooth "
"out pixels that are smaller than on-screen pixels."
msgstr ""
"Le filtrage de texture lit à partir du pixel le plus proche et fusionne les "
"deux mipmaps les plus proches (ou utilise la mipmap le plus proche si [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"vaut [code]true[/code]). Cela donne à la texture un aspect pixelisé de près "
"et lisse de loin.\n"
"Utilisez ce filtre pour les textures non pixel art susceptibles d'être "
"visualisées à petite échelle (par exemple, à cause du zoom d'une [Camera2D] "
"ou à la mise à l'échelle des sprites), car les mipmaps sont importantes pour "
"lisser les pixels qui sont plus petits que les pixels à l'écran."

msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look smooth from up close, and "
"smooth from a distance.\n"
"Use this for non-pixel art textures that may be viewed at a low scale (e.g. "
"due to [Camera2D] zoom or sprite scaling), as mipmaps are important to smooth "
"out pixels that are smaller than on-screen pixels."
msgstr ""
"Le filtrage de texture fusionne les 4 pixels les plus proches et les 2 "
"mipmaps les plus proches (ou utilise la mipmap le plus proche si [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"est [code]true[/code]). Cela rend la texture lisse de près et lisse de loin.\n"
"Utilisez ce filtre pour les textures non pixel art susceptibles d'être "
"visualisées à petite échelle (par exemple, grâce au zoom d'une [Camera2D] ou "
"à la mise à l'échelle du sprite), car les mipmaps sont importantes pour "
"lisser les pixels plus petits que ceux à l'écran."

msgid ""
"The texture filter reads from the nearest pixel and blends between 2 mipmaps "
"(or uses the nearest mipmap if [member ProjectSettings.rendering/textures/"
"default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the "
"angle between the surface and the camera view. This makes the texture look "
"pixelated from up close, and smooth from a distance. Anisotropic filtering "
"improves texture quality on surfaces that are almost in line with the camera, "
"but is slightly slower. The anisotropic filtering level can be changed by "
"adjusting [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate in this case."
msgstr ""
"Le filtrage de texture lit à partir du pixel le plus proche et fusionne les "
"deux mipmaps (ou utilise la mipmap le plus proche si [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"vaut [code]true[/code]) en fonction de l'angle entre la surface et la vue de "
"la caméra. Cela donne à la texture un aspect pixelisé de près et lisse de "
"loin. Le filtrage anisotrope améliore la qualité de la texture sur les "
"surfaces presque alignées avec la caméra, mais est légèrement plus lent. Le "
"niveau de filtrage anisotrope peut être modifié en ajustant [member "
"ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Remarque :[/b] Ce filtrage de texture est rarement utile dans des projets "
"2D. [constant TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] est généralement plus "
"approprié dans ce cas."

msgid ""
"The texture filter blends between the nearest 4 pixels and blends between 2 "
"mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) "
"based on the angle between the surface and the camera view. This makes the "
"texture look smooth from up close, and smooth from a distance. Anisotropic "
"filtering improves texture quality on surfaces that are almost in line with "
"the camera, but is slightly slower. The anisotropic filtering level can be "
"changed by adjusting [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate in this case."
msgstr ""
"Le filtrage de texture fusionne les 4 pixels les plus proches et les 2 "
"mipmaps (ou utilise la mipmap le plus proche si [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"vaut [code]true[/code]) en fonction de l'angle entre la surface et la vue de "
"la caméra. Cela rend la texture lisse de près et lisse de loin. Le filtrage "
"anisotrope améliore la qualité de la texture sur les surfaces presque "
"alignées avec la caméra, mais est légèrement plus lent. Le niveau du filtrage "
"anisotrope peut être modifié en ajustant [member ProjectSettings.rendering/"
"textures/default_filters/anisotropic_filtering_level].\n"
"[b]Remarque :[/b] Ce filtrage de texture est rarement utile dans les projets "
"2D. [constant TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] est généralement plus "
"approprié dans ce cas."

msgid ""
"The texture does not repeat. Sampling the texture outside its extents will "
"result in \"stretching\" of the edge pixels. You can avoid this by ensuring a "
"1-pixel fully transparent border on each side of the texture."
msgstr ""
"La texture ne se répète pas. Échantillonner la texture au-delà de son étendue "
"entraînera un étirement des pixels de bord. Vous pouvez éviter ce problème en "
"prévoyant une bordure entièrement transparente d'un pixel de chaque côté de "
"la texture."

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 ""
"The texture repeats when the exceeding the texture's size in a \"2×2 tiled "
"mode\". Repeated textures at even positions are mirrored."
msgstr ""
"La texture se répète lorsque la taille de la texture est dépassée en mode "
"mosaïque 2×2. Les textures répétées à des positions paires sont mises en "
"miroir."

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 "A node used for independent rendering of objects within a 2D scene."
msgstr "Un nœud utilisé pour le rendu indépendant d'objets dans une scène 2D."

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 ""
"If enabled, the [CanvasLayer] maintains its position in world space. If "
"disabled, the [CanvasLayer] stays in a fixed position on the screen.\n"
"Together with [member follow_viewport_scale], this can be used for a "
"pseudo-3D effect."
msgstr ""
"Si activé, le [CanvasLayer] garde sa position dans l'espace global. Si "
"désactivé, le [CanvasLayer] reste à une position fixe sur l'écran.\n"
"Avec [member follow_viewport_scale], cela peut être utilisé pour un effet de "
"pseudo-3D."

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 ""
"Layer index for draw order. Lower values are drawn behind higher values.\n"
"[b]Note:[/b] If multiple CanvasLayers have the same layer index, [CanvasItem] "
"children of one CanvasLayer are drawn behind the [CanvasItem] children of the "
"other CanvasLayer. Which CanvasLayer is drawn in front is non-deterministic.\n"
"[b]Note:[/b] The layer index should be between [constant "
"RenderingServer.CANVAS_LAYER_MIN] and [constant "
"RenderingServer.CANVAS_LAYER_MAX] (inclusive). Any other value will wrap "
"around."
msgstr ""
"Index de couche pour l'ordre du dessin. Les valeurs inférieures sont "
"dessinées derrière les valeurs supérieures.\n"
"[b]Note :[/b] Si plusieurs CanvasLayers ont le même index de couche, les "
"enfants [CanvasItem] d'un CanvasLayer sont dessinés derrière les enfants "
"[CanvasItem] de l'autre CanvasLayer. Quel CanvasLayer est dessiné devant est "
"non-déterministe.\n"
"[b]Note :[/b] L'index de couche devrait être entre [constant "
"RenderingServer.CANVAS_LAYER_MIN] et [constant "
"RenderingServer.CANVAS_LAYER_MAX] (inclusifs). Toute autre valeur rebouclera."

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 ""
"[CanvasTexture] is an alternative to [ImageTexture] for 2D rendering. It "
"allows using normal maps and specular maps in any node that inherits from "
"[CanvasItem]. [CanvasTexture] also allows overriding the texture's filter and "
"repeat mode independently of the node's properties (or the project "
"settings).\n"
"[b]Note:[/b] [CanvasTexture] cannot be used in 3D. It will not display "
"correctly when applied to any [VisualInstance3D], such as [Sprite3D] or "
"[Decal]. For physically-based materials in 3D, use [BaseMaterial3D] instead."
msgstr ""
"[CanvasTexture] est une alternative à [ImageTexture] pour le rendu 2D. Elle "
"permet d'utiliser des normal maps et des maps spéculaires dans n'importe quel "
"nœud héritant de [CanvasItem]. [CanvasTexture] permet aussi de redéfinir le "
"filtrage de texture et le mode de répétition indépendamment des propriétés du "
"nœud (ou des paramètres du projet).\n"
"[b]Remarque :[/b] [CanvasTexture] ne peut pas être utilisée en 3D. Elle ne "
"s'affichera pas correctement quand appliquée à un [VisualInstance3D], tel que "
"[Sprite3D] ou [Decal]. Pour des matériaux basés sur la physique en 3D, "
"utilisez plutôt [BaseMaterial3D]."

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 specular exponent for [Light2D] specular reflections. Higher values "
"result in a more glossy/\"wet\" look, with reflections becoming more "
"localized and less visible overall. The default value of [code]1.0[/code] "
"disables specular reflections entirely. Only has a visible effect if "
"[Light2D]s are affecting this [CanvasTexture]."
msgstr ""
"L'exposant spéculaire pour des réflexions spéculaires de [Light2D]s. Des "
"valeurs plus grandes donnent un aspect plus brillant/\"mouillé\", avec des "
"réflexions devenant plus locales et moins visible au global. La valeur par "
"défaut de [code]1.0[/code] désactive complètement les reflets spéculaires. A "
"un effet visible seulement si des [Light2D]s affectent cette [CanvasTexture]."

msgid ""
"The specular map to use for [Light2D] specular reflections. This should be a "
"grayscale or colored texture, with brighter areas resulting in a higher "
"[member specular_shininess] value. Using a colored [member specular_texture] "
"allows controlling specular shininess on a per-channel basis. Only has a "
"visible effect if [Light2D]s are affecting this [CanvasTexture]."
msgstr ""
"La specular map à utiliser pour des reflets spéculaires de [Light2D]. Cela "
"devrait être une texture en noir et blanc ou en couleur, où les zones plus "
"claires correspondent à une valeur plus grande de [member "
"specular_shininess]. Utiliser une [member specular_texture] en couleur permet "
"de contrôler la brillance spéculaire canal par canal. N'a d'effet visible que "
"si des [Light2D]s affectent cette [CanvasTexture]."

msgid "The texture filtering mode to use when drawing this [CanvasTexture]."
msgstr ""
"Le mode de filtrage de texture à utiliser lors du dessin de 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 [SkeletonModifier3D] to apply inverse kinematics to bone chains containing "
"an arbitrary number of bones."
msgstr ""
"Un [SkeletonModifier3D] pour appliquer de la cinématique inverse à des "
"chaînes d'os contenant un nombre arbitraire d'os."

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 ""
"If [param enabled] is [code]true[/code], the end bone is extended to have a "
"tail.\n"
"The extended tail config is allocated to the last element in the joint list. "
"In other words, if you set [param enabled] to [code]false[/code], the config "
"of the 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. 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 "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] if a collision occurred. The returned value "
"contains information about the latest collision that occurred during the last "
"call to [method move_and_slide]. Returns [code]null[/code] if no collision "
"occurred. See also [method get_slide_collision]."
msgstr ""
"Retourne une [KinematicCollision2D] si une collision s'est produite. La "
"valeur retournée contient des informations sur la dernière collision qui "
"s'est produite lors du dernier appel à [method move_and_slide]. Retourne "
"[code]null[/code] si aucune collision ne s'est produite. Voir aussi [method "
"get_slide_collision]."

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 ""
"Renvoie 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). See also [method "
"get_last_slide_collision].\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 ""
"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] if a collision occurred. The returned value "
"contains information about the latest collision that occurred during the last "
"call to [method move_and_slide]. Returns [code]null[/code] if no collision "
"occurred. See also [method get_slide_collision]."
msgstr ""
"Retourne une [KinematicCollision3D] si une collision s'est produite. La "
"valeur retournée contient des informations sur la dernière collision qui "
"s'est produite lors du dernier appel à [method move_and_slide]. Retourne "
"[code]null[/code] si aucune collision ne s'est produite. Voir aussi [method "
"get_slide_collision]."

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 ""
"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"
"[b]Note:[/b] A common mistake is setting this property to the desired "
"velocity multiplied by [code]delta[/code], which produces a motion vector "
"(typically in meters)."
msgstr ""
"Vecteur de vitesse actuelle (typiquement mètres par seconde), utilisé et "
"modifié pendant les appels à [method move_and_slide].\n"
"[b]Note:[/b] Une erreur courante est de placer cette propriété à la vitesse "
"souhaitée multipliée par [code]delta[/code], qui produit un vecteur de "
"mouvement (généralement en mètres)."

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 ""
"The time elapsed since the [RichTextLabel] was added to the scene tree (in "
"seconds). Time stops when the [RichTextLabel] is paused (see [member "
"Node.process_mode]). Resets when the text in the [RichTextLabel] is changed.\n"
"[b]Note:[/b] Time still passes while the [RichTextLabel] is hidden."
msgstr ""
"Le temps écoulé depuis que le [RichTextLabel] ait été ajouté à l'arborescence "
"de scène (en secondes). Le temps s’arrête lorsque le [RichTextLabel] est en "
"pause (voir [member Node.process_mode]). Réinitialisé lorsque le texte du "
"[RichTextLabel] est modifié.\n"
"[b]Note :[/b] Le temps continue de s'écouler même lorsque le [RichTextLabel] "
"est caché."

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 ""
"[TextServer] RID of the font used to render glyph, this value can be used "
"with [code]TextServer.font_*[/code] methods to retrieve font information.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"RID du [TextServer] de la police de caractère utilisée pour rendre le glyphe, "
"cette valeur peut être utilisée avec les méthodes de [code]TextServer.font_*[/"
"code] pour récupérer les informations de police de caractère.\n"
"[b]Remarque :[/b] Lecture seule. Définir cette propriété n'affectera pas le "
"dessin."

msgid ""
"Glyph flags. See [enum TextServer.GraphemeFlag] for more info.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"Options des glyphes. Voir [enum TextServer.GraphemeFlag] pour plus "
"d'informations.\n"
"[b]Remarque :[/b] Lecture seule. Définir cette propriété n'affectera pas le "
"dessin."

msgid ""
"Glyph index specific to the [member font]. If you want to replace this glyph, "
"use [method TextServer.font_get_glyph_index] with [member font] to get a new "
"glyph index for a single character."
msgstr ""
"Index de glyphes spécifiques à [member font]. Si vous souhaitez remplacer ce "
"glyphe, utilisez [method TextServer.font_get_glyph_index] avec [member font] "
"pour recevoir un nouvel index de glyphe pour un caractère unique."

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 ""
"Provides access to metadata stored for every available engine class.\n"
"[b]Note:[/b] Script-defined classes with [code]class_name[/code] are not part "
"of [ClassDB], so they will not return reflection data such as a method or "
"property list. However, [GDExtension]-defined classes [i]are[/i] part of "
"[ClassDB], so they will return reflection data."
msgstr ""
"Fournit un accès aux métadonnées enregistrées pour chaque classe disponible "
"du moteur.\n"
"[b]Remarque :[/b] Les classes définies dans des scripts avec "
"[code]class_name[/code] ne font pas partie de [ClassDB], elles ne renverront "
"donc pas de données de réflexion telles qu'une méthode ou une liste de "
"propriétés. Cependant, les classes définies par [GDExtension] [i]font partie[/"
"i] de [ClassDB], elle renverront donc des données de réflexion."

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 names of all engine classes available.\n"
"[b]Note:[/b] Script-defined classes with [code]class_name[/code] are not "
"included in this list. Use [method ProjectSettings.get_global_class_list] to "
"get a list of script-defined classes instead."
msgstr ""
"Renvoie les noms de toutes les classes du moteur disponibles.\n"
"[b]Note :[/b] Les classes définies dans des scripts avec [code]class_name[/"
"code] ne sont pas incluses dans cette liste. Utilisez à la place [method "
"ProjectSettings.get_global_class_list] pour obtenir une liste de classes "
"définies dans des scripts."

msgid ""
"Returns the names of all engine classes that directly or indirectly inherit "
"from [param class]."
msgstr ""
"Renvoie le nom de toutes les classes du moteur qui héritent directement ou "
"indirectement de [param class]."

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 "A multiline text editor designed for editing code."
msgstr "Un éditeur de texte multi-ligne conçu pour l'édition de code."

msgid ""
"CodeEdit is a specialized [TextEdit] designed for editing plain text code "
"files. It has many features commonly found in code editors such as line "
"numbers, line folding, code completion, indent management, and string/comment "
"management.\n"
"[b]Note:[/b] Regardless of locale, [CodeEdit] will by default always use left-"
"to-right text direction to correctly display source code."
msgstr ""
"CodeEdit est un [TextEdit] spécialisé, conçu pour l'édition de fichiers de "
"code bruts. Il a de nombreuses fonctionnalités communément trouvées dans les "
"éditeurs de code tels que les numéros de ligne, le repliage de ligne, la "
"complétion du code, la gestion de l'indentation et la gestion des chaînes/"
"commentaires.\n"
"[b]Note :[/b] Peu importe la langue, [CodeEdit] utilisera par défaut toujours "
"une direction du texte de gauche à droite pour afficher correctement le code "
"source."

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 ""
"Submits an item to the queue of potential candidates for the autocomplete "
"menu. Call [method update_code_completion_options] to update the list.\n"
"[param location] indicates location of the option relative to the location of "
"the code completion query. See [enum CodeEdit.CodeCompletionLocation] for how "
"to set this value.\n"
"[b]Note:[/b] This list will replace all current candidates."
msgstr ""
"Soumet un élément à la liste des potentiels candidats pour le menu "
"d'autocomplétion. Appelez [method update_code_completion_options] pour mettre "
"à jour cette liste.\n"
"[param location] indique la position de l'option par rapport à la position de "
"la requête de complétion du code. Voir [enum CodeEdit.CodeCompletionLocation] "
"pour des informations sur comment définir cette valeur.\n"
"[b]Remarque :[/b] Cette liste remplacera tous les candidats actuels."

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 ""
"If [param line] [param column] is in a string or comment, returns the start "
"position of the region. If not or no start could be found, both [Vector2] "
"values will be [code]-1[/code]."
msgstr ""
"Si [param line] [param column] est dans une chaîne ou un commentaire, renvoie "
"la position de départ de la région. Sinon ou si aucun départ n'a été trouvé, "
"les deux valeurs du [Vector2] vaudront [code]-1[/code]."

msgid "Gets all executing lines."
msgstr "Reprends toutes les lignes d'exécution."

msgid "Returns all lines that are currently folded."
msgstr "Renvoie toutes les lignes qui sont actuellement repliées."

msgid ""
"Returns the full text with char [code]0xFFFF[/code] at the caret location."
msgstr ""
"Renvoie le texte complet avec le caractère [code]0xFFFF[/code] à "
"l'emplacement du caret."

msgid ""
"Returns the full text with char [code]0xFFFF[/code] at the cursor location."
msgstr ""
"Renvoie le texte complet avec le caractère [code]0xFFFF[/code] à "
"l'emplacement du curseur."

msgid ""
"Returns the full text with char [code]0xFFFF[/code] at the specified location."
msgstr ""
"Renvoie le texte complet avec le caractère [code]0xFFFF[/code] à "
"l'emplacement spécifié."

msgid "Returns [code]true[/code] if close key [param close_key] exists."
msgstr ""
"Renvoie [code]true[/code] si la clé de fermeture [param close_key] existe."

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 ""
"Indents all lines that are selected or have a caret on them. Uses spaces or a "
"tab depending on [member indent_use_spaces]. See [method unindent_lines]."
msgstr ""
"Indente toutes les lignes qui sont sélectionnées ou qui ont un curseur sur "
"elles. Utilise des espaces ou une tabulation en fonction de [member "
"indent_use_spaces]. Voir [method unindent_lines]."

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 current selected completion option."
msgstr "Définit l'option d'achèvement sélectionnée actuelle."

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 "Unfolds all lines that are folded."
msgstr "Déplie toutes les lignes qui sont repliées."

msgid ""
"Unfolds the given line if it is folded or if it is hidden under a folded line."
msgstr ""
"Déplie la ligne donnée si elle est repliée ou si elle est cachée sous une "
"ligne replié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 ""
"If [code]true[/code], line numbers drawn in the gutter are zero padded based "
"on the total line count. Requires [member gutters_draw_line_numbers] to be "
"set to [code]true[/code]."
msgstr ""
"Si [code]true[/code], les numéros de ligne tirés dans la gouttière sont "
"complété avec des zéro en fonction du nombre total de lignes. Exige que "
"[member gutters_draw_line_numbers] soit défini à [code]true[/code]."

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 ""
"If [code]true[/code], the [signal symbol_hovered] signal is emitted when "
"hovering over a word."
msgstr ""
"Si [code]true[/code], le signal [signal symbol_hovered] est émis lors du sur-"
"volage d'un mot."

msgid ""
"Emitted when a breakpoint is added or removed from a line. If the line is "
"removed via backspace, a signal is emitted at the old line."
msgstr ""
"Émis lorsqu'un point d'arrêt est ajouté ou retiré d'une ligne. Si la ligne "
"est retirée via un retour arrière, un signal est émis à l'ancienne ligne."

msgid ""
"Emitted when the user requests code completion. This signal will not be sent "
"if [method _request_code_completion] is overridden or [member "
"code_completion_enabled] is [code]false[/code]."
msgstr ""
"Émis lorsque l'utilisateur demande la complétion du code. Ce signal ne sera "
"pas envoyé si [method _request_code_completion] est redéfini ou [member "
"code_completion_enabled] vaut [code]false[/code]."

msgid ""
"Emitted when the user hovers over a symbol. Unlike [signal "
"Control.mouse_entered], this signal is not emitted immediately, but when the "
"cursor is over the symbol for [member ProjectSettings.gui/timers/"
"tooltip_delay_sec] seconds.\n"
"[b]Note:[/b] [member symbol_tooltip_on_hover] must be [code]true[/code] for "
"this signal to be emitted."
msgstr ""
"Émis lorsque l'utilisateur survole un symbole. Contrairement à [signal "
"Control.mouse_entered], ce signal n'est pas émis immédiatement, mais lorsque "
"le curseur est sur le symbole pendant [member ProjectSettings.gui/timers/"
"tooltip_delay_sec] secondes.\n"
"[b]Note :[/b] [member symbol_tooltip_on_hover] doit valoir [code]true[/code] "
"pour que ce signal soit émis."

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 ""
"The option is from the containing class or a parent class, relative to the "
"location of the code completion query. Perform a bitwise OR with the class "
"depth (e.g. [code]0[/code] for the local class, [code]1[/code] for the "
"parent, [code]2[/code] for the grandparent, etc.) to store the depth of an "
"option in the class or a parent class."
msgstr ""
"L'option provient de la classe contenante ou d'une classe parente, par "
"rapport à l'emplacement de la requête de complétion du code. Effectue un "
"bitwise OU avec la profondeur de la classe (par exemple [code]0[/code] pour "
"la classe locale, [code]1[/code] pour le parent, [code]2[/code] pour le grand-"
"parent, etc.) pour stocker la profondeur d'une option dans la classe ou dans "
"la classe parente."

msgid ""
"The option is from user code which is not local and not in a derived class "
"(e.g. Autoload Singletons)."
msgstr ""
"L'option provient du code de l'utilisateur qui n'est pas local et pas dans "
"une classe dérivée (p. ex., Singletons à chargement automatique)."

msgid ""
"The option is from other engine code, not covered by the other enum constants "
"- e.g. built-in classes."
msgstr ""
"L'option provient d'un autre code du moteur, non couvert par les autres "
"constantes d'énumération - par ex. de classes intégrées."

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 "[Color] of the executing icon for executing lines."
msgstr "[Color] de l'icône d'exécution pour exécuter des lignes."

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 ""
"Sets a custom [Texture2D] to draw in the breakpoint gutter for breakpointed "
"lines."
msgstr ""
"Définit la [Texture2D] personnalisée pour le point d'arrêt dans le bandeau."

msgid ""
"Sets a custom [Texture2D] to draw in the line folding gutter when a code "
"region can be folded."
msgstr ""
"Définit une [Texture2D] personnalisée pour dessiner dans le bandeau de ligne "
"quand une région de code peut être pliée."

msgid ""
"Sets a custom [Texture2D] to draw in the line folding gutter when a code "
"region is folded and can be unfolded."
msgstr ""
"Définit une [Texture2D] personnalisée pour dessiner dans le bandeau de ligne "
"quand une région de code est pliée et peut être dépliée."

msgid "Sets a custom [Texture2D] to draw at the end of a folded line."
msgstr ""
"Définit une [Texture2D] personnalisée pour dessiner la fin d'une région de "
"code pliée."

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 color for member variables. A member variable is non-keyword, non-"
"function string proceeded with a '.'."
msgstr ""
"Définit la couleur pour les variables membres. Une variable membre est une "
"chaîne non-mot-clé, non-fonction précédée d'un '.'."

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, étant "
"donné un numéro de couche [param layer_number] entre 1 et 32."

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 "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 arê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 it to be edited. The polygon can be "
"concave or convex. 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 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 un [PhysicsBody3D] en un objet solide.\n"
"[b]Attention :[/b] Une [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 "
"it to be edited. 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 "
"it to be edited. 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 a number of 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].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"color_constants.png]Color constants cheatsheet[/url]\n"
"Although [Color] may be used to store values of any encoding, the red "
"([member r]), green ([member g]), and blue ([member b]) properties of [Color] "
"are expected by Godot to be encoded using the [url=https://en.wikipedia.org/"
"wiki/SRGB#Transfer_function_(%22gamma%22)]nonlinear sRGB transfer function[/"
"url] unless otherwise stated. This color encoding is used by many traditional "
"art and web tools, making it easy to match colors between Godot and these "
"tools. Godot uses [url=https://en.wikipedia.org/wiki/Rec._709]Rec. ITU-R "
"BT.709[/url] color primaries, which are used by the sRGB standard.\n"
"All physical simulation, such as lighting calculations, and colorimetry "
"transformations, such as [method get_luminance], must be performed on "
"linearly encoded values to produce correct results. When performing these "
"calculations, convert [Color] to and from linear encoding using [method "
"srgb_to_linear] and [method linear_to_srgb].\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]."
msgstr ""
"Une couleur représentée au format RGBA par un composant rouge ([member r]), "
"vert ([member g]), bleu ([member b]), et alpha ([member a]). Chaque composant "
"est une valeur flottante de 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 ou HDR (High Dynamic Range).\n"
"Les couleurs peuvent être créées de plusieurs façons : Par les différents "
"constructeurs [Color], par des méthodes statiques telles que [method "
"from_hsv], et en utilisant un nom de l ' ensemble de couleurs normalisées "
"basées sur [url=https ://en.wikipedia.org/wiki/X11_color_names]X11 noms de "
"couleur[/url] avec l'ajout de [constant TRANSPARENT].\n"
"[url=https ://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"color_constants.png]Color constants cheatsheet[/url]\n"
"Bien que [Color] puisse être utilisé pour stocker les valeurs de tout codage, "
"les propriétés rouges ([member r]), vertes ([member g]), et bleues ([member "
"b]) de [Color] sont attendues par Godot pour être encodé en utilisant la "
"fonction [url=https ://en.wikipedia.org/wiki/"
"SRGB#Transfer_fonction_(%22gamma%22)22)]). Cet encodage de couleurs est "
"utilisé par de nombreux outils d'art et de web traditionnels, ce qui permet "
"de comparer facilement les couleurs entre Godot et ces outils. Godot utilise "
"[url=https ://en.wikipedia.org/wiki/Rec._709]Rec. ITU-R BT.709[/url] des "
"primaires de couleurs, qui sont utilisées par la norme sRGB.\n"
"Toutes les simulations physiques, telles que les calculs d'éclairage et les "
"transformations de colorimétrie, telles que [method get_luminance], doivent "
"être effectuées sur des valeurs codées linéairement pour produire des "
"résultats corrects. Lors de l'exécution de ces calculs, convertir [Color] à "
"et à partir d'encodage linéaire en utilisant [method srgb_to_linear] et "
"[method linear_to_srgb].\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] (opaque noir). "
"Sinon, une couleur évaluera toujours [code]true[/code]."

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 `Color.from_rgba8(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 `Color.from_rgba8(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 Vert Bleu 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 à `Color.from_rgba8(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 TSV (Hue Saturation Value, litt. Teinte "
"Saturation Valeur)[/url]. La teinte ([param h]), la saturation ([param s]) et "
"la valeur ([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 TSL[/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 using linear encoding "
"to return an accurate relative luminance value. If the color uses the default "
"nonlinear sRGB encoding, use [method srgb_to_linear] to convert it to linear "
"encoding 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 le fait que la couleur "
"utilise un encodage linéaire pour renvoyer une valeur de luminosité relative "
"exacte. Si la couleur utilise l'encodage sRGB non-linéaire par défaut, "
"utilisez [method srgb_to_linear] pour la convertir en encodage 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 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 "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 TSV 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 TSV 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 TSV (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électeur 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électeur 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électeur 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électeur 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électeur 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électeur 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électeur 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 du sélecteur de "
"couleur."

msgid ""
"If [code]true[/code], it's possible to add presets under Swatches. If "
"[code]false[/code], the button to add presets is disabled."
msgstr ""
"Si [code]true[/code], il est possible d'ajouter des préréglages sous "
"Nuanciers. Si [code]false[/code], le bouton pour ajouter des préréglages est "
"désactivé."

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 mode buttons are visible."
msgstr "Si [code]true[/code], les boutons de mode de couleur sont visibles."

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 "If [code]true[/code], the hex color code input field is visible."
msgstr ""
"Si [code]true[/code], le champ de saisie du code de couleur hexadécimal est "
"visible."

msgid "The shape of the color space view."
msgstr "La forme de la vue de l'espace de couleur."

msgid ""
"If [code]true[/code], the Swatches and Recent Colors presets are visible."
msgstr ""
"Si [code]true[/code], les préréglages de nuanciers et de couleurs récentes "
"sont visibles."

msgid "If [code]true[/code], the color sampler and color preview are visible."
msgstr ""
"Si [code]true[/code], l’échantillonneur de couleur et la prévisualisation de "
"la couleur sont visibles."

msgid "If [code]true[/code], the color sliders are visible."
msgstr "Si [code]true[/code], les sliders de couleurs sont visibles."

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 Red/Green/Blue sliders in sRGB color space."
msgstr ""
"Permet d'éditer la couleur avec les sliders Rouge/Vert/Bleu dans l'espace de "
"couleur sRGB."

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 ""
"Allows editing the color with Red/Green/Blue sliders in linear color space."
msgstr ""
"Permet d'éditer la couleur avec des sliders Rouge/Vert/Bleu dans l'espace de "
"couleur linéaire."

msgid ""
"Allows editing the color with Hue/Saturation/Lightness sliders.\n"
"OKHSL is a new color space similar to HSL but that better match perception by "
"leveraging the Oklab color space which is designed to be simple to use, while "
"doing a good job at predicting perceived lightness, chroma and hue.\n"
"[url=https://bottosson.github.io/posts/colorpicker/]Okhsv and Okhsl color "
"spaces[/url]"
msgstr ""
"Permet d'éditer la couleur avec les sliders Teinte/Saturation/Luminosité.\n"
"OK TSL est un nouvel espace de couleur semblable à TSL mais qui correspond "
"mieux à la perception en utilisant l'espace de couleur Oklab qui est conçu "
"pour être simple à utiliser, tout en faisant un bon travail pour prédire la "
"luminosité, saturation et teinte perçues.\n"
"[url=https://bottosson.github.io/posts/colorpicker/]Espaces de couleur Oktsv "
"et Oktsl[/url]"

msgid "HSV Color Model rectangle color space."
msgstr "Espace de couleur rectangulaire Modèle de couleur TSV."

msgid "HSV Color Model rectangle color space with a wheel."
msgstr "Espace de couleur rectangulaire Modèle de couleur TSV avec une roue."

msgid "HSV Color Model circle color space. Use Saturation as a radius."
msgstr ""
"Espace de couleur circulaire Modèle de couleur TSV. Utilise la saturation "
"comme rayon."

msgid "HSL OK Color Model circle color space."
msgstr "Espace de couleur circulaire Modèle de couleur TSL OK."

msgid ""
"The color space shape and the shape select button are hidden. Can't be "
"selected from the shapes popup."
msgstr ""
"La forme de l'espace de couleur et le bouton de sélection de forme sont "
"cachés. Ne peut pas être sélectionné parmi le popup des formes."

msgid "OKHSL Color Model rectangle with constant lightness."
msgstr "Rectangle de Modèle de couleur OKHSL avec une luminosité constante."

msgid "OKHSL Color Model rectangle with constant saturation."
msgstr "Rectangle de Modèle de couleur OKHSL avec une saturation constante."

msgid ""
"Color of rectangle or circle drawn when a picker shape part is focused but "
"not editable via keyboard or joypad. Displayed [i]over[/i] the picker shape, "
"so a partially transparent color should be used to ensure the picker shape "
"remains visible."
msgstr ""
"Couleur du rectangle ou du cercle dessiné quand une partie de la forme du "
"sélecteur a le focus mais est non modifiable via le clavier ou la manette. "
"Affiché [i]par-dessus[/i] la forme du sélecteur, donc une couleur "
"partiellement transparente doit être utilisée pour s'assurer que la forme du "
"sélecteur reste visible."

msgid ""
"Overrides the [theme_item Slider.center_grabber] theme property of the "
"sliders."
msgstr ""
"Redéfinit la propriété de thème [theme_item Slider.center_grabber] des "
"sliders."

msgid "The width of the hue selection slider."
msgstr "La largeur de glisseur de la teinte."

msgid "The minimum width of the color labels next to sliders."
msgstr "La largeur minimale des étiquettes de couleur à côté des sliders."

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 "The texture for the arrow grabber."
msgstr "La texture pour l’ascenseur en forme de flèche."

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 icon for the button that switches color text to hexadecimal."
msgstr ""
"L'icône pour le bouton qui change le texte de la couleur en hexadécimal."

msgid "The icon for color preset drop down menu when expanded."
msgstr ""
"L'icône pour le menu déroulant des préréglages de couleur lorsqu'étendu."

msgid "The icon for color preset drop down menu when folded."
msgstr ""
"L'icône pour le menu déroulant des préréglages de couleur lorsque replié."

msgid "The icon for color preset option menu."
msgstr "L'icône pour le menu des options des préréglages de couleur."

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 ""
"The image displayed over the color box/circle (depending on the [member "
"picker_shape]), marking the currently selected color."
msgstr ""
"L'image affichée sur la boîte/cercle de couleur (selon [member "
"picker_shape]), marquant la couleur actuellement sélectionnée."

msgid "The fill image displayed behind the picker cursor."
msgstr "L'image de remplissage affichée derrière le curseur du sélecteur."

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 revert button (visible on the middle of the \"old\" color "
"when it differs from the currently selected color). This icon is modulated "
"with a dark color if the \"old\" color is bright enough, so the icon should "
"be bright to ensure visibility in both scenarios."
msgstr ""
"L'icône pour le bouton de rétablissement (visible au milieu de l' "
"\"ancienne\" couleur quand elle diffère de la couleur actuellement "
"sélectionnée). Cette icône est modulée avec une couleur foncée si "
"l'\"ancienne\" couleur est assez lumineuse, de sorte que l'icône devrait être "
"lumineuse pour assurer la visibilité dans les deux scénarios."

msgid "The icon for the screen color picker button."
msgstr "L'icône pour le bouton de sélecteur de couleur d'écran."

msgid "The icon for circular picker shapes."
msgstr "L'icône pour les formes de sélecteur circulaire."

msgid "The icon for rectangular picker shapes."
msgstr "L'icône pour les formes de sélecteur rectangulaire."

msgid "The icon for rectangular wheel picker shapes."
msgstr "L'icône pour les formes de sélecteur en roue rectangulaire."

msgid ""
"The [StyleBox] used when the circle-shaped part of the picker is focused. "
"Displayed [i]over[/i] the picker shape, so a partially transparent [StyleBox] "
"should be used to ensure the picker shape 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 ""
"La [StyleBox] utilisée lorsque la partie en forme de cercle du sélecteur a le "
"focus. S'affiche [i]par-dessus[/i] la forme du sélecteur, donc une [StyleBox] "
"partiellement transparente devrait être utilisée pour s'assurer que la forme "
"du sélecteur reste visible. Une [StyleBox] qui représente un contour ou un "
"soulignement fonctionne bien à cette fin. Pour désactiver l'effet visuel de "
"focus, assignez une ressource [StyleBoxEmpty]. Notez que la désactivation de "
"l'effet visuel de 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 [StyleBox] used when the rectangle-shaped part of the picker is focused. "
"Displayed [i]over[/i] the picker shape, so a partially transparent [StyleBox] "
"should be used to ensure the picker shape 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 ""
"La [StyleBox] utilisée lorsque la partie en forme de rectangle du sélecteur a "
"le focus. S'affiche [i]par-dessus[/i] la forme du sélecteur, donc une "
"[StyleBox] partiellement transparente devrait être utilisée pour s'assurer "
"que la forme du sélecteur reste visible. Une [StyleBox] qui représente un "
"contour ou un soulignement fonctionne bien à cette fin. Pour désactiver "
"l'effet visuel de focus, assignez une ressource [StyleBoxEmpty]. Notez que la "
"désactivation de l'effet visuel de 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 [StyleBox] used for the old color sample part when it is focused. "
"Displayed [i]over[/i] the sample, so a partially transparent [StyleBox] "
"should be used to ensure the picker shape 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 ""
"La [StyleBox] utilisée lorsque la partie de l'ancien échantillon lorsqu'il a "
"le focus. S'affiche [i]par-dessus[/i] la forme du sélecteur, donc une "
"[StyleBox] partiellement transparente devrait être utilisée pour s'assurer "
"que la forme du sélecteur reste visible. Une [StyleBox] qui représente un "
"contour ou un soulignement fonctionne bien à cette fin. Pour désactiver "
"l'effet visuel de focus, assignez une ressource [StyleBoxEmpty]. Notez que la "
"désactivation de l'effet visuel de focus va nuire à l'utilisabilité de la "
"navigation clavier/contrôleur, ce qui n'est donc pas recommandé pour des "
"raisons d'accessibilité."

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 dans le [ColorPicker] affiché sera "
"visible."

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 appuyé 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 "A control that displays a solid color rectangle."
msgstr "Un contrôle qui affiche un rectangle de couleur unie."

msgid ""
"Displays a rectangle filled with a solid [member color]. If you need to "
"display the border alone, consider using a [Panel] instead."
msgstr ""
"Affiche un rectangle rempli de la couleur unie [member color]. Si vous devez "
"seulement afficher la bordure, utilisez plutôt un [Panel]."

msgid "The fill color of the rectangle."
msgstr "La couleur de remplissage du rectangle."

msgid ""
"More customization of the rendering pipeline will be added in the future."
msgstr ""
"Une plus grande personnalisation de la pipeline de rendu sera ajoutée à "
"l'avenir."

msgid "Stores attributes used to customize how a Viewport is rendered."
msgstr ""
"Stocke des attributs utilisés pour personnaliser la façon dont un Viewport "
"est rendu."

msgid ""
"The compositor resource stores attributes used to customize how a [Viewport] "
"is rendered."
msgstr ""
"La ressource de compositeur stocke des attributs utilisés pour personnaliser "
"la façon dont un [Viewport] est rendu."

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 ""
"This resource defines a custom rendering effect that can be applied to "
"[Viewport]s through the viewports' [Environment]. You can implement a "
"callback that is called during rendering at a given stage of the rendering "
"pipeline and allows you to insert additional passes. Note that this callback "
"happens on the rendering thread. CompositorEffect is an abstract base class "
"and must be extended to implement specific rendering logic."
msgstr ""
"Cette ressource définit un effet de rendu personnalisé qui peut être appliqué "
"à des [Viewport]s par l'intermédiaire de l'environnement [Environment]. Vous "
"pouvez implémenter un callback qui est appelé lors du rendu à une étape "
"donnée de la pipeline de rendu et vous permet d'insérer des passes "
"supplémentaires. Notez que cet appel se produit sur le thread de rendu. "
"CompositorEffect est une classe de base abstraite et doit être étendue pour "
"implémenter une logique de rendu spécifique."

msgid ""
"Implement this function with your custom rendering code. [param "
"effect_callback_type] should always match the effect callback type you've "
"specified in [member effect_callback_type]. [param render_data] provides "
"access to the rendering state, it is only valid during rendering and should "
"not be stored."
msgstr ""
"Implémentez cette fonction avec votre code de rendu personnalisé. [param "
"effect_callback_type] doit toujours correspondre au type du callback d'effet "
"que vous avez spécifié dans [member effect_callback_type]. [param "
"render_data] donne accès à l'état du rendu, il n'est valable que pendant le "
"rendu et ne doit pas être stocké."

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 before our opaque rendering pass, but after depth "
"prepass (if applicable)."
msgstr ""
"Le callback est appelé avant notre passe de rendu opaque, mais après la pré-"
"passe de profondeur (le cas échéant)."

msgid ""
"The callback is called after our opaque rendering pass, but before our sky is "
"rendered."
msgstr ""
"Le callback est appelé après notre passe de rendu opaque, mais avant que "
"notre ciel soit rendu."

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 "Loads the texture from the specified [param path]."
msgstr "Charge la texture au chemin [param path] spécifié."

msgid "The [CompressedTexture2D]'s file path to a [code].ctex[/code] file."
msgstr ""
"Le chemin du fichier de la [CompressedTexture2D] vers un fichier [code].ctex[/"
"code]."

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 "The [CompressedTexture3D]'s file path to a [code].ctex3d[/code] file."
msgstr ""
"Le chemin du fichier de la [CompressedTexture3D] vers un fichier "
"[code].ctex3d[/code]."

msgid "Base class for texture arrays that can optionally be compressed."
msgstr ""
"Classe de base pour les tableaux de texture qui peuvent être optionnellement "
"compressés."

msgid ""
"Base class for [CompressedTexture2DArray] and [CompressedTexture3D]. Cannot "
"be used directly, but contains all the functions necessary for accessing the "
"derived resource types. See also [TextureLayered]."
msgstr ""
"Classe de base pour [CompressedTexture2DArray] et [CompressedTexture3D]. 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 "
"[TextureLayered]."

msgid "Loads the texture at [param path]."
msgstr "Charge la texture au chemin [param path]."

msgid "The path the texture should be loaded from."
msgstr "Le chemin où la texture sera chargée."

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 ""
"This helper class can be used to store [Variant] values on the filesystem "
"using INI-style formatting. The stored values are identified by a section and "
"a key:\n"
"[codeblock lang=text]\n"
"[section]\n"
"some_key=42\n"
"string_example=\"Hello World3D!\"\n"
"a_vector=Vector3(1, 0, 2)\n"
"[/codeblock]\n"
"The stored data can be saved to or parsed from a file, though ConfigFile "
"objects can also be used directly without accessing the filesystem.\n"
"The following example shows how to create a simple [ConfigFile] and save it "
"on disc:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Create new ConfigFile object.\n"
"var config = ConfigFile.new()\n"
"\n"
"# Store some values.\n"
"config.set_value(\"Player1\", \"player_name\", \"Steve\")\n"
"config.set_value(\"Player1\", \"best_score\", 10)\n"
"config.set_value(\"Player2\", \"player_name\", \"V3geta\")\n"
"config.set_value(\"Player2\", \"best_score\", 9001)\n"
"\n"
"# Save it to a file (overwrite if already exists).\n"
"config.save(\"user://scores.cfg\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Create new ConfigFile object.\n"
"var config = new ConfigFile();\n"
"\n"
"// Store some values.\n"
"config.SetValue(\"Player1\", \"player_name\", \"Steve\");\n"
"config.SetValue(\"Player1\", \"best_score\", 10);\n"
"config.SetValue(\"Player2\", \"player_name\", \"V3geta\");\n"
"config.SetValue(\"Player2\", \"best_score\", 9001);\n"
"\n"
"// Save it to a file (overwrite if already exists).\n"
"config.Save(\"user://scores.cfg\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This example shows how the above file could be loaded:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var score_data = {}\n"
"var config = ConfigFile.new()\n"
"\n"
"# Load data from a file.\n"
"var err = config.load(\"user://scores.cfg\")\n"
"\n"
"# If the file didn't load, ignore it.\n"
"if err != OK:\n"
"\treturn\n"
"\n"
"# Iterate over all sections.\n"
"for player in config.get_sections():\n"
"\t# Fetch the data for each section.\n"
"\tvar player_name = config.get_value(player, \"player_name\")\n"
"\tvar player_score = config.get_value(player, \"best_score\")\n"
"\tscore_data[player_name] = player_score\n"
"[/gdscript]\n"
"[csharp]\n"
"var score_data = new Godot.Collections.Dictionary();\n"
"var config = new ConfigFile();\n"
"\n"
"// Load data from a file.\n"
"Error err = config.Load(\"user://scores.cfg\");\n"
"\n"
"// If the file didn't load, ignore it.\n"
"if (err != Error.Ok)\n"
"{\n"
"\treturn;\n"
"}\n"
"\n"
"// Iterate over all sections.\n"
"foreach (String player in config.GetSections())\n"
"{\n"
"\t// Fetch the data for each section.\n"
"\tvar player_name = (String)config.GetValue(player, \"player_name\");\n"
"\tvar player_score = (int)config.GetValue(player, \"best_score\");\n"
"\tscore_data[player_name] = player_score;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Any operation that mutates the ConfigFile such as [method set_value], [method "
"clear], or [method erase_section], only changes what is loaded in memory. If "
"you want to write the change to a file, you have to save the changes with "
"[method save], [method save_encrypted], or [method save_encrypted_pass].\n"
"Keep in mind that section and property names can't contain spaces. Anything "
"after a space will be ignored on save and on load.\n"
"ConfigFiles can also contain manually written comment lines starting with a "
"semicolon ([code];[/code]). Those lines will be ignored when parsing the "
"file. Note that comments will be lost when saving the ConfigFile. This can "
"still be useful for dedicated server configuration files, which are typically "
"never overwritten without explicit user action.\n"
"[b]Note:[/b] The file extension given to a ConfigFile does not have any "
"impact on its formatting or behavior. By convention, the [code].cfg[/code] "
"extension is used here, but any other extension such as [code].ini[/code] is "
"also valid. Since neither [code].cfg[/code] nor [code].ini[/code] are "
"standardized, Godot's ConfigFile formatting may differ from files written by "
"other programs."
msgstr ""
"Cette classe d'aide peut être utilisée pour enregistrer des valeurs de type "
"[Variant] sur le système de fichier au format INI. Les valeurs enregistrées "
"sont identifiées par une section et une clé :\n"
"[codeblock lang=text]\n"
"[section]\n"
"une_clef=42\n"
"exemple_chaine=\"Bonjour le monde 3d !\"\n"
"un_vecteur=Vector3(1, 0, 2)\n"
"[/codeblock]\n"
"Les données stockées peuvent être enregistrées dans un fichier ou chargées "
"depuis un fichier, mais aussi par les objets ConfigFile qui peuvent être "
"utilisés directement sans accéder au système de fichiers.\n"
"L'exemple suivant montre comme créer un simple [ConfigFile] et l'enregistrer "
"sur le disque :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Créer un nouvel objet ConfigFile.\n"
"var config = ConfigFile.new()\n"
"\n"
"# Stocker quelques valeurs.\n"
"config.set_value(\"Joueur1\", \"nom_joueur\", \"Jean\")\n"
"config.set_value(\"Joueur1\", \"meilleur_score\", 10)\n"
"config.set_value(\"Joueur2\", \"nom_joueur\", \"V3geta\")\n"
"config.set_value(\"Joueur2\", \"meilleur_score\", 9001)\n"
"\n"
"# L'enregistrer sur dans un fichier (en écrasant le fichier déjà existant "
"s'il y en a un).\n"
"config.save(\"user://scores.cfg\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Créer un nouvel objet ConfigFile.\n"
"var config = new ConfigFile();\n"
"\n"
"// Stocker quelques valeurs.\n"
"config.set_value(\"Joueur1\", \"nom_joueur\", \"Jean\")\n"
"config.set_value(\"Joueur1\", \"meilleur_score\", 10)\n"
"config.set_value(\"Joueur2\", \"nom_joueur\", \"V3geta\")\n"
"config.set_value(\"Joueur2\", \"meilleur_score\", 9001)\n"
"\n"
"// L'enregistrer sur dans un fichier (en écrasant le fichier déjà existant "
"s'il y en a un).\n"
"config.Save(\"user://scores.cfg\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Cet exemple montre comme le fichier au-dessus peut-être chargé :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var donnees_score = {}\n"
"var config = ConfigFile.new()\n"
"\n"
"# Charger les données depuis le fichier.\n"
"var err = config.load(\"user://scores.cfg\")\n"
"\n"
"# Si le fichier n'a pu être chargé, ignorer la suite.\n"
"if err != OK:\n"
"\treturn\n"
"\n"
"# Itérer sur les sections.\n"
"for joueur in config.get_sections():\n"
"\t# Récupérer les données de chaque section.\n"
"\tvar nom_joueur = config.get_value(joueur, \"nom_joueur\")\n"
"\tvar score_joueur = config.get_value(joueur, \"meilleur_score\")\n"
"\tdonnees_score[nom_joueur] = score_joueur\n"
"[/gdscript]\n"
"[csharp]\n"
"var donnees_score = new Godot.Collections.Dictionary();\n"
"var config = new ConfigFile();\n"
"\n"
"// Charger les données depuis le fichier.\n"
"Error err = config.Load(\"user://scores.cfg\");\n"
"\n"
"// Si le fichier n'a pu être chargé, ignorer la suite.\n"
"if (err != Error.Ok)\n"
"{\n"
"\treturn;\n"
"}\n"
"\n"
"// Itérer sur les sections.\n"
"foreach (String joueur in config.GetSections())\n"
"{\n"
"\t// Récupérer les données de chaque section.\n"
"\tvar nom_joueur = (String)config.GetValue(joueur, \"nom_joueur\");\n"
"\tvar score_joueur = (int)config.GetValue(joueur, \"meilleur_score\");\n"
"\tscore_data[nom_joueur] = score_joueur;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Toutes les opérations qui modifient le ConfigFile comme [method set_value], "
"[method clear], ou [method erase_section], ne changent que les données en "
"mémoire. Si vous voulez aussi modifier le fichier, vous devez sauvegarder les "
"changements avec [method save], [method save_encrypted], ou [method "
"save_encrypted_pass].\n"
"Notez que les noms des sections et des propriétés ne peuvent contenir des "
"espaces. Tous les caractères après un espace seront ignorés à la sauvegarde "
"et au chargement.\n"
"Les ConfigFiles peuvent aussi contenir des lignes de commentaire écrites "
"manuellement qui doivent commencer par un point-virgule ([code];[/code]). Ces "
"lignes sont ignorées durant le parsing d'un fichier. À noter que ces "
"commentaires seront perdus durant l'enregistrement d'un ConfigFile. Ils "
"peuvent toujours servir pour les fichiers de configuration sur les serveurs, "
"qui ne sont typiquement jamais modifiés sans action explicite de "
"l'utilisateur.\n"
"[b]Note :[/b] L'extension du nom de fichier donné à un ConfigFile n'a aucun "
"impact sur son format ou son comportement. Par convention, l'extension "
"[code].cfg[/code] est utilisée ici, mais n'importe quelle autre extension "
"comme [code].ini[/code] est aussi valide. Comme ni [code].cfg[/code] ni "
"[code].ini[/code] ne sont standardisés, le format des ConfigFile de Godot "
"peuvent différer de ceux écrits par d'autres programmes."

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]\n"
"[b]Note:[/b] [AcceptDialog] is invisible by default. To make it visible, call "
"one of the [code]popup_*[/code] methods from [Window] on the node, such as "
"[method Window.popup_centered_clamped]."
msgstr ""
"Un dialogue utilisé 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 la pression 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(_on_canceled)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetCancelButton().Pressed += OnCanceled;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] [AcceptDialog] est invisible par défaut. Pour le rendre "
"visible, appelez l'une des méthodes [code]popup_*[/code] de [Window] sur le "
"nœud, comme [method Window.popup_centered_clamped]."

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 ""
"Return the description of the keyboard shortcuts and other contextual help "
"for this control."
msgstr ""
"Renvoie la description des raccourcis clavier et des autres aides "
"contextuelles pour ce contrôle."

msgid ""
"Godot calls this method to test if [param data] from a control's [method "
"_get_drag_data] can be dropped at [param at_position]. [param at_position] is "
"local to this control.\n"
"This method should only be used to test the data. Process the data in [method "
"_drop_data].\n"
"[b]Note:[/b] If the drag was initiated by a keyboard shortcut or [method "
"accessibility_drag], [param at_position] is set to [constant Vector2.INF], "
"and the currently selected item/text position should be used as the drop "
"position.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\t# Check position if it is relevant to you\n"
"\t# Otherwise, just check data\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"expected\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\t// Check position if it is relevant to you\n"
"\t// Otherwise, just check data\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"expected\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Godot appelle cette méthode pour vérifier si les [param data] de la méthode "
"[method _get_drag_data] d'un contrôle peuvent être déposées à la position "
"[param at_position]. [param at_position] est locale à ce contrôle.\n"
"Cette méthode ne devrait être utilisée uniquement que pour tester les "
"données. Traitez les données dans [method _drop_data].\n"
"[b]Note :[/b] Si le glissement a été lancé par un raccourci clavier ou "
"[method accessibility_drag], [param at_position] est définie à [constant "
"Vector2.INF], et la position de l'objet/texte actuellement sélectionné doit "
"être utilisée comme position de dépôt.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\t# Vérifiez la position si c'est important pour vous\n"
"\t# Sinon, vérifiez juste les données\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"attendu\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\t// Vérifiez la position si c'est important pour vous\n"
"\t// Sinon, vérifiez juste les données\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"attendu\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Godot calls this method to pass you the [param data] from a control's [method "
"_get_drag_data] result. Godot first calls [method _can_drop_data] to test if "
"[param data] is allowed to drop at [param at_position] where [param "
"at_position] is local to this control.\n"
"[b]Note:[/b] If the drag was initiated by a keyboard shortcut or [method "
"accessibility_drag], [param at_position] is set to [constant Vector2.INF], "
"and the currently selected item/text position should be used as the drop "
"position.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"color\")\n"
"\n"
"func _drop_data(position, data):\n"
"\tvar color = data[\"color\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"color\");\n"
"}\n"
"\n"
"public override void _DropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\tColor color = data.AsGodotDictionary()[\"color\"].AsColor();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Godot appelle cette méthode pour vous transmettre les [param data] du "
"résultat de [method _get_drag_data] d'un contrôle. Godot appelle d'abord "
"[method _can_drop_data] pour vérifier si [param data] est autorisé à être "
"déposé à la position [param at_position] où [param at_position] est locale à "
"ce contrôle.\n"
"[b]Note :[/b] Si le glissement a été lancé par un raccourci clavier ou "
"[method accessibility_drag], [param at_position] est définie à [constant "
"Vector2.INF], et la position de l'objet/texte actuellement sélectionné doit "
"être utilisée comme position de dépôt.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"couleur\")\n"
"\n"
"func _drop_data(position, data):\n"
"\tvar color = data[\"couleur\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"couleur\");\n"
"}\n"
"\n"
"public override void _DropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\tColor color = data.AsGodotDictionary()[\"couleur\"].AsColor();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Override this method to return a human-readable description of the position "
"of the child [param node] in the custom container, added to the [member "
"accessibility_name]."
msgstr ""
"Redéfinissez cette méthode pour renvoyer une description facilement lisible "
"de la position du nœud enfant [param node] dans le conteneur personnalisé, "
"ajouté à [member accessibility_name]."

msgid ""
"Godot calls this method to get data that can be dragged and dropped onto "
"controls that expect drop data. Returns [code]null[/code] if there is no data "
"to drag. Controls that want to receive drop data should implement [method "
"_can_drop_data] and [method _drop_data]. [param at_position] is local to this "
"control. Drag may be forced with [method force_drag].\n"
"A preview that will follow the mouse that should represent the data can be "
"set with [method set_drag_preview]. A good time to set the preview is in this "
"method.\n"
"[b]Note:[/b] If the drag was initiated by a keyboard shortcut or [method "
"accessibility_drag], [param at_position] is set to [constant Vector2.INF], "
"and the currently selected item/text position should be used as the drag "
"position.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_drag_data(position):\n"
"\tvar mydata = make_data() # This is your custom method generating the drag "
"data.\n"
"\tset_drag_preview(make_preview(mydata)) # This is your custom method "
"generating the preview of the drag data.\n"
"\treturn mydata\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\tvar myData = MakeData(); // This is your custom method generating the drag "
"data.\n"
"\tSetDragPreview(MakePreview(myData)); // This is your custom method "
"generating the preview of the drag data.\n"
"\treturn myData;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Godot appelle cette méthode pour obtenir des données qui peuvent être "
"glissées et déposées sur des contrôles qui attendent des données de glisser-"
"déposer. Renvoie [code]null[/code] s'il n'y a pas de données à glisser. Les "
"contrôles qui veulent recevoir des données de glisser-déposer doivent "
"implémenter [method _can_drop_data] et [method _drop_data]. [param "
"at_position] est locale à ce contrôle. Le glissement peut être forcé avec "
"[method force_drag].\n"
"Un aperçu suivant la souris représentant les données peut être défini avec "
"[method set_drag_preview]. L'appel à cette méthode est un bon moment définir "
"cet aperçu.\n"
"[b]Note :[/b] Si le glissement a été lancé par un raccourci clavier ou "
"[method accessibility_drag], [param at_position] est définie à [constant "
"Vector2.INF], et la position de l'objet/texte actuellement sélectionné doit "
"être utilisée comme position de dépôt.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_drag_data(position):\n"
"\tvar mesdonnees = creer_donnees() # Ceci est votre méthode personnalisées "
"générant les données du glissement.\n"
"\tset_drag_preview(creer_apercu(mesdonnees)) # Ceci est votre méthode "
"personnalisée générant l'aperçu des données du glissement.\n"
"\treturn mesdonnees\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\tvar mesDonnees = CreerDonnees(); // Ceci est votre méthode personnalisées "
"générant les données du glissement.\n"
"\tSetDragPreview(CreerApercu(mesDonnees)); // Ceci est votre méthode "
"personnalisée générant l'aperçu des données du glissement.\n"
"\treturn mesDonnees;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"Virtual method to be implemented by the user. Returns the tooltip text for "
"the position [param at_position] in control's local coordinates, which will "
"typically appear when the cursor is resting over this control. See [method "
"get_tooltip].\n"
"[b]Note:[/b] If this method returns an empty [String] and [method "
"_make_custom_tooltip] is not overridden, no tooltip is displayed."
msgstr ""
"Méthode virtuelle à implémenter par l'utilisateur. Renvoie le texte d'info-"
"bulle pour la position [param at_position] dans les coordonnées locales du "
"contrôle, ce qui apparaîtra généralement lorsque le curseur reste sur ce "
"contrôle. Voir [method get_tooltip].\n"
"[b]Note :[/b] Si cette méthode renvoie une [String] vide et [method "
"_make_custom_tooltip] n'est pas redéfinie, aucune info-bulle n'est affichée."

msgid ""
"Virtual method to be implemented by the user. Override this method to handle "
"and accept inputs on UI elements. See also [method accept_event].\n"
"[b]Example:[/b] Click on the control to print a message:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _gui_input(event):\n"
"\tif event is InputEventMouseButton:\n"
"\t\tif event.button_index == MOUSE_BUTTON_LEFT and event.pressed:\n"
"\t\t\tprint(\"I've been clicked D:\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _GuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton mb)\n"
"\t{\n"
"\t\tif (mb.ButtonIndex == MouseButton.Left && mb.Pressed)\n"
"\t\t{\n"
"\t\t\tGD.Print(\"I've been clicked D:\");\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If the [param event] inherits [InputEventMouse], this method will [b]not[/b] "
"be called when:\n"
"- the control's [member mouse_filter] is set to [constant "
"MOUSE_FILTER_IGNORE];\n"
"- the control is obstructed by another control on top, that doesn't have "
"[member mouse_filter] set to [constant MOUSE_FILTER_IGNORE];\n"
"- the control's parent has [member mouse_filter] set to [constant "
"MOUSE_FILTER_STOP] or has accepted the event;\n"
"- the control's parent has [member clip_contents] enabled and the [param "
"event]'s position is outside the parent's rectangle;\n"
"- the [param event]'s position is outside the control (see [method "
"_has_point]).\n"
"[b]Note:[/b] The [param event]'s position is relative to this control's "
"origin."
msgstr ""
"Méthode virtuelle à implémenter par l'utilisateur. Redéfinissez cette méthode "
"pour gérer et accepter des entrées sur des éléments d'interface utilisateur. "
"Voir aussi [method accept_event].\n"
"[b]Exemple :[/b] Cliquer sur un contrôle pour afficher un message :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _gui_input(event):\n"
"\tif event is InputEventMouseButton:\n"
"\t\tif event.button_index == MOUSE_BUTTON_LEFT and event.pressed:\n"
"\t\t\tprint(\"J'ai été cliqué ! :D\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _GuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton mb)\n"
"\t{\n"
"\t\tif (mb.ButtonIndex == MouseButton.Left && mb.Pressed)\n"
"\t\t{\n"
"\t\t\tGD.Print(\"J'ai été cliqué ! :D\");\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Si l'évènement [param event] hérite de [InputEventMouse], cette méthode ne "
"sera [b]pas[/b] appelée lorsque :\n"
"- le [member mouse_filter] du contrôle est défini à [constant "
"MOUSE_FILTER_IGNORE] ;\n"
"- le contrôle est recouvert par un autre [Control], qui n'a pas [member "
"mouse_filter] défini à [constant MOUSE_FILTER_IGNORE] ;\n"
"- le parent de ce contrôle a [member mouse_filter] défini à [constant "
"MOUSE_FILTER_STOP] ou a accepté l'événement ;\n"
"- le parent du contrôle a [member clip_contents] activé et la position de "
"[param event] est en dehors du rectangle du parent;\n"
"- la position d'[param event] est en dehors du contrôle (voir [method "
"_has_point]).\n"
"[b]Note :[/b] La position d'[param event] est relative à l'origine du "
"contrôle."

msgid ""
"Virtual method to be implemented by the user. Returns whether the given "
"[param point] is inside this control.\n"
"If not overridden, default behavior is checking if the point is within "
"control's Rect.\n"
"[b]Note:[/b] If you want to check if a point is inside the control, you can "
"use [code]Rect2(Vector2.ZERO, size).has_point(point)[/code]."
msgstr ""
"Méthode virtuelle à implémenter par l'utilisateur. Renvoie si le [param "
"point] donné est à l'intérieur de ce contrôle.\n"
"Si non redéfini, le comportement par défaut vérifie si le point se trouve "
"dans le Rect du contrôle.\n"
"[b]Note :[/b] Si vous voulez vérifier si un point est à l'intérieur du "
"contrôle, vous pouvez utiliser [code]Rect2(Vector2.ZERO, "
"size).has_point(point)[/code]."

msgid ""
"User defined BiDi algorithm override function.\n"
"Returns an [Array] of [Vector3i] text ranges and text base directions, in the "
"left-to-right order. Ranges should cover full source [param text] without "
"overlaps. BiDi algorithm will be used on each range separately."
msgstr ""
"Fonction de redéfinition de l'algorithme BiDi définie par l'utilisateur.\n"
"Renvoie un [Array] de [Vector3i] de plages de texte et directions de base de "
"texte, dans l'ordre gauche à droite. Les plages devraient couvrir le texte "
"source complet [param text] sans chevauchements. L'algorithme BiDi sera "
"utilisé sur chaque plage séparément."

msgid ""
"Marks an input event as handled. Once you accept an input event, it stops "
"propagating, even to nodes listening to [method Node._unhandled_input] or "
"[method Node._unhandled_key_input].\n"
"[b]Note:[/b] This does not affect the methods in [Input], only the way events "
"are propagated."
msgstr ""
"Marque un événement d'entrée comme traité. Une fois un événement accepté, il "
"arrête de se propager, même aux nœuds écoutant [method Node._unhandled_input] "
"ou [method Node._unhandled_key_input].\n"
"[b]Note :[/b] Cela n'affecte pas les méthodes dans [Input], seulement la "
"façon dont les événements sont propagés."

msgid "Starts drag-and-drop operation without using a mouse."
msgstr "Commence une opération de glisser-déposer sans utiliser de souris."

msgid "Ends drag-and-drop operation without using a mouse."
msgstr "Termine une opération de glisser-déposer sans utiliser de souris."

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].\n"
"[b]Example:[/b] Override a [Label]'s color and reset it later:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Given the child Label node \"MyLabel\", override its font color with a "
"custom value.\n"
"$MyLabel.add_theme_color_override(\"font_color\", Color(1, 0.5, 0))\n"
"# Reset the font color of the child label.\n"
"$MyLabel.remove_theme_color_override(\"font_color\")\n"
"# Alternatively it can be overridden with the default value from the Label "
"type.\n"
"$MyLabel.add_theme_color_override(\"font_color\", "
"get_theme_color(\"font_color\", \"Label\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"// Given the child Label node \"MyLabel\", override its font color with a "
"custom value.\n"
"GetNode<Label>(\"MyLabel\").AddThemeColorOverride(\"font_color\", new "
"Color(1, 0.5f, 0));\n"
"// Reset the font color of the child label.\n"
"GetNode<Label>(\"MyLabel\").RemoveThemeColorOverride(\"font_color\");\n"
"// Alternatively it can be overridden with the default value from the Label "
"type.\n"
"GetNode<Label>(\"MyLabel\").AddThemeColorOverride(\"font_color\", "
"GetThemeColor(\"font_color\", \"Label\"));\n"
"[/csharp]\n"
"[/codeblocks]"
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 "
"d'éléments de thème pour le contrôle. Une redéfinie peut être retirée avec "
"[method remove_theme_color_override].\n"
"Voir aussi [method get_theme_color].\n"
"[b]Exemple :[/b] Redéfinir la couleur d'un [Label] et la réinitialiser plus "
"tard :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Compte tenu du nœud enfant Label \"MonLabel\", remplace sa couleur de "
"police par une valeur personnalisée.\n"
"$MonLabel.add_theme_color_override(\"font_color\", Color(1, 0.5, 0))\n"
"# Réinitialise la couleur de police du Label enfant.\n"
"$MonLabel.remove_theme_color_override(\"font_color\")\n"
"# Alternativement, elle peut être redéfinie avec la valeur par défaut du type "
"Label.\n"
"$MonLabel.add_theme_color_override(\"font_color\", "
"get_theme_color(\"font_color\", \"Label\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"// Compte tenu du nœud enfant Label \"MonLabel\", remplace sa couleur de "
"police par une valeur personnalisée.\n"
"GetNode<Label>(\"MonLabel\").AddThemeColorOverride(\"font_color\", new "
"Color(1, 0.5f, 0));\n"
"// Réinitialise la couleur de police du Label enfant.\n"
"GetNode<Label>(\"MonLabel\").RemoveThemeColorOverride(\"font_color\");\n"
"// Alternativement, elle peut être redéfinie avec la valeur par défaut du "
"type Label.\n"
"GetNode<Label>(\"MonLabel\").AddThemeColorOverride(\"font_color\", "
"GetThemeColor(\"font_color\", \"Label\"));\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"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].\n"
"[b]Example:[/b] Modify a property in a [StyleBox] by duplicating it:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# The snippet below assumes the child node \"MyButton\" has a StyleBoxFlat "
"assigned.\n"
"# Resources are shared across instances, so we need to duplicate it\n"
"# to avoid modifying the appearance of all other buttons.\n"
"var new_stylebox_normal = "
"$MyButton.get_theme_stylebox(\"normal\").duplicate()\n"
"new_stylebox_normal.border_width_top = 3\n"
"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
"$MyButton.add_theme_stylebox_override(\"normal\", new_stylebox_normal)\n"
"# Remove the stylebox override.\n"
"$MyButton.remove_theme_stylebox_override(\"normal\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// The snippet below assumes the child node \"MyButton\" has a StyleBoxFlat "
"assigned.\n"
"// Resources are shared across instances, so we need to duplicate it\n"
"// to avoid modifying the appearance of all other buttons.\n"
"StyleBoxFlat newStyleboxNormal = "
"GetNode<Button>(\"MyButton\").GetThemeStylebox(\"normal\").Duplicate() as "
"StyleBoxFlat;\n"
"newStyleboxNormal.BorderWidthTop = 3;\n"
"newStyleboxNormal.BorderColor = new Color(0, 1, 0.5f);\n"
"GetNode<Button>(\"MyButton\").AddThemeStyleboxOverride(\"normal\", "
"newStyleboxNormal);\n"
"// Remove the stylebox override.\n"
"GetNode<Button>(\"MyButton\").RemoveThemeStyleboxOverride(\"normal\");\n"
"[/csharp]\n"
"[/codeblocks]"
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 d'éléments de thème pour le contrôle. Une redéfinie peut être "
"retirée avec [method remove_theme_stylebox_override].\n"
"Voir aussi [method get_theme_stylebox].\n"
"[b]Exemple :[/b] Modifier une propriété dans une [StyleBox] en la "
"dupliquant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Le code ci-dessous part du principe que le nœud enfant \"MonBouton\" a une "
"StyleBoxFlat qui lui est assignée.\n"
"# Les ressources sont partagées entre les instances, il est donc nécessaire "
"de les dupliquer\n"
"# pour éviter que les modifications ne se répercutent sur tous les autres "
"boutons.\n"
"var nouvelle_stylebox_normal = "
"$MyButton.get_stylebox(\"normal\").duplicate()\n"
"nouvelle_stylebox_normal.border_width_top = 3\n"
"nouvelle_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
"$MonBouton.add_stylebox_override(\"normal\", nouvelle_stylebox_normal)\n"
"# Retirer la redéfinition de la stylebox.\n"
"$MonBouton.add_stylebox_override(\"normal\", null)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Le code ci-dessous part du principe que le nœud enfant \"MonBouton\" a une "
"StyleBoxFlat qui lui est assignée.\n"
"// Les ressources sont partagées entre les instances, il est donc nécessaire "
"de les dupliquer\n"
"// pour éviter que les modifications ne se répercutent sur tous les autres "
"boutons.\n"
"StyleBoxFlat nouvelleStyleboxNomal = "
"GetNode<Button>(\"MonBouton\").GetThemeStylebox(\"normal\").Duplicate() as "
"StyleBoxFlat;\n"
"nouvelleStyleboxNomal.BorderWidthTop = 3;\n"
"nouvelleStyleboxNomal.BorderColor = new Color(0, 1, 0.5f);\n"
"GetNode<Button>(\"MonBouton\").AddThemeStyleboxOverride(\"normal\", "
"nouvelleStyleboxNomal);\n"
"// Retirer la redéfinition de la stylebox.\n"
"GetNode<Button>(\"MonBouton\").RemoveThemeStyleboxOverride(\"normal\");\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"Finds the next [Control] that can receive the focus on the specified [enum "
"Side].\n"
"[b]Note:[/b] This is different from [method get_focus_neighbor], which "
"returns the path of a specified focus neighbor."
msgstr ""
"Trouve le prochain [Control] qui peut recevoir le focus du côté [enum Side] "
"spécifié.\n"
"[b]Note :[/b] Ceci est différent de [method get_focus_neighbor], qui renvoie "
"le chemin d'un voisin de focus spécifié."

msgid ""
"Forces drag and bypasses [method _get_drag_data] and [method "
"set_drag_preview] by passing [param data] and [param preview]. Drag will "
"start even if the mouse is neither over nor pressed on this control.\n"
"The methods [method _can_drop_data] and [method _drop_data] must be "
"implemented on controls that want to receive drop data."
msgstr ""
"Force le glissement et contourne [method _get_drag_data] et [method "
"set_drag_preview] en passant [param data] et [param preview]. Le glissement "
"va commencer même si la souris n'est ni sur, ni appuyée sur ce contrôle.\n"
"Les méthodes [method _can_drop_data] et [method _drop_data] doivent être "
"implémentées pour les contrôles qui veulent recevoir des données de "
"glissement."

msgid ""
"Returns the anchor for the specified [enum Side]. A getter method for [member "
"anchor_bottom], [member anchor_left], [member anchor_right] and [member "
"anchor_top]."
msgstr ""
"Renvoie l'ancre du côté [enum Side] spécifié. Une méthode getter pour [member "
"anchor_bottom], [member anchor_left], [member anchor_right] et [member "
"anchor_top]."

msgid ""
"Returns [member offset_left] and [member offset_top]. See also [member "
"position]."
msgstr ""
"Renvoie [member offset_left] et [member offset_top]. Voir aussi [member "
"position]."

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 the mouse cursor shape for this control when hovered over [param "
"position] in local coordinates. For most controls, this is the same as "
"[member mouse_default_cursor_shape], but some built-in controls implement "
"more complex logic."
msgstr ""
"Renvoie la forme du curseur de la souris pour ce contrôle lorsque survolé à "
"la position [param position] dans les coordonnées locales. Pour la plupart "
"des contrôles, cela revient à [member mouse_default_cursor_shape], mais "
"certains contrôles intégrés implémentent une logique plus complexe."

msgid "Returns [member offset_right] and [member offset_bottom]."
msgstr "Renvoie [member offset_right] et [member offset_bottom]."

msgid ""
"Returns the [member focus_mode], but takes the [member "
"focus_behavior_recursive] into account. If [member focus_behavior_recursive] "
"is set to [constant FOCUS_BEHAVIOR_DISABLED], or it is set to [constant "
"FOCUS_BEHAVIOR_INHERITED] and its ancestor is set to [constant "
"FOCUS_BEHAVIOR_DISABLED], then this returns [constant FOCUS_NONE]."
msgstr ""
"Renvoie le [member focus_mode], mais prend en compte le [member "
"focus_behavior_recursive]. Si [member focus_behavior_recursive] est défini à "
"[constant FOCUS_BEHAVIOR_DISABLED], ou est défini à [constant "
"FOCUS_BEHAVIOR_INHERITED] et son ancêtre est défini à [constant "
"FOCUS_BEHAVIOR_DISABLED], alors ceci renvoie [constant FOCUS_NONE]."

msgid ""
"Returns the focus neighbor for the specified [enum Side]. A getter method for "
"[member focus_neighbor_bottom], [member focus_neighbor_left], [member "
"focus_neighbor_right] and [member focus_neighbor_top].\n"
"[b]Note:[/b] To find the next [Control] on the specific [enum Side], even if "
"a neighbor is not assigned, use [method find_valid_focus_neighbor]."
msgstr ""
"Renvoie le voisin de focus pour le côte [enum Side] spécifié. Une méthode "
"getter pour [member focus_neighbor_bottom], [member focus_neighbor_left], "
"[member focus_neighbor_right] et [member focus_neighbor_top].\n"
"[b]Note :[/b] Pour trouver le prochain [Control] sur le [enum Side] "
"spécifique, même si un voisin n'est pas assigné, utilisez [method "
"find_valid_focus_neighbor]."

msgid ""
"Returns the position and size of the control relative to the containing "
"canvas. See [member global_position] and [member size].\n"
"[b]Note:[/b] If the node itself or any parent [CanvasItem] between the node "
"and the canvas have a non default rotation or skew, the resulting size is "
"likely not meaningful.\n"
"[b]Note:[/b] Setting [member Viewport.gui_snap_controls_to_pixels] to "
"[code]true[/code] can lead to rounding inaccuracies between the displayed "
"control and the returned [Rect2]."
msgstr ""
"Renvoie la position et la taille du contrôle relativement au canevas le "
"contenant. Voir [member global_position] et [member size].\n"
"[b]Note :[/b] Si le nœud lui-même ou tout parent [CanvasItem] entre le nœud "
"et le canevas ont une rotation ou un cisaillement non par défaut, la taille "
"résultante n'est probablement pas significative.\n"
"[b]Note :[/b] Définir [member Viewport.gui_snap_controls_to_pixels] à "
"[code]true[/code] peut conduire à des erreurs d'arrondi entre le contrôle "
"affiché et le [Rect2] renvoyé."

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 [member mouse_filter], but takes the [member "
"mouse_behavior_recursive] into account. If [member mouse_behavior_recursive] "
"is set to [constant MOUSE_BEHAVIOR_DISABLED], or it is set to [constant "
"MOUSE_BEHAVIOR_INHERITED] and its ancestor is set to [constant "
"MOUSE_BEHAVIOR_DISABLED], then this returns [constant MOUSE_FILTER_IGNORE]."
msgstr ""
"Renvoie le [member mouse_filter], mais prend en compte le [member "
"mouse_behavior_recursive]. Si [member mouse_behavior_recursive] est défini à "
"[constant MOUSE_BEHAVIOR_DISABLED], ou il est défini à [constant "
"MOUSE_BEHAVIOR_INHERITED] et son ancêtre est défini à [constant "
"MOUSE_BEHAVIOR_DISABLED], alors cela renvoie [constant MOUSE_FILTER_IGNORE]."

msgid ""
"Returns the offset for the specified [enum Side]. A getter method for [member "
"offset_bottom], [member offset_left], [member offset_right] and [member "
"offset_top]."
msgstr ""
"Renvoie le décalage pour le côté [enum Side] spécifié. Une méthode getter "
"pour [member offset_bottom], [member offset_left], [member offset_right] et "
"[member offset_top]."

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 the position and size of the control in the coordinate system of the "
"containing node. See [member position], [member scale] and [member size].\n"
"[b]Note:[/b] If [member rotation] is not the default rotation, the resulting "
"size is not meaningful.\n"
"[b]Note:[/b] Setting [member Viewport.gui_snap_controls_to_pixels] to "
"[code]true[/code] can lead to rounding inaccuracies between the displayed "
"control and the returned [Rect2]."
msgstr ""
"Renvoie la position et la taille du contrôle dans le système de coordonnées "
"du nœud le contenant. Voir [member position], [member scale] et [member "
"size].\n"
"[b]Note :[/b] Si [member rotation] n'est pas la rotation par défaut, la "
"taille résultante n'est pas significative.\n"
"[b]Note :[/b] Définir [member Viewport.gui_snap_controls_to_pixels] à "
"[code]true[/code] peut conduire à des erreurs d'arrondi entre le contrôle "
"affiché et le [Rect2] renvoyé."

msgid ""
"Returns the position of this [Control] in global screen coordinates (i.e. "
"taking window position into account). Mostly useful for editor plugins.\n"
"Equivalent to [code]get_screen_transform().origin[/code] (see [method "
"CanvasItem.get_screen_transform]).\n"
"[b]Example:[/b] Show a popup at the mouse position:\n"
"[codeblock]\n"
"popup_menu.position = get_screen_position() + "
"get_screen_transform().basis_xform(get_local_mouse_position())\n"
"\n"
"# The above code is equivalent to:\n"
"popup_menu.position = get_screen_transform() * get_local_mouse_position()\n"
"\n"
"popup_menu.reset_size()\n"
"popup_menu.popup()\n"
"[/codeblock]"
msgstr ""
"Renvoie la position de ce [Control] dans les coordonnées globales de l'écran "
"(c.-à-d. en tenant compte de la position de la fenêtre). Généralement utile "
"pour les plugins éditeur.\n"
"Équivalent à [code]get_screen_transform().origin[/code] (voir [method "
"CanvasItem.get_screen_transform]).\n"
"[b]Exemple :[/b] Afficher une popup à la position de la souris :\n"
"[codeblock]\n"
"menu_popup.position = get_screen_position() + "
"get_screen_transform().basis_xform(get_local_mouse_position())\n"
"\n"
"# Le code au dessus est équivalent à :\n"
"menu_popup.position = get_screen_transform() * get_local_mouse_position()\n"
"\n"
"menu_popup.reset_size()\n"
"menu_popup.popup()\n"
"[/codeblock]"

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]. If "
"[param theme_type] is omitted the class name of the current control is used "
"as the type, or [member theme_type_variation] if it is defined. If the type "
"is a class name its parent classes are also checked, in order of inheritance. "
"If the type is a variation its base types are checked, in order of "
"dependency, then the control's class name and its parent classes are "
"checked.\n"
"For the current control its local overrides are considered first (see [method "
"add_theme_color_override]), then its assigned [member theme]. After the "
"current control, each parent control and its assigned [member theme] are "
"considered; controls without a [member theme] assigned are skipped. If no "
"matching [Theme] is found in the tree, the custom project [Theme] (see "
"[member ProjectSettings.gui/theme/custom]) and the default [Theme] are used "
"(see [ThemeDB]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Get the font color defined for the current Control's class, if it "
"exists.\n"
"\tmodulate = get_theme_color(\"font_color\")\n"
"\t# Get the font color defined for the Button class.\n"
"\tmodulate = get_theme_color(\"font_color\", \"Button\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Get the font color defined for the current Control's class, if it "
"exists.\n"
"\tModulate = GetThemeColor(\"font_color\");\n"
"\t// Get the font color defined for the Button class.\n"
"\tModulate = GetThemeColor(\"font_color\", \"Button\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie une [Color] du premier [Theme] correspondant dans l'arborescence si "
"ce [Theme] a un élément de couleur avec le nom [param name] et le type [param "
"theme_type] spécifiés. Si [param theme_type] n'est pas précisé, le nom de "
"classe du contrôle actuel sera utilisé pour le type, ou [member "
"theme_type_variation] si défini. Si le type est un nom de classe, ses classes "
"parentes sont également testées, par ordre d'héritage. Si le type est une "
"variation, ses types de bases sont vérifiés, dans l'ordre des dépendances, et "
"enfin le nom de la classe du contrôle et ses classes parentes sont "
"vérifiées.\n"
"Pour le contrôle actuel, ses redéfinitions locales sont considérées en "
"premier (voir [method add_theme_color_override]), puis son [member theme] "
"assigné. Après le contrôle actuel, chaque contrôle parent et son [member "
"theme] assigné seront pris en considération, les contrôles sans de [member "
"theme] assigné sont ignorés. Si aucune correspondance de [Theme] n'est "
"trouvée dans l'arborescence, le [Theme] personnalisé du projet (voir [member "
"ProjectSettings.gui/theme/custom]) et le [Theme] par défaut seront utilisés "
"(voir [ThemeDB]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Obtenir la couleur de police définie pour la classe du Control actuel, si "
"elle existe.\n"
"\tmodulate = get_theme_color(\"font_color\")\n"
"\t# Obtenir la couleur de police définie pour la classe Button.\n"
"\tmodulate = get_theme_color(\"font_color\", \"Button\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Obtenir la couleur de police définie pour la classe du Control actuel, "
"si elle existe.\n"
"\tModulate = GetThemeColor(\"font_color\");\n"
"\t// Obtenir la couleur de police définie pour la classe Button.\n"
"\tModulate = GetThemeColor(\"font_color\", \"Button\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 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 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 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 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 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 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 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 ""
"Returns the tooltip text for the position [param at_position] in control's "
"local coordinates, which will typically appear when the cursor is resting "
"over this control. By default, it returns [member tooltip_text].\n"
"This method can be overridden to customize its behavior. See [method "
"_get_tooltip].\n"
"[b]Note:[/b] If this method returns an empty [String] and [method "
"_make_custom_tooltip] is not overridden, no tooltip is displayed."
msgstr ""
"Renvoie le texte d'info-bulle pour la position [param at_position] dans les "
"coordonnées locales du contrôle, qui apparaîtra généralement lorsque le "
"curseur reste sur ce contrôle. Par défaut, cela renvoie [member "
"tooltip_text].\n"
"Cette méthode peut être redéfinie pour personnaliser son comportement. Voir "
"[method _get_tooltip].\n"
"[b]Not e:[/b] Si cette méthode renvoie une [String] vide et [method "
"_make_custom_tooltip] n'est pas redéfinie, aucune info-bulle n'est affichée."

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 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 matching [Theme] in the tree that has "
"an icon 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 d'icône 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 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 matching [Theme] in the tree that has "
"a stylebox 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 stylebox 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 [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 ""
"Returns [code]true[/code] if the layout is right-to-left. See also [member "
"layout_direction]."
msgstr ""
"Renvoie [code]true[/code] si la mise en page est de droite à gauche. Voir "
"aussi [member layout_direction]."

msgid "Give up the focus. No other control will be able to receive input."
msgstr "Relâche le focus. Aucun autre contrôle ne pourra recevoir d'entrées."

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 the anchor for the specified [enum Side] to [param anchor]. A setter "
"method for [member anchor_bottom], [member anchor_left], [member "
"anchor_right] and [member anchor_top].\n"
"If [param keep_offset] is [code]true[/code], offsets aren't updated after "
"this operation.\n"
"If [param push_opposite_anchor] is [code]true[/code] and the opposite anchor "
"overlaps this anchor, the opposite one will have its value overridden. For "
"example, when setting left anchor to 1 and the right anchor has value of 0.5, "
"the right anchor will also get value of 1. If [param push_opposite_anchor] "
"was [code]false[/code], the left anchor would get value 0.5."
msgstr ""
"Définit l'ancre pour le côté [enum Side] spécifié à [param anchor]. Une "
"méthode setter pour [member anchor_bottom], [member anchor_left], [member "
"anchor_right] et [member anchor_top].\n"
"Si [param keep_offset] vaut [code]true[/code], les décalages ne seront pas "
"mises à jour après cette opération.\n"
"Si [param push_opposite_anchor] vaut [code]true[/code] et que l'ancre opposée "
"recouvre cette ancre, l'ancre opposée aura sa valeur redéfinie. Par exemple, "
"lorsque l'ancre gauche est fixée à 1 et que l'ancre droite a une valeur de "
"0.5, l'ancre droite aura également une valeur de 1. Si [param "
"push_opposite_anchor] valait [code]false[/code], l'ancre gauche aurait alors "
"une valeur de 0.5."

msgid ""
"Works the same as [method set_anchor], but instead of [code]keep_offset[/"
"code] argument and automatic update of offset, it allows to set the offset "
"yourself (see [method set_offset])."
msgstr ""
"Fonctionne comme [method set_anchor], mais au lieu de l'argument "
"[code]keep_offset[/code] et de la mise à jour automatique du décalage, elle "
"vous permet de définir le décalage vous-même (voir [method set_offset])."

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 the given callables to be used instead of the control's own drag-and-"
"drop virtual methods. If a callable is empty, its respective virtual method "
"is used as normal.\n"
"The arguments for each callable should be exactly the same as their "
"respective virtual methods, which would be:\n"
"- [param drag_func] corresponds to [method _get_drag_data] and requires a "
"[Vector2];\n"
"- [param can_drop_func] corresponds to [method _can_drop_data] and requires "
"both a [Vector2] and a [Variant];\n"
"- [param drop_func] corresponds to [method _drop_data] and requires both a "
"[Vector2] and a [Variant]."
msgstr ""
"Définit les callables donnés à être utilisés au lieu des propres méthodes "
"virtuelles de glisser-déposer du contrôle. Si un callable est vide, sa "
"méthode virtuelle respective est utilisée comme habituellement.\n"
"Les arguments pour chaque appelable devraient être exactement les mêmes que "
"leurs méthodes virtuelles respectives, ce qui serait :\n"
"- [param drag_func] correspond à [method _get_drag_data] et nécessite un "
"[Vector2];\n"
"- [param can_drop_func] correspond à [method _can_drop_data] et nécessite à "
"la fois un [Vector2] et un [Variant];\n"
"- [param drop_func] correspond à [method _drop_data] et nécessite à la fois "
"un [Vector2] et un [Variant]."

msgid ""
"Shows the given control at the mouse pointer. A good time to call this method "
"is in [method _get_drag_data]. The control must not be in the scene tree. You "
"should not free the control, and you should not keep a reference to the "
"control beyond the duration of the drag. It will be deleted automatically "
"after the drag has ended.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@export var color = Color(1, 0, 0, 1)\n"
"\n"
"func _get_drag_data(position):\n"
"\t# Use a control that is not in the tree\n"
"\tvar cpb = ColorPickerButton.new()\n"
"\tcpb.color = color\n"
"\tcpb.size = Vector2(50, 50)\n"
"\tset_drag_preview(cpb)\n"
"\treturn color\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export]\n"
"private Color _color = new Color(1, 0, 0, 1);\n"
"\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\t// Use a control that is not in the tree\n"
"\tvar cpb = new ColorPickerButton();\n"
"\tcpb.Color = _color;\n"
"\tcpb.Size = new Vector2(50, 50);\n"
"\tSetDragPreview(cpb);\n"
"\treturn _color;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Affiche le contrôle donné comme curseur de la souris. Un bon moment pour "
"appeler cette méthode est dans [method _get_drag_data]. Le contrôle doit ne "
"pas être dans l'arborescence de la scène. Vous ne devriez pas libérer le "
"contrôle, et vous ne devriez pas garder une référence du contrôle en-dehors "
"de la durée du glissement. Il sera supprimé automatiquement après le "
"glissement soit terminé.\n"
"[codeblocks]\n"
"[gdscript]\n"
"export (Color, RGBA) var couleur = Color(1, 0, 0, 1)\n"
"\n"
"func get_drag_data(position):\n"
"\t# Utiliser un contrôle qui n'est pas dans l'arborescence\n"
"\tvar cpb = ColorPickerButton.new()\n"
"\tcpb.color = couleur\n"
"\tcpb.rect_size = Vector2(50, 50)\n"
"\tset_drag_preview(cpb)\n"
"\treturn couleur\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export]\n"
"private Color _couleur = new Color(1, 0, 0, 1);\n"
"\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\t// Utiliser un contrôle qui n'est pas dans l'arborescence\n"
"\tvar cpb = new ColorPickerButton();\n"
"\tcpb.Color = _couleur;\n"
"\tcpb.Size = new Vector2(50, 50);\n"
"\tSetDragPreview(cpb);\n"
"\treturn _couleur;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 focus neighbor for the specified [enum Side] to the [Control] at "
"[param neighbor] node path. A setter method for [member "
"focus_neighbor_bottom], [member focus_neighbor_left], [member "
"focus_neighbor_right] and [member focus_neighbor_top]."
msgstr ""
"Définit le voisin de focus pour le côté [enum Side] spécifié au [Control] au "
"chemin de nœud [param neighbor]. Une méthode setter pour [member "
"focus_neighbor_bottom], [member focus_neighbor_left], [member "
"focus_neighbor_right] et [member focus_neighbor_top]."

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 offset for the specified [enum Side] to [param offset]. A setter "
"method for [member offset_bottom], [member offset_left], [member "
"offset_right] and [member offset_top]."
msgstr ""
"Définit le décalage pour le côté [enum Side] spécifié à [param offset]. Une "
"méthode setter pour [member offset_bottom], [member offset_left], [member "
"offset_right] et [member offset_top]."

msgid ""
"Sets the offsets to a [param preset] from [enum Control.LayoutPreset] enum. "
"This is the code equivalent to using the Layout menu in the 2D editor.\n"
"Use parameter [param resize_mode] with constants from [enum "
"Control.LayoutPresetMode] to better determine the resulting size of the "
"[Control]. Constant size will be ignored if used with presets that change "
"size, e.g. [constant PRESET_LEFT_WIDE].\n"
"Use parameter [param margin] to determine the gap between the [Control] and "
"the edges."
msgstr ""
"Définit les décalages à un préréglage [param preset] de l'énumeration [enum "
"Control.LayoutPreset]. Il s'agit de l'équivalent en code de l'utilisation du "
"menu Disposition dans l'éditeur 2D.\n"
"Utilisez le paramètre [param resize_mode] avec des constantes de [enum "
"Control.LayoutPresetMode] pour mieux déterminer la taille résultante du "
"[Control]. La taille constante sera ignorée si elle est utilisée avec des "
"préréglages qui changent la taille, par exemple [constant PRESET_LEFT_WIDE].\n"
"Utilisez le paramètre [param margin] pour déterminer l'écart entre le "
"[Control] et les bords."

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 ""
"Moves the mouse cursor to [param position], relative to [member position] of "
"this [Control].\n"
"[b]Note:[/b] [method warp_mouse] is only supported on Windows, macOS and "
"Linux. It has no effect on Android, iOS and Web."
msgstr ""
"Déplace le curseur de la souris vers [param position], relative à [member "
"position] de ce [Control].\n"
"[b]Note :[/b] [method warp_mouse] n'est supportée que sous Windows, macOS et "
"Linux. Elle n'a aucun effet sur Android, iOS et Web."

msgid "The paths to the nodes which are controlled by this node."
msgstr "Les chemins vers les nœuds qui sont contrôlés par ce nœud."

msgid "The paths to the nodes which are describing this node."
msgstr "Les chemins vers les nœuds qui décrivent ce noeud."

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 paths to the nodes which label this node."
msgstr "Les chemins vers les nœuds qui étiquettent ce nœud."

msgid ""
"The mode with which a live region updates. A live region is a [Node] that is "
"updated as a result of an external event when the user's focus may be "
"elsewhere."
msgstr ""
"Le mode avec lequel une région dynamique se met à jour. Une région dynamique "
"est un [Node] qui est mis à jour à la suite d'un événement externe lorsque le "
"focus de l'utilisateur peut être ailleurs."

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 ""
"Anchors the bottom edge of the node to the origin, the center, or the end of "
"its parent control. It changes how the bottom offset updates when the node "
"moves or changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
"Ancre le bord inférieur du nœud à l'origine, le centre ou la fin de son "
"contrôle parent. Cela modifie comment le décalage du bas se met à jour "
"lorsque le nœud se déplace ou change de taille. Vous pouvez utiliser une des "
"constantes [enum Anchor] pour plus de facilité."

msgid ""
"Anchors the left edge of the node to the origin, the center or the end of its "
"parent control. It changes how the left offset updates when the node moves or "
"changes size. You can use one of the [enum Anchor] constants for convenience."
msgstr ""
"Ancre le bord gauche du nœud à l'origine, le centre ou la fin de son contrôle "
"parent. Cela modifie comment le décalage gauche se met à jour lorsque le nœud "
"se déplace ou change de taille. Vous pouvez utiliser une des constantes [enum "
"Anchor] pour plus de facilité."

msgid ""
"Anchors the right edge of the node to the origin, the center or the end of "
"its parent control. It changes how the right offset updates when the node "
"moves or changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
"Ancre le bord droit du nœud à l'origine, le centre ou la fin de son contrôle "
"parent. Cela modifie comment le décalage droit se met à jour lorsque le nœud "
"se déplace ou change de taille. Vous pouvez utiliser une des constantes [enum "
"Anchor] pour plus de facilité."

msgid ""
"Anchors the top edge of the node to the origin, the center or the end of its "
"parent control. It changes how the top offset updates when the node moves or "
"changes size. You can use one of the [enum Anchor] constants for convenience."
msgstr ""
"Ancre le bord supérieur du nœud à l'origine, le centre ou la fin de son "
"contrôle parent. Cela modifie comment le décalage du haut se met à jour "
"lorsque le nœud se déplace ou change de taille. Vous pouvez utiliser une des "
"constantes [enum Anchor] pour plus de facilité."

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 ""
"The minimum size of the node's bounding rectangle. If you set it to a value "
"greater than [code](0, 0)[/code], the node's bounding rectangle will always "
"have at least this size. Note that [Control] nodes have their internal "
"minimum size returned by [method get_minimum_size]. It depends on the "
"control's contents, like text, textures, or style boxes. The actual minimum "
"size is the maximum value of this property and the internal minimum size (see "
"[method get_combined_minimum_size])."
msgstr ""
"La taille minimale du rectangle délimitant du nœud. Si vous le définissez à "
"une valeur supérieure à [code](0, 0)[/code], le rectangle délimitant du nœud "
"aura toujours au moins cette taille. Notez que es nœuds [Control] ont leur "
"taille minimale interne renvoyée par [method get_minimum_size]. Cela dépend "
"du contenu du contrôle, comme du texte, des textures ou des styleboxes. La "
"taille minimale réelle est la valeur maximale de cette propriété et de la "
"taille minimale interne (voir [method get_combined_minimum_size])."

msgid ""
"Determines which controls can be focused together with [member focus_mode]. "
"See [method get_focus_mode_with_override]. Since the default behavior is "
"[constant FOCUS_BEHAVIOR_INHERITED], this can be used to prevent all children "
"controls from getting focused."
msgstr ""
"Détermine quels contrôles peuvent avoir le focus ensemble avec [member "
"focus_mode]. Voir [method get_focus_mode_with_override]. Comme le "
"comportement par défaut est [constant FOCUS_BEHAVIOR_INHERITED], cela peut "
"être utilisé pour empêcher tous les contrôles enfants d'avoir le focus."

msgid ""
"Determines which controls can be focused. Only one control can be focused at "
"a time, and the focused control will receive keyboard, gamepad, and mouse "
"events in [method _gui_input]. Use [method get_focus_mode_with_override] to "
"determine if a control can grab focus, since [member "
"focus_behavior_recursive] also affects it. See also [method grab_focus]."
msgstr ""
"Détermine quels contrôles peuvent recevoir le focus. Un contrôle peut avoir "
"le fcous à la fois, et le contrôle ayant le focus recevra des événements de "
"clavier, de manette et de souris dans [method _gui_input]. Utilisez [method "
"get_focus_mode_with_override] pour déterminer si un contrôle peut attraper le "
"focus, puisque [member focus_behavior_recursive] l'affecte également. Voir "
"aussi [method grab_focus]."

msgid ""
"Tells Godot which node it should give focus to if the user presses the down "
"arrow on the keyboard or down on a gamepad by default. You can change the key "
"by editing the [member ProjectSettings.input/ui_down] input action. The node "
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the bottom of this one."
msgstr ""
"Indique à Godot à quel nœud il devrait donner le focus si l'utilisateur "
"appuie sur la flèche bas sur le clavier ou bas sur une manette par défaut. "
"Vous pouvez modifier la touche en éditant l'action d'entrée [member "
"ProjectSettings.input/ui_down]. Le nœud doit être un [Control]. Si cette "
"propriété n'est pas définie, Godot donnera le focus au [Control] le plus "
"proche en-dessous de celui-ci."

msgid ""
"Tells Godot which node it should give focus to if the user presses the left "
"arrow on the keyboard or left on a gamepad by default. You can change the key "
"by editing the [member ProjectSettings.input/ui_left] input action. The node "
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the left of this one."
msgstr ""
"Indique à Godot à quel nœud il devrait donner le focus si l'utilisateur "
"appuie sur la flèche gauche sur le clavier ou gauche sur une manette par "
"défaut. Vous pouvez modifier la touche en éditant l'action d'entrée [member "
"ProjectSettings.input/ui_left]. Le nœud doit être un [Control]. Si cette "
"propriété n'est pas définie, Godot donnera le focus au [Control] le plus "
"proche à gauche de celui-ci."

msgid ""
"Tells Godot which node it should give focus to if the user presses the right "
"arrow on the keyboard or right on a gamepad by default. You can change the "
"key by editing the [member ProjectSettings.input/ui_right] input action. The "
"node must be a [Control]. If this property is not set, Godot will give focus "
"to the closest [Control] to the right of this one."
msgstr ""
"Indique à Godot à quel nœud il devrait donner le focus si l'utilisateur "
"appuie sur la flèche droite sur le clavier ou droite sur une manette par "
"défaut. Vous pouvez modifier la touche en éditant l'action d'entrée [member "
"ProjectSettings.input/ui_right]. Le nœud doit être un [Control]. Si cette "
"propriété n'est pas définie, Godot donnera le focus au [Control] le plus "
"proche à droite de celui-ci."

msgid ""
"Tells Godot which node it should give focus to if the user presses the top "
"arrow on the keyboard or top on a gamepad by default. You can change the key "
"by editing the [member ProjectSettings.input/ui_up] input action. The node "
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the top of this one."
msgstr ""
"Indique à Godot à quel nœud il devrait donner le focus si l'utilisateur "
"appuie sur la flèche haut sur le clavier ou haut sur une manette par défaut. "
"Vous pouvez modifier la touche en éditant l'action d'entrée [member "
"ProjectSettings.input/ui_up]. Le nœud doit être un [Control]. Si cette "
"propriété n'est pas définie, Godot donnera le focus au [Control] le plus "
"proche au-dessus de celui-ci."

msgid ""
"Tells Godot which node it should give focus to if the user presses [kbd]Tab[/"
"kbd] on a keyboard by default. You can change the key by editing the [member "
"ProjectSettings.input/ui_focus_next] input action.\n"
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
"Indique à Godot à quel nœud il devrait donner le focus si l'utilisateur "
"appuie sur [kbd]Tab[/kbd] sur un clavier par défaut. Vous pouvez modifier la "
"touche en éditant l'action d'entrée [member ProjectSettings.input/"
"ui_focus_next].\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 ""
"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 ""
"Indique à 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 touche 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 ""
"Controls layout direction and text writing direction. Right-to-left layouts "
"are necessary for certain languages (e.g. Arabic and Hebrew). See also "
"[method is_layout_rtl]."
msgstr ""
"Contrôle la direction de mise en page et la direction d'écriture du texte. "
"Les mises en page de droite à gauche sont nécessaires pour certaines langues "
"(par exemple, arabe et hébreu). Voir aussi [method is_layout_rtl]."

msgid ""
"If [code]true[/code], automatically converts code line numbers, list indices, "
"[SpinBox] and [ProgressBar] values from the Western Arabic (0..9) to the "
"numeral systems used in current locale.\n"
"[b]Note:[/b] Numbers within the text are not automatically converted, it can "
"be done manually, using [method TextServer.format_number]."
msgstr ""
"Si [code]true[/code], convertit automatiquement les numéros de ligne de code, "
"les indices de liste, les valeurs de [SpinBox] et de [ProgressBar] de l'arabe "
"occidental (0..9) aux systèmes numériques utilisés dans la langue actuelle.\n"
"[b]Note :[/b] Les nombres dans le texte ne sont pas automatiquement "
"convertis, cela peut être fait manuellement, en utilisant [method "
"TextServer.format_number]."

msgid ""
"Determines which controls can receive mouse input together with [member "
"mouse_filter]. See [method get_mouse_filter_with_override]. Since the default "
"behavior is [constant MOUSE_BEHAVIOR_INHERITED], this can be used to prevent "
"all children controls from receiving mouse input."
msgstr ""
"Détermine quels contrôles peuvent recevoir les entrées de la souris ensemble "
"avec [member mouse_filter]. Voir [method get_mouse_filter_with_override]. "
"Comme le comportement par défaut est [constant MOUSE_BEHAVIOR_INHERITED], "
"cela peut être utilisé pour empêcher tous les contrôles enfants de recevoir "
"les entrées de la souris."

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 ""
"Determines which controls will be able to receive mouse button input events "
"through [method _gui_input] and the [signal mouse_entered], and [signal "
"mouse_exited] signals. Also determines how these events should be propagated. "
"See the constants to learn what each does. Use [method "
"get_mouse_filter_with_override] to determine if a control can receive mouse "
"input, since [member mouse_behavior_recursive] also affects it."
msgstr ""
"Détermine quels contrôles pourront recevoir les événements d'entrée de bouton "
"de la souris via [method _gui_input] et les signaux [signal mouse_entered], "
"et [signal mouse_exited]. Détermine également comment ces événements "
"devraient être propagés. Voir les constantes pour apprendre ce que chacune "
"fait. Utilisez [method get_mouse_filter_with_override] pour déterminer si un "
"contrôle peut recevoir l'entrée de la souris, puisque [member "
"mouse_behavior_recursive] l'affecte également."

msgid ""
"When enabled, scroll wheel events processed by [method _gui_input] will be "
"passed to the parent control even if [member mouse_filter] is set to "
"[constant MOUSE_FILTER_STOP].\n"
"You should disable it on the root of your UI if you do not want scroll events "
"to go to the [method Node._unhandled_input] processing.\n"
"[b]Note:[/b] Because this property defaults to [code]true[/code], this allows "
"nested scrollable containers to work out of the box."
msgstr ""
"Lorsque activé, les événements de la molette de défilement traités par "
"[method _gui_input] seront passés au contrôle parent même si [member "
"mouse_filter] est défini à [constant MOUSE_FILTER_STOP].\n"
"Vous devriez le désactiver sur la racine de votre interface utilisateur si "
"vous ne voulez pas que les événements de défilement aillent dans le "
"traitement de [method Node._unhandled_input].\n"
"[b]Note :[/b] Parce que cette propriété vaut par défaut [code]true[/code], "
"cela permet aux conteneurs défilables imbriqués de fonctionner directement."

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 ""
"The node's position, relative to its containing node. It corresponds to the "
"rectangle's top-left corner. The property is not affected by [member "
"pivot_offset]."
msgstr ""
"La position du nœud, par rapport au nœud le contenant. Elle correspond au "
"coin supérieur gauche du rectangle. La propriété n'est pas affectée par "
"[member pivot_offset]."

msgid ""
"The node's rotation around its pivot, in radians. See [member pivot_offset] "
"to change the pivot's position.\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 ""
"La rotation du nœud autour de son pivot, en radians. Voir [member "
"pivot_offset] pour modifier la position du pivot.\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."
msgstr ""
"Propriété d'aide pour accéder à la [member rotation] en degrés au lieu de "
"radians."

msgid ""
"The node's scale, relative to its [member size]. Change this property to "
"scale the node around its [member pivot_offset]. The Control's tooltip will "
"also scale according to this value.\n"
"[b]Note:[/b] This property is mainly intended to be used for animation "
"purposes. To support multiple resolutions in your project, use an appropriate "
"viewport stretch mode as described in the [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]documentation[/url] instead of scaling Controls "
"individually.\n"
"[b]Note:[/b] [member FontFile.oversampling] does [i]not[/i] take [Control] "
"[member scale] into account. This means that scaling up/down will cause "
"bitmap fonts and rasterized (non-MSDF) dynamic fonts to appear blurry or "
"pixelated. To ensure text remains crisp regardless of scale, 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.\n"
"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
"will be reset to [code]Vector2(1, 1)[/code] when the scene is instantiated. "
"To set the Control's scale when it's instantiated, wait for one frame using "
"[code]await get_tree().process_frame[/code] then set its [member scale] "
"property."
msgstr ""
"L'échelle du nœud, relative à [member size]. Changez cette propriété pour "
"changer l'échelle du nœud autour de [member pivot_offset]. L'info-bulle du "
"Control sera également échelonnée en fonction de cette valeur.\n"
"[b]Note :[/b] Cette propriété est principalement destinée à être utilisée "
"pour des animations. Pour supporter plusieurs résolutions dans votre projet, "
"utilisez un mode d'étirement approprié comme décrit dans la [url=$DOCS_URL/"
"tutorials/rendering/multiple_resolutions.html]documentation[/url] au lieu de "
"dimensionner chaque Control individuellement.\n"
"[b]Note:[/b] [member FontFile.oversampling] ne prend [i]pas[/i] la [member "
"scale] du [Control] en compte. Cela signifie que l'agrandissement/"
"rétrécissement causera un aspect flou et pixelisé aux polices bitmap et des "
"polices dynamiques rasterisées (non-MSDF). Pour garantir que le texte reste "
"net indépendamment de l'échelle, vous pouvez activer le rendu de police MSDF "
"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'import 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.\n"
"[b]Note :[/b] Si le nœud Control est un enfant d'un nœud [Container], "
"l'échelle sera réinitialisée à [code]Vector2(1, 1)[/code] lorsque la scène "
"est instanciée. Pour définir l'échelle du Control lors de son instanciation, "
"attendez une trame avec [code]await get_tree().process_frame[/code] puis "
"définissez sa propriété [member scale]."

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 ""
"The name of a theme type variation used by this [Control] to look up its own "
"theme items. When empty, the class name of the node is used (e.g. [code skip-"
"lint]Button[/code] for the [Button] control), as well as the class names of "
"all parent classes (in order of inheritance).\n"
"When set, this property gives the highest priority to the type of the "
"specified name. This type can in turn extend another type, forming a "
"dependency chain. See [method Theme.set_type_variation]. If the theme item "
"cannot be found using this type or its base types, lookup falls back on the "
"class names.\n"
"[b]Note:[/b] To look up [Control]'s own items use various [code]get_theme_*[/"
"code] methods without specifying [code]theme_type[/code].\n"
"[b]Note:[/b] Theme items are looked for in the tree order, from branch to "
"root, where each [Control] node is checked for its [member theme] property. "
"The earliest match against any type/class name is returned. The project-level "
"Theme and the default Theme are checked last."
msgstr ""
"Le nom d'une variation de type d'un thème utilisée par ce [Control] pour "
"rechercher ses propres éléments de thème. Lorsque vide, le nom de classe du "
"nœud est utilisé (par exemple [code skip-lint]Button[/code] pour le contrôle "
"[Button]), ainsi que les noms de classe de toutes les classes parentes (dans "
"l'ordre d'héritage).\n"
"Lorsque définie, cette propriété donne la plus haute priorité au type du nom "
"spécifié. Ce type peut ensuite étendre un autre type, formant une chaîne de "
"dépendances. Voir [method Theme.set_type_variation]. Si l'élément de thème "
"n'est pas trouvé en utilisant ce type ou ses types de base, la recherche se "
"replie alors sur les noms de classe.\n"
"[b]Note :[/b] Pour rechercher les propres éléments d'un [Control], utilisez "
"les diverses méthodes [code]get_theme_*[/code] sans spécifier "
"[code]theme_type[/code].\n"
"[b]Note :[/b] Les éléments de thème sont recherchés dans l'ordre de "
"l'arborescence, depuis la branche jusqu'à la racine, où chaque nœud [Control] "
"est vérifié suivant sa propriété [member theme]. Le premier résultat trouvé "
"sur n'importe quel type ou classe est renvoyé. Le thème du projet et celui "
"par défaut sont vérifiés en dernier."

msgid ""
"Defines if tooltip text should automatically change to its translated version "
"depending on the current locale. Uses the same auto translate mode as this "
"control when set to [constant Node.AUTO_TRANSLATE_MODE_INHERIT].\n"
"[b]Note:[/b] Tooltips customized using [method _make_custom_tooltip] do not "
"use this auto translate mode automatically."
msgstr ""
"Définit si le texte de l'info-bulle doit automatiquement changer à sa version "
"traduite en fonction de la langue actuelle. Utilise le même mode de "
"traduction automatique que ce contrôle lorsque défini à [constant "
"Node.AUTO_TRANSLATE_MODE_INHERIT].\n"
"[b]Note :[/b] Les info-bulles personnalisées utilisant [method "
"_make_custom_tooltip] n'utilisent pas ce mode de traduction automatique "
"automatiquement."

msgid ""
"The default tooltip text. The tooltip appears when the user's mouse cursor "
"stays idle over this control for a few moments, provided that the [member "
"mouse_filter] property is not [constant MOUSE_FILTER_IGNORE]. The time "
"required for the tooltip to appear can be changed with the [member "
"ProjectSettings.gui/timers/tooltip_delay_sec] setting.\n"
"This string is the default return value of [method get_tooltip]. Override "
"[method _get_tooltip] to generate tooltip text dynamically. Override [method "
"_make_custom_tooltip] to customize the tooltip interface and behavior.\n"
"The tooltip popup will use either a default implementation, or a custom one "
"that you can provide by overriding [method _make_custom_tooltip]. The default "
"tooltip includes a [PopupPanel] and [Label] whose theme properties can be "
"customized using [Theme] methods with the [code]\"TooltipPanel\"[/code] and "
"[code]\"TooltipLabel\"[/code] respectively. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var style_box = StyleBoxFlat.new()\n"
"style_box.set_bg_color(Color(1, 1, 0))\n"
"style_box.set_border_width_all(2)\n"
"# We assume here that the `theme` property has been assigned a custom Theme "
"beforehand.\n"
"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
"[/gdscript]\n"
"[csharp]\n"
"var styleBox = new StyleBoxFlat();\n"
"styleBox.SetBgColor(new Color(1, 1, 0));\n"
"styleBox.SetBorderWidthAll(2);\n"
"// We assume here that the `Theme` property has been assigned a custom Theme "
"beforehand.\n"
"Theme.SetStyleBox(\"panel\", \"TooltipPanel\", styleBox);\n"
"Theme.SetColor(\"font_color\", \"TooltipLabel\", new Color(0, 1, 1));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Le texte de l'info-bulle par défaut. L'info-bulle apparaît lorsque le curseur "
"de la souris reste sur ce contrôle durant quelques instants, à condition que "
"la propriété [member mouse_filter] ne vaille pas [constant "
"MOUSE_FILTER_IGNORE]. Vous pouvez modifier le temps nécessaire avant que "
"l'info-bulle n'apparaisse avec le paramètre [member ProjectSettings.gui/"
"timers/tooltip_delay_sec].\n"
"Cette chaîne est la valeur de renvoi par défaut de [method get_tooltip]. "
"Redéfinissez [method _get_tooltip] pour générer le texte de l'info-bulle "
"dynamiquement. Redéfinissez [method _make_custom_tooltip] pour personnaliser "
"l'interface et le comportement de l'info-bulle.\n"
"La popup de l'info-bulle utilisera soit l'implémentation par défaut, soit une "
"que vous pouvez personnaliser en redéfinissant [method _make_custom_tooltip]. "
"L'info-bulle par défaut comprend un [PopupPanel] et un [Label] dont les "
"propriétés de thème peuvent être personnalisées en utilisant des méthodes de "
"[Theme] pour [code]\"TooltipPanel\"[/code] et [code]\"TooltipLabel\"[/code] "
"respectivement. Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var style_box = StyleBoxFlat.new()\n"
"style_box.set_bg_color(Color(1, 1, 0))\n"
"style_box.set_border_width_all(2)\n"
"# On part du principe ici que la propriété `theme` a déjà été assignée avec "
"un Theme personnalisé.\n"
"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
"[/gdscript]\n"
"[csharp]\n"
"var styleBox = new StyleBoxFlat();\n"
"styleBox.SetBgColor(new Color(1, 1, 0));\n"
"styleBox.SetBorderWidthAll(2);\n"
"// On part du principe ici que la propriété `Theme` a déjà été assignée avec "
"un Theme personnalisé.\n"
"Theme.SetStyleBox(\"panel\", \"TooltipPanel\", styleBox);\n"
"Theme.SetColor(\"font_color\", \"TooltipLabel\", new Color(0, 1, 1));\n"
"[/csharp]\n"
"[/codeblocks]"

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 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 signal.\n"
"[b]Note:[/b] If you want to check whether the mouse truly left the area, "
"ignoring any top nodes, you can use code like this:\n"
"[codeblock]\n"
"func _on_mouse_exited():\n"
"\tif not Rect2(Vector2(), size).has_point(get_local_mouse_position()):\n"
"\t\t# Not hovering over area.\n"
"[/codeblock]"
msgstr ""
"Émis lorsque le curseur de la souris quitte la zone visible du contrôle (et "
"de tout contrôle enfant), qui n'est pas occlus derrière d'autres Controls ou "
"Windows, à condition que son [member mouse_filter] permette à l'événement de "
"l'atteindre et peu importe de s'il a le focus ou non.\n"
"[b]Note :[/b] [member CanvasItem.z_index] n'a pas d'incidence sur quel "
"Control reçoit le signal.\n"
"[b]Note :[/b] Si vous voulez vérifier si la souris a vraiment quitté la zone, "
"en ignorant les nœuds supérieurs, vous pouvez utiliser un code comme ceci :\n"
"[codeblock]\n"
"func on_mouse_exited():\n"
"\tif not Rect2(Vector2(), rect_size).has_point(get_local_mouse_position()):\n"
"\t\t# Ne survole pas la zone.\n"
"[/codeblock]"

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 on mouse click, using the arrows and the Tab keys on "
"the keyboard, or using the D-pad buttons on a gamepad. Use with [member "
"focus_mode]."
msgstr ""
"Le nœud peut obtenir le focus lors d'un clic de souris, en utilisant les "
"flèches et la touche de tabulation du clavier ou en utilisant les boutons de "
"la croix directionnelle d'une manette. À 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 ""
"Inherits the [member mouse_behavior_recursive] from the parent control. If "
"there is no parent control, this is the same as [constant "
"MOUSE_BEHAVIOR_ENABLED]."
msgstr ""
"Hérite du [member mouse_behavior_recursive] du contrôle parent. S'il n'y a "
"pas de contrôle parent, cela renvient à [constant MOUSE_BEHAVIOR_ENABLED]."

msgid ""
"Prevents the control from receiving mouse input. [method "
"get_mouse_filter_with_override] will return [constant MOUSE_FILTER_IGNORE]."
msgstr ""
"Empêche le contrôle de recevoir l'entrée de la souris. [method "
"get_mouse_filter_with_override] renverra [constant MOUSE_FILTER_IGNORE]."

msgid "Sent when the node changes size. Use [member size] to get the new size."
msgstr ""
"Envoyé quand le nœud change de taille. Utilisez [member size] pour obtenir la "
"nouvelle taille."

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 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 this node is inside a [ScrollContainer] which has begun being "
"scrolled when dragging the scrollable area [i]with a touch event[/i]. This "
"notification is [i]not[/i] sent when scrolling by dragging the scrollbar, "
"scrolling with the mouse wheel or scrolling with keyboard/gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Envoyé lorsque ce nœud est à l'intérieur d'un [ScrollContainer] qui a "
"commencé à être défilé lors du glissement de la zone défilante [i]avec un "
"événement tactile[/i]. Cette notification n'est [i]pas[/i] envoyée lors du "
"défilement en glissant la barre de défilement, en défilant avec la molette de "
"la souris ou en défilant avec des événements clavier/manette.\n"
"[b]Note :[/b] Ce signal n'est émis que sur Android ou iOS, ou sur les "
"plateformes de bureau/web lorsque [member ProjectSettings.input_devices/"
"pointing/emulate_touch_from_mouse] est activé."

msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled when dragging the scrollable area [i]with a touch event[/i]. This "
"notification is [i]not[/i] sent when scrolling by dragging the scrollbar, "
"scrolling with the mouse wheel or scrolling with keyboard/gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Envoyé lorsque ce nœud est à l'intérieur d'un [ScrollContainer] qui a arrêté "
"d'être défilé lors du glissement de la zone défilante [i]avec un événement "
"tactile[/i]. Cette notification n'est [i]pas[/i] envoyée lors du défilement "
"en glissant la barre de défilement, en défilant avec la molette de la souris "
"ou en défilant avec des événements clavier/manette.\n"
"[b]Note :[/b] Ce signal n'est émis que sur Android ou iOS, ou sur les "
"plateformes de bureau/web lorsque [member ProjectSettings.input_devices/"
"pointing/emulate_touch_from_mouse] est activé."

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 left edge of the parent control. The left offset "
"becomes relative to the left edge and the top offset relative to the top left "
"corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
"Magnétise les 4 ancres au bord gauche du contrôle parent. La marge gauche "
"devient alors relative au bord gauche et à la marge supérieure relative au "
"coin supérieur gauche du nœud parent. Utilisez avec [method "
"set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left offset "
"becomes relative to the top left corner, the top offset relative to the top "
"edge, and the right offset relative to the top right corner of the node's "
"parent. Use with [method set_anchors_preset]."
msgstr ""
"Aimante les 4 ancres au bord supérieur du contrôle parent. Le décalage gauche "
"devient alors relatif au coin supérieur gauche, le décalage du haut relatif "
"au bord supérieur, et le décalage droit relatif au coin supérieur droit du "
"nœud parent. À utiliser avec [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right offset "
"becomes relative to the right edge and the top offset relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
"Aimante les 4 ancres au bord droit du contrôle parent. Le décalage droit "
"devient alors relatif au bord droit et le décalage du haut relatif au coin "
"supérieur droit. À 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 align the node with its start, either the top "
"or the left edge. It is mutually exclusive with [constant SIZE_FILL] and "
"other shrink size flags, but can be used with [constant SIZE_EXPAND] in some "
"containers. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical].\n"
"[b]Note:[/b] Setting this flag is equal to not having any size flags."
msgstr ""
"Indique au [Container] parent d'aligner le nœud sur son début, soit au bord "
"supérieur soit au bord gauche. Il est mutuellement exclusif avec [constant "
"SIZE_FILL] et les autres drapeaux de rétrécissement de la taille, mais peut "
"être utilisé avec [constant SIZE_EXPAND] dans quelques conteneurs. À utiliser "
"avec [member size_flags_horizontal] et [member size_flags_vertical].\n"
"[b]Note :[/b] Définir ce drapeau est égal à ne pas avoir de drapeau de taille."

msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. It is mutually exclusive "
"with shrink size flags. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical]."
msgstr ""
"Indique au [Container] parent d'étendre les limites de ce nœud pour remplir "
"tout l'espace disponible sans pousser d'autre nœuds. Il est mutuellement "
"exclusif avec les autres drapeaux de rétrécissement de la taille. À utiliser "
"avec [member size_flags_horizontal] et [member size_flags_vertical]."

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 ""
"Sets the node's size flags to both fill and expand. See [constant SIZE_FILL] "
"and [constant SIZE_EXPAND] for more information."
msgstr ""
"Définit les drapeaux de taille du nœud pour à la fois remplir et s'étendre. "
"Voir [constant SIZE_FILL] et [constant SIZE_EXPAND] pour plus d'informations."

msgid ""
"Tells the parent [Container] to center the node in the available space. It is "
"mutually exclusive with [constant SIZE_FILL] and other shrink size flags, but "
"can be used with [constant SIZE_EXPAND] in some containers. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
"Indique au [Container] parent de centrer le nœud dans l'espace disponible. Il "
"est mutuellement exclusif avec [constant SIZE_FILL] et les autres drapeau de "
"rétrécissement de la taille, mais peut être utilisé avec [constant "
"SIZE_EXPAND] dans quelques conteneurs. À utiliser avec [member "
"size_flags_horizontal] et [member size_flags_vertical]."

msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It is mutually exclusive with [constant SIZE_FILL] "
"and other shrink size flags, but can be used with [constant SIZE_EXPAND] in "
"some containers. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical]."
msgstr ""
"Indique au [Container] parent d'aligner le nœud sur sa fin, soit en bas, soit "
"sur le bord droit. Il est mutuellement exclusif avec [constant SIZE_FILL] et "
"les autres drapeau de rétrécissement de la taille, mais peut être utilisé "
"avec [constant SIZE_EXPAND] dans quelques conteneurs. À utiliser avec [member "
"size_flags_horizontal] et [member size_flags_vertical]."

msgid ""
"The control will receive mouse movement input events and mouse button input "
"events if clicked on through [method _gui_input]. The control will also "
"receive the [signal mouse_entered] and [signal mouse_exited] signals. These "
"events are automatically marked as handled, and they will not propagate "
"further to other controls. This also results in blocking signals in other "
"controls."
msgstr ""
"Le contrôle recevra les événements d'entrée de mouvement de la souris et les "
"événements d'entrée de bouton de la souris via [method _gui_input] si vous "
"cliquez dessus. Le contrôle recevra également les signaux [signal "
"mouse_entered] et [signal mouse_exited]. Ces événements sont automatiquement "
"marqués comme traités, et ils ne se propagent pas vers d'autres contrôles. "
"Cela permet également de bloquer les signaux dans d'autres contrôles."

msgid ""
"The control will not receive any mouse movement input events nor mouse button "
"input events through [method _gui_input]. The control will also not receive "
"the [signal mouse_entered] nor [signal mouse_exited] signals. This will not "
"block other controls from receiving these events or firing the signals. "
"Ignored events will not be handled automatically. If a child has [constant "
"MOUSE_FILTER_PASS] and an event was passed to this control, the event will "
"further propagate up to the control's parent.\n"
"[b]Note:[/b] If the control has received [signal mouse_entered] but not "
"[signal mouse_exited], changing the [member mouse_filter] to [constant "
"MOUSE_FILTER_IGNORE] will cause [signal mouse_exited] to be emitted."
msgstr ""
"La contrôle ne recevra aucun événement d'entrée de la souris ou d'évènement "
"de bouton de la souris si cliqué via [method _gui_input]. Le contrôle ne "
"recevra aussi pas les signaux [signal mouse_entered] et [signal "
"mouse_exited]. Ceci ne bloquera pas d'autres contrôles de recevoir ces "
"événements ou de déclencher les signaux. Les événements ignorés ne seront pas "
"gérés automatiquement. Si un enfant a [constant MOUSE_FILTER_PASS] et qu'un "
"événement a été transmis à ce contrôle, l'événement se propagera vers le haut "
"vers le parent du contrôle.\n"
"[b]Note :[/b] Si le contrôle a reçu [signal mouse_entered] mais pas [signal "
"mouse_exited], changer [member mouse_filter] à [constant MOUSE_FILTER_IGNORE] "
"causera l'émission de [signal mouse_exited]."

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 ""
"Automatic layout direction, determined from the parent control layout "
"direction."
msgstr ""
"Direction de mise en page automatique, déterminée à partir de la direction de "
"mise en page du contrôle parent."

msgid ""
"Automatic layout direction, determined from the current locale. Right-to-left "
"layout direction is automatically used for languages that require it such as "
"Arabic and Hebrew, but only if a valid translation file is loaded for the "
"given language (unless said language is configured as a fallback in [member "
"ProjectSettings.internationalization/locale/fallback]). For all other "
"languages (or if no valid translation file is found by Godot), left-to-right "
"layout direction is used. If using [TextServerFallback] ([member "
"ProjectSettings.internationalization/rendering/text_driver]), left-to-right "
"layout direction is always used regardless of the language. Right-to-left "
"layout direction can also be forced using [member "
"ProjectSettings.internationalization/rendering/"
"force_right_to_left_layout_direction]."
msgstr ""
"Direction de mise en page automatique, déterminée à partir de la langue "
"actuelle. La direction de mise en page de droite à gauche est automatiquement "
"utilisée pour les langues qui l'exigent comme l'arabe et l'hébreu, mais "
"seulement si un fichier de traduction valide est chargé pour la langue donnée "
"(sauf si la-dite langue est configurée comme un repli dans [member "
"ProjectSettings.internationalization/locale/fallback]). Pour toutes les "
"autres langues (ou si aucun fichier de traduction valide n'est trouvé par "
"Godot), la direction de mise en page de gauche à droite est utilisée. Si vous "
"utilisez [TextServerFallback] ([member ProjectSettings.internationalization/"
"rendering/text_driver]), la direction de mise en page de gauche à droite est "
"toujours utilisée peu importe la langue. La direction de mise en page de "
"droite à gauche peut aussi être forcée en utilisant [member "
"ProjectSettings.internationalization/rendering/"
"force_right_to_left_layout_direction]."

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 ""
"Automatic layout direction, determined from the system locale. Right-to-left "
"layout direction is automatically used for languages that require it such as "
"Arabic and Hebrew, but only if a valid translation file is loaded for the "
"given language. For all other languages (or if no valid translation file is "
"found by Godot), left-to-right layout direction is used. If using "
"[TextServerFallback] ([member ProjectSettings.internationalization/rendering/"
"text_driver]), left-to-right layout direction is always used regardless of "
"the language."
msgstr ""
"Direction de mise en page automatique, déterminée à partir de la langue du "
"système. La direction de mise en page de droite à gauche est automatiquement "
"utilisée pour les langues qui l'exigent comme l'arabe et l'hébreu, mais "
"seulement si un fichier de traduction valide est chargé pour la langue "
"donnée. Pour toutes les autres langues (ou si aucun fichier de traduction "
"valide n'est trouvé par Godot), la direction de mise en page de gauche à "
"droite est utilisée. Si vous utilisez [TextServerFallback] ([member "
"ProjectSettings.internationalization/rendering/text_driver]), la direction de "
"mise en page de gauche à droite est toujours utilisée peu importe la langue."

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 ""
"Apply the copied transform of the bone set by [method "
"BoneConstraint3D.set_reference_bone] to the bone set by [method "
"BoneConstraint3D.set_apply_bone] about the specific axis with remapping it "
"with some options.\n"
"There are 4 ways to apply the transform, depending on the combination of "
"[method set_relative] and [method set_additive].\n"
"[b]Relative + Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"pose.\n"
"[b]Relative + Not Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"rest.\n"
"[b]Not Relative + Additive:[/b]\n"
"- Extract reference pose absolutely and add it to the apply bone's pose.\n"
"[b]Not Relative + Not Additive:[/b]\n"
"- Extract reference pose absolutely and the apply bone's pose is replaced "
"with it.\n"
"[b]Note:[/b] Relative option is available only in the case [method "
"BoneConstraint3D.get_reference_type] is [constant "
"BoneConstraint3D.REFERENCE_TYPE_BONE]. See also [enum "
"BoneConstraint3D.ReferenceType].\n"
"[b]Note:[/b] If there is a rotation greater than [code]180[/code] degrees "
"with constrained axes, flipping may occur."
msgstr ""
"Applique la transformation copiée de l'os défini par [method "
"BoneConstraint3D.set_reference_bone] à l'os défini par [method "
"BoneConstraint3D.set_apply_bone] sur l'axe spécifique avec le ré-associe "
"selon quelques options.\n"
"Il y a 4 façons d'appliquer la transformation, selon la combinaison de "
"[method set_relative] et [method set_additive].\n"
"[b]Relatif + Additif :[/b]\n"
"- Extrait la pose de référence relative au reste et l'ajoute à la pose de "
"l'os appliqué.\n"
"[b]Relatif + Non Additif :[/b]\n"
"- Extrait la pose de référence relative au reste et l'ajoute au repos de l'os "
"appliqué.\n"
"[b]Non relatif + Additif :[/b]\n"
"- Extrait la pose de référence de manière absolue et l'ajoute à la pose de "
"l'os appliqué.\n"
"[b]Non relatif + Non Additif :[/b]\n"
"- Extrait la pose de référence de manière absolue et remplace la pose de l'os "
"appliqué par celle-ci.\n"
"[b]Note :[/b] L'option Relatif n'est disponible que dans le cas où [method "
"BoneConstraint3D.get_reference_type] vaut [constant "
"BoneConstraint3D.REFERENCE_TYPE_BONE]. Voir aussi [enum "
"BoneConstraint3D.ReferenceType].\n"
"[b]Note :[/b] S'il y a une rotation supérieure à [code]180[/code] degrés avec "
"des axes contraints, une inversion peut se produire."

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 ""
"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 ""
"Apply the copied transform of the bone set by [method "
"BoneConstraint3D.set_reference_bone] to the bone set by [method "
"BoneConstraint3D.set_apply_bone] with processing it with some masks and "
"options.\n"
"There are 4 ways to apply the transform, depending on the combination of "
"[method set_relative] and [method set_additive].\n"
"[b]Relative + Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"pose.\n"
"[b]Relative + Not Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"rest.\n"
"[b]Not Relative + Additive:[/b]\n"
"- Extract reference pose absolutely and add it to the apply bone's pose.\n"
"[b]Not Relative + Not Additive:[/b]\n"
"- Extract reference pose absolutely and the apply bone's pose is replaced "
"with it.\n"
"[b]Note:[/b] Relative option is available only in the case [method "
"BoneConstraint3D.get_reference_type] is [constant "
"BoneConstraint3D.REFERENCE_TYPE_BONE]. See also [enum "
"BoneConstraint3D.ReferenceType]."
msgstr ""
"Applique la transformation copiée de l'os défini par [method "
"BoneConstraint3D.set_reference_bone] à l'os défini par [method "
"BoneConstraint3D.set_apply_bone] sur l'axe spécifique avec le ré-associe "
"selon quelques options.\n"
"Il y a 4 façons d'appliquer la transformation, selon la combinaison de "
"[method set_relative] et [method set_additive].\n"
"[b]Relatif + Additif :[/b]\n"
"- Extrait la pose de référence relative au reste et l'ajoute à la pose de "
"l'os appliqué.\n"
"[b]Relatif + Non Additif :[/b]\n"
"- Extrait la pose de référence relative au reste et l'ajoute au repos de l'os "
"appliqué.\n"
"[b]Non relatif + Additif :[/b]\n"
"- Extrait la pose de référence de manière absolue et l'ajoute à la pose de "
"l'os appliqué.\n"
"[b]Non relatif + Non Additif :[/b]\n"
"- Extrait la pose de référence de manière absolue et remplace la pose de l'os "
"appliqué par celle-ci.\n"
"[b]Note :[/b] L'option relative n'est disponible que dans le cas [method "
"BoneConstraint3D.get_reference_type] est [constant "
"BoneConstraint3D.REFERENCE_TYPE_BONE]. Voir aussi [enum "
"BoneConstraint3D.ReferenceType]."

msgid "Returns the axis flags of the setting at [param index]."
msgstr "Renvoie les drapeaux d'axe du paramètre à l'index [param index]."

msgid "Returns the copy flags of the setting at [param index]."
msgstr "Renvoie les drapeaux de copie du paramètre à l'index [param index]."

msgid "Returns the invert flags of the setting at [param index]."
msgstr "Renvoie les drapeaux d'inversion du paramètre à l'index [param index]."

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 ""
"L'étendue du rectangle si [member emission_shape] vaut [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 ""
"L'étendue du rectangle si [member emission_shape] vaut [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 nœud 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 nœud 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 ""
"A script implemented in the C# programming language, saved with the "
"[code].cs[/code] extension (Mono-enabled builds only)."
msgstr ""
"Un script implémenté dans le langage de programmation C#, enregistré avec "
"l'extension [code].cs[/code] (uniquement dans les compilations avec Mono "
"activé)."

msgid ""
"This class represents a C# script. It is the C# equivalent of the [GDScript] "
"class and is only available in Mono-enabled Godot builds."
msgstr ""
"Cette classe représente un script C#. Il s'agit de l'équivalent C# de la "
"classe [GDScript] et n'est disponible que dans les versions de Godot avec "
"Mono activé."

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 ""
"Six square textures representing the faces of a cube. Commonly used as a "
"skybox."
msgstr ""
"Six textures carrées représentant les faces d'un cube. Couramment utilisé en "
"tant que skybox."

msgid "Creates a placeholder version of this resource ([PlaceholderCubemap])."
msgstr "Crée une version placeholder de cette ressource ([PlaceholderCubemap])."

msgid "An array of [Cubemap]s, stored together and with a single reference."
msgstr "Un tableau de [Cubemap]s, stockés ensemble et avec une seule référence."

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 ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
"directly.\n"
"For example, instead of [code]albedo_tex = "
"$Decal.get_texture(Decal.TEXTURE_ALBEDO)[/code], use [code]albedo_tex = "
"$Decal.texture_albedo[/code].\n"
"One case where this is better than accessing the texture directly is when you "
"want to copy one Decal's textures to another. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NewDecal\").SetTexture(i, "
"GetNode<Decal>(\"OldDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie la [Texture2D] associée au [enum DecalTexture] spécifié. Il s'agit "
"d'une méthode de commodité, dans la plupart des cas, vous devriez accéder "
"directement à la texture.\n"
"Par exemple, au lieu de [code]albedo_tex = "
"$Decal.get_texture(Decal.TEXTURE_ALBEDO)[/code], utilisez [code]albedo_tex = "
"$Decal.texture_albedo[/code].\n"
"Un cas où cela vaut meilleur que d'accéder directement à la texture est quand "
"vous voulez copier une texture d'un Decal vers un autre. Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NouveauDecal.set_texture(i, $AncienDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NouveauDecal\").SetTexture(i, "
"GetNode<Decal>(\"AncienDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when you "
"want to copy one Decal's textures to another. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NewDecal\").SetTexture(i, "
"GetNode<Decal>(\"OldDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Définit la [Texture2D] associée au [enum DecalTexture] spécifié. Il s'agit "
"d'une méthode de commodité, dans la plupart des cas, vous devriez accéder "
"directement à la texture.\n"
"Par exemple, au lieu de [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], utiliser [code]$Decal.texture_albedo = albedo_tex[/"
"code].\n"
"Un cas où cela est meilleur que d'accéder directement à la texture est quand "
"vous voulez copier une texture d'un Decal à un autre. Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NouveauDecal.set_texture(i, $AncienDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NouveauDecal\").SetTexture(i, "
"GetNode<Decal>(\"AncienDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Specifies which [member VisualInstance3D.layers] this decal will project on. "
"By default, Decals affect all layers. This is used so you can specify which "
"types of objects receive the Decal and which do not. This is especially "
"useful so you can ensure that dynamic objects don't accidentally receive a "
"Decal intended for the terrain under them."
msgstr ""
"Spécifie sur quels [member VisualInstance3D.layers] ce décalage se "
"projettera. Par défaut, les Decals affectent toutes les couches. Ceci est "
"utilisé pour que vous puissiez spécifier quels types d'objets reçoivent le "
"Decal et lequels ne le reçoivent pas. Ceci est particulièrement utile pour "
"vous assurer que des objets dynamiques ne reçoivent pas accidentellement un "
"Decal destiné au terrain sous eux."

msgid ""
"The distance from the camera at which the Decal begins to fade away (in 3D "
"units)."
msgstr ""
"La distance à la caméra à laquelle le Decal commence à disparaître (en unités "
"3D)."

msgid ""
"If [code]true[/code], decals will smoothly fade away when far from the active "
"[Camera3D] starting at [member distance_fade_begin]. The Decal 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 Decals in a scene and thus improve performance."
msgstr ""
"Si [code]true[/code], les décalques vont disparaître en douceur lorsqu'ils "
"sont loin de la [Camera3D] active à partir de [member distance_fade_begin]. "
"Le décalque disparaîtra sur [member distance_fade_begin] + [member "
"distance_fade_length], après quoi il sera coupé et ne sera pas envoyé au "
"shader du tout. Utilisez cela pour réduire le nombre de décalques actifs dans "
"une scène et ainsi améliorer les performances."

msgid ""
"The distance over which the Decal fades (in 3D units). The Decal becomes "
"slowly more transparent over this distance and is completely invisible at the "
"end. Higher values result in a smoother fade-out transition, which is more "
"suited when the camera moves fast."
msgstr ""
"La distance sur laquelle le décalque disparaît (en unités 3D). Le décalque "
"devient lentement plus transparent au cours de cette distance et est "
"complètement invisible à la fin. Des valeurs plus élevées résultent en une "
"transition plus fluide, plus adaptée lorsque la caméra se déplace rapidement."

msgid ""
"Energy multiplier for the emission texture. This will make the decal emit "
"light at a higher or lower intensity, independently of the albedo color. See "
"also [member modulate]."
msgstr ""
"Multiplicateur de l'énergie pour la texture d'émission. Cela fera que le "
"décalque émet de la lumière à une intensité supérieure ou inférieure, "
"indépendamment de l’albédo. Voir aussi [member modulate]."

msgid ""
"Sets the curve over which the decal will fade as the surface gets further "
"from the center of the [AABB]. Only positive values are valid (negative "
"values will be clamped to [code]0.0[/code]). See also [member upper_fade]."
msgstr ""
"Définit la courbe sur laquelle le décalque va disparaître lorsque que la "
"surface s'éloigne du centre de l'[AABB]. Seules les valeurs positives sont "
"valides (les valeurs négatives seront bornées à [code]0.0[/code]). Voir aussi "
"[member upper_fade]."

msgid ""
"Changes the [Color] of the Decal by multiplying the albedo and emission "
"colors with this value. The alpha component is only taken into account when "
"multiplying the albedo color, not the emission color. See also [member "
"emission_energy] and [member albedo_mix] to change the emission and albedo "
"intensity independently of each other."
msgstr ""
"Change la [Color] du Decal en multipliant la couleur de l'albédo et de "
"l'émission avec cette valeur. La composante alpha est seulement prise en "
"compte lors de la multiplication de la couleur de l'albédo, pas de la couleur "
"de l'émission. Voir aussi [member emission_energy] et [member albedo_mix] "
"pour changer l'intensité de l'émission et de l'albédo indépendamment l'une de "
"l'autre."

msgid ""
"Fades the Decal if the angle between the Decal's [AABB] and the target "
"surface becomes too large. A value of [code]0[/code] projects the Decal "
"regardless of angle, a value of [code]1[/code] limits the Decal to surfaces "
"that are nearly perpendicular.\n"
"[b]Note:[/b] Setting [member normal_fade] to a value greater than [code]0.0[/"
"code] has a small performance cost due to the added normal angle computations."
msgstr ""
"Fait disparaître le Decal si l'angle entre l'[AABB] du Decal et la surface "
"cible devient trop grand. Une valeur de [code]0[/code] projette le Decal "
"indépendamment de l'angle, une valeur de [code]1[/code] limite le Decal aux "
"surfaces presque perpendiculaires.\n"
"[b]Note :[/b] Définir [member normal_fade] à une valeur supérieure à "
"[code]0.0[/code] a un petit coût de performance en raison des calculs d'angle "
"normaux ajoutés."

msgid ""
"[Texture2D] with the base [Color] of the Decal. Either this or the [member "
"texture_emission] must be set for the Decal to be visible. Use the alpha "
"channel like a mask to smoothly blend the edges of the decal with the "
"underlying object.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter]."
msgstr ""
"[Texture2D] avec la [Color] de base du Decal. Soit cela soit la [member "
"texture_emission] doit être définie pour que le Decal soit visible. Utilisez "
"le canal alpha comme un masque pour mélanger en douceur les bords du décalque "
"avec l'objet sous-jacent.\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 "
"[Decal] est défini globalement avec [member ProjectSettings.rendering/"
"textures/decals/filter]."

msgid ""
"[Texture2D] with the emission [Color] of the Decal. Either this or the "
"[member texture_albedo] must be set for the Decal to be visible. Use the "
"alpha channel like a mask to smoothly blend the edges of the decal with the "
"underlying object.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter]."
msgstr ""
"[Texture2D] avec la [Color] d'émission du Decal. Soit cela soit la [member "
"texture_albedo] doit être définie pour que le Decal soit visible. Utilisez le "
"canal alpha comme un masque pour mélanger en douceur les bords du décalque "
"avec l'objet sous-jacent.\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 "
"[Decal] est défini globalement avec [member ProjectSettings.rendering/"
"textures/decals/filter]."

msgid ""
"[Texture2D] with the per-pixel normal map for the decal. Use this to add "
"extra detail to decals.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter].\n"
"[b]Note:[/b] Setting this texture alone will not result in a visible decal, "
"as [member texture_albedo] must also be set. To create a normal-only decal, "
"load an albedo texture into [member texture_albedo] and set [member "
"albedo_mix] to [code]0.0[/code]. The albedo texture's alpha channel will be "
"used to determine where the underlying surface's normal map should be "
"overridden (and its intensity)."
msgstr ""
"[Texture2D] avec la normal map par pixel du Decal. Utilisez cela pour ajouter "
"des détails supplémentaires aux décalques.\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 "
"[Decal] est défini globalement avec [member ProjectSettings.rendering/"
"textures/decals/filter].\n"
"[b]Note :[/b] Définir seulement cette texture ne résultera pas en un décalque "
"visible, car [member texture_albedo] doit également être définie. Pour créer "
"un décalque avec seulement des normales, chargez une texture d'albedo dans "
"[member texture_albedo] et définissez [member albedo_mix] à [code]0.0[/code]. "
"Le canal alpha de la texture de l'albédo sera utilisé pour déterminer où la "
"normal map de la surface sous-jacente devrait être redéfinie (et son "
"intensité)."

msgid ""
"[Texture2D] storing ambient occlusion, roughness, and metallic for the decal. "
"Use this to add extra detail to decals.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter].\n"
"[b]Note:[/b] Setting this texture alone will not result in a visible decal, "
"as [member texture_albedo] must also be set. To create an ORM-only decal, "
"load an albedo texture into [member texture_albedo] and set [member "
"albedo_mix] to [code]0.0[/code]. The albedo texture's alpha channel will be "
"used to determine where the underlying surface's ORM map should be overridden "
"(and its intensity)."
msgstr ""
"[Texture2D] stockant l'occlusion ambiante, la rugosité et le métallique pour "
"le décalque. Utilisez cela pour ajouter des détails supplémentaires aux "
"décalques.\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 "
"[Decal] est défini globalement avec [member ProjectSettings.rendering/"
"textures/decals/filter].\n"
"[b]Note :[/b] Définir seulement cette texture ne résultera pas en un décalque "
"visible, car [member texture_albedo] doit également être définie. Pour créer "
"un décalque avec seulement un ORM, chargez une texture d'albedo dans [member "
"texture_albedo] et définissez [member albedo_mix] à [code]0.0[/code]. Le "
"canal alpha de la texture de l'albédo sera utilisé pour déterminer où l'ORM "
"map de la surface sous-jacente devrait être redéfinie (et son intensité)."

msgid ""
"Sets the curve over which the decal will fade as the surface gets further "
"from the center of the [AABB]. Only positive values are valid (negative "
"values will be clamped to [code]0.0[/code]). See also [member lower_fade]."
msgstr ""
"Définit la courbe sur laquelle le décalque va disparaître lorsque que la "
"surface s'éloigne du centre de l'[AABB]. Seules les valeurs positives sont "
"valides (les valeurs négatives seront bornées à [code]0.0[/code]). Voir aussi "
"[member lower_fade]."

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 ""
"Dictionaries are associative containers that contain values referenced by "
"unique keys. Dictionaries will preserve the insertion order when adding new "
"entries. In other programming languages, this data structure is often "
"referred to as a hash map or an associative array.\n"
"You can define a dictionary by placing a comma-separated list of [code]key: "
"value[/code] pairs inside curly braces [code]{}[/code].\n"
"Creating a dictionary:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_dict = {} # Creates an empty dictionary.\n"
"\n"
"var dict_variable_key = \"Another key name\"\n"
"var dict_variable_value = \"value2\"\n"
"var another_dict = {\n"
"\t\"Some key name\": \"value1\",\n"
"\tdict_variable_key: dict_variable_value,\n"
"}\n"
"\n"
"var points_dict = { \"White\": 50, \"Yellow\": 75, \"Orange\": 100 }\n"
"\n"
"# Alternative Lua-style syntax.\n"
"# Doesn't require quotes around keys, but only string constants can be used "
"as key names.\n"
"# Additionally, key names must start with a letter or an underscore.\n"
"# Here, `some_key` is a string literal, not a variable!\n"
"another_dict = {\n"
"\tsome_key = 42,\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"var myDict = new Godot.Collections.Dictionary(); // Creates an empty "
"dictionary.\n"
"var pointsDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"White\", 50 },\n"
"\t{ \"Yellow\", 75 },\n"
"\t{ \"Orange\", 100 },\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"You can access a dictionary's value by referencing its corresponding key. In "
"the above example, [code]points_dict[\"White\"][/code] will return [code]50[/"
"code]. You can also write [code]points_dict.White[/code], which is "
"equivalent. However, you'll have to use the bracket syntax if the key you're "
"accessing the dictionary with isn't a fixed string (such as a number or "
"variable).\n"
"[codeblocks]\n"
"[gdscript]\n"
"@export_enum(\"White\", \"Yellow\", \"Orange\") var my_color: String\n"
"var points_dict = { \"White\": 50, \"Yellow\": 75, \"Orange\": 100 }\n"
"func _ready():\n"
"\t# We can't use dot syntax here as `my_color` is a variable.\n"
"\tvar points = points_dict[my_color]\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export(PropertyHint.Enum, \"White,Yellow,Orange\")]\n"
"public string MyColor { get; set; }\n"
"private Godot.Collections.Dictionary _pointsDict = new "
"Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"White\", 50 },\n"
"\t{ \"Yellow\", 75 },\n"
"\t{ \"Orange\", 100 },\n"
"};\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tint points = (int)_pointsDict[MyColor];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In the above code, [code]points[/code] will be assigned the value that is "
"paired with the appropriate color selected in [code]my_color[/code].\n"
"Dictionaries can contain more complex data:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_dict = {\n"
"\t\"First Array\": [1, 2, 3, 4] # Assigns an Array to a String key.\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"var myDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"First Array\", new Godot.Collections.Array { 1, 2, 3, 4 } }\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To add a key to an existing dictionary, access it like an existing key and "
"assign to it:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var points_dict = { \"White\": 50, \"Yellow\": 75, \"Orange\": 100 }\n"
"points_dict[\"Blue\"] = 150 # Add \"Blue\" as a key and assign 150 as its "
"value.\n"
"[/gdscript]\n"
"[csharp]\n"
"var pointsDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"White\", 50 },\n"
"\t{ \"Yellow\", 75 },\n"
"\t{ \"Orange\", 100 },\n"
"};\n"
"pointsDict[\"Blue\"] = 150; // Add \"Blue\" as a key and assign 150 as its "
"value.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Finally, untyped dictionaries can contain different types of keys and values "
"in the same dictionary:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This is a valid dictionary.\n"
"# To access the string \"Nested value\" below, use `my_dict.sub_dict.sub_key` "
"or `my_dict[\"sub_dict\"][\"sub_key\"]`.\n"
"# Indexing styles can be mixed and matched depending on your needs.\n"
"var my_dict = {\n"
"\t\"String Key\": 5,\n"
"\t4: [1, 2, 3],\n"
"\t7: \"Hello\",\n"
"\t\"sub_dict\": { \"sub_key\": \"Nested value\" },\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"// This is a valid dictionary.\n"
"// To access the string \"Nested value\" below, use "
"`((Godot.Collections.Dictionary)myDict[\"sub_dict\"])[\"sub_key\"]`.\n"
"var myDict = new Godot.Collections.Dictionary {\n"
"\t{ \"String Key\", 5 },\n"
"\t{ 4, new Godot.Collections.Array { 1, 2, 3 } },\n"
"\t{ 7, \"Hello\" },\n"
"\t{ \"sub_dict\", new Godot.Collections.Dictionary { { \"sub_key\", \"Nested "
"value\" } } },\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The keys of a dictionary can be iterated with the [code]for[/code] keyword:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var groceries = { \"Orange\": 20, \"Apple\": 2, \"Banana\": 4 }\n"
"for fruit in groceries:\n"
"\tvar amount = groceries[fruit]\n"
"[/gdscript]\n"
"[csharp]\n"
"var groceries = new Godot.Collections.Dictionary { { \"Orange\", 20 }, "
"{ \"Apple\", 2 }, { \"Banana\", 4 } };\n"
"foreach (var (fruit, amount) in groceries)\n"
"{\n"
"\t// `fruit` is the key, `amount` is the value.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To enforce a certain type for keys and values, you can create a [i]typed "
"dictionary[/i]. Typed dictionaries can only contain keys and values of the "
"given types, or that inherit from the given classes:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Creates a typed dictionary with String keys and int values.\n"
"# Attempting to use any other type for keys or values will result in an "
"error.\n"
"var typed_dict: Dictionary[String, int] = {\n"
"\t\"some_key\": 1,\n"
"\t\"some_other_key\": 2,\n"
"}\n"
"\n"
"# Creates a typed dictionary with String keys and values of any type.\n"
"# Attempting to use any other type for keys will result in an error.\n"
"var typed_dict_key_only: Dictionary[String, Variant] = {\n"
"\t\"some_key\": 12.34,\n"
"\t\"some_other_key\": \"string\",\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"// Creates a typed dictionary with String keys and int values.\n"
"// Attempting to use any other type for keys or values will result in an "
"error.\n"
"var typedDict = new Godot.Collections.Dictionary<String, int> {\n"
"\t{\"some_key\", 1},\n"
"\t{\"some_other_key\", 2},\n"
"};\n"
"\n"
"// Creates a typed dictionary with String keys and values of any type.\n"
"// Attempting to use any other type for keys will result in an error.\n"
"var typedDictKeyOnly = new Godot.Collections.Dictionary<String, Variant> {\n"
"\t{\"some_key\", 12.34},\n"
"\t{\"some_other_key\", \"string\"},\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Dictionaries are always passed by reference. To get a copy of a "
"dictionary which can be modified independently of the original dictionary, "
"use [method duplicate].\n"
"[b]Note:[/b] Erasing elements while iterating over dictionaries is [b]not[/b] "
"supported and will result in unpredictable behavior."
msgstr ""
"Les dictionnaires sont des conteneurs associatifs qui contient des valeurs "
"référencées par des clés uniques. Les dictionnaires préservent l'ordre "
"d'insertion lors de l'ajout d'éléments. Dans d'autres langages de "
"programmation, cette structure de données est souvent appelée table de "
"hachage ou tableau associatif.\n"
"Vous pouvez définir un dictionnaire avec une liste de paires au format "
"[code]clé : valeur[/code] séparées par des virgules entre des accolades [code]"
"{}[/code].\n"
"Créer un dictionnaire :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var mon_dict = {} # Crée un dictionnaire vide.\n"
"\n"
"var dict_variable_cle = \"Une autre clé\"\n"
"var dict_variable_valeur = \"valeur2\"\n"
"var autre_dict = {\n"
"\t\"Une clé\": \"valeur1\",\n"
"\tdict_variable_cle : dict_variable_valeur,\n"
"}\n"
"\n"
"var dict_points = {\"Blanc\": 50, \"Jaune\": 75, \"Orange\": 100}\n"
"\n"
"# Syntaxe alternative façon Lua.\n"
"# Ne nécessite pas de guillemets autour des clés, mais seules les chaines de "
"caractères constantes peuvent être utilisées comme nom pour les clés.\n"
"# De plus, les noms des clés doivent commencer par une lettre ou un tiret du "
"bas (\"_\").\n"
"# Ici, `une_cle` est une chaine de caractère, pas une variable !\n"
"another_dict = {\n"
"\tune_cle = 42,\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"var monDict = new Godot.Collections.Dictionary(); // Crée un dictionnaire "
"vide.\n"
"var dictPoints= new Godot.Collections.Dictionary\n"
"{\n"
"\t{\"Blanc\", 50},\n"
"\t{\"Jaune\", 75},\n"
"\t{\"Orange\", 100}\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Vous pouvez accéder aux valeurs d'un dictionnaire en utilisant la clé "
"associée. Dans l'exemple suivant, [code]dict_points[\"Blanc\"][/code] "
"renverra [code]50[/code]. Vous pouvez aussi écrire [code]dict_points.Blanc[/"
"code], qui est équivalent. Par contre, vous devez utiliser la syntaxe avec "
"les accolades si la clé n'est pas une chaine de caractère constante (comme un "
"nombre ou une variable).\n"
"[codeblocks]\n"
"[gdscript]\n"
"export(string, \"Blanc\", \"Jaune\", \"Orange\") var ma_couleur: String\n"
"var dict_points = {\"Blanc\": 50, \"Jaune\": 75, \"Orange\": 100}\n"
"func _ready():\n"
"\t# On ne peut pas utiliser la syntaxe en point puisque `ma_couleur` est une "
"variable.\n"
"\tvar points = dict_points[ma_couleur]\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export(PropertyHint.Enum, \"Blanc,Jaune,Orange\")]\n"
"public string MaCouleur { get; set; }\n"
"private Godot.Collections.Dictionary _dictPoints= new "
"Godot.Collections.Dictionary\n"
"{\n"
"\t{\"Blanc\", 50},\n"
"\t{\"Jaune\", 75},\n"
"\t{\"Orange\", 100}\n"
"};\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tint points = (int)_dictPoints[MaCouleur];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Dans l'exemple au-dessus, [code]points[/code] sera assigné à une valeur "
"associée à la couleur choisie dans [code]ma_couleur[/code].\n"
"Les dictionnaires peuvent contenir des données plus complexes :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var mon_dict = {\n"
"\t\"Premier tableau\": [1, 2, 3, 4] # Assigne un Array (Tableau) à un clé "
"String.\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"var monDict= new Godot.Collections.Dictionary\n"
"{\n"
"\t{\"Premier tableau\", new Godot.Collections.Array{1, 2, 3, 4}}\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Pour ajouter une clé à un dictionnaire déjà existant, accédez-y comme si "
"c'était une clé existante et associez lui une valeur :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict_points = {\"Blanc\": 50, \"Jaune\": 75, \"Orange\": 100}\n"
"points_dict[\"Bleu\"] = 150 # Ajoute \"Bleu\" comme clé et assigne 150 pour "
"sa valeur.\n"
"[/gdscript]\n"
"[csharp]\n"
"var dictPoints = new Godot.Collections.Dictionary\n"
"{\n"
"\t{\"Blanc\", 50},\n"
"\t{\"Jaune\", 75},\n"
"\t{\"Orange\", 100}\n"
"};\n"
"pointsDict[\"Blue\"] = 150; // Ajoute \"Bleu\" comme clé et assigne 150 pour "
"sa valeur.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Enfin, les dictionnaires non typés peuvent utiliser différents types de clés "
"et de valeurs dans le même dictionnaire :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Ceci est un dictionnaire valide.\n"
"# Pour accéder à \"Sous valeur\" en-dessous, utilisez "
"`mon_dict.sous_dict.sous_cle` ou `mon_dict[\"sous_dict\"][\"sous_cle\"]`.\n"
"# Les styles d'accès peuvent être mélangés suivant les besoins.\n"
"var mon_dict = {\n"
"\t\"Clé String\": 5,\n"
"\t4: [1, 2, 3],\n"
"\t7: \"Hello\",\n"
"\t\"sous_dict\": {\"sous_cle\": \"Sous valeur\"},\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"// Ceci est un dictionnaire valide.\n"
"// Pour accéder à \"Sous valeur\" en-dessous, "
"utilisez`((Godot.Collections.Dictionary)monDict[\"sous_dict\"])"
"[\"sous_cle\"]`.\n"
"var monDict = new Godot.Collections.Dictionary {\n"
"\t{\"Clé String\", 5},\n"
"\t{4, new Godot.Collections.Array{1,2,3}},\n"
"\t{7, \"Hello\"},\n"
"\t{\"sous_dict\", new Godot.Collections.Dictionary{{\"sous_cle\", \"Sous "
"valeur\"}}}\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Les clés d'un dictionnaire peuvent être itérées dessus avec le mot-clé "
"[code]for[/code] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var courses = {\"Orange\": 20, \"Pomme\": 2, \"Banane\": 4}\n"
"for fruit in courses :\n"
"\tvar quantite = courses[fruit]\n"
"[/gdscript]\n"
"[csharp]\n"
"var courses = new Godot.Collections.Dictionary{{\"Orange\", 20}, {\"Pomme\", "
"2}, {\"Banane\", 4}};\n"
"foreach (var (fruit, quantite) in courses)\n"
"{\n"
"\t// `fruit` est la clé, `quantite` est la valeur.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Pour imposer un certain type pour les clés et les valeurs, vous pouvez créer "
"un [i]dictionnaire typé[/i]. Les dictionnaires typés ne peuvent contenir que "
"des clés et des valeurs des types donnés, ou qui héritent des classes "
"données :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Crée un dictionnaire typé avec des clés de type String et des valeurs de "
"type int.\n"
"# Essayer d'utiliser un autre type pour les clés ou les valeurs résultera en "
"une erreur.\n"
"var dict_type: Dictionary[String, int] = {\n"
"\t\"une_cle\": 1,\n"
"\t\"une_autre_cle\": 2,\n"
"}\n"
"\n"
"# Crée un dictionnaire typé avec des clés de type String et des valeurs de "
"n'importe quel type.\n"
"# Essayer d'utiliser un autre type pour les clés résultera en une erreur.\n"
"var dict_type_cle_seulement: Dictionary[String, Variant] = {\n"
"\t\"une_cle\": 12.34,\n"
"\t\"une_autre_cle\": \"string\",\n"
"}\n"
"[/gdscript]\n"
"[csharp]\n"
"// Crée un dictionnaire typé avec des clés de type String et des valeurs de "
"type int.\n"
"// Essayer d'utiliser un autre type pour les clés ou les valeurs résultera en "
"une erreur.\n"
"var dictType = new Godot.Collections.Dictionary<String, int> {\n"
"\t{\"une_cle\", 1},\n"
"\t{\"une_autre_cle\", 2},\n"
"};\n"
"\n"
"// Crée un dictionnaire typé avec des clés de type String et des valeurs de "
"n'importe quel type.\n"
"// Essayer d'utiliser un autre type pour les clés résultera en une erreur.\n"
"var dictTypeCleSeulement = new Godot.Collections.Dictionary<String, Variant> "
"{\n"
"\t{\"une_cle\", 12.34},\n"
"\t{\"une_autre_cle\", \"string\"},\n"
"};\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Les dictionnaires sont toujours passés par référence. Pour "
"obtenir une copie d'un dictionnaire qui peut être modifié de manière "
"indépendante de l'original, utilisez [method duplicate].\n"
"[b]Note :[/b] Effacer des éléments lors de l'itération d'un dictionnaire "
"n'est [b]pas[/b] supporté et va résulter en un comportement imprévisible."

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 [code]true[/code] if the dictionary contains all keys in the given "
"[param keys] array.\n"
"[codeblock]\n"
"var data = { \"width\": 10, \"height\": 20 }\n"
"data.has_all([\"height\", \"width\"]) # Returns true\n"
"[/codeblock]"
msgstr ""
"Renvoie [code]true[/code] si le dictionnaire contient toutes les clés du "
"tableau [param keys] donné.\n"
"[codeblock]\n"
"var donnees = {\"largeur\" : 10, \"hauteur\" : 20}\n"
"donnees.has_all([\"hauteur\", \"largeur\"]) # Renvoie true\n"
"[/codeblock]"

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]. Returns [code]true[/code] if the value is set successfully. Fails and "
"returns [code]false[/code] if the dictionary is read-only, or if [param key] "
"and [param value] don't match the dictionary's types. This is the same as "
"using the [code][][/code] operator ([code]dict[key] = value[/code])."
msgstr ""
"Définit la valeur de l'élément à la clé [param key] donnée à la valeur [param "
"value] donnée. Renvoie [code]true[/code] si la valeur a été définie avec "
"succès. Échoue et renvoie [code]false[/code] si le dictionnaire est en "
"lecture-seule, ou si [param key] et [param value] ne correspondent pas aux "
"types du dictionnaire. Ceci est identique à l'utilisation de l'opérateur "
"[code][][/code] ([code]dict[key] = value[/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 "Provides methods for managing directories and their content."
msgstr "Fournit des méthodes de gestion de répertoires et de leur contenu."

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 ""
"Changes the currently opened directory to the one passed as an argument. The "
"argument can be relative to the current directory (e.g. [code]newdir[/code] "
"or [code]../newdir[/code]), or an absolute path (e.g. [code]/tmp/newdir[/"
"code] or [code]res://somedir/newdir[/code]).\n"
"Returns one of the [enum Error] code constants ([constant OK] on success).\n"
"[b]Note:[/b] The new directory must be within the same scope, e.g. when you "
"had opened a directory inside [code]res://[/code], you can't change it to "
"[code]user://[/code] directory. If you need to open a directory in another "
"access scope, use [method open] to create a new instance instead."
msgstr ""
"Change le dossier actuellement ouvert en celui donné en argument. L'argument "
"peut être relatif au répertoire actuel (par exemple [code]nouveau_dossier[/"
"code] ou [code]./nouveau_dossier[/code]), ou être un chemin absolu (par "
"exemple [code]/tmp/nouveau_dossier[/code] ou [code]res://un_dossier/"
"nouveau_dossier[/code]).\n"
"Renvoie une des constantes de code [enum Error] (et [constant OK] en cas de "
"succès).\n"
"[b]Note :[/b] Le nouveau répertoire doit être dans la même portée, par "
"exemple lorsque vous avez ouvert un dossier à l'intérieur de [code]res://[/"
"code], vous ne pouvez pas le modifier en le répertoire [code]user://[/code]. "
"Si vous avez besoin d'ouvrir un répertoire dans une autre portée d'accès, "
"utilisez [method open] pour créer une nouvelle instance."

msgid ""
"Copies the [param from] file to the [param to] destination. Both arguments "
"should be paths to files, either relative or absolute. If the destination "
"file exists and is not access-protected, it will be overwritten.\n"
"If [param chmod_flags] is different than [code]-1[/code], the Unix "
"permissions for the destination path will be set to the provided value, if "
"available on the current operating system.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Copie le fichier à l'emplacement [param from] vers la destination [param to]. "
"Ces deux arguments devraient contenir des chemins vers des fichiers, soit "
"relatifs soit absolus. Si le fichier de destination existe et qu'il n'est pas "
"protégé pour l'accès, il sera écrasé.\n"
"Si [param chmod_flags] est différent de [code]-1[/code], les permissions Unix "
"pour le chemin de destination seront définies à la valeur fournie, si "
"disponible sur le système d'exploitation actuel.\n"
"Renvoie une des constantes de code [enum Error] ([constant OK] en cas de "
"réussite)."

msgid "Static version of [method copy]. Supports only absolute paths."
msgstr ""
"Version statique de [method copy]. Supporte seulement les chemins absolus."

msgid ""
"Creates symbolic link between files or folders.\n"
"[b]Note:[/b] On Windows, this method works only if the application is running "
"with elevated privileges or Developer Mode is enabled.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux, and Windows."
msgstr ""
"Crée un lien symbolique entre des fichiers ou des dossiers.\n"
"[b]Note :[/b] Sur Windows, cette méthode ne fonctionne que si l'application "
"s'exécute avec des privilèges élevés ou que le Mode Développeur est activé.\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS, Linux et Windows."

msgid ""
"Creates a temporary directory. This directory will be freed when the returned "
"[DirAccess] is freed.\n"
"If [param prefix] is not empty, it will be prefixed to the directory name, "
"separated by a [code]-[/code].\n"
"If [param keep] is [code]true[/code], the directory is not deleted when the "
"returned [DirAccess] is freed.\n"
"Returns [code]null[/code] if opening the directory failed. You can use "
"[method get_open_error] to check the error that occurred."
msgstr ""
"Crée un répertoire temporaire. Ce répertoire sera libéré lorsque le "
"[DirAccess] renvoyé est libéré.\n"
"Si [param prefix] n'est pas vide, il sera préfixé au nom du répertoire, "
"séparé par un [code]-[/code].\n"
"Si [param keep] vaut [code]true[/code], le répertoire n'est pas supprimé "
"lorsque le [DirAccess] renvoyé est libéré.\n"
"Renvoie [code]null[/code] si l'ouverture du répertoire a échoué. Vous pouvez "
"utiliser [method get_open_error] pour vérifier l'erreur qui s'est produite."

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 whether the target directory exists. The argument can be relative to "
"the current directory, or an absolute path.\n"
"[b]Note:[/b] The returned [bool] in the editor and after exporting when used "
"on a path in the [code]res://[/code] directory may be different. Some files "
"are converted to engine-specific formats when exported, potentially changing "
"the directory structure."
msgstr ""
"Renvoie si le répertoire cible existe. L'argument peut être relatif au "
"répertoire courant, ou être un chemin absolu.\n"
"[b]Note :[/b] Le [bool] renvoyé dans l'éditeur et après l'export "
"lorsqu'utilisé sur un chemin dans le répertoire [code]res://[/code] peut être "
"différent. Certains fichiers sont convertis en formats spécifiques au moteur "
"lorsqu'ils sont exportés, pouvant potentiellement modifier la structure du "
"répertoire."

msgid ""
"Static version of [method dir_exists]. Supports only absolute paths.\n"
"[b]Note:[/b] The returned [bool] in the editor and after exporting when used "
"on a path in the [code]res://[/code] directory may be different. Some files "
"are converted to engine-specific formats when exported, potentially changing "
"the directory structure."
msgstr ""
"Version statique de [method dir_exists]. Supporte seulement les chemins "
"absolus.\n"
"[b]Note :[/b] Le [bool] renvoyé dans l'éditeur et après l'export "
"lorsqu'utilisé sur un chemin dans le répertoire [code]res://[/code] peut être "
"différent. Certains fichiers sont convertis en formats spécifiques au moteur "
"lorsqu'ils sont exportés, pouvant potentiellement modifier la structure du "
"répertoire."

msgid ""
"Returns whether the target file exists. The argument can be relative to the "
"current directory, or an absolute path.\n"
"For a static equivalent, use [method FileAccess.file_exists].\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
"files), and their source asset will not be included in the exported game, as "
"only the imported version is used. See [method ResourceLoader.exists] for an "
"alternative approach that takes resource remapping into account."
msgstr ""
"Renvoie si le fichier cible existe. L'argument peut être relatif au "
"répertoire courant, ou être un chemin absolu.\n"
"Pour un équivalent statique, utilisez [method FileAccess.file_exists].\n"
"[b]Note :[/b] De nombreux types de ressources sont importés (par ex. textures "
"ou fichiers sonores), et leur ressource source ne sera pas incluse dans le "
"jeu exporté, car seule la version importée est utilisée. Voir [method "
"ResourceLoader.exists] pour une approche alternative qui prend en compte la "
"ré-association des ressources."

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 ""
"Returns the currently opened directory's drive index. See [method "
"get_drive_name] to convert returned index to the name of the drive."
msgstr ""
"Renvoie l'index de disque du répertoire actuellement ouvert. Voir [method "
"get_drive_name] pour convertir l'index renvoyé en le nom du lecteur."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding files. The array is sorted alphabetically.\n"
"Affected by [member include_hidden] and [member include_navigational].\n"
"[b]Note:[/b] The returned directories in the editor and after exporting in "
"the [code]res://[/code] directory may differ as some files are converted to "
"engine-specific formats when exported."
msgstr ""
"Renvoie un [PackedStringArray] contenant des noms de fichiers du contenu du "
"répertoire, à l'exception des fichiers. Le tableau est trié par ordre "
"alphabétique.\n"
"Affectée par [member include_hidden] et [member include_navigational].\n"
"[b]Note :[/b] Les répertoires renvoyés dans l'éditeur et après l'export dans "
"le répertoire [code]res://[/code] peuvent différer puisque certains fichiers "
"sont convertis en formats spécifiques aux moteurs lorsqu'ils sont exportés."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding files, at the given [param path]. The array is sorted "
"alphabetically.\n"
"Use [method get_directories] if you want more control of what gets included.\n"
"[b]Note:[/b] The returned directories in the editor and after exporting in "
"the [code]res://[/code] directory may differ as some files are converted to "
"engine-specific formats when exported."
msgstr ""
"Renvoie un [PackedStringArray] contenant des noms de fichiers du contenu du "
"répertoire, à l'exception des fichiers, au chemin [param path] donné. Le "
"tableau est trié par ordre alphabétique.\n"
"Utilisez [method get_directories] si vous voulez plus de contrôle sur ce qui "
"est inclus\n"
"[b]Note :[/b] Les répertoires renvoyés dans l'éditeur et après l'export dans "
"le répertoire [code]res://[/code] peuvent différer puisque certains fichiers "
"sont convertis en formats spécifiques aux moteurs lorsqu'ils sont exportés."

msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem.\n"
"On macOS and Android, returns the number of mounted volumes.\n"
"On Linux, returns the number of mounted volumes and GTK 3 bookmarks.\n"
"On other platforms, the method returns 0."
msgstr ""
"Sur Windows, renvoie le nombre de disque (partitions) montés sur le système "
"de fichiers actuel.\n"
"Sur macOS et Android, renvoie le nombre de volumes montés.\n"
"Sur Linux, renvoie le nombre de volumes montés, ainsi que les favoris GTK 3.\n"
"Pour les autres plates-formes, la méthode renvoie 0."

msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]).\n"
"On macOS, returns the path to the mounted volume passed as an argument.\n"
"On Linux, returns the path to the mounted volume or GTK 3 bookmark passed as "
"an argument.\n"
"On Android (API level 30+), returns the path to the mounted volume as an "
"argument.\n"
"On other platforms, or if the requested drive does not exist, the method "
"returns an empty String."
msgstr ""
"Sur Windows, renvoie le nom du disque (partition) passé en argument (par "
"exemple [code]C:[/code]).\n"
"Sur macOS, renvoie le chemin vers le volume monté qui est passé en argument.\n"
"Sur Linux, renvoie le chemin vers le volume monté, ou le favori GTK 3, passé "
"en argument.\n"
"Sur Android (Niveau d'API 30+), renvoie le chemin vers le volume monté passé "
"en argument.\n"
"Pour les autres plates-formes, ou si le disque demandé n'existe pas, la "
"méthode renvoie un String vide."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding directories. The array is sorted alphabetically.\n"
"Affected by [member include_hidden].\n"
"[b]Note:[/b] When used on a [code]res://[/code] path in an exported project, "
"only the files actually included in the PCK at the given folder level are "
"returned. In practice, this means that since imported resources are stored in "
"a top-level [code].godot/[/code] folder, only paths to [code]*.gd[/code] and "
"[code]*.import[/code] files are returned (plus a few files such as "
"[code]project.godot[/code] or [code]project.binary[/code] and the project "
"icon). In an exported project, the list of returned files will also vary "
"depending on whether [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] is [code]true[/code]."
msgstr ""
"Renvoie un [PackedStringArray] contenant des noms de fichiers du contenu du "
"répertoire, à l'exception des dossiers. Le tableau est trié par ordre "
"alphabétique.\n"
"Affectée par [member include_hidden].\n"
"[b]Note :[/b] Lorsqu'utilisée sur un chemin [code]res://[/code] dans un "
"projet exporté, seuls les fichiers effectivement inclus dans le PCK au niveau "
"du dossier donné sont renvoyés. En pratique, cela signifie que, puisque les "
"ressources importées sont stockées dans un dossier [code].godot/[/code] "
"racine, seuls les chemins vers des fichiers [code]*.gd[/code] et "
"[code]*.import[/code] sont renvoyés (plus quelques fichiers tels que "
"[code]project.godot[/code] ou [code]project.binary[/code] et l'icône du "
"projet). Dans un projet exporté, la liste des fichiers renvoyés varie aussi "
"selon si [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] vaut [code]true[/code]."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding directories, at the given [param path]. The array is sorted "
"alphabetically.\n"
"Use [method get_files] if you want more control of what gets included.\n"
"[b]Note:[/b] When used on a [code]res://[/code] path in an exported project, "
"only the files included in the PCK at the given folder level are returned. In "
"practice, this means that since imported resources are stored in a top-level "
"[code].godot/[/code] folder, only paths to [code].gd[/code] and "
"[code].import[/code] files are returned (plus a few other files, such as "
"[code]project.godot[/code] or [code]project.binary[/code] and the project "
"icon). In an exported project, the list of returned files will also vary "
"depending on [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary]."
msgstr ""
"Renvoie un [PackedStringArray] contenant des noms de fichiers du contenu du "
"répertoire, à l'exception des dossiers, au chemin [param path] donné. Le "
"tableau est trié par ordre alphabétique.\n"
"Utilisé [method get_files] si vous voulez plus de contrôle sur ce qui est "
"inclus.\n"
"[b]Note :[/b] Lorsqu'utilisée sur un chemin [code]res://[/code] dans un "
"projet exporté, seuls les fichiers effectivement inclus dans le PCK au niveau "
"du dossier donné sont renvoyés. En pratique, cela signifie que, puisque les "
"ressources importées sont stockées dans un dossier [code].godot/[/code] "
"racine, seuls les chemins vers des fichiers [code]*.gd[/code] et "
"[code]*.import[/code] sont renvoyés (plus quelques fichiers tels que "
"[code]project.godot[/code] ou [code]project.binary[/code] et l'icône du "
"projet). Dans un projet exporté, la liste des fichiers renvoyés varie aussi "
"selon [member ProjectSettings.editor/export/convert_text_resources_to_binary]."

msgid ""
"Returns file system type name of the current directory's disk. Returned "
"values are uppercase strings like [code]NTFS[/code], [code]FAT32[/code], "
"[code]EXFAT[/code], [code]APFS[/code], [code]EXT4[/code], [code]BTRFS[/code], "
"and so on.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux, Windows and for PCK "
"virtual file system."
msgstr ""
"Renvoie le nom du système de fichiers du disque du répertoire courant. Les "
"valeurs renvoyées sont des chaînes en majuscules comme [code]NTFS[/code], "
"[code]FAT32[/code], [code]EXFAT[/code], [code]APFS[/code], [code]EXT4[/code], "
"[code]BTRFS[/code] etc...\n"
"[b]Note :[/b] Cette méthode est implémentée sur MacOS, Linux, Windows et le "
"système de fichiers PCK virtuels."

msgid ""
"Returns the next element (file or directory) in the current directory.\n"
"The name of the file or directory is returned (and not its full path). Once "
"the stream has been fully processed, the method returns an empty [String] and "
"closes the stream automatically (i.e. [method list_dir_end] would not be "
"mandatory in such a case)."
msgstr ""
"Retourne l'élément suivant (un fichier ou un dossier) dans le dossier "
"actuel.\n"
"Le nom du fichier ou du dossier est renvoyé (et non pas son chemin complet). "
"Une fois que le flux a été entièrement traité, la méthode renvoie une "
"[String] vide et ferme automatiquement le flux (dans ce cas, l'appel à "
"[method list_dir_end] n'était pas obligatoire)."

msgid "Returns the result of the last [method open] call in the current thread."
msgstr ""
"Renvoie le résultat du dernier appel à [method open] sur le thread courant."

msgid ""
"Returns the available space on the current directory's disk, in bytes. "
"Returns [code]0[/code] if the platform-specific method to query the available "
"space fails."
msgstr ""
"Renvoie l'espace disponible sur le disque du dossier actuel, en bytes. "
"Renvoie [code]0[/code] si la méthode spécifique à la plateforme pour demander "
"l'espace disponible échoue."

msgid ""
"Returns [code]true[/code] if the directory is a macOS bundle.\n"
"[b]Note:[/b] This method is implemented on macOS."
msgstr ""
"Renvoie [code]true[/code] si la dossier est un bundle macOS.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Returns [code]true[/code] if the file system or directory use case sensitive "
"file names.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux (for EXT4 and F2FS "
"filesystems only) and Windows. On other platforms, it always returns "
"[code]true[/code]."
msgstr ""
"Renvoie [code]true[/code] si le système de fichiers ou répertoire utilisent "
"des noms de fichiers sensibles à la casse.\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS, Linux (pour les "
"systèmes de fichiers EXT4 et F2FS seulement) et Windows. Sur d'autres "
"plateformes, elle renvoie toujours [code]true[/code]."

msgid ""
"Returns [code]true[/code] if paths [param path_a] and [param path_b] resolve "
"to the same file system object. Returns [code]false[/code] otherwise, even if "
"the files are bit-for-bit identical (e.g., identical copies of the file that "
"are not symbolic links)."
msgstr ""
"Renvoie [code]true[/code] si les chemins [param path_a] et [param path_b] se "
"résolvent en le même objet du système de fichiers. Renvoie [code]false[/code] "
"sinon, même si les fichiers sont identiques à bit par bit (par exemple, des "
"copies identiques du fichier qui ne sont pas des liens symboliques)."

msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the currently opened stream if needed. "
"Once the stream has been processed, it should typically be closed with "
"[method list_dir_end].\n"
"Affected by [member include_hidden] and [member include_navigational].\n"
"[b]Note:[/b] The order of files and directories returned by this method is "
"not deterministic, and can vary between operating systems. If you want a list "
"of all files or folders sorted alphabetically, use [method get_files] or "
"[method get_directories]."
msgstr ""
"Initialise le flux utilisé pour lister tous les fichiers et dossiers avec la "
"fonction [method get_next], fermant le flux actuellement ouvert si "
"nécessaire. Une fois le flux traité, il devrait généralement être fermé avec "
"[method list_dir_end].\n"
"Affecté par [member include_hidden] et [member include_navigational].\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. Si vous voulez une liste de tous les fichiers ou dossiers "
"triés par ordre alphabétique, utilisez [method get_files] ou [method "
"get_directories]."

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 directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
"existing directory (to create the full path recursively, see [method "
"make_dir_recursive]).\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Crée un dossier. L'argument peut être relatif au dossier actuel, ou un chemin "
"absolu. Le dossier cible doit être placé dans un dossier déjà existant (pour "
"créer le chemin complet de manière récursive, voir [method "
"make_dir_recursive]).\n"
"Renvoie une des constantes de code [enum Error] ([constant OK] en cas de "
"succès)."

msgid "Static version of [method make_dir]. Supports only absolute paths."
msgstr ""
"Version statique de [method make_dir]. Supporte seulement les chemins absolus."

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 ""
"Creates a new [DirAccess] object and opens an existing directory of the "
"filesystem. The [param path] argument can be within the project tree "
"([code]res://folder[/code]), the user directory ([code]user://folder[/code]) "
"or an absolute path of the user filesystem (e.g. [code]/tmp/folder[/code] or "
"[code]C:\\tmp\\folder[/code]).\n"
"Returns [code]null[/code] if opening the directory failed. You can use "
"[method get_open_error] to check the error that occurred."
msgstr ""
"Crée un nouvel objet [DirAccess] et ouvre un dossier existant dans le système "
"de fichiers. Le chemin [param path] peut être dans l'arborescence du projet "
"([code]res://dossier[/code]), dans le dossier utilisateur ([code]user://"
"dossier[/code]) ou un chemin absolu dans le système de fichiers de "
"l'utilisateur (par ex. [code]/tmp/dossier[/code] ou [code]C:\\tmp\\dossier[/"
"code]).\n"
"Renvoie [code]null[/code] si l'ouverture du dossier a échoué. Vous pouvez "
"utiliser [method get_open_error] pour vérifier l'erreur qui s'est produite."

msgid ""
"Returns target of the symbolic link.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux, and Windows."
msgstr ""
"Renvoie la cible du lien symbolique.\n"
"[b]Note :[/b] Cette méthode est implémentée sur macOS, Linux et Windows."

msgid ""
"Permanently deletes the target file or an empty directory. The argument can "
"be relative to the current directory, or an absolute path. If the target "
"directory is not empty, the operation will fail.\n"
"If you don't want to delete the file/directory permanently, use [method "
"OS.move_to_trash] instead.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Supprime définitivement le fichier cible ou un répertoire vide. L'argument "
"peut être relatif au dossier actuel, ou un chemin absolu. Si le répertoire "
"cible n'est pas vide, l'opération échouera.\n"
"Si vous ne voulez pas supprimer définitivement le fichier ou le dossier, "
"utilisez plutôt [method OS.move_to_trash].\n"
"Renvoie une des constantes de code [enum Error] ([constant OK] en cas de "
"succès)."

msgid "Static version of [method remove]. Supports only absolute paths."
msgstr ""
"Version statique de [method remove]. Supporte seulement les chemins absolus."

msgid ""
"Renames (move) the [param from] file or directory to the [param to] "
"destination. Both arguments should be paths to files or directories, either "
"relative or absolute. If the destination file or directory exists and is not "
"access-protected, it will be overwritten.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Renomme (déplace) le fichier ou le dossier [param from] vers la destination "
"[param to]. Les deux arguments devraient être des chemins vers des fichiers "
"ou des dossiers, soit relatifs soit absolus. Si le fichier ou le dossier de "
"destination existe et que son accès n'est pas protégé, il sera écrasé.\n"
"Renvoie une des constantes de code [enum Error] ([constant OK] en cas de "
"succès)."

msgid "Static version of [method rename]. Supports only absolute paths."
msgstr ""
"Version statique de [method rename]. Supporte seulement les chemins absolus."

msgid ""
"If [code]true[/code], hidden files are included when navigating the "
"directory.\n"
"Affects [method list_dir_begin], [method get_directories] and [method "
"get_files]."
msgstr ""
"Si [code]true[/code], les fichiers cachés sont inclus lors de la navigation "
"dans le répertoire.\n"
"Affecte [method list_dir_begin], [method get_directories] et [method "
"get_files]."

msgid ""
"If [code]true[/code], [code].[/code] and [code]..[/code] are included when "
"navigating the directory.\n"
"Affects [method list_dir_begin] and [method get_directories]."
msgstr ""
"Si [code]true[/code], [code].[/code] et [code]..[/code] sont inclus lors de "
"la navigation dans le répertoire.\n"
"Affecte [method list_dir_begin] et [method get_directories]."

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 nœud. 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 nœud. 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 divisions des ombres. Augmenter cette valeur "
"rendra visible 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 des ombres directionnelles)."

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 ""
"Sets the metadata of the accessibility element [param id] to [param meta]."
msgstr ""
"Définit les méta-données pour l'élément d'accessibilité [param id] à [param "
"meta]."

msgid ""
"Sets the window focused state for assistive apps.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows.\n"
"[b]Note:[/b] Advanced users only! [Window] objects call this method "
"automatically."
msgstr ""
"Définit l'état avec focus de la fenêtre pour les applications d'assistance.\n"
"[b]Note :[/b] Cette méthode est implémentée sur Linux, macOS et Windows.\n"
"[b]Note :[/b] Utilisateurs avancés seulement ! Les objets [Window] appellent "
"cette méthode automatiquement."

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 the element to be a member of the group."
msgstr "Définit l'élément pour être membre du groupe."

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 ""
"Returns the index of the screen containing the window with the keyboard "
"focus, or the primary screen if there's no focused window.\n"
"[b]Note:[/b] This method is implemented on Linux/X11, macOS, and Windows. On "
"other platforms, this method always returns the primary screen."
msgstr ""
"Renvoie l'index de l'écran contenant la fenêtre avec le focus du clavier, ou "
"l'écran primaire s'il n'y a pas de fenêtre ciblée.\n"
"[b]Note :[/b] Cette méthode est implémentée sur Linux/X11, macOS et Windows. "
"Sur d'autres plateformes, cette méthode renvoie toujours l'écran primaire."

msgid ""
"Returns the index of the screen that overlaps the most with the given "
"rectangle. Returns [constant INVALID_SCREEN] if the rectangle doesn't overlap "
"with any screen or has no area."
msgstr ""
"Renvoie l'index de l'écran qui recoupe le plus le rectangle donné. Renvoie "
"[constant INVALID_SCREEN] si le rectangle ne chevauche pas d'écran ou n'a pas "
"d'aire."

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 ""
"Returns [code]true[/code] if the item at index [param idx] is disabled. When "
"it is disabled it can't be selected, or its action invoked.\n"
"See [method global_menu_set_item_disabled] for more info on how to disable 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 désactivé. "
"Lorsqu'il est désactivé, il ne peut être sélectionné, ou son action "
"invoquée.\n"
"Voir [method global_menu_set_item_disabled] pour plus d'informations sur la "
"façon de désactiver un élément.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is hidden.\n"
"See [method global_menu_set_item_hidden] for more info on how to hide an "
"item.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Retourne [code]true[/code] si l'élément à l'index [param idx] est caché.\n"
"Voir [method global_menu_set_item_hidden] pour plus d'informations sur la "
"façon de cacher un élément.\n"
"[b]Note:[/b] Cette méthode n'est disponible que sur macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] has radio button-"
"style checkability.\n"
"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
"unchecking items in radio groups.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Retourne [code]true[/code] si l'élément à l'index [param idx] a une "
"vérification de style bouton radio.\n"
"[b]Note :[/b] Ceci est purement cosmétique ; vous devez ajouter la logique "
"pour cocher/décocher les éléments dans les groupes radio.\n"
"[b]Note :[/b] Cette méthode n'est supportée que sur macOS."

msgid ""
"Removes the item at index [param idx] from the global menu [param "
"menu_root].\n"
"[b]Note:[/b] The indices of items after the removed item will be shifted by "
"one.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Retire l'élément à l'index \"idx\" du menu global [param menu_root].\n"
"[b]Note :[/b] Les indices des éléments après l'éléments supprimé seront "
"décalés de un.\n"
"[b]Note :[/b] Cette méthode est implémentée 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 ""
"Sets the callback of the item at index [param idx]. Callback is emitted when "
"an item is pressed.\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 rappel de l'élément à l'index [param idx]. Le rappel est émis "
"lorsqu'un article est pressé.\n"
"[b]Note:[/b] Le [param callback] Appelable doit accepter exactement un "
"paramètre Variant, le paramètre passé à la Callable sera la valeur transmise "
"au paramètre [code]tag[/code] lorsque l'élément de menu a été créé.\n"
"[b]Note:[/b] Cette méthode n'est supportée que sur macOS."

msgid ""
"Sets whether the item at index [param idx] has a checkbox. If [code]false[/"
"code], sets the type of the item to plain text.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit si l'élément à l'index [param idx] a une case à cocher. Si "
"[code]false[/code], fixe le type de l'élément au texte brut.\n"
"[b]Note :[/b] Cette méthode n'est supporté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 ""
"Replaces the [Texture2D] icon of the specified [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Note:[/b] This method is not supported by macOS \"_dock\" menu items."
msgstr ""
"Remplace l'icône [Texture2D] de l'index [param idx] spécifié.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur macOS.\n"
"[b]Note :[/b] Cette méthode n'est pas supportée par les éléments de menu "
"\"_dock\" 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 type of the item at the specified index [param idx] to radio button. "
"If [code]false[/code], sets the type of the item to plain text.\n"
"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
"unchecking items in radio groups.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Définit le type de l'élément à l'index spécifié [param idx] en bouton radio. "
"Si [code]false[/code], fixe le type de l'élément au texte brut.\n"
"[b]Note :[/b] Ceci est purement cosmétique ; vous devez ajouter la logique "
"pour cocher/décocher les éléments dans les groupes radio.\n"
"[b]Note :[/b] Cette méthode n'est supporté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 ""
"Registers callables to emit when the menu is respectively about to show or "
"closed. Callback methods should have zero arguments."
msgstr ""
"Enregistre les appels (callables) à émettre lorsque le menu est "
"respectivement sur le point d'apparaitre ou de fermer. Les méthodes de rappel "
"ne doivent pas avoir d'arguments."

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 ""
"Converts a physical (US QWERTY) [param keycode] to one in the active keyboard "
"layout.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Convertit un clavier physique (US QWERTY) [param keycode] en un clavier dans "
"la mise en page du clavier actif.\n"
"[b]Note :[/b] Cette méthode est supportée sur Linux (X11/Wayland), macOS et "
"Windows."

msgid ""
"Converts a physical (US QWERTY) [param keycode] to localized label printed on "
"the key in the active keyboard layout.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Convertit un clavier physique (US QWERTY) [param keycode] vers l'étiquette "
"localisée imprimée sur la touche dans la disposition active du clavier.\n"
"[b]Note:[/b] Cette méthode est supportée sur Linux (X11/Wayland), macOS et "
"Windows."

msgid ""
"Returns the ISO-639/BCP-47 language code of the keyboard layout at position "
"[param index].\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Retourne le code de langue ISO-639/BCP-47 de la disposition du clavier à la "
"position [param index].\n"
"[b]Note :[/b] Cette méthode est implémentée sur Linux (X11/Wayland, macOS et "
"Windows."

msgid ""
"Returns the localized name of the keyboard layout at position [param index].\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Retourne le nom localisé de la disposition du clavier à la position [param "
"index].\n"
"[b]Note :[/b] Cette méthode est implémentée sur Linux(X11/Wayland), macOS et "
"Windows."

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 dots per inch density of the specified screen. Returns platform "
"specific default value if [param screen] is invalid.\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] On macOS, returned value is inaccurate if fractional display "
"scaling mode is used.\n"
"[b]Note:[/b] On Android devices, the actual screen densities are grouped into "
"six generalized densities:\n"
"[codeblock lang=text]\n"
"   ldpi - 120 dpi\n"
"   mdpi - 160 dpi\n"
"   hdpi - 240 dpi\n"
"  xhdpi - 320 dpi\n"
" xxhdpi - 480 dpi\n"
"xxxhdpi - 640 dpi\n"
"[/codeblock]\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux (X11/Wayland), "
"macOS, Web, and Windows. On other platforms, this method always returns "
"[code]72[/code]."
msgstr ""
"Retourne la densité en points pour pouce (\"dpi\") de l'écran spécifié. "
"Renvoie la valeur par défaut spécifique de la plateforme si [param screen] "
"est invalide.\n"
"[b]Note :[/b] Une des constantes suivantes peut être utilisée comme [param "
"screen] : [constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], "
"[constant SCREEN_WITH_MOUSE_FOCUS], ou [constant SCREEN_WITH_KEYBOARD_FOCUS]\n"
"[b]Note :[/b] Sous macOS, la valeur retournée est inexacte si la mise à "
"l'échelle n'est pas un nombre entier.\n"
"[b]Note :[/b] Pour les appareils Android, les densités des écrans sont "
"groupés en six catégories :\n"
"[codeblock]\n"
"   ldpi - 120 dpi\n"
"   mdpi - 160 dpi\n"
"   hdpi - 240 dpi\n"
"  xhdpi - 320 dpi\n"
" xxhdpi - 480 dpi\n"
"xxxhdpi - 640 dpi\n"
"[/codeblock]\n"
"[b]Note :[/b] Cette méthode est implémentée sous Android, Linux, macOS et "
"Windows. Retourne [code]72[/code] sur les plateformes non supportées."

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 ""
"Returns the color of the pixel at the given screen [param position]. On multi-"
"monitor setups, the screen position is relative to the virtual desktop area.\n"
"[b]Note:[/b] This method is implemented on Linux (X11, excluding XWayland), "
"macOS, and Windows. On other platforms, this method always returns "
"[code]Color(0, 0, 0, 1)[/code].\n"
"[b]Note:[/b] On macOS, this method requires the \"Screen Recording\" "
"permission. If permission is not granted, this method returns a color from a "
"screenshot that will not include other application windows or OS elements not "
"related to the application."
msgstr ""
"Renvoie la couleur du pixel à l'écran donné [param position]. Sur les "
"configurations à moniteurs multiples, la position d'écran est relative à la "
"zone de bureau virtuel.\n"
"[b]Note :[/b] Cette méthode est mise en œuvre sur Linux (X11, excluant "
"XWayland), macOS et Windows. Sur d'autres plateformes, cette méthode renvoie "
"toujours [code]Color(0, 0, 0, 1)[/code].\n"
"[b]Note :[/b] Sur macOS, cette méthode nécessite l'autorisation d' "
"\"enregistrement d'écran\". Si la permission n'est pas accordée, cette "
"méthode renvoie une couleur d'une capture d'écran qui n'inclut pas d'autres "
"fenêtres d'application ou des éléments OS non liés à l'application."

msgid ""
"Sets the [param screen]'s [param orientation]. See also [method "
"screen_get_orientation].\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] This method is implemented on Android and iOS.\n"
"[b]Note:[/b] On iOS, this method has no effect if [member "
"ProjectSettings.display/window/handheld/orientation] is not set to [constant "
"SCREEN_SENSOR]."
msgstr ""
"Définit la [param orientation] du [param screen]. Voir aussi [method "
"screen_get_orientation].\n"
"[b]Note :[/b] Une des constantes suivantes peut être utilisée comme [param "
"screen] : [constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], "
"[constant SCREEN_WITH_MOUSE_FOCUS], ou [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note :[/b] Cette méthode est supportée sur Android et iOS.\n"
"[b]Note :[/b] Sur iOS, cette méthode n'a aucun effet si [member "
"ProjectSettings.display/window/handheld/orientation] n'est pas définie à "
"[constant SCREEN_SENSOR]."

msgid ""
"Sets the callback that should be called when the system's theme settings are "
"changed. [param callable] should accept zero arguments.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, macOS, Windows, and "
"Linux (X11/Wayland)."
msgstr ""
"Définit la fonction de rappel qui devrait être lancé lorsque les paramètres "
"du thème système sont changés. [param callable] ne devrait pas accepter "
"d'argument.\n"
"[b]Note :[/b] Cette méthode est supportée sur Android, iOS, macOS, Windows et "
"Linux (X11/Wayland)."

msgid ""
"Returns the rectangle for the given status indicator [param id] in screen "
"coordinates. If the status indicator is not visible, returns an empty "
"[Rect2].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Retourne le rectangle pour l'indicateur de statut donné [param id] dans les "
"coordonnées d'écran. Si l'indicateur de statut n'est pas visible, retourne un "
"[Rect2] vide.\n"
"[b]Note :[/b] Cette méthode est supportée sur macOS et Windows."

msgid ""
"Sets the application status indicator activation callback. [param callback] "
"should take two arguments: [int] mouse button index (one of [enum "
"MouseButton] values) and [Vector2i] click position in screen coordinates.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Définit la fonction de rappel de l'activation de l'indicateur de statut "
"d'application. [param callback] devrait prendre deux arguments : [int] index "
"du bouton de souris (une des valeurs de [enum MouseButton]) et [Vector2i] la "
"position du clic dans les coordonnées de l'écran.\n"
"[b]Note :[/b] Cette méthode est supportée sur macOS et Windows."

msgid ""
"Sets the application status indicator icon.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Définit l'icône de l'indicateur de statut d'application.\n"
"[b]Note :[/b] Cette méthode est supportée sur macOS et Windows."

msgid ""
"Sets the application status indicator tooltip.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Définit l'info-bulle d'indicateur de statut d'application.\n"
"[b]Note :[/b] Cette méthode est supportée sur macOS et Windows."

msgid ""
"Returns [code]true[/code] if the synthesizer is in a paused state.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Retourne [code]true[/code] si le synthétiseur est dans un état de pause.\n"
"[b]Note :[/b] Cette méthode est supportée sur Android, iOS, Web, Linux (X11/"
"Wayland), macOS et Windows."

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 ""
"Sets the mouse cursor position to the given [param position] relative to an "
"origin at the upper left corner of the currently focused game Window Manager "
"window.\n"
"[b]Note:[/b] [method warp_mouse] is only supported on Windows, macOS, and "
"Linux (X11/Wayland). It has no effect on Android, iOS, and Web."
msgstr ""
"Règle la position du curseur de la souris à la [param position] par rapport à "
"une origine au coin supérieur gauche de la fenêtre actuellement en focus par "
"le Window Manager.\n"
"[b]Note :[/b] [method warp_mouse] n'est pris en charge que sous Windows, "
"macOS et Linux (X11/Wayland). Il n'a aucun effet sur Android, iOS et Web."

msgid ""
"Returns the [method Object.get_instance_id] of the [Window] the [param "
"window_id] is attached to."
msgstr ""
"Retourne le [method Object.get_instance_id] de la fenêtre [Window] à laquelle "
"[param window_id] est joint."

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 PIN entry."
msgstr "Pavé numérique virtuel, utile pour l'entrée d'un PIN."

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 ""
"Virtual keyboard for entering a password. On most platforms, this should "
"disable autocomplete and autocapitalization.\n"
"[b]Note:[/b] This is not supported on Web. Instead, this behaves identically "
"to [constant KEYBOARD_TYPE_DEFAULT]."
msgstr ""
"Clavier virtuel pour entrer un mot de passe. Sur la plupart des plateformes, "
"cela devrait désactiver l'autocomplétion et l'autocapitalisation.\n"
"[b]Note :[/b] Ceci n'est pas supporté sur le Web. À la place, ceci se "
"comporte de manière identique à [constant KEYBOARD_TYPE_DEFAULT]."

msgid "Virtual keyboard with additional keys to assist with typing URLs."
msgstr ""
"Clavier virtuel avec des touches supplémentaires pour aider à taper des URLs."

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 "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 ""
"Texture scale. [code]1.0[/code] is the original SVG size. Higher values "
"result in a larger image."
msgstr ""
"Échelle de la texture. [code]1.0[/code] est la taille SVG originale. Des "
"valeurs plus élevées résultent en une image plus grande."

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 ""
"Try to initiate the DTLS handshake with the given [param udp_peer] which must "
"be already connected (see [method PacketPeerUDP.connect_to_host]).\n"
"[b]Note:[/b] You must check that the state of the return PacketPeerUDP is "
"[constant PacketPeerDTLS.STATUS_HANDSHAKING], as it is normal that 50% of the "
"new connections will be invalid due to cookie exchange."
msgstr ""
"Essaye de débuter une vérification DTLS avec le [param udp_peer] donné qui "
"doit être connecté au préalable (voir [method "
"PacketPeerUDP.connect_to_host]).\n"
"[b]Note :[/b] Vous devez vérifier que le status du retour PacketPeerUDP est "
"[constant PacketPeerDTLS.STATUS_HANDSHAKING], car il est commun que 50% des "
"nouvelles connexions deviennent invalides en raison de l'échange de cookies."

msgid ""
"Override this method to be notified when a breakpoint is set in the editor."
msgstr ""
"Surcharger cette méthode pour être notifié quand un point d'arrêt est défini "
"dans l'éditeur."

msgid ""
"Override this method to be notified when all breakpoints are cleared in the "
"editor."
msgstr ""
"Surcharger cette méthode pour être notifié lorsque tous les points d'arrêt "
"sont supprimés dans l'éditeur."

msgid ""
"Override this method to be notified when a breakpoint line has been clicked "
"in the debugger breakpoint panel."
msgstr ""
"Surcharger cette méthode pour être notifié quand un point d'arrêt a été "
"cliqué dans le panneau de point d'arrêt du débogueur."

msgid ""
"Override this method to be notified whenever a new [EditorDebuggerSession] is "
"created. Note that the session may be inactive during this stage."
msgstr ""
"Surcharger cette méthode pour être notifié chaque fois qu'un nouveau "
"[EditorDebuggerSession] est créé. Notez que la session peut être inactive à "
"ce stade."

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 "Making plugins"
msgstr "Créer des plugins"

msgid "Bottom panel."
msgstr "Panneau du bas."

msgid "Represents the size of the [enum DockSlot] enum."
msgstr "Représente la taille de l’enum [enum DockSlot]."

msgid "Creates a PCK archive at [param path] for the specified [param preset]."
msgstr "Crée une archive PCK à [param path] pour le [param preset] spécifié."

msgid "Creates a full project at [param path] for the specified [param preset]."
msgstr "Crée un projet complet à [param path] pour le [param preset] spécifié."

msgid "Create a ZIP archive at [param path] for the specified [param preset]."
msgstr "Créer une archive ZIP à [param path] pour le [param preset] spécifié."

msgid ""
"Returns the message category for the message with the given [param index]."
msgstr ""
"Retourne la catégorie de message pour le message à l'[param index] donné."

msgid "Returns the text for the message with the given [param index]."
msgstr "Retourne le texte pour le message avec le [param index] donné."

msgid "Returns the type for the message with the given [param index]."
msgstr "Retourne le type pour le message au [param index] donné."

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 ""
"If [code]true[/code], [code]x86_64[/code] binaries are included into exported "
"project."
msgstr ""
"Si [code]true[/code], les binaires [code]x86_64[/code] sont incluses dans le "
"projet exporté."

msgid "Name of the application."
msgstr "Nom de l'application."

msgid ""
"If [code]true[/code], this app will show in the device's app library.\n"
"[b]Note:[/b] This is [code]true[/code] by default."
msgstr ""
"Si [code]true[/code], cette application apparaîtra dans la bibliothèque "
"d'applications de l'appareil.\n"
"[b]Note:[/b] Ceci est [code]true[/code] par défaut."

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 ""
"Allows to modify the global animation scaling factor. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_ANIMATION_SCALE]SET_ANIMATION_SCALE[/url]."
msgstr ""
"Permet de modifier le facteur d'échelle d'animation global. Voir [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_ANIMATION_SCALE]SET_ANIMATION_SCALE[/url]."

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.\n"
"[b]Note:[/b] When exporting as a dedicated server, the shader baker is always "
"disabled since no rendering is performed."
msgstr ""
"Si [code]true[/code], les shaders seront compilées et intégrées dans "
"l'application. Cette option n'est prise en charge que lors de l'utilisation "
"des rendus Forward+ ou Mobile.\n"
"[b]Note :[/b] Lors de l'exportation en tant que serveur dédié, le compilateur "
"de shader est toujours désactivé car aucun rendu n'est effectué."

msgid "Exporting for iOS"
msgstr "Exportation pour iOS"

msgid "iOS plugins documentation index"
msgstr "Index de la documentation sur les plugins iOS"

msgid "Base class for custom [EditorExportPlatform] implementations (plugins)."
msgstr ""
"Classe de base pour des implémentations de [EditorExportPlatform] "
"personnalisées (plugins)."

msgid "Returns export platform name."
msgstr "Renvoie le nom de la plateforme d'export."

msgid "Returns tooltip of the one-click deploy menu button."
msgstr "Retourne l'info-bulle bouton de menu du déploiement en un clic."

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 ""
"If [code]true[/code], hints that the app might perform better with a higher "
"memory limit. See [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_developer_kernel_increased-memory-"
"limit]com.apple.developer.kernel.increased-memory-limit[/url]."
msgstr ""
"Si [code]true[/code], cela indique que l'application pourrait mieux "
"fonctionner avec une limite de mémoire plus élevée. Voir [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_developer_kernel_increased-memory-"
"limit]com.apple.developer.kernel.increased-memory-limit[/url]."

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 links browsing history to the user's identity."
msgstr ""
"Indique si votre application relie l'historique de navigation à l'identité de "
"l'utilisateur."

msgid "Indicates whether your app uses browsing history for tracking."
msgstr ""
"Indique si votre application utilise l'historique de navigation pour du suivi."

msgid "Indicates whether your app collects coarse location data."
msgstr ""
"Indique si votre application collecte des données de localisation "
"approximatives."

msgid ""
"The reasons your app collects coarse location data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Les raisons pour lesquelles votre application collecte des données de "
"localisation approximatives. Voir [url=https://developer.apple.com/"
"documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."

msgid ""
"Indicates whether your app links coarse location data to the user's identity."
msgstr ""
"Indique si votre application relie les données de localisation approximatives "
"à l'identité de l'utilisateur."

msgid "Indicates whether your app uses coarse location data for tracking."
msgstr ""
"Indique si votre application utilise les données de localisation "
"approximatives pour du suivi."

msgid "Indicates whether your app collects contacts."
msgstr "Indique si votre application recueille des contacts."

msgid ""
"The reasons your app collects contacts. See [url=https://developer.apple.com/"
"documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Les raisons pour lesquelles votre application recueille des contacts. Voir "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Describing "
"data use in privacy manifests[/url]."

msgid "Indicates whether your app links contacts to the user's identity."
msgstr ""
"Indique si votre application relie les contacts à l'identité de l'utilisateur."

msgid "Indicates whether your app uses contacts for tracking."
msgstr "Indique si votre application utilise les contacts pour le suivi."

msgid "Indicates whether your app collects crash data."
msgstr "Indique si votre application collecte des données de plantage."

msgid ""
"The reasons your app collects crash data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Les raisons pour lesquelles votre application collecte les données de "
"plantage. Voir [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Describing "
"data use in privacy manifests[/url]."

msgid "Indicates whether your app links crash data to the user's identity."
msgstr ""
"Indique si votre application relie les données de plantage à l'identité de "
"l'utilisateur."

msgid "Indicates whether your app uses crash data for tracking."
msgstr ""
"Indique si votre application utilise les données de plantage pour le suivi."

msgid "Indicates whether your app collects credit information."
msgstr "Indique si votre application collecte des informations de crédit."

msgid ""
"The reasons your app collects credit information. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Les raisons pour lesquelles votre application collecte les informations de "
"crédit. Voir [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Describing "
"data use in privacy manifests[/url]."

msgid ""
"Indicates whether your app links credit information to the user's identity."
msgstr ""
"Indique si votre application relie les informations de crédit à l'identité de "
"l'utilisateur."

msgid "Indicates whether your app uses credit information for tracking."
msgstr ""
"Indique si votre application utilise les informations de crédit pour le suivi."

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 ""
"If [code]true[/code], shaders will be compiled and embedded in the "
"application. This option is only supported when using the Forward+ and Mobile "
"renderers.\n"
"[b]Note:[/b] When exporting as a dedicated server, the shader baker is always "
"disabled since no rendering is performed."
msgstr ""
"Si [code]true[/code], les shaders seront compilées et intégrées dans "
"l'application. Cette option n'est prise en charge que lors de l'utilisation "
"des rendus Forward+ et Mobile.\n"
"[b]Note:[/b] Lors de l'exportation en tant que serveur dédié, le compilateur "
"de shaders est toujours désactivé car aucun rendu n'est effectué."

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. It is called when the export "
"starts and provides all information about the export. [param features] is the "
"list of features for the export, [param is_debug] is [code]true[/code] for "
"debug builds, [param path] is the target path for the exported project. "
"[param flags] is only used when running a runnable profile, e.g. when using "
"native run on Android."
msgstr ""
"Méthode virtuelle à surcharger par l'utilisateur. Elle est appelée lorsque "
"l'exportation commence et fournit toutes les informations sur l'exportation. "
"[param features] est la liste des fonctionnalité pour l'export, [param "
"is_debug] est [code]true[/code] pour les builds de débogage, [param path] est "
"le chemin cible pour le projet exporté. [param flags] n'est utilisé que lors "
"de l'exécution d'un profil exécutable, p.ex. lorsque vous utilisez native run "
"sur Android."

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 ""
"Virtual method to be overridden by the user. Called for each exported file "
"before [method _customize_resource] and [method _customize_scene]. The "
"arguments can be used to identify the file. [param path] is the path of the "
"file, [param type] is the [Resource] represented by the file (e.g. "
"[PackedScene]), and [param features] is the list of features for the export.\n"
"Calling [method skip] inside this callback will make the file not included in "
"the export."
msgstr ""
"Une méthode virtuelle à surcharger par l'utilisateur. Elle est appelée pour "
"chaque fichier exporté avant[method _customize_resource] and [method "
"_customize_scene]. Les arguments passés peuvent permettre d'identifier le "
"fichier exporté.[param path] est le chemin du fichier, [param type] est la "
"[Resource] représentée par ce fichier (par exemple [PackedScene]) et [param "
"features] est la liste des fonctionnalités de cette exportation.\n"
"Appeler [method skip] dans cette fonction de rappel pour ne pas exporter ce "
"fichier."

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 ""
"Adds an Apple embedded platform bundle file from the given [param path] to "
"the exported project."
msgstr ""
"Ajoute un fichier de paquet de plate-forme intégré d'Apple depuis [param "
"path] au projet exporté."

msgid ""
"Adds a dynamic library (*.dylib, *.framework) to the Linking Phase in the "
"Apple embedded platform's Xcode project and embeds it into the resulting "
"binary.\n"
"[b]Note:[/b] For static libraries (*.a), this works in the 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 de la plateforme intégrée Apple 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 ""
"Adds a static library from the given [param path] to the Apple embedded "
"platform project."
msgstr ""
"Ajoute une bibliothèque statique depuis [param path] au projet de plateforme "
"intégré Apple."

msgid ""
"Adds a custom file to be exported. [param path] is the virtual path that can "
"be used to load the file, [param file] is the binary data of the file.\n"
"When called inside [method _export_file] and [param remap] is [code]true[/"
"code], the current file will not be exported, but instead remapped to this "
"custom file. [param remap] is ignored when called in other places.\n"
"[param file] will not be imported, so consider using [method "
"_customize_resource] to remap imported resources."
msgstr ""
"Ajoute un fichier personnalisé à exporter. [param path] est le chemin virtuel "
"qui peut être utilisé pour charger le fichier, [param file] représente les "
"données binaires du fichier. \n"
"Quand appelée au sein de [method _export_file] et lorsque [param remap] est "
"[code]true[/code], le fichier ne sera pas exporté, mais sera remplacé par une "
"référence à ce fichier. [param remap] est ignoré quand appelé dans d'autres "
"endroits.\n"
"[param file] ne sera pas importé, alors envisagez d'utiliser [method "
"_customize_resource] pour remapper les ressources importées."

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

msgid ""
"Adds an iOS bundle file from the given [param path] to the exported project."
msgstr "Ajoute un fichier d'iOS depuis [param path] au projet exporté."

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 a static library from the given [param path] to the iOS project."
msgstr "Ajoute une bibliothèque statique depuis [param path] au projet iOS."

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 ""
"Adds a shared object or a directory containing only shared objects with the "
"given [param tags] and destination [param path].\n"
"[b]Note:[/b] In case of macOS exports, those shared objects will be added to "
"[code]Frameworks[/code] directory of app bundle.\n"
"In case of a directory code-sign will error if you place non code object in "
"directory."
msgstr ""
"Ajoute un objet partagé ou un dossier contenant uniquement des objets "
"partagés avec les étiquettes[param tags] et la destination [param path].\n"
"[b]Note :[/b] En cas d'exportation pour macOS, ces objets partagés seront "
"ajoutés au dossier [code]Frameworks[/code] de l'app bundle.\n"
"Pour les dossiers, \"code-sign\" affichera une erreur si vous placez dans ce "
"dossier un objet qui n'est pas du code."

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 ""
"Returns the value of the setting identified by [param name] using export "
"preset feature tag overrides instead of current OS features."
msgstr ""
"Retourne la valeur du paramètre spécifié par [param name] en utilisant la "
"fonctionnalité préréglée d'exportation au lieu des fonctions OS actuelles."

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 ""
"Returns [code]true[/code] if editing for the class specified by [param "
"class_name] is disabled. 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 ""
"Retourne [code]true[/code] si l'édition pour la classe spécifiée par [param "
"class_name] est désactivée. Lorsqu'elle est désactivée, la classe apparaîtra "
"toujours dans la boite de dialogue Créer un nouveau nœud, mais l'inspecteur "
"sera en lecture seule lors de la sélection d'un nœud qui étend la classe."

msgid ""
"Returns [code]true[/code] if [param property] is disabled 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 ""
"Retourne [code]true[/code] si [param property] est désactivé dans la classe "
"spécifiée par [param class_name]. Lorsqu'une propriété est désactivée, elle "
"n'apparaîtra pas dans l'inspecteur lors de la sélection d'un nœud qui étend "
"la classe spécifiée par [param class_name]."

msgid ""
"Returns [code]true[/code] if the [param feature] is disabled. When a feature "
"is disabled, it will disappear from the editor entirely."
msgstr ""
"Retourne [code]true[/code] si [param feature] est désactivé. Lorsqu'une "
"fonction est désactivée, elle disparaîtra entièrement de l'éditeur."

msgid ""
"If [param disable] is [code]true[/code], disables the class specified by "
"[param class_name]. When disabled, the class won't appear in the Create New "
"Node dialog."
msgstr ""
"Si [param disable] est [code]true[/code], désactive la classe spécifiée par "
"[param class_name]. Lorsqu'elle est désactivée, la classe n'apparaîtra pas "
"dans la boite de dialogue 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 ""
"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 "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 a view into the filesystem at [param path]."
msgstr "Retourne une vue dans le système de fichiers à [param path]."

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 directory with name [param name] or [code]-1[/code] "
"if not found."
msgstr ""
"Retourne l'index du répertoire avec le nom [param name] ou [code]-1[/code] si "
"rien n'est trouvé."

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 base class of the script class defined in the file at index "
"[param idx]. If the file doesn't define a script class using the "
"[code]class_name[/code] syntax, this will return an empty string."
msgstr ""
"Retourne la classe de base de la classe de script définie dans le fichier à "
"index [param idx]. Si le fichier ne définit pas une classe de script en "
"utilisant la syntaxe [code]class_name[/code], retourne une chaîne vide."

msgid ""
"Returns the name of the script class defined in the file at index [param "
"idx]. If the file doesn't define a script class using the [code]class_name[/"
"code] syntax, this will return an empty string."
msgstr ""
"Retourne le nom de la classe script définie dans le fichier à l'index [param "
"idx]. Si le fichier ne définit pas une classe de script en utilisant la "
"syntaxe [code]class_name[/code], retourne une chaîne vide."

msgid ""
"Returns the resource type of the file at index [param idx]. 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 ""
"Retoune le type de ressource du fichier à l'index [param idx]. Retourne une "
"chaîne telle que [code]\"Resource\"[/code] ou [code]\"GDScript\"[/code], "
"[i]pas[/i] une extension de fichier telle que [code]\".gd\"[/code]."

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 ""
"This is the control that implements property editing in the editor's Settings "
"dialogs, the Inspector dock, etc. To get the [EditorInspector] used in the "
"editor's Inspector dock, use [method EditorInterface.get_inspector].\n"
"[EditorInspector] will show properties in the same order as the array "
"returned by [method Object.get_property_list].\n"
"If a property's name is path-like (i.e. if it contains forward slashes), "
"[EditorInspector] will create nested sections for \"directories\" along the "
"path. For example, if a property is named [code]highlighting/gdscript/"
"node_path_color[/code], it will be shown as \"Node Path Color\" inside the "
"\"GDScript\" section nested inside the \"Highlighting\" section.\n"
"If a property has [constant PROPERTY_USAGE_GROUP] usage, it will group "
"subsequent properties whose name starts with the property's hint string. The "
"group ends when a property does not start with that hint string or when a new "
"group starts. An empty group name effectively ends the current group. "
"[EditorInspector] will create a top-level section for each group. For "
"example, if a property with group usage is named [code]Collide With[/code] "
"and its hint string is [code]collide_with_[/code], a subsequent "
"[code]collide_with_area[/code] property will be shown as \"Area\" inside the "
"\"Collide With\" section. There is also a special case: when the hint string "
"contains the name of a property, that property is grouped too. This is mainly "
"to help grouping properties like [code]font[/code], [code]font_color[/code] "
"and [code]font_size[/code] (using the hint string [code]font_[/code]).\n"
"If a property has [constant PROPERTY_USAGE_SUBGROUP] usage, a subgroup will "
"be created in the same way as a group, and a second-level section will be "
"created for each subgroup.\n"
"[b]Note:[/b] Unlike sections created from path-like property names, "
"[EditorInspector] won't capitalize the name for sections created from groups. "
"So properties with group usage usually use capitalized names instead of "
"snake_cased names."
msgstr ""
"Il s'agit du contrôle qui permet l'édition des propriétés dans les dialogues "
"des Paramètres de l'éditeur, le dock Inspecteur, etc. Pour obtenir le "
"[EditorInspector] utilisé dans le fichier d'inspecteur de l'éditeur, utilisez "
"[method EditorInterface.get_inspector]\n"
"[EditorInspector] affichera les propriétés dans le même ordre que le tableau "
"retourné par [method Object.get_property_list]\n"
"Si le nom d'un propriété établie est semblable à celui d'un chemin (c'est-à-"
"dire s'il commence par des barres obliques), [EditorInspector] créera des "
"sections imbriquées pour les « dossier » suivant le chemin. Par exemple, si "
"une propriété est nommée [code]highlighting/gdscript/node_path_color[/code], "
"elle sera affichée comme \"Node Path Color\" dans la section \"GDScript\" "
"imbriquée dans la section \"Highlighting\".\n"
"Si une propriété a l'usage [constant @GlobalScope.PROPERTY_USAGE_GROUP], elle "
"regroupera les propriétés dont le nom commence par la chaîne d'indice de la "
"propriété. Le groupe se termine quand une propriété ne commence pas avec "
"cette chaîne d'indice ou quand un nouveau groupe commence. Un nom de groupe "
"vide termine le groupe actuel. [EditorInspector] créera une section tout en "
"haut pour chaque groupe. Par exemple, si une propriété avec l'utilisation de "
"groupe est nommée [code]Collide With[/code] et que sa chaîne d'indice est "
"[code]collide_with[/code], une propriété [code]collide_with_area[/code] "
"suivante sera affichée comme \"Area\" dans la section \"Collide With\". Il y "
"a aussi un cas spécial : lorsque la chaîne hint contient le nom d'une "
"propriété, cette propriété est regroupée aussi. C'est principalement pour "
"aider à grouper des propriétés comme [code]font[/code], [code]font_color[/"
"code] et [code]font_size[/code] (en utilisant la chaîne hint [code]font_[/"
"code]).\n"
"Si une propriété a [constant PROPERTY_USAGE_SUBGROUP] usage, un sous-groupe "
"sera créé de la même manière qu'un groupe, et une section de deuxième niveau "
"sera créée pour chaque sous-groupe.\n"
"[b]Note :[/b] Contrairement aux sections créées à partir de noms de propriété "
"selon des chemins, [EditorInspector] a obtenu le nom de sections créées à "
"partir de groupes. Ainsi, les propriétés avec l'utilisation de groupe "
"utilisent généralement des noms capitalisés au lieu des noms en "
"\"snake_case\"."

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 ""
"Adds an editor that allows modifying multiple properties. The [param editor] "
"control must extend [EditorProperty]."
msgstr ""
"Ajoute un éditeur qui permet de modifier plusieurs propriétés. Le contrôle "
"[param editor] doit étendre [EditorProperty]."

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 editor control responsible for main screen plugins and tools. Use "
"it with plugins that implement [method EditorPlugin._has_main_screen].\n"
"[b]Note:[/b] This node is a [VBoxContainer], which means that if you add a "
"[Control] child to it, you need to set the child's [member "
"Control.size_flags_vertical] to [constant Control.SIZE_EXPAND_FILL] to make "
"it use the full available space.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Retourne le contrôle de l'éditeur responsable des plugins et outils d'écran "
"principal. Utilisez-le avec des plugins qui implémentent [method "
"EditorPlugin._has_main_screen].\n"
"[b]Note :[/b] Ce nœud est un [VBoxContainer], ce qui signifie que si vous lui "
"ajoutez un [Control] fils, vous devez définir le [member "
"Control.size_flags_vertical] du fils à [constant Control.SIZE_EXPAND_FILL] "
"pour le faire utiliser tout l'espace disponible.\n"
"[b]Avertissement :[/b] La suppression et la libération de ce nœud rend une "
"partie de l'éditeur inutile et peut causer un crash."

msgid "Returns the [EditorPaths] singleton."
msgstr "Renvoie le singleton [EditorPaths]."

msgid ""
"Returns the actual scale of the editor UI ([code]1.0[/code] being 100% "
"scale). This can be used to adjust position and dimensions of the UI added by "
"plugins.\n"
"[b]Note:[/b] This value is set via the [member EditorSettings.interface/"
"editor/display_scale] and [member EditorSettings.interface/editor/"
"custom_display_scale] settings. The editor must be restarted for changes to "
"be properly applied."
msgstr ""
"Renvoie l'échelle actuelle de l'interface de l'éditeur ([code]1.0[/code] "
"étant une échelle à 100%). Cela peut être utilisé pour régler la position et "
"les dimensions des interfaces utilisateurs ajoutées par des plugins.\n"
"[b]Note :[/b] Cette valeur est définie via les paramètres [member "
"EditorSettings.interface/editor/display_scale] et [member "
"EditorSettings.interface/editor/custom_display_scale]. L'éditeur doit être "
"redémarré pour que les changements soient complètement appliqués."

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 ""
"Shows the given property on the given [param object] in the editor's "
"Inspector dock. If [param inspector_only] is [code]true[/code], plugins will "
"not attempt to edit [param object]."
msgstr ""
"Affiche la propriété donnée du [param object] donné dans le dock d'inspecteur "
"de l'éditeur. Si [param inspector_only] vaut [code]true[/code], les plugins "
"ne tenteront pas de modifier [param object]."

msgid ""
"Returns [code]true[/code] if the specified [param plugin] is enabled. The "
"plugin name is the same as its directory name."
msgstr ""
"Retourne [code]true[/code] si le [param plugin] spécifié est activé. Le nom "
"du plugin est le même que son nom de répertoire."

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 ""
"Saves the currently active scene. Returns either [constant OK] or [constant "
"ERR_CANT_CREATE]."
msgstr ""
"Enregistre la scène actuellement active. Retourne soit [constant OK] ou "
"[constant ERR_CANT_CREATE]."

msgid "Saves the currently active scene as a file at [param path]."
msgstr ""
"Enregistre la scène actuellement active en tant que fichier localisé sur "
"[param path]."

msgid ""
"Selects the file, with the path provided by [param file], in the FileSystem "
"dock."
msgstr ""
"Sélectionne le fichier, avec le chemin spécifié dans [param file], dans la "
"barre d'outils « FileSystem »."

msgid ""
"Sets the editor's current main screen to the one specified in [param name]. "
"[param name] must match the title of the tab in question exactly (e.g. "
"[code]2D[/code], [code]3D[/code], [code skip-lint]Script[/code], [code]Game[/"
"code], or [code]AssetLib[/code] for default tabs)."
msgstr ""
"Définit l'écran principal courant de l'éditeur à celui spécifié dans [param "
"name]. [param name] doit correspondre exactement au titre de l'onglet en "
"question (par exemple [code]2D[/code], [code]3D[/code], [code skip-"
"lint]Script[/code], [code]Game[/code], ou [code]AssetLib[/code] pour les "
"onglets par défaut)."

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 ""
"Override this method to return the name of an edited handle (handles must "
"have been previously added by [method add_handles]). Handles can be named for "
"reference to the user when editing.\n"
"The [param secondary] argument is [code]true[/code] when the requested handle "
"is secondary (see [method add_handles] for more information)."
msgstr ""
"Surcharger cette méthode pour retourner le nom d'un gestionnaire édité (les "
"gestionnaires doivent avoir été ajoutés précédemment par [method "
"add_handles]). Les gestionnaires peuvent être nommés pour référence à "
"l'utilisateur lors de l'édition.\n"
"L'argument [param secondary] vaut [code]true[/code] lorsque le gestionnaire "
"demandé est secondaire (voir [method add_handles] pour plus d'informations)."

msgid ""
"Adds the specified [param segments] to the gizmo's collision shape for "
"picking. Call this method during [method _redraw]."
msgstr ""
"Ajoute les [param segments] spécifiés à la forme de collision du manipulateur "
"pour le ramassage. Appelez cette méthode pendant [method _redraw]."

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 ""
"Sets the reference [Node3D] node for the gizmo. [param node] must inherit "
"from [Node3D]."
msgstr ""
"Définit le nœud de référence [Node3D] pour le manipulateur. [param node] doit "
"hériter de [Node3D]."

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 ""
"Override this method to define whether Node3D with this gizmo should be "
"selectable even when the gizmo is hidden."
msgstr ""
"Surcharger cette méthode pour définir si Node3D devrait être sélectionnable "
"avec ce manipulateur même lorsque le manipulateur est caché."

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 ""
"Returns the relative path to the editor settings for this project. This is "
"usually [code]\"res://.godot/editor\"[/code]. Projects all have a unique "
"subdirectory inside the settings path where project-specific editor settings "
"are saved."
msgstr ""
"Retourne le chemin relatif aux paramètres de l'éditeur pour ce projet. C'est "
"habituellement [code]\"res://.godot/editor\"[/code]. Les projets ont tous un "
"sous-répertoire unique dans le chemin de réglage où les paramètres de "
"l'éditeur de projet sont sauvegardés."

msgid "Used by the editor to extend its functionality."
msgstr "Utiliser par l'éditeur pour augmenter ses fonctionnalités."

msgid ""
"Plugins are used by the editor to extend functionality. The most common types "
"of plugins are those which edit a given node or resource type, import plugins "
"and export plugins. See also [EditorScript] to add functions to the editor.\n"
"[b]Note:[/b] Some names in this class contain \"left\" or \"right\" (e.g. "
"[constant DOCK_SLOT_LEFT_UL]). These APIs assume left-to-right layout, and "
"would be backwards when using right-to-left layout. These names are kept for "
"compatibility reasons."
msgstr ""
"Les plugins sont utilisés par l'éditeur pour étendre la fonctionnalité. Les "
"types les plus courants de plugins sont ceux qui modifient un nœud donné ou "
"un type de ressource, les plugins d'importation et les plugins d'exportation. "
"Voir aussi [EditorScript] pour ajouter des fonctions à l'éditeur.\n"
"[b]Note :[/b] Certains noms de cette classe contiennent « left» ou « right» "
"(par exemple [constant DOCK_SLOT_LEFT_UL]). Ces API supposent une mise en "
"page de gauche à droite, et seraient à l'envers lors de l'utilisation de la "
"mise en page de droite à gauche. Ces noms sont conservés pour des raisons de "
"compatibilité."

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 ""
"Called by the engine when the 3D editor's viewport is updated. [param "
"viewport_control] is an overlay on top of the viewport and it can be used for "
"drawing. You can update the viewport manually by calling [method "
"update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_3d_draw_over_viewport(overlay):\n"
"\t# Draw a circle at the cursor's position.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_3d_gui_input(camera, event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Redraw the viewport when the cursor is moved.\n"
"\t\tupdate_overlays()\n"
"\t\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Forward3DDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Draw a circle at the cursor's position.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"viewportCamera, InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Redraw the viewport when the cursor is moved.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"\t}\n"
"\treturn EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Appelé par le moteur quand la fenêtre d'affiche 3D de l'éditeur est mise à "
"jour. [param viewport_control] est un overlay au dessus de la fenêtre "
"d'affichage et peut être utilisé pour le dessin. Vous pouvez mettre à jour la "
"fenêtre d'affichage manuellement en appelant [method update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_3d_draw_over_viewport(overlay):\n"
"\t# Dessine un cercle sur la position du curseur.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_3d_gui_input(camera, event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Redessine la fenêtre d'affichage lorsque le curseur est déplacé.\n"
"\t\tupdate_overlays()\n"
"\t\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Forward3DDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Dessine un cercle sur la position du curseur.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"viewportCamera, InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Redessine la fenêtre d'affichage lorsque le curseur est déplacé.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"\t}\n"
"\treturn EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Called when there is a root node in the current edited scene, [method "
"_handles] is implemented, and an [InputEvent] happens in the 3D viewport. The "
"return value decides whether the [InputEvent] is consumed or forwarded to "
"other [EditorPlugin]s. See [enum AfterGUIInput] for options.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Prevents the InputEvent from reaching other Editor classes.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"[/gdscript]\n"
"[csharp]\n"
"// Prevents the InputEvent from reaching other Editor classes.\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This method must return [constant AFTER_GUI_INPUT_PASS] in order to forward "
"the [InputEvent] to other Editor classes.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP if event is InputEventMouseMotion "
"else EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"// Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn @event is InputEventMouseMotion ? EditorPlugin.AfterGuiInput.Stop : "
"EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Appelé lorsqu'il y a un nœud racine dans la scène modifiée actuelle, [method "
"_handles] est mis en œuvre, et un [InputEvent] se produit dans la fenêtre "
"d'affichage 3D. La valeur retournée décide si le [InputEvent] est consommé ou "
"transmis à d'autres [EditorPlugin]. Voir [enum AfterGUIInput] pour les "
"options.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Empêche l'InputEvent d'atteindre d'autres classes d'Éditeur.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"[/gdscript]\n"
"[csharp]\n"
"// Empêche l'InputEvent d'atteindre d'autres classes d'Éditeur.\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Cette méthode doit retourner [constant AFTER_GUI_INPUT_PASS] afin de "
"transmettre le [InputEvent] aux autres classes d'éditeur.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Utilise InputEventMouseMotion et transmets les autres types d'InputEvent.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP if event is InputEventMouseMotion "
"else EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"// Utilise InputEventMouseMotion et transmets les autres types "
"d'InputEvent..\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn @event is InputEventMouseMotion ? EditorPlugin.AfterGuiInput.Stop : "
"EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Called by the engine when the 2D editor's viewport is updated. [param "
"viewport_control] is an overlay on top of the viewport and it can be used for "
"drawing. You can update the viewport manually by calling [method "
"update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_canvas_draw_over_viewport(overlay):\n"
"\t# Draw a circle at the cursor's position.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_canvas_gui_input(event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Redraw the viewport when the cursor is moved.\n"
"\t\tupdate_overlays()\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _ForwardCanvasDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Draw a circle at the cursor's position.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Redraw the viewport when the cursor is moved.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Appelé par le moteur quand la fenêtre d'affiche 2D de l'éditeur est mise à "
"jour. [param viewport_control] est un overlay sur la fenêtre d'afichage et "
"peut être utilisé pour le dessin. Vous pouvez mettre à jour la fenêtre "
"d'affichage manuellement en appelant [method update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_canvas_draw_over_viewport(overlay):\n"
"\t# Dessine un cercle sur la position du curseur.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_canvas_gui_input(event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Redessine la fenêtre d'affichage lorsque le curseur est déplacé.\n"
"\t\tupdate_overlays()\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _ForwardCanvasDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Dessine un cercle sur la position du curseur.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Redessine la fenêtre d'affichage lorsque le curseur est déplacé.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Called when there is a root node in the current edited scene, [method "
"_handles] is implemented, and an [InputEvent] happens in the 2D viewport. If "
"this method returns [code]true[/code], [param event] is intercepted by this "
"[EditorPlugin], otherwise [param event] is forwarded to other Editor "
"classes.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Prevents the InputEvent from reaching other Editor classes.\n"
"func _forward_canvas_gui_input(event):\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"// Prevents the InputEvent from reaching other Editor classes.\n"
"public override bool ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This method must return [code]false[/code] in order to forward the "
"[InputEvent] to other Editor classes.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"func _forward_canvas_gui_input(event):\n"
"\tif (event is InputEventMouseMotion):\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"// Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Appelé quand il y a un nœud racine dans la scène en cours d’édition, que "
"[method _handles] est implémenté et qu'un [InputEvent] est déclenché dans la "
"fenêtre d'affichage 2D. Si cette méthode retourne [code]true[/code], [param "
"event]est intercepté par cet [EditorPlugin], sinon [param event] est transmis "
"aux autres classes d'éditeur.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Empêche le InputEvent d’atteindre d'autres classes d'éditeur.\n"
"func _forward_canvas_gui_input(event):\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"// Empêche le InputEvent d’atteindre d'autres classes d'éditeur.\n"
"public override bool ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Cette métode doit retourner [code]false [/code] afin de transmettre le "
"[InputEvent] à d'autres classes d'éditeur.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Consomme le EventMouseMotion et transmet les autres types d'InputEvent.\n"
"func _forward_canvas_gui_input(event):\n"
"\tif (event is InputEventMouseMotion):\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"// Consomme le EventMouseMotion et transmet les autres types d'InputEvent.\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"Override this method to provide a state data you want to be saved, like view "
"position, grid settings, folding, etc. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns). This data is automatically saved for each "
"scene in an [code]editstate[/code] file in the editor metadata folder. If you "
"want to store global (scene-independent) editor data for your plugin, you can "
"use [method _get_window_layout] instead.\n"
"Use [method _set_state] to restore your saved state.\n"
"[b]Note:[/b] This method should not be used to save important settings that "
"should persist with the project.\n"
"[b]Note:[/b] You must implement [method _get_plugin_name] for the state to be "
"stored and restored correctly.\n"
"[codeblock]\n"
"func _get_state():\n"
"\tvar state = { \"zoom\": zoom, \"preferred_color\": my_color }\n"
"\treturn state\n"
"[/codeblock]"
msgstr ""
"Redéfinissez cette méthode pour fournir des données d'état que vous souhaitez "
"enregistrer, comme la position de la vue, les paramètres de grille, les "
"repliages, etc. Ceci est utilisé pour enregistrer la scène (pour que l'état "
"soit maintenu lors de l'ouverture suivante) et pour changer d'onglet (pour "
"que l'état soit restauré quand l'onglet est ouvert à nouveau). Ces données "
"sont automatiquement sauvegardées pour chaque scène dans un fichier "
"[code]editstate[/code] dans le dossier de métadonnées de l'éditeur. Si vous "
"souhaitez stocker des données globales de l'éditeur (indépendantes de la "
"scène) pour votre plugin, utilisez [method _get_window_layout] à la place.\n"
"Utilisez [method _set_state] pour restaurer votre état sauvegardé.\n"
"[b]Note :[/b] Cette méthode ne devrait pas être utilisée pour sauvegarder des "
"paramètres importants qui devraient persister dans le projet.\n"
"[b]Note :[/b] Vous devez implémenter [method _get_plugin_name] pour que "
"l'état soit stocké et restauré correctement.\n"
"[codeblock]\n"
"func get_state():\n"
"\tvar etat = {\"zoom\": zoom, \"preferred_color\": ma_couleur }\n"
"\treturn etat\n"
"[/codeblock]"

msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
"functions [method _edit] and [method _make_visible] called when the editor "
"requests them. If you have declared the methods [method "
"_forward_canvas_gui_input] and [method _forward_3d_gui_input] these will be "
"called too.\n"
"[b]Note:[/b] Each plugin should handle only one type of objects at a time. If "
"a plugin handles more types of objects and they are edited at the same time, "
"it will result in errors."
msgstr ""
"Implémentez cette fonction si votre plugin modifie un type spécifique d'objet "
"(Ressource ou Nœud). Si vous retournez [code]true[/code], alors vous "
"obtiendrez les fonctions [method _edit] et [method _make_visible] appelées "
"lorsque l'éditeur les demande. Si vous avez déclaré les méthodes [method "
"_forward_canvas_gui_input] et [method _forward_3d_gui_input] elles seront "
"également appelées.\n"
"[b]Note :[/b] Chaque plugin ne doit manipuler qu'un seul type d'objet à la "
"fois. Si un plugin gère plus de types d'objets et qu'ils sont modifiés en "
"même temps, cela entraînera des erreurs."

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 ""
"Restore the plugin GUI layout and data saved by [method _get_window_layout]. "
"This method is called for every plugin on editor startup. Use the provided "
"[param configuration] file to read your saved data.\n"
"[codeblock]\n"
"func _set_window_layout(configuration):\n"
"\t$Window.position = configuration.get_value(\"MyPlugin\", "
"\"window_position\", Vector2())\n"
"\t$Icon.modulate = configuration.get_value(\"MyPlugin\", \"icon_color\", "
"Color.WHITE)\n"
"[/codeblock]"
msgstr ""
"Restaurer l'interface graphique du plugin et les données enregistrées par "
"[method _get_window_layout]. Cette méthode est appelée pour chaque plugin au "
"démarrage de l'éditeur. Utilisez le fichier [param configuration] fourni pour "
"lire vos données sauvegardées.\n"
"[codeblock]\n"
"func _set_window_layout(configuration):\n"
"\t$Window.position = configuration.get_value(\"MyPlugin\", "
"\"window_position\", Vector2())\n"
"\t$Icon.modulate = configuration.get_value(\"MyPlugin\", \"icon_color\", "
"Couleur. WHITE)\n"
"[/codeblock]"

msgid "Adds a script at [param path] to the Autoload list as [param name]."
msgstr ""
"Ajoute un script à [param path] à la liste des scripts chargés "
"automatiquement sous le nom [param name]."

msgid ""
"Adds a control to the bottom panel (together with Output, Debug, Animation, "
"etc.). Returns a reference to a button that is outside the scene tree. It's "
"up to you to hide/show the button when needed. When your plugin is "
"deactivated, make sure to remove your custom control with [method "
"remove_control_from_bottom_panel] and free it with [method Node.queue_free].\n"
"[param shortcut] is a shortcut that, when activated, will toggle the bottom "
"panel's visibility. The shortcut object is only set when this control is "
"added to the bottom panel.\n"
"[b]Note[/b] See the default editor bottom panel shortcuts in the Editor "
"Settings for inspiration. By convention, they all use [kbd]Alt[/kbd] modifier."
msgstr ""
"Ajoute un contrôle au panneau inférieur (avec Sortie, Debug, Animation, "
"etc.). Retourne une référence à un bouton qui est en dehors de l'arborescence "
"de scène. Vous décidez de cacher / afficher le bouton au besoin. Lorsque "
"votre plugin est désactivé, assurez-vous de supprimer votre commande "
"personnalisée avec [method remove_control_from_bottom_panel] et de le libérer "
"avec [method Node.queue_free].\n"
"[param shortcut] est un raccourci qui, lorsqu'il est activé, va définir la "
"visibilité du panneau inférieur. L'objet raccourci n'est défini que lorsque "
"ce contrôle est ajouté au panneau inférieur.\n"
"[b]Note[/b] Voir les raccourcis par défaut du panneau de bas de l'éditeur "
"dans l'éditeur Paramètres pour inspiration. Par convention, ils utilisent "
"tous le modificateur [kbd]Alt[/kbd]."

msgid ""
"Adds a custom type, which will appear in the list of nodes or resources.\n"
"When a given node or resource is selected, the base type will be instantiated "
"(e.g. \"Node3D\", \"Control\", \"Resource\"), then the script will be loaded "
"and set to this object.\n"
"[b]Note:[/b] The base type is the base engine class which this type's class "
"hierarchy inherits, not any custom type parent classes.\n"
"You can use the virtual method [method _handles] to check if your custom "
"object is being edited by checking the script or using the [code]is[/code] "
"keyword.\n"
"During run-time, this will be a simple object with a script so this function "
"does not need to be called then.\n"
"[b]Note:[/b] Custom types added this way are not true classes. They are just "
"a helper to create a node with specific script."
msgstr ""
"Ajoute un type personnalisé, qui apparaîtra dans la liste des nœuds ou des "
"ressources.\n"
"Lorsqu'un nœud ou une ressource donné est sélectionné, le type de base sera "
"instancié (par exemple \"Node3D\", \"Control\", \"Ressource\"), puis le "
"script sera chargé et défini sur cet objet.\n"
"[b]Note :[/b] Le type de base est la classe moteur de base qui hérite de la "
"hiérarchie de classe de ce type, pas de classes parentes de type "
"personnalisé.\n"
"Vous pouvez utiliser la méthode virtuelle [method _handles] pour vérifier si "
"votre objet personnalisé est modifié en vérifiant le script ou en utilisant "
"le mot-clé [code]is[/code].\n"
"Pendant l'exécution, ce sera un objet simple avec un script de sorte que "
"cette fonction n'a pas besoin d'être appelée à ce moment.\n"
"[b]Note :[/b] Les types personnalisés ajoutés de cette façon ne sont pas de "
"vraies classes. Ce ne sont que des assistants pour créer un nœud avec des "
"scripts spécifiques."

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 ""
"Registers a new [EditorImportPlugin]. Import plugins are used to import "
"custom and unsupported assets as a custom [Resource] type.\n"
"If [param first_priority] is [code]true[/code], the new import plugin is "
"inserted first in the list and takes precedence over pre-existing plugins.\n"
"[b]Note:[/b] If you want to import custom 3D asset formats use [method "
"add_scene_format_importer_plugin] instead.\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
"Enregistre un nouveau [EditorImportPlugin]. Les plugins d'importation sont "
"utilisés pour importer des éléments personnalisés et non reconnus comme un "
"type personnalisé [Resource].\n"
"Si [param first_priority] vaut [code]true[/code], le nouveau plugin "
"d'importation est inséré en premier dans la liste et a priorité sur les "
"plugins préexistants.\n"
"[b]Note :[/b] Si vous voulez importer des formats d'éléments 3D "
"personnalisés, utilisez plutôt [method add_scene_format_importer_plugin].\n"
"Voir [method add_inspector_plugin] pour un exemple sur comment enregistrer un "
"plugin."

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 an Autoload [param name] from the list."
msgstr ""
"Supprime un chargement automatique (Autoload) nommé [param name] de la liste."

msgid "Removes the specified context menu plugin."
msgstr "Supprime le plugin de menu contextuel spécifié."

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

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 menu [param name] from [b]Project > Tools[/b]."
msgstr "Retire un menu [param name] de [b]Projet > Outils[/b]."

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 ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/b], "
"[b]Game[/b], [b]AssetLib[/b]). Also works with custom screens defined by "
"plugins."
msgstr ""
"Émis quand l'utilisateur change d'espace de travail ([b]2D[/b], [b]3D[/b], "
"[b]Script[/b], [b]Jeu[/b], [b]AssetLib[/b]). Fonctionne aussi avec les écrans "
"personnalisés définis par des plugins."

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 "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 ""
"Puts the [param editor] control below the property label. The control must be "
"previously added using [method Node.add_child]."
msgstr ""
"Place le contrôle [param editor] sous le label de la propriété. Le contrôle "
"doit d'abord être ajouté avec [method Node.add_child]."

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 ""
"This virtual method is called when updating the context menu of "
"[EditorResourcePicker]. Implement this method to override the \"New ...\" "
"items with your own options. [param menu_node] is a reference to the "
"[PopupMenu] node.\n"
"[b]Note:[/b] Implement [method _handle_menu_selected] to handle these custom "
"items."
msgstr ""
"Cette méthode virtuelle est appelée lors de la mise à jour du menu contextuel "
"de [EditorResourcePicker]. Implémenter cette méthode pour remplacer les "
"éléments dans « Nouveau... » par vos propres options. [param menu_node] est "
"une référence au nœud [PopupMenu].\n"
"[b]Note :[/b] Implémentez [method _handle_menu_selected] pour traiter ces "
"éléments personnalisés."

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 ""
"Emitted when the resource value was set and user clicked to edit it. When "
"[param inspect] is [code]true[/code], the signal was caused by the context "
"menu \"Edit\" or \"Inspect\" option."
msgstr ""
"Émis lorsque la valeur de ressource a été définie et que l'utilisateur a "
"cliqué pour la modifier. Lorsque [param inspect] vaut [code]true[/code], le "
"signal a été causé par le menu contextuel \"Édition\" ou par l'option "
"\"Inspecter\"."

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 ""
"Queue the [param resource] being edited for preview. Once the preview is "
"ready, the [param receiver]'s [param receiver_func] will be called. The "
"[param receiver_func] must take the following four arguments: [String] path, "
"[Texture2D] preview, [Texture2D] thumbnail_preview, [Variant] userdata. "
"[param userdata] can be anything, and will be returned when [param "
"receiver_func] is called.\n"
"[b]Note:[/b] If it was not possible to create the preview the [param "
"receiver_func] will still be called, but the preview will be [code]null[/"
"code]."
msgstr ""
"Met la [param resource] modifiée en attente pour être prévisualisée. Une fois "
"la prévisualisation prête, la méthode [param receiver_func] du [param "
"receiver] sera appelée. Le [param receiver_func] doit prendre les quatre "
"arguments suivants : le chemin (\"path\") [String], la [Texture] de l'aperçu "
"(\"preview\"), la [Texture] de la vignette (\"thumbnail_preview\") et les "
"données personnées (\"userdata\") sous forme de [Variant]. [param userdata] "
"peut contenir n'importe quel type de données, et sera retourné quand [param "
"receiver_func] sera appelé.\n"
"[b]Note :[/b] S'il n'était pas possible de créer la prévisualisation, [param "
"receiver_func] sera toujours appelé, mais la prévisualisation sera "
"[code]null[/code]."

msgid ""
"Queue a resource file located at [param path] for preview. Once the preview "
"is ready, the [param receiver]'s [param receiver_func] will be called. The "
"[param receiver_func] must take the following four arguments: [String] path, "
"[Texture2D] preview, [Texture2D] thumbnail_preview, [Variant] userdata. "
"[param userdata] can be anything, and will be returned when [param "
"receiver_func] is called.\n"
"[b]Note:[/b] If it was not possible to create the preview the [param "
"receiver_func] will still be called, but the preview will be [code]null[/"
"code]."
msgstr ""
"Met le fichier de ressource situé à [param path] en attente pour être "
"prévisualisé. Une fois la prévisualisation prête, la méthode [param "
"receiver_func] du [param receiver] sera appelée. Le [param receiver_func] "
"doit prendre les quatre arguments suivants : le chemin (\"path\") [String], "
"la [Texture] de l'aperçu (\"preview\"), la [Texture] de la vignette "
"(\"thumbnail_preview\") et les données personnées (\"userdata\") sous forme "
"de [Variant]. [param userdata] peut contenir n'importe quel type de données, "
"et sera retourné quand[param receiver_func] sera appelé.\n"
"[b]Note :[/b] S'il n'était pas possible de créer la prévisualisation, [param "
"receiver_func] sera toujours appelé, mais la prévisualisation sera "
"[code]null[/code]."

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 ""
"Generate a preview from a given resource with the specified size. This must "
"always be implemented.\n"
"Returning [code]null[/code] is an OK way to fail and let another generator "
"take care.\n"
"Care must be taken because this function is always called from a thread (not "
"the main thread).\n"
"[param metadata] dictionary can be modified to store file-specific metadata "
"that can be used in [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (like image size, sample "
"length etc.)."
msgstr ""
"Génère un aperçu d'une ressource donnée avec la taille spécifiée. Cette "
"méthode doit toujours être implémenté.\n"
"Retourner [code]null[/code] est une bonne façon de signaler un échec et "
"laisser un autre générateur s'occuper de l'aperçu.\n"
"Cette opération nécessite de prendre des précautions car cette fonction est "
"toujours appelée à partir d'un fil d'exécution qui n'est pas le principal.\n"
"Le dictionnaire [param metadata] peut être modifié pour stocker des méta-data "
"spécifiques au fichier, qui peuvent être utilisées dans [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (comme la taille des "
"images la longueur d'échantillonnage, etc.)."

msgid ""
"Generate a preview directly from a path with the specified size. Implementing "
"this is optional, as default code will load and call [method _generate].\n"
"Returning [code]null[/code] is an OK way to fail and let another generator "
"take care.\n"
"Care must be taken because this function is always called from a thread (not "
"the main thread).\n"
"[param metadata] dictionary can be modified to store file-specific metadata "
"that can be used in [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (like image size, sample "
"length etc.)."
msgstr ""
"Génère un aperçu directement à partir d'un chemin avec la taille spécifiée. "
"L'implémentation est facultative, car le code par défaut va charger et "
"appeler [method _generate].\n"
"Retourner [code]null[/code] est une bonne façon de signaler un échec et "
"laisser un autre générateur s'occuper de l'aperçu.\n"
"Cette méthode nécessite de prendre des précautions car cette fonction est "
"toujours appelée à partir d'un fil d'exécution qui n'est pas le principal.\n"
"Le dictionnaire [param metadata] peut être modifié pour stocker des méta-"
"datas spécifiques au fichier, pouvant être utilisées dans [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (comme la taille de "
"l'image, la longueur d'échantillonnage etc.)."

msgid ""
"Returns [code]true[/code] if your generator supports the resource of type "
"[param type]."
msgstr ""
"Retourne [code]true[/code] si votre générateur supporte les ressources du "
"type [param type]."

msgid "Imports scenes from third-parties' 3D files."
msgstr "Importe des scènes à partir de fichiers 3D de tiers."

msgid ""
"Should return [code]true[/code] to show the given option, [code]false[/code] "
"to hide the given option, or [code]null[/code] to ignore."
msgstr ""
"Doit renvoyer [code]true[/code] pour afficher l'option donnée, [code]false[/"
"code] pour cacher l'option donnée, ou [code]null[/code] pour ignorer."

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 ""
"Scripts extending this class and implementing its [method _run] method can be "
"executed from the Script Editor's [b]File > Run[/b] menu option (or by "
"pressing [kbd]Ctrl + Shift + X[/kbd]) while the editor is running. This is "
"useful for adding custom in-editor functionality to Godot. For more complex "
"additions, consider using [EditorPlugin]s instead.\n"
"If a script extending this class also has a global class name, it will be "
"included in the editor's command palette.\n"
"[b]Note:[/b] Extending scripts need to have [code]tool[/code] mode enabled.\n"
"[b]Example:[/b] Running the following script prints \"Hello from the Godot "
"Editor!\":\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorScript\n"
"\n"
"func _run():\n"
"\tprint(\"Hello from the Godot Editor!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[Tool]\n"
"public partial class HelloEditor : EditorScript\n"
"{\n"
"\tpublic override void _Run()\n"
"\t{\n"
"\t\tGD.Print(\"Hello from the Godot Editor!\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] EditorScript is [RefCounted], meaning it is destroyed when "
"nothing references it. This can cause errors during asynchronous operations "
"if there are no references to the script."
msgstr ""
"Les scripts héritant de cette classe et implémentant la méthode [method _run] "
"peuvent être exécutés depuis l'éditeur de script avec l'option de menu "
"[b]Fichier > Lancer[/b] (ou avec [kbd]Ctrl + Shift + X[/kbd]) quand l'éditeur "
"est lancé. C'est utilise pour ajouter des fonctionnalités personnalisées dans "
"l'éditeur de Godot. Pour des additions plus complexes, préférez plutôt "
"utiliser [EditorPlugin].\n"
"Si un script élargissant cette classe a également un nom de classe mondial, "
"il sera inclus dans la palette de commandes de l'éditeur.\n"
"[b]Note :[/b] Les scripts doivent activer le mode [code]tool[/code] pour "
"cela.\n"
"[b]Exemple :[/b]Lancer le script suivant affiche\"Bonjour de l'Éditeur Godot!"
"\":\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorScript\n"
"\n"
"func _run():\n"
"\tprint(\"Hello from the Godot Editor!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[Tool]\n"
"public partial class HelloEditor : EditorScript\n"
"{\n"
"\tpublic override void _Run()\n"
"\t{\n"
"\t\tGD.Print(\"Hello from the Godot Editor!\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] EditorScript est [RefCounted], ce qui signifie qu'il est "
"détruit quand rien ne le mentionne. Cela peut causer des erreurs lors "
"d'opérations asynchrones s'il n'y a aucune référence au script."

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 "Erases the setting whose name is specified by [param property]."
msgstr "Efface le réglage dont le nom est spécifié par [param property]."

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 project-specific metadata for the [param section] and [param key] "
"specified. If the metadata doesn't exist, [param default] will be returned "
"instead. See also [method set_project_metadata]."
msgstr ""
"Retourne les métadonnées spécifiques au projet pour la [param section] "
"et[param key] spécifiées. Si les métadonnées n'existent pas, [param default] "
"sera retourné à la place. Voir aussi [method set_project_metadata]."

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 ""
"Returns the value of the setting specified by [param name]. This is "
"equivalent to using [method Object.get] on the EditorSettings instance."
msgstr ""
"Retourne la valeur du paramètre spécifié par [param name]. Ceci est "
"équivalent à l'utiliser [method Object.get] sur l'instance EditorSettings."

msgid ""
"Returns [code]true[/code] if the setting specified by [param name] exists, "
"[code]false[/code] otherwise."
msgstr ""
"Retourne [code]true[/code] si le paramètre spécifié par [param name] existe, "
"[code]false[/code] autrement."

msgid ""
"Returns [code]true[/code] if the shortcut specified by [param path] exists, "
"[code]false[/code] otherwise."
msgstr ""
"Retourne [code]true[/code] si le paramètre spécifié par [param path] existe, "
"[code]false[/code] autrement."

msgid ""
"Returns [code]true[/code] if the shortcut specified by [param path] matches "
"the event specified by [param event], [code]false[/code] otherwise."
msgstr ""
"Retourne [code]true[/code] si le paramètre spécifié par [param path] "
"correspond à l'événement spécifié par [param event], [code]false[/code] "
"autrement."

msgid "Removes the shortcut specified by [param path]."
msgstr "Enlève le raccourci spécifié par [param path]."

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 the initial value of the setting specified by [param name] to [param "
"value]. This is used to provide a value for the Revert button in the Editor "
"Settings. If [param update_current] is [code]true[/code], the setting is "
"reset to [param value] as well."
msgstr ""
"Définit la valeur initiale du réglage spécifié par [param name] à [param "
"value]. C'est utilisé pour définir une valeur pour le bouton Annuler dans les "
"préférences de l'éditeur. Siparam update_current] vaut[code]true[/code], le "
"paramètre est également réinitialisé à [param value]."

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 ""
"Sets the [param value] of the setting specified by [param name]. This is "
"equivalent to using [method Object.set] on the EditorSettings instance."
msgstr ""
"Définit la [param value] du réglage spécifié par [param name]. Ceci équivaut "
"à l'utilisation de [method Object.set] sur l'instance EditeurSettings."

msgid ""
"If [code]true[/code], automatically switches to the [b]Stack Trace[/b] panel "
"when the debugger hits a breakpoint or steps."
msgstr ""
"Si [code]true[/code], passe automatiquement au panneau [b]Stack Trace[/b] "
"lorsque le débogueur atteint un point d'arrêt ou des étapes."

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 ""
"If [code]true[/code], reopens shader files that were open in the shader "
"editor when the project was last closed."
msgstr ""
"Si [code]true[/code], ré-ouvre les fichiers de shader qui étaient ouverts "
"dans l'éditeur de shader lorsque le projet a été fermé pour la dernière fois."

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 ""
"How to position the Cancel and OK buttons in the editor's [AcceptDialog] "
"windows. Different platforms have different conventions for this, which can "
"be overridden through this setting to avoid accidental clicks when using "
"Godot on multiple platforms.\n"
"- [b]Auto[/b] follows the platform convention: OK first on Windows, KDE, and "
"LXQt; Cancel first on macOS and other Linux desktop environments.\n"
"- [b]Cancel First[/b] forces the Cancel/OK ordering.\n"
"- [b]OK First[/b] forces the OK/Cancel ordering.\n"
"To check if these buttons are swapped at runtime, use [method "
"DisplayServer.get_swap_cancel_ok]."
msgstr ""
"Comment positionner les boutons Annuler et OK dans les fenêtres "
"[AcceptDialog] du projet. Différentes plates-formes ont différents "
"comportements standards pour cela, qui peuvent être redéfinis en utilisant ce "
"réglage pour éviter les clics accidentels lors de l'utilisation de Godot sur "
"plusieurs plateformes..\n"
"- [b]Auto[/b] suit la convention de la plateforme : OK d'abord sur Windows, "
"KDE et LXQt, Annuler d'abord sur macOS et les autres environnements de bureau "
"Linux.\n"
"- [b]Cancel First[/b] force l'ordre Annuler/OK.\n"
"- [b]OK First[/b] force l'ordre OK/Annuler.\n"
"Pour vérifier si ces boutons sont échangés lors de l'exécution, utilisez "
"[method DisplayServer.get_swap_cancel_ok]."

msgid ""
"The language to use for the editor interface. If set to [b]Auto[/b], the "
"language is automatically determined based on the system locale. See also "
"[method EditorInterface.get_editor_language].\n"
"Translations are provided by the community. If you spot a mistake, "
"[url=https://contributing.godotengine.org/en/latest/documentation/translation/"
"index.html]contribute to editor translations on Weblate![/url]"
msgstr ""
"La langue à utiliser pour l'interface de l'éditeur. Si la langue est définie "
"sur [b]Auto[/b], la langue est automatiquement déterminée en fonction de la "
"langue du système. Voir aussi [method EditorInterface.get_editor_language].\n"
"Les traductions sont fournies par la communauté. Si vous constatez une "
"erreur, [url=https://contributing.godotengine.org/en/latest/documentation/"
"translation/index.html]contribuez aux traductions de éditeurs sur Weblate ![/"
"url]"

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 "Overrides the tablet driver used by the editor."
msgstr "Surcharge le pilote de tablette utilisé par l'éditeur."

msgid ""
"If [code]true[/code], long press on touchscreen is treated as right click.\n"
"[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices."
msgstr ""
"Si [code]true[/code], une pression longue sur écran tactile est traitée comme "
"un clic droit.\n"
"[b]Note :[/b] Vaut par défaut [code]true[/code] sur des appareils à écran "
"tactile."

msgid ""
"If [code]true[/code], increases the scrollbar touch area, enables a larger "
"dragger for split containers, and increases PopupMenu vertical separation to "
"improve usability on touchscreen devices.\n"
"[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices."
msgstr ""
"Si [code]true[/code], augmente la zone de contact de la barre de défilement, "
"permet un plus grand séparateur de conteneurs partagés, et augmente la "
"séparation verticale du PopupMenu pour améliorer l'utilisabilité des "
"dispositifs à écran tactile.\n"
"[b]Note :[/b] Vaut par défaut [code]true[/code] sur les dispositifs à écran "
"tactile."

msgid ""
"Specify the multiplier to apply to the scale for the editor gizmo handles to "
"improve usability on touchscreen devices.\n"
"[b]Note:[/b] Defaults to [code]1[/code] on non-touchscreen devices."
msgstr ""
"Spécifie le multiplicateur à appliquer à l'échelle pour les gestionnaires "
"d'éditeur des manipulateurs pour améliorer la prise en main sur les appareils "
"tactiles.\n"
"[b]Note :[/b] Vaut par défaut [code]1[/code] sur les dispositifs à écran non "
"tactile."

msgid ""
"The TLS certificate bundle to use for HTTP requests made within the editor "
"(e.g. from the AssetLib tab). If left empty, the [url=https://github.com/"
"godotengine/godot/blob/master/thirdparty/certs/ca-bundle.crt]included Mozilla "
"certificate bundle[/url] will be used."
msgstr ""
"Le paquet de certificats TLS à utiliser pour les requêtes HTTP faites au sein "
"de l'éditeur (p. ex. dans l'onglet AssetLib). Si vide, [url=https://"
"github.com/godotengine/godot/blob/master/thirdparty/certs/ca-bundle.crt] le "
"paquet de certificat de Mozilla inclus[/url] sera utilisé."

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 ""
"If [code]true[/code], provides autocompletion suggestions for file paths in "
"methods such as [code]load()[/code] and [code]preload()[/code]."
msgstr ""
"Si [code]true[/code], fournit des suggestions d'autocomplétion pour les "
"chemins de fichiers dans des méthodes telles que [code]load()[/code] et "
"[code]preload()[/code]."

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 ""
"Commits the action. If [param execute] is [code]true[/code] (default), all "
"\"do\" methods/properties are called/set when this function is called."
msgstr ""
"Exécute l'action. Si [param execute] vaut [code]true[/code] (valeur par "
"défaut), toutes les méthodes/propriétés \"do\" sont appelées/définies lorsque "
"cette fonction est appelée."

msgid ""
"Create a new action. After this is called, do all your calls to [method "
"add_do_method], [method add_undo_method], [method add_do_property], and "
"[method add_undo_property], then commit the action with [method "
"commit_action].\n"
"The way actions are merged is dictated by the [param merge_mode] argument.\n"
"If [param custom_context] object is provided, it will be used for deducing "
"target history (instead of using the first operation).\n"
"The way undo operation are ordered in actions is dictated by [param "
"backward_undo_ops]. When [param backward_undo_ops] is [code]false[/code] undo "
"option are ordered in the same order they were added. Which means the first "
"operation to be added will be the first to be undone.\n"
"If [param mark_unsaved] is [code]false[/code], the action will not mark the "
"history as unsaved. This is useful for example for actions that change a "
"selection, or a setting that will be saved automatically. Otherwise, this "
"should be left to [code]true[/code] if the action requires saving by the user "
"or if it can cause data loss when left unsaved."
msgstr ""
"Crée une nouvelle action. Après cet appel, faites tous vos appels à [method "
"add_do_method], [method add_undo_method], [method add_do_property], et "
"[method add_undo_property], puis engagez l'action avec [method "
"commit_action].\n"
"La façon dont les actions sont fusionnées est dictée par l'argument [param "
"merge_mode].\n"
"Si l'objet [param custom_context] est fourni, il sera utilisé pour déduire "
"l'historique cible (au lieu d'utiliser la première opération).\n"
"La façon dont les opération \"undo\" sont ordonnées dans les actions est "
"dictée par [param backward_undo_ops]. Lorsque [param backward_undo_ops] vaut "
"[code]false[/code]les options \"undo\" sont ordonnées dans le même ordre "
"qu'elles ont été ajoutées. Ce qui signifie que la première opération à être "
"ajoutée sera la première à être défaite.\n"
"Si [param mark_unsaved] vaut[code]false[/code], l'action ne marquera pas "
"l'historique comme non sauvegardée. Ceci est utile par exemple pour les "
"actions qui modifient une sélection, ou un réglage qui sera sauvegardé "
"automatiquement. Sinon, cela devrait être laissé à [code]true[/code] si "
"l'action nécessite une sauvegarde par l'utilisateur ou si elle peut causer "
"une perte de données lorsqu'elle est laissée non sauvegardée."

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 "Discards the changes made in a file present at [param file_path]."
msgstr ""
"Ignore les modifications faites dans le fichier à l'emplacement [param "
"file_path]."

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 ""
"Helper function to add an array of [param diff_hunks] into a [param "
"diff_file]."
msgstr ""
"Assistant de fonction pour ajouter un tableau de [param diff_hunks] dans un "
"[param diff_file]."

msgid ""
"Helper function to add an array of [param line_diffs] into a [param "
"diff_hunk]."
msgstr ""
"Fonction d'aide pour ajouter un tableau de [param line_diffs] dans un [param "
"diff_hunk]."

msgid ""
"Helper function to create a commit [Dictionary] item. [param msg] is the "
"commit message of the commit. [param author] is a single human-readable "
"string containing all the author's details, e.g. the email and name "
"configured in the VCS. [param id] is the identifier of the commit, in "
"whichever format your VCS may provide an identifier to commits. [param "
"unix_timestamp] is the UTC Unix timestamp of when the commit was created. "
"[param offset_minutes] is the timezone offset in minutes, recorded from the "
"system timezone where the commit was created."
msgstr ""
"Une fonction d'aide pour créer un [Dictionary] des données d'un commit. "
"[param msg] est le message de commit. [param author] est une simple chaîne "
"intelligible contenant tous les détails de l'auteur, par exemple son e-mail "
"et le nom comme configurés dans le VCS. [param id] est le code de hachage du "
"commit, dans le format préféré de votre VCS pour fournir un identifiant "
"unique pour chaque commit. [param unix_timestamp] est l'horodatage Unix basé "
"sur UTC de la date de création de la commit. [param offset_minutes] est le "
"décalage horaire par rapport à UTC, en minutes, enregistré depuis la zone "
"horaire du système lors de la création du commit."

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 ""
"Utility class which holds a reference to the internal identifier of an "
"[Object] instance, as given by [method Object.get_instance_id]. This ID can "
"then be used to retrieve the object instance with [method "
"@GlobalScope.instance_from_id].\n"
"This class is used internally by the editor inspector and script debugger, "
"but can also be used in plugins to pass and display objects as their IDs."
msgstr ""
"Classe utilitaire qui contient une référence à l'identifiant interne d'une "
"instance d'[Object], comme donné par [method Object.get_instance_id]. Cet ID "
"peut ensuite être utilisé pour récupérer l'instance de l'objet avec [method "
"@GlobalScope.instance_from_id].\n"
"Cette classe est utilisée en interne par l'inspecteur de l'éditeur et le "
"débogueur de script, mais peut également être utilisé dans des plugins pour "
"passer et afficher des objets par leurs identifiants."

msgid ""
"The [Object] identifier stored in this [EncodedObjectAsID] instance. The "
"object instance can be retrieved with [method @GlobalScope.instance_from_id]."
msgstr ""
"L'identifiant du [Object] stocké dans cette instance [EncodedObjectAsID]. "
"L'instance de l'objet peut être récupérée avec [method "
"@GlobalScope.instance_from_id]."

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 ""
"ENet's purpose is to provide a relatively thin, simple and robust network "
"communication layer on top of UDP (User Datagram Protocol)."
msgstr ""
"L'objectif d'ENet est de fournir une couche de communication réseau "
"relativement mince, simple et robuste par dessus l'UDP (User Datagram "
"Protocol)."

msgid "API documentation on the ENet website"
msgstr "Documentation de l'API sur le site web d'ENet"

msgid "Adjusts the bandwidth limits of a host."
msgstr "Ajuste les limites de bande passante d'un hôte."

msgid ""
"Queues a [param packet] to be sent to all peers associated with the host over "
"the specified [param channel]. See [ENetPacketPeer] [code]FLAG_*[/code] "
"constants for available packet flags."
msgstr ""
"Met en file d'attente un paquet [param packet] à envoyer à tous les pairs "
"associés à l'hôte sur le canal [param channel] spécifié. Voir les constantes "
"[code]FLAG_*[/code] de [ENetPacketPeer] pour les drapeaux de paquet "
"disponibles."

msgid "Limits the maximum allowed channels of future incoming connections."
msgstr "Limite le maximum de canaux autorisés des futures connexions entrantes."

msgid ""
"Sets the compression method used for network packets. These have different "
"tradeoffs of compression speed versus bandwidth, you may need to test which "
"one works best for your use case if you use compression at all.\n"
"[b]Note:[/b] Most games' network design involve sending many small packets "
"frequently (smaller than 4 KB each). If in doubt, it is recommended to keep "
"the default compression algorithm as it works best on these small packets.\n"
"[b]Note:[/b] The compression mode must be set to the same value on both the "
"server and all its clients. Clients will fail to connect if the compression "
"mode set on the client differs from the one set on the server."
msgstr ""
"Définit la méthode de compression utilisée pour les paquets réseau. Ceux-ci "
"ont différents compromis de vitesse de compression par rapport à la bande "
"passante, vous pouvez avoir besoin de tester quelle méthode fonctionne le "
"mieux pour votre cas d'utilisation si jamais vous utilisez la compression.\n"
"[b]Note :[/b] La conception réseau de la plupart des jeux nécessite l'envoi "
"de nombreux petits paquets fréquemment (moins de 4 Ko chacun). Dans le doute, "
"il est recommandé de garder l'algorithme de compression par défaut car il "
"fonctionne le mieux avec ces petits paquets.\n"
"[b]Note :[/b] Le mode de compression doit être défini à la même valeur sur le "
"serveur et sur tous ses clients. Les clients échoueront à se connecter si le "
"mode de compression d'un client diffère de celui du serveur."

msgid ""
"Initiates a connection to a foreign [param address] using the specified "
"[param port] and allocating the requested [param channels]. Optional [param "
"data] can be passed during connection in the form of a 32 bit integer.\n"
"[b]Note:[/b] You must call either [method create_host] or [method "
"create_host_bound] on both ends before calling this method."
msgstr ""
"Initie une connexion vers une adresse [param address] étrangère en utilisant "
"le [param port] spécifié et en allouant les canaux [param channels] demandés. "
"Des données [param data] facultatives peuvent être transmises pendant la "
"connexion sous forme d'un entier de 32 bits.\n"
"[b]Note :[/b] Vous devez appeler soit [method create_host] soit [method "
"create_host_bound] sur les deux extrémités avant d'appeler cette méthode."

msgid ""
"Creates an ENetHost that allows up to [param max_peers] connected peers, each "
"allocating up to [param max_channels] channels, optionally limiting bandwidth "
"to [param in_bandwidth] and [param out_bandwidth] (if greater than zero).\n"
"This method binds a random available dynamic UDP port on the host machine at "
"the [i]unspecified[/i] address. Use [method create_host_bound] to specify the "
"address and port.\n"
"[b]Note:[/b] It is necessary to create a host in both client and server in "
"order to establish a connection."
msgstr ""
"Crée un ENetHost qui autorise jusqu'à [param max_peers] pairs connectés, "
"chacun allouant jusqu'à [param max_channels] canaux, limitant en option la "
"bande passante entre [param in_bandwidth] et [param out_bandwidth] (si "
"supérieurs à zéro).\n"
"Cette méthode lie un port UDP dynamique disponible aléatoire sur la machine "
"hôte à l'adresse [i]non-spécifiée[/i]. Utilisez [method create_host_bound] "
"pour spécifier l'adresse et le port.\n"
"[b]Note :[/b] Il est nécessaire de créer un hôte chez le client et chez le "
"serveur afin d'établir une connexion."

msgid ""
"Creates an ENetHost bound to the given [param bind_address] and [param "
"bind_port] that allows up to [param max_peers] connected peers, each "
"allocating up to [param max_channels] channels, optionally limiting bandwidth "
"to [param in_bandwidth] and [param out_bandwidth] (if greater than zero).\n"
"[b]Note:[/b] It is necessary to create a host in both client and server in "
"order to establish a connection."
msgstr ""
"Crée un ENetHost lié à l'adresse [param bind_address] et au port [param "
"bind_port] donnés qui autorise jusqu'à [param max_peers] pairs connectés, "
"chacun allouant jusqu'à [param max_channels] canaux, limitant en option la "
"bande passante entre [param in_bandwidth] et [param out_bandwidth] (si "
"supérieurs à zéro).\n"
"[b]Note :[/b] Il est nécessaire de créer un hôte chez le client et chez le "
"serveur afin d'établir une connexion."

msgid "Destroys the host and all resources associated with it."
msgstr "Détruit l'hôte et toutes les ressources qui y sont associées."

msgid ""
"Configure this ENetHost to use the custom Godot extension allowing DTLS "
"encryption for ENet servers. Call this right after [method create_host_bound] "
"to have ENet expect peers to connect using DTLS. See [method "
"TLSOptions.server]."
msgstr ""
"Configure cet ENetHost pour utiliser l'extension Godot personnalisée "
"permettant le cryptage DTLS pour les serveurs ENet. Appelez ceci juste après "
"[method create_host_bound] pour qu'ENet s'attende à ce que les pairs se "
"connectent en utilisant le DTLS. Voir [method TLSOptions.server]."

msgid "Sends any queued packets on the host specified to its designated peers."
msgstr ""
"Envoie tous les paquets en file d'attente sur l'hôte spécifié à ses pairs "
"désignés."

msgid "Returns the local port to which this peer is bound."
msgstr "Renvoie le port local auquel ce pair est lié."

msgid "Returns the maximum number of channels allowed for connected peers."
msgstr "Renvoie le nombre maximal de canaux autorisés pour les pairs connectés."

msgid ""
"Returns the list of peers associated with this host.\n"
"[b]Note:[/b] This list might include some peers that are not fully connected "
"or are still being disconnected."
msgstr ""
"Renvoie la liste des pairs associés à cet hôte.\n"
"[b]Note :[/b] Cette liste pourrait inclure certains pairs qui ne sont pas "
"entièrement connectés ou sont actuellement en cours de déconnexion."

msgid "Returns and resets host statistics."
msgstr "Renvoie et réinitialise des statistiques de l'hôte."

msgid ""
"Configures the DTLS server to automatically drop new connections.\n"
"[b]Note:[/b] This method is only relevant after calling [method "
"dtls_server_setup]."
msgstr ""
"Configure le serveur DTLS pour couper automatiquement les nouvelles "
"connexions.\n"
"[b]Note :[/b] Cette méthode n'est pertinente qu'après avoir appelé [method "
"dtls_server_setup]."

msgid ""
"Waits for events on this connection and shuttles packets between the host and "
"its peers, with the given [param timeout] (in milliseconds). The returned "
"[Array] will have 4 elements. An [enum EventType], the [ENetPacketPeer] which "
"generated the event, the event associated data (if any), the event associated "
"channel (if any). If the generated event is [constant EVENT_RECEIVE], the "
"received packet will be queued to the associated [ENetPacketPeer].\n"
"Call this function regularly to handle connections, disconnections, and to "
"receive new packets.\n"
"[b]Note:[/b] This method must be called on both ends involved in the event "
"(sending and receiving hosts)."
msgstr ""
"Attend des événements sur cette connexion et achemine les paquets entre "
"l'hôte et ses pairs, avec le [param timeout] donné (en millisecondes). "
"L'[Array] renvoyé aura 4 éléments. Un [enum EventType], le [ENetPacketPeer] "
"qui a généré l'événement, les données associées à l'événement (le cas "
"échéant), le canal associé à l'événement (le cas échéant). Si l'événement "
"généré est [constant EVENT_RECEIVE], le paquet reçu sera à la suite de "
"l'[ENetPacketPeer] associé.\n"
"Appelez cette fonction régulièrement pour gérer les connexions, les "
"déconnections et pour recevoir de nouveaux paquets.\n"
"[b]Note :[/b] Cette méthode doit être appelée sur les deux extrémités "
"impliquées dans l'événement (l'hôte émetteur et l'hôte récepteur)."

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 ""
"[url=https://fastlz.org/]FastLZ[/url] compression. This option uses less CPU "
"resources compared to [constant COMPRESS_ZLIB], at the expense of using more "
"bandwidth."
msgstr ""
"Compression [url=http://fastlz.org/]FastLZ[/url]. Cette option utilise moins "
"de ressources CPU par rapport à [constant COMPRESS_ZLIB], mais utilise plus "
"de bande passante."

msgid ""
"[url=https://www.zlib.net/]Zlib[/url] compression. This option uses less "
"bandwidth compared to [constant COMPRESS_FASTLZ], at the expense of using "
"more CPU resources."
msgstr ""
"Compression [url=http://www.zlib.net/]Zlib[/url]. Cette option utilise moins "
"de bande passante par rapport à [constant COMPRESS_FASTLZ] mais utilise plus "
"de ressources CPU."

msgid ""
"[url=https://facebook.github.io/zstd/]Zstandard[/url] compression. Note that "
"this algorithm is not very efficient on packets smaller than 4 KB. Therefore, "
"it's recommended to use other compression algorithms in most cases."
msgstr ""
"Compression [url=http://facebook.github.io/zstd/]Zstandard[/url]. Notez que "
"cet algorithme n'est pas très efficace sur des paquets plus petits que 4 Ko. "
"Ainsi, il est recommandé d'utiliser les autres algorithmes de compression "
"dans la plupart des cas."

msgid ""
"An error occurred during [method service]. You will likely need to [method "
"destroy] the host and recreate it."
msgstr ""
"Une erreur s'est produite lors de [method service]. Vous aurez probablement "
"besoin de détruire l'hôte avec [method destroy] et de le recréer."

msgid "No event occurred within the specified time limit."
msgstr "Aucun événement n'a eu lieu dans le délai spécifié."

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 ""
"A peer has disconnected. This event is generated on a successful completion "
"of a disconnect initiated by [method ENetPacketPeer.peer_disconnect], if a "
"peer has timed out, or if a connection request initialized by [method "
"connect_to_host] has timed out. The array will contain the peer which "
"disconnected. The data field contains user supplied data describing the "
"disconnection, or 0, if none is available."
msgstr ""
"Un pair s'est déconnecté. Cet événement est généré par l'achèvement réussi "
"d'une déconnexion initiée par [method ENetPacketPeer.peer_disconnect], si un "
"pair a timeout, ou si une demande de connexion initialisée par [method "
"connect_to_host] a timeout. Le tableau contiendra le pair qui s'est "
"déconnecté. Le champ de données contient des données fournies par "
"l'utilisateur décrivant la déconnexion, ou 0, si aucune n'est disponible."

msgid ""
"A packet has been received from a peer. The array will contain the peer which "
"sent the packet and the channel number upon which the packet was received. "
"The received packet will be queued to the associated [ENetPacketPeer]."
msgstr ""
"Un paquet a été reçu d'un pair. Le tableau contiendra le pair qui a envoyé le "
"paquet et le numéro de canal sur lequel le paquet a été reçu. Le paquet reçu "
"sera à la suite du [ENetPacketPeer] associé."

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 ""
"A MultiplayerPeer implementation using the [url=http://enet.bespin.org/"
"index.html]ENet[/url] library."
msgstr ""
"Une implémentation de MultiplayerPeer utilisant la bibliothèque [url=http://"
"enet.bespin.org/index.html]ENet[/url]."

msgid ""
"A MultiplayerPeer implementation that should be passed to [member "
"MultiplayerAPI.multiplayer_peer] after being initialized as either a client, "
"server, or mesh. Events can then be handled by connecting to [MultiplayerAPI] "
"signals. See [ENetConnection] for more information on the ENet library "
"wrapper.\n"
"[b]Note:[/b] ENet only uses UDP, not TCP. When forwarding the server port to "
"make your server accessible on the public Internet, you only need to forward "
"the server port in UDP. You can use the [UPNP] class to try to forward the "
"server port automatically when starting the server."
msgstr ""
"Une implémentation de MultiplayerPeer qui devrait être passée au [member "
"MultiplayerAPI.multiplayer_peer] après avoir été initialisé en tant que "
"client, serveur ou maille. Les événements peuvent ensuite être gérés en se "
"connectant aux signaux de [MultiplayerAPI]. Voir [ENetConnection] pour plus "
"d'information sur le wrapper de la bibliothèque ENet.\n"
"[b]Note :[/b] ENet utilise seulement UDP, et non TCP. Lors du branchement du "
"port serveur pour rendre votre serveur accessible sur l'Internet public, vous "
"n'avez besoin que d'envoyer le port serveur en UDP. Vous pouvez utiliser la "
"classe [UPNP] pour essayer d'envoyer automatiquement le port serveur dès le "
"démarrage du serveur."

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 ""
"Create server that listens to connections via [param port]. The port needs to "
"be an available, unused port between 0 and 65535. Note that ports below 1024 "
"are privileged and may require elevated permissions depending on the "
"platform. To change the interface the server listens on, use [method "
"set_bind_ip]. The default IP is the wildcard [code]\"*\"[/code], which "
"listens on all available interfaces. [param max_clients] is the maximum "
"number of clients that are allowed at once, any number up to 4095 may be "
"used, although the achievable number of simultaneous clients may be far lower "
"and depends on the application. For additional details on the bandwidth "
"parameters, see [method create_client]. Returns [constant OK] if a server 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 server "
"could not be created."
msgstr ""
"Créer un serveur qui écoute les connexions via [param port]. Le port doit "
"être un port disponible et inutilisé entre 0 et 65535. Notez que les ports "
"inférieurs à 1024 sont réservés et peuvent nécessiter des autorisations "
"élevées en fonction de la plateforme. Pour modifier l'interface que le "
"serveur écoute, utilisez [method set_bind_ip]. L'IP par défaut est le joker "
"[code]\"*\"[/code], qui écoute toutes les interfaces disponibles. [param "
"max_clients] est le nombre maximum de clients autorisés en même temps, tout "
"nombre jusqu'à 4095 peut être utilisé, même si le nombre possible de clients "
"simultanés peut être beaucoup plus faible et dépend de l'application. Pour "
"plus de détails sur les paramètres de bande passante, voir [method "
"create_client]. Retourne [constant OK] si un serveur a été créé, [constant "
"ERR_ALREADY_IN_USE] si cette instance de ENetMultiplayerPeer a déjà une "
"connexion ouverte (dans cecas vous devez appeler [method "
"MultiplayerPeer.close] d'abord) ou [constant ERR_CANT_CREATE] si le serveur "
"ne peut pas être créé."

msgid "Returns the [ENetPacketPeer] associated to the given [param id]."
msgstr "Retourne le [ENetPacketPeer] associé au [param id] donné."

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 ""
"A PacketPeer implementation representing a peer of an [ENetConnection].\n"
"This class cannot be instantiated directly but can be retrieved during "
"[method ENetConnection.service] or via [method ENetConnection.get_peers].\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 ""
"Une implémentation de PacketPeer représentant un pair d'une "
"[ENetConnection].\n"
"Cette classe ne peut pas être instanciée directement mais peut être récupérée "
"pendant [method ENetConnection.service] ou via [method "
"ENetConnection.get_peers].\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 en utilisant le déploiement en un clic. Sinon, la "
"communication réseau de tout type sera bloquée par Android."

msgid "Returns the number of channels allocated for communication with peer."
msgstr "Renvoie le nombre de canaux alloués à la communication avec le pair."

msgid ""
"Returns the ENet flags of the next packet in the received queue. See "
"[code]FLAG_*[/code] constants for available packet flags. Note that not all "
"flags are replicated from the sending peer to the receiving peer."
msgstr ""
"Renvoie les drapeaux ENet du prochain paquet dans la file reçue. Voir les "
"constantes [code]FLAG_*[/code] pour les drapeaux de paquet disponibles. Notez "
"que les drapeaux ne sont pas tous répliqués entre le pair émetteur et le pair "
"récepteur."

msgid "Returns the IP address of this peer."
msgstr "Renvoie l'adresse IP de ce pair."

msgid "Returns the remote port of this peer."
msgstr "Renvoie le port distant de ce pair."

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 ""
"Request a disconnection from a peer. An [constant "
"ENetConnection.EVENT_DISCONNECT] will be generated during [method "
"ENetConnection.service] once the disconnection is complete."
msgstr ""
"Demande une déconnexion d'un pair. Un évènement [constant "
"ENetConnection.EVENT_DISCONNECT] sera généré pendant [method "
"ENetConnection.service] une fois la déconnexion terminée."

msgid ""
"Request a disconnection from a peer, but only after all queued outgoing "
"packets are sent. An [constant ENetConnection.EVENT_DISCONNECT] will be "
"generated during [method ENetConnection.service] once the disconnection is "
"complete."
msgstr ""
"Demande une déconnexion d'un pair, mais seulement après que tous les paquets "
"en cours d'attente soient envoyés. Un évènement [constant "
"ENetConnection.EVENT_DISCONNECT] sera généré pendant [method "
"ENetConnection.service] une fois la déconnexion terminée."

msgid ""
"Force an immediate disconnection from a peer. No [constant "
"ENetConnection.EVENT_DISCONNECT] will be generated. The foreign peer is not "
"guaranteed to receive the disconnect notification, and is reset immediately "
"upon return from this function."
msgstr ""
"Force une déconnexion immédiate d'un pair. Aucun évènement [constant "
"ENetConnection.EVENT_DISCONNECT] ne sera généré. Le pair étranger n'est pas "
"garanti de recevoir la notification de déconnexion et est réinitialisé "
"immédiatement après le renvoi de cette fonction."

msgid ""
"Sends a ping request to a peer. ENet automatically pings all connected peers "
"at regular intervals, however, this function may be called to ensure more "
"frequent ping requests."
msgstr ""
"Envoye une requête de ping à un pair. ENet ping automatiquement tous les "
"pairs connectés à intervalles réguliers, cependant, cette fonction peut être "
"appelée pour assurer des requêtes de ping plus fréquentes."

msgid ""
"Forcefully disconnects a peer. The foreign host represented by the peer is "
"not notified of the disconnection and will timeout on its connection to the "
"local host."
msgstr ""
"Force la déconnexion d'un pair. L'hôte étranger représenté par le pair n'est "
"pas averti de la déconnexion et fera un timeout sur sa connexion à l'hôte "
"local."

msgid ""
"Sets the timeout parameters for a peer. The timeout parameters control how "
"and when a peer will timeout from a failure to acknowledge reliable traffic. "
"Timeout values are expressed in milliseconds.\n"
"The [param timeout] is a factor that, multiplied by a value based on the "
"average round trip time, will determine the timeout limit for a reliable "
"packet. When that limit is reached, the timeout will be doubled, and the peer "
"will be disconnected if that limit has reached [param timeout_min]. The "
"[param timeout_max] parameter, on the other hand, defines a fixed timeout for "
"which any packet must be acknowledged or the peer will be dropped."
msgstr ""
"Définit les paramètres de limite de temps pour un pair. Les paramètres de "
"limite de temps contrôlent comment et quand un pair estimera que le trafic "
"n'est pas assez fiable. Les valeurs de limite de temps sont exprimées en "
"millisecondes.\n"
"Le[param timeout] est un facteur qui, multiplié par une valeur basée sur le "
"temps d'envoi moyen, déterminera la limite de temps pour un paquet fiable. "
"Lorsque cette limite est atteinte, la limite de temps sera doublée, et le "
"pair sera déconnecté si cette limite atteint [param timeout_min]. Le "
"paramètre [param timeout_max] , d'autre part, définit une limite de temps "
"fixe pour lequel tout paquet doit estimé comme fiable, ou alors le pair sera "
"supprimé."

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 has successfully connected, but is not ready to communicate with yet "
"([constant STATE_CONNECTED])."
msgstr ""
"Le pair a réussi à se connecter, mais n'est pas prêt à être communiqué avec "
"([constant STATE_CONNECTED])."

msgid "The peer is currently connected and ready to communicate with."
msgstr "Le pair est actuellement connecté et prêt à être communiqué avec."

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 ""
"The maximum number of frames that can be rendered every second (FPS). A value "
"of [code]0[/code] means the framerate is uncapped.\n"
"Limiting the FPS can be useful to reduce the host machine's power "
"consumption, which reduces heat, noise emissions, and improves battery life.\n"
"If [member ProjectSettings.display/window/vsync/vsync_mode] is [b]Enabled[/b] "
"or [b]Adaptive[/b], the setting takes precedence and the max FPS number "
"cannot exceed the monitor's refresh rate. See also [method "
"DisplayServer.screen_get_refresh_rate].\n"
"If [member ProjectSettings.display/window/vsync/vsync_mode] is [b]Enabled[/"
"b], 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]. At higher refresh rates, the difference between the "
"FPS limit and the monitor refresh rate should be increased to ensure frames "
"to account for timing inaccuracies. The optimal formula for the FPS limit "
"value in this scenario is [code]r - (r * r) / 3600.0[/code], where [code]r[/"
"code] is the monitor's refresh rate.\n"
"[b]Note:[/b] The actual number of frames per second may still be below this "
"value if the CPU or GPU cannot keep up with the project's logic and "
"rendering.\n"
"[b]Note:[/b] If [member ProjectSettings.display/window/vsync/vsync_mode] is "
"[b]Disabled[/b], 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."
msgstr ""
"Le nombre maximal d'images qui peuvent être rendues chaque seconde (FPS). Une "
"valeur de [code]0[/code] signifie que le framerate n'est pas limité.\n"
"Limiter les FPS peut être utile pour réduire la consommation d'énergie de la "
"machine hôte, ce qui réduit la chaleur, les émissions sonores et améliore la "
"durée de vie de la batterie.\n"
"Si [member ProjectSettings.display/window/vsync/vsync_mode] vaut [b]Enabled[/"
"b] ou [b]Adaptive[/b], le paramètre a priorité et le nombre max de FPS ne "
"peut dépasser le taux de rafraîchissement du moniteur. Voir aussi [method "
"DisplayServer.screen_get_refresh_rate].\n"
"Si [member ProjectSettings.display/window/vsync/vsync_mode] vaut [b]Enabled[/"
"b], sur les moniteurs à taux de rafraîchissement variable (G-Sync/FreeSync), "
"en utilisant une limite de FPS inférieure de quelques images à la vitesse de "
"rafraîchissement du moniteur [url=https://blurbusters.com/howto-low-lag-vsync-"
"on/]réduit l'imput lag tout en évitant les déchirures[/url]. Sur des taux de "
"rafraîchissement plus élevés, il faudrait accroître la différence entre la "
"limite de FPS et le taux de rafraîchissement du moniteur afin de tenir compte "
"des inexactitudes temporelles. La formule optimale pour la valeur limite des "
"FPS dans ce scénario est [code]r - (r * r) / 3600.0[/code], où [code]r[/code] "
"est le taux de rafraîchissement du moniteur.\n"
"[b]Note :[/b] Le nombre réel d'images par seconde peut encore être inférieur "
"à cette valeur si le CPU ou le GPU ne peut pas respecter la logique et le "
"rendu du projet.\n"
"[b]Note :[/b] Si [member ProjectSettings.display/window/vsync/vsync_mode] "
"vaut [b]Disabled[/b], limiter les FPS à une valeur élevée qui peut être "
"constamment atteinte sur le système peut réduire l'imput lag par rapport à un "
"framerate non plafonné. Comme cela fonctionne en veillant à ce que la charge "
"GPU soit inférieure à 100%, cette réduction de latence n'est efficace que "
"dans les scénarios limités par le GPU, et non dans les scénarios limités par "
"le CPU."

msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and the [method Node._physics_process] method are run.\n"
"CPU usage scales approximately with the physics tick rate. However, at very "
"low tick rates (usually below 30), physics behavior can break down. Input can "
"also become less responsive at low tick rates as there can be a gap between "
"input being registered, and the response on the next physics tick. High tick "
"rates give more accurate physics simulation, particularly for fast moving "
"objects. For example, racing games may benefit from increasing the tick rate "
"above the default 60.\n"
"See also [member max_fps] and [member ProjectSettings.physics/common/"
"physics_ticks_per_second].\n"
"[b]Note:[/b] Only [member max_physics_steps_per_frame] physics ticks may be "
"simulated per rendered frame at most. If more physics ticks have to be "
"simulated per rendered frame to keep up with rendering, the project will "
"appear to slow down (even if [code]delta[/code] is used consistently in "
"physics calculations). Therefore, it is recommended to also increase [member "
"max_physics_steps_per_frame] if increasing [member physics_ticks_per_second] "
"significantly above its default value.\n"
"[b]Note:[/b] Consider enabling [url=$DOCS_URL/tutorials/physics/interpolation/"
"index.html]physics interpolation[/url] if you change [member "
"physics_ticks_per_second] to a value that is not a multiple of [code]60[/"
"code]. Using physics interpolation will avoid jittering when the monitor "
"refresh rate and physics update rate don't exactly match."
msgstr ""
"Le nombre d'itérations fixes par seconde. Cela contrôle combien de fois la "
"simulation physique et la méthode [method Node._physics_process] sont "
"exécutées. \n"
"L'utilisation du processeur augmente linéairement avec le taux de tic "
"physique. Cependant, à des taux de tic très faibles (généralement inférieurs "
"à 30), le comportement physique peut se décomposer. L'entrée peut également "
"devenir moins sensible à des taux de tic faibles car il peut y avoir un écart "
"entre l'entrée étant enregistrée, et la réponse sur la prochaine tic de "
"physique. Des taux de tic élevés donnent une simulation physique plus "
"précise, en particulier pour les objets en mouvement rapide. Par exemple, les "
"jeux de course peuvent bénéficier d'augmenter le taux de tics au-dessus du "
"taux par défaut de 60.\n"
"Voir aussi [member max_fps] et [member ProjectSettings.physics/common/"
"physics_ticks_per_second].\n"
"[b]Note :[/b] Seul les tics physiques [member max_physics_steps_per_frame] "
"peuvent être simulées par trame visuelle rendue au maximum. Si des tics "
"physiques suplémentaires doivent être simulées pour maintenir le rendu, le "
"projet semblera ralentir (même si [code]delta[/code] est utilisé "
"systématiquement dans les calculs de physique). Par conséquent, il est "
"recommandé d'augmenter [member max_physics_steps_per_frame] si vous augmentez "
"[member physics_ticks_per_second] significativement au-dessus de sa valeur "
"par défaut.\n"
"[b]Note:[/b] Envisager d'activer l'[url=$DOCS_URL/tutorials/physics/"
"interpolation/index.html]interpolation de la physique[/url] si vous changez "
"[member physics_ticks_per_second] à une valeur qui n'est pas multiple de "
"[code]60[/code]. L'utilisation de l'interpolation de la physique évitera les "
"déchirements lorsque le taux de rafraîchissement du moniteur et le taux de "
"mise à jour de la physique ne correspondent pas exactement."

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 "Returns the current debug depth."
msgstr "Renvoie la profondeur de débogage actuelle."

msgid "Returns the number of lines that remain."
msgstr "Renvoie le nombre de lignes restantes."

msgid ""
"Returns [code]true[/code] if the debugger is active otherwise [code]false[/"
"code]."
msgstr ""
"Renvoie [code]true[/code] si le débogueur est actif, sinon [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the debugger is skipping breakpoints otherwise "
"[code]false[/code]."
msgstr ""
"Renvoie [code]true[/code] si le débogueur saute les points d'arrêt, sinon "
"[code]false[/code]."

msgid "Removes a breakpoint with the given [param source] and [param line]."
msgstr ""
"Enlève un point d'arrêt en lien avec la [param source] et la ligne [param "
"line] données."

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 "Sets the current debugging depth."
msgstr "Définit la profondeur de débogage actuelle."

msgid "Sets the current debugging lines that remain."
msgstr "Définit les lignes de débogage actuelles restantes."

msgid "Unregisters the message capture with given [param name]."
msgstr "Désenregistre la capture de message avec le nom [param name] donné."

msgid "Unregisters a profiler with given [param name]."
msgstr "Désenregistre un profileur avec le nom [param name] donné."

msgid "Base class for creating custom profilers."
msgstr "Classe de base pour créer des profileurs personnalisés."

msgid ""
"Called when data is added to profiler using [method "
"EngineDebugger.profiler_add_frame_data]."
msgstr ""
"Appelée lorsque des données sont ajoutées au profileur en utilisant [method "
"EngineDebugger.profiler_add_frame_data]."

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 "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 [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 ""
"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 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 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 ""
"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 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 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 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 ""
"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 ""
"If [code]true[/code], the screen-space indirect lighting effect is enabled. "
"Screen space indirect lighting is a form of indirect lighting that allows "
"diffuse light to bounce between nearby objects. Screen-space indirect "
"lighting works very similarly to screen-space ambient occlusion, in that it "
"only affects a limited range. It is intended to be used along with a form of "
"proper global illumination like SDFGI or [VoxelGI]. Screen-space indirect "
"lighting is not affected by individual light's [member "
"Light3D.light_indirect_energy].\n"
"[b]Note:[/b] SSIL is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility."
msgstr ""
"Si [code]true[/code], l'effet d'éclairage indirect dans l'espace-écran "
"(Screen-Space Indirect Lightning) est activé. L'éclairage indirect dans "
"l'espace-écran est une forme d'éclairage indirect qui permet à la lumière "
"diffuse de rebondir entre des objets voisins. L'éclairage indirect dans "
"l'espace-écran fonctionne de manière très similaire à l'occlusion ambiante "
"dans l'espace-écran, car il affecte seulement une plage limitée. Il est "
"destiné à être utilisé avec une forme d'éclairage global appropriée comme "
"SDFGI ou [VoxelGI]. L'éclairage indirect dans l'espace-écran n'est pas "
"affecté par les [member Light3D.light_indirect_energy] de lumières "
"individuelles.\n"
"[b]Note :[/b] Le SSIL n'est supporté que dans la méthode de rendu Forward+, "
"et non Mobile ou Compatibilité."

msgid ""
"The brightness multiplier for the screen-space indirect lighting effect. A "
"higher value will result in brighter light."
msgstr ""
"Le multiplicateur de luminosité pour l'effet d'éclairage indirect dans "
"l'espace-écran. Une valeur plus élevée résultera en une lumière plus "
"brillante."

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 tonemapping mode to use. Tonemapping is the process that \"converts\" HDR "
"values to be suitable for rendering on an LDR display. (Godot doesn't support "
"rendering on HDR displays yet.)"
msgstr ""
"Le mode de tonemapping à utiliser. Le tonemapping est le processus qui "
"\"convertit\" des valeurs HDR pour être adaptées à du rendu sur un écran LDR. "
"(Godot ne supporte pas encore le rendu sur des écrans HDR.)"

msgid ""
"The [Color] of the volumetric fog when interacting with lights. Mist and fog "
"have an albedo close to [code]Color(1, 1, 1, 1)[/code] while smoke has a "
"darker albedo."
msgstr ""
"La [Color] du brouillard volumétrique lors de l'interaction avec des "
"lumières. La brume et le brouillard ont un albédo proche de [code]Color(1, 1, "
"1, 1)[/code] tandis que la fumée a un albédo plus foncé."

msgid ""
"Scales the strength of ambient light used in the volumetric fog. A value of "
"[code]0.0[/code] means that ambient light will not impact the volumetric fog. "
"[member volumetric_fog_ambient_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."
msgstr ""
"Dimensionne la force de la lumière ambiante utilisée dans le brouillard "
"volumétrique. Une valeur de [code]0.0[/code] signifie que la lumière ambiante "
"n'affectera pas le brouillard volumétrique. [member "
"volumetric_fog_ambient_inject] a un petit coût en performances lorsque 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] est une couleur "
"entièrement noire."

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 "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 ""
"Use 50% scale for SDFGI on the Y (vertical) axis. SDFGI cells will be twice "
"as short as they are wide. This allows providing increased GI detail and "
"reduced light leaking with thin floors and ceilings. This is usually the best "
"choice for scenes that don't feature much verticality."
msgstr ""
"Utiliser une échelle de 50% pour la SDFGI sur l'axe Y (vertical). Les "
"cellules de la SDFGI seront deux fois plus courtes que larges. Cela permet "
"d'augmenter les détails de la GI et de réduire les fuites de lumière avec des "
"sols et des plafonds minces. Il s'agit généralement du meilleur choix pour "
"les scènes qui ne présentent pas beaucoup de verticalité."

msgid ""
"Use 75% scale for SDFGI on the Y (vertical) axis. This is a balance between "
"the 50% and 100% SDFGI Y scales."
msgstr ""
"Utiliser une échelle de 75% pour la SDFGI sur l'axe Y (vertical). Il s'agit "
"d'un équilibre entre les échelles en Y 50% et 100% de la SDFGI."

msgid ""
"Use 100% scale for SDFGI on the Y (vertical) axis. SDFGI cells will be as "
"tall as they are wide. This is usually the best choice for highly vertical "
"scenes. The downside is that light leaking may become more noticeable with "
"thin floors and ceilings."
msgstr ""
"Utiliser une échelle de 100% pour la SDFGI sur l'axe Y (vertical). Les "
"cellules de la SDFGI seront deux fois plus grandes que larges. Il s'agit "
"généralement du meilleur choix pour les scènes très verticales. Le "
"désavantage est que les fuites de lumières peuvent être plus visibles avec "
"des sols et des plafonds minces."

msgid "A class that stores an expression you can execute."
msgstr "Une classe qui enregistre une expression que vous pouvez exécuter."

msgid ""
"An expression can be made of any arithmetic operation, built-in math function "
"call, method call of a passed instance, or built-in type construction call.\n"
"An example expression text using the built-in math functions could be "
"[code]sqrt(pow(3, 2) + pow(4, 2))[/code].\n"
"In the following example we use a [LineEdit] node to write our expression and "
"show the result.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var expression = Expression.new()\n"
"\n"
"func _ready():\n"
"\t$LineEdit.text_submitted.connect(self._on_text_submitted)\n"
"\n"
"func _on_text_submitted(command):\n"
"\tvar error = expression.parse(command)\n"
"\tif error != OK:\n"
"\t\tprint(expression.get_error_text())\n"
"\t\treturn\n"
"\tvar result = expression.execute()\n"
"\tif not expression.has_execute_failed():\n"
"\t\t$LineEdit.text = str(result)\n"
"[/gdscript]\n"
"[csharp]\n"
"private Expression _expression = new Expression();\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tGetNode<LineEdit>(\"LineEdit\").TextSubmitted += OnTextEntered;\n"
"}\n"
"\n"
"private void OnTextEntered(string command)\n"
"{\n"
"\tError error = _expression.Parse(command);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.Print(_expression.GetErrorText());\n"
"\t\treturn;\n"
"\t}\n"
"\tVariant result = _expression.Execute();\n"
"\tif (!_expression.HasExecuteFailed())\n"
"\t{\n"
"\t\tGetNode<LineEdit>(\"LineEdit\").Text = result.ToString();\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Une expression peut être faite de n'importe quelle opération arithmétique, "
"d'appels de fonctions mathématiques intégrées, d'appels de méthode sur une "
"instance donnée, ou de constructeurs de type intégrés.\n"
"Un exemple d'expression utilisant les fonctions mathématiques intégrées "
"serait [code]sqrt(pow(3,2) + pow(4,2))[/code].\n"
"Dans l'exemple suivant nous utilisons un nœud [LineEdit] pour écrire notre "
"expression et afficher le résultat.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var expression = Expression.new()\n"
"\n"
"func _ready():\n"
"\t$LineEdit.connect(\"text_entered\", self, \"_on_text_entered\")\n"
"\n"
"func _on_text_entered(command):\n"
"\tvar erreur = expression.parse(command, [])\n"
"\tif erreur != OK:\n"
"\t\tprint(expression.get_error_text())\n"
"\t\treturn\n"
"\tvar resultat = expression.execute([], null, true)\n"
"\tif not expression.has_execute_failed():\n"
"\t\t$LineEdit.text = str(resultat)\n"
"[/gdscript]\n"
"[csharp]\n"
"private Expression _expression = new Expression();\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tGetNode<LineEdit>(\"LineEdit\").TextSubmitted += OnTextEntered;\n"
"}\n"
"\n"
"private void OnTextEntered(string command)\n"
"{\n"
"\tError erreur = _expression.Parse(command);\n"
"\tif (erreur != Error.Ok)\n"
"\t{\n"
"\t\tGD.Print(_expression.GetErrorText());\n"
"\t\treturn;\n"
"\t}\n"
"\tVariant resultat = _expression.Execute();\n"
"\tif (!_expression.HasExecuteFailed())\n"
"\t{\n"
"\t\tGetNode<LineEdit>(\"LineEdit\").Text = resultat.ToString();\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 the error text if [method parse] or [method execute] has failed."
msgstr ""
"Renvoie le texte de l'erreur si [method parse] ou [method execute] a échoué."

msgid "Returns [code]true[/code] if [method execute] has failed."
msgstr "Renvoie [code]true[/code] si [method execute] a échoué."

msgid ""
"Parses the expression and returns an [enum Error] code.\n"
"You can optionally specify names of variables that may appear in the "
"expression with [param input_names], so that you can bind them when it gets "
"executed."
msgstr ""
"Parse l'expression et renvoie un code d'erreur [enum Error].\n"
"Vous pouvez en option spécifier des noms de variables qui peuvent apparaître "
"dans l'expression avec [param input_names], afin que vous puissiez les lier "
"lorsqu'elle est exécutée."

msgid "Texture which displays the content of an external buffer."
msgstr "Texture qui affiche le contenu d'un buffer externe."

msgid ""
"Displays the content of an external buffer provided by the platform.\n"
"Requires the [url=https://registry.khronos.org/OpenGL/extensions/OES/"
"OES_EGL_image_external.txt]OES_EGL_image_external[/url] extension (OpenGL) or "
"[url=https://registry.khronos.org/vulkan/specs/1.1-extensions/html/"
"vkspec.html#VK_ANDROID_external_memory_android_hardware_buffer]VK_ANDROID_external_memory_android_hardware_buffer[/"
"url] extension (Vulkan).\n"
"[b]Note:[/b] This is currently only supported in Android builds."
msgstr ""
"Affiche le contenu d'un buffer externe fourni par la plateforme.\n"
"Nécessite l'extension [url=https://registry.khronos.org/OpenGL/extensions/OES/"
"OES_EGL_image_external.txt]OES_EGL_image_external[/url] (OpenGL) ou "
"l'extension [url=https://registry.khronos.org/vulkan/specs/1.1-extensions/"
"html/"
"vkspec.html#VK_ANDROID_external_memory_android_hardware_buffer]VK_ANDROID_external_memory_android_hardware_buffer[/"
"url] (Vulkan).\n"
"[b]Note :[/b] Ceci n'est actuellement supporté que dans les compilations "
"Android."

msgid ""
"Returns the external texture ID.\n"
"Depending on your use case, you may need to pass this to platform APIs, for "
"example, when creating an [code]android.graphics.SurfaceTexture[/code] on "
"Android."
msgstr ""
"Renvoie l'ID de la texture externe.\n"
"Selon votre cas d'utilisation, vous pourriez avoir besoin de passer cela aux "
"APIs de la plateforme, par exemple, lors de la création d'un "
"[code]android.graphics.SurfaceTexture[/code] sur Android."

msgid ""
"Sets the external buffer ID.\n"
"Depending on your use case, you may need to call this with data received from "
"a platform API, for example, [code]SurfaceTexture.getHardwareBuffer()[/code] "
"on Android."
msgstr ""
"Renvoie l'ID du buffer externe.\n"
"Selon votre cas d'utilisation, vous pourriez avoir besoin d'appeler ceci avec "
"les données reçues d'une API de plateforme, par exemple, "
"[code]SurfaceTexture.getHardwareBuffer()[/code] sur Android."

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 ""
"The FBXDocument handles FBX documents. It provides methods to append data "
"from buffers or files, generate scenes, and register/unregister document "
"extensions.\n"
"When exporting FBX from Blender, use the \"FBX Units Scale\" option. The "
"\"FBX Units Scale\" option sets the correct scale factor and avoids manual "
"adjustments when re-importing into Blender, such as through glTF export."
msgstr ""
"Le FBXDocument gère les documents FBX. Il fournit des méthodes pour ajouter "
"des données à partir de buffers ou de fichiers, générer des scènes et "
"enregistrer/dés-enregistrer des extensions de document.\n"
"Lorsque vous exportez un FBX de Blender, utilisez l'option \"Échelle d'unité "
"FBX\". L'option \"Échelle d'unité FBX\" définit le facteur d'échelle correct "
"et évite les ajustements manuels lors de la réimportation dans Blender, comme "
"lors de l'export en glTF."

msgid "The FBXState handles the state data imported from FBX files."
msgstr "Le FBXState gère les données d'état importées des fichiers FBX."

msgid ""
"If [code]true[/code], the import process used auxiliary nodes called geometry "
"helper nodes. These nodes help preserve the pivots and transformations of the "
"original 3D model during import."
msgstr ""
"Si [code]true[/code], le processus d'import a utilisé des nœuds auxiliaires "
"appelés nœuds d'aide à la géométrie. Ces nœuds aident à préserver les pivots "
"et les transformations du modèle 3D original lors de l'import."

msgid ""
"This class can be used to permanently store data in the user device's file "
"system and to read from it. This is useful for storing game save data or "
"player configuration files.\n"
"[b]Example:[/b] How to write and read from a file. The file named [code]"
"\"save_game.dat\"[/code] will be stored in the user data folder, as specified "
"in the [url=$DOCS_URL/tutorials/io/data_paths.html]Data paths[/url] "
"documentation:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func save_to_file(content):\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.WRITE)\n"
"\tfile.store_string(content)\n"
"\n"
"func load_from_file():\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.READ)\n"
"\tvar content = file.get_as_text()\n"
"\treturn content\n"
"[/gdscript]\n"
"[csharp]\n"
"public void SaveToFile(string content)\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Write);\n"
"\tfile.StoreString(content);\n"
"}\n"
"\n"
"public string LoadFromFile()\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Read);\n"
"\tstring content = file.GetAsText();\n"
"\treturn content;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"A [FileAccess] instance has its own file cursor, which is the position in "
"bytes in the file where the next read/write operation will occur. Functions "
"such as [method get_8], [method get_16], [method store_8], and [method "
"store_16] will move the file cursor forward by the number of bytes read/"
"written. The file cursor can be moved to a specific position using [method "
"seek] or [method seek_end], and its position can be retrieved using [method "
"get_position].\n"
"A [FileAccess] instance will close its file when the instance is freed. Since "
"it inherits [RefCounted], this happens automatically when it is no longer in "
"use. [method close] can be called to close it earlier. In C#, the reference "
"must be disposed manually, which can be done with the [code]using[/code] "
"statement or by calling the [code]Dispose[/code] method directly.\n"
"[b]Note:[/b] To access project resources once exported, it is recommended to "
"use [ResourceLoader] instead of [FileAccess], as some files are converted to "
"engine-specific formats and their original source files might not be present "
"in the exported PCK package. If using [FileAccess], make sure the file is "
"included in the export by changing its import mode to [b]Keep File (exported "
"as is)[/b] in the Import dock, or, for files where this option is not "
"available, change the non-resource export filter in the Export dialog to "
"include the file's extension (e.g. [code]*.txt[/code]).\n"
"[b]Note:[/b] Files are automatically closed only if the process exits "
"\"normally\" (such as by clicking the window manager's close button or "
"pressing [kbd]Alt + F4[/kbd]). If you stop the project execution by pressing "
"[kbd]F8[/kbd] while the project is running, the file won't be closed as the "
"game process will be killed. You can work around this by calling [method "
"flush] at regular intervals."
msgstr ""
"Cette classe peut être implémentée pour stocker de manière permanente des "
"données dans le système de fichier de l'appareil de l'utilisateur, et pour en "
"lire. C'est utile pour stocker des données de sauvegardes ou des fichiers de "
"configuration de jeux.\n"
"[b]Example:[/b] Comment écrire et lire dans un fichier. Le fichier nommé "
"[code]\"save_game.dat\"[/code] sera stocké dans le dossier \"data\" de "
"l'utilisateur, comme indiqué dans la [url=$DOCS_URL/tutorials/io/"
"data_paths.html]Data paths[/url] documentation :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func save_to_file(content):\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.WRITE)\n"
"\tfile.store_string(content)\n"
"\n"
"func load_from_file():\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.READ)\n"
"\tvar content = file.get_as_text()\n"
"\treturn content\n"
"[/gdscript]\n"
"[csharp]\n"
"public void SaveToFile(string content)\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Write);\n"
"\tfile.StoreString(content);\n"
"}\n"
"\n"
"public string LoadFromFile()\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Read);\n"
"\tstring content = file.GetAsText();\n"
"\treturn content;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Une instance de [FileAccess] a son propre curseur de fichier, qui est la "
"position en bytes dans le fichier ou la prochaine opération de lecture/"
"écriture aura lieu. Les fonctions telles que [method get_8], [method get_16], "
"[method store_8], et[method store_16] déplaceront le curseur de fichier en "
"avant du nombre de bytes lus/écrits. Le curseur de fichier peut être déplacé "
"à une position spécifiée en utilisant la [method seek] ou[method seek_end], "
"et sa position peut être récupérée en utilisant [method get_position].\n"
"Une instance de [FileAccess] est fermée lorsque sont instance est libérée. "
"Étant donné qu'elle hérite de [RefCounted], cette opération est réalisée "
"automatiquement lorsqu'elle n'est plus utilisée. [method close] peut être "
"appelée pour la fermer plus tôt. En C#, la référence peut être supprimée "
"manuellement, ce qui peut être réalisé avec l'instruction [code]using[/code] "
"ou en appelant la méthode [code]Dispose[/code] directement.\n"
"[b]Note:[/b] Pour accéder aux ressources du projet une fois exporté, il est "
"recommandé d'utiliser [ResourceLoader] au lieu de [FileAccess], car certains "
"fichiers sont convertis en formats spécifiques au moteur et leurs fichiers "
"sources originaux pourraient ne pas être présents dans le paquet PCK exporté. "
"Si vous utilisez [FileAccess], assurez-vous que le fichier est inclus dans "
"l'exportation en changeant son mode d'importation à [b]Keep File (exported as "
"is)[/b] dans le dock d'importation, ou, pour les fichiers où cette option "
"n'est pas disponible, modifiez le filtre d'exportation non-ressource dans le "
"dialogue Exporter pour inclure l'extension du fichier (e.g. [code]*.txt[/"
"code]).\n"
"[b]Note : [/b] Les fichiers sont automatiquement fermés seulement si le "
"processus termine « normalement » (comme en cliquant sur le bouton de "
"fermeture du gestionnaire de fenêtre ou en appuyant sur [kbd]Alt + F4[/kbd]). "
"Si vous arrêtez l'exécution du projet en appuyant sur [kbd]F8[/kbd] pendant "
"que le projet est en cours d'exécution, le fichier ne sera pas fermé car le "
"processus de jeu sera arrêté. Vous pouvez contourner cela en appelant [method "
"flush] à intervalles réguliers."

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 [code]true[/code] if the [b]hidden[/b] attribute is set on the file "
"at the given path.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Retourne [code]true[/code] si l'attribut [b]hidden[/b] est défini sur le "
"fichier du chemin donné.\n"
"[b]Note :[/b] Cette méthode est disponible sur iOS, BSD, macOS et Windows."

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 [b]read only[/b] attribute is set on the "
"file at the given path.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Retourne [code]true[/code] si l'attribut [b]read only[/b] est défini sur le "
"fichier sur le chemin donné.\n"
"[b]Note:[/b] Cette méthode est implémentée sur iOS, BSD, macOS et Windows."

msgid ""
"Returns the size of the file at the given path, in bytes, or [code]-1[/code] "
"on error."
msgstr ""
"Renvoie la taille du fichier sur le chemin donné, en bytes, ou [code]-1[/"
"code] en cas d'erreur."

msgid "Returns [code]true[/code] if the file is currently opened."
msgstr "Renvoie [code]true[/code] si le fichier est actuellement ouvert."

msgid ""
"Sets file [b]hidden[/b] attribute.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Ajoute l'attribut [b]hidden[/b] au fichier.\n"
"[b]Note :[/b] Cette méthode est implémentée sur OS, BSD, macOS, et Windows."

msgid ""
"Sets file [b]read only[/b] attribute.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Ajoute l'attribut [b]read only[/b] au fichier\n"
"[b]Note :[/b] Cette méthode est implémentée sur iOS, BSD, macOS, et Windows."

msgid ""
"Stores an integer as 8 bits in the file. This advances the file cursor by 1 "
"byte. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] The [param value] should lie in the interval [code][0, 255][/"
"code]. Any other value will overflow and wrap around.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate.\n"
"To store a signed integer, use [method store_64], or convert it manually (see "
"[method store_16] for an example)."
msgstr ""
"Enregistre un entier sur 8 bits dans le fichier. Cela avance le curseur de "
"fichier de 8 bytes. Retourne [code]true[/code] si l'opération est réussie.\n"
"[b]Note :[/b] La [param value] doit se situer dans l'intervalle [code][0, 255]"
"[/code]. Toute autre valeur va déborder et boucler.\n"
"[b]Note :[/b] Si une erreur survient, la valeur résultante de l'indicateur de "
"position du fichier est indéterminée.\n"
"Pour stocker un entier signé, utilisez [method store_64] ou convertissez-le "
"manuellement (voir [method store_16] pour un exemple)."

msgid ""
"Stores an integer as 16 bits in the file. This advances the file cursor by 2 "
"bytes. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] The [param value] should lie in the interval [code][0, 2^16 - 1]"
"[/code]. Any other value will overflow and wrap around.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate.\n"
"To store a signed integer, use [method store_64] or store a signed integer "
"from the interval [code][-2^15, 2^15 - 1][/code] (i.e. keeping one bit for "
"the signedness) and compute its sign manually when reading. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"const MAX_15B = 1 << 15\n"
"const MAX_16B = 1 << 16\n"
"\n"
"func unsigned16_to_signed(unsigned):\n"
"\treturn (unsigned + MAX_15B) % MAX_16B - MAX_15B\n"
"\n"
"func _ready():\n"
"\tvar f = FileAccess.open(\"user://file.dat\", FileAccess.WRITE_READ)\n"
"\tf.store_16(-42) # This wraps around and stores 65494 (2^16 - 42).\n"
"\tf.store_16(121) # In bounds, will store 121.\n"
"\tf.seek(0) # Go back to start to read the stored value.\n"
"\tvar read1 = f.get_16() # 65494\n"
"\tvar read2 = f.get_16() # 121\n"
"\tvar converted1 = unsigned16_to_signed(read1) # -42\n"
"\tvar converted2 = unsigned16_to_signed(read2) # 121\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tusing var f = FileAccess.Open(\"user://file.dat\", "
"FileAccess.ModeFlags.WriteRead);\n"
"\tf.Store16(unchecked((ushort)-42)); // This wraps around and stores 65494 "
"(2^16 - 42).\n"
"\tf.Store16(121); // In bounds, will store 121.\n"
"\tf.Seek(0); // Go back to start to read the stored value.\n"
"\tushort read1 = f.Get16(); // 65494\n"
"\tushort read2 = f.Get16(); // 121\n"
"\tshort converted1 = (short)read1; // -42\n"
"\tshort converted2 = (short)read2; // 121\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Enregistre un entier au format 16 bits dans le fichier. Cette opération "
"avance le curseur de fichier de 2 bytes. Retourne [code]true[/code] si "
"l'opération est réussie.\n"
"[b]Note :[/b] La [param value] doit entre dans l'intervalle [code][0, 2^16 - "
"1][/code]. Toute autre valeur dépassera et sera alors réduite à cet "
"intervalle.\n"
"[b]Note:[/b] Si une erreur se produit, la valeur résultante de l'indicateur "
"de position du fichier est indéterminée.\n"
"Pour stocker un entier signé, utilisez [method store_64] ou stockez un entier "
"signé à partir de l'intervalle [code][-2^15, 2^15 - 1][/code] (c.-à-d. garder "
"un bit pour la signature) et calculer son signe manuellement lors de la "
"lecture. Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"const MAX_15B = 1 << 15\n"
"const MAX_16B = 1 << 16\n"
"\n"
"func unsigned16_to_signed(unsigned):\n"
"\treturn (unsigned + MAX_15B) % MAX_16B - MAX_15B\n"
"\n"
"func _ready():\n"
"\tvar f = FileAccess.open(\"user://file.dat\", FileAccess.WRITE_READ)\n"
"\tf.store_16(-42) # This wraps around and stores 65494 (2^16 - 42).\n"
"\tf.store_16(121) # In bounds, will store 121.\n"
"\tf.seek(0) # Go back to start to read the stored value.\n"
"\tvar read1 = f.get_16() # 65494\n"
"\tvar read2 = f.get_16() # 121\n"
"\tvar converted1 = unsigned16_to_signed(read1) # -42\n"
"\tvar converted2 = unsigned16_to_signed(read2) # 121\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tusing var f = FileAccess.Open(\"user://file.dat\", "
"FileAccess.ModeFlags.WriteRead);\n"
"\tf.Store16(unchecked((ushort)-42)); // This wraps around and stores 65494 "
"(2^16 - 42).\n"
"\tf.Store16(121); // In bounds, will store 121.\n"
"\tf.Seek(0); // Go back to start to read the stored value.\n"
"\tushort read1 = f.Get16(); // 65494\n"
"\tushort read2 = f.Get16(); // 121\n"
"\tshort converted1 = (short)read1; // -42\n"
"\tshort converted2 = (short)read2; // 121\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 "A dialog for selecting files or directories in the filesystem."
msgstr ""
"Une boîte de dialogue pour sélectionner des fichiers ou des répertoires dans "
"le système de fichiers."

msgid ""
"Adds an additional [OptionButton] to the file dialog. If [param values] is "
"empty, a [CheckBox] is added instead.\n"
"[param default_value_index] should be an index of the value in the [param "
"values]. If [param values] is empty it should be either [code]1[/code] "
"(checked), or [code]0[/code] (unchecked)."
msgstr ""
"Ajoute un [OptionButton] supplémentaire au dialogue de fichier. Si [param "
"values] est vide, une [CheckBox] est ajoutée à la place.\n"
"[param default_value_index] devrait être un index de la valeur dans les "
"[param values]. Si [param values] est vide, il doit valoir soit [code]1[/"
"code] (coché), soit [code]0[/code] (non coché)."

msgid "Clear the filter for file names."
msgstr "Vide le filtre pour les noms de fichier."

msgid "Clear all the added filters in the dialog."
msgstr "Efface tous les filtres ajoutés au dialogue."

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 default value index of the [OptionButton] or [CheckBox] with "
"index [param option]."
msgstr ""
"Renvoie l'index de valeur par défaut de l'[OptionButton] ou de la [CheckBox] "
"avec l'index [param option]."

msgid ""
"Returns the name of the [OptionButton] or [CheckBox] with index [param "
"option]."
msgstr ""
"Renvoie le nom de l'[OptionButton] ou de la [CheckBox] avec l'index [param "
"option]."

msgid ""
"Returns an array of values of the [OptionButton] with index [param option]."
msgstr ""
"Renvoie un tableau des valeurs de l'[OptionButton] avec l'index [param "
"option]."

msgid ""
"Returns a [Dictionary] with the selected values of the additional "
"[OptionButton]s and/or [CheckBox]es. [Dictionary] keys are names and values "
"are selected value indices."
msgstr ""
"Renvoie un [Dictionary] avec les valeurs sélectionnées des [OptionButton]s et/"
"ou des [CheckBox]s supplémentaires. Les clés du [Dictionary] sont des noms et "
"les valeurs sont les indices des valeur sélectionnées."

msgid ""
"Sets the default value index of the [OptionButton] or [CheckBox] with index "
"[param option]."
msgstr ""
"Définit l'index de valeur par défaut de l'[OptionButton] ou de la [CheckBox] "
"avec l'index [param option]."

msgid ""
"Sets the name of the [OptionButton] or [CheckBox] with index [param option]."
msgstr ""
"Définit le nom de l'[OptionButton] ou de la [CheckBox] avec l'index [param "
"option]."

msgid "Sets the option values of the [OptionButton] with index [param option]."
msgstr ""
"Définit les valeurs des options de l'[OptionButton] avec l'index [param "
"option]."

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 "Display mode of the dialog's file list."
msgstr "Mode d'affichage de la liste des fichiers de la boîte de dialogue."

msgid "The dialog's open or save mode, which affects the selection behavior."
msgstr ""
"Le mode d'ouverture ou de sauvegarde de la fenêtre, qui affecte le "
"comportement de la sélection."

msgid "If [code]true[/code], shows the toggle hidden files button."
msgstr ""
"Si [code]true[/code], affiche le bouton pour activer/désactiver les fichiers "
"cachés."

msgid "If [code]true[/code], shows the layout switch buttons (list/thumbnails)."
msgstr ""
"Si [code]true[/code], affiche les boutons pour changer de disposition (liste/"
"aperçus)."

msgid ""
"If [code]true[/code], changing the [member file_mode] property will set the "
"window title accordingly (e.g. setting [member file_mode] to [constant "
"FILE_MODE_OPEN_FILE] will change the window title to \"Open a File\")."
msgstr ""
"Si [code]true[/code], changer la propriété [member file_mode] définira le "
"titre de la fenêtre en conséquence (par exemple, définir [member file_mode] à "
"[constant FILE_MODE_OPEN_FILE] modifiera le titre de la fenêtre en \"Ouvrir "
"un fichier\")."

msgid "The number of additional [OptionButton]s and [CheckBox]es in the dialog."
msgstr ""
"Le nombre d'[OptionButton]s et de [CheckBox]s supplémentaires dans la fenêtre."

msgid ""
"If [code]true[/code], shows the recent directories list on the left side of "
"the dialog."
msgstr ""
"Si [code]true[/code], affiche la liste des répertoires récents sur le côté "
"gauche de la fenêtre."

msgid ""
"If non-empty, the given sub-folder will be \"root\" of this [FileDialog], "
"i.e. user won't be able to go to its parent directory.\n"
"[b]Note:[/b] This property is ignored by native file dialogs."
msgstr ""
"Si non vide, le sous-dossier donné sera la \"racine\" de ce [FileDialog], "
"c'est-à-dire que l'utilisateur ne pourra pas accéder à son répertoire "
"parent.\n"
"[b]Note :[/b] Cette propriété est ignorée par les boîtes de dialogue de "
"fichier natives."

msgid ""
"If [code]true[/code], the dialog will show hidden files.\n"
"[b]Note:[/b] This property is ignored by native file dialogs on Android and "
"Linux."
msgstr ""
"Si [code]true[/code], la fenêtre affichera les fichiers cachés.\n"
"[b]Note :[/b] Cette propriété est ignorée par les boîtes de dialogue de "
"fichier natives sur Android et Linux."

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 filter for file names changes."
msgstr "Émis lorsque le filtre pour les noms de fichiers change."

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 dialog displays files as a grid of thumbnails. Use [theme_item "
"thumbnail_size] to adjust their size."
msgstr ""
"Le dialogue affiche les fichiers en tant que grille de miniatures. Utilisez "
"[theme_item thumbnail_size] pour ajuster leur taille."

msgid "The dialog displays files as a list of filenames."
msgstr "La fenêtre affiche les fichier en tant que liste de noms de fichier."

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 the back arrow."
msgstr "Icône personnalisée pour la flèche arrière."

msgid "Custom icon for the create folder button."
msgstr "Icône personnalisée pour le bouton de création de dossier."

msgid "Custom icon for favorite folder button."
msgstr "Icône personnalisée pour le bouton de dossier favori."

msgid "Custom icon for files."
msgstr "Icône personnalisée pour les fichiers."

msgid "Icon for files when in thumbnail mode."
msgstr "Icône pour les fichiers en mode miniatures."

msgid "Custom icon for folders."
msgstr "Icône personnalisée pour les dossiers."

msgid "Icon for folders when in thumbnail mode."
msgstr "Icône pour les dossiers en mode miniatures."

msgid "Custom icon for the forward arrow."
msgstr "Icône personnalisée pour la flèche avant."

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]precision=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 "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 the font ascent (number of pixels above the baseline)."
msgstr ""
"Renvoie l’ascendant de la police (le nombre de pixels au dessus de la ligne "
"de base)."

msgid "Returns the font descent (number of pixels below the baseline)."
msgstr ""
"Renvoie le descendant de la police (le nombre de pixels en dessous de la "
"ligne de base)."

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 "A variation of a font with additional settings."
msgstr "Une variation d'une police avec des paramètres supplémentaires."

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 ""
"A script implemented in the GDScript programming language, saved with the "
"[code].gd[/code] extension. The script extends the functionality of all "
"objects that instantiate it.\n"
"Calling [method new] creates a new instance of the script. [method "
"Object.set_script] extends an existing object, if that object's class matches "
"one of the script's base classes.\n"
"If you are looking for GDScript's built-in functions, see [@GDScript] instead."
msgstr ""
"Un script implémenté dans le langage de programmation GDScript, enregistré "
"avec l'extension [code].gd[/code]. Le script étend la fonctionnalité de tous "
"les objets qui l'instancient.\n"
"Appeler [method new] crée une nouvelle instance du script. [method "
"Object.set_script] étend un objet existant, si la classe de cet objet "
"correspond à l'une des classes de base du script.\n"
"Si vous cherchez les fonctions intégrées de GDScript, voir [@GDScript] à la "
"place."

msgid "GDScript documentation index"
msgstr "Index de la documentation GDScript"

msgid ""
"Returns a new instance of the script.\n"
"[codeblock]\n"
"var MyClass = load(\"myclass.gd\")\n"
"var instance = MyClass.new()\n"
"print(instance.get_script() == MyClass) # Prints true\n"
"[/codeblock]"
msgstr ""
"Renvoie une nouvelle instance du script.\n"
"[codeblock]\n"
"var MaClasse = load(\"maclasse.gd\")\n"
"var instance = MaClasse.new()\n"
"print(instance.get_script() == MaClasse) # Affiche true\n"
"[/codeblock]"

msgid ""
"A GDScript syntax highlighter that can be used with [TextEdit] and [CodeEdit] "
"nodes."
msgstr ""
"Un colorateur syntaxique GDScript qui peut être utilisée avec les nœuds "
"[TextEdit] et [CodeEdit]."

msgid ""
"[b]Note:[/b] This class can only be used for editor plugins because it relies "
"on editor settings.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var code_preview = TextEdit.new()\n"
"var highlighter = GDScriptSyntaxHighlighter.new()\n"
"code_preview.syntax_highlighter = highlighter\n"
"[/gdscript]\n"
"[csharp]\n"
"var codePreview = new TextEdit();\n"
"var highlighter = new GDScriptSyntaxHighlighter();\n"
"codePreview.SyntaxHighlighter = highlighter;\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[b]Note :[/b] Cette classe ne peut être utilisée que pour les plugins "
"éditeurs parce qu'elle repose sur les paramètres de l'éditeur.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var previsualisation_code = TextEdit.new()\n"
"var colorateur = GDScriptSyntaxHighlighter.new()\n"
"previsualisation_code.syntax_highlighter = colorateur\n"
"[/gdscript]\n"
"[csharp]\n"
"var previsualisationCode = new TextEdit();\n"
"var colorateur= new GDScriptSyntaxHighlighter();\n"
"previsualisationCode.SyntaxHighlighter = colorateur;\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"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 nœud 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 nœud 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 ""
"The particle rendering layers ([member VisualInstance3D.layers]) that will be "
"affected by the attractor. By default, all particles are affected by an "
"attractor.\n"
"After configuring particle nodes accordingly, specific layers can be "
"unchecked to prevent certain particles from being affected by attractors. For "
"example, this can be used if you're using an attractor as part of a spell "
"effect but don't want the attractor to affect unrelated weather particles at "
"the same position.\n"
"Particle attraction can also be disabled on a per-process material basis by "
"setting [member ParticleProcessMaterial.attractor_interaction_enabled] on the "
"[GPUParticles3D] node."
msgstr ""
"Les couches de rendu des particules ([member VisualInstance3D.layers]) qui "
"seront affectées par l'attracteur. Par défaut, toutes les particules sont "
"affectées par un attracteur.\n"
"Après avoir configuré les nœuds de particules en conséquence, des couches "
"spécifiques peuvent être décochées pour empêcher que certaines particules ne "
"soient affectées par des attracteurs. Par exemple, cela peut être utilisé si "
"vous utilisez un attracteur dans le cadre d'un effet de sort, mais ne voulez "
"pas que l'attracteur affecte les particules météorologiques sans rapport à la "
"même position.\n"
"L'attraction des particules peut également être désactivée selon le matériau "
"de traitement en définissant [member "
"ParticleProcessMaterial.attractor_interaction_enabled] sur le nœud "
"[GPUParticles3D]."

msgid ""
"Adjusts how directional the attractor is. At [code]0.0[/code], the attractor "
"is not directional at all: it will attract particles towards its center. At "
"[code]1.0[/code], the attractor is fully directional: particles will always "
"be pushed towards local -Z (or +Z if [member strength] is negative).\n"
"[b]Note:[/b] If [member directionality] is greater than [code]0.0[/code], the "
"direction in which particles are pushed can be changed by rotating the "
"[GPUParticlesAttractor3D] node."
msgstr ""
"Ajuste à quel point l'attracteur est directionnel. À [code]0.0[/code], "
"l'attracteur n'est pas directionnel du tout : il attirera les particules vers "
"son centre. À [code]1.0[/code], l'attracteur est entièrement directionnel : "
"les particules seront toujours poussées vers le -Z local (ou +Z si [member "
"strength] est négative).\n"
"[b]Note :[/b] Si [member directionality] est supérieure à [code]0.0[/code], "
"la direction dans laquelle les particules sont poussées peut être modifiée en "
"tournant le nœud [GPUParticlesAttractor3D]."

msgid ""
"Adjusts the strength of the attractor. If [member strength] is negative, "
"particles will be pushed in the opposite direction. Particles will be pushed "
"[i]away[/i] from the attractor's origin if [member directionality] is "
"[code]0.0[/code], or towards local +Z if [member directionality] is greater "
"than [code]0.0[/code]."
msgstr ""
"Ajuste la force de l'attracteur. Si [member strength] est négative, les "
"particules seront poussées dans la direction opposée. Les particules seront "
"poussées [i]hors[/i] de l'origine de l'attracteur si [member directionality] "
"vaut [code]0.0[/code], ou vers le +Z local si [member directionality] est "
"supérieure à [code]0.0[/code]."

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 ""
"A box-shaped attractor that influences particles from [GPUParticles3D] nodes. "
"Can be used to attract particles towards its origin, or to push them away "
"from its 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"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Un attracteur en forme de boîte qui influence les particules de nœuds "
"[GPUParticles3D]. Peut être utilisé pour attirer des particules vers son "
"origine, ou pour les pousser hors de son origine.\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, les attracteurs à échelle non uniformes sont également "
"supportés.\n"
"[b]Note :[/b] Les attracteurs de particules n'affectent que [GPUParticles3D], "
"pas [CPUParticles3D]."

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 ""
"A spheroid-shaped attractor that influences particles from [GPUParticles3D] "
"nodes. Can be used to attract particles towards its origin, or to push them "
"away from its 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"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Un attracteur en forme de sphère qui influence les particules de nœuds "
"[GPUParticles3D]. Peut être utilisé pour attirer des particules vers son "
"origine, ou pour les pousser hors de son origine.\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, les attracteurs à échelle non uniformes sont également "
"supportés.\n"
"[b]Note :[/b] Les attracteurs de particules n'affectent que [GPUParticles3D], "
"pas [CPUParticles3D]."

msgid ""
"The attractor sphere's radius in 3D units.\n"
"[b]Note:[/b] Stretched ellipses can be obtained by using non-uniform scaling "
"on the [GPUParticlesAttractorSphere3D] node."
msgstr ""
"Le rayon de la sphère de l'attracteur en unités 3D.\n"
"[b]Note: [/b] Des ellipses étirées peuvent être obtenues en utilisant une "
"échelle non uniforme sur le nœud [GPUParticlesAttractorSphere3D]."

msgid ""
"A box-shaped attractor with varying directions and strengths defined in it "
"that influences particles from [GPUParticles3D] nodes."
msgstr ""
"Un attracteur en forme de boîte avec des directions et des forces variables "
"définies dans celui-ci qui influence les particules des nœuds "
"[GPUParticles3D]."

msgid ""
"A box-shaped attractor with varying directions and strengths defined in it "
"that influences particles from [GPUParticles3D] nodes.\n"
"Unlike [GPUParticlesAttractorBox3D], [GPUParticlesAttractorVectorField3D] "
"uses a [member texture] to affect attraction strength within the box. This "
"can be used to create complex attraction scenarios where particles travel in "
"different directions depending on their location. This can be useful for "
"weather effects such as sandstorms.\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"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Un attracteur en forme de boîte avec des directions et des forces variables "
"définies dans celui-ci qui influence les particules des nœuds "
"[GPUParticles3D].\n"
"Contrairement à [GPUParticlesAttractorBox3D], "
"[GPUParticlesAttractorVectorField3D] utilise une [member texture] pour "
"affecter la force d'attraction dans la boîte. Cela peut être utilisé pour "
"créer des scénarios d'attraction complexes où les particules voyagent dans "
"différentes directions en fonction de leur emplacement. Cela peut être utile "
"pour des effets météorologiques comme les tempêtes de sable.\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, les attracteurs à échelle non uniformes sont également "
"supportés.\n"
"[b]Note :[/b] Les attracteurs de particules n'affectent que [GPUParticles3D], "
"pas [CPUParticles3D]."

msgid "The size of the vector field box in 3D units."
msgstr "La taille de la boîte du champ vectoriel en unités 3D."

msgid ""
"The 3D texture to be used. Values are linearly interpolated between the "
"texture's pixels.\n"
"[b]Note:[/b] To get better performance, the 3D texture's resolution should "
"reflect the [member size] of the attractor. Since particle attraction is "
"usually low-frequency data, the texture can be kept at a low resolution such "
"as 64×64×64."
msgstr ""
"La texture 3D à utiliser. Les valeurs sont linéairement interpolées entre les "
"pixels de la texture.\n"
"[b]Note :[/b] Pour obtenir une meilleure performance, la résolution de la "
"texture 3D devrait refléter la taille [member size] de l'attracteur. Comme "
"l'attraction de particules est généralement une donnée à basse fréquence, la "
"texture peut être conservée à une résolution basse comme 64×64×64."

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, é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 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], étant donné un numéro de couche [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 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 a list of all connections for [param node].\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"
"[b]Example:[/b] Get all connections on a specific port:\n"
"[codeblock]\n"
"func get_connection_list_from_port(node, port):\n"
"\tvar connections = get_connection_list_from_node(node)\n"
"\tvar result = []\n"
"\tfor connection in connections:\n"
"\t\tvar dict = {}\n"
"\t\tif connection[\"from_node\"] == node and connection[\"from_port\"] == "
"port:\n"
"\t\t\tdict[\"node\"] = connection[\"to_node\"]\n"
"\t\t\tdict[\"port\"] = connection[\"to_port\"]\n"
"\t\t\tdict[\"type\"] = \"left\"\n"
"\t\t\tresult.push_back(dict)\n"
"\t\telif connection[\"to_node\"] == node and connection[\"to_port\"] == "
"port:\n"
"\t\t\tdict[\"node\"] = connection[\"from_node\"]\n"
"\t\t\tdict[\"port\"] = connection[\"from_port\"]\n"
"\t\t\tdict[\"type\"] = \"right\"\n"
"\t\t\tresult.push_back(dict)\n"
"\treturn result\n"
"[/codeblock]"
msgstr ""
"Renvoie un [Array] contenant une liste de toutes les connections pour le nœud "
"[param node].\n"
"Une connexion est représentée par un [Dictionary] de la forme :\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"
"[b]Example :[/b] Obtenir toutes les connexions sur un port spécifique :\n"
"[codeblock]\n"
"func obtenir_liste_connexions_du_port(noeud, port):\n"
"\tvar connexions = get_connection_list_from_node(noeud)\n"
"\tvar resultat = []\n"
"\tfor connexion in connexions:\n"
"\t\tvar dict = {}\n"
"\t\tif connexion[\"from_node\"] == noeud and connexion[\"from_port\"] == "
"port:\n"
"\t\t\tdict[\"node\"] = connexion[\"to_node\"]\n"
"\t\t\tdict[\"port\"] = connexion[\"to_port\"]\n"
"\t\t\tdict[\"type\"] = \"left\"\n"
"\t\t\tresultat.push_back(dict)\n"
"\t\telif connexion[\"to_node\"] == noeud and connexion[\"to_port\"] == port:\n"
"\t\t\tdict[\"node\"] = connexion[\"from_node\"]\n"
"\t\t\tdict[\"port\"] = connexion[\"from_port\"]\n"
"\t\t\tdict[\"type\"] = \"right\"\n"
"\t\t\tresultat.push_back(dict)\n"
"\treturn resultat\n"
"[/codeblock]"

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 ""
"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 "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 to the GraphEdit when the connection between the [param from_port] of "
"the [param from_node] [GraphNode] and the [param to_port] of the [param "
"to_node] [GraphNode] is attempted to be created."
msgstr ""
"Émis au GraphEdit lorsque la connexion entre le port [param from_port] du "
"[GraphNode] [param from_node] et le port [param to_port] du [GraphNode] "
"[param to_node] est tentée d'être créée."

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 to the GraphEdit when the connection between [param from_port] of "
"[param from_node] [GraphNode] and [param to_port] of [param to_node] "
"[GraphNode] is attempted to be removed."
msgstr ""
"Émis au GraphEdit lorsque la connexion entre le port [param from_port] du "
"[GraphNode] [param from_node] et le port [param to_port] du [GraphNode] "
"[param to_node] est tentée d'être supprimée."

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 the [GraphFrame] [param frame] is resized to [param new_rect]."
msgstr ""
"Émis lorsque le [GraphFrame] [param frame] est redimensionné à [param "
"new_rect]."

msgid ""
"Emitted when one or more [GraphElement]s are dropped onto the [GraphFrame] "
"named [param frame], when they were not previously attached to any other "
"one.\n"
"[param elements] is an array of [GraphElement]s to be attached."
msgstr ""
"Émis lorsqu'un ou plusieurs [GraphElement] sont déposés sur le [GraphFrame] "
"nommé [param frame], lorsqu'ils n'étaient pas auparavant attachés à un autre "
"élément.\n"
"[param elements] est un tableau de [GraphElement] à attacher."

msgid "Emitted when the given [GraphElement] node is deselected."
msgstr "Émis lorsque le nœud [GraphElement] donné est désélectionné."

msgid "Emitted when the given [GraphElement] node is selected."
msgstr "Émis lorsque le nœud [GraphElement] donné est sélectionné."

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 a popup is requested. Happens on right-clicking in the "
"GraphEdit. [param at_position] is the position of the mouse pointer when the "
"signal is sent."
msgstr ""
"Émis lorsqu'une popup est demandée. Arrive lors d'un clic droit dans le "
"GraphEdit. [param at_position] est la position du pointeur de la souris "
"lorsque le signal est envoyé."

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 ""
"[kbd]Mouse Wheel[/kbd] will zoom, [kbd]Ctrl + Mouse Wheel[/kbd] will move the "
"view."
msgstr ""
"[kbd]Molette souris[/kbd] va zoomer, [kbd]Ctrl + Molette souris[/kbd] va "
"déplacer la vue."

msgid ""
"[kbd]Mouse Wheel[/kbd] will move the view, [kbd]Ctrl + Mouse Wheel[/kbd] will "
"zoom."
msgstr ""
"[kbd]Molette souris[/kbd] va déplacer la vue, [kbd]Ctrl + Molette souris[/"
"kbd] va zoomer."

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 ""
"Color the connection line is interpolated to based on the activity value of a "
"connection (see [method set_connection_activity])."
msgstr ""
"Couleur vers laquelle la ligne de connexion est interpolée en fonction de la "
"valeur d'activité d'une connexion (voir [method set_connection_activity])."

msgid ""
"Color which is blended with the connection line when the mouse is hovering "
"over it."
msgstr ""
"Couleur qui est mélangée avec la ligne de connexion lorsque la souris la "
"survole."

msgid ""
"Color of the rim around each connection line used for making intersecting "
"lines more distinguishable."
msgstr ""
"Couleur de la bordure autour de chaque ligne de connexion utilisée pour "
"rendre les lignes d'intersection plus distinguables."

msgid ""
"Color which is blended with the connection line when the currently dragged "
"connection is hovering over a valid target port."
msgstr ""
"Couleur qui est mélangée avec la ligne de connexion lorsque la connexion "
"actuellement glissée survole un port cible valide."

msgid "Color of major grid lines/dots."
msgstr "Couleur des lignes/points principaux de la grille."

msgid "Color of minor grid lines/dots."
msgstr "Couleur des lignes/points secondaires de la grille."

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 horizontal range within which a port can be grabbed (inner side)."
msgstr ""
"La plage horizontale sur laquelle un port peut être saisi (côté intérieur)."

msgid "The horizontal range within which a port can be grabbed (outer side)."
msgstr ""
"La plage horizontale sur laquelle un port peut être saisi (côté extérieur)."

msgid "The icon for the grid toggle button."
msgstr "L'icône du bouton d'activation de la grille."

msgid "The icon for the layout button for auto-arranging the graph."
msgstr "L'icône pour le bouton de mise en page pour auto-arranger le graphe."

msgid "The icon for the minimap toggle button."
msgstr "L'icône du bouton d'activation de la mini-carte."

msgid "The icon for the snapping toggle button."
msgstr "L'icône du bouton d'activation de la magnétisation."

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 ""
"[StyleBox] used when the [GraphEdit] is focused (when used with assistive "
"apps)."
msgstr ""
"[StyleBox] utilisée quand le [GraphEdit] a le focus (lorsqu’utilisé avec des "
"applications d'assistance)."

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 "A container with connection ports, representing a node in a [GraphEdit]."
msgstr ""
"Un conteneur avec des ports de connexion, représentant un nœud dans un "
"[GraphEdit]."

msgid "Returns the [Color] of the input port with the given [param port_idx]."
msgstr "Retourne la [Color] de la connexion d'entrée au [param port_idx] donné."

msgid "Returns the position of the input port with the given [param port_idx]."
msgstr "Retourne la position du port d'entrée avec le [param port_idx] donné."

msgid ""
"Returns the corresponding slot index of the input port with the given [param "
"port_idx]."
msgstr ""
"Retourne l'index correspondant du port d'entrée avec le [param port_idx] "
"donné."

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 ""
"GridMap lets you place meshes on a grid interactively. It works both from the "
"editor and from scripts, which can help you create in-game level editors.\n"
"GridMaps use a [MeshLibrary] which contains a list of tiles. Each tile is a "
"mesh with materials plus optional collision and navigation shapes.\n"
"A GridMap contains a collection of cells. Each grid cell refers to a tile in "
"the [MeshLibrary]. All cells in the map have the same dimensions.\n"
"Internally, a GridMap is split into a sparse collection of octants for "
"efficient rendering and physics processing. Every octant has the same "
"dimensions and can contain several cells.\n"
"[b]Note:[/b] GridMap doesn't extend [VisualInstance3D] and therefore can't be "
"hidden or cull masked based on [member VisualInstance3D.layers]. If you make "
"a light not affect the first layer, the whole GridMap won't be lit by the "
"light in question."
msgstr ""
"GridMap vous permet de placer de manière interactive des maillages sur une "
"grille. Elle fonctionne à la fois à partir de l'éditeur et des scripts, ce "
"qui peut vous aider à créer des éditeurs de niveau en jeu.\n"
"Les GridMaps utilisent une [MeshLibrary] qui contient une liste de tuiles. "
"Chaque tuile est un maillage avec des matériaux, en plus de formes de "
"collision et de navigation en option.\n"
"Une GridMap contient une collection de cellules. Chaque cellule de la grille "
"se réfère à une tuile dans la [MeshLibrary]. Toutes les cellules de la grille "
"ont les mêmes dimensions.\n"
"En interne, une GridMap est divisée en une collection d'octants séparés pour "
"traitement du rendu et de la physique efficace. Chaque octant a les mêmes "
"dimensions et peut contenir plusieurs cellules.\n"
"[b]Note :[/b] GridMap n'étend pas [VisualInstance3D] et donc de ne pas être "
"cull ou masqué selon [member VisualInstance3D.layers]. Si vous ajoutez une "
"lumière qui n'affecte pas la première couche, la GridMap entière ne sera "
"éclairée la lumière en question."

msgid "Using gridmaps"
msgstr "Utiliser les gridmaps"

msgid "Clear all cells."
msgstr "Effacer toutes les cellules."

msgid "Clears all baked meshes. See [method make_baked_meshes]."
msgstr ""
"Retire tous les maillages pré-calculés. Voir [method make_baked_meshes]."

msgid "Returns [RID] of a baked mesh with the given [param idx]."
msgstr ""
"Renvoie le [RID] d'un maillage pré-calculé avec l'index [param idx] donné."

msgid ""
"Returns an array of [ArrayMesh]es and [Transform3D] references of all bake "
"meshes that exist within the current GridMap. Even indices contain "
"[ArrayMesh]es, while odd indices contain [Transform3D]s that are always equal "
"to [constant Transform3D.IDENTITY].\n"
"This method relies on the output of [method make_baked_meshes], which will be "
"called with [code]gen_lightmap_uv[/code] set to [code]true[/code] and "
"[code]lightmap_uv_texel_size[/code] set to [code]0.1[/code] if it hasn't been "
"called yet."
msgstr ""
"Renvoie un tableau de références d'[ArrayMesh]s et de [Transform3D]s de tous "
"les maillages pré-calculés qui existent dans la GridMap actuelle. Les indices "
"pairs contiennent des [ArrayMesh]s, tandis que les indices impairs "
"contiennent des [Transform3D] qui sont toujours égaux à [constant "
"Transform3D.IDENTITY].\n"
"Cette méthode repose sur la sortie de [method make_baked_meshes], qui sera "
"appelée avec [code]gen_lightmap_uv[/code] défini à [code]true[/code] et "
"[code]lightmap_uv_texel_size[/code] défini à [code]0.1[/code] si elle n'a pas "
"encore été appelée."

msgid ""
"Returns one of 24 possible rotations that lie along the vectors (x,y,z) with "
"each component being either -1, 0, or 1. For further details, refer to the "
"Godot source code."
msgstr ""
"Renvoie une des 24 rotations possibles qui se situent le long des vecteurs "
"(x,y,z) avec chaque composante valant -1, 0, ou 1. Pour plus de détails, "
"consultez le code source de Godot."

msgid ""
"The [MeshLibrary] item index located at the given grid coordinates. If the "
"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
"L'indice de l'élément de la [MeshLibrary] situé aux coordonnées de grille "
"données. Si la cellule est vide, [constant INVALID_CELL_ITEM] sera renvoyé."

msgid "Returns the basis that gives the specified cell its orientation."
msgstr "Renvoie la base qui donne à la cellule spécifiée son orientation."

msgid ""
"The orientation of the cell at the given grid coordinates. [code]-1[/code] is "
"returned if the cell is empty."
msgstr ""
"L'orientation de la cellule aux coordonnées de grille données. [code]-1[/"
"code] est renvoyé si la cellule est vide."

msgid ""
"Returns an array of [Transform3D] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in local space. "
"Even indices contain [Transform3D]s, while odd indices contain [Mesh]es "
"related to the [Transform3D] in the index preceding it."
msgstr ""
"Renvoie un tableau de références [Transform3D] et [Mesh] correspondant aux "
"cellules non vides de la grille. Les transformations sont spécifiées dans "
"l'espace local. Les indices pairs contiennent des [Transform3D]s, et les "
"indices impairs contiennent les [Mesh]s liés au [Transform3D] de l'index "
"précédent."

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 ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index (in the range from 0 to 23) of the point best "
"representing the orientation of the object. For further details, refer to the "
"Godot source code."
msgstr ""
"Cette fonction considère une discrétisation des rotations en 24 points sur la "
"sphère unité, le long des vecteurs (x,y,z), chaque composante valant soit -1, "
"0, ou 1, et renvoie l'index (dans un intervalle de 0 à 23) du point "
"représentant le mieux l'orientation de l'objet. Pour plus de détails, "
"consultez le code source de Godot."

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 ""
"Returns an array of all cells with the given item index specified in [param "
"item]."
msgstr ""
"Renvoie un tableau de toutes les cellules avec l'indice d'élément donné "
"spécifié dans [param item]."

msgid ""
"Returns the map coordinates of the cell containing the given [param "
"local_position]. If [param local_position] is in global coordinates, consider "
"using [method Node3D.to_local] before passing it to this method. See also "
"[method map_to_local]."
msgstr ""
"Renvoie les coordonnées de la cellule contenant la position locale [param "
"local_position] donnée. Si [param local_position] est dans les coordonnées "
"globales, envisagez d'utiliser [method Node3D.to_local] avant de la "
"transmettre à cette méthode. Voir aussi [method map_to_local]."

msgid ""
"Generates a baked mesh that represents all meshes in the assigned "
"[MeshLibrary] for use with [LightmapGI]. If [param gen_lightmap_uv] is "
"[code]true[/code], UV2 data will be generated for each mesh currently used in "
"the [GridMap]. Otherwise, only meshes that already have UV2 data present will "
"be able to use baked lightmaps. When generating UV2, [param "
"lightmap_uv_texel_size] controls the texel density for lightmaps, with lower "
"values resulting in more detailed lightmaps. [param lightmap_uv_texel_size] "
"is ignored if [param gen_lightmap_uv] is [code]false[/code]. See also [method "
"get_bake_meshes], which relies on the output of this method.\n"
"[b]Note:[/b] Calling this method will not actually bake lightmaps, as "
"lightmap baking is performed using the [LightmapGI] node."
msgstr ""
"Génère une maillage pré-calculé qui représente tous les maillages dans la "
"[MeshLibrary] attribuée à utiliser avec [LightmapGI]. Si [param "
"gen_lightmap_uv] vaut [code]true[/code], les données UV2 seront générées pour "
"chaque maillage actuellement utilisé dans la [GridMap]. Sinon, seuls les "
"maillages qui ont déjà des données UV2 présentes seront en mesure d'utiliser "
"des lightmaps pré-calculées. Lors de la génération des UV2, [param "
"lightmap_uv_texel_size] contrôle la densité de texel pour les lightmaps, avec "
"les valeurs inférieures résultant en des lightmaps plus détaillées. [param "
"lightmap_uv_texel_size] est ignoré si [param gen_lightmap_uv] vaut "
"[code]false[/code]. Voir aussi [method get_bake_meshes], qui dépend de la "
"sortie de cette méthode.\n"
"[b]Note :[/b] Appeler cette méthode ne pré-calcule pas les lightmaps, car le "
"pré-calcul des lightmaps est effectué en utilisant le nœud [LightmapGI]."

msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space. "
"To convert the returned value into global coordinates, use [method "
"Node3D.to_global]. See also [method local_to_map]."
msgstr ""
"Renvoie la position d'une cellule de la grille dans l'espace de coordonnées "
"local de la GridMap. Pour convertir la valeur renvoyée en coordonnées "
"globales, utilisez [method Node3D.to_global]. Voir aussi [method "
"local_to_map]."

msgid ""
"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method get_orthogonal_index_from_basis]."
msgstr ""
"Définit l'indice de maillage pour la cellule référencée par ses coordonnées "
"de grille.\n"
"Un index négatif comme [constant INVALID_CELL_ITEM] effacera la cellule.\n"
"En option, l'orientation de l'objet peut être spécifiée. Pour les valeurs "
"d'orientation valides, voir [method get_orthogonal_index_from_basis]."

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 "Emitted when the [MeshLibrary] of this GridMap changes."
msgstr "Émis lorsque la [MeshLibrary] de cette GridMap 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 ""
"GridMapEditorPlugin provides access to the [GridMap] editor functionality."
msgstr ""
"GridMapEditorPlugin fournit un accès à la fonctionnalité [GridMap] de "
"l'éditeur."

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 ""
"Selects the cells inside the given bounds from [param begin] to [param end]."
msgstr ""
"Sélectionne les cellules à l'intérieur des limites données, de [param begin] "
"à [param end]."

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 ""
"Provides functionality for computing cryptographic hashes chunk by chunk."
msgstr ""
"Fournit des fonctionnalités pour calculer des hachages cryptographiques "
"morceau par morceau."

msgid ""
"The HashingContext class provides an interface for computing cryptographic "
"hashes over multiple iterations. Useful for computing hashes of big files (so "
"you don't have to load them all in memory), network streams, and data streams "
"in general (so you don't have to hold buffers).\n"
"The [enum HashType] enum shows the supported hashing algorithms.\n"
"[codeblocks]\n"
"[gdscript]\n"
"const CHUNK_SIZE = 1024\n"
"\n"
"func hash_file(path):\n"
"\t# Check that file exists.\n"
"\tif not FileAccess.file_exists(path):\n"
"\t\treturn\n"
"\t# Start an SHA-256 context.\n"
"\tvar ctx = HashingContext.new()\n"
"\tctx.start(HashingContext.HASH_SHA256)\n"
"\t# Open the file to hash.\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\t# Update the context after reading each chunk.\n"
"\twhile file.get_position() < file.get_length():\n"
"\t\tvar remaining = file.get_length() - file.get_position()\n"
"\t\tctx.update(file.get_buffer(min(remaining, CHUNK_SIZE)))\n"
"\t# Get the computed hash.\n"
"\tvar res = ctx.finish()\n"
"\t# Print the result as hex string and array.\n"
"\tprintt(res.hex_encode(), Array(res))\n"
"[/gdscript]\n"
"[csharp]\n"
"public const int ChunkSize = 1024;\n"
"\n"
"public void HashFile(string path)\n"
"{\n"
"\t// Check that file exists.\n"
"\tif (!FileAccess.FileExists(path))\n"
"\t{\n"
"\t\treturn;\n"
"\t}\n"
"\t// Start an SHA-256 context.\n"
"\tvar ctx = new HashingContext();\n"
"\tctx.Start(HashingContext.HashType.Sha256);\n"
"\t// Open the file to hash.\n"
"\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\t// Update the context after reading each chunk.\n"
"\twhile (file.GetPosition() < file.GetLength())\n"
"\t{\n"
"\t\tint remaining = (int)(file.GetLength() - file.GetPosition());\n"
"\t\tctx.Update(file.GetBuffer(Mathf.Min(remaining, ChunkSize)));\n"
"\t}\n"
"\t// Get the computed hash.\n"
"\tbyte[] res = ctx.Finish();\n"
"\t// Print the result as hex string and array.\n"
"\tGD.PrintT(res.HexEncode(), (Variant)res);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"La classe HashingContext fournit une interface pour calculer des hachages "
"cryptographiques sur plusieurs itérations. Utile pour calculer des hachages "
"de fichiers très volumineux (pour ne pas avoir à les garder complètement en "
"mémoire), de flux réseau, et de flux de données en général (pour ne pas avoir "
"à maintenir des buffers).\n"
"L'énumération [enum HashType] liste tous les algorithmes de hachage "
"supportés.\n"
"[codeblocks]\n"
"[gdscript]\n"
"const TAILLE_CHUNK = 1024\n"
"\n"
"func hacher_fichier(chemin):\n"
"\t# Vérifier que le fichier existe.\n"
"\tif not FileAccess.file_exists(path):\n"
"\t\treturn\n"
"\t# Créer un contexte SHA-256.\n"
"\tvar ctx = HashingContext.new()\n"
"\tctx.start(HashingContext.HASH_SHA256)\n"
"\t# Ouvrir le fichier à hacher.\n"
"\tvar fichier = FileAccess.open(chemin, FileAccess.READ)\n"
"\t# Mettre à jour le contexte après la lecture de chaque morceau "
"(\"chunk\").\n"
"\twhile file.get_position() < file.get_length():\n"
"\t\tvar restant = fichier.get_length() - fichier.get_position()\n"
"\t\tctx.update(fichier.get_buffer(min(restant, TAILLE_CHUNK)))\n"
"\t# Récupérer le hachage calculé.\n"
"\tvar res = ctx.finish()\n"
"\t# Afficher le résultat sous forme hexadécimale et en tableau.\n"
"\tprintt(res.hex_encode(), Array(res))\n"
"[/gdscript]\n"
"[csharp]\n"
"public const int TailleChunk = 1024;\n"
"\n"
"public void HacherFichier(string chemin)\n"
"{\n"
"\t// Vérifier que le fichier existe.\n"
"\tif (!FileAccess.FileExists(chemin))\n"
"\t{\n"
"\t\treturn;\n"
"\t}\n"
"\t// Créer un contexte SHA-256.\n"
"\tvar ctx = new HashingContext();\n"
"\tctx.Start(HashingContext.HashType.Sha256);\n"
"\t// Ouvrir le fichier à hacher.\n"
"\tusing var fichier = FileAccess.Open(chemin, FileAccess.ModeFlags.Read);\n"
"\t// Mettre à jour le contexte après la lecture de chaque morceau "
"(\"chunk\").\n"
"\twhile (fichier.GetPosition() < fichier.GetLength())\n"
"\t{\n"
"\t\tint restant = (int)(fichier.GetLength() - fichier.GetPosition());\n"
"\t\tctx.Update(fichier.GetBuffer(Mathf.Min(restant, TailleChunk)));\n"
"\t}\n"
"\t// Récupérer le hachage calculé.\n"
"\tbyte[] res = ctx.Finish();\n"
"\t// Afficher le résultat sous forme hexadécimale et en tableau.\n"
"\tGD.PrintT(res.HexEncode(), (Variant)res);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Closes the current context, and return the computed hash."
msgstr "Finalise l'actuel contexte, et renvoie le hachage calculé."

msgid ""
"Starts a new hash computation of the given [param type] (e.g. [constant "
"HASH_SHA256] to start computation of an SHA-256)."
msgstr ""
"Commence un nouveau calcul de hachage du [param type] donné (par exemple "
"[constant HASH_SHA256] pour commencer le calcul d'un SHA-256)."

msgid "Updates the computation with the given [param chunk] of data."
msgstr "Met à jour le calcul avec la partie des données [param chunk] donnée."

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 ""
"A 3D heightmap shape, intended for use in physics to provide a shape for a "
"[CollisionShape3D]. This type is most commonly used for terrain with vertices "
"placed in a fixed-width grid.\n"
"The heightmap is represented as a 2D grid of height values, which represent "
"the position of grid points on the Y axis. Grid points are spaced 1 unit "
"apart on the X and Z axes, and the grid is centered on the origin of the "
"[CollisionShape3D] node. Internally, each grid square is divided into two "
"triangles.\n"
"Due to the nature of the heightmap, it cannot be used to model overhangs or "
"caves, which would require multiple vertices at the same vertical location. "
"Holes can be punched through the collision by assigning [constant "
"@GDScript.NAN] to the height of the desired vertices (this is supported in "
"both GodotPhysics3D and Jolt Physics). You could then insert meshes with "
"their own separate collision to provide overhangs, caves, and so on.\n"
"[b]Performance:[/b] [HeightMapShape3D] is faster to check collisions against "
"than [ConcavePolygonShape3D], but it is significantly slower than primitive "
"shapes like [BoxShape3D].\n"
"A heightmap collision shape can also be built by using an [Image] reference:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var heightmap_texture = ResourceLoader.load(\"res://heightmap_image.exr\")\n"
"var heightmap_image = heightmap_texture.get_image()\n"
"heightmap_image.convert(Image.FORMAT_RF)\n"
"\n"
"var height_min = 0.0\n"
"var height_max = 10.0\n"
"\n"
"update_map_data_from_image(heightmap_image, height_min, height_max)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you need to use a spacing different than 1 unit, you can "
"adjust the [member Node3D.scale] of the shape. However, keep in mind that "
"GodotPhysics3D does not support non-uniform scaling: you'll need to scale the "
"Y axis by the same amount as the X and Z axes, which means the values in "
"[member map_data] will need to be pre-scaled by the inverse of that scale. "
"Also note that GodotPhysics3D does not support scaling at all for dynamic "
"bodies (that is, non-frozen [RigidBody3D] nodes); to use a scaled "
"[HeightMapShape3D] with those, you will need to use Jolt Physics."
msgstr ""
"Une forme de heightmap 3D, destinée à être utilisée pour la physique. "
"Habituellement utilisée pour fournir une forme à un [CollisionShape3D]. Ce "
"type est le plus souvent utilisé pour un terrain avec des sommets placés dans "
"une grille de largeur fixe.\n"
"La heightmap est représentée comme une grille 2D de valeurs de hauteur, qui "
"représentent la position des points de grille sur l'axe Y. Les points de "
"grille sont espacés de 1 unité sur les axes X et Z, et la grille est centrée "
"sur l'origine du noeud [CollisionShape3D]. En interne, chaque quadrillage est "
"divisé en deux triangles.\n"
"En raison de la nature de la heightmap , elle ne peut être utilisée pour "
"modéliser des surplombs ou des grottes, ce qui nécessiterait plusieurs "
"sommets au même endroit vertical. Les trous peuvent être perforés à travers "
"la collision en assignant [constant @GDScript.NAN] à la hauteur des sommets "
"désirés (ceci est supporté à la fois dans GodotPhysics3D et Jolt Physics). "
"Vous pouvez ensuite insérer des maillages avec leur propre collision séparée "
"pour fournir des surplombs, des grottes, etc.\n"
"[b]Performance :[/b] [HeightMapShape3D] est plus rapide pour vérifier les "
"collisions que [ConcavePolygonShape3D], mais elle est nettement plus lente "
"que les formes primitives comme [BoxShape3D].\n"
"Une forme de collision de heightmap peut également être construite en "
"utilisant une référence d'[Image] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var heightmap_texture = ResourceLoader.load(\"res ://heightmap_image.exr\")\n"
"var heightmap_image = heightmap_texture.get_image()\n"
"heightmap_image.convert(Image.FORMAT_RF)\n"
"\n"
"var hauteur_min = 0,0\n"
"var hauteur_max = 10.0\n"
"\n"
"update_map_data_from_image(heightmap_image, hauteur_min, hauteur_max)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Si vous avez besoin d'utiliser un espacement différent de 1 "
"unité, vous pouvez définir la [member Node3D.scale] de la forme. Cependant, "
"gardez à l'esprit que GodotPhysics3D ne supporte pas d'échelle non uniforme : "
"vous aurez besoin de dimensionner l'axe Y de la même quantité que les axes X "
"et Z, ce qui signifie que les valeurs dans [member map_data] devront être pré-"
"échelonnées par l'inverse de cette échelle. Notez également que "
"GodotPhysics3D ne supporte pas la mise à l'échelle du tout pour les corps "
"dynamiques (c'est-à-dire les nœuds [RigidBody3D] non gelés). Pour utiliser "
"une [HeightMapShape3D] mise à l'échelle avec ceux-ci, vous devrez utiliser "
"Jolt Physics."

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 ""
"Returns the resulting HMAC. If the HMAC failed, an empty [PackedByteArray] is "
"returned."
msgstr ""
"Renvoie le HMAC résultant. Si le HMAC a échoué, un [PackedByteArray] vide est "
"renvoyé."

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 ""
"Updates the message to be HMACed. This can be called multiple times before "
"[method finish] is called to append [param data] to the message, but cannot "
"be called until [method start] has been called."
msgstr ""
"Met à jour le message a être HMACé. Ceci peut être appelé plusieurs fois "
"avant que [method finish] soit appelée pour ajouter les données [param data] "
"au message, mais ne peut être appelé avant que [method start] ne soit appelée."

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 ""
"Hyper-text transfer protocol client (sometimes called \"User Agent\"). Used "
"to make HTTP requests to download web content, upload files and other data or "
"to communicate with various services, among other use cases.\n"
"See the [HTTPRequest] node for a higher-level alternative.\n"
"[b]Note:[/b] This client only needs to connect to a host once (see [method "
"connect_to_host]) to send multiple requests. Because of this, methods that "
"take URLs usually take just the part after the host instead of the full URL, "
"as the client is already connected to a host. See [method request] for a full "
"example and to get started.\n"
"An [HTTPClient] should be reused between multiple requests or to connect to "
"different hosts instead of creating one client per request. Supports "
"Transport Layer Security (TLS), including server certificate verification. "
"HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "
"\"try again, but over here\"), 4xx something was wrong with the request, and "
"5xx something went wrong on the server's side.\n"
"For more information on HTTP, see [url=https://developer.mozilla.org/en-US/"
"docs/Web/HTTP]MDN's documentation on HTTP[/url] (or read [url=https://"
"tools.ietf.org/html/rfc2616]RFC 2616[/url] to get it straight from the "
"source).\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]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.\n"
"[b]Note:[/b] When performing HTTP requests from a project exported to Web, "
"keep in mind the remote server may not allow requests from foreign origins "
"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
"url]. If you host the server in question, you should modify its backend to "
"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
"Origin: *[/code] HTTP header.\n"
"[b]Note:[/b] TLS support is currently limited to TLSv1.2 and TLSv1.3. "
"Attempting to connect to a server that only supports older (insecure) TLS "
"versions will return an error.\n"
"[b]Warning:[/b] TLS certificate revocation and certificate pinning are "
"currently not supported. Revoked certificates are accepted as long as they "
"are otherwise valid. If this is a concern, you may want to use automatically "
"managed certificates with a short validity period."
msgstr ""
"Client de protocole de transfert hypertexte (parfois appelé \"User Agent\"). "
"Utilisé pour faire des requêtes HTTP pour télécharger du contenu web, "
"téléverser des fichiers et d'autres données ou communiquer avec divers "
"services, ou pour d'autres cas d'utilisation.\n"
"Voir le nœud [HTTPRequest] pour une alternative de plus haut-niveau.\n"
"[b]Note :[/b] Ce client doit seulement se connecter à un hôte une fois (voir "
"[method connect_to_host]) pour envoyer plusieurs requêtes. En raison de cela, "
"les méthodes qui prennent des URL prennent généralement juste la partie après "
"l'hôte au lieu de l'URL complète, puisque le client est déjà connecté à "
"l'hôte. Voir [method request] pour un exemple complet pour pouvoir démarrer.\n"
"Un [HTTPClient] devrait être réutilisé entre plusieurs requêtes ou pour se "
"connecter à différents hôtes au lieu de créer un client par requête. Supporte "
"le protocole Transport Layer Security (TLS), y compris la vérification du "
"certificat du serveur. Les codes de statut HTTP de la plage 2xx indiquent un "
"succès, 3xx une redirection (c.-à-d. \"essayez à nouveau, mais ici\"), 4xx "
"que quelque chose ne va pas avec la requête, et 5xx qu'un problème est "
"survenu du côté du serveur.\n"
"Pour plus d'informations sur HTTP, voir [url=https://developer.mozilla.org/fr/"
"docs/Web/HTTP]la documentation de MDN sur HTTP[/url] (ou lire le [url=https://"
"tools.ietf.org/html/rfc2616]RFC 2616[/url] pour l'avoir directement depuis la "
"source).\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 en utilisant le déploiement en un clic. Sinon, la "
"communication réseau de tout type sera bloquée par Android.\n"
"[b]Note :[/b] Il est recommandé d'utiliser le chiffrement du 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.\n"
"[b]Note :[/b] Lorsque vous effectuez des requêtes HTTP d'un projet exporté "
"vers le Web, gardez à l'esprit que le serveur distant peut ne pas autoriser "
"des requêtes d'origine étrangère en raison du [url=https://"
"developer.mozilla.org/fr/docs/Web/HTTP/CORS]CORS[/url]. Si vous hébergez le "
"serveur en question, vous devez modifier son backend pour autoriser les "
"requêtes d'origine étrangère en ajoutant l'en-tête HTTP [code]Access-Control-"
"Allow-Origin: *[/code].\n"
"[b]Note :[/b] Le support TLS est actuellement limité à TLSv1.1 et TLSv1.3. "
"Tenter de se connecter à un serveur qui ne supporte que des versions plus "
"vieilles (non sécurisées) de TLS renverra une erreur.\n"
"[b]Avertissement :[/b] La révocation de certificat TLS et le pinning de "
"certificat ne sont actuellement pas supportés. Les certificats révoqués sont "
"acceptés tant qu'ils sont sinon valides. Si c'est un problème, vous pourriez "
"vouloir utiliser des certificats gérés automatiquement avec une courte "
"période de validité."

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 ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"If no [param port] is specified (or [code]-1[/code] is used), it is "
"automatically set to 80 for HTTP and 443 for HTTPS. You can pass the optional "
"[param tls_options] parameter to customize the trusted certification "
"authorities, or the common name verification when using HTTPS. See [method "
"TLSOptions.client] and [method TLSOptions.client_unsafe]."
msgstr ""
"Se connecte à un hôte. Cela est nécessaire avant d'effectuer une quelconque "
"requête.\n"
"Si aucun [param port] n'est spécifié (ou [code]-1[/code] est utilisé), il est "
"automatiquement défini à 80 pour HTTP et 443 pour HTTPS. Vous pouvez passer "
"le paramètre optionnel [param tls_options] pour personnaliser les autorités "
"de certification de confiance, ou la vérification de nom commun lors de "
"l'utilisation d'HTTPS. Voir [method TLSOptions.client] et [method "
"TLSOptions.client_unsafe]."

msgid ""
"Returns the response's 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].\n"
"[b]Note:[/b] This function always returns [code]-1[/code] on the Web platform "
"due to browsers limitations."
msgstr ""
"Renvoie la longueur du corps de la requête.\n"
"[b]Note :[/b] Certains serveurs web peuvent ne pas envoyer une longueur de "
"corps. Dans ce cas, la valeur renvoyée sera [code]-1[/code]. Si vous utilisez "
"le chunked transfer encoding, la longueur du corps sera également de "
"[code]-1[/code].\n"
"[b]Note :[/b] Cette fonction renvoie toujours [code]-1[/code] sur la "
"plateforme Web en raison des limitations des navigateurs."

msgid "Returns the response's HTTP status code."
msgstr "Renvoie le code de statut 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 ""
"Sends a raw 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"
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
"Envoie une requête HTTP brute à l'hôte connecté avec la méthode [param "
"method] donnée.\n"
"Le paramètre URL est généralement juste la partie après le nom de l'hôte, "
"donc pour [code]http://example.com/index.php[/code], il s'agit de [code]/"
"index.php[/code]. Lors de l'envoi de requêtes vers un serveur de proxy HTTP, "
"cela devrait être une URL absolue. Pour les requêtes [constant "
"HTTPClient.METHOD_OPTIONS], [code]*[/code] est également autorisé. Pour les "
"requêtes [constant HTTPClient.METHOD_CONNECT], cela devrait être le composant "
"d'autorité ([code]host:port[/code]).\n"
"[param headers] sont les en-têtes de la requête HTTP.\n"
"Envoie les données du corps de manière brute, en tant que tableau d'octets et "
"ne l'encode pas du tout."

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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request:\n"
"- [constant METHOD_GET]: The resource has been fetched and is transmitted in "
"the message body.\n"
"- [constant METHOD_HEAD]: The entity headers are in the message body.\n"
"- [constant METHOD_POST]: The resource describing the result of the action is "
"transmitted in the message body.\n"
"- [constant METHOD_TRACE]: The message body contains the request message as "
"received by the server."
msgstr ""
"Code de statut HTTP [code]200 OK[/code]. La requête a réussi. Réponse par "
"défaut pour les requêtes réussies. La signification varie selon la requête :\n"
"- [constant METHOD_GET] : La ressource a été récupérée et est transmise dans "
"le corps du message.\n"
"- [constant METHOD_HEAD] : Les en-têtes de l'entité sont dans le corps du "
"message.\n"
"- [constant METHOD_POST] : La ressource décrivant le résultat de l'action est "
"transmise dans le corps du message.\n"
"- [constant METHOD_TRACE] : Le corps du message contient le message de "
"requête comme reçu par le serveur."

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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 ""
"Code de statut 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 statut HTTP [code]305 Use Proxy[/code]."

msgid "HTTP status code [code]306 Switch Proxy[/code]."
msgstr "Code de statut 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 ""
"Code de statut 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 "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 "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 "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 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 ""
"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 ""
"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 ""
"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 a JPEG file to [param path] with the specified [param "
"quality] between [code]0.01[/code] and [code]1.0[/code] (inclusive). Higher "
"[param quality] values result in better-looking output at the cost of larger "
"file sizes. Recommended [param quality] values are between [code]0.75[/code] "
"and [code]0.90[/code]. Even at quality [code]1.00[/code], JPEG compression "
"remains lossy.\n"
"[b]Note:[/b] JPEG does not save an alpha channel. If the [Image] contains an "
"alpha channel, the image will still be saved, but the resulting JPEG file "
"won't contain the alpha channel."
msgstr ""
"Enregistre l'image en tant que fichier JPEG vers le chemin [param path] avec "
"la qualité [param quality] spécifiée entre [code]0.01[/code] et [code]1.0[/"
"code] (inclusifs). Des valeurs plus élevées de [param quality] résultent en "
"une meilleure performance au coût de plus grandes tailles de fichiers. Les "
"valeurs recommandées pour [param quality] sont comprises entre [code]0.75[/"
"code] et [code]0.90[/code]. Même à la qualité [code]1.00[/code], la "
"compression JPEG reste avec pertes.\n"
"[b]Note :[/b] Le JPEG ne sauvegarde pas de canal alpha. Si l'[Image] contient "
"un canal alpha, l'image sera toujours sauvegardée, mais le fichier JPEG "
"résultant ne contiendra pas le canal alpha."

msgid ""
"Saves the image as a JPEG file to a byte array with the specified [param "
"quality] between [code]0.01[/code] and [code]1.0[/code] (inclusive). Higher "
"[param quality] values result in better-looking output at the cost of larger "
"byte array sizes (and therefore memory usage). Recommended [param quality] "
"values are between [code]0.75[/code] and [code]0.90[/code]. Even at quality "
"[code]1.00[/code], JPEG compression remains lossy.\n"
"[b]Note:[/b] JPEG does not save an alpha channel. If the [Image] contains an "
"alpha channel, the image will still be saved, but the resulting byte array "
"won't contain the alpha channel."
msgstr ""
"Enregistre l'image en tant que fichier JPEG en un tableau d'octets avec la "
"qualité [param quality] spécifiée entre [code]0.01[/code] et [code]1.0[/code] "
"(inclusifs). Des valeurs plus élevées de [param quality] résultent en une "
"meilleure performance au coût de plus grandes tailles de fichiers. Les "
"valeurs recommandées pour [param quality] sont comprises entre [code]0.75[/"
"code] et [code]0.90[/code]. Même à la qualité [code]1.00[/code], la "
"compression JPEG reste avec pertes.\n"
"[b]Note :[/b] Le JPEG ne sauvegarde pas de canal alpha. Si l'[Image] contient "
"un canal alpha, l'image sera toujours sauvegardée, mais le tableau d'octets "
"résultant ne contiendra pas le canal alpha."

msgid "Saves the image as a PNG file to the file at [param path]."
msgstr "Enregistre l'image en un fichier PNG à l'emplacement [param path]."

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 ""
"Saves the image as a WebP (Web Picture) file to the file at [param path]. By "
"default it will save lossless. If [param lossy] is [code]true[/code], the "
"image will be saved lossy, using the [param quality] setting between "
"[code]0.0[/code] and [code]1.0[/code] (inclusive). Lossless WebP offers more "
"efficient compression than PNG.\n"
"[b]Note:[/b] The WebP format is limited to a size of 16383×16383 pixels, "
"while PNG can save larger images."
msgstr ""
"Enregistre l'image en tant que fichier WebP (Web Picture) vers le fichier au "
"chemin [param path]. Par défaut, la sauvegarde sera sans perte. Si [param "
"lossy] vaut [code]true[/code], l'image sera sauvegardée en utilisant le "
"paramètre de qualité [param quality] entre [code]0.0[/code] et [code]1.0[/"
"code] (inclusifs). Le WebP sans perte offre une compression plus efficace que "
"le PNG.\n"
"[b]Note :[/b] Le format WebP est limité à une taille de 16383×16383 pixels, "
"tandis que le PNG peut enregistrer des images plus grandes."

msgid ""
"Saves the image as a WebP (Web Picture) file to a byte array. By default it "
"will save lossless. If [param lossy] is [code]true[/code], the image will be "
"saved lossy, using the [param quality] setting between [code]0.0[/code] and "
"[code]1.0[/code] (inclusive). Lossless WebP offers more efficient compression "
"than PNG.\n"
"[b]Note:[/b] The WebP format is limited to a size of 16383×16383 pixels, "
"while PNG can save larger images."
msgstr ""
"Enregistre l'image en tant que fichier WebP (Web Picture) en un tableau "
"d'octets. Par défaut, la sauvegarde sera sans perte. Si [param lossy] vaut "
"[code]true[/code], l'image sera sauvegardée en utilisant le paramètre de "
"qualité [param quality] entre [code]0.0[/code] et [code]1.0[/code] "
"(inclusifs). Le WebP sans perte offre une compression plus efficace que le "
"PNG.\n"
"[b]Note :[/b] Le format WebP est limité à une taille de 16383×16383 pixels, "
"tandis que le PNG peut enregistrer des images plus grandes."

msgid ""
"Overwrites data of an existing [Image]. Non-static equivalent of [method "
"create_from_data]."
msgstr ""
"Écrase les données d'une [Image] existante. Équivalent non statique de "
"[method create_from_data]."

msgid ""
"Shrinks the image by a factor of 2 on each axis (this divides the pixel count "
"by 4)."
msgstr ""
"Rétrécit l'image par un facteur 2 sur chaque axe (ceci divise le nombre de "
"pixels par 4)."

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]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 ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
"normalizing the red channel data using the same compression algorithm that "
"DXT5 uses for the alpha channel."
msgstr ""
"Format de texture utilisant la [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Compression de texture Rouge Vert[/url], "
"normalisant les données du canal rouge en utilisant le même algorithme de "
"compression que DXT5 utilise pour le canal alpha."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
"normalizing the red and green channel data using the same compression "
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
"Format de texture utilisant la [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Compression de texture Rouge Vert[/url], "
"normalisant les données du canal rouge et vert en utilisant le même "
"algorithme de compression que DXT5 utilise pour le canal alpha."

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#ETC1]Ericsson "
"Texture Compression format 1[/url], also referred to as \"ETC1\", and is part "
"of the OpenGL ES graphics standard. This format cannot store an alpha channel."
msgstr ""
"[url=https://en.wikipedia.org/wiki/Ericsson_Texture_Compression#ETC1]Format "
"de compression de texture Ericsson 1[/url], aussi connu sous le nom "
"d'\"ETC1\", et fait partie de la norme graphique OpenGL ES. Ce format ne peut "
"stocker de canal alpha."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]R11_EAC[/code] variant), which provides one channel of "
"unsigned data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Format de compression de texture "
"Ericsson 2[/url] (variante de [code]R11_EAC[/code]), qui fournit un canal de "
"données non signées."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]SIGNED_R11_EAC[/code] variant), which provides one channel of "
"signed data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Format de compression de texture "
"Ericsson 2[/url] (variante de [code]SIGNED_R11_EAC[/code]), qui fournit un "
"canal de données signées."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]RG11_EAC[/code] variant), which provides two channels of "
"unsigned data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Format de compression de texture "
"Ericsson 2[/url] (variante de [code]RG11_EAC[/code]), qui fournit deux canaux "
"de données non signées."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]SIGNED_RG11_EAC[/code] variant), which provides two channels "
"of signed data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Format de compression de texture "
"Ericsson 2[/url] (variante de [code]SIGNED_RG11_EAC[/code]), qui fournit deux "
"canaux de données non signées."

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 RA data and interprets "
"it as two channels (red and green). See also [constant FORMAT_ETC2_RGBA8]."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Format de compression Ericsson 2[/"
"url] (variante de [code]RGBA8[/code]), qui compresse les données RA et "
"l'interprète en deux canaux (rouge et vert). Voir aussi [constant "
"FORMAT_ETC2_RGBA8]."

msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3, which compresses RA "
"data and interprets it as two channels (red and green). See also [constant "
"FORMAT_DXT5]."
msgstr ""
"Le format de texture [url=https://en.wikipedia.org/wiki/"
"S3_Texture_Compression]S3TC[/url] aussi connu sous le nom de Block "
"Compression 3 ou BC3, qui compresse les données RA et l'interprète en deux "
"canaux (rouge et vert). Voir aussi [constant FORMAT_DXT5]."

msgid ""
"Same format as [constant FORMAT_ASTC_4x4], but with the hint to let the GPU "
"know it is used for HDR."
msgstr ""
"Même format que [constant FORMAT_ASTC_4x4], mais avec l'indice pour indiquer "
"au GPU qu'il est utilisé pour de l'HDR."

msgid ""
"Same format as [constant FORMAT_ASTC_8x8], but with the hint to let the GPU "
"know it is used for HDR."
msgstr ""
"Même format que [constant FORMAT_ASTC_8x8], mais avec l'indice pour indiquer "
"au GPU qu'il est utilisé pour de l'HDR."

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 ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
"It's slower than [constant INTERPOLATE_BILINEAR], but produces higher-quality "
"results with far fewer aliasing artifacts.\n"
"If the image does not have mipmaps, they will be generated and used "
"internally, but no mipmaps will be generated on the resulting image.\n"
"[b]Note:[/b] If you intend to scale multiple copies of the original image, "
"it's better to call [method generate_mipmaps]] on it in advance, to avoid "
"wasting processing power in generating them again and again.\n"
"On the other hand, if the image already has mipmaps, they will be used, and a "
"new set will be generated for the resulting image."
msgstr ""
"Effectue une interpolation bilinéaire séparément sur les deux niveaux de "
"mipmap les plus adaptés, puis effectue une interpolation linéaire entre eux.\n"
"Cela est plus lent que [constant INTERPOLATE_BILINEAR], mais produit des "
"résultats de qualité supérieure avec beaucoup moins d’artefacts de "
"crénelage.\n"
"Si l'image n'a pas de mipmaps, elles seront générées et utilisées en interne, "
"mais aucune mipmap ne sera générée sur l'image résultante.\n"
"[b]Note :[/b] Si vous avez l'intention de redimensionner plusieurs copies de "
"l'image d'origine, il est préférable d'appeler [method generate_mipmaps] à "
"l'avance, pour éviter de gaspiller de la puissance de traitement pour les "
"générer encore et encore.\n"
"D'autre part, si l'image a déjà des mipmaps, elles seront utilisées, et un "
"nouveau jeu sera généré pour l'image résultante."

msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscaling images."
msgstr ""
"Effectue une interpolation de Lanczos. Il s'agit du mode le plus lent de "
"redimensionnement d'image, mais il donne généralement les meilleurs "
"résultats, surtout lors de la réduction d'images."

msgid "Use S3TC compression."
msgstr "Utiliser la compression ST3TC."

msgid "Use ETC compression."
msgstr "Utiliser la compression ETC."

msgid "Use ETC2 compression."
msgstr "Utiliser 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 one channel for luminance (grayscale)."
msgstr "L'image n'utilise qu'un canal pour la luminance (niveaux de gris)."

msgid "The image uses two channels for luminance and alpha, respectively."
msgstr ""
"L'image utilise deux canaux pour la luminance et l'alpha, respectivement."

msgid "The image only uses the red channel."
msgstr "L'image n'utilise que le canal rouge."

msgid "The image uses two channels for red and green."
msgstr "L'image utilise deux canaux pour le rouge et le vert."

msgid "The image uses three channels for red, green, and blue."
msgstr "L'image utilise trois canaux pour le rouge, le vert et le bleu."

msgid "The image uses four channels for red, green, blue, and alpha."
msgstr ""
"L'image utilise quatre canaux pour le rouge, le vert, le bleu et l'alpha."

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 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 ""
"Hint to indicate that the high quality 4×4 ASTC compression format should be "
"used."
msgstr ""
"Indice indiquant que le format de compression 4×4 ASTC haute qualité devrait "
"être utilisé."

msgid ""
"Hint to indicate that the low quality 8×8 ASTC compression format should be "
"used."
msgstr ""
"Indice indiquant que le format de compression 8×8 ASTC basse qualité devrait "
"être utilisé."

msgid "Base class to add support for specific image formats."
msgstr ""
"Classe de base pour ajouter du support pour des formats d'image spécifiques."

msgid ""
"The engine supports multiple image formats out of the box (PNG, SVG, JPEG, "
"WebP to name a few), but you can choose to implement support for additional "
"image formats by extending [ImageFormatLoaderExtension]."
msgstr ""
"Le moteur prend en charge plusieurs formats d'image (PNG, SVG, JPEG, WebP "
"pour n'en nommer que quelques-uns), mais vous pouvez choisir d'implémenter du "
"support pour des formats d'image supplémentaires en étendant "
"[ImageFormatLoaderExtension]."

msgid ""
"Base class for creating [ImageFormatLoader] extensions (adding support for "
"extra image formats)."
msgstr ""
"Classe de base pour la création d'extensions de [ImageFormatLoader] (ajouter "
"du support pour des formats d'image supplémentaires)."

msgid ""
"The engine supports multiple image formats out of the box (PNG, SVG, JPEG, "
"WebP to name a few), but you can choose to implement support for additional "
"image formats by extending this class.\n"
"Be sure to respect the documented return types and values. You should create "
"an instance of it, and call [method add_format_loader] to register that "
"loader during the initialization phase."
msgstr ""
"Le moteur prend en charge plusieurs formats d'image (PNG, SVG, JPEG, WebP "
"pour n'en nommer que quelques-uns), mais vous pouvez choisir d'implémenter le "
"support pour des formats d'image supplémentaires en élargissant cette "
"classe.\n"
"Assurez-vous de respecter les types et les valeurs de renvoi documentés. Vous "
"devriez en créer une instance et appeler [method add_format_loader] pour "
"enregistrer ce chargeur pendant la phase d'initialisation."

msgid ""
"Returns the list of file extensions for this image format. Files with the "
"given extensions will be treated as image file and loaded using this class."
msgstr ""
"Renvoie la liste des extensions de fichier pour ce format d'image. Les "
"fichiers avec les extensions données seront traités comme des fichier image "
"et chargés en utilisant cette classe."

msgid "Loads the content of [param fileaccess] into the provided [param image]."
msgstr "Charge le contenu de [param fileaccess] dans l'[param image] fournie."

msgid ""
"Add this format loader to the engine, allowing it to recognize the file "
"extensions returned by [method _get_recognized_extensions]."
msgstr ""
"Ajoute ce chargeur de format au moteur, lui permettant de reconnaître les "
"extensions de fichier renvoyées par [method _get_recognized_extensions]."

msgid "Remove this format loader from the engine."
msgstr "Retire ce chargeur de format du moteur."

msgid "A [Texture2D] based on an [Image]."
msgstr "Une [Texture2D] basée sur une [Image]."

msgid ""
"A [Texture2D] based on an [Image]. For an image to be displayed, an "
"[ImageTexture] has to be created from it using the [method create_from_image] "
"method:\n"
"[codeblock]\n"
"var image = Image.load_from_file(\"res://icon.svg\")\n"
"var texture = ImageTexture.create_from_image(image)\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"This way, textures can be created at run-time by loading images both from "
"within the editor and externally.\n"
"[b]Warning:[/b] Prefer to load imported textures with [method @GDScript.load] "
"over loading them from within the filesystem dynamically with [method "
"Image.load], as it may not work in exported projects:\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"This is because images have to be imported as a [CompressedTexture2D] first "
"to be loaded with [method @GDScript.load]. If you'd still like to load an "
"image file just like any other [Resource], import it as an [Image] resource "
"instead, and then load it normally using the [method @GDScript.load] method.\n"
"[b]Note:[/b] The image can be retrieved from an imported texture using the "
"[method Texture2D.get_image] method, which returns a copy of the image:\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"var image = texture.get_image()\n"
"[/codeblock]\n"
"An [ImageTexture] is not meant to be operated from within the editor "
"interface directly, and is mostly useful for rendering images on screen "
"dynamically via code. If you need to generate images procedurally from within "
"the editor, consider saving and importing images as custom texture resources "
"implementing a new [EditorImportPlugin].\n"
"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
"hardware limitations."
msgstr ""
"Une [Texture2D] basée sur une [Image]. Pour qu'une image soit affichée, une "
"[ImageTexture] doit être créée avec la méthode [method create_from_image] :\n"
"[codeblock]\n"
"var image = Image.load_from_file(\"res://icon.svg\")\n"
"var texture = ImageTexture.create_from_image(image)\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"De cette façon, les textures peuvent être créées durant l'exécution en "
"chargent les images à la fois depuis l'éditeur et de manière externe.\n"
"[b]Avertissement :[/b] Préférez charger les texture importées avec [method "
"@GDScript.load] plutôt que dynamiquement depuis le système de fichier avec "
"[method Image.load], car cela peut ne pas fonctionner dans des projets "
"exportés :\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"C'est parce que les images doivent d'abord être importées en tant que "
"[CompressedTexture2D] d'abord pour être chargées avec [method "
"@GDScript.load]. Si vous préférez charger un fichier image comme n'importe "
"quelle [Resource], importez-la comme une ressource [Image], et ensuite "
"chargez-la normalement avec la méthode [method @GDScript.load].\n"
"[b]Note :[/b] L'image peut toujours être récupérée à partir d'une texture "
"importée avec la méthode [method Texture2D.get_image], qui renvoie une copie "
"des données de l'image :\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"var image = texture.get_image()\n"
"[/codeblock]\n"
"Une [ImageTexture] n'est pas prévue pour être opérée directement depuis "
"l'interface de l'éditeur, et est principalement utilisée pour rendre des "
"images à l'écran de manière dynamique depuis du code. Si vous devez générer "
"des images de manière procédurale depuis l'éditeur, préférez enregistrer puis "
"importer des imanges sous forme de texture personnalisée en implémentant un "
"nouveau [EditorImportPlugin].\n"
"[b]Note :[/b] La taille maximale de texture est de 16384×16384 pixels à cause "
"des limitations des matériels graphiques."

msgid ""
"Creates a new [ImageTexture] and initializes it by allocating and setting the "
"data from an [Image]."
msgstr ""
"Crée une nouvelle [ImageTexture] et l'initialise en allouant et en "
"définissant les données depuis une [Image]."

msgid "Returns the format of the texture."
msgstr "Renvoie le format de la texture."

msgid ""
"Replaces the texture's data with a new [Image]. This will re-allocate new "
"memory for the texture.\n"
"If you want to update the image, but don't need to change its parameters "
"(format, size), use [method update] instead for better performance."
msgstr ""
"Remplace les données de la texture par une nouvelle [Image]. Cela "
"réattribuera de la nouvelle mémoire pour la texture.\n"
"Si vous voulez mettre à jour l'image, mais n'avez pas besoin de changer ses "
"paramètres (format, taille), utilisez [method update] à la place pour de "
"meilleures performances."

msgid ""
"Replaces the texture's data with a new [Image].\n"
"[b]Note:[/b] The texture has to be created using [method create_from_image] "
"or initialized first with the [method set_image] method before it can be "
"updated. The new image dimensions, format, and mipmaps configuration should "
"match the existing texture's image configuration.\n"
"Use this method over [method set_image] if you need to update the texture "
"frequently, which is faster than allocating additional memory for a new "
"texture each time."
msgstr ""
"Remplacer les données de la texture par une nouvelle [Image].\n"
"[b]Note :[/b] La texture doit être créée en utilisant [method "
"create_from_image] ou initialisée en premier avec la méthode [method "
"set_image] avant qu'elle puisse être mise à jour. Les nouvelles dimensions, "
"format et configuration des mipmaps doivent correspondre à la configuration "
"de l'image de la texture existante.\n"
"Utilisez cette méthode au lieu de [method set_image] si vous devez mettre à "
"jour la texture fréquemment, car elle est plus rapide qu'allouer de la "
"mémoire supplémentaire pour une nouvelle texture à chaque fois."

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 ""
"A mesh type optimized for creating geometry manually, similar to OpenGL 1.x "
"immediate mode.\n"
"Here's a sample on how to generate a triangular face:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var mesh = ImmediateMesh.new()\n"
"mesh.surface_begin(Mesh.PRIMITIVE_TRIANGLES)\n"
"mesh.surface_add_vertex(Vector3.LEFT)\n"
"mesh.surface_add_vertex(Vector3.FORWARD)\n"
"mesh.surface_add_vertex(Vector3.ZERO)\n"
"mesh.surface_end()\n"
"[/gdscript]\n"
"[csharp]\n"
"var mesh = new ImmediateMesh();\n"
"mesh.SurfaceBegin(Mesh.PrimitiveType.Triangles);\n"
"mesh.SurfaceAddVertex(Vector3.Left);\n"
"mesh.SurfaceAddVertex(Vector3.Forward);\n"
"mesh.SurfaceAddVertex(Vector3.Zero);\n"
"mesh.SurfaceEnd();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Generating complex geometries with [ImmediateMesh] is highly "
"inefficient. Instead, it is designed to generate simple geometry that changes "
"often."
msgstr ""
"Un type de maillage optimisé pour créer de la géométrie manuellement, "
"semblable au mode immédiat d'OpenGL 1.x.\n"
"Voici un échantillon sur comment générer une face triangulaire :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var maillage = ImmediateMesh.new()\n"
"maillage.surface_begin(Mesh.PRIMITIVE_TRIANGLES)\n"
"maillage.surface_add_vertex(Vector3.LEFT)\n"
"maillage.surface_add_vertex(Vector3.FORWARD)\n"
"maillage.surface_add_vertex(Vector3.ZERO)\n"
"maillage.surface_end()\n"
"[/gdscript]\n"
"[csharp]\n"
"var mesh = new ImmediateMesh();\n"
"maillage.SurfaceBegin(Mesh.PrimitiveType.Triangles);\n"
"maillage.SurfaceAddVertex(Vector3.Left);\n"
"maillage.SurfaceAddVertex(Vector3.Forward);\n"
"maillage.SurfaceAddVertex(Vector3.Zero);\n"
"maillage.SurfaceEnd();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Générer des géométries complexes avec [ImmediateMesh] est très "
"inefficace. Au lieu de cela, il est conçu pour générer de la géométrie simple "
"qui change souvent."

msgid "Using ImmediateMesh"
msgstr "Utilisation d'ImmediateMesh"

msgid "Clear all surfaces."
msgstr "Effacer toutes les surfaces."

msgid "Add a 3D vertex using the current attributes previously set."
msgstr ""
"Ajoute un sommet 3D en utilisant les attributs courants précédemment définis."

msgid "Add a 2D vertex using the current attributes previously set."
msgstr ""
"Ajoute un sommet 2D en utilisant les attributs courants précédemment définis."

msgid "Begin a new surface."
msgstr "Commence une nouvelle surface."

msgid "Set the color attribute that will be pushed with the next vertex."
msgstr "Définit l'attribut de couleur qui sera poussé avec le prochain sommet."

msgid "Set the normal attribute that will be pushed with the next vertex."
msgstr "Définit l'attribut de normale qui sera poussé avec le prochain sommet."

msgid "Set the UV attribute that will be pushed with the next vertex."
msgstr "Définit l'attribut d'UV qui sera poussé avec le prochain sommet."

msgid "Set the UV2 attribute that will be pushed with the next vertex."
msgstr "Définit l'attribut d'UV2 qui sera poussé avec le prochain sommet."

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 blend shape 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 blend shape."

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 ""
"Returns [code]true[/code] if the given action matches this event and is being "
"pressed (and is not an echo event for [InputEventKey] events, unless [param "
"allow_echo] is [code]true[/code]). Not relevant for events of type "
"[InputEventMouseMotion] or [InputEventScreenDrag].\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.\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_action_pressed] may return "
"[code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Renvoie [code]true[/code] si l'action donnée correspond à cet événement et "
"est appuyée (et n'est pas un événement d'écho pour les événements "
"[InputEventKey], sauf si [param allow_echo] vaut [code]true[/code]). Non "
"pertinent pour les événements de type [InputEventMouseMotion] ou "
"[InputEventScreenDrag].\n"
"Si [param exact_match] vaut [code]false[/code], cela ignore les modificateurs "
"d'entrée supplémentaires pour les évènements [InputEventKey] et "
"[InputEventMouseButton], et la direction pour les évènements "
"[InputEventJoypadMotion].\n"
"[b]Note :[/b] En raison d'un problème de clavier fantôme (keyboard ghosting), "
"[method is_action_pressed] peut renvoyer [code]false[/code] même si l'une des "
"touches de l'action est appuyée. Voir [url=$DOCS_URL/tutorials/inputs/"
"input_examples.html#keyboard-events]Exemples d'entrée[/url] dans la "
"documentation pour plus d'informations."

msgid ""
"Returns [code]true[/code] if the given action matches this event and is "
"released (i.e. not pressed). Not relevant for events of type "
"[InputEventMouseMotion] or [InputEventScreenDrag].\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 l'action donnée correspond à cet événement et "
"est relâchée (c-à-d non appuyée). Non pertinent pour les événements de type "
"[InputEventMouseMotion] ou [InputEventScreenDrag].\n"
"Si [param exact_match] vaut [code]false[/code], cela 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's type is one that can be "
"assigned to an input action: [InputEventKey], [InputEventMouseButton], "
"[InputEventJoypadButton], [InputEventJoypadMotion], [InputEventAction]. "
"Returns [code]false[/code] for all other input event types."
msgstr ""
"Renvoie [code]true[/code] si le type de cet événement d'entrée est un type "
"qui peut être assigné à une action d'entrée : [InputEventKey], "
"[InputEventMouseButton], [InputEventJoypadButton], [InputEventJoypadMotion], "
"[InputEventAction]. Renvoie [code]false[/code] pour tous les autres types "
"d'événements d'entrée."

msgid "Returns [code]true[/code] if this input event has been canceled."
msgstr "Renvoie [code]true[/code] si cet évènement d'entrée a été annulé."

msgid ""
"Returns [code]true[/code] if this input event is an echo event (only for "
"events of type [InputEventKey]). An echo event is a repeated key event sent "
"when the user is holding down the key. Any other event type returns "
"[code]false[/code].\n"
"[b]Note:[/b] The rate at which echo events are sent is typically around 20 "
"events per second (after holding down the key for roughly half a second). "
"However, the key repeat delay/speed can be changed by the user or disabled "
"entirely in the operating system settings. To ensure your project works "
"correctly on all configurations, do not assume the user has a specific key "
"repeat configuration in your project's behavior."
msgstr ""
"Renvoie [code]true[/code] si cet évènement est un évènement d'écho (seulement "
"pour les évènements du type [InputEventKey]). Un événement d'écho est un "
"événement de touche répété envoyé lorsque l'utilisateur maintient la touche. "
"Tout autre type d'évènement renvoie [code]false[/code].\n"
"[b]Note :[/b] Le taux auquel les évènement d'écho sont envoyés est "
"généralement d'environ 20 événements par seconde (après avoir maintenu la "
"touche pendant environ une demi-seconde). Cependant, le délai/vitesse de "
"répétition de la touche peut être changé par l'utilisateur ou désactivé "
"entièrement dans les paramètres du système d'exploitation. Pour vous assurer "
"que votre projet fonctionne correctement sur toutes les configurations, ne "
"supposez pas dans le comportement de votre projet que l'utilisateur a une "
"configuration de répétition de touche spécifique."

msgid ""
"Returns [code]true[/code] if the specified [param event] matches this event. "
"Only valid for action events, which include key ([InputEventKey]), button "
"([InputEventMouseButton] or [InputEventJoypadButton]), axis "
"[InputEventJoypadMotion], and action ([InputEventAction]) events.\n"
"If [param exact_match] is [code]false[/code], the check ignores additional "
"input modifiers for [InputEventKey] and [InputEventMouseButton] events, and "
"the direction for [InputEventJoypadMotion] events.\n"
"[b]Note:[/b] This method only considers the event configuration (such as the "
"keyboard key or the joypad axis), not state information like [method "
"is_pressed], [method is_released], [method is_echo], or [method is_canceled]."
msgstr ""
"Renvoie [code]true[/code] si l'événement [param event] spécifié correspond à "
"cet événement. Seulement valable pour les événements d'action, ce qui inclut "
"les évènements de touche ([InputEventKey]), de bouton "
"([InputEventMouseButton] ou [InputEventJoypadButton]), d'axe "
"[InputEventJoypadMotion], et d'action ([InputEventAction]).\n"
"Si [param exact_match] vaut [code]false[/code], la vérification ignore les "
"modificateurs d'entrée supplémentaires pour les évènements [InputEventKey] et "
"[InputEventMouseButton], et la direction pour les évènements "
"[InputEventJoypadMotion].\n"
"[b]Note :[/b] Cette méthode ne considère que la configuration de l'événement "
"(tel que la touche du clavier ou l'axe de la manette), et non les "
"informations d'état comme [method is_pressed], [method is_released], [method "
"is_echo], ou [method is_canceled]."

msgid ""
"Returns [code]true[/code] if this input event is pressed. Not relevant for "
"events of type [InputEventMouseMotion] or [InputEventScreenDrag].\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_pressed] may return "
"[code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Renvoie [code]true[/code] si cet évènement d'entrée est appuyé. Non pertinent "
"pour les événements de type [InputEventMouseMotion] ou "
"[InputEventScreenDrag].\n"
"[b]Note :[/b] En raison d'un problème de clavier fantôme (keyboard ghosting), "
"[method is_action_pressed] peut renvoyer [code]false[/code] même si l'une des "
"touches de l'action est appuyée. Voir [url=$DOCS_URL/tutorials/inputs/"
"input_examples.html#keyboard-events]Exemples d'entrée[/url] dans la "
"documentation pour plus d'informations."

msgid ""
"Returns [code]true[/code] if this input event is released. Not relevant for "
"events of type [InputEventMouseMotion] or [InputEventScreenDrag]."
msgstr ""
"Renvoie [code]true[/code] si cet évènement d'entrée est relâché. Non "
"pertinent pour les événements de type [InputEventMouseMotion] ou "
"[InputEventScreenDrag]."

msgid ""
"Returns a copy of the given input event which has been offset by [param "
"local_ofs] and transformed by [param xform]. Relevant for events of type "
"[InputEventMouseButton], [InputEventMouseMotion], [InputEventScreenTouch], "
"[InputEventScreenDrag], [InputEventMagnifyGesture] and [InputEventPanGesture]."
msgstr ""
"Renvoie une copie de l'événement d'entrée donné qui a été décalé de [param "
"local_ofs] et transformé par [param xform]. Pertinent pour les évènements de "
"type [InputEventMouseButton], [InputEventMouseMotion], "
"[InputEventScreenTouch], [InputEventScreenDrag], [InputEventMagnifyGesture] "
"et [InputEventPanGesture]."

msgid ""
"The event's device ID.\n"
"[b]Note:[/b] [member device] can be negative for special use cases that don't "
"refer to devices physically present on the system. See [constant "
"DEVICE_ID_EMULATION]."
msgstr ""
"L'identifiant du périphérique de l'événement.\n"
"[b]Note :[/b] [member device] peut être négatif pour des cas d'utilisation "
"spéciaux qui ne se réfèrent pas aux appareils physiquement présents sur le "
"système. Voir [constant DEVICE_ID_EMULATION]."

msgid ""
"Device ID used for emulated mouse input from a touchscreen, or for emulated "
"touch input from a mouse. This can be used to distinguish emulated mouse "
"input from physical mouse input, or emulated touch input from physical touch "
"input."
msgstr ""
"ID de périphérique utilisé pour une entrée de souris émulée à partir d'un "
"écran tactile, ou pour une entrée tactile émulée à partir d'une souris. Cela "
"peut être utilisé pour distinguer l'entrée de la souris émulée de l'entrée de "
"la souris physique, ou de l'entrée tactile émulée de l'entrée tactile "
"physique."

msgid "An input event type for actions."
msgstr "Un type d’évènement d’entrée pour les actions."

msgid ""
"Contains a generic action which can be targeted from several types of inputs. "
"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] Unlike the other [InputEvent] subclasses which map to unique "
"physical events, this virtual one is not emitted by the engine. This class is "
"useful to emit actions manually with [method Input.parse_input_event], which "
"are then received in [method Node._input]. To check if a physical event "
"matches an action from the Input Map, use [method InputEvent.is_action] and "
"[method InputEvent.is_action_pressed]."
msgstr ""
"Contient une action générique qui peut être ciblée à partir de plusieurs "
"types d'entrées. Les actions et leurs événements peuvent être définis dans "
"l'onglet [b]Contrôles[/b] dans [b]Projet > Paramètres du projet[/b], ou avec "
"la classe [InputMap].\n"
"[b]Note :[/b] Contrairement aux autres sous-classes [InputEvent] qui "
"s'associent à des événements physiques uniques, cette classe virtuelle n'est "
"pas émise par le moteur. Cette classe est utile pour émettre des actions "
"manuellement avec [method Input.parse_input_event], qui sont ensuite reçues "
"dans [method Node._input]. Pour vérifier si un événement physique correspond "
"à une action de l'action map, utilisez [method InputEvent.is_action] et "
"[method InputEvent.is_action_pressed]."

msgid "Using InputEvent: Actions"
msgstr "Utiliser InputEvent : les actions"

msgid ""
"The action's name. This is usually the name of an existing action in the "
"[InputMap] which you want this custom event to match."
msgstr ""
"Le nom de l'action. Il s'agit généralement du nom d'une action existante dans "
"l'[InputMap] avec laquelle vous voulez que cet événement personnalisé "
"corresponde."

msgid ""
"If [code]true[/code], the action's state is pressed. If [code]false[/code], "
"the action's state is released."
msgstr ""
"Si [code]true[/code], l'état de l'action est appuyé. Si [code]false[/code], "
"l'état de l'action est relâché."

msgid "Abstract base class for [Viewport]-based input events."
msgstr ""
"Classe de base abstraite pour les événements d'entrée basés sur [Viewport]."

msgid ""
"InputEventFromWindow represents events specifically received by windows. This "
"includes mouse events, keyboard events in focused windows or touch screen "
"actions."
msgstr ""
"InputEventFromWindow représente les événements spécifiquement reçus par des "
"fenêtres. Cela comprend des événements de souris, des événements de clavier "
"dans des fenêtres avec le focus ou des actions d'écran tactile."

msgid "The ID of a [Window] that received this event."
msgstr "L'ID d'une [Window] qui a reçu cet événement."

msgid "Abstract base class for touch gestures."
msgstr "Classe de base abstraite pour les gestes tactiles."

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 "Represents a gamepad button being pressed or released."
msgstr "Représente un bouton de manette qui est appuyé ou relâché."

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 "This property is never set by the engine and is always [code]0[/code]."
msgstr ""
"Cette propriété n'est jamais définie par le moteur et vaut toujours [code]0[/"
"code]."

msgid ""
"Represents axis motions (such as joystick or analog triggers) from a gamepad."
msgstr ""
"Représente des déplacements d'axe (comme un joystick ou des gâchettes "
"analogiques) d'une manette."

msgid ""
"Stores information about joystick motions. One [InputEventJoypadMotion] "
"represents one axis at a time. For gamepad buttons, see "
"[InputEventJoypadButton]."
msgstr ""
"Stocke des informations sur des mouvements de joystick. Un "
"[InputEventJoypadMotion] représente un axe à la fois. Pour les boutons de "
"manette, voir [InputEventJoypadButton]."

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 "Represents a key on a keyboard being pressed or released."
msgstr "Représente une touche sur un clavier appuyée ou relâchée."

msgid ""
"An input event for keys on a keyboard. Supports key presses, key releases and "
"[member echo] events. It can also be received in [method "
"Node._unhandled_key_input].\n"
"[b]Note:[/b] Events received from the keyboard usually have all properties "
"set. Event mappings should have only one of the [member keycode], [member "
"physical_keycode] or [member unicode] set.\n"
"When events are compared, properties are checked in the following priority - "
"[member keycode], [member physical_keycode] and [member unicode]. Events with "
"the first matching value will be considered equal."
msgstr ""
"Un événement d'entrée pour des touches sur un clavier. Supporte les appuis de "
"touche, les relâchement de touche et les événements d'[member echo]. Il peut "
"également être reçu dans [method Node._unhandled_key_input].\n"
"[b]Note :[/b] Les événements reçus du clavier ont généralement toutes leurs "
"propriétés définies. Les associations d'événements ne devraient avoir qu'une "
"seule propriété définie entre [member keycode], [member physical_keycode] ou "
"[member unicode].\n"
"Lorsque des événements sont comparés, les propriétés sont contrôlées selon la "
"priorité suivante - [member keycode], [member physical_keycode] et [member "
"unicode]. Des événements avec la première valeur correspondante seront "
"considérés comme égaux."

msgid ""
"Returns a [String] representation of the event's [member key_label] and "
"modifiers."
msgstr ""
"Renvoie une représentation en [String] du [member key_label] de l'évènement "
"et de ses modificateurs."

msgid ""
"Returns a [String] representation of the event's [member keycode] and "
"modifiers."
msgstr ""
"Renvoie une représentation en [String] du [member keycode] de l'évènement et "
"de ses modificateurs."

msgid ""
"Returns a [String] representation of the event's [member location]. This will "
"be a blank string if the event is not specific to a location."
msgstr ""
"Renvoie une représentation en [String] de la [member location] de "
"l'évènement. Cela sera une chaîne vide si l'évènement n'est pas spécifique à "
"un emplacement."

msgid ""
"Returns a [String] representation of the event's [member physical_keycode] "
"and modifiers."
msgstr ""
"Renvoie une représentation en [String] du [member physical_keycode] de "
"l'évènement et de ses modificateurs."

msgid ""
"Returns the localized key label combined with modifier keys such as "
"[kbd]Shift[/kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
"To get a human-readable representation of the [InputEventKey] with modifiers, "
"use [code]OS.get_keycode_string(event.get_key_label_with_modifiers())[/code] "
"where [code]event[/code] is the [InputEventKey]."
msgstr ""
"Renvoie le libellé traduit de la touche combinée avec des touches "
"modificatrices telles que [kbd]Maj[/kbd] ou [kbd]Alt[/kbd]. Voir aussi "
"[InputEventWithModifiers].\n"
"Pour obtenir une représentation lisible de l'[InputEventKey] avec des "
"modificateurs, utilisez "
"[code]OS.get_keycode_string(event.get_key_label_with_modifiers())[/code] où "
"[code]event[/code] est l'[InputEventKey]."

msgid ""
"Returns the Latin keycode combined with modifier keys such as [kbd]Shift[/"
"kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
"To get a human-readable representation of the [InputEventKey] with modifiers, "
"use [code]OS.get_keycode_string(event.get_keycode_with_modifiers())[/code] "
"where [code]event[/code] is the [InputEventKey]."
msgstr ""
"Renvoie le code de touche Latin combiné avec des touches modificatrices "
"telles que [kbd]Maj[/kbd] ou [kbd]Alt[/kbd]. Voir aussi "
"[InputEventWithModifiers].\n"
"Pour obtenir une représentation lisible de l'[InputEventKey] avec des "
"modificateurs, utilisez "
"[code]OS.get_keycode_string(event.get_keycode_with_modifiers())[/code] où "
"[code]event[/code] est l'[InputEventKey]."

msgid ""
"Returns the physical keycode combined with modifier keys such as [kbd]Shift[/"
"kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
"To get a human-readable representation of the [InputEventKey] with modifiers, "
"use [code]OS.get_keycode_string(event.get_physical_keycode_with_modifiers())[/"
"code] where [code]event[/code] is the [InputEventKey]."
msgstr ""
"Renvoie le code de touche physique combiné avec des touches modificatrices "
"telles que [kbd]Maj[/kbd] ou [kbd]Alt[/kbd]. Voir aussi "
"[InputEventWithModifiers].\n"
"Pour obtenir une représentation lisible de l'[InputEventKey] avec des "
"modificateurs, utilisez "
"[code]OS.get_keycode_string(event.get_physical_keycode_with_modifiers())[/"
"code] où [code]event[/code] est l'[InputEventKey]."

msgid ""
"If [code]true[/code], the key was already pressed before this event. An echo "
"event is a repeated key event sent when the user is holding down the key.\n"
"[b]Note:[/b] The rate at which echo events are sent is typically around 20 "
"events per second (after holding down the key for roughly half a second). "
"However, the key repeat delay/speed can be changed by the user or disabled "
"entirely in the operating system settings. To ensure your project works "
"correctly on all configurations, do not assume the user has a specific key "
"repeat configuration in your project's behavior."
msgstr ""
"Si [code]true[/code], la touche était déjà appuyée avant cet événement. Un "
"événement d'écho est un événement de touche répété envoyé lorsque "
"l'utilisateur maintient la touche.\n"
"[b]Note :[/b] Le taux auquel les évènement d'écho sont envoyés est "
"généralement d'environ 20 événements par seconde (après avoir maintenu la "
"touche pendant environ une demi-seconde). Cependant, le délai/vitesse de "
"répétition de la touche peut être changé par l'utilisateur ou désactivé "
"entièrement dans les paramètres du système d'exploitation. Pour vous assurer "
"que votre projet fonctionne correctement sur toutes les configurations, ne "
"supposez pas dans le comportement de votre projet que l'utilisateur a une "
"configuration de répétition de touche spécifique."

msgid ""
"Represents the location of a key which has both left and right versions, such "
"as [kbd]Shift[/kbd] or [kbd]Alt[/kbd]."
msgstr ""
"Représente l'emplacement d'une touche qui a à la fois une version gauche et "
"droite, comme [kbd]Maj[/kbd] ou [kbd]Alt[/kbd]."

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 "Represents a magnifying touch gesture."
msgstr "Représente un geste tactile d'agrandissement."

msgid ""
"Stores the factor of a magnifying touch gesture. This is usually performed "
"when the user pinches the touch screen and used for zooming in/out.\n"
"[b]Note:[/b] On Android, this requires the [member "
"ProjectSettings.input_devices/pointing/android/enable_pan_and_scale_gestures] "
"project setting to be enabled."
msgstr ""
"Stocke le facteur d'un geste tactile de zoom. Ceci est généralement effectué "
"lorsque l'utilisateur pince l'écran tactile et est utilisé pour zoomer/"
"dézoomer.\n"
"[b]Note :[/b] Sur Android, cela nécessite le paramètre de projet [member "
"ProjectSettings.input_devices/pointing/android/enable_pan_and_scale_gestures] "
"activé."

msgid ""
"The amount (or delta) of the event. This value is closer to [code]1.0[/code] "
"the slower the gesture is performed."
msgstr ""
"Le montant (ou delta) de l'événement. Plus cette valeur est proche de "
"[code]1.0[/code] plus le geste est exécuté lentement."

msgid ""
"Represents a MIDI message from a MIDI device, such as a musical keyboard."
msgstr ""
"Représente un message MIDI d'un appareil MIDI, tel qu'un clavier de musique."

msgid ""
"InputEventMIDI stores information about messages from [url=https://"
"en.wikipedia.org/wiki/MIDI]MIDI[/url] (Musical Instrument Digital Interface) "
"devices. These may include musical keyboards, synthesizers, and drum "
"machines.\n"
"MIDI messages can be received over a 5-pin MIDI connector or over USB. If "
"your device supports both be sure to check the settings in the device to see "
"which output it is using.\n"
"By default, Godot does not detect MIDI devices. You need to call [method "
"OS.open_midi_inputs], first. You can check which devices are detected with "
"[method OS.get_connected_midi_inputs], and close the connection with [method "
"OS.close_midi_inputs].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tOS.open_midi_inputs()\n"
"\tprint(OS.get_connected_midi_inputs())\n"
"\n"
"func _input(input_event):\n"
"\tif input_event is InputEventMIDI:\n"
"\t\t_print_midi_info(input_event)\n"
"\n"
"func _print_midi_info(midi_event):\n"
"\tprint(midi_event)\n"
"\tprint(\"Channel \", midi_event.channel)\n"
"\tprint(\"Message \", midi_event.message)\n"
"\tprint(\"Pitch \", midi_event.pitch)\n"
"\tprint(\"Velocity \", midi_event.velocity)\n"
"\tprint(\"Instrument \", midi_event.instrument)\n"
"\tprint(\"Pressure \", midi_event.pressure)\n"
"\tprint(\"Controller number: \", midi_event.controller_number)\n"
"\tprint(\"Controller value: \", midi_event.controller_value)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tOS.OpenMidiInputs();\n"
"\tGD.Print(OS.GetConnectedMidiInputs());\n"
"}\n"
"\n"
"public override void _Input(InputEvent inputEvent)\n"
"{\n"
"\tif (inputEvent is InputEventMidi midiEvent)\n"
"\t{\n"
"\t\tPrintMIDIInfo(midiEvent);\n"
"\t}\n"
"}\n"
"\n"
"private void PrintMIDIInfo(InputEventMidi midiEvent)\n"
"{\n"
"\tGD.Print(midiEvent);\n"
"\tGD.Print($\"Channel {midiEvent.Channel}\");\n"
"\tGD.Print($\"Message {midiEvent.Message}\");\n"
"\tGD.Print($\"Pitch {midiEvent.Pitch}\");\n"
"\tGD.Print($\"Velocity {midiEvent.Velocity}\");\n"
"\tGD.Print($\"Instrument {midiEvent.Instrument}\");\n"
"\tGD.Print($\"Pressure {midiEvent.Pressure}\");\n"
"\tGD.Print($\"Controller number: {midiEvent.ControllerNumber}\");\n"
"\tGD.Print($\"Controller value: {midiEvent.ControllerValue}\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Godot does not support MIDI output, so there is no way to emit "
"MIDI messages from Godot. Only MIDI input is supported.\n"
"[b]Note:[/b] On the Web platform, using MIDI input requires a browser "
"permission to be granted first. This permission request is performed when "
"calling [method OS.open_midi_inputs]. MIDI input will not work until the user "
"accepts the permission request."
msgstr ""
"InputEventMIDI stocke des informations sur des messages de périphériques "
"[url=https://fr.wikipedia.org/wiki/Musical_Instrument_Digital_Interface]MIDI[/"
"url] (Musical Instrument Digital Interface, litt. \"Interface pour instrument "
"de musique numérique\"). Il peut s'agir de claviers de musique, de "
"synthétiseurs et de boîtes à rythmes.\n"
"Les messages MIDI peuvent être reçus sur un connecteur MIDI 5 broches ou par "
"USB. Si votre appareil prend en charge les deux, assurez-vous de vérifier les "
"paramètres de l'appareil pour voir quelle sortie il utilise.\n"
"Par défaut, Godot ne détecte pas les périphériques MIDI. Vous devez d'abord "
"appeler [method OS.open_midi_inputs]. Vous pouvez vérifier quels "
"périphériques sont détectés avec [method OS.get_connected_midi_inputs], et "
"fermer la connexion avec [method OS.close_midi_inputs].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tOS.open_midi_inputs()\n"
"\tprint(OS.get_connected_midi_inputs())\n"
"\n"
"func _input(input_event):\n"
"\tif input_event is InputEventMIDI:\n"
"\t\t_afficher_info_midi(input_event)\n"
"\n"
"func _afficher_info_midi(evenement_midi):\n"
"\tprint(midi_event)\n"
"\tprint(\"Canal \", evenement_midi.channel)\n"
"\tprint(\"Message \", evenement_midi.message)\n"
"\tprint(\"Hauteur \", evenement_midi.pitch)\n"
"\tprint(\"Vitesse \", evenement_midi.velocity)\n"
"\tprint(\"Instrument \", evenement_midi.instrument)\n"
"\tprint(\"Pression \", evenement_midi.pressure)\n"
"\tprint(\"Numéro du contrôleur : \", evenement_midi.controller_number)\n"
"\tprint(\"Valeur du contrôleur : \", evenement_midi.controller_value)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tOS.OpenMidiInputs();\n"
"\tGD.Print(OS.GetConnectedMidiInputs());\n"
"}\n"
"\n"
"public override void _Input(InputEvent inputEvent)\n"
"{\n"
"\tif (inputEvent is InputEventMidi evenementMidi)\n"
"\t{\n"
"\t\tAfficherInfoMIDI(evenementMidi);\n"
"\t}\n"
"}\n"
"\n"
"private void AfficherInfoMIDI(InputEventMidi evenementMidi)\n"
"{\n"
"\tGD.Print(midiEvent);\n"
"\tGD.Print($\"Canal {evenementMidi.Channel}\");\n"
"\tGD.Print($\"Message {evenementMidi.Message}\");\n"
"\tGD.Print($\"Hauteur {evenementMidi.Pitch}\");\n"
"\tGD.Print($\"Vitesse {evenementMidi.Velocity}\");\n"
"\tGD.Print($\"Instrument {evenementMidi.Instrument}\");\n"
"\tGD.Print($\"Pression {evenementMidi.Pressure}\");\n"
"\tGD.Print($\"Numéro du contrôleur : {evenementMidi.ControllerNumber}\");\n"
"\tGD.Print($\"Valeur du contrôleur : {evenementMidi.ControllerValue}\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Godot ne supporte pas la sortie MIDI, donc il n'y a aucun moyen "
"d'émettre des messages MIDI depuis Godot. Seule l'entrée MIDI est supportée.\n"
"[b]Note :[/b] Sur la plate-forme Web, l'utilisation de l'entrée MIDI "
"nécessite une autorisation du navigateur accordée d'abord. Cette requête de "
"permission est effectuée lors de l'appel à [method OS.open_midi_inputs]. "
"L'entrée MIDI ne fonctionnera pas tant que l'utilisateur n'aura pas accepté "
"la requête de permission."

msgid "MIDI Message Status Byte List"
msgstr "Liste des octets de statut de message MIDI"

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 ""
"The MIDI channel of this message, ranging from [code]0[/code] to [code]15[/"
"code]. MIDI channel [code]9[/code] is reserved for percussion instruments."
msgstr ""
"Le canal MIDI de ce message, allant de [code]0[/code] à [code]15[/code]. Le "
"canal MIDI [code]9[/code] est réservé aux instruments à percussion."

msgid ""
"The value applied to the controller. If [member message] is [constant "
"MIDI_MESSAGE_CONTROL_CHANGE], this value ranges from [code]0[/code] to "
"[code]127[/code], otherwise it is [code]0[/code]. See also [member "
"controller_value]."
msgstr ""
"La valeur appliquée au contrôleur. Si [member message] vaut [constant "
"MIDI_MESSAGE_CONTROL_CHANGE], cette valeur varie de [code]0[/code] à "
"[code]127[/code], sinon elle vaut [code]0[/code]. Voir aussi [member "
"controller_value]."

msgid ""
"Represents the type of MIDI message (see the [enum MIDIMessage] enum).\n"
"For more information, see the [url=https://www.midi.org/specifications-old/"
"item/table-2-expanded-messages-list-status-bytes]MIDI message status byte "
"list chart[/url]."
msgstr ""
"Représente le type de message MIDI (voir l’énumération [enum MIDIMessage]).\n"
"Pour plus d'informations, voir la [url=https://www.midi.org/specifications-"
"old/item/table-2-expanded-messages-list-status-bytes]spécification de la "
"liste des octets de statut de message MIDI[/url]."

msgid ""
"The strength of the key being pressed. This value ranges from [code]0[/code] "
"to [code]127[/code].\n"
"[b]Note:[/b] For many devices, this value is always [code]0[/code]. Other "
"devices such as musical keyboards may simulate pressure by changing the "
"[member velocity], instead."
msgstr ""
"La force de la touche appuyée. Cette valeur varie de [code]0[/code] à "
"[code]127[/code].\n"
"[b]Note :[/b] Pour de nombreux appareils, cette valeur vaut toujours [code]0[/"
"code]. D'autres appareils tels que les claviers de musique peuvent simuler la "
"pression en changeant [member velocity] à la place."

msgid ""
"The velocity of the MIDI message. This value ranges from [code]0[/code] to "
"[code]127[/code]. For a musical keyboard, this corresponds to how quickly the "
"key was pressed, and is rarely above [code]110[/code] in practice.\n"
"[b]Note:[/b] Some MIDI devices may send a [constant MIDI_MESSAGE_NOTE_ON] "
"message with [code]0[/code] velocity and expect it to be treated the same as "
"a [constant MIDI_MESSAGE_NOTE_OFF] message. If necessary, this can be handled "
"with a few lines of code:\n"
"[codeblock]\n"
"func _input(event):\n"
"\tif event is InputEventMIDI:\n"
"\t\tif event.message == MIDI_MESSAGE_NOTE_ON and event.velocity > 0:\n"
"\t\t\tprint(\"Note pressed!\")\n"
"[/codeblock]"
msgstr ""
"La vitesse du message MIDI. Cette valeur varie de [code]0[/code] à [code]127[/"
"code]. Pour un clavier de musique, cela correspond à la rapidité avec "
"laquelle la touche a été appuyée et est rarement supérieure à [code]110[/"
"code] en pratique.\n"
"[b]Note :[/b] Certains périphériques MIDI peuvent envoyer un message "
"[constant MIDI_MESSAGE_NOTE_ON] avec une vitesse de [code]0[/code] et "
"s'attendent à ce qu'il soit traité comme un message [constant "
"MIDI_MESSAGE_NOTE_OFF]. Si nécessaire, cela peut être géré avec quelques "
"lignes de code :\n"
"[codeblock]\n"
"func _input(event):\n"
"\tif event is InputEventMIDI:\n"
"\t\tif event.message == MIDI_MESSAGE_NOTE_ON and event.velocity > 0:\n"
"\t\t\tprint(\"Touche appuyée !\")\n"
"[/codeblock]"

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 ""
"When received in [method Node._input] or [method Node._unhandled_input], "
"returns the mouse's position in the root [Viewport] using the coordinate "
"system of the root [Viewport].\n"
"When received in [method Control._gui_input], returns the mouse's position in "
"the [CanvasLayer] that the [Control] is in using the coordinate system of the "
"[CanvasLayer]."
msgstr ""
"Lorsque reçu dans [method Node._input] ou [method Node._unhandled_input], "
"renvoie la position de la souris dans le [Viewport] racine en utilisant le "
"système de coordonnées du [Viewport] racine.\n"
"Lorsque reçu dans [method Control._gui_input], renvoie la position de la "
"souris dans le [CanvasLayer] où se trouve le [Control] en utilisant le "
"système de coordonnées du [CanvasLayer]."

msgid ""
"When received in [method Node._input] or [method Node._unhandled_input], "
"returns the mouse's position in the [Viewport] this [Node] is in using the "
"coordinate system of this [Viewport].\n"
"When received in [method Control._gui_input], returns the mouse's position in "
"the [Control] using the local coordinate system of the [Control]."
msgstr ""
"Lorsque reçu dans [method Node._input] ou [method Node._unhandled_input], "
"renvoie la position de la souris dans le [Viewport] où se trouve ce [Node] en "
"utilisant le système de coordonnées de ce [Viewport].\n"
"Lorsque reçu dans [method Control._gui_input], renvoie la position de la "
"souris dans le [Control] en utilisant le système de coordonnées locales du "
"[Control]."

msgid "Represents a mouse button being pressed or released."
msgstr "Représente un bouton de souris appuyé ou relâché."

msgid ""
"Stores information about mouse click events. See [method Node._input].\n"
"[b]Note:[/b] On Wear OS devices, rotary input is mapped to [constant "
"MOUSE_BUTTON_WHEEL_UP] and [constant MOUSE_BUTTON_WHEEL_DOWN]. This can be "
"changed to [constant MOUSE_BUTTON_WHEEL_LEFT] and [constant "
"MOUSE_BUTTON_WHEEL_RIGHT] with the [member ProjectSettings.input_devices/"
"pointing/android/rotary_input_scroll_axis] setting."
msgstr ""
"Stocke des informations sur les événements de clic de souris. Voir [method "
"Node._input].\n"
"[b]Note :[/b] Sur les appareils Wear OS, l'entrée rotative est associée à "
"[constant MOUSE_BUTTON_WHEEL_UP] et [constant MOUSE_BUTTON_WHEEL_DOWN]. Cela "
"peut être changé en [constant MOUSE_BUTTON_WHEEL_LEFT] et [constant "
"MOUSE_BUTTON_WHEEL_RIGHT] avec le paramètre [member "
"ProjectSettings.input_devices/pointing/android/rotary_input_scroll_axis]."

msgid "Mouse and input coordinates"
msgstr "Les coordonnées de la souris"

msgid ""
"The mouse button identifier, one of the [enum MouseButton] button or button "
"wheel constants."
msgstr ""
"L'identifiant du bouton de la souris, l'une des constantes de bouton ou de "
"bouton de molette [enum MouseButton]."

msgid "If [code]true[/code], the mouse button event has been canceled."
msgstr "Si [code]true[/code], l'événement du bouton de la souris a été annulé."

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 "Represents a mouse or a pen movement."
msgstr "Représente une mouvement de souris ou de stylo."

msgid ""
"Stores information about a mouse or a pen motion. This includes relative "
"position, absolute position, and velocity. See [method Node._input].\n"
"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
"at most. If you need more precise input reporting, set [member "
"Input.use_accumulated_input] to [code]false[/code] to make events emitted as "
"often as possible. If you use InputEventMouseMotion to draw lines, consider "
"using [method Geometry2D.bresenham_line] as well to avoid visible gaps in "
"lines if the user is moving the mouse quickly.\n"
"[b]Note:[/b] This event may be emitted even when the mouse hasn't moved, "
"either by the operating system or by Godot itself. If you really need to know "
"if the mouse has moved (e.g. to suppress displaying a tooltip), you should "
"check that [code]relative.is_zero_approx()[/code] is [code]false[/code]."
msgstr ""
"Stocke des informations sur un mouvement de souris ou de stylo. Cela comprend "
"la position relative, la position absolue et la vitesse. Voir [method "
"Node._input].\n"
"[b]Note :[/b] Par défaut, cet événement n'est émis qu'une fois par trame "
"rendue au maximum. Si vous avez besoin d'un suivi des entrées plus précis, "
"définissez [member Input.use_accumulated_input] à [code]false[/code] pour "
"faire que les événements soient émis le plus souvent possible. Si vous "
"utilisez InputEventMouseMotion pour dessiner des lignes, envisagez d'aussi "
"utiliser [method Geometry2D.bresenham_line] pour éviter les lacunes visibles "
"dans les lignes si l'utilisateur déplace la souris rapidement.\n"
"[b]Note :[/b] Cet événement peut être émis même lorsque la souris n'a pas "
"bougé, que ce soit par le système d'exploitation ou par Godot lui-même. Si "
"vous avez vraiment besoin de savoir si la souris a bougé (par exemple pour "
"supprimer l'affichage d'une info-bulle), vous devez vérifier que "
"[code]relative.is_zero_approx()[/code] vaut [code]false[/code]."

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 stylet. 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 "Represents a screen drag event."
msgstr "Représente un événement de glissement sur un écran."

msgid "Stores information about screen drag events. See [method Node._input]."
msgstr ""
"Contient des informations sur des événements de glissement sur un écran. Voir "
"[method Node._input]."

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 "Returns [code]true[/code] when using the eraser end of a stylus pen."
msgstr ""
"Renvoie [code]true[/code] lors de l'utilisation de l'extrémité gomme d'un "
"stylet."

msgid ""
"The drag position in the viewport the node is in, using the coordinate system "
"of this viewport."
msgstr ""
"La position de glissement dans le viewport dans lequel se trouve le nœud, en "
"utilisant le système de coordonnées de ce viewport."

msgid ""
"The drag position relative to the previous position (position at the last "
"frame).\n"
"[b]Note:[/b] [member relative] is automatically scaled according to the "
"content scale factor, which is defined by the project's stretch mode "
"settings. This means touch sensitivity will appear different depending on "
"resolution when using [member relative] in a script that handles touch "
"aiming. To avoid this, use [member screen_relative] instead."
msgstr ""
"La position de glissement relative à la position précédente (position à la "
"dernière trame).\n"
"[b]Note :[/b] [member relative] est automatiquement échelonnée selon le "
"facteur d'échelle de contenu, défini par les réglages de mode d'étirement du "
"projet. Cela signifie que la sensibilité du toucher apparaîtra différemment "
"en fonction de la résolution lors de l'utilisation de [member relative] dans "
"un script qui gère la visée tactile. Pour éviter cela, utilisez plutôt "
"[member screen_relative]."

msgid ""
"The unscaled drag position relative to the previous position in screen "
"coordinates (position at the last frame). This position is [i]not[/i] scaled "
"according to the content scale factor or calls to [method "
"InputEvent.xformed_by]. This should be preferred over [member relative] for "
"touch aiming regardless of the project's stretch mode."
msgstr ""
"La position de glissement non redimensionnée relative à la position "
"précédente dans les coordonnées de l'écran (position à la dernière trame). "
"Cette position n'est [i]pas[/i] mise à échelle selon le facteur d'échelle du "
"contenu ou les appels à [method InputEvent.xformed_by]. Cela devrait être "
"préféré par rapport à [member relative] pour la visée tactile indépendamment "
"du mode d'étirement du projet."

msgid ""
"The unscaled drag velocity in pixels per second in screen coordinates. This "
"velocity is [i]not[/i] scaled according to the content scale factor or calls "
"to [method InputEvent.xformed_by]. This should be preferred over [member "
"velocity] for touch aiming regardless of the project's stretch mode."
msgstr ""
"La vitesse de glissement non redimensionnée en pixels par seconde dans les "
"coordonnées de l'écran. Cette vitesse n'est [i]pas[/i] mise à échelle selon "
"le facteur d'échelle du contenu ou les appels à [method "
"InputEvent.xformed_by]. Cela devrait être préféré par rapport à [member "
"velocity] pour la visée tactile indépendamment du mode d'étirement du projet."

msgid ""
"The drag velocity.\n"
"[b]Note:[/b] [member velocity] is automatically scaled according to the "
"content scale factor, which is defined by the project's stretch mode "
"settings. This means touch sensitivity will appear different depending on "
"resolution when using [member velocity] in a script that handles touch "
"aiming. To avoid this, use [member screen_velocity] instead."
msgstr ""
"La vitesse de glissement.\n"
"[b]Note :[/b] [member velocity] est automatiquement échelonnée selon le "
"facteur d'échelle de contenu, défini par les réglages de mode d'étirement du "
"projet. Cela signifie que la sensibilité du toucher apparaîtra différemment "
"en fonction de la résolution lors de l'utilisation de [member velocity] dans "
"un script qui gère la visée tactile. Pour éviter cela, utilisez plutôt "
"[member screen_velocity]."

msgid "Represents a screen touch event."
msgstr "Représente un évènement d'écran tactile."

msgid ""
"Stores information about multi-touch press/release input events. Supports "
"touch press, touch release and [member index] for multi-touch count and order."
msgstr ""
"Stocke des informations sur des événements d'entrée de appui/relâchement "
"multi-toucher. Supporte l'appui tactile, le relâchement tactile et l'[member "
"index] pour le compte et l'ordre du multi-toucher."

msgid "If [code]true[/code], the touch event has been canceled."
msgstr "Si [code]true[/code], l'événement tactile a été annulé."

msgid "If [code]true[/code], the touch's state is a double tap."
msgstr "Si [code]true[/code], l'état du toucher est un double appui."

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 ""
"The touch position in the viewport the node is in, using the coordinate "
"system of this viewport."
msgstr ""
"La position du toucher dans le viewport dans lequel se trouve le nœud, en "
"utilisant le système de coordonnées de ce viewport."

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 "Represents a triggered keyboard [Shortcut]."
msgstr "Représente un [Shortcut] de clavier déclenché."

msgid ""
"InputEventShortcut is a special event that can be received in [method "
"Node._input], [method Node._shortcut_input], and [method "
"Node._unhandled_input]. It is typically sent by the editor's Command Palette "
"to trigger actions, but can also be sent manually using [method "
"Viewport.push_input]."
msgstr ""
"InputEventShortcut est un événement spécial qui peut être reçu dans [method "
"Node._input], [method Node._shortcut_input], et [method "
"Node._unhandled_input]. Il est généralement envoyé par la Palette de commande "
"de l'éditeur pour déclencher des actions, mais peut également être envoyé "
"manuellement en utilisant [method Viewport.push_input]."

msgid ""
"The [Shortcut] represented by this event. Its [method Shortcut.matches_event] "
"method will always return [code]true[/code] for this event."
msgstr ""
"Le [Shortcut] représenté par cet événement. Sa méthode [method "
"Shortcut.matches_event] renverra toujours [code]true[/code] pour cet "
"événement."

msgid ""
"Abstract base class for input events affected by modifier keys like "
"[kbd]Shift[/kbd] and [kbd]Alt[/kbd]."
msgstr ""
"Classe de base abstraite pour les événements d'entrée affectés par des "
"touches de modification comme [kbd]Maj[/kbd] et [kbd]Alt[/kbd]."

msgid ""
"Stores information about mouse, keyboard, and touch gesture input events. "
"This includes information about which modifier keys are pressed, such as "
"[kbd]Shift[/kbd] or [kbd]Alt[/kbd]. See [method Node._input].\n"
"[b]Note:[/b] Modifier keys are considered modifiers only when used in "
"combination with another key. As a result, their corresponding member "
"variables, such as [member ctrl_pressed], will return [code]false[/code] if "
"the key is pressed on its own."
msgstr ""
"Stocke des informations sur la souris, le clavier et les événements d'entrée "
"de geste. Cela comprend des informations sur les touches de modification "
"appuyées, telles que [kbd]Maj[/kbd] ou [kbd]Alt[/kbd]. Voir [method "
"Node._input].\n"
"[b]Note :[/b] Les touches de modification sont considérées comme des "
"modificateurs seulement lorsqu'elles sont utilisées en combinaison avec une "
"autre touche. Par conséquent, leurs variables membres correspondantes, telles "
"que [member ctrl_pressed], renverront [code]false[/code] si la touchée est "
"appuyée seule."

msgid ""
"On macOS, returns [code]true[/code] if [kbd]Meta[/kbd] ([kbd]Cmd[/kbd]) is "
"pressed.\n"
"On other platforms, returns [code]true[/code] if [kbd]Ctrl[/kbd] is pressed."
msgstr ""
"Sur macOS, renvoie [code]true[/code] si [kbd]Meta[/kbd] ([kbd]Cmd[/kbd]) est "
"appuyé.\n"
"Sur les autres plateformes, renvoie [code]true[/code] si [kbd]Ctrl[/kbd] est "
"appuyé."

msgid "State of the [kbd]Alt[/kbd] modifier."
msgstr "L'état du modificateur [kbd]Alt[/kbd]."

msgid ""
"Automatically use [kbd]Meta[/kbd] ([kbd]Cmd[/kbd]) on macOS and [kbd]Ctrl[/"
"kbd] on other platforms. If [code]true[/code], [member ctrl_pressed] and "
"[member meta_pressed] cannot be set."
msgstr ""
"Utiliser automatiquement [kbd]Meta[/kbd] ([kbd]Cmd[/kbd]) sur macOS et "
"[kbd]Ctrl[/kbd] sur les autres plateformes. Si [code]true[/code], [member "
"ctrl_pressed] et [member meta_pressed] ne peuvent être définis."

msgid "State of the [kbd]Ctrl[/kbd] modifier."
msgstr "L'état du modificateur [kbd]Ctrl[/kbd] (Contrôle)."

msgid ""
"State of the [kbd]Meta[/kbd] modifier. On Windows and Linux, this represents "
"the Windows key (sometimes called \"meta\" or \"super\" on Linux). On macOS, "
"this represents the Command key."
msgstr ""
"État du modificateur [kbd]Meta[/kbd]. Sur Windows et Linux, cela représente "
"la touche Windows (parfois appelée \"meta\" ou \"super\" sur Linux). Sur "
"macOS, cela représente la touche Commande."

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 ""
"Manages all [InputEventAction] which can be created/modified from the project "
"settings menu [b]Project > Project Settings > Input Map[/b] or in code with "
"[method add_action] and [method action_add_event]. See [method Node._input]."
msgstr ""
"Gère tous les [InputEventAction] qui peuvent être créés/modifiés dans le menu "
"de Paramètres du projet [b]Projet > Paramètres du projet > Contrôle[/b] ou "
"dans le code avec [method add_action] et [method action_add_event]. Voir "
"[method Node._input]."

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 ""
"Returns [code]true[/code] if the [InputMap] has a registered action with the "
"given name."
msgstr ""
"Renvoie [code]true[/code] si l'[InputMap] a une action enregistrée avec le "
"nom donné."

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 ""
"Call this method to actually load in the node. The created node will be "
"placed as a sibling [i]above[/i] the [InstancePlaceholder] in the scene tree. "
"The [Node]'s reference is also returned for convenience.\n"
"[b]Note:[/b] [method create_instance] is not thread-safe. Use [method "
"Object.call_deferred] if calling from a thread."
msgstr ""
"Appelez cette méthode pour réellement charger le nœud. Le nœudcréé sera placé "
"comme un frère [i]au-dessus du[/i] [InstancePlaceholder] dans l’arborescence "
"de scène. La référence du [Node] est également renvoyée pour plus de "
"commodité.\n"
"[b]Note :[/b] [method create_instance] n'est pas thread-safe. Utilisez "
"[method Object.call_deferred] si l'appelez à partir d'un thread."

msgid ""
"Gets the path to the [PackedScene] resource file that is loaded by default "
"when calling [method create_instance]. Not thread-safe. Use [method "
"Object.call_deferred] if calling from a thread."
msgstr ""
"Obtient le chemin vers le fichier de ressources [PackedScene] qui est chargé "
"par défaut lors de l'appel à [method create_instance]. Non thread-safe. "
"Utilisez [method Object.call_deferred] si vous l'appelez à partir d'un thread."

msgid ""
"Returns the list of properties that will be applied to the node when [method "
"create_instance] is called.\n"
"If [param with_order] is [code]true[/code], a key named [code].order[/code] "
"(note the leading period) is added to the dictionary. This [code].order[/"
"code] key is an [Array] of [String] property names specifying the order in "
"which properties will be applied (with index 0 being the first)."
msgstr ""
"Renvoie la liste des propriétés qui seront appliquées au nœud lorsque [method "
"create_instance] sera appelée.\n"
"Si [param with_order] vaut [code]true[/code], une clé nommée [code].order[/"
"code] (remarquez le point du début) est ajoutée au dictionnaire. Cette clé "
"[code].order[/code] est un [Array] de [String] de noms de propriétés, "
"spécifiant l'ordre dans lequel les propriétés seront appliquées (avec l'index "
"0 étant le premier)."

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 "Creates an idle interval in a [Tween] animation."
msgstr "Crée un intervalle d'inactivité dans une animation [Tween]."

msgid ""
"[IntervalTweener] is used to make delays in a tweening sequence. See [method "
"Tween.tween_interval] for more usage information.\n"
"[b]Note:[/b] [method Tween.tween_interval] is the only correct way to create "
"[IntervalTweener]. Any [IntervalTweener] created manually will not function "
"correctly."
msgstr ""
"[IntervalTweener] est utilisé pour créer des délais dans une séquence de "
"tweening. Voir [method Tween.tween_interval] pour plus d'informations sur son "
"utilisation.\n"
"[b]Note :[/b] [method Tween.tween_interval] est le seul moyen correct de "
"créer un [IntervalTweener]. Tout [IntervalTweener] créé manuellement ne "
"fonctionnera pas correctement."

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 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 "[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 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 "
"SkeletonModifier3D.ROTATION_AXIS_ALL], this method returns [code]Vector3(0, "
"0, 0)[/code]."
msgstr ""
"Renvoie le vecteur de l'axe de rotation à la liaison spécifiée 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 "
"SkeletonModifier3D.ROTATION_AXIS_ALL], cette méthode renvoie [code]Vector3(0, "
"0, 0)[/code]."

msgid "Returns the target node that the end bone is trying to reach."
msgstr "Renvoie le nœud cible que l'os final tente d'atteindre."

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 SkeletonModifier3D.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 SkeletonModifier3D.ROTATION_AXIS_ALL]."

msgid "Sets the target node that the end bone is trying to reach."
msgstr "Définit le nœud cible que l'os final tente d'atteindre."

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 "The JavaScriptBridge singleton"
msgstr "Le singleton JavaScriptBridge"

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 ""
"The JNISingleton is implemented only in the Android export. It's used to call "
"methods and connect signals from an Android plugin written in Java or Kotlin. "
"Methods and signals can be called and connected to the JNISingleton as if it "
"is a Node. See [url=https://en.wikipedia.org/wiki/Java_Native_Interface]Java "
"Native Interface - Wikipedia[/url] for more information."
msgstr ""
"Le JNISingleton est implémenté seulement dans l'export Android. Il est "
"utilisé pour appeler des méthodes et connecter des signaux d'un plugin "
"Android écrit en Java ou en Kotlin. Les méthodes et les signaux peuvent être "
"appelés et connectés au JNISingleton comme s'il s'agit d'un Node. Voir "
"[url=https://fr.wikipedia.org/wiki/Java_Native_Interface]Java Native "
"Interface - Wikipedia[/url] pour plus d'informations."

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 ""
"The [JSON] class enables all data types to be converted to and from a JSON "
"string. This is useful for serializing data, e.g. to save to a file or send "
"over the network.\n"
"[method stringify] is used to convert any data type into a JSON string.\n"
"[method parse] is used to convert any existing JSON data into a [Variant] "
"that can be used within Godot. If successfully parsed, use [member data] to "
"retrieve the [Variant], and use [method @GlobalScope.typeof] to check if the "
"Variant's type is what you expect. JSON Objects are converted into a "
"[Dictionary], but JSON data can be used to store [Array]s, numbers, [String]s "
"and even just a boolean.\n"
"[codeblock]\n"
"var data_to_send = [\"a\", \"b\", \"c\"]\n"
"var json_string = JSON.stringify(data_to_send)\n"
"# Save data\n"
"# ...\n"
"# Retrieve data\n"
"var json = JSON.new()\n"
"var error = json.parse(json_string)\n"
"if error == OK:\n"
"\tvar data_received = json.data\n"
"\tif typeof(data_received) == TYPE_ARRAY:\n"
"\t\tprint(data_received) # Prints the array.\n"
"\telse:\n"
"\t\tprint(\"Unexpected data\")\n"
"else:\n"
"\tprint(\"JSON Parse Error: \", json.get_error_message(), \" in \", "
"json_string, \" at line \", json.get_error_line())\n"
"[/codeblock]\n"
"Alternatively, you can parse strings using the static [method parse_string] "
"method, but it doesn't handle errors.\n"
"[codeblock]\n"
"var data = JSON.parse_string(json_string) # Returns null if parsing failed.\n"
"[/codeblock]\n"
"[b]Note:[/b] Both parse methods do not fully comply with the JSON "
"specification:\n"
"- Trailing commas in arrays or objects are ignored, instead of causing a "
"parser error.\n"
"- New line and tab characters are accepted in string literals, and are "
"treated like their corresponding escape sequences [code]\\n[/code] and [code]"
"\\t[/code].\n"
"- Numbers are parsed using [method String.to_float] which is generally more "
"lax than the JSON specification.\n"
"- Certain errors, such as invalid Unicode sequences, do not cause a parser "
"error. Instead, the string is cleaned up and an error is logged to the "
"console."
msgstr ""
"La classe [JSON] permet à tous les types de données d'être convertis en et "
"d'une chaîne JSON. Ceci est utile pour la sérialisation de données, par "
"exemple pour enregistrer dans un fichier ou envoyer sur le réseau.\n"
"[method stringify] est utilisée pour convertir tout type de données en une "
"chaîne JSON.\n"
"[method parse] est utilisée pour convertir des données JSON existantes en un "
"[Variant] qui peut être utilisé dans Godot. Si parsé avec succès, utilisez "
"[member data] pour récupérer le [Variant] et utilisez [method "
"@GlobalScope.typeof] pour vérifier si le type du Variant est celui que vous "
"attendez. Les objets JSON sont convertis en un [Dictionary], mais les données "
"JSON peuvent être utilisées pour stocker des [Array]s, des nombres, des "
"[String]s et même seulement un booléen.\n"
"[codeblock]\n"
"var donnees_a_envoyer = [\"a\", \"b\", \"c\"]\n"
"var chaine_json = JSON.stringify(donnees_a_envoyer)\n"
"# Sauvegarder les données\n"
"# ...\n"
"# Récupérer les données\n"
"var json = JSON.new()\n"
"var erreur = json.parse(chaine_json)\n"
"if erreur == OK:\n"
"\tvar donnees_recues = json.data\n"
"\tif typeof(donnees_recues) == TYPE_ARRAY:\n"
"\t\tprint(donnees_recues) # Affiche le tableau.\n"
"\telse:\n"
"\t\tprint(\"Données inattendues\")\n"
"else:\n"
"\tprint(\"Erreur du parsing JSON : \", json.get_error_message(), \" dans \", "
"json_string, \" à la ligne \", json.get_error_line())\n"
"[/codeblock]\n"
"Alternativement, vous pouvez parser des chaînes en utilisant la méthode "
"statique [method parse_string], mais il ne gère pas les erreurs.\n"
"[codeblock]\n"
"var donnes = JSON.parse_string(chaine_json) # Renvoie null si le parsing a "
"echoué.\n"
"[/codeblock]\n"
"[b]Note :[/b] Les deux méthodes de parsing ne sont pas entièrement conformes "
"à la spécification JSON :\n"
"- Les virgules de fin dans les tableaux ou les objets sont ignorées, au lieu "
"de causer une erreur de parsing.\n"
"- Les caractères de nouvelle ligne et de tabulations sont acceptés en "
"caractères alphabétiques et sont traités comme leurs séquences d'échappement "
"correspondantes [code]\\n[/code] et [code]\\t[/code].\n"
"- Les chiffres sont parsés en utilisant [method String.to_float] qui est "
"généralement plus laxiste que la spécification JSON.\n"
"- Certaines erreurs, telles que les séquences Unicode invalides, ne "
"provoquent pas d'erreur de parsing. Au lieu de cela, la chaîne est nettoyée "
"et une erreur est affichée dans la console."

msgid ""
"Converts a native engine type to a JSON-compliant value.\n"
"By default, objects are ignored for security reasons, unless [param "
"full_objects] is [code]true[/code].\n"
"You can convert a native value to a JSON string like this:\n"
"[codeblock]\n"
"func encode_data(value, full_objects = false):\n"
"\treturn JSON.stringify(JSON.from_native(value, full_objects))\n"
"[/codeblock]"
msgstr ""
"Convertit un type natif du moteur en une valeur compatible JSON.\n"
"Par défaut, les objets sont ignorés pour des raisons de sécurité, sauf si "
"[param full_objects] vaut[code]true[/code].\n"
"Vous pouvez convertir une valeur native en une chaîne JSON comme ceci :\n"
"[codeblock]\n"
"func encoder_donnees(valeur, objets_complets = false):\n"
"\treturn JSON.stringify(JSON.from_native(valeur, objets_complets))\n"
"[/codeblock]"

msgid ""
"Returns [code]0[/code] if the last call to [method parse] was successful, or "
"the line number where the parse failed."
msgstr ""
"Renvoie [code]0[/code] si le dernier appel à [method parse] était un succès, "
"ou le numéro de ligne où le parsing a échoué."

msgid ""
"Returns an empty string if the last call to [method parse] was successful, or "
"the error message if it failed."
msgstr ""
"Renvoie une chaîne vide si le dernier appel à [method parse] était un succès, "
"ou le message d'erreur si il a échoué."

msgid ""
"Return the text parsed by [method parse] (requires passing [code]keep_text[/"
"code] to [method parse])."
msgstr ""
"Renvoie le texte parsé par [method parse] (nécessite de passer "
"[code]keep_text[/code] à [method parse])."

msgid ""
"Attempts to parse the [param json_text] provided.\n"
"Returns an [enum Error]. If the parse was successful, it returns [constant "
"OK] and the result can be retrieved using [member data]. If unsuccessful, use "
"[method get_error_line] and [method get_error_message] to identify the source "
"of the failure.\n"
"Non-static variant of [method parse_string], if you want custom error "
"handling.\n"
"The optional [param keep_text] argument instructs the parser to keep a copy "
"of the original text. This text can be obtained later by using the [method "
"get_parsed_text] function and is used when saving the resource (instead of "
"generating new text from [member data])."
msgstr ""
"Essaye de parser le texte [param json_text] fourni.\n"
"Renvoie une erreur [enum Error]. Si le parsing était un succès, elle renvoie "
"[constant OK] et le résultat peut être récupéré en utilisant [member data]. "
"Si c'était un échec, utilisez [method get_error_line] et [method "
"get_error_message] pour identifier la source de l'échec.\n"
"Variante non statique de [method parse_string], si vous voulez gérer les "
"erreurs de manière personnalisée.\n"
"L'argument optionnel [param keep_text] ordonne au parseur de conserver une "
"copie du texte original. Ce texte peut être obtenu plus tard en utilisant la "
"fonction [method get_parsed_text] et est utilisé lors de la sauvegarde de la "
"ressource (au lieu de générer un nouveau texte à partir de [member data])."

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]Warning:[/b] Non-finite numbers are not supported in JSON. Any occurrences "
"of [constant @GDScript.INF] will be replaced with [code]1e99999[/code], and "
"negative [constant @GDScript.INF] will be replaced with [code]-1e99999[/"
"code], but they will be interpreted correctly as infinity by most JSON "
"parsers. [constant @GDScript.NAN] will be replaced with [code]null[/code], "
"and it will not be interpreted as NaN in JSON parsers. If you expect non-"
"finite numbers, consider passing your data through [method from_native] "
"first.\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]Avertissement :[/b] Les nombres non-finis ne sont pas gérés par JSON. "
"Toute occurrences de [constant @GDScript.INF] sera remplacée par "
"[code]1e99999[/code], et négatif [constant @GDScript.INF] sera remplacé par "
"[code]-1e99999[/code], mais ils pourront être interprétés correctement par la "
"plupart des analyseurs JSON. [constant @GDScript.NAN] sera remplacé par "
"[code]null[/code], et ne sera pas interprété en NaN par les analyseurs JSON. "
"Si vous attendez des nombres non-finis, considérez de passer vos données par "
"[method from_native] avant toute opération.\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 ""
"Converts a JSON-compliant value that was created with [method from_native] "
"back to native engine types.\n"
"By default, objects are ignored for security reasons, unless [param "
"allow_objects] is [code]true[/code].\n"
"You can convert a JSON string back to a native value like this:\n"
"[codeblock]\n"
"func decode_data(string, allow_objects = false):\n"
"\treturn JSON.to_native(JSON.parse_string(string), allow_objects)\n"
"[/codeblock]"
msgstr ""
"Convertit une valeur compatible-JSON qui a été créée avec [method "
"from_native] vers un type natif du moteur.\n"
"Par défaut, les objets sont ignorés pour des raisons de sécurité, sauf si "
"[param allow_objects] vaut [code]true[/code].\n"
"Vous pouvez convertir une chaîne JSON en une valeur native comme ceci :\n"
"[codeblock]\n"
"func decoder_donnees(chaine, autoriser_objets = false):\n"
"\treturn JSON.to_native(JSON.parse_string(chaine), autoriser_objets)\n"
"[/codeblock]"

msgid "Contains the parsed JSON data in [Variant] form."
msgstr "Contient les données JSON parsées en leur forme de [Variant]."

msgid "A helper to handle dictionaries which look like JSONRPC documents."
msgstr ""
"Une classe d'aide pour gérer les dictionnaires qui ressemblent à des "
"documents JSONRPC."

msgid ""
"[url=https://www.jsonrpc.org/]JSON-RPC[/url] is a standard which wraps a "
"method call in a [JSON] object. The object has a particular structure and "
"identifies which method is called, the parameters to that function, and "
"carries an ID to keep track of responses. This class implements that standard "
"on top of [Dictionary]; you will have to convert between a [Dictionary] and "
"[JSON] with other functions."
msgstr ""
"[url=https://www.jsonrpc.org/]JSON-RPC[/url] est une norme qui enveloppe un "
"appel de méthode dans un objet [JSON]. L'objet a une structure particulière "
"et identifie quelle méthode est appelée, les paramètres de cette fonction, et "
"porte un ID pour suivre les réponses. Cette classe implémente cette norme par "
"dessus [Dictionary], vous devrez convertir entre un [Dictionary] et [JSON] "
"avec d'autres fonctions."

msgid ""
"Returns a dictionary in the form of a JSON-RPC notification. Notifications "
"are one-shot messages which do not expect a response.\n"
"- [param method]: Name of the method being called.\n"
"- [param params]: An array or dictionary of parameters being passed to the "
"method."
msgstr ""
"Renvoie un dictionnaire sous forme d'une notification JSON-RPC. Les "
"notifications sont des messages à usage unique qui ne s'attendent pas à une "
"réponse.\n"
"- [param method] : Nom de la méthode appelée.\n"
"- [param params] : Un tableau ou un dictionnaire de paramètres transmis à la "
"méthode."

msgid ""
"Returns a dictionary in the form of a JSON-RPC request. Requests are sent to "
"a server with the expectation of a response. The ID field is used for the "
"server to specify which exact request it is responding to.\n"
"- [param method]: Name of the method being called.\n"
"- [param params]: An array or dictionary of parameters being passed to the "
"method.\n"
"- [param id]: Uniquely identifies this request. The server is expected to "
"send a response with the same ID."
msgstr ""
"Renvoie un dictionnaire sous forme de requête JSON-RPC. Les requêtes sont "
"envoyées à un serveur avec l'attente d'une réponse. Le champ ID est utilisé "
"pour le serveur pour spécifier la requête exacte à laquelle il répond.\n"
"- [param method] : Nom de la méthode appelée.\n"
"- [param params] : Un tableau ou un dictionnaire de paramètres transmis à la "
"méthode.\n"
"- [param id] : Identifie cette requête de façon unique. Le serveur devrait "
"envoyer une réponse avec le même ID."

msgid ""
"When a server has received and processed a request, it is expected to send a "
"response. If you did not want a response then you need to have sent a "
"Notification instead.\n"
"- [param result]: The return value of the function which was called.\n"
"- [param id]: The ID of the request this response is targeted to."
msgstr ""
"Quand un serveur a reçu et traité une requête, il est attendu qu'il envoie "
"une réponse. Si vous ne voulez pas de réponse alors vous devez envoyer une "
"Notification à la place.\n"
"- [param result] : Le résultat de la fonction appelée.\n"
"- [param id] : L'identifiant de la requête que cette réponse cible."

msgid ""
"Creates a response which indicates a previous reply has failed in some way.\n"
"- [param code]: The error code corresponding to what kind of error this is. "
"See the [enum ErrorCode] constants.\n"
"- [param message]: A custom message about this error.\n"
"- [param id]: The request this error is a response to."
msgstr ""
"Crée une réponse qui indique qu'une réponse précédente a échoué d'une "
"certaine manière.\n"
"- [param code] : Le code d'erreur correspondant à ce type d'erreur. Voir les "
"constantes [enum ErrorCode].\n"
"- [param message] : Un message personnalisé sur cette erreur.\n"
"- [param id] : La requête à laquelle cette erreur est une réponse."

msgid ""
"Given a Dictionary which takes the form of a JSON-RPC request: unpack the "
"request and run it. Methods are resolved by looking at the field called "
"\"method\" and looking for an equivalently named function in the JSONRPC "
"object. If one is found that method is called.\n"
"To add new supported methods extend the JSONRPC class and call [method "
"process_action] on your subclass.\n"
"[param action]: The action to be run, as a Dictionary in the form of a JSON-"
"RPC request or notification."
msgstr ""
"Compte tenu d'un dictionnaire qui prend la forme d'une demande JSON-RPC : "
"déballe la requête et l'exécute. Les méthodes sont résolues en regardant le "
"champ appelé \"method\" et en recherchant une fonction équivalente dans "
"l'objet JSONRPC. Si une telle méthode est trouvée, elle est appelée.\n"
"Pour ajouter de nouvelles méthodes supportées, prolongez la classe JSONRPC et "
"appelez [method process_action] sur votre sous-classe.\n"
"[param action] : L'action à exécuter, en tant que Dictionary sous forme de "
"requête ou de notification JSON-RPC."

msgid ""
"The request could not be parsed as it was not valid by JSON standard ([method "
"JSON.parse] failed)."
msgstr ""
"La requête n'a pas pu être parsée car elle n'était pas valide selon la norme "
"JSON ([method JSON.parse] a échoué)."

msgid "A method call was requested but the request's format is not valid."
msgstr ""
"Un appel de méthode a été demandé, mais le format de la requête n'est pas "
"valide."

msgid ""
"A method call was requested but no function of that name existed in the "
"JSONRPC subclass."
msgstr ""
"Un appel de méthode a été demandé, mais aucune fonction avec ce nom "
"n'existait dans la sous-classe JSONRPC."

msgid ""
"A method call was requested but the given method parameters are not valid. "
"Not used by the built-in JSONRPC."
msgstr ""
"Un appel de méthode a été demandé, mais les paramètres de méthode donnés ne "
"sont pas valides. Non utilisé par le JSONRPC intégré."

msgid ""
"An internal error occurred while processing the request. Not used by the "
"built-in JSONRPC."
msgstr ""
"Une erreur interne s'est produite lors du traitement de la requête. Non "
"utilisé par le JSONRPC intégré."

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 ""
"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 height of the line [param line].\n"
"If [param line] is set to [code]-1[/code], returns the biggest line height.\n"
"If there are no lines, returns font size in pixels."
msgstr ""
"Renvoie la hauteur de la ligne [param line].\n"
"Si [param line] est définie à [code]-1[/code], renvoie la plus grande hauteur "
"de ligne.\n"
"S'il n'y a pas de lignes, renvoie la taille de police en pixels."

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 ""
"If set to something other than [constant TextServer.AUTOWRAP_OFF], the text "
"gets wrapped inside the node's bounding rectangle. If you resize the node, it "
"will change its height automatically to show all the text."
msgstr ""
"Si défini à quelque chose d'autre que [constant TextServer.AUTOWRAP_OFF], le "
"texte retourne automatiquement à la ligne dans le rectangle délimitant du "
"nœud. Si vous redimensionnez le nœud, il va changer sa hauteur "
"automatiquement pour afficher tout le texte."

msgid ""
"If [code]true[/code], the Label only shows the text that fits inside its "
"bounding rectangle and will clip text horizontally."
msgstr ""
"Si [code]true[/code], le Label n'affiche que le texte qui rentre à "
"l'intérieur de son rectangle délimitant et coupera le texte horizontalement."

msgid "Ellipsis character used for text clipping."
msgstr "Caractère d’ellipse utilisé pour tronquer du texte."

msgid ""
"Controls the text's horizontal alignment. Supports left, center, right, and "
"fill (also known as justify)."
msgstr ""
"Contrôle l'alignement horizontal du texte. Supporte à gauche, au centre, à "
"droite, ou remplir (aussi connu comme justifié)."

msgid "Line fill alignment rules."
msgstr "Règles d'alignement du remplissage des lignes."

msgid ""
"A [LabelSettings] resource that can be shared between multiple [Label] nodes. "
"Takes priority over theme properties."
msgstr ""
"Une ressource [LabelSettings] qui peut être partagée entre plusieurs nœuds "
"[Label]. Prend la priorité sur les propriétés du thème."

msgid ""
"The number of the lines ignored and not displayed from the start of the "
"[member text] value."
msgstr ""
"Le nombre de lignes ignorées et non affichées depuis le début de la valeur de "
"[member text]."

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 ""
"String used as a paragraph separator. Each paragraph is processed "
"independently, in its own BiDi context."
msgstr ""
"Chaîne utilisée comme séparateur de paragraphe. Chaque paragraphe est traité "
"indépendamment, dans son propre contexte BiDi."

msgid "Set BiDi algorithm override for the structured text."
msgstr "Définit la redéfinition de l'algorithme BiDi pour le texte structuré."

msgid "Set additional options for BiDi override."
msgstr "Définit des options supplémentaires pour la redéfinition BiDi."

msgid "The text to display on screen."
msgstr "Le texte à afficher à l'écran."

msgid ""
"The clipping behavior when the text exceeds the node's bounding rectangle."
msgstr ""
"Le comportement de coupure lorsque le texte dépasse le rectangle délimitant "
"du nœud."

msgid "If [code]true[/code], all the text displays as UPPERCASE."
msgstr "Si [code]true[/code], tous les textes seront en MAJUSCULE."

msgid ""
"Controls the text's vertical alignment. Supports top, center, bottom, and "
"fill."
msgstr ""
"Contrôle l'alignement vertical du texte. Supporte en haut, au centre, en bas "
"et remplir."

msgid ""
"The number of characters to display. If set to [code]-1[/code], all "
"characters are displayed. This can be useful when animating the text "
"appearing in a dialog box.\n"
"[b]Note:[/b] Setting this property updates [member visible_ratio] "
"accordingly.\n"
"[b]Note:[/b] Characters are counted as Unicode codepoints. A single visible "
"grapheme may contain multiple codepoints (e.g. certain emoji use three "
"codepoints). A single codepoint may contain two UTF-16 characters, which are "
"used in C# strings."
msgstr ""
"Le nombre de caractères à afficher. Si défini à [code]-1[/code], tous les "
"caractères sont affichés. Cela peut être utile lors de l'animation d'un texte "
"apparaissant dans une boîte de dialogue.\n"
"[b]Note :[/b] Définir cette propriété met à jour [member visible_ratio] en "
"conséquence.\n"
"[b]Note :[/b] Les caractères sont comptés comme des codes Unicode. Un seul "
"graphème visible peut contenir plusieurs points de code (par exemple, "
"certains emojis utilisent trois points de code). Un seul point de code peut "
"contenir deux caractères UTF-16, qui sont utilisés dans les chaînes C#."

msgid ""
"The clipping behavior when [member visible_characters] or [member "
"visible_ratio] is set."
msgstr ""
"Le comportement de coupure lorsque [member visible_characters] ou [member "
"visible_ratio] est défini."

msgid ""
"The fraction of characters to display, relative to the total number of "
"characters (see [method get_total_character_count]). If set to [code]1.0[/"
"code], all characters are displayed. If set to [code]0.5[/code], only half of "
"the characters will be displayed. This can be useful when animating the text "
"appearing in a dialog box.\n"
"[b]Note:[/b] Setting this property updates [member visible_characters] "
"accordingly."
msgstr ""
"La fraction des caractères à afficher, par rapport au nombre total de "
"caractères (voir [method get_total_character_count]). Si défini à [code]1.0[/"
"code], tous les caractères sont affichés. Si défini à [code]0.5[/code], "
"seulement la moitié des caractères seront affichés. Cela peut être utile lors "
"de l'animation du texte apparaissant dans une boîte de dialogue.\n"
"[b]Note :[/b] Définir cette propriété met à jour [member visible_characters] "
"en conséquence."

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 ""
"Text outline size.\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.\n"
"[b]Note:[/b] Using a value that is larger than half the font size is not "
"recommended, as the font outline may fail to be fully closed in this case."
msgstr ""
"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.\n"
"[b]Note :[/b] L'utilisation d'une valeur supérieure à la moitié de la taille "
"de la police n'est pas recommandée, car le contour de la police peut échouer "
"à être entièrement fermé dans ce cas."

msgid ""
"Vertical space between paragraphs. Added on top of [theme_item line_spacing]."
msgstr ""
"Espace vertical entre les paragraphes. Ajouté en plus de [theme_item "
"line_spacing]."

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 "The size of the shadow outline."
msgstr "La taille du contour d'ombre."

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 ""
"[StyleBox] used when the [Label] is focused (when used with assistive apps)."
msgstr ""
"[StyleBox] utilisé quand le [Label] a le focus (lorsqu'utilisé avec des "
"applications d’assistance)."

msgid "Background [StyleBox] for the [Label]."
msgstr "Le [StyleBox] d'arrière-plan pour le [Label]."

msgid "A node for displaying plain text in 3D space."
msgstr "Un nœud utilisé pour afficher du texte brut dans un espace 3D."

msgid ""
"A node for displaying plain text in 3D space. By adjusting various properties "
"of this node, you can configure things such as the text's appearance and "
"whether it always faces the camera."
msgstr ""
"Un nœud utilisé pour afficher du texte brut dans un espace 3D. En ajustant "
"différentes propriétés de ce nœud, vous pouvez configurer des choses comme "
"l'apparence du texte et s'il fait toujours face à la caméra."

msgid "3D text"
msgstr "3D text"

msgid ""
"Returns a [TriangleMesh] with the label's vertices following its current "
"configuration (such as its [member pixel_size])."
msgstr ""
"Renvoie un [TriangleMesh] avec les sommets de l'étiquette suivant sa "
"configuration actuelle (comme [member pixel_size])."

msgid "If [code]true[/code], the specified [param flag] will be enabled."
msgstr "Si [code]true[/code], le drapeau [param flag] spécifié sera activé."

msgid "Threshold at which the alpha scissor will discard values."
msgstr "Le seuil à partir duquel le ciseau alpha ignorera les valeurs."

msgid "The billboard mode to use for the label."
msgstr "Le mode de billboard à utiliser pour l'étiquette."

msgid ""
"If [code]true[/code], text 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], le texte peut aussi être vu de derrière, si "
"[code]false[/code], il est invisible quand on le regarde de derrière."

msgid ""
"If [code]true[/code], the label is rendered at the same size regardless of "
"distance. The label's size on screen is the same as if the camera was "
"[code]1.0[/code] units away from the label'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 "
"label is drawn at."
msgstr ""
"Si [code]true[/code], l'étiquette est rendue à la même taille indépendamment "
"de la distance. La taille de l'étiquette à l'écran est la même que si la "
"caméra était à [code]1.0[/code] unité de l'origine de l'étiquette, peu "
"importe la distance réelle de la caméra. Le champ de vision de la [Camera3D] "
"(ou [member Camera3D.size] en mode orthogonal/frustum) affecte toujours la "
"taille à laquelle l'étiquette est dessinée."

msgid "Font configuration used to display text."
msgstr "Configuration de la police utilisée pour afficher le texte."

msgid ""
"Font size of the [Label3D]'s text. To make the font look more detailed when "
"up close, increase [member font_size] while decreasing [member pixel_size] at "
"the same time.\n"
"Higher font sizes require more time to render new characters, which can cause "
"stuttering during gameplay."
msgstr ""
"Taille de police du texte du [Label3D]. Pour rendre la police plus détaillée "
"de près, augmentez [member font_size] tout en diminuant [member pixel_size] "
"en même temps.\n"
"Les tailles de police plus élevées nécessitent plus de temps pour rendre de "
"nouveaux caractères, ce qui peut causer du stuttering pendant le gameplay."

msgid "Text [Color] of the [Label3D]."
msgstr "La [Color] du texte du [Label3D]."

msgid "The text drawing offset (in pixels)."
msgstr "Le décalage du dessin du texte (en pixels)."

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 ""
"The size of one pixel's width on the label to scale it in 3D. To make the "
"font look more detailed when up close, increase [member font_size] while "
"decreasing [member pixel_size] at the same time."
msgstr ""
"La taille de la largeur d'un pixel sur l'étiquette pour la redimensionner en "
"3D. Pour rendre la police plus détaillée de près, augmentez [member "
"font_size] tout en diminuant [member pixel_size] en même temps."

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 ""
"If [code]true[/code], the [Light3D] in the [Environment] has effects on the "
"label."
msgstr ""
"Si [code]true[/code], la [Light3D] dans l'[Environment] a des effets sur "
"l'étiquette."

msgid "Filter flags for the texture."
msgstr "Drapeaux de filtrage pour la texture."

msgid ""
"Controls the text's vertical alignment. Supports top, center, and bottom."
msgstr ""
"Contrôle l'alignement vertical du texte. Supporte en haut, au centre, et en "
"bas."

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, lights in the environment affect the label."
msgstr "Si défini, les lumières dans l’environnement affectent l'étiquette."

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 performs standard alpha blending. It can display translucent areas, "
"but transparency sorting issues may be visible when multiple transparent "
"materials are overlapping. [member GeometryInstance3D.cast_shadow] has no "
"effect when this transparency mode is used; the [Label3D] will never cast "
"shadows."
msgstr ""
"Ce mode réalise un mélange alpha standard. Il peut afficher des zones "
"translucides, mais des problèmes de tri de la transparence peuvent être "
"visibles lorsque plusieurs matériaux transparents se chevauchent. [member "
"GeometryInstance3D.cast_shadow] n'a aucun effet lorsque ce mode de "
"transparence est utilisé, le [Label3D] ne projettera jamais d'ombres."

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 "Provides common settings to customize the text in a [Label]."
msgstr ""
"Fournit des paramètres communs pour personnaliser le texte dans un [Label]."

msgid ""
"[LabelSettings] is a resource that provides common settings to customize the "
"text in a [Label]. It will take priority over the properties defined in "
"[member Control.theme]. The resource can be shared between multiple labels "
"and changed on the fly, so it's convenient and flexible way to setup text "
"style."
msgstr ""
"[LabelSettings] est une ressource qui fournit des paramètres communs pour "
"personnaliser le texte dans un [Label]. Elle prendra la priorité sur les "
"propriétés définies dans [member Control.theme]. La ressource peut être "
"partagée entre plusieurs étiquettes et changée à la volée, de sorte que ce "
"soit une façon commode et flexible de configurer un style de texte."

msgid "Returns the color of the stacked outline at [param index]."
msgstr "Renvoie la couleur du contour empilé à l'index [param index]."

msgid "Returns the size of the stacked outline at [param index]."
msgstr "Renvoie la taille du contour empilé à l'index [param index]."

msgid "Returns the color of the stacked shadow at [param index]."
msgstr "Renvoie la couleur de l'ombre empilée à l'index [param index]."

msgid "Returns the offset of the stacked shadow at [param index]."
msgstr "Renvoie le décalage de l'ombre empilée à l'index [param index]."

msgid "Returns the outline size of the stacked shadow at [param index]."
msgstr ""
"Renvoie la taille du contour de l'ombre empilée à l'index [param index]."

msgid ""
"Moves the stacked outline at index [param from_index] to the given position "
"[param to_position] in the array."
msgstr ""
"Déplace le contour empilé à l'index [param from_index] à la position donnée "
"[param to_position] dans le tableau."

msgid ""
"Moves the stacked shadow at index [param from_index] to the given position "
"[param to_position] in the array."
msgstr ""
"Déplace l'ombre empilée à l'index [param from_index] à la position donnée "
"[param to_position] dans le tableau."

msgid "Removes the stacked outline at index [param index]."
msgstr "Retire le contour empilé à l'index [param index]."

msgid "Removes the stacked shadow at index [param index]."
msgstr "Retire l'ombre empilée à l'index [param index]."

msgid ""
"Sets the color of the stacked outline identified by the given [param index] "
"to [param color]."
msgstr ""
"Définit la couleur du contour empilé identifié par l'index [param index] "
"donné à [param color]."

msgid ""
"Sets the size of the stacked outline identified by the given [param index] to "
"[param size]."
msgstr ""
"Définit la taille du contour empilé identifié par l'index [param index] donné "
"à [param size]."

msgid ""
"Sets the color of the stacked shadow identified by the given [param index] to "
"[param color]."
msgstr ""
"Définit la couleur de l'ombre empilée identifiée par l'index [param index] "
"donné à [param color]."

msgid ""
"Sets the offset of the stacked shadow identified by the given [param index] "
"to [param offset]."
msgstr ""
"Définit le décalage de l'ombre empilée identifiée par l'index [param index] "
"donné à [param offset]."

msgid ""
"Sets the outline size of the stacked shadow identified by the given [param "
"index] to [param size]."
msgstr ""
"Définit la taille du contour de l'ombre empilée identifiée par l'index [param "
"index] donné à [param size]."

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 ""
"Vertical space between paragraphs. Added on top of [member line_spacing]."
msgstr ""
"Espace vertical entre les paragraphes. Ajouté en plus de [member "
"line_spacing]."

msgid ""
"Color of the shadow effect. If alpha is [code]0[/code], no shadow will be "
"drawn."
msgstr ""
"Couleur de l'effet d'ombre. Si alpha vaut [code]0[/code], aucune ombre ne "
"sera dessinée."

msgid "Offset of the shadow effect, in pixels."
msgstr "Décalage de l'effet d'ombre, en pixels."

msgid "Size of the shadow effect."
msgstr "Taille de l'effet d'ombre."

msgid "The number of stacked outlines."
msgstr "Le nombre de contours empilés."

msgid "The number of stacked shadows."
msgstr "Le nombre d'ombres empilées."

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’apparaîtra que lors de l'édition de la "
"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 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 ""
"Applies text from the [url=https://en.wikipedia.org/wiki/Input_method]Input "
"Method Editor[/url] (IME) and closes the IME if it is open."
msgstr ""
"Applique le texte de l'[url=https://fr.wikipedia.org/wiki/"
"M%C3%A9thode_de_saisie]éditeur de méthode de saisie[/url] (Input Method "
"Editor) et ferme l'IME s'il est ouvert."

msgid ""
"Closes the [url=https://en.wikipedia.org/wiki/Input_method]Input Method "
"Editor[/url] (IME) if it is open. Any text in the IME will be lost."
msgstr ""
"Ferme l'[url=https://fr.wikipedia.org/wiki/M%C3%A9thode_de_saisie]éditeur de "
"méthode de saisie[/url] (Input Method Editor) s'il est ouvert. Tout texte "
"dans l'IME sera perdu."

msgid "Erases the [LineEdit]'s [member text]."
msgstr "Efface le [member text] du [LineEdit]."

msgid ""
"Deletes one character at the caret's current position (equivalent to pressing "
"[kbd]Delete[/kbd])."
msgstr ""
"Supprime un caractère à la position actuelle du curseur (équivalent à appuyer "
"sur [kbd]Suppr[/kbd])."

msgid ""
"Deletes a section of the [member text] going from position [param "
"from_column] to [param to_column]. Both parameters should be within the "
"text's length."
msgstr ""
"Supprime une section du [member text] allant de la position [param "
"from_column] à [param to_column]. Les deux paramètres devraient être dans la "
"longueur du texte."

msgid "Clears the current selection."
msgstr "Efface la sélection actuelle."

msgid ""
"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
"displayed when right-clicking on the [LineEdit].\n"
"You can add custom menu items or remove standard ones. Make sure your IDs "
"don't conflict with the standard ones (see [enum MenuItems]). For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Remove all items after \"Redo\".\n"
"\tmenu.item_count = menu.get_item_index(MENU_REDO) + 1\n"
"\t# Add custom items.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Insert Date\", MENU_MAX + 1)\n"
"\t# Connect callback.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tinsert_text_at_caret(Time.get_date_string_from_system())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Remove all items after \"Redo\".\n"
"\tmenu.ItemCount = menu.GetItemIndex(LineEdit.MenuItems.Redo) + 1;\n"
"\t// Add custom items.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Insert Date\", LineEdit.MenuItems.Max + 1);\n"
"\t// Add event handler.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == LineEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tInsertTextAtCaret(Time.GetDateStringFromSystem());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\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] de ce [LineEdit]. Par défaut, ce menu s'affiche lors "
"d'un clic droit sur le [LineEdit].\n"
"Vous pouvez ajouter des éléments de menu personnalisés ou supprimer les "
"éléments standards. Assurez-vous que vos identifiants ne sont pas en conflit "
"avec les identifiants standards (voir [enum MenuItems]). Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Retirer tous les éléments après \"Redo\".\n"
"\tmenu.item_count = menu.get_item_index(MENU_REDO) + 1\n"
"\t# Ajouter des éléments personnalisés.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Insérer Date\", MENU_MAX + 1)\n"
"\t# Connecter le callback.\n"
"\tmenu.id_pressed.connect(_lorsque_element_appuye)\n"
"\n"
"func _lorsque_element_appuye(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tinsert_text_at_caret(Time.get_date_string_from_system())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Retirer tous les éléments après \"Redo\".\n"
"\tmenu.ItemCount = menu.GetItemIndex(LineEdit.MenuItems.Redo) + 1;\n"
"\t// Ajouter des éléments personnalisés.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Insérer Date\", LineEdit.MenuItems.Max + 1);\n"
"\t// Ajouter gestionnaire d'évènement.\n"
"\tmenu.IdPressed += LorsqueElementAppuye;\n"
"}\n"
"\n"
"public void LorsqueElementAppuye(int id)\n"
"{\n"
"\tif (id == LineEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tInsertTextAtCaret(Time.GetDateStringFromSystem());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\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 leur propriété [member Window.visible]."

msgid ""
"Returns the correct column at the end of a composite character like ❤️‍🩹 "
"(mending heart; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]) which is "
"comprised of more than one Unicode code point, if the caret is at the start "
"of the composite character. Also returns the correct column with the caret at "
"mid grapheme and for non-composite characters.\n"
"[b]Note:[/b] To check at caret location use "
"[code]get_next_composite_character_column(get_caret_column())[/code]"
msgstr ""
"Renvoie la colonne correcte à la fin d'un caractère composite comme ❤️‍🩹 (cœur "
"raccommodé; Unicode : [code]U+2764 U+FE0F U+200D U+1FA79[/code]) qui est "
"composé de plus d'un point de code Unicode, si le curseur est au début du "
"caractère composite. Renvoie également la colonne correcte avec le curseur au "
"milieu du graphème et pour les caractères non-composites.\n"
"[b]Note :[/b] Pour vérifier à l'emplacement du curseur, utilisez "
"[code]get_next_composite_character_column(get_caret_column())[/code]"

msgid ""
"Returns the correct column at the start of a composite character like ❤️‍🩹 "
"(mending heart; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]) which is "
"comprised of more than one Unicode code point, if the caret is at the end of "
"the composite character. Also returns the correct column with the caret at "
"mid grapheme and for non-composite characters.\n"
"[b]Note:[/b] To check at caret location use "
"[code]get_previous_composite_character_column(get_caret_column())[/code]"
msgstr ""
"Renvoie la colonne correcte au début d'un caractère composite comme ❤️‍🩹 (cœur "
"raccommodé; Unicode : [code]U+2764 U+FE0F U+200D U+1FA79[/code]) qui est "
"composé de plus d'un point de code Unicode, si le curseur est à ma fin du "
"caractère composite. Renvoie également la colonne correcte avec le curseur au "
"milieu du graphème et pour les caractères non-composites.\n"
"[b]Note :[/b] Pour vérifier à l'emplacement du curseur, utilisez "
"[code]get_previous_composite_character_column(get_caret_column())[/code]"

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 the user has text in the [url=https://"
"en.wikipedia.org/wiki/Input_method]Input Method Editor[/url] (IME)."
msgstr ""
"Renvoie [code]true[/code] si l'utilisateur a du texte dans l'[url=https://"
"fr.wikipedia.org/wiki/M%C3%A9thode_de_saisie]éditeur de méthode de saisie[/"
"url] (Input Method Editor)."

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 ""
"Inserts [param text] at the caret. If the resulting value is longer than "
"[member max_length], nothing happens."
msgstr ""
"Ajoute [param text] après le curseur. Si le résultat est plus long que "
"[member max_length], rien ne se passe."

msgid "Returns whether the [LineEdit] is being edited."
msgstr "Renvoie si le [LineEdit] est en cours d'édition."

msgid ""
"Returns whether the menu is visible. Use this instead of "
"[code]get_menu().visible[/code] to improve performance (so the creation of "
"the menu is avoided)."
msgstr ""
"Renvoie si le menu est visible. Utilisez ceci au lieu de "
"[code]get_menu().visible[/code] pour améliorer les performances (pour éviter "
"la création du menu)."

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 characters inside [LineEdit] between [param from] and [param to]. By "
"default, [param from] is at the beginning and [param to] at the end.\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Welcome\"\n"
"select() # Will select \"Welcome\".\n"
"select(4) # Will select \"ome\".\n"
"select(2, 5) # Will select \"lco\".\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Welcome\";\n"
"Select(); // Will select \"Welcome\".\n"
"Select(4); // Will select \"ome\".\n"
"Select(2, 5); // Will select \"lco\".\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Sélectionne les caractères à l'intérieur du [LineEdit] entre [param from] et "
"[param to]. Par défaut, [param from] est au début et [param to] à la fin.\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Bienvenue\"\n"
"select() # Sélectionnera \"Bienvenue\".\n"
"select(5) # Sélectionnera \"venue\".\n"
"select(2, 7) # Sélectionnera \"enven\".\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Bienvenue\";\n"
"Select(); // Sélectionnera \"Bienvenue\".\n"
"Select(4); // Sélectionnera \"venue\".\n"
"Select(2, 5); // Sélectionnera \"enven\".\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Selects the whole [String]."
msgstr "Sélectionne l’ensemble [String]."

msgid "Allows exiting edit mode while preserving focus."
msgstr "Permet de quitter le mode édition tout en gardant le focus."

msgid ""
"If [code]true[/code] and [member caret_mid_grapheme] is [code]false[/code], "
"backspace deletes an entire composite character such as ❤️‍🩹, instead of "
"deleting part of the composite character."
msgstr ""
"Si [code]true[/code] et [member caret_mid_grapheme] vaut [code]false[/code], "
"le retour arrière supprime un caractère composite tel que ❤️‍🩹 en entier, au "
"lieu de ne supprimer qu'une partie du caractère composite."

msgid "If [code]true[/code], makes the caret blink."
msgstr "Si [code]true[/code], fait clignoter le curseur."

msgid "The interval at which the caret blinks (in seconds)."
msgstr "L'intervalle auquel le curseur clignote (en secondes)."

msgid ""
"If [code]true[/code], the [LineEdit] will always show the caret, even if not "
"editing or focus is lost."
msgstr ""
"Si [code]true[/code], le [LineEdit] affichera toujours le curseur, même s'il "
"n'est pas en cours d'édition ou si le focus est perdu."

msgid ""
"Allow moving caret, selecting and removing the individual composite character "
"components.\n"
"[b]Note:[/b] [kbd]Backspace[/kbd] is always removing individual composite "
"character components."
msgstr ""
"Permet de déplacer le curseur, de sélectionner et de supprimer les "
"composantes individuelles de caractères composites.\n"
"[b]Note :[/b] [kbd]Retour arrière[/kbd] supprime toujours les composantes "
"individuelles de caractères composites."

msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [member "
"text] is not empty, which can be used to clear the text quickly."
msgstr ""
"Si [code]true[/code], le [LineEdit] affichera un bouton effacer si le [member "
"text] n'est pas vide, ce qui permet d'effacer rapidement le texte."

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], \"Emoji and Symbols\" menu is enabled."
msgstr "Si [code]true[/code], le menu \"Émojis et Symboles\" est activé."

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 "If [code]true[/code], the [LineEdit] doesn't display decoration."
msgstr "Si [code]true[/code], le [LineEdit] n'affiche pas de décoration."

msgid ""
"If [code]true[/code], the [LineEdit] will not exit edit mode when text is "
"submitted by pressing [code]ui_text_submit[/code] action (by default: "
"[kbd]Enter[/kbd] or [kbd]Kp Enter[/kbd])."
msgstr ""
"Si [code]true[/code], le [LineEdit] ne sortira pas du mode édition lorsque le "
"texte est soumis en appuyant sur l'action [code]ui_text_submit[/code] (par "
"défaut : [kbd]Entrée[/kbd] ou [kbd]Entrée pavé numérique[/kbd])."

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 ""
"If [code]false[/code], using middle mouse button to paste clipboard will be "
"disabled.\n"
"[b]Note:[/b] This method is only implemented on Linux."
msgstr ""
"Si [code]false[/code], utiliser le bouton du milieu de la souris pour coller "
"le presse-papiers sera désactivé.\n"
"[b]Note :[/b] Cette méthode n'est implémentée que sur Linux."

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 ""
"The character to use to mask secret input. Only a single character can be "
"used as the secret character. If it is longer than one character, only the "
"first one will be used. If it is empty, a space will be used instead."
msgstr ""
"Le caractère à utiliser pour masquer l'entrée secrète. Seul un unique "
"caractère peut être utilisé comme caractère secret. S'il est plus long qu'un "
"caractère, seul le premier sera utilisé. S'il est vide, un espace sera "
"utilisé à la place."

msgid ""
"If [code]true[/code], the [LineEdit] will select the whole text when it gains "
"focus."
msgstr ""
"Si [code]true[/code], le [LineEdit] sélectionnera l'ensemble du texte lorsque "
"celui-ci obtiendra le focus."

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 ""
"If [code]true[/code], the native virtual keyboard is enabled on platforms "
"that support it."
msgstr ""
"Si [code]true[/code], le clavier virtuel natif est activé sur les plateformes "
"qui le supportent."

msgid ""
"If [code]true[/code], the native virtual keyboard is shown on focus events on "
"platforms that support it."
msgstr ""
"Si [code]true[/code], le clavier virtuel natif est affiché lors des "
"évènements de focus sur les plateformes qui le supportent."

msgid "Specifies the type of virtual keyboard to show."
msgstr "Spécifie le type de clavier virtuel à afficher."

msgid "Emitted when the [LineEdit] switches in or out of edit mode."
msgstr "Émis lorsque le [LineEdit] rentre ou sort du mode édition."

msgid ""
"Emitted when appending text that overflows the [member max_length]. The "
"appended text is truncated to fit [member max_length], and the part that "
"couldn't fit is passed as the [param rejected_substring] argument."
msgstr ""
"Émis lors de l'ajout de texte qui dépasse [member max_length]. Le texte "
"ajouté est tronqué pour s'adapter à [member max_length], et la partie qui ne "
"pouvait pas rentrer est passée dans l'argument [param rejected_substring]."

msgid "Emitted when the text changes."
msgstr "Émis lorsque le texte change."

msgid ""
"Emitted when the user presses the [code]ui_text_submit[/code] action (by "
"default: [kbd]Enter[/kbd] or [kbd]Kp Enter[/kbd]) while the [LineEdit] has "
"focus."
msgstr ""
"Émis lorsque l'utilisateur appuie sur l'action [code]ui_text_submit[/code] "
"(par défaut : [kbd]Entée[/kbd] or [kbd]Entrée pavé numérique[/kbd]) lorsque "
"le [LineEdit] a le focus."

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 ""
"Pastes the clipboard text over the selected text (or at the caret's "
"position).\n"
"Non-printable escape characters are automatically stripped from the OS "
"clipboard via [method String.strip_escapes]."
msgstr ""
"Colle le texte du presse-papiers sur le texte sélectionné (ou à la position "
"du caret).\n"
"Les caractères d'échappement non imprimables sont automatiquement retirés du "
"presse-papiers du système via [method String.strip_escapes]."

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 "ID of \"Text Writing Direction\" submenu."
msgstr "ID du sous-menu \"Direction d'écriture du texte\"."

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 "Toggles control character display."
msgstr "Active/désactive l'affichage des caractères de contrôle."

msgid "ID of \"Insert Control Character\" submenu."
msgstr "ID du sous-menu \"Insérer caractère de contrôle\"."

msgid "Inserts left-to-right mark (LRM) character."
msgstr "Insère un caractère marque gauche-à-droite (Left-to-Right Mark)."

msgid "Inserts right-to-left mark (RLM) character."
msgstr "Insère un caractère marque droite-à-gauche (Right-to-Left Mark)."

msgid "Inserts start of left-to-right embedding (LRE) character."
msgstr ""
"Insère un caractère enchâssement gauche-à-droite (Left-to-Right Embedding)."

msgid "Inserts start of right-to-left embedding (RLE) character."
msgstr ""
"Insère un caractère enchâssement droite-à-gauche (Right-to-Left Embedding)."

msgid "Inserts start of left-to-right override (LRO) character."
msgstr "Insère un caractère forçage gauche-à-droite (Left-to-Right Override)."

msgid "Inserts start of right-to-left override (RLO) character."
msgstr "Insère un caractère forçage droite-à-gauche (Right-to-Left Override)."

msgid "Inserts pop direction formatting (PDF) character."
msgstr ""
"Insère un caractère dépilement de formatage conditionnel (Pop Direction "
"Formatting)."

msgid "Inserts Arabic letter mark (ALM) character."
msgstr "Insère un caractère marque de lettre arabe (Arabic Letter Mark)."

msgid "Inserts left-to-right isolate (LRI) character."
msgstr "Insère un caractère isolat de gauche-à-droite (Left-to-Right Isolate)."

msgid "Inserts right-to-left isolate (RLI) character."
msgstr "Insère un caractère isolat de droite-à-gauche (Right-to-Left Isolate)."

msgid "Inserts first strong isolate (FSI) character."
msgstr ""
"Insère un caractère isolat à direction indéterminée (First Strong Isolate)."

msgid "Inserts pop direction isolate (PDI) character."
msgstr ""
"Insère un caractère dépilement d'isolat directionnel (Pop Direction Isolate)."

msgid "Inserts zero width joiner (ZWJ) character."
msgstr "Ajoute un caractère liant sans chasse (Zero Width Joiner)."

msgid "Inserts zero width non-joiner (ZWNJ) character."
msgstr "Insère un caractère antiliant sans chasse (Zero Width Non-Joiner)."

msgid "Inserts word joiner (WJ) character."
msgstr "Insère un caractère gluon de mots (Word Joiner)."

msgid "Inserts soft hyphen (SHY) character."
msgstr "Insère un caractère trait d’union conditionnel (Soft HYphen)."

msgid "Opens system emoji and symbol picker."
msgstr "Ouvre le sélecteur d'émojis et de symboles du système."

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

msgid ""
"Color of the [LineEdit]'s caret (text cursor). This can be set to a fully "
"transparent color to hide the caret entirely."
msgstr ""
"Couleur du caret du [LineEdit] (curseur du texte). Cela peut être défini à "
"une couleur entièrement transparente pour cacher le caret entièrement."

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 ""
"The caret's width in pixels. Greater values can be used to improve "
"accessibility by ensuring the caret is easily visible, or to ensure "
"consistency with a large font size."
msgstr ""
"La largeur du curseur en pixels. De plus grandes valeurs peuvent être "
"utilisées pour améliorer l'accessibilité en veillant à ce que le caret soit "
"facilement visible, ou pour assurer la cohérence avec une grande taille de "
"police."

msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of 'M' characters (i.e. "
"this number of 'M' characters can be displayed without scrolling)."
msgstr ""
"Espace horizontal minimum pour le texte (sans compter le bouton effacer et "
"les marges de contenu). Cette valeur est mesurée en nombre de caractères 'M' "
"(c.-à-d. ce nombre de caractères 'M' peut être affiché sans défilement)."

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 ""
"Background used when [LineEdit] has GUI focus. 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 ""
"Arrière-plan utilisé lorsque le [LineEdit] a le focus de l'interface "
"graphique. La [StyleBox] [theme_item focus] est affichée [i]par-dessus[/i] la "
"[StyleBox] de base, donc une [StyleBox] partiellement transparente devrait "
"être utilisée pour assurer que la [StyleBox] de base reste visible. Une "
"[StyleBox] qui représente un contour ou un sous-lignement fonctionne bien à "
"cette fin. Pour désactiver l'effet visuel de focus, assignez une ressource "
"[StyleBoxEmpty]. Notez que la désactivation de l'effet visuel de focus va "
"nuire à l'utilisabilité de navigation clavier/contrôleur, ce qui n'est donc "
"pas recommandé pour des raisons d'accessibilité."

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 ""
"A button that represents a link. This type of button is primarily used for "
"interactions that cause a context change (like linking to a web page).\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node."
msgstr ""
"Un bouton qui représente un lien. Ce type de bouton est principalement "
"utilisé pour les interactions qui provoquent un changement de contexte (comme "
"un lien vers une page web).\n"
"Voir aussi [BaseButton] qui contient des propriétés et des méthodes communes "
"associées à ce nœud."

msgid "The underline mode to use for the text."
msgstr "Le mode de sous-lignage à utiliser pour le texte."

msgid ""
"The [url=https://en.wikipedia.org/wiki/Uniform_Resource_Identifier]URI[/url] "
"for this [LinkButton]. If set to a valid URI, pressing the button opens the "
"URI using the operating system's default program for the protocol (via "
"[method OS.shell_open]). HTTP and HTTPS URLs open the default web browser.\n"
"[codeblocks]\n"
"[gdscript]\n"
"uri = \"https://godotengine.org\"  # Opens the URL in the default web "
"browser.\n"
"uri = \"C:\\SomeFolder\"  # Opens the file explorer at the given path.\n"
"uri = \"C:\\SomeImage.png\"  # Opens the given image in the default viewing "
"app.\n"
"[/gdscript]\n"
"[csharp]\n"
"Uri = \"https://godotengine.org\"; // Opens the URL in the default web "
"browser.\n"
"Uri = \"C:\\SomeFolder\"; // Opens the file explorer at the given path.\n"
"Uri = \"C:\\SomeImage.png\"; // Opens the given image in the default viewing "
"app.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"L'[url=https://fr.wikipedia.org/wiki/Uniform_Resource_Identifier]URI[/url] "
"pour ce [LinkButton]. S'il s'agit d'une URI valide, appuyer sur le bouton "
"ouvre l'URI en utilisant le programme par défaut du système d'exploitation "
"pour le protocole (via [method OS.shell_open]). Les URLs HTTP et HTTPS "
"ouvrent le navigateur Web par défaut.\n"
"[codeblocks]\n"
"[gdscript]\n"
"uri = \"https://godotengine.org\"  # Ouvre l'URL dans le navigateur Web par "
"défaut.\n"
"uri = \"C:\\UnDossier\"  # Ouvre l'explorateur de fichiers au chemin donné.\n"
"uri = \"C:\\UneImage.png\"  # Ouvre l'image donnée dans l'application de "
"visualisation par défaut.\n"
"[/gdscript]\n"
"[csharp]\n"
"Uri = \"https://godotengine.org\"; // Ouvre l'URL dans le navigateur Web par "
"défaut.\n"
"Uri = \"C:\\UnDossier\"; // Ouvre l'explorateur de fichiers au chemin donné.\n"
"Uri = \"C:\\UneImage.png\"; // Ouvre l'image donnée dans l'application de "
"visualisation par défaut.\n"
"[/csharp]\n"
"[/codeblocks]"

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 disabled."
msgstr "[Color] du texte utilisée quand le [LinkButton] est désactivé."

msgid ""
"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
"text color of the button. Disabled, hovered, and pressed states take "
"precedence over this color."
msgstr ""
"[Color] du texte utilisée quand le [LinkButton] a le focus. Remplace "
"seulement la couleur de texte normale du bouton. Les états désactivé, survolé "
"et appuyé sont prioritaires sur cette couleur."

msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr "La [Color] de texte utilisée quand le [LinkButton] est survolé."

msgid "Text [Color] used when the [LinkButton] is being hovered and pressed."
msgstr "[Color] du texte utilisée quand le [LinkButton] est survolé et appuyé."

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 ""
"[StyleBox] used when the [LinkButton] 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 [LinkButton] a le focus. La [StyleBox] "
"[theme_item focus] est affichée [i]par-dessus[/i] la [StyleBox] de base, donc "
"une [StyleBox] partiellement transparente devrait être utilisée pour garantir "
"que la [StyleBox] de base reste visible. Une [StyleBox] qui représente un "
"contour ou une 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 à utilisabilité de la "
"navigation clavier/contrôleur, ce qui n'est donc pas recommandé pour des "
"raisons d'accessibilité."

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 ""
"This [SkeletonModifier3D] rotates a bone to look at a target. This is helpful "
"for moving a character's head to look at the player, rotating a turret to "
"look at a target, or any other case where you want to make a bone rotate "
"towards something quickly and easily.\n"
"When applying multiple [LookAtModifier3D]s, the [LookAtModifier3D] assigned "
"to the parent bone must be put above the [LookAtModifier3D] assigned to the "
"child bone in the list in order for the child bone results to be correct."
msgstr ""
"Ce [SkeletonModifier3D] tourne un os pour qu'il regarde une cible. Ceci est "
"utile pour déplacer la tête d'un personnage pour qu'il regarde le joueur, "
"tourner une tourelle pour qu'elle regarde une cible, ou tout autre cas où "
"vous voulez faire tourner un os vers quelque chose rapidement et facilement.\n"
"Lors de l'application de plusieurs [LookAtModifier3D]s, le [LookAtModifier3D] "
"assigné à l'os parent doit être placé au-dessus du [LookAtModifier3D] assigné "
"à l'os enfant dans la liste afin que les résultats de l'os enfant soient "
"corrects."

msgid "Returns the remaining seconds of the time-based interpolation."
msgstr "Renvoie les secondes restantes de l'interpolation temporelle."

msgid ""
"Returns [code]true[/code] if time-based interpolation is running. If "
"[code]true[/code], it is equivalent to [method get_interpolation_remaining] "
"returning [code]0.0[/code].\n"
"This is useful to determine whether a [LookAtModifier3D] can be removed "
"safely."
msgstr ""
"Renvoie [code]true[/code] si l'interpolation temporelle est en cours "
"d'exécution. Si [code]true[/code], ceci est équivalent à [method "
"get_interpolation_remaining] renvoyant [code]0.0[/code].\n"
"Ceci est utile pour déterminer si un [LookAtModifier3D] peut être retiré en "
"toute sécurité."

msgid ""
"Returns whether the target is within the angle limitations. It is useful for "
"unsetting the [member target_node] when the target is outside of the angle "
"limitations.\n"
"[b]Note:[/b] The value is updated after [method "
"SkeletonModifier3D._process_modification]. To retrieve this value correctly, "
"we recommend using the signal [signal "
"SkeletonModifier3D.modification_processed]."
msgstr ""
"Renvoie si la cible est dans les limites d'angle. Ceci est utile de retirer "
"le [member target_node] lorsque la cible est hors des limites d'angle.\n"
"[b]Note :[/b] La valeur est mise à jour après [method "
"SkeletonModifier3D._process_modification]. Pour récupérer cette valeur "
"correctement, nous vous recommandons d'utiliser le signal [signal "
"SkeletonModifier3D.modification_processed]."

msgid "Index of the [member bone_name] in the parent [Skeleton3D]."
msgstr "Index de [member bone_name] dans le [Skeleton3D] parent."

msgid "The bone name of the [Skeleton3D] that the modification will operate on."
msgstr "Le nom de l'os du [Skeleton3D] sur lequel la modification va opérer."

msgid ""
"The ease type of the time-based interpolation. See also [enum Tween.EaseType]."
msgstr ""
"Le type d'accélération de l'interpolation temporelle. Voir aussi [enum "
"Tween.EaseType]."

msgid ""
"The forward axis of the bone. This [SkeletonModifier3D] modifies the bone so "
"that this axis points toward the [member target_node]."
msgstr ""
"L'axe avant de l'os. Ce [SkeletonModifier3D] modifie l'os de sorte à ce que "
"cet axe pointe vers [member target_node]."

msgid "Index of the [member origin_bone_name] in the parent [Skeleton3D]."
msgstr "Index de [member origin_bone_name] dans le [Skeleton3D] parent."

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 ""
"If the target passes through too close to the origin than this value, time-"
"based interpolation is used even if the target is within the angular "
"limitations, to prevent the angular velocity from becoming too high."
msgstr ""
"Si la cible passe plus près de l'origine que cette valeur, l'interpolation "
"temporelle est utilisée même si la cible est dans les limites d'angle, pour "
"empêcher la vitesse angulaire de devenir trop élevée."

msgid ""
"The threshold to start damping for [member primary_negative_limit_angle]."
msgstr ""
"Le seuil pour commencer l'amortissement pour [member "
"primary_negative_limit_angle]."

msgid ""
"The threshold to start damping for [member primary_positive_limit_angle]."
msgstr ""
"Le seuil pour commencer l'amortissement pour [member "
"primary_positive_limit_angle]."

msgid ""
"The axis of the first rotation. This [SkeletonModifier3D] works by "
"compositing the rotation by Euler angles to prevent to rotate the [member "
"forward_axis]."
msgstr ""
"L'axe de la première rotation. Ce [SkeletonModifier3D] fonctionne en "
"composant la rotation avec des angles d'Euler pour éviter de tourner [member "
"forward_axis]."

msgid "The threshold to start damping for [member secondary_limit_angle]."
msgstr ""
"Le seuil pour commencer l'amortissement pour [member secondary_limit_angle]."

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 ""
"The [NodePath] to the node that is the target for the look at modification. "
"This node is what the modification will rotate the bone to."
msgstr ""
"Le [NodePath] vers le nœud qui est la cible du modificateur \"LookAt\". Ce "
"nœud est celui vers lequel la modification va faire tourner l'os."

msgid ""
"The transition type of the time-based interpolation. See also [enum "
"Tween.TransitionType]."
msgstr ""
"Le type de transition de l'interpolation temporelle. Voir aussi [enum "
"Tween.TransitionType]."

msgid "If [code]true[/code], provides rotation by two axes."
msgstr "Si [code]true[/code], fournit une rotation à deux axes."

msgid ""
"The bone rest position of the bone specified in [member bone] is used as "
"origin."
msgstr ""
"La position de repos de l'os spécifié dans [member bone] est utilisée comme "
"origine."

msgid ""
"The bone global pose position of the bone specified in [member origin_bone] "
"is used as origin.\n"
"[b]Note:[/b] It is recommended that you select only the parent bone unless "
"you are familiar with the bone processing process. The specified bone pose at "
"the time the [LookAtModifier3D] is processed is used as a reference. In other "
"words, if you specify a child bone and the [LookAtModifier3D] causes the "
"child bone to move, the rendered result and direction will not match."
msgstr ""
"La position de pose globale d'os de l'os spécifié dans [member origin_bone] "
"est utilisée comme origine.\n"
"[b]Note :[/b] Il est recommandé de sélectionner uniquement l'os parent à "
"moins que vous ne connaissiez le processus de traitement des os. La pose d'os "
"spécifiée au moment où [LookAtModifier3D] est traité est utilisée comme "
"référence. En d'autres termes, si vous spécifiez un os enfant et que le "
"[LookAtModifier3D] déplace l'os enfant, le résultat rendu et la direction ne "
"correspondront pas."

msgid ""
"The global position of the [Node3D] specified in [member "
"origin_external_node] is used as origin.\n"
"[b]Note:[/b] Same as [constant ORIGIN_FROM_SPECIFIC_BONE], when specifying a "
"[BoneAttachment3D] with a child bone assigned, the rendered result and "
"direction will not match."
msgstr ""
"La position globale du [Node3D] spécifié dans [member origin_external_node] "
"est utilisée comme origine.\n"
"[b]Note :[/b] Comme avec [constant ORIGIN_FROM_SPECIFIC_BONE], lorsqu'un "
"[BoneAttachment3D] avec un os enfant assigné est spécifié, le résultat rendu "
"et la direction ne correspondront pas."

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 ""
"[MarginContainer] adds an adjustable margin on each side of its child "
"controls. The margins are added around all children, not around each "
"individual one. To control the [MarginContainer]'s margins, use the "
"[code]margin_*[/code] theme properties listed below.\n"
"[b]Note:[/b] The margin sizes are theme overrides, not normal properties. "
"This is an example of how to change them in code:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This code sample assumes the current script is extending MarginContainer.\n"
"var margin_value = 100\n"
"add_theme_constant_override(\"margin_top\", margin_value)\n"
"add_theme_constant_override(\"margin_left\", margin_value)\n"
"add_theme_constant_override(\"margin_bottom\", margin_value)\n"
"add_theme_constant_override(\"margin_right\", margin_value)\n"
"[/gdscript]\n"
"[csharp]\n"
"// This code sample assumes the current script is extending MarginContainer.\n"
"int marginValue = 100;\n"
"AddThemeConstantOverride(\"margin_top\", marginValue);\n"
"AddThemeConstantOverride(\"margin_left\", marginValue);\n"
"AddThemeConstantOverride(\"margin_bottom\", marginValue);\n"
"AddThemeConstantOverride(\"margin_right\", marginValue);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[MarginContainer] ajoute une marge réglable de chaque côté de ses contrôles "
"enfants. Les marges sont ajoutées autour de tous les enfants, pas autour de "
"chacun individuellement. Pour contrôler les marges du [MarginContainer], "
"utilisez les propriétés de thème [code]margin_*[/code] énumérées ci-dessous.\n"
"[b]Note :[/b] Les tailles des marge sont des redéfinitions du thème, pas des "
"propriétés normales. Voilà un exemple de comment les modifier dans le code :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Cet échantillon de code suppose que le script actuel étend "
"MarginContainer.\n"
"var valeur_marge = 100\n"
"add_theme_constant_override(\"margin_top\", valeur_marge)\n"
"add_theme_constant_override(\"margin_left\", valeur_marge)\n"
"add_theme_constant_override(\"margin_bottom\", valeur_marge)\n"
"add_theme_constant_override(\"margin_right\", valeur_marge)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Cet échantillon de code suppose que le script actuel étend "
"MarginContainer.\n"
"int valeurMarge = 100;\n"
"AddThemeConstantOverride(\"margin_top\", valeurMarge);\n"
"AddThemeConstantOverride(\"margin_left\", valeurMarge);\n"
"AddThemeConstantOverride(\"margin_bottom\", valeurMarge);\n"
"AddThemeConstantOverride(\"margin_right\", valeurMarge);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the bottom."
msgstr ""
"Décale vers l'intérieur les enfants directs du conteneur par cette quantité "
"de pixels depuis le bas."

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the left."
msgstr ""
"Décale vers l'intérieur les enfants directs du conteneur par cette quantité "
"de pixels depuis la gauche."

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the right."
msgstr ""
"Décale vers l'intérieur les enfants directs du conteneur par cette quantité "
"de pixels depuis la droite."

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the top."
msgstr ""
"Décale vers l'intérieur les enfants directs du conteneur par cette quantité "
"de pixels depuis le haut."

msgid "Generic 2D position hint for editing."
msgstr "Un marqueur dans l'éditeur pour une position 2D quelconque."

msgid ""
"Generic 2D position hint for editing. It's just like a plain [Node2D], but it "
"displays as a cross in the 2D editor at all times. You can set the cross' "
"visual size by using the gizmo in the 2D editor while the node is selected."
msgstr ""
"Aide de position 2D générique pour l'édition. Il ressemble à un [Node2D] "
"ordinaire, mais il apparaît en permanence comme une croix dans l'éditeur 2D. "
"Vous pouvez définir la taille visuelle de la croix en utilisant le "
"manipulateur dans l'éditeur 2D lorsque le nœud est sélectionné."

msgid "Size of the gizmo cross that appears in the editor."
msgstr "Taille de la croix du manipulateur qui apparaît dans l'éditeur."

msgid "Generic 3D position hint for editing."
msgstr "Aide de position 3D générique pour l'édition."

msgid ""
"Generic 3D position hint for editing. It's just like a plain [Node3D], but it "
"displays as a cross in the 3D editor at all times."
msgstr ""
"Aide de position 3D générique pour l'édition. Il ressemble à un [Node3D] "
"ordinaire, mais il apparaît en permanence comme une croix dans l'éditeur 3D."

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 ""
"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 ""
"Generate a [TriangleMesh] from the mesh. Considers only surfaces using one of "
"these primitive types: [constant PRIMITIVE_TRIANGLES], [constant "
"PRIMITIVE_TRIANGLE_STRIP]."
msgstr ""
"Génère un [TriangleMesh] depuis le maillage. Considère seulement les surfaces "
"utilisant un de ces types primitifs : [constant PRIMITIVE_TRIANGLES], "
"[constant PRIMITIVE_TRIANGLE_STRIP]."

msgid ""
"Returns the smallest [AABB] enclosing this mesh in local space. Not affected "
"by [code]custom_aabb[/code].\n"
"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
msgstr ""
"Renvoie la plus petite [AABB] englobant ce maillage dans l'espace local. Non "
"affecté par [code]custom_aabb[/code].\n"
"[b]Note :[/b] Ceci n'est implémenté que pour [ArrayMesh] et [PrimitiveMesh]."

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 number of surfaces that the [Mesh] holds. This is equivalent to "
"[method MeshInstance3D.get_surface_override_material_count]."
msgstr ""
"Renvoie le nombre de surfaces que le [Mesh] contient. Ceci est équivalent à "
"[method MeshInstance3D.get_surface_override_material_count]."

msgid ""
"Returns the arrays for the vertices, normals, UVs, etc. that make up the "
"requested surface (see [method ArrayMesh.add_surface_from_arrays])."
msgstr ""
"Renvoie les tableaux pour les sommets, les normales, les UVs, etc. qui "
"composent la surface demandée (voir [method "
"ArrayMesh.add_surface_from_arrays])."

msgid "Returns the blend shape arrays for the requested surface."
msgstr "Renvoie les tableaux de blend shape pour la surface demandée."

msgid ""
"Returns a [Material] in a given surface. Surface is rendered using this "
"material.\n"
"[b]Note:[/b] This returns the material within the [Mesh] resource, not the "
"[Material] associated to the [MeshInstance3D]'s Surface Material Override "
"properties. To get the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, use [method "
"MeshInstance3D.get_surface_override_material] instead."
msgstr ""
"Renvoie un [Material] dans une surface donnée. La surface est rendue en "
"utilisant ce matériau.\n"
"[b]Note :[/b] Cela renvoie le matériau dans la ressource [Mesh], pas le "
"[Material] associé aux propriétés de redéfinition du matériau de surface du "
"[MeshInstance3D]. Pour obtenir le [Material] associé aux propriétés de "
"redéfinition du matériau de surface du [MeshInstance3D], utilisez plutôt "
"[method MeshInstance3D.get_surface_override_material]."

msgid ""
"Sets a [Material] for a given surface. Surface will be rendered using this "
"material.\n"
"[b]Note:[/b] This assigns the material within the [Mesh] resource, not the "
"[Material] associated to the [MeshInstance3D]'s Surface Material Override "
"properties. To set the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, use [method "
"MeshInstance3D.set_surface_override_material] instead."
msgstr ""
"Définit un [Material] pour une surface donnée. La surface sera rendue en "
"utilisant ce matériel.\n"
"[b]Note :[/b] Cela attribue le matériau dans la ressource [Mesh], pas le "
"[Material] associé aux propriétés de redéfinition du matériau de surface du "
"[MeshInstance3D]. Pour définir le [Material] associé aux propriétés de "
"redéfinition du matériau de surface du [MeshInstance3D], utilisez plutôt "
"[method MeshInstance3D.set_surface_override_material]."

msgid "Sets a hint to be used for lightmap resolution."
msgstr "Définit un indice à utiliser pour la résolution de la lightmap."

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 ""
"[PackedVector3Array] of vertex normals.\n"
"[b]Note:[/b] The array has to consist of normal vectors, otherwise they will "
"be normalized by the engine, potentially causing visual discrepancies."
msgstr ""
"[PackedVector3Array] des normales des sommets.\n"
"[b]Note :[/b] Le tableau doit être composé de vecteurs normaux, sinon ils "
"seront normalisés par le moteur, causant potentiellement des divergences "
"visuels."

msgid ""
"[PackedFloat32Array] of vertex tangents. Each element in groups of 4 floats, "
"first 3 floats determine the tangent, and the last the binormal direction as "
"-1 or 1."
msgstr ""
"[PackedFloat32Array] des tangentes des sommets. Chaque élément est un groupe "
"de 4 flottants, les 3 premiers déterminent la tangente, et le dernier la "
"direction binormale valant -1 ou 1."

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 ""
"Contains custom color channel 0. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Contient le canal de couleur personnalisé 0. [PackedByteArray] si [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] vaut [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF], ou [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] sinon."

msgid ""
"Contains custom color channel 1. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM1_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Contient le canal de couleur personnalisé 1. [PackedByteArray] si [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] vaut [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF], ou [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] sinon."

msgid ""
"Contains custom color channel 2. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM2_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Contient le canal de couleur personnalisé 2. [PackedByteArray] si [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] vaut [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF], ou [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] sinon."

msgid ""
"Contains custom color channel 3. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM3_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Contient le canal de couleur personnalisé 3. [PackedByteArray] si [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] vaut [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF], ou [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] sinon."

msgid ""
"[PackedFloat32Array] or [PackedInt32Array] of bone indices. Contains either 4 "
"or 8 numbers per vertex depending on the presence of the [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS] flag."
msgstr ""
"[PackedFloat32Array] ou [PackedInt32Array] des indices d'os. Contient soit 4 "
"soit 8 nombres par sommet selon la présence du drapeau [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS]."

msgid ""
"[PackedFloat32Array] or [PackedFloat64Array] of bone weights in the range "
"[code]0.0[/code] to [code]1.0[/code] (inclusive). Contains either 4 or 8 "
"numbers per vertex depending on the presence of the [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS] flag."
msgstr ""
"[PackedFloat32Array] ou [PackedFloat64Array] de poids d'os dans l'intervalle "
"[code]0.0[/code] à [code]1.0[/code] (inclusifs). Contient soit 4 soit 8 "
"nombres par sommet selon la présence du drapeau [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS]."

msgid ""
"[PackedInt32Array] of integers used as indices referencing vertices, colors, "
"normals, tangents, and textures. All of those arrays must have the same "
"number of elements as the vertex array. No index can be beyond the vertex "
"array size. When this index array is present, it puts the function into "
"\"index mode,\" where the index selects the [i]i[/i]'th vertex, normal, "
"tangent, color, UV, etc. This means if you want to have different normals or "
"colors along an edge, you have to duplicate the vertices.\n"
"For triangles, the index array is interpreted as triples, referring to the "
"vertices of each triangle. For lines, the index array is in pairs indicating "
"the start and end of each line."
msgstr ""
"[PackedInt32Array] d'entiers utilisés comme indices référençant des sommets, "
"des couleurs, des normales, des tangentes et des textures. Tous ces tableaux "
"doivent avoir le même nombre d'éléments que le tableau des sommets. Aucun "
"index ne peut dépasser la taille du tableau des sommets. Lorsque ce tableau "
"d'index est présent, il met la fonction en \"mode index\", où l'index "
"sélectionne le [i]i-ième[/i] sommet, normale, tangente, couleur, UV, etc. "
"Cela signifie que si vous voulez avoir des normales ou des couleurs "
"différentes le long d'une arête, vous devez dupliquer les sommets.\n"
"Pour les triangles, le tableau d'index est interprété comme des triplets, "
"référençant les sommets de chaque triangle. Pour les lignes, le tableau "
"d'index contient des paires indiquant le point de début et de fin de chaque "
"ligne."

msgid "Represents the size of the [enum ArrayType] enum."
msgstr "Représente la taille de l’enum [enum ArrayType]."

msgid ""
"Indicates this custom channel contains unsigned normalized byte colors from 0 "
"to 1, encoded as [PackedByteArray]."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des octets "
"normalisés non signés de 0 à 1, encodés en tant que [PackedByteArray]."

msgid ""
"Indicates this custom channel contains signed normalized byte colors from -1 "
"to 1, encoded as [PackedByteArray]."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des octets "
"normalisés de -1 à 1, encodés en tant que [PackedByteArray]."

msgid ""
"Indicates this custom channel contains half precision float colors, encoded "
"as [PackedByteArray]. Only red and green channels are used."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des flottants en "
"demi-précision, encodés en tant que [PackedByteArray]. Seuls les canaux rouge "
"et vert sont utilisés."

msgid ""
"Indicates this custom channel contains half precision float colors, encoded "
"as [PackedByteArray]."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des flottants en "
"demi-précision, encodés en tant que [PackedByteArray]."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]. Only the red channel is used."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des flottants "
"complets, dans un [PackedFloat32Array]. Seul le canal rouge est utilisé."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]. Only red and green channels are used."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des flottants "
"complets, dans un [PackedFloat32Array]. Seul les canaux rouge et vert sont "
"utilisés."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]. Only red, green and blue channels are used."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des flottants "
"complets, dans un [PackedFloat32Array]. Seul les canaux rouge, vert et bleu "
"sont utilisés."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]."
msgstr ""
"Indique que ce canal personnalisé contient des couleurs sur des flottants "
"complets, dans un [PackedFloat32Array]."

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 ""
"Le tableau du maillage contient des sommets. Tous les maillages nécessitent "
"un tableau de sommets donc ce tableau devrait toujours être présent."

msgid "Mesh array contains normals."
msgstr "Le tableau du maillage contient des normales."

msgid "Mesh array contains tangents."
msgstr "Le tableau du maillage contient des tangentes."

msgid "Mesh array contains colors."
msgstr "Le tableau du maillage contient des couleurs."

msgid "Mesh array contains UVs."
msgstr "Le tableau du maillage contient des UVs."

msgid "Mesh array contains second UV."
msgstr "Le tableau du maillage contient des UV secondaires."

msgid "Mesh array contains custom channel index 0."
msgstr "Le tableau du maillage contient un canal personnalisé d'index 0."

msgid "Mesh array contains custom channel index 1."
msgstr "Le tableau du maillage contient un canal personnalisé d'index 1."

msgid "Mesh array contains custom channel index 2."
msgstr "Le tableau du maillage contient un canal personnalisé d'index 2."

msgid "Mesh array contains custom channel index 3."
msgstr "Le tableau du maillage contient un canal personnalisé d'index 3."

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 ""
"Flag used to mark that the mesh data will use [code]GL_DYNAMIC_DRAW[/code] on "
"GLES. Unused on Vulkan."
msgstr ""
"Drapeau utilisé pour marquer que les données du maillage utiliseront "
"[code]GL_DYNAMIC_DRAW[/code] sur GLES. Inutilisé sur Vulkan."

msgid "Flag used to mark that the mesh intentionally contains no vertex array."
msgstr ""
"Drapeau utilisé pour marquer que le maillage ne contient intentionnellement "
"aucun tableau de sommets."

msgid "Blend shapes are normalized."
msgstr "Les blend shapes sont normalisées."

msgid "Blend shapes are relative to base weight."
msgstr "Les blend shapes sont relatives au poids de base."

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 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 "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 "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 first item with the given name, or [code]-1[/code] if no item is "
"found."
msgstr ""
"Renvoie le premier élément avec le nom donné, ou [code]-1[/code] si aucun "
"élément n'est trouvé."

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 item's shadow casting mode."
msgstr "Renvoie le mode de projection des ombres 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 ""
"When running in the editor, returns a generated item preview (a 3D rendering "
"in isometric perspective). When used in a running project, returns the "
"manually-defined item preview which can be set using [method "
"set_item_preview]. Returns an empty [Texture2D] if no preview was manually "
"set in a running project."
msgstr ""
"Lors de l'exécution dans l'éditeur, renvoie l'aperçu généré d'un élément (un "
"rendu 3D en perspective isométrique). Lorsqu'utilisée dans un projet en cours "
"d'exécution, renvoie l'aperçu défini manuellement de l'élément qui peut être "
"défini en utilisant [method set_item_preview]. Renvoie une [Texture2D] vide "
"si aucun aperçu n'a été défini manuellement dans un projet en cours "
"d'exécution."

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 item's shadow casting mode to [param shadow_casting_setting]."
msgstr ""
"Définit le mode de projection des ombres de l'élément à [param "
"shadow_casting_setting]."

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 ""
"[MethodTweener] is similar to a combination of [CallbackTweener] and "
"[PropertyTweener]. It calls a method providing an interpolated value as a "
"parameter. See [method Tween.tween_method] 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_method] is the only correct way to create "
"[MethodTweener]. Any [MethodTweener] created manually will not function "
"correctly."
msgstr ""
"[MethodTweener] est similaire à une combinaison de [CallbackTweener] et de "
"[PropertyTweener]. Il appelle une méthode en fournissant une valeur "
"interpolée comme paramètre. Voir [method Tween.tween_method] pour plus "
"d'informations d'utilisation.\n"
"Le tweener se terminera automatiquement si l'objet cible du callback est "
"libéré.\n"
"[b]Note :[/b] [method Tween.tween_method] est le seul moyen correct de créer "
"un [MethodTweener]. Tout [MethodTweener] créé manuellement ne fonctionnera "
"pas correctement."

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 ""
"Sets the type of used easing from [enum Tween.EaseType]. If not set, the "
"default easing is used from the [Tween] that contains this Tweener."
msgstr ""
"Définit le type de comportement utilisé pour [enum Tween.EaseType]. Si non "
"défini, le comportement par défaut sera celui utilisé dans le [Tween] qui "
"contient ce Tweener."

msgid ""
"Sets the type of used transition from [enum Tween.TransitionType]. If not "
"set, the default transition is used from the [Tween] that contains this "
"Tweener."
msgstr ""
"Définit le type de transition utilisée pour [enum Tween.TransitionType]. Si "
"non défini, la transition par défaut sera celle utilisée dans le [Tween] qui "
"contient ce Tweener."

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 ""
"An internal editor class intended for keeping the data of unrecognized "
"resources."
msgstr ""
"Une classe d'éditeur interne destinée à conserver les données des ressources "
"non reconnues."

msgid ""
"This is an internal editor class intended for keeping data of resources 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 resources unless you know what you are doing. "
"Existing properties on a missing resource 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 "
"d'un type inconnu (ce type a probablement été fourni par une extension qui "
"n'est plus chargée). Elle ne peut pas être manuellement instanciée ou placée "
"dans une scène.\n"
"[b]Attention :[/b] Ignorez les ressources manquantes à moins que vous ne "
"sachiez ce que vous faites. Les propriétés existantes sur une ressource "
"manquante 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 resource was supposed to be (see [method "
"Object.get_class])."
msgstr ""
"Le nom de la classe prévue pour cette ressource (voir [method "
"Object.get_class])."

msgid ""
"If set to [code]true[/code], allows new properties to be added on top of the "
"existing ones with [method Object.set]."
msgstr ""
"Si défini à [code]true[/code] autorise l'ajout de nouvelles propriétés par-"
"dessus les propriétés existantes avec [method Object.set]."

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 ""
"Called when the audio speaker mode used for recording the audio is requested "
"by the engine. This can affect the number of output channels in the resulting "
"audio file/stream. Defaults to [constant AudioServer.SPEAKER_MODE_STEREO] if "
"[method _get_audio_speaker_mode] is not overridden."
msgstr ""
"Appelée lorsque le mode de haut-parleur audio utilisé pour enregistrer "
"l'audio est demandé par le moteur. Cela peut affecter le nombre de canaux de "
"sortie dans le fichier/flux audio résultant. Vaut par défaut [constant "
"AudioServer.SPEAKER_MODE_STEREO] si [method _get_audio_speaker_mode] n'est "
"pas redéfini."

msgid ""
"Called when the engine determines whether this [MovieWriter] is able to "
"handle the file at [param path]. Must return [code]true[/code] if this "
"[MovieWriter] is able to handle the given file path, [code]false[/code] "
"otherwise. Typically, [method _handles_file] is overridden as follows to "
"allow the user to record a file at any path with a given file extension:\n"
"[codeblock]\n"
"func _handles_file(path):\n"
"\t# Allows specifying an output file with a `.mkv` file extension (case-"
"insensitive),\n"
"\t# either in the Project Settings or with the `--write-movie <path>` command "
"line argument.\n"
"\treturn path.get_extension().to_lower() == \"mkv\"\n"
"[/codeblock]"
msgstr ""
"Appelée lorsque le moteur détermine si ce [MovieWriter] est capable de gérer "
"le fichier au chemin [param path]. Doit renvoyer [code]true[/code] si ce "
"[MovieWriter] est capable de gérer le chemin de fichier donné, [code]false[/"
"code] sinon. Habituellement, [method _handles_file] est redéfini comme suit "
"pour permettre à l'utilisateur d'enregistrer un fichier à n'importe quel "
"chemin avec une extension de fichier donnée :\n"
"[codeblock]\n"
"func _handles_file(path):\n"
"\t# Permet de spécifier un fichier de sortie avec une extension `.mkv` "
"(insensible à la casse),\n"
"\t# soit dans les paramètres du projet, soit avec l'argument de ligne de "
"commande `--write-movie <path>`.\n"
"\treturn path.get_extension().to_lower() == \"mkv\"\n"
"[/codeblock]"

msgid ""
"Provides high-performance drawing of a mesh multiple times using GPU "
"instancing."
msgstr ""
"Fournit du dessin haute performance d'un maillage plusieurs fois en utilisant "
"l’instanciation par le GPU."

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 visibility axis-aligned bounding box in local space."
msgstr ""
"Renvoie la boîte délimitante de visibilité alignée sur les axes, dans "
"l'espace local."

msgid "Gets a specific instance's color multiplier."
msgstr "Obtient le multiplicateur de couleur d'une instance spécifique."

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 [Transform3D] of a specific instance."
msgstr "Renvoie la [Transform3D] d'une instance spécifique."

msgid "Returns the [Transform2D] of a specific instance."
msgstr "Renvoie la [Transform2D] de l'instance spécifiée."

msgid ""
"When using [i]physics interpolation[/i], this function allows you to prevent "
"interpolation on an instance in the current physics tick.\n"
"This allows you to move instances instantaneously, and should usually be used "
"when initially placing an instance such as a bullet to prevent graphical "
"glitches."
msgstr ""
"Lorsque de l'utilisation de l'[i]interpolation de la physique[/i], cette "
"fonction vous permet d'empêcher l'interpolation sur une instance dans le tic "
"de physique actuel.\n"
"Cela vous permet de déplacer des instances instantanément, et devrait "
"généralement être utilisé lors de la mise en place initiale d'une instance "
"telle qu'une balle pour empêcher des problèmes graphiques."

msgid ""
"Sets the color of a specific instance by [i]multiplying[/i] the mesh's "
"existing vertex colors. This allows for different color tinting per "
"instance.\n"
"[b]Note:[/b] Each component is stored in 32 bits in the Forward+ and Mobile "
"rendering methods, but is packed into 16 bits in the Compatibility rendering "
"method.\n"
"For the color to take effect, ensure that [member use_colors] is [code]true[/"
"code] on the [MultiMesh] and [member "
"BaseMaterial3D.vertex_color_use_as_albedo] is [code]true[/code] on the "
"material. If you intend to set an absolute color instead of tinting, make "
"sure the material's albedo color is set to pure white ([code]Color(1, 1, 1)[/"
"code])."
msgstr ""
"Définit la couleur d'une instance spécifique en [i]multipliant[/i] les "
"couleurs des sommets existants du maillage. Cela permet d'avoir une teinte de "
"couleur différente par instance.\n"
"[b]Note :[/b] Chaque composante est stockée sur 32 bits dans les méthodes de "
"rendu Forward+ et Mobile, mais est compactée sur 16 bits dans la méthode de "
"rendu Compatiblité.\n"
"Pour que la couleur soit modifiée, assurez-vous que [member use_colors] "
"vaille [code]true[/code] sur le [MultiMesh] et que [member "
"BaseMaterial3D.vertex_color_use_as_albedo] vaille [code]true[/code] dans le "
"matériau. Si vous avez l'intention de définir une couleur absolue au lieu de "
"teinter, assurez-vous que la couleur d'albedo du matériau soit définie à un "
"blanc pur ([code]Color(1, 1, 1)[/code])."

msgid ""
"Sets custom data for a specific instance. [param custom_data] is a [Color] "
"type only to contain 4 floating-point numbers.\n"
"[b]Note:[/b] Each number is stored in 32 bits in the Forward+ and Mobile "
"rendering methods, but is packed into 16 bits in the Compatibility rendering "
"method.\n"
"For the custom data to be used, ensure that [member use_custom_data] is "
"[code]true[/code].\n"
"This custom instance data has to be manually accessed in your custom shader "
"using [code]INSTANCE_CUSTOM[/code]."
msgstr ""
"Définit des données personnalisées pour une instance spécifique. [param "
"custom_data] est un type [Color] qui contient seulement 4 nombres flottants.\n"
"[b]Note :[/b] Chaque composante est stockée sur 32 bits dans les méthodes de "
"rendu Forward+ et Mobile, mais est compactée sur 16 bits dans la méthode de "
"rendu Compatiblité.\n"
"Pour que les données personnalisées soient utilisées, assurez-vous que "
"[member use_custom_data] vaille [code]true[/code].\n"
"Ces données d'instance personnalisées doivent être accédées manuellement dans "
"votre shader personnalisé en utilisant [code]INSTANCE_CUSTOM[/code]."

msgid "Sets the [Transform3D] for a specific instance."
msgstr "Définit la [Transform3D] pour une instance spécifique."

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 "Array containing each [Color] used by all instances of this mesh."
msgstr ""
"Tableau contenant chaque [Color] utilisée par toutes les instances de ce "
"maillage."

msgid ""
"Custom AABB for this MultiMesh resource. Setting this manually prevents "
"costly runtime AABB recalculations."
msgstr ""
"AABB personnalisée pour cette ressource MultiMesh. Définir ceci manuellement "
"empêche des calculs coûteux d'AABB durant l'exécution."

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 ""
"Array containing each custom data value used by all instances of this mesh, "
"as a [PackedColorArray]."
msgstr ""
"Tableau contenant chaque valeur de données personnalisées utilisées par "
"toutes les instances de ce maillage, en tant que [PackedColorArray]."

msgid ""
"Number of instances that will get drawn. This clears and (re)sizes the "
"buffers. Setting data format or flags afterwards will have no effect.\n"
"By default, all instances are drawn but you can limit this with [member "
"visible_instance_count]."
msgstr ""
"Nombre d'instances qui seront dessinées. Cela videra et re-dimensionnera les "
"buffers. Définir le format des données ou les drapeaux après ceci n'aura "
"aucun effet.\n"
"Par défaut, toutes les instantes sont dessinées mais vous pouvez limiter cela "
"avec [member visible_instance_count]."

msgid ""
"[Mesh] resource to be instanced.\n"
"The looks of the individual instances can be modified using [method "
"set_instance_color] and [method set_instance_custom_data]."
msgstr ""
"Ressource [Mesh] à instancier.\n"
"Les apparences des instances individuelles peuvent être modifiées en "
"utilisant [method set_instance_color] et [method set_instance_custom_data]."

msgid ""
"Choose whether to use an interpolation method that favors speed or quality.\n"
"When using low physics tick rates (typically below 20) or high rates of "
"object rotation, you may get better results from the high quality setting.\n"
"[b]Note:[/b] Fast quality does not equate to low quality. Except in the "
"special cases mentioned above, the quality should be comparable to high "
"quality."
msgstr ""
"Choisissez si vous utilisez une méthode d'interpolation qui favorise la "
"vitesse ou la qualité.\n"
"Lors de l'utilisation de faibles vitesses de tics de physique (généralement "
"inférieur à 20) ou de vitesses élevées de rotation d'objets, vous pouvez "
"obtenir de meilleurs résultats à partir du réglage en haute qualité.\n"
"[b]Note: [/b] Une qualité rapide n'équivaut pas à une qualité basse. Sauf "
"dans les cas spéciaux mentionnés ci-dessus, la qualité devrait être "
"comparable à la haute qualité."

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 ""
"Array containing each [Transform3D] value used by all instances of this mesh, "
"as a [PackedVector3Array]. Each transform is divided into 4 [Vector3] values "
"corresponding to the transforms' [code]x[/code], [code]y[/code], [code]z[/"
"code], and [code]origin[/code]."
msgstr ""
"Tableau contenant chaque valeur de [Transform3D] utilisées par toutes les "
"instances de ce maillage, en tant que [PackedVector3Array]. Chaque "
"transformation est divisée en 4 valeurs [Vector3] correspondant aux valeurs "
"[code]x[/code], [code]y[/code], [code]z[/code], et [code]origin[/code] de la "
"transformation."

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 color data (see [method "
"set_instance_color]). 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], le [MultiMesh] utilisera des données de couleur (voir "
"[method set_instance_color]). 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 ""
"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 de l'utilisation de transformations 2D."

msgid "Use this when using 3D transforms."
msgstr "Utiliser ceci de l'utilisation de transformations 3D."

msgid "Node that instances a [MultiMesh] in 2D."
msgstr "Le nœud qui instancie un [MultiMesh] en 2D."

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 ""
"Automatically replicates spawnable nodes from the authority to other "
"multiplayer peers."
msgstr ""
"Réplique automatiquement les nœuds spawnables de l'autorité sur les autres "
"pairs multijoueurs."

msgid ""
"Spawnable scenes can be configured in the editor or through code (see [method "
"add_spawnable_scene]).\n"
"Also supports custom node spawns through [method spawn], calling [member "
"spawn_function] on all peers.\n"
"Internally, [MultiplayerSpawner] uses [method "
"MultiplayerAPI.object_configuration_add] to notify spawns passing the spawned "
"node as the [code]object[/code] and itself as the [code]configuration[/code], "
"and [method MultiplayerAPI.object_configuration_remove] to notify despawns in "
"a similar way."
msgstr ""
"Les scènes spawnables peuvent être configurées dans l'éditeur ou via le code "
"(voir [method add_spawnable_scene]).\n"
"Supporte également le spawn de nœuds personnalisés via [method spawn], en "
"appelant [member spawn_function] sur tous les pairs.\n"
"En interne, [MultiplayerSpawner] utilise [method "
"MultiplayerAPI.object_configuration_add] pour notifier des spawns en passant "
"le nœud spawné dans [code]object[/code] et lui-même dans [code]configuration[/"
"code], et [method MultiplayerAPI.object_configuration_remove] pour notifier "
"des despawns de manière similaire."

msgid ""
"Adds a scene path to spawnable scenes, making it automatically replicated "
"from the multiplayer authority to other peers when added as children of the "
"node pointed by [member spawn_path]."
msgstr ""
"Ajoute un chemin de scène aux scènes spawnables, la rendant automatiquement "
"répliquée de l'autorité multijoueur vers d'autres pairs lorsqu'elle est "
"ajoutée comme enfant du nœud pointé par [member spawn_path]."

msgid ""
"Clears all spawnable scenes. Does not despawn existing instances on remote "
"peers."
msgstr ""
"Efface toutes les scènes spawnables. Ne despawn pas les instances existantes "
"sur les pairs distants."

msgid "Returns the spawnable scene path by index."
msgstr "Renvoie le chemin d'une scène spawnable par index."

msgid "Returns the count of spawnable scene paths."
msgstr "Renvoie le nombre de chemins de scènes spawnables."

msgid ""
"Requests a custom spawn, with [param data] passed to [member spawn_function] "
"on all peers. Returns the locally spawned node instance already inside the "
"scene tree, and added as a child of the node pointed by [member spawn_path].\n"
"[b]Note:[/b] Spawnable scenes are spawned automatically. [method spawn] is "
"only needed for custom spawns."
msgstr ""
"Demande un spawn personnalisé, avec [param data] passée à [member "
"spawn_function] sur tous les pairs. Renvoie l'instance du nœud spawné "
"localement déjà à l'intérieur de l’arborescence de scène, et ajouté en tant "
"qu'enfant du nœud pointé par [member spawn_path].\n"
"[b]Note :[/b] Les scènes spawnables sont générées automatiquement. [method "
"spawn] n'est nécessaire que pour les spawns personnalisés."

msgid ""
"Method called on all peers when a custom [method spawn] is requested by the "
"authority. Will receive the [code]data[/code] parameter, and should return a "
"[Node] that is not in the scene tree.\n"
"[b]Note:[/b] The returned node should [b]not[/b] be added to the scene with "
"[method Node.add_child]. This is done automatically."
msgstr ""
"Méthode appelée sur tous les pairs quand un [method spawn] personnalisé est "
"demandé par l'autorité. Recevra le paramètre [code]data[/code] et devrait "
"renvoyer un [Node] qui n'est pas dans l'arborescence de scène.\n"
"[b]Note :[/b] Le nœud renvoyé ne devrait [b]pas[/b] être ajouté à la scène "
"avec [method Node.add_child]. Ceci est fait automatiquement."

msgid ""
"Maximum number of nodes allowed to be spawned by this spawner. Includes both "
"spawnable scenes and custom spawns.\n"
"When set to [code]0[/code] (the default), there is no limit."
msgstr ""
"Nombre maximal de nœuds autorisés à être spawnés par ce spawner. Comprend des "
"scènes spawnables et des spawns personnalisés.\n"
"Lorsque défini à [code]0[/code] (par défaut), il n'y a pas de limite."

msgid ""
"Path to the spawn root. Spawnable scenes that are added as direct children "
"are replicated to other peers."
msgstr ""
"Chemin vers la racine de spawn. Les scènes spawnables qui sont ajoutées comme "
"enfants directs sont répliquées sur les autres pairs."

msgid ""
"Emitted when a spawnable scene or custom spawn was despawned by the "
"multiplayer authority. Only called on remote peers."
msgstr ""
"Émis lorsqu'une scène spawnable ou un spawn personnalisé a été despawn par "
"l'autorité multijoueur. Seulement appelée sur les pairs distants."

msgid ""
"Emitted when a spawnable scene or custom spawn was spawned by the multiplayer "
"authority. Only called on remote peers."
msgstr ""
"Émis lorsqu'une scène spawnable ou un spawn personnalisé a été spawn par "
"l'autorité multijoueur. Seulement appelée sur les pairs distants."

msgid ""
"Synchronizes properties from the multiplayer authority to the remote peers."
msgstr ""
"Synchronise des propriétés de l'autorité multijoueur vers les pairs distants."

msgid ""
"By default, [MultiplayerSynchronizer] synchronizes configured properties to "
"all peers.\n"
"Visibility can be handled directly with [method set_visibility_for] or as-"
"needed with [method add_visibility_filter] and [method update_visibility].\n"
"[MultiplayerSpawner]s will handle nodes according to visibility of "
"synchronizers as long as the node at [member root_path] was spawned by one.\n"
"Internally, [MultiplayerSynchronizer] uses [method "
"MultiplayerAPI.object_configuration_add] to notify synchronization start "
"passing the [Node] at [member root_path] as the [code]object[/code] and "
"itself as the [code]configuration[/code], and uses [method "
"MultiplayerAPI.object_configuration_remove] to notify synchronization end in "
"a similar way.\n"
"[b]Note:[/b] Synchronization is not supported for [Object] type properties, "
"like [Resource]. Properties that are unique to each peer, like the instance "
"IDs of [Object]s (see [method Object.get_instance_id]) or [RID]s, will also "
"not work in synchronization."
msgstr ""
"Par défaut, [MultiplayerSynchronizer] synchronise les propriétés configurées "
"vers tous les pairs.\n"
"La visibilité peut être gérée directement avec [method set_visibility_for] ou "
"au besoin avec [method add_visibility_filter] et [method update_visibility].\n"
"Les [MultiplayerSpawner]s géreront les nœuds en fonction de la visibilité des "
"synchroniseurs tant que le nœud à [member root_path] ait été spawné par un "
"MultiplayerSpawner..\n"
"En interne, [MultiplayerSynchronizer] utilise [method "
"MultiplayerAPI.object_configuration_add] pour notifier le démarrage de la "
"synchronisation en passant [Node] à [member root_path] dans [code]object[/"
"code] et lui-même dans [code]configuration[/code], et utilise [method "
"MultiplayerAPI.object_configuration_remove] pour notifier la fin de la "
"synchronisation de la même manière.\n"
"[b]Note :[/b] La synchronisation n'est pas supportée pour les propriétés de "
"type [Object], comme [Resource]. Les propriétés qui sont uniques à chaque "
"pair, comme les identifiants d'instance d'[Object]s (voir [method "
"Object.get_instance_id]) ou les [RID]s, ne fonctionneront aussi pas dans la "
"synchronisation."

msgid ""
"Adds a peer visibility filter for this synchronizer.\n"
"[param filter] should take a peer ID [int] and return a [bool]."
msgstr ""
"Ajoute un filtre de visibilité des pairs pour ce synchroniseur.\n"
"[param filter] devrait prendre un identifiant [int] de pair et renvoyer un "
"[bool]."

msgid "Queries the current visibility for peer [param peer]."
msgstr "Demande la visibilité actuelle du pair [param peer]."

msgid "Removes a peer visibility filter from this synchronizer."
msgstr "Retire un filtre de visibilité des pairs de ce synchroniseur."

msgid ""
"Sets the visibility of [param peer] to [param visible]. If [param peer] is "
"[code]0[/code], the value of [member public_visibility] will be updated "
"instead."
msgstr ""
"Définit la visibilité du pair [param peer] à [param visible]. Si [param peer] "
"vaut [code]0[/code], la valeur de [member public_visibility] sera mise à jour "
"à la place."

msgid ""
"Updates the visibility of [param for_peer] according to visibility filters. "
"If [param for_peer] is [code]0[/code] (the default), all peers' visibilties "
"are updated."
msgstr ""
"Met à jour la visibilité de [param for_peer] selon les filtres de visibilité. "
"Si [param for_peer] vaut [code]0[/code] (par défaut), toutes les visibilités "
"des pairs sont mises à jour."

msgid ""
"Time interval between delta synchronizations. Used when the replication is "
"set to [constant SceneReplicationConfig.REPLICATION_MODE_ON_CHANGE]. If set "
"to [code]0.0[/code] (the default), delta synchronizations happen every "
"network process frame."
msgstr ""
"Intervalle de temps entre les synchronisations delta. Utilisé lorsque la "
"réplication est définie à [constant "
"SceneReplicationConfig.REPLICATION_MODE_ON_CHANGE]. Si défini à [code]0.0[/"
"code] (la valeur par défaut), les synchronisations delta se produisent à "
"chaque trame de traitement réseau."

msgid ""
"Whether synchronization should be visible to all peers by default. See "
"[method set_visibility_for] and [method add_visibility_filter] for ways of "
"configuring fine-grained visibility options."
msgstr ""
"Indique si la synchronisation devrait être visible par défaut pour tous les "
"pairs. Voir [method set_visibility_for] et [method add_visibility_filter] "
"pour des moyens de configurer des options de visibilité plus détaillées."

msgid "Resource containing which properties to synchronize."
msgstr "Ressource contenant les propriétés à synchroniser."

msgid ""
"Time interval between synchronizations. Used when the replication is set to "
"[constant SceneReplicationConfig.REPLICATION_MODE_ALWAYS]. If set to "
"[code]0.0[/code] (the default), synchronizations happen every network process "
"frame."
msgstr ""
"Intervalle de temps entre les synchronisations. Utilisé lorsque la "
"réplication est définie à [constant "
"SceneReplicationConfig.REPLICATION_MODE_ALWAYS]. Si défini à [code]0.0[/code] "
"(la valeur par défaut), les synchronisations se produisent à chaque trame de "
"traitement réseau."

msgid ""
"Node path that replicated properties are relative to.\n"
"If [member root_path] was spawned by a [MultiplayerSpawner], the node will be "
"also be spawned and despawned based on this synchronizer visibility options."
msgstr ""
"Chemin du nœud auquel les propriétés répliquées sont relatives.\n"
"Si [member root_path] a été spawné par un [MultiplayerSpawner], le nœud sera "
"également spawné et despawné en fonction des options de visibilité de ce "
"synchroniseur."

msgid "Specifies when visibility filters are updated."
msgstr "Spécifie quand les filtres de visibilité sont mis à jour."

msgid ""
"Emitted when a new delta synchronization state is received by this "
"synchronizer after the properties have been updated."
msgstr ""
"Émis quand un nouvel état de synchronisation delta est reçu par ce "
"synchroniseur après que les propriétés aient été mises à jour."

msgid ""
"Emitted when a new synchronization state is received by this synchronizer "
"after the properties have been updated."
msgstr ""
"Émis quand un nouvel état de synchronisation est reçu par ce synchroniseur "
"après que les propriétés aient été mises à jour."

msgid ""
"Emitted when visibility of [param for_peer] is updated. See [method "
"update_visibility]."
msgstr ""
"Émis quand la visibilité du pair [param for_peer] est mise à jour. Voir "
"[method update_visibility]."

msgid ""
"Visibility filters are updated during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Les filtres de visibilité sont mis à jour pendant les trames de traitement "
"(voir [constant Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Visibility filters are updated during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Les filtres de visibilité sont mis à jour pendant les trames de physique "
"(voir [constant Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"Visibility filters are not updated automatically, and must be updated "
"manually by calling [method update_visibility]."
msgstr ""
"Les filtres de visibilité ne sont pas mis à jour automatiquement et doivent "
"être mis à jour manuellement en appelant [method update_visibility]."

msgid "A binary [Semaphore] for synchronization of multiple [Thread]s."
msgstr "Un [Semaphore] binaire pour la synchronisation de plusieurs [Thread]s."

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 ""
"Tries locking this [Mutex], but does not block. Returns [code]true[/code] on "
"success, [code]false[/code] otherwise.\n"
"[b]Note:[/b] This function returns [code]true[/code] if the thread already "
"has ownership of the mutex."
msgstr ""
"Essaie de verrouiller ce [Mutex], mais ne le bloque pas. Renvoie [code]true[/"
"code] en cas de succès, [code]false[/code] sinon.\n"
"[b]Note :[/b] Cette fonction renvoie [code]true[/code] si le thread possède "
"déjà le 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, étant donné un numéro de couche [param layer_number] 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, étant donné un numéro de couche [param layer_number] 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 length of the currently calculated path. The returned value is "
"[code]0.0[/code], if the path is still calculating or no calculation has been "
"requested yet."
msgstr ""
"Renvoie la longueur du chemin actuellement calculé. La valeur renvoyée vaut "
"[code]0.0[/code], si le chemin est encore en calcul ou si aucun calcul n'a "
"pour l'instant été demandé."

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], étant donné un numéro de couche [param "
"layer_number] 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], étant donné un numéro de couche [param "
"layer_number] 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 maximum allowed length of the returned path in world units. A path will "
"be clipped when going over this length."
msgstr ""
"La longueur maximale autorisée du chemin renvoyé en unités globales. Un "
"chemin sera coupé s'il dépasse cette longueur."

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 ""
"A link between two positions on [NavigationRegion2D]s that agents can be "
"routed through."
msgstr ""
"Un lien entre deux positions sur des [NavigationRegion2D]s que des agents "
"peuvent rejoindre."

msgid ""
"A link between two positions on [NavigationRegion2D]s that agents can be "
"routed through. These positions can be on the same [NavigationRegion2D] or on "
"two different ones. Links are useful to express navigation methods other than "
"traveling along the surface of the navigation polygon, such as ziplines, "
"teleporters, or gaps that can be jumped across."
msgstr ""
"Un lien entre deux positions sur des [NavigationRegion2D]s que des agents "
"peuvent traverser. Ces positions peuvent être sur la même "
"[NavigationRegion2D] ou sur deux régions différentes. Les liens sont utiles "
"pour exprimer des méthodes de navigation autre que le voyage sur la surface "
"du polygone de navigation, comme des tyroliennes, des téléporteurs ou des "
"trous par-dessus lesquels on peut sauter."

msgid "Using NavigationLinks"
msgstr "Utiliser des NavigationLinks"

msgid ""
"Returns the [member end_position] that is relative to the link as a global "
"position."
msgstr ""
"Renvoie la position de fin [member end_position] qui est relative au lien en "
"tant que position globale."

msgid ""
"Returns the [member start_position] that is relative to the link as a global "
"position."
msgstr ""
"Renvoie la position de début [member start_position] qui est relative au lien "
"en tant que position globale."

msgid "Returns the current navigation map [RID] used by this link."
msgstr ""
"Renvoie le [RID] de la carte de navigation actuelle utilisée par ce lien."

msgid "Returns the [RID] of this link on the [NavigationServer2D]."
msgstr "Renvoie le [RID] de ce lien sur le [NavigationServer2D]."

msgid ""
"Sets the [member end_position] that is relative to the link from a global "
"[param position]."
msgstr ""
"Définit la position de fin [member end_position] qui est relative au lien, "
"depuis une [param position] globale."

msgid ""
"Sets the [member start_position] that is relative to the link from a global "
"[param position]."
msgstr ""
"Définit la position de début [member start_position] qui est relative au "
"lien, depuis une [param position] globale."

msgid ""
"Sets the [RID] of the navigation map this link should use. By default the "
"link will automatically join the [World2D] 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 ce lien devrait utiliser. Par "
"défaut, le lien se joindra automatiquement à la carte de navigation par "
"défaut du [World2D] de sorte que cette fonction ne soit nécessaire que pour "
"redéfinir la carte par défaut."

msgid ""
"Whether this link can be traveled in both directions or only from [member "
"start_position] to [member end_position]."
msgstr ""
"Si ce lien peut être traversé dans les deux sens ou seulement de [member "
"start_position] vers [member end_position]."

msgid ""
"Whether this link is currently active. If [code]false[/code], [method "
"NavigationServer2D.map_get_path] will ignore this link."
msgstr ""
"Si ce lien est actuellement actif. Si [code]false[/code], [method "
"NavigationServer2D.map_get_path] ignorera ce lien."

msgid ""
"Ending position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer2D.map_set_link_connection_radius]."
msgstr ""
"Position de fin du lien.\n"
"Cette position cherchera le polygone le plus proche dans le maillage de "
"navigation auquel s'attacher.\n"
"La distance de recherche du lien est contrôlée par [method "
"NavigationServer2D.map_set_link_connection_radius]."

msgid ""
"When pathfinding enters this link from another regions navigation mesh the "
"[member enter_cost] value is added to the path distance for determining the "
"shortest path."
msgstr ""
"Lorsque la recherche de chemin entre dans ce lien à partir du maillage de "
"navigation d'une autre région, la valeur de [member enter_cost] est ajoutée à "
"la distance du chemin pour déterminer le chemin le plus court."

msgid ""
"A bitfield determining all navigation layers the link belongs to. These "
"navigation layers will be checked when requesting a path with [method "
"NavigationServer2D.map_get_path]."
msgstr ""
"Un bitfield déterminant toutes les couches de navigation auxquelles le lien "
"appartient. Ces couches de navigation seront vérifiées lors de la demande "
"d'un chemin avec [method NavigationServer2D.map_get_path]."

msgid ""
"Starting position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer2D.map_set_link_connection_radius]."
msgstr ""
"Position de départ du lien.\n"
"Cette position cherchera le polygone le plus proche dans le maillage de "
"navigation auquel s'attacher.\n"
"La distance de recherche du lien est contrôlée par [method "
"NavigationServer2D.map_set_link_connection_radius]."

msgid ""
"When pathfinding moves along the link the traveled distance is multiplied "
"with [member travel_cost] for determining the shortest path."
msgstr ""
"Lorsque la recherche de chemin se déplace le long de ce lien, la distance "
"parcourue est multipliée par [member travel_cost] pour déterminer le chemin "
"le plus court."

msgid ""
"A link between two positions on [NavigationRegion3D]s that agents can be "
"routed through."
msgstr ""
"Un lien entre deux positions sur des [NavigationRegion3D]s que des agents "
"peuvent rejoindre."

msgid ""
"A link between two positions on [NavigationRegion3D]s that agents can be "
"routed through. These positions can be on the same [NavigationRegion3D] or on "
"two different ones. Links are useful to express navigation methods other than "
"traveling along the surface of the navigation mesh, such as ziplines, "
"teleporters, or gaps that can be jumped across."
msgstr ""
"Un lien entre deux positions sur des [NavigationRegion3D]s que des agents "
"peuvent rejoindre. Ces positions peuvent être sur la même "
"[NavigationRegion3D] ou sur deux régions différentes. Les liens sont utiles "
"pour exprimer des méthodes de navigation autre que le voyage sur la surface "
"du polygone de navigation, comme des tyroliennes, des téléporteurs ou des "
"trous par-dessus lesquels on peut sauter."

msgid "Returns the [RID] of this link on the [NavigationServer3D]."
msgstr "Renvoie le [RID] de ce lien sur le [NavigationServer3D]."

msgid ""
"Sets the [RID] of the navigation map this link should use. By default the "
"link 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 ce lien devrait utiliser. Par "
"défaut, le lien se joindra automatiquement à la carte de navigation par "
"défaut du [World3D] de sorte que cette fonction ne soit nécessaire que pour "
"redéfinir la carte par défaut."

msgid ""
"Whether this link is currently active. If [code]false[/code], [method "
"NavigationServer3D.map_get_path] will ignore this link."
msgstr ""
"Si ce lien est actuellement actif. Si [code]false[/code], [method "
"NavigationServer3D.map_get_path] ignorera ce lien."

msgid ""
"Ending position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer3D.map_set_link_connection_radius]."
msgstr ""
"Position de fin du lien.\n"
"Cette position cherchera le polygone le plus proche dans le maillage de "
"navigation auquel s'attacher.\n"
"La distance de recherche du lien est contrôlée par [method "
"NavigationServer3D.map_set_link_connection_radius]."

msgid ""
"A bitfield determining all navigation layers the link belongs to. These "
"navigation layers will be checked when requesting a path with [method "
"NavigationServer3D.map_get_path]."
msgstr ""
"Un bitfield déterminant toutes les couches de navigation auxquelles le lien "
"appartient. Ces couches de navigation seront vérifiées lors de la demande "
"d'un chemin avec [method NavigationServer3D.map_get_path]."

msgid ""
"Starting position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer3D.map_set_link_connection_radius]."
msgstr ""
"Position de départ du lien.\n"
"Cette position cherchera le polygone le plus proche dans le maillage de "
"navigation auquel s'attacher.\n"
"La distance de recherche du lien est contrôlée par [method "
"NavigationServer3D.map_set_link_connection_radius]."

msgid "A navigation mesh that defines traversable areas and obstacles."
msgstr ""
"Un maillage de navigation qui définit des zones traversables et des obstacles."

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 internal arrays for vertices and polygon indices."
msgstr "Vide les tableaux internes pour les indices de sommets et de polygones."

msgid ""
"Clears the array of polygons, but it doesn't clear the array of vertices."
msgstr "Vide le tableau des polygones, mais ne vide pas le tableau des sommets."

msgid ""
"Initializes the navigation mesh by setting the vertices and indices according "
"to a [Mesh].\n"
"[b]Note:[/b] The given [param mesh] must be of type [constant "
"Mesh.PRIMITIVE_TRIANGLES] and have an index array."
msgstr ""
"Initialise le maillage de navigation en définissant les sommets et les "
"indices selon un [Mesh].\n"
"[b]Note :[/b] Le [param mesh] donné doit être du type [constant "
"Mesh.PRIMITIVE_TRIANGLES] et avoir un tableau d'indices."

msgid ""
"Returns whether or not the specified layer of the [member "
"geometry_collision_mask] is enabled, given a [param layer_number] between 1 "
"and 32."
msgstr ""
"Renvoie si la couche spécifiée du [member geometry_collision_mask] est "
"activée, étant donné un numéro de couche [param layer_number] entre 1 et 32."

msgid ""
"Returns a [PackedInt32Array] containing the indices of the vertices of a "
"created polygon."
msgstr ""
"Renvoie un [PackedInt32Array] contenant les indices des sommets d'un polygone "
"créé."

msgid "Returns the number of polygons in the navigation mesh."
msgstr "Renvoie le nombre de polygones dans le maillage de navigation."

msgid ""
"Returns a [PackedVector3Array] containing all the vertices being used to "
"create the polygons."
msgstr ""
"Renvoie un [PackedVector3Array] contenant tous les indices utilisés pour "
"créer les polygones."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member geometry_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 "
"geometry_collision_mask], étant donné un numéro de couche [param "
"layer_number] entre 1 et 32."

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 cell height used to rasterize the navigation mesh vertices on the Y axis. "
"Must match with the cell height on the navigation map."
msgstr ""
"La hauteur de cellule utilisée pour rastériser les sommets du maillage de "
"navigation sur l'axe Y. Doit correspondre à la hauteur de cellule sur la "
"carte de navigation."

msgid ""
"The cell size used to rasterize the navigation mesh vertices on the XZ plane. "
"Must match with the cell size on the navigation map."
msgstr ""
"La taille de cellule utilisée pour rastériser les sommets du maillage de "
"navigation sur le plan XZ. Doit correspondre à la taille de cellule sur la "
"carte de navigation."

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 maximum allowed length for contour edges along the border of the mesh. A "
"value of [code]0.0[/code] disables this feature.\n"
"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
"multiple of [member cell_size]."
msgstr ""
"La longueur maximale autorisée pour les arêtes du contour le long de la "
"bordure du maillage. Une valeur de [code]0.0[/code] désactive cette "
"fonctionnalité.\n"
"[b]Note :[/b] Pendant le pré-calcul, cette valeur sera arrondie vers le haut "
"au multiple le plus proche de [member cell_size]."

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 ""
"If [code]true[/code], marks walkable spans as not walkable if the clearance "
"above the span is less than [member agent_height]."
msgstr ""
"Si [code]true[/code], marque les étendues praticables comme non-praticables "
"si l'espace au dessus de l'étendue est inférieur à [member agent_height]."

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 "Determines which type of nodes will be parsed as geometry."
msgstr "Détermine quel type de nœuds seront parsés en tant que géométrie."

msgid "The source of the geometry used when baking."
msgstr "La source de la géométrie utilisée lors du pré-calcul."

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 "Partitioning algorithm for creating the navigation mesh polys."
msgstr ""
"Algorithme de partitionnement pour la création des polygones du maillage de "
"navigation."

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 ""
"Container for parsed source geometry data used in navigation mesh baking."
msgstr ""
"Conteneur pour des données de géométrie source parsées utilisé dans le pré-"
"calcul de maillage de navigation."

msgid "Adds the outline points of a shape as obstructed area."
msgstr "Ajoute les points du contour d'une forme comme zone obstruée."

msgid ""
"Adds a projected obstruction shape to the source geometry. If [param carve] "
"is [code]true[/code] the carved shape will not be affected by additional "
"offsets (e.g. agent radius) of the navigation mesh baking process."
msgstr ""
"Ajoute une forme d'obstruction projetée à la géométrie source. Si [param "
"carve] vaut [code]true[/code], la forme découpée ne sera pas affectée par des "
"déglaces supplémentaires (par exemple le rayon de l'agent) du processus de "
"pré-calcul du maillage de navigation."

msgid "Clears the internal data."
msgstr "Efface les données internes."

msgid ""
"2D obstacle used to affect navigation mesh baking or constrain velocities of "
"avoidance controlled agents."
msgstr ""
"Obstacle 2D utilisé pour affecter le pré-calcul d'un maillage de navigation "
"ou limiter les vitesses des agents utilisant de l'évitement."

msgid "Using NavigationObstacles"
msgstr "Utilisation de NavigationObstacles"

msgid ""
"Returns the [RID] of the navigation map for this NavigationObstacle node. "
"This function returns always the map set on the NavigationObstacle node and "
"not the map of the abstract obstacle on the NavigationServer. If the obstacle "
"map is changed directly with the NavigationServer API the NavigationObstacle "
"node will not be aware of the map change. Use [method set_navigation_map] to "
"change the navigation map for the NavigationObstacle and also update the "
"obstacle on the NavigationServer."
msgstr ""
"Renvoie le [RID] de la carte de navigation pour ce nœud NavigationObstacle. "
"Cette fonction renvoie toujours la carte définie sur le nœud "
"NavigationObstacle et non la carte de l'obstacle abstrait sur le "
"NavigationServer. Si la carte de l'obstacle est changée directement avec "
"l'API de NavigationServer, le nœud NavigationObstacle ne sera pas au courant "
"du changement de carte. Utilisez [method set_navigation_map] pour changer la "
"carte de navigation pour le NavigationObstacle et mettre aussi à jour "
"l'obstacle sur le NavigationServer."

msgid "Returns the [RID] of this obstacle on the [NavigationServer2D]."
msgstr "Renvoie le [RID] de cet obstacle sur le [NavigationServer2D]."

msgid ""
"Sets the [RID] of the navigation map this NavigationObstacle node should use "
"and also updates the [code]obstacle[/code] on the NavigationServer."
msgstr ""
"Définit le [RID] de la carte de navigation que ce nœud NavigationObstacle "
"devrait utiliser et met à jour l'[code]agent[/code] sur le NavigationServer."

msgid ""
"If enabled and parsed in a navigation mesh baking process the obstacle will "
"discard source geometry inside its [member vertices] defined shape."
msgstr ""
"Si activé et parsé dans un pré-calcul de maillage de navigation, l'obstacle "
"supprimera la géométrie source à l'intérieur de sa forme définie par [member "
"vertices]."

msgid "If [code]true[/code] the obstacle affects avoidance using agents."
msgstr ""
"Si [code]true[/code], l'obstacle affecte les agents utilisant de l'évitement."

msgid ""
"A bitfield determining the avoidance layers for this obstacle. Agents with a "
"matching bit on the their avoidance mask will avoid this obstacle."
msgstr ""
"Un bitfield déterminant les couches d'évitement pour cet obstacle. Les agents "
"avec un bit correspondant sur leur masque d'évitement éviteront cet obstacle."

msgid "Sets the avoidance radius for the obstacle."
msgstr "Définit le rayon d'évitement pour l'obstacle."

msgid ""
"3D obstacle used to affect navigation mesh baking or constrain velocities of "
"avoidance controlled agents."
msgstr ""
"Obstacle 3D utilisé pour affecter le pré-calcul d'un maillage de navigation "
"ou limiter les vitesses des agents utilisant de l'évitement."

msgid "Returns the [RID] of this obstacle on the [NavigationServer3D]."
msgstr "Renvoie le [RID] de cet obstacle sur le [NavigationServer3D]."

msgid ""
"If enabled and parsed in a navigation mesh baking process the obstacle will "
"discard source geometry inside its [member vertices] and [member height] "
"defined shape."
msgstr ""
"Si activé et parsé dans un pré-calcul de maillage de navigation, l'obstacle "
"supprimera la géométrie source à l'intérieur de sa forme définie par [member "
"vertices] et [member height]."

msgid ""
"Sets the obstacle height used in 2D avoidance. 2D avoidance using agent's "
"ignore obstacles that are below or above them."
msgstr ""
"Définit la hauteur de l'obstacle utilisée dans l'évitement 2D. Les agents "
"utilisant de l'évitement 2D ignorent les obstacles qui sont en dessous ou au "
"dessus d'eux."

msgid "Provides parameters for 2D navigation path queries."
msgstr "Fournit des paramètres pour des requêtes de chemin de navigation 2D."

msgid ""
"By changing various properties of this object, such as the start and target "
"position, you can configure path queries to the [NavigationServer2D]."
msgstr ""
"En changeant diverses propriétés de cet objet, comme la position de démarrage "
"et cible, vous pouvez configurer des requêtes de chemin au "
"[NavigationServer2D]."

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 "Represents the result of a 2D pathfinding query."
msgstr "Représente le résultat d'une requête de recherche de chemin 2D."

msgid ""
"This class stores the result of a 2D navigation path query from the "
"[NavigationServer2D]."
msgstr ""
"Cette classe stocke le résultat d'une requête de chemin de navigation 2D "
"depuis le [NavigationServer2D]."

msgid ""
"Reset the result object to its initial state. This is useful to reuse the "
"object across multiple queries."
msgstr ""
"Réinitialise l'objet résultat à son état initial. Ceci est utile pour "
"réutiliser l'objet dans plusieurs requêtes."

msgid ""
"The resulting path array from the navigation query. All path array positions "
"are in global coordinates. Without customized query parameters this is the "
"same path as returned by [method NavigationServer2D.map_get_path]."
msgstr ""
"Le tableau du chemin résultant de la requête de navigation. Toutes les "
"positions du tableau du chemin sont dans les coordonnées globales. Sans "
"paramètres de requête personnalisés, il s'agit du même chemin que celui "
"renvoyé par [method NavigationServer2D.map_get_path]."

msgid "Returns the length of the path."
msgstr "Renvoie la longueur du chemin."

msgid ""
"The [code]ObjectID[/code]s of the [Object]s which manage the regions and "
"links each point of the path goes through."
msgstr ""
"Les [code]ObjectID[/code]s des [Object]s qui gèrent les régions et les liens "
"de chaque point que le chemin traverse."

msgid ""
"The [RID]s of the regions and links that each point of the path goes through."
msgstr ""
"Les [RID]s des régions et des liens de chaque point que le chemin traverse."

msgid ""
"The type of navigation primitive (region or link) that each point of the path "
"goes through."
msgstr ""
"Le type de primitive de navigation (région ou lien) que chaque point du "
"chemin traverse."

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 ""
"The resulting path array from the navigation query. All path array positions "
"are in global coordinates. Without customized query parameters this is the "
"same path as returned by [method NavigationServer3D.map_get_path]."
msgstr ""
"Le tableau du chemin résultant de la requête de navigation. Toutes les "
"positions du tableau du chemin sont dans les coordonnées globales. Sans "
"paramètres de requête personnalisés, il s'agit du même chemin que celui "
"renvoyé par [method NavigationServer3D.map_get_path]."

msgid ""
"A 2D navigation mesh that describes a traversable surface for pathfinding."
msgstr ""
"Un maillage de navigation 2D qui décrit une surface traversable pour la "
"recherche de chemin."

msgid "Navigation Polygon 2D Demo"
msgstr "Démo de polygone de navigation 2D"

msgid ""
"Appends a [PackedVector2Array] that contains the vertices of an outline to "
"the internal array that contains all the outlines."
msgstr ""
"Ajoute un [PackedVector2Array] contenant les sommets d'un contour au tableau "
"interne qui contient tous les contours."

msgid ""
"Adds a [PackedVector2Array] that contains the vertices of an outline to the "
"internal array that contains all the outlines at a fixed position."
msgstr ""
"Ajoute un [PackedVector2Array] contenant les sommets d'un contour au tableau "
"interne qui contient tous les contours à une position fixe."

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 the [NavigationMesh] resulting from this navigation polygon. This "
"navigation mesh can be used to update the navigation mesh of a region with "
"the [method NavigationServer3D.region_set_navigation_mesh] API directly."
msgstr ""
"Renvoie le [NavigationMesh] résultant de ce polygone de navigation. Ce "
"maillage de navigation peut être utilisé pour mettre à jour le maillage de "
"navigation d'une région avec l'API [method "
"NavigationServer3D.region_set_navigation_mesh] directement."

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 whether or not the specified layer of the [member "
"parsed_collision_mask] is enabled, given a [param layer_number] between 1 and "
"32."
msgstr ""
"Renvoie si la couche spécifiée du [member parsed_collision_mask] est activée, "
"étant donné un numéro de couche [param layer_number] entre 1 et 32."

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 "Creates polygons from the outlines added in the editor or by script."
msgstr ""
"Crée des polygones depuis les contours ajoutés dans l'éditeur ou par script."

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 ""
"Based on [param value], enables or disables the specified layer in the "
"[member parsed_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 "
"parsed_collision_mask], étant donné un numéro de couche [param layer_number] "
"entre 1 et 32."

msgid ""
"If the baking [Rect2] has an area the navigation mesh baking will be "
"restricted to its enclosing area."
msgstr ""
"Si la [Rect2] de pré-calcul a une aire, le pré-calcul du maillage de "
"navigation sera limité à son aire englobante."

msgid "The position offset applied to the [member baking_rect] [Rect2]."
msgstr "Le décalage de position appliqué au [Rect2] de [member baking_rect]."

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 ""
"Scans nodes in a group and their child nodes recursively for geometry. The "
"group is specified by [member source_geometry_group_name]."
msgstr ""
"Scanne les nœuds dans un groupe et leurs nœuds enfants récursivement pour de "
"la géométrie. Le groupe est spécifié par [member source_geometry_group_name]."

msgid ""
"Uses nodes in a group for geometry. The group is specified by [member "
"source_geometry_group_name]."
msgstr ""
"Utilise des nœuds dans un groupe pour la géométrie. Le groupe est spécifié "
"par [member source_geometry_group_name]."

msgid ""
"A traversable 2D region that [NavigationAgent2D]s can use for pathfinding."
msgstr ""
"Une région 2D traversable que des [NavigationAgent2D]s peuvent utiliser pour "
"leur recherche de chemin."

msgid "Using NavigationRegions"
msgstr "Utilisation de NavigationRegions"

msgid ""
"Bakes the [NavigationPolygon]. If [param on_thread] is set to [code]true[/"
"code] (default), the baking is done on a separate thread."
msgstr ""
"Pré-calcule le [NavigationPolygon]. Si [param on_thread] est défini à "
"[code]true[/code] (par défaut), le pré-calcul est fait sur un thread séparé."

msgid "Returns the current navigation map [RID] used by this region."
msgstr ""
"Renvoie le [RID] de la carte de navigation actuelle utilisée par cette région."

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

msgid "Returns the [RID] of this region on the [NavigationServer2D]."
msgstr "Renvoie le [RID] de cette région sur le [NavigationServer2D]."

msgid ""
"Returns the [RID] of this region on the [NavigationServer2D]. Combined with "
"[method NavigationServer2D.map_get_closest_point_owner] can be used to "
"identify the [NavigationRegion2D] closest to a point on the merged navigation "
"map."
msgstr ""
"Renvoie le [RID] de cette région sur le [NavigationServer2D]. Combiné avec "
"[method NavigationServer2D.map_get_closest_point_owner], cela peut être "
"utilisé pour identifier la [NavigationRegion2D] la plus proche d'un point sur "
"la carte de navigation fusionnée."

msgid ""
"Returns [code]true[/code] when the [NavigationPolygon] is being baked on a "
"background thread."
msgstr ""
"Renvoie [code]true[/code] lorsque le [NavigationPolygon] est en cours de "
"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 [World2D] 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 [World2D] de sorte à ce que cette fonction ne soit nécessaire que "
"pour remplacer la carte par défaut."

msgid "Determines if the [NavigationRegion2D] is enabled or disabled."
msgstr "Détermine si la [NavigationRegion2D] est activée ou désactivée."

msgid ""
"When pathfinding enters this region's navigation mesh from another regions "
"navigation mesh the [member enter_cost] value is added to the path distance "
"for determining the shortest path."
msgstr ""
"Lorsque la recherche de chemin entre dans le maillage de navigation de cette "
"région depuis le maillage de navigation d'une autre région, la valeur [member "
"enter_cost] est ajoutée à la distance du chemin pour déterminer le chemin le "
"plus court."

msgid "The [NavigationPolygon] resource to use."
msgstr "La ressource [NavigationPolygon] à utiliser."

msgid ""
"When pathfinding moves inside this region's navigation mesh the traveled "
"distances are multiplied with [member travel_cost] for determining the "
"shortest path."
msgstr ""
"Lorsque la recherche de chemin se déplace dans le maillage de navigation de "
"cette région, les distances parcourues sont multipliées par [member "
"travel_cost] pour déterminer le chemin le plus court."

msgid "Emitted when a navigation polygon bake operation is completed."
msgstr ""
"Émis lorsqu'une opération de pré-calcul de polygone de navigation est "
"terminée."

msgid ""
"Emitted when the used navigation polygon is replaced or changes to the "
"internals of the current navigation polygon are committed."
msgstr ""
"Émis lorsque le polygone de navigation utilisé est remplacé ou que des "
"modifications aux variables internes du polygone de navigation actuel sont "
"commises."

msgid ""
"A traversable 3D region that [NavigationAgent3D]s can use for pathfinding."
msgstr ""
"Une région 3D traversable que des [NavigationAgent3D]s peuvent utiliser pour "
"leur recherche de chemin."

msgid "Returns the [RID] of this region on the [NavigationServer3D]."
msgstr "Renvoie le [RID] de cette région sur le [NavigationServer3D]."

msgid ""
"Returns the [RID] of this region on the [NavigationServer3D]. Combined with "
"[method NavigationServer3D.map_get_closest_point_owner] can be used to "
"identify the [NavigationRegion3D] closest to a point on the merged navigation "
"map."
msgstr ""
"Renvoie le [RID] de cette région sur le [NavigationServer3D]. Combiné avec "
"[method NavigationServer3D.map_get_closest_point_owner], cela peut être "
"utilisé pour identifier la [NavigationRegion3D] la plus proche d'un point sur "
"la carte de navigation fusionnée."

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 ""
"A control that displays a texture by keeping its corners intact, but tiling "
"its edges and center."
msgstr ""
"Un contrôle qui affiche une texture en gardant ses angles intacts, mais en "
"répétant ses bords et son centre."

msgid ""
"Also known as 9-slice panels, [NinePatchRect] produces clean panels of any "
"size based on a small texture. To do so, it splits the texture in a 3×3 grid. "
"When you scale the node, it tiles the texture's edges horizontally or "
"vertically, tiles the center on both axes, and leaves the corners unchanged."
msgstr ""
"Aussi connu sous le nom de panneaux à 9 tranches (9-slice panels), "
"[NinePatchRect] produit des panneaux propres de toute taille en fonction "
"d'une petite texture. Pour ce faire, il divise la texture en une grille de "
"3×3. Lorsque vous redimensionnez le nœud, il répète les bords de la texture "
"horizontalement ou verticalement, répète le centre sur les deux axes, et "
"laisse les coins inchangés."

msgid "Returns the size of the margin on the specified [enum Side]."
msgstr "Renvoie la taille de la marge sur le côté [enum Side] spécifié."

msgid ""
"Sets the size of the margin on the specified [enum Side] to [param value] "
"pixels."
msgstr ""
"Définit la taille de la marge sur le côté [enum Side] spécifié à [param "
"value] pixels."

msgid "The stretch mode to use for horizontal stretching/tiling."
msgstr ""
"Le mode d'étirement à utiliser pour l'étirement ou la répétition horizontale."

msgid "The stretch mode to use for vertical stretching/tiling."
msgstr ""
"Le mode d'étirement à utiliser pour l'étirement ou la répétition verticale."

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 ""
"Repeats the center texture across the NinePatchRect. This won't cause any "
"visible distortion. The texture must be seamless for this to work without "
"displaying artifacts between edges."
msgstr ""
"Répète la texture du centre sur tout le NinePatchRect. Cela ne provoque "
"aucune distorsion visible. La texture doit être sans raccord pour que cela "
"fonctionne sans afficher d'artefacts entre les bords."

msgid ""
"Repeats the center texture across the NinePatchRect, but will also stretch "
"the texture to make sure each tile is visible in full. This may cause the "
"texture to be distorted, but less than [constant AXIS_STRETCH_MODE_STRETCH]. "
"The texture must be seamless for this to work without displaying artifacts "
"between edges."
msgstr ""
"Répète la texture centrale sur tout le NinePatchRect, mais étirera également "
"la texture pour s'assurer que chaque tuile est visible entièrement. Cela peut "
"causer une distorsion de la texture, mais moins que [constant "
"AXIS_STRETCH_MODE_STRETCH]. La texture doit être sans raccord pour que cela "
"fonctionne sans afficher d'artefacts entre les bords."

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 ""
"Adds a child [param node]. Nodes can have any number of children, but every "
"child must have a unique name. Child nodes are automatically deleted when the "
"parent node is deleted, so an entire scene can be removed by deleting its "
"topmost node.\n"
"If [param force_readable_name] is [code]true[/code], improves the readability "
"of the added [param node]. If not named, the [param node] is renamed to its "
"type, and if it shares [member name] with a sibling, a number is suffixed "
"more appropriately. This operation is very slow. As such, it is recommended "
"leaving this to [code]false[/code], which assigns a dummy name featuring "
"[code]@[/code] in both situations.\n"
"If [param internal] is different than [constant INTERNAL_MODE_DISABLED], the "
"child will be added as internal node. These nodes are ignored by methods like "
"[method get_children], unless their parameter [code]include_internal[/code] "
"is [code]true[/code]. It also prevents these nodes being duplicated with "
"their parent. The intended usage is to hide the internal nodes from the user, "
"so the user won't accidentally delete or modify them. Used by some GUI nodes, "
"e.g. [ColorPicker].\n"
"[b]Note:[/b] If [param node] already has a parent, this method will fail. Use "
"[method remove_child] first to remove [param node] from its current parent. "
"For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var child_node = get_child(0)\n"
"if child_node.get_parent():\n"
"\tchild_node.get_parent().remove_child(child_node)\n"
"add_child(child_node)\n"
"[/gdscript]\n"
"[csharp]\n"
"Node childNode = GetChild(0);\n"
"if (childNode.GetParent() != null)\n"
"{\n"
"\tchildNode.GetParent().RemoveChild(childNode);\n"
"}\n"
"AddChild(childNode);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you need the child node to be added below a specific node in the list of "
"children, use [method add_sibling] instead of this method.\n"
"[b]Note:[/b] If you want a child to be persisted to a [PackedScene], you must "
"set [member owner] in addition to calling [method add_child]. This is "
"typically relevant for [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]tool scripts[/url] and [url=$DOCS_URL/"
"tutorials/plugins/editor/index.html]editor plugins[/url]. If [method "
"add_child] is called without setting [member owner], the newly added [Node] "
"will not be visible in the scene tree, though it will be visible in the 2D/3D "
"view."
msgstr ""
"Ajoute un nœud enfant [param node]. Les nœuds peuvent avoir n'importe quel "
"nombre d'enfants, mais chaque enfant doit avoir un nom unique. Les nœuds "
"enfants sont automatiquement supprimés lorsque le nœud parent est supprimé, "
"de sorte qu'une scène entière peut être supprimée en supprimant son nœud le "
"plus haut.\n"
"Si [param force_readable_name] vaut [code]true[/code], améliore la lisibilité "
"du [param node] ajouté. S'il n'est pas nommé, le [param node] est renommé à "
"son type, et s'il partage [member name] avec un frère, un nombre est ajouté "
"en suffixe. Cette opération est très lente. Il est donc recommandé de laisser "
"cela à [code]false[/code], ce qui attribue un nom factice comportant [code]@[/"
"code] dans les deux cas.\n"
"Si [param internal] est différent de [constant INTERNAL_MODE_DISABLED], "
"l'enfant sera ajouté comme nœud interne. Ces nœuds sont ignorés par des "
"méthodes comme [method get_children], sauf si leur paramètre "
"[code]include_internal[/code] vaut [code]true[/code]. Cela empêche également "
"que ces nœuds soient dupliqués avec leur parent. L'usage prévu est de cacher "
"les nœuds internes à l'utilisateur, pour que l'utilisateur ne les supprime "
"pas accidentellement ou les modifie. Utilisé par certains nœuds de GUI, par "
"exemple [ColorPicker].\n"
"[b]Note :[/b] Si [param node] a déjà un parent, cette méthode échouera. "
"Utilisez [method remove_child] d'abord pour supprimer [param node] de son "
"parent actuel. Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var noeud_enfant = get_child(0)\n"
"if noeud_enfant.get_parent():\n"
"\tnoeud_enfant.get_parent().remove_child(noeud_enfant)\n"
"add_child(noeud_enfant)\n"
"[/gdscript]\n"
"[csharp]\n"
"Node noeudEnfant = GetChild(0);\n"
"if (noeudEnfant.GetParent() != null)\n"
"{\n"
"\tnoeudEnfant.GetParent().RemoveChild(noeudEnfant);\n"
"}\n"
"AddChild(noeudEnfant);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Si vous avez besoin que le noeud enfant soit ajouté sous un nœud spécifique "
"dans la liste des enfants, utilisez [method add_sibling] au lieu de cette "
"méthode.\n"
"[b]Note :[/b] Si vous voulez qu'un enfant persiste dans une [PackedScene], "
"vous devez définir [member owner] en plus d'appeler [method add_child]. Ceci "
"est généralement pertinent pour les [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]scripts d'outil[/url] et les [url=$DOCS_URL/"
"tutorials/plugins/editor/index.html]plugins éditeur[/url]. Si [method "
"add_child] est appelé sans définir [member owner], le [Node] nouvellement "
"ajouté ne sera pas visible dans l'arborescence de scène, bien qu'il sera "
"visible dans la vue 2D/3D."

msgid ""
"Adds a [param sibling] node to this node's parent, and moves the added "
"sibling right below this node.\n"
"If [param force_readable_name] is [code]true[/code], improves the readability "
"of the added [param sibling]. If not named, the [param sibling] is renamed to "
"its type, and if it shares [member name] with a sibling, a number is suffixed "
"more appropriately. This operation is very slow. As such, it is recommended "
"leaving this to [code]false[/code], which assigns a dummy name featuring "
"[code]@[/code] in both situations.\n"
"Use [method add_child] instead of this method if you don't need the child "
"node to be added below a specific node in the list of children.\n"
"[b]Note:[/b] If this node is internal, the added sibling will be internal too "
"(see [method add_child]'s [code]internal[/code] parameter)."
msgstr ""
"Ajoute un nœud frère [param sibling] au parent de ce nœud, et déplace le "
"frère ajouté juste en dessous de ce nœud.\n"
"Si [param force_readable_name] vaut [code]true[/code], améliore la lisibilité "
"du nom de [param sibling]. S'il n'est pas nommé, [param sibling] est renommé "
"à son type, et s'il partage [member name] avec un frère, un nombre est "
"suffixé de manière plus appropriée. Cette opération est très lente. Il est "
"donc recommandé de laisser cela à [code]false[/code], ce qui attribue un nom "
"factice comportant [code]@[/code] dans les deux cas.\n"
"Utilisez [method add_child] au lieu de cette méthode si vous n'avez pas "
"besoin que le nœud enfant soit ajouté sous un nœud spécifique dans la liste "
"des enfants.\n"
"[b]Note :[/b] Si ce nœud est interne, le frère ajouté sera aussi interne "
"(voir le paramètre [code]internal[/code] de [method add_child])."

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"
"This method works the same as [method Object.tr], with the addition of "
"respecting the [member auto_translate_mode] state.\n"
"If [method Object.can_translate_messages] is [code]false[/code], or no "
"translation is available, this method returns the [param message] without "
"changes. See [method Object.set_message_translation].\n"
"For detailed examples, see [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Internationalizing games[/url]."
msgstr ""
"Traduit un [param message], en utilisant les catalogues de traduction "
"configurés dans les Paramètres du projet. De plus, du contexte [param "
"context] peut être spécifié pour aider à la traduction. Notez que la plupart "
"des nœuds [Control] traduisent automatiquement leurs chaînes, ainsi cette "
"méthode est surtout utile pour les chaînes formatées ou du texte dessiné de "
"manière personnalisée.\n"
"Cette méthode fonctionne de la même manière que [method Object.tr], avec "
"l'ajout du respect de l'état de [member auto_translate_mode].\n"
"Si [method Object.can_translate_messages] vaut [code]false[/code], ou "
"qu'aucune traduction n'est disponible, cette méthode renverra le [param "
"message] sans modifications. Voir [method Object.set_message_translation].\n"
"Pour des exemples détaillés, voir [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Internationaliser des jeux[/url]."

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"
"This method works the same as [method Object.tr_n], with the addition of "
"respecting the [member auto_translate_mode] state.\n"
"If [method Object.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 "
"Object.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 atr]."
msgstr ""
"Traduit un [param message] ou plusieurs messages ([param plural_message]), en "
"utilisant les catalogues de traduction configurés dans les Paramètres du "
"projet. De plus, du contexte [param context] peut être spécifié pour aider à "
"la traduction.\n"
"Cette méthode fonctionne de la même manière que [method Object.tr_n], avec "
"l'ajout du respect de l'état de [member auto_translate_mode].\n"
"Si [method Object.can_translate_messages] vaut [code]false[/code], ou "
"qu'aucune traduction n'est disponible, cette méthode renverra le [param "
"message] ou [param plural_message] sans modifications. Voir [method "
"Object.set_message_translation].\n"
"[param n] est le nombre, ou la quantité, 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 à l'aide de gettext[/url].\n"
"[b]Note :[/b] Les nombres négatifs et les [float] peuvent ne pas s'appliquer "
"correctement à certains sujets comptables. Il est recommandé de traiter ces "
"cas avec [method atr]."

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 ""
"Returns [code]true[/code] if this node can automatically translate messages "
"depending on the current locale. See [member auto_translate_mode], [method "
"atr], and [method atr_n]."
msgstr ""
"Renvoie [code]true[/code] si ce nœud peut automatiquement traduire des "
"messages en fonction de la langue actuelle. Voir [member "
"auto_translate_mode], [method atr], et [method atr_n]."

msgid ""
"Returns [code]true[/code] if the node can receive processing notifications "
"and input callbacks ([constant NOTIFICATION_PROCESS], [method _input], etc.) "
"from the [SceneTree] and [Viewport]. The returned value depends on [member "
"process_mode]:\n"
"- If set to [constant PROCESS_MODE_PAUSABLE], returns [code]true[/code] when "
"the game is processing, i.e. [member SceneTree.paused] is [code]false[/"
"code];\n"
"- If set to [constant PROCESS_MODE_WHEN_PAUSED], returns [code]true[/code] "
"when the game is paused, i.e. [member SceneTree.paused] is [code]true[/"
"code];\n"
"- If set to [constant PROCESS_MODE_ALWAYS], always returns [code]true[/"
"code];\n"
"- If set to [constant PROCESS_MODE_DISABLED], always returns [code]false[/"
"code];\n"
"- If set to [constant PROCESS_MODE_INHERIT], use the parent node's [member "
"process_mode] to determine the result.\n"
"If the node is not inside the tree, returns [code]false[/code] no matter the "
"value of [member process_mode]."
msgstr ""
"Renvoie [code]true[/code] si le nœud peut recevoir des notifications de "
"traitement et des callbacks d'entrée ([constant NOTIFICATION_PROCESS], "
"[method _input], etc.) du [SceneTree] et d'un [Viewport]. La valeur renvoyée "
"dépend de [member process_mode] :\n"
"- Si défini à [constant PROCESS_MODE_PAUSABLE], renvoie [code]true[/code] "
"lorsque le jeu est en cours de traitement, c-à-d que [member "
"SceneTree.paused] vaut [code]false[/code];\n"
"- Si défini à [constant PROCESS_MODE_WHEN_PAUSED], renvoie [code]true[/code] "
"lorsque le jeu est en pause, c-à-d que [member SceneTree.paused] vaut "
"[code]true[/code];\n"
"- Si défini à [constant PROCESS_MODE_ALWAYS], renvoie toujours [code]true[/"
"code];\n"
"- Si défini à [constant PROCESS_MODE_DISABLED], renvoie toujours [code]false[/"
"code];\n"
"- Si défini à [constant PROCESS_MODE_INHERIT], utilise le [member "
"process_mode] du nœud parent pour déterminer le résultat.\n"
"Si le nœud n'est pas à l'intérieur de l'arborescence, renvoie [code]false[/"
"code], peu importe la valeur de [member process_mode]."

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 ""
"Finds the first descendant of this node whose [member name] matches [param "
"pattern], returning [code]null[/code] if no match is found. The matching is "
"done against node names, [i]not[/i] their paths, through [method "
"String.match]. As such, it is case-sensitive, [code]\"*\"[/code] matches zero "
"or more characters, and [code]\"?\"[/code] matches any single character.\n"
"If [param recursive] is [code]false[/code], only this node's direct children "
"are checked. Nodes are checked in tree order, so this node's first direct "
"child is checked first, then its own direct children, etc., before moving to "
"the second direct child, and so on. Internal children are also included in "
"the search (see [code]internal[/code] parameter in [method add_child]).\n"
"If [param owned] is [code]true[/code], only descendants with a valid [member "
"owner] node are checked.\n"
"[b]Note:[/b] This method can be very slow. Consider storing a reference to "
"the found node in a variable. Alternatively, use [method get_node] with "
"unique names (see [member unique_name_in_owner]).\n"
"[b]Note:[/b] To find all descendant nodes matching a pattern or a class type, "
"see [method find_children]."
msgstr ""
"Trouve le premier descendant de ce nœud dont le nom [member name] correspond "
"à [param pattern], renvoyant [code]null[/code] si aucune correspondance n'est "
"trouvée. La correspondance est faite sur les noms des nœuds, [i]pas[/i] sur "
"leurs chemins, avec [method String.match]. Ainsi, elle est sensible à la "
"casse, [code]\"*\"[/code] correspond à zéro ou plus de caractères, et [code]"
"\"?\"[/code] correspond à tout caractère unique.\n"
"Si [param recursive] vaut [code]false[/code], seuls les enfants directs de ce "
"nœud sont vérifiés. Les nœuds sont contrôlés dans l'ordre de l'arborescence, "
"de sorte que le premier enfant direct de ce nœud est vérifié en premier, puis "
"ses propres enfants directs, etc., avant de passer au deuxième enfant direct, "
"etc. Les enfants internes sont également inclus dans la recherche (voir le "
"paramètre [code]internal[/code] dans [method add_child]).\n"
"Si [param owned] vaut [code]true[/code], seuls les descendants ayant un nœud "
"[member owner] valide sont vérifiés.\n"
"[b]Note :[/b] Cette méthode peut être très lente. Envisagez de stocker une "
"référence au nœud trouvé dans une variable. Alternativement, utilisez [method "
"get_node] avec des noms uniques (voir [member unique_name_in_owner]).\n"
"[b]Note :[/b] Pour trouver tous les nœuds descendants correspondant à un "
"motif ou un type de classe, voir [method find_children]."

msgid ""
"Finds all descendants of this node whose names match [param pattern], "
"returning an empty [Array] if no match is found. The matching is done against "
"node names, [i]not[/i] their paths, through [method String.match]. As such, "
"it is case-sensitive, [code]\"*\"[/code] matches zero or more characters, and "
"[code]\"?\"[/code] matches any single character.\n"
"If [param type] is not empty, only ancestors inheriting from [param type] are "
"included (see [method Object.is_class]).\n"
"If [param recursive] is [code]false[/code], only this node's direct children "
"are checked. Nodes are checked in tree order, so this node's first direct "
"child is checked first, then its own direct children, etc., before moving to "
"the second direct child, and so on. Internal children are also included in "
"the search (see [code]internal[/code] parameter in [method add_child]).\n"
"If [param owned] is [code]true[/code], only descendants with a valid [member "
"owner] node are checked.\n"
"[b]Note:[/b] This method can be very slow. Consider storing references to the "
"found nodes in a variable.\n"
"[b]Note:[/b] To find a single descendant node matching a pattern, see [method "
"find_child]."
msgstr ""
"Trouve tous les descendants de ce nœud dont le nom [member name] correspond à "
"[param pattern], renvoyant un [Array] vide si aucune correspondance n'est "
"trouvée. La correspondance est faite sur les noms des nœuds, [i]pas[/i] sur "
"leurs chemins, avec [method String.match]. Ainsi, elle est sensible à la "
"casse, [code]\"*\"[/code] correspond à zéro ou plus de caractères, et [code]"
"\"?\"[/code] correspond à tout caractère unique.\n"
"Si [param type] n'est pas vide, seuls les ancêtres héritant de [param type] "
"sont inclus (voir [method Object.is_class]).\n"
"Si [param recursive] vaut [code]false[/code], seuls les enfants directs de ce "
"nœud sont vérifiés. Les nœuds sont contrôlés dans l'ordre de l'arborescence, "
"de sorte que le premier enfant direct de ce nœud est vérifié en premier, puis "
"ses propres enfants directs, etc., avant de passer au deuxième enfant direct, "
"etc. Les enfants internes sont également inclus dans la recherche (voir le "
"paramètre [code]internal[/code] dans [method add_child]).\n"
"Si [param owned] vaut [code]true[/code], seuls les descendants ayant un nœud "
"[member owner] valide sont vérifiés.\n"
"[b]Note :[/b] Cette méthode peut être très lente. Envisagez de stocker une "
"référence aux nœuds trouvés dans une variable.\n"
"[b]Note :[/b] Pour trouver un nœud descendant unique correspondant à un "
"motif, voir [method find_child]."

msgid ""
"Finds the first ancestor of this node whose [member name] matches [param "
"pattern], returning [code]null[/code] if no match is found. The matching is "
"done through [method String.match]. As such, it is case-sensitive, [code]"
"\"*\"[/code] matches zero or more characters, and [code]\"?\"[/code] matches "
"any single character. See also [method find_child] and [method "
"find_children].\n"
"[b]Note:[/b] As this method walks upwards in the scene tree, it can be slow "
"in large, deeply nested nodes. Consider storing a reference to the found node "
"in a variable. Alternatively, use [method get_node] with unique names (see "
"[member unique_name_in_owner])."
msgstr ""
"Trouve le premier ancêtre de ce nœud dont le nom [member name] correspond à "
"[param pattern], renvoyant [code]null[/code] si aucune correspondance n'est "
"trouvée. La correspondance est faite avec [method String.match]. Ainsi, elle "
"est sensible à la casse, [code]\"*\"[/code] correspond à zéro ou plus de "
"caractères, et [code]\"?\"[/code] correspond à tout caractère unique. Voir "
"aussi [method find_child] et [method find_children].\n"
"[b]Note :[/b] Comme cette méthode remonte l'arborescence de scène, elle peut "
"être lente dans des nœuds profondément nichés. Envisagez de stocker une "
"référence au nœud trouvé dans une variable. Alternativement, utilisez [method "
"get_node] avec des noms uniques (voir [member unique_name_in_owner])."

msgid ""
"Returns main accessibility element RID.\n"
"[b]Note:[/b] This method should be called only during accessibility "
"information updates ([constant NOTIFICATION_ACCESSIBILITY_UPDATE])."
msgstr ""
"Renvoie le RID de l'élément d'accessibilité principal.\n"
"[b]Note :[/b] Cette méthode ne devrait être appelée que lors des mises à jour "
"d'information d'accessibilité ([constant NOTIFICATION_ACCESSIBILITY_UPDATE])."

msgid ""
"Fetches a child node by its index. Each child node has an index relative to "
"its siblings (see [method get_index]). The first child is at index 0. "
"Negative values can also be used to start from the end of the list. This "
"method can be used in combination with [method get_child_count] to iterate "
"over this node's children. If no child exists at the given index, this method "
"returns [code]null[/code] and an error is generated.\n"
"If [param include_internal] is [code]false[/code], internal children are "
"ignored (see [method add_child]'s [code]internal[/code] parameter).\n"
"[codeblock]\n"
"# Assuming the following are children of this node, in order:\n"
"# First, Middle, Last.\n"
"\n"
"var a = get_child(0).name  # a is \"First\"\n"
"var b = get_child(1).name  # b is \"Middle\"\n"
"var b = get_child(2).name  # b is \"Last\"\n"
"var c = get_child(-1).name # c is \"Last\"\n"
"[/codeblock]\n"
"[b]Note:[/b] To fetch a node by [NodePath], use [method get_node]."
msgstr ""
"Récupère un nœud enfant par son index. Chaque nœud enfant a un index par "
"rapport à ses frères (voir [method get_index]). Le premier enfant est à "
"l'index 0. Des valeurs négatives peuvent également être utilisées pour "
"commencer à partir de la fin de la liste. Cette méthode peut être utilisée en "
"combinaison avec [method get_child_count] pour itérer sur les enfants de ce "
"nœud. Si aucun enfant n'existe à l'index donné, cette méthode renvoie "
"[code]null[/code] et une erreur est générée.\n"
"Si [param include_internal] vaut [code]false[/code], les enfants internes "
"sont ignorés (voir le paramètre [code]internal[/code] de [method "
"add_child]).\n"
"[codeblock]\n"
"# En supposant ce qui suit représente des enfants de ce nœud, dans l'ordre :\n"
"# Premier, Milieu, Dernier.\n"
"\n"
"var a = get_child(0).name  # a vaut \"Premier\"\n"
"var b = get_child(1).name  # b vaut \"Milieu\"\n"
"var b = get_child(2).name  # b vaut \"Dernier\"\n"
"var c = get_child(-1).name # c vaut \"Dernier\"\n"
"[/codeblock]\n"
"[b]Note :[/b] Pour récupérer un nœud par son [NodePath], utilisez [method "
"get_node]."

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 all children of this node inside an [Array].\n"
"If [param include_internal] is [code]false[/code], excludes internal children "
"from the returned array (see [method add_child]'s [code]internal[/code] "
"parameter)."
msgstr ""
"Renvoie tous les enfants de ce nœud dans un [Array].\n"
"Si [param include_internal] vaut [code]false[/code], exclut les enfants "
"internes du tableau renvoyé (voir le paramètre [code]internal[/code] de "
"[method add_child])."

msgid ""
"Returns an [Array] of group names that the node has been added to.\n"
"[b]Note:[/b] To improve performance, the order of group names is [i]not[/i] "
"guaranteed and may vary between project runs. Therefore, do not rely on the "
"group order.\n"
"[b]Note:[/b] This method may also return some group names starting with an "
"underscore ([code]_[/code]). These are internally used by the engine. To "
"avoid conflicts, do not use custom groups starting with underscores. To "
"exclude internal groups, see the following code snippet:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Stores the node's non-internal groups only (as an array of StringNames).\n"
"var non_internal_groups = []\n"
"for group in get_groups():\n"
"\tif not str(group).begins_with(\"_\"):\n"
"\t\tnon_internal_groups.push_back(group)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Stores the node's non-internal groups only (as a List of StringNames).\n"
"List<string> nonInternalGroups = new List<string>();\n"
"foreach (string group in GetGroups())\n"
"{\n"
"\tif (!group.BeginsWith(\"_\"))\n"
"\t\tnonInternalGroups.Add(group);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un [Array] des noms de groupe auxquels le nœud a été ajouté.\n"
"[b]Note :[/b] Pour améliorer la performance, l'ordre des noms de groupe n'est "
"[i]pas[/i] garanti et peut varier entre les exécutions du projet. Par "
"conséquent, ne comptez pas sur l'ordre des groupes.\n"
"[b]Note :[/b] Cette méthode peut également renvoyer certains noms de groupe "
"commençant par un tiret-bas ([code]_[/code]). Ils sont utilisés en interne "
"par le moteur. Pour éviter les conflits, n'utilisez pas de groupes "
"personnalisés commençant par des tirets-bas. Pour exclure les groupes "
"internes, voir le bout de code suivant :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Stocke les groupes non internes du nœud seulement (en tant que tableau de "
"StringNames).\n"
"var groupes_non_internes = []\n"
"for groupe in get_groups():\n"
"\tif not str(groupe).begins_with(\"_\"):\n"
"\t\tgroupes_non_internes.push_back(groupe)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Stocke les groupes non internes du nœud seulement (en tant que List de "
"StringNames).\n"
"List<string> groupesNonInternes = new List<string>();\n"
"foreach (string groupe in GetGroups())\n"
"{\n"
"\tif (!groupe.BeginsWith(\"_\"))\n"
"\t\tgroupesNonInternes.Add(groupe);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"Fetches a node and its most nested resource as specified by the [NodePath]'s "
"subname. Returns an [Array] of size [code]3[/code] where:\n"
"- Element [code]0[/code] is the [Node], or [code]null[/code] if not found;\n"
"- Element [code]1[/code] is the subname's last nested [Resource], or "
"[code]null[/code] if not found;\n"
"- Element [code]2[/code] is the remaining [NodePath], referring to an "
"existing, non-[Resource] property (see [method Object.get_indexed]).\n"
"[b]Example:[/b] Assume that the child's [member Sprite2D.texture] has been "
"assigned an [AtlasTexture]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = get_node_and_resource(\"Area2D/Sprite2D\")\n"
"print(a[0].name) # Prints Sprite2D\n"
"print(a[1])      # Prints <null>\n"
"print(a[2])      # Prints ^\"\"\n"
"\n"
"var b = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas\")\n"
"print(b[0].name)        # Prints Sprite2D\n"
"print(b[1].get_class()) # Prints AtlasTexture\n"
"print(b[2])             # Prints ^\"\"\n"
"\n"
"var c = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas:region\")\n"
"print(c[0].name)        # Prints Sprite2D\n"
"print(c[1].get_class()) # Prints AtlasTexture\n"
"print(c[2])             # Prints ^\":region\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = GetNodeAndResource(NodePath(\"Area2D/Sprite2D\"));\n"
"GD.Print(a[0].Name); // Prints Sprite2D\n"
"GD.Print(a[1]);      // Prints <null>\n"
"GD.Print(a[2]);      // Prints ^\"\n"
"\n"
"var b = GetNodeAndResource(NodePath(\"Area2D/Sprite2D:texture:atlas\"));\n"
"GD.Print(b[0].name);        // Prints Sprite2D\n"
"GD.Print(b[1].get_class()); // Prints AtlasTexture\n"
"GD.Print(b[2]);             // Prints ^\"\"\n"
"\n"
"var c = GetNodeAndResource(NodePath(\"Area2D/"
"Sprite2D:texture:atlas:region\"));\n"
"GD.Print(c[0].name);        // Prints Sprite2D\n"
"GD.Print(c[1].get_class()); // Prints AtlasTexture\n"
"GD.Print(c[2]);             // Prints ^\":region\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Récupère un nœud et sa ressource la plus imbriquée comme spécifié par le sous-"
"nom du [NodePath]. Renvoie un [Array] de taille [code]3[/code] où :\n"
"- L'élément [code]0[/code] est le [Node], ou [code]null[/code] si non "
"trouvé;\n"
"- L'élément [code]1[/code] est la dernière [Resource] imbriquée du sous-nom, "
"ou [code]null[/code] si non trouvée;\n"
"- L'élément [code]2[/code] est le [NodePath] restant, se référant à une "
"propriété non-[Resource] existante (voir [method Object.get_indexed]).\n"
"[b]Exemple :[/b] Supposons que la [member Sprite2D.texture] de l'enfant a été "
"assignée une [AtlasTexture] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = get_node_and_resource(\"Area2D/Sprite2D\")\n"
"print(a[0].name) # Affiche Sprite2D\n"
"print(a[1])      # Affiche <null>\n"
"print(a[2])      # Affiche ^\"\"\n"
"\n"
"var b = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas\")\n"
"print(b[0].name)        # Affiche Sprite2D\n"
"print(b[1].get_class()) # Affiche AtlasTexture\n"
"print(b[2])             # Affiche ^\"\"\n"
"\n"
"var c = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas:region\")\n"
"print(c[0].name)        # Affiche Sprite2D\n"
"print(c[1].get_class()) # Affiche AtlasTexture\n"
"print(c[2])             # Affiche ^\":region\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = GetNodeAndResource(NodePath(\"Area2D/Sprite2D\"));\n"
"GD.Print(a[0].Name); // Affiche Sprite2D\n"
"GD.Print(a[1]);      // Affiche <null>\n"
"GD.Print(a[2]);      // Affiche ^\"\n"
"\n"
"var b = GetNodeAndResource(NodePath(\"Area2D/Sprite2D:texture:atlas\"));\n"
"GD.Print(b[0].name);        // Affiche Sprite2D\n"
"GD.Print(b[1].get_class()); // Affiche AtlasTexture\n"
"GD.Print(b[2]);             // Affiche ^\"\"\n"
"\n"
"var c = GetNodeAndResource(NodePath(\"Area2D/"
"Sprite2D:texture:atlas:region\"));\n"
"GD.Print(c[0].name);        // Affiche Sprite2D\n"
"GD.Print(c[1].get_class()); // Affiche AtlasTexture\n"
"GD.Print(c[2]);             // Affiche ^\":region\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Fetches a node by [NodePath]. Similar to [method get_node], but does not "
"generate an error if [param path] does not point to a valid node."
msgstr ""
"Récupère un nœud par son [NodePath]. Semblable à [method get_node], mais ne "
"génère pas d'erreur si [param path] ne pointe pas vers un nœud valide."

msgid ""
"Returns a [Dictionary] mapping method names to their RPC configuration "
"defined for this node using [method rpc_config].\n"
"[b]Note:[/b] This method only returns the RPC configuration assigned via "
"[method rpc_config]. See [method Script.get_rpc_config] to retrieve the RPCs "
"defined by the [Script]."
msgstr ""
"Renvoie un [Dictionary] associant des noms de méthodes à leur configuration "
"RPC définie pour ce nœud en utilisant [method rpc_config].\n"
"[b]Note :[/b] Cette méthode ne renvoie que la configuration RPC assignée via "
"[method rpc_config]. Voir [method Script.get_rpc_config] pour récupérer les "
"RPCs définis par le [Script]."

msgid ""
"Returns object IDs of all orphan nodes (nodes outside the [SceneTree]). Used "
"for debugging.\n"
"[b]Note:[/b] [method get_orphan_node_ids] only works in debug builds. When "
"called in a project exported in release mode, [method get_orphan_node_ids] "
"will return an empty array."
msgstr ""
"Renvoie les identifiants d'objet de tous les nœuds orphelins (nœuds en dehors "
"du [SceneTree]). Utilisé pour le débogage.\n"
"[b]Note :[/b] [method get_orphan_node_ids] ne fonctionne que dans les "
"compilations de débogage. Lorsqu'appelé dans un projet exporté en mode "
"release, [method get_orphan_node_ids] renverra un tableau vide."

msgid ""
"Returns this node's parent node, or [code]null[/code] if the node doesn't "
"have a parent."
msgstr ""
"Renvoie le nœud parent de ce nœud, ou [code]null[/code] si le nœud n'a pas de "
"parent."

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 relative [NodePath] from this node to the specified [param node]. "
"Both nodes must be in the same [SceneTree] or scene hierarchy, otherwise this "
"method fails and returns an empty [NodePath].\n"
"If [param use_unique_path] is [code]true[/code], returns the shortest path "
"accounting for this node's unique name (see [member unique_name_in_owner]).\n"
"[b]Note:[/b] If you get a relative path which starts from a unique node, the "
"path may be longer than a normal relative path, due to the addition of the "
"unique node's name."
msgstr ""
"Renvoie le [NodePath] relatif de ce nœud vers le nœud [param node] spécifié. "
"Les deux nœuds doivent être dans le même [SceneTree] ou hiérarchie de scène, "
"sinon cette méthode échoue et renvoie un [NodePath] vide.\n"
"Si [param use_unique_path] vaut [code]true[/code], renvoie le chemin le plus "
"court correspondant au nom unique de ce nœud (voir [member "
"unique_name_in_owner]).\n"
"[b]Note :[/b] Si vous obtenez un chemin relatif qui part d'un nœud unique, le "
"chemin peut être plus long qu'un chemin relatif normal, à cause de l'ajout du "
"nom unique du nœud."

msgid ""
"Returns the time elapsed (in seconds) since the last physics callback. This "
"value is identical to [method _physics_process]'s [code]delta[/code] "
"parameter, and is often consistent at run-time, unless [member "
"Engine.physics_ticks_per_second] is changed. See also [constant "
"NOTIFICATION_PHYSICS_PROCESS].\n"
"[b]Note:[/b] The returned value will be larger than expected if running at a "
"framerate lower than [member Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. This is done to avoid \"spiral of "
"death\" scenarios where performance would plummet due to an ever-increasing "
"number of physics steps per frame. This behavior affects both [method "
"_process] and [method _physics_process]. As a result, avoid using "
"[code]delta[/code] for time measurements in real-world seconds. Use the "
"[Time] singleton's methods for this purpose instead, such as [method "
"Time.get_ticks_usec]."
msgstr ""
"Renvoie le temps écoulé (en secondes) depuis le dernier callback de physique. "
"Cette valeur est identique au paramètre [code]delta[/code] de [method "
"_physics_process], et elle est souvent consistante durant l'exécution, à "
"moins que [member Engine.physics_ticks_per_second] ne soit modifié. Voir "
"aussi [constant NOTIFICATION_PHYSICS_PROCESS].\n"
"[b]Note :[/b] La valeur renvoyée sera plus grande que prévu lors de "
"l'exécution à un framerate inférieur à [member "
"Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. Ceci est fait pour éviter les "
"scénarios de « spirale de la mort » où la performance chuterait en raison "
"d'un nombre en augmentation constante d'étapes de physique par trame. Ce "
"comportement affecte à la fois [method _process] et [method "
"_physics_process]. Par conséquent, évitez d'utiliser [code]delta[/code] pour "
"les mesures de temps en secondes réelles. Utilisez les méthodes du singleton "
"[Time] à cette fin, comme [method Time.get_ticks_usec]."

msgid ""
"Returns the time elapsed (in seconds) since the last process callback. This "
"value is identical to [method _process]'s [code]delta[/code] parameter, and "
"may vary from frame to frame. See also [constant NOTIFICATION_PROCESS].\n"
"[b]Note:[/b] The returned value will be larger than expected if running at a "
"framerate lower than [member Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. This is done to avoid \"spiral of "
"death\" scenarios where performance would plummet due to an ever-increasing "
"number of physics steps per frame. This behavior affects both [method "
"_process] and [method _physics_process]. As a result, avoid using "
"[code]delta[/code] for time measurements in real-world seconds. Use the "
"[Time] singleton's methods for this purpose instead, such as [method "
"Time.get_ticks_usec]."
msgstr ""
"Renvoie le temps écoulé (en secondes) depuis le dernier callback de "
"traitement. Cette valeur est identique au paramètre [code]delta[/code] de "
"[method _process] et peut varier d'une trame à l'autre. Voir aussi [constant "
"NOTIFICATION_PROCESS].\n"
"[b]Note :[/b] La valeur renvoyée sera plus grande que prévu lors de "
"l'exécution à un framerate inférieur à [member "
"Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. Ceci est fait pour éviter les "
"scénarios de « spirale de la mort » où la performance chuterait en raison "
"d'un nombre en augmentation constante d'étapes de physique par trame. Ce "
"comportement affecte à la fois [method _process] et [method "
"_physics_process]. Par conséquent, évitez d'utiliser [code]delta[/code] pour "
"les mesures de temps en secondes réelles. Utilisez les méthodes du singleton "
"[Time] à cette fin, comme [method Time.get_ticks_usec]."

msgid ""
"Returns the [SceneTree] that contains this node. If this node is not inside "
"the tree, generates an error and returns [code]null[/code]. See also [method "
"is_inside_tree]."
msgstr ""
"Renvoie le [SceneTree] qui contient ce nœud. Si ce nœud n'est pas à "
"l'intérieur de l'arborescence, génère une erreur et renvoie [code]null[/"
"code]. Voir aussi [method is_inside_tree]."

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 the node's closest [Viewport] ancestor, if the node is inside the "
"tree. Otherwise, returns [code]null[/code]."
msgstr ""
"Renvoie l'ancêtre [Viewport] le plus proche du nœud, si le nœud est à "
"l'intérieur de l'arborescence. Sinon, renvoie [code]null[/code]."

msgid ""
"Returns the [Window] that contains this node. If the node is in the main "
"window, this is equivalent to getting the root node "
"([code]get_tree().get_root()[/code])."
msgstr ""
"Renvoie la [Window] qui contient ce nœud. Si le nœud est dans la fenêtre "
"principale, cela équivaut à obtenir le nœud racine "
"([code]get_tree().get_root()[/code])."

msgid ""
"Returns [code]true[/code] if the [param path] points to a valid node. See "
"also [method get_node]."
msgstr ""
"Renvoie [code]true[/code] si le chemin [param path] pointe vers un nœud "
"valide. Voir aussi [method get_node]."

msgid ""
"Returns [code]true[/code] if [param path] points to a valid node and its "
"subnames point to a valid [Resource], e.g. [code]Area2D/"
"CollisionShape2D:shape[/code]. Properties that are not [Resource] types (such "
"as nodes or other [Variant] types) are not considered. See also [method "
"get_node_and_resource]."
msgstr ""
"Renvoie [code]true[/code] si le chemin [param path] désigne un nœud valide et "
"que son sous-nom désigne une [Resource] valide, par exemple [code]Area2D/"
"CollisionShape2D:shape[/code]. Les propriétés avec un type qui n'est pas une "
"[Resource] (par exemple les nœuds ou les autres types [Variant]) ne sont pas "
"considérées. Voir aussi [method get_node_and_resource]."

msgid ""
"Returns [code]true[/code] if the given [param node] is a direct or indirect "
"child of this node."
msgstr ""
"Renvoie [code]true[/code] si le nœud [param node] donné est un enfant direct "
"ou indirect de ce nœud."

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 nœud 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 given [param node] occurs later in the scene "
"hierarchy than this node. A node occurring later is usually processed last."
msgstr ""
"Renvoie [code]true[/code] si le nœud [param node] donné apparaît plus tard "
"dans la hiérarchie de la scène que ce nœud. Un nœud survenant plus tard est "
"généralement traité plus tard."

msgid ""
"Returns [code]true[/code] if this node has been added to the given [param "
"group]. See [method add_to_group] and [method remove_from_group]. See also "
"notes in the description, and the [SceneTree]'s group methods."
msgstr ""
"Renvoie [code]true[/code] si ce nœud a été ajouté au groupe [param group] "
"donné. Voir [method add_to_group] et [method remove_from_group]. Voir aussi "
"les notes dans la description, et les méthodes de groupe de [SceneTree]."

msgid ""
"Returns [code]true[/code] if this node is currently inside a [SceneTree]. See "
"also [method get_tree]."
msgstr ""
"Renvoie [code]true[/code] si ce nœud est actuellement dans un [SceneTree]. "
"Voir aussi [method get_tree]."

msgid ""
"Returns [code]true[/code] if the local system is the multiplayer authority of "
"this node."
msgstr ""
"Renvoie [code]true[/code] si le système local est l'autorité multijoueur de "
"ce nœud."

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 interpolation is enabled for this node "
"(see [member physics_interpolation_mode]).\n"
"[b]Note:[/b] Interpolation will only be active if both the flag is set "
"[b]and[/b] physics interpolation is enabled within the [SceneTree]. This can "
"be tested using [method is_physics_interpolated_and_enabled]."
msgstr ""
"Renvoie [code]true[/code] si l'interpolation de la physique est activée pour "
"ce nœud (voir [member physics_interpolation_mode]).\n"
"[b]Note :[/b] L'interpolation ne sera active que si le drapeau est défini "
"[b]et[/b] que l'interpolation de la physique est activée dans [SceneTree]. "
"Ceci peut être testé en utilisant [method "
"is_physics_interpolated_and_enabled]."

msgid ""
"Returns [code]true[/code] if physics interpolation is enabled (see [member "
"physics_interpolation_mode]) [b]and[/b] enabled in the [SceneTree].\n"
"This is a convenience version of [method is_physics_interpolated] that also "
"checks whether physics interpolation is enabled globally.\n"
"See [member SceneTree.physics_interpolation] and [member "
"ProjectSettings.physics/common/physics_interpolation]."
msgstr ""
"Renvoie [code]true[/code] si l'interpolation de la physique est activée (voir "
"[member physics_interpolation_mode]) [b]et[/b] activée dans le [SceneTree].\n"
"Il s'agit d'une version pratique de [method is_physics_interpolated] qui "
"vérifie également si l'interpolation de la physique est activée globalement.\n"
"Voir [member SceneTree.physics_interpolation] et [member "
"ProjectSettings.physics/common/physics_interpolation]."

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 shortcuts (see [method "
"set_process_shortcut_input])."
msgstr ""
"Renvoie [code]true[/code] si le nœud traite des raccourcis (voir [method "
"set_process_shortcut_input])."

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 ""
"Moves [param child_node] to the given index. A node's index is the order "
"among its siblings. If [param to_index] is negative, the index is counted "
"from the end of the list. See also [method get_child] and [method "
"get_index].\n"
"[b]Note:[/b] The processing order of several engine callbacks ([method "
"_ready], [method _process], etc.) and notifications sent through [method "
"propagate_notification] is affected by tree order. [CanvasItem] nodes are "
"also rendered in tree order. See also [member process_priority]."
msgstr ""
"Déplace le nœud enfant [param child_node] vers l'index donné. L'index d'un "
"nœud est l'ordre parmi ses frères. Si [param to_index] est négatif, l'index "
"est compté à partir de la fin de la liste. Voir aussi [method get_child] et "
"[method get_index].\n"
"[b]Note :[/b] L'ordre de traitement de plusieurs callbacks du moteur ([method "
"_ready], [method _process], etc.) et les notifications envoyées à travers "
"[method propagate_notification] sont affectées par l'ordre de l'arbre. Les "
"nœuds [CanvasItem] sont également rendus dans l'ordre de l'arbre. Voir aussi "
"[member process_priority]."

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 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 ""
"Prints the node and its children to the console, recursively. The node does "
"not have to be inside the tree. Similar to [method print_tree], but the "
"graphical representation looks like what is displayed in the editor's 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 ""
"Affiche le nœud et ses enfants dans la console, récursivement. Le nœud ne "
"doit forcément pas être à l'intérieur de l'arborescence. Semblable à [method "
"print_tree], mais la représentation graphique ressemble à ce qui est affiché "
"dans le dock Scène de l'éditeur. Elle est utile pour inspecter les grands "
"arbres.\n"
"Peut afficher, par exemple :\n"
"[codeblock lang=text]\n"
" ┖╴LeJeu\n"
"    ┠╴Menu\n"
"    ┃  ┠╴Etiquette\n"
"    ┃  ┖╴Camera2D\n"
"    ┖╴SplashScreen\n"
"       ┖╴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 ""
"Calls [method Object.notification] with [param what] on this node and all of "
"its children, recursively."
msgstr ""
"Appelle [method Object.notification] avec [param what] sur ce nœud et tous "
"ses enfants, récursivement."

msgid ""
"Queues this node to be deleted at the end of the current frame. When deleted, "
"all of its children are deleted as well, and all references to the node and "
"its children become invalid.\n"
"Unlike with [method Object.free], the node is not deleted instantly, and it "
"can still be accessed before deletion. It is also safe to call [method "
"queue_free] multiple times. Use [method Object.is_queued_for_deletion] to "
"check if the node will be deleted at the end of the frame.\n"
"[b]Note:[/b] The node will only be freed after all other deferred calls are "
"finished. Using this method is not always the same as calling [method "
"Object.free] through [method Object.call_deferred]."
msgstr ""
"Place le nœud dans une file d'attente pour le supprimer à la fin de la trame "
"actuelle. Lorsque supprimé, tous ses nœuds enfants seront supprimés aussi, et "
"toutes les références au nœud et ses enfants deviennent invalides.\n"
"Contrairement à [method Object.free], le nœud n'est pas supprimé "
"instantanément, et il peut encore être accédé avant la suppression. Il est "
"également sûr d'appeler plusieurs fois [method queue_free]. Utilisez [method "
"Object.is_queued_for_deletion] pour vérifier si le nœud sera supprimé à la "
"fin de la trame.\n"
"[b]Note :[/b] Le nœud ne sera libéré qu'après la fin de tous les autres "
"appels différés. Utiliser cette méthode n'est pas toujours identique à "
"l'appel de [method Object.free] à travers [method Object.call_deferred]."

msgid ""
"Removes a child [param node]. The [param node], along with its children, are "
"[b]not[/b] deleted. To delete a node, see [method queue_free].\n"
"[b]Note:[/b] When this node is inside the tree, this method sets the [member "
"owner] of the removed [param node] (or its descendants) to [code]null[/code], "
"if their [member owner] is no longer an ancestor (see [method "
"is_ancestor_of])."
msgstr ""
"Retire un nœud [param node] enfant. Le [param node], ainsi que ses enfants, "
"ne sont [b]pas[/b] supprimés. Pour supprimer un nœud, voir [method "
"queue_free].\n"
"[b]Note :[/b] Lorsque ce nœud se trouve à l'intérieur de l'arborescence, "
"cette méthode définit le [member owner] du [param node] retiré (ou ses "
"descendants) à [code]null[/code], si leur [member owner] n'est plus un "
"ancêtre (voir [method is_ancestor_of])."

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 ""
"Changes the parent of this [Node] to the [param new_parent]. The node needs "
"to already have a parent. The node's [member owner] is preserved if its owner "
"is still reachable from the new location (i.e., the node is still a "
"descendant of the new parent after the operation).\n"
"If [param keep_global_transform] is [code]true[/code], the node's global "
"transform will be preserved if supported. [Node2D], [Node3D] and [Control] "
"support this argument (but [Control] keeps only position)."
msgstr ""
"Change le parent de ce [Node] en [param new_parent]. Le nœud doit déjà avoir "
"un parent. L'[member owner] du nœud est conservé si son propriétaire est "
"toujours accessible depuis le nouvel emplacement (c.-à-d. le nœud est "
"toujours un descendant du nouveau parent après l'opération).\n"
"Si [param keep_global_transform] vaut [code]true[/code], la transformation "
"globale du nœud sera préservée si supporté. [Node2D], [Node3D] et [Control] "
"supportent cet argument (mais [Control] ne garde que la position)."

msgid ""
"Replaces this node by the given [param node]. All children of this node are "
"moved to [param node].\n"
"If [param keep_groups] is [code]true[/code], the [param node] is added to the "
"same groups that the replaced node is in (see [method add_to_group]).\n"
"[b]Warning:[/b] The replaced node is removed from the tree, but it is [b]not[/"
"b] deleted. To prevent memory leaks, store a reference to the node in a "
"variable, or use [method Object.free]."
msgstr ""
"Remplace ce nœud par le nœud [param node] donné. Tous les enfants de ce nœud "
"sont déplacés vers [param node].\n"
"Si [param keep_groups] vaut [code]true[/code], le nœud [param node] est "
"ajouté aux mêmes groupes dans lesquels se trouvait le nœud remplacé (voir "
"[method add_to_group]).\n"
"[b]Attention :[/b] Le nœud remplacé est retiré de l'arbre, mais il n'est "
"[b]pas[/b] supprimé. Pour éviter les fuites de mémoire, stockez une référence "
"au nœud dans une variable, ou utilisez [method Object.free]."

msgid ""
"Requests [method _ready] to be called again the next time the node enters the "
"tree. Does [b]not[/b] immediately call [method _ready].\n"
"[b]Note:[/b] This method only affects the current node. If the node's "
"children also need to request ready, this method needs to be called for each "
"one of them. When the node and its children enter the tree again, the order "
"of [method _ready] callbacks will be the same as normal."
msgstr ""
"Demande à ce que [method _ready] soit appelée à nouveau la prochaine fois que "
"le nœud entre dans l'arborescence. N'appelle [b]pas[/b] immédiatement [method "
"_ready].\n"
"[b]Note :[/b] Cette méthode n'affecte que le nœud actuel. Si les enfants du "
"nœud ont également besoin d'appeler ready, cette méthode doit être appelée "
"pour chacun d'eux. Lorsque le nœud et ses enfants entrent à nouveau dans "
"l'arborescence, l'ordre des callbacks de [method _ready] sera le même "
"qu'habituellement."

msgid ""
"When physics interpolation is active, moving a node to a radically different "
"transform (such as placement within a level) can result in a visible glitch "
"as the object is rendered moving from the old to new position over the "
"physics tick.\n"
"That glitch can be prevented by calling this method, which temporarily "
"disables interpolation until the physics tick is complete.\n"
"The notification [constant NOTIFICATION_RESET_PHYSICS_INTERPOLATION] will be "
"received by the node and all children recursively.\n"
"[b]Note:[/b] This function should be called [b]after[/b] moving the node, "
"rather than before."
msgstr ""
"Lorsque l'interpolation de la physique est activée, déplacer un nœud vers une "
"transformation radicalement différente (comme le placement dans un niveau) "
"peut résulter en un glitch visible car l'objet est rendu se déplaçant de "
"l'ancienne à la nouvelle position pendant la tic de physique.\n"
"Ce glitch peut être empêché en appelant cette méthode, qui désactive "
"temporairement l'interpolation jusqu'à ce que le tic de physique soit fini.\n"
"La notification [constant NOTIFICATION_RESET_PHYSICS_INTERPOLATION] sera "
"reçue par le nœud et tous ses enfants de manière récursive.\n"
"[b]Note :[/b] Cette fonction doit être appelée [b]après[/b] le déplacement du "
"nœud, plutôt qu'avant."

msgid ""
"Changes the RPC configuration for the given [param method]. [param config] "
"should either be [code]null[/code] to disable the feature (as by default), or "
"a [Dictionary] containing the following entries:\n"
"- [code]rpc_mode[/code]: see [enum MultiplayerAPI.RPCMode];\n"
"- [code]transfer_mode[/code]: see [enum MultiplayerPeer.TransferMode];\n"
"- [code]call_local[/code]: if [code]true[/code], the method will also be "
"called locally;\n"
"- [code]channel[/code]: an [int] representing the channel to send the RPC "
"on.\n"
"[b]Note:[/b] In GDScript, this method corresponds to the [annotation "
"@GDScript.@rpc] annotation, with various parameters passed ([code]@rpc(any)[/"
"code], [code]@rpc(authority)[/code]...). See also the [url=$DOCS_URL/"
"tutorials/networking/high_level_multiplayer.html]high-level multiplayer[/url] "
"tutorial."
msgstr ""
"Change la configuration RPC pour la méthode [param method] donnée. [param "
"config] doit valoir soit [code]null[/code] pour désactiver la fonctionnalité "
"(par défaut), soit un [Dictionary] contenant les entrées suivantes :\n"
"- [code]rpc_mode[/code] : voir [enum MultiplayerAPI.RPCMode];\n"
"- [code]transfer_mode[/code] : voir [enum MultiplayerPeer.TransferMode];\n"
"- [code]call_local[/code] : si [code]true[/code], la méthode sera également "
"appelée localement;\n"
"- [code]channel[/code] : un [int] représentant le canal auquel envoyer la "
"RPC.\n"
"[b]Note :[/b] En GDScript, cette méthode correspond à l'annotation "
"[annotation @GDScript.@rpc], avec divers paramètres passés ([code]@rpc(any)[/"
"code], [code]@rpc(authority)[/code]...). Voir aussi le tutoriel "
"[url=$DOCS_URL/tutorials/networking/high_level_multiplayer.html]API "
"multijoueur de haut niveau[/url]."

msgid ""
"Sends a [method rpc] to a specific peer identified by [param peer_id] (see "
"[method MultiplayerPeer.set_target_peer]).\n"
"May return [constant OK] if the call is successful, [constant "
"ERR_INVALID_PARAMETER] if the arguments passed in the [param method] do not "
"match, [constant ERR_UNCONFIGURED] if the node's [member multiplayer] cannot "
"be fetched (such as when the node is not inside the tree), [constant "
"ERR_CONNECTION_ERROR] if [member multiplayer]'s connection is not available."
msgstr ""
"Envoie une [method rpc] à un pair spécifique identifié par [param peer_id] "
"(voir [method MultiplayerPeer.set_target_peer]).\n"
"Peut renvoyer [constant OK] si l'appel est un succès, [constant "
"ERR_INVALID_PARAMETER] si les arguments passés dans [param method] ne "
"correspondent pas, [constant ERR_UNCONFIGURED] si le [member multiplayer] du "
"nœud ne peut être récupéré (comme lorsque le nœudn'est pas dans "
"l'arborescence), [constant ERR_CONNECTION_ERROR] si la connexion de [member "
"multiplayer] n'est pas disponible."

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 ""
"Sets the node's multiplayer authority to the peer with the given peer [param "
"id]. The multiplayer authority is the peer that has authority over the node "
"on the network. Defaults to peer ID 1 (the server). Useful in conjunction "
"with [method rpc_config] and the [MultiplayerAPI].\n"
"If [param recursive] is [code]true[/code], the given peer is recursively set "
"as the authority for all children of this node.\n"
"[b]Warning:[/b] This does [b]not[/b] automatically replicate the new "
"authority to other peers. It is the developer's responsibility to do so. You "
"may replicate the new authority's information using [member "
"MultiplayerSpawner.spawn_function], an RPC, or a [MultiplayerSynchronizer]. "
"Furthermore, the parent's authority does [b]not[/b] propagate to newly added "
"children."
msgstr ""
"Définit l'autorité multijoueur du nœud au pair avec l'identifiant de pair "
"[param id] donné. L'autorité multijoueur est le pair qui a autorité sur le "
"nœud sur le réseau. Vaut par défaut l'identifiant de pair 1 (le serveur). "
"Utile en conjonction avec [method rpc_config] et [MultiplayerAPI].\n"
"Si [param recursive] vaut [code]true[/code], le pair donné est défini de "
"façon récursive comme autorité sur tous les enfants de ce nœud.\n"
"[b]Attention :[/b] Cela ne réplique [b]pas[/b] automatiquement la nouvelle "
"autorité à d'autres pairs. La responsabilité de le faire est sur le "
"développeur. Vous pouvez répliquer les informations de la nouvelle autorité "
"en utilisant [member MultiplayerSpawner.spawn_function], une RPC, ou un "
"[MultiplayerSynchronizer]. De plus, l'autorité du parent ne se propage "
"[b]pas[/b] aux enfants nouvellement ajoutés."

msgid ""
"If set to [code]true[/code], enables physics (fixed framerate) processing. "
"When a node is being processed, it will receive a [constant "
"NOTIFICATION_PHYSICS_PROCESS] at a fixed (usually 60 FPS, see [member "
"Engine.physics_ticks_per_second] to change) interval (and the [method "
"_physics_process] callback will be called if it exists).\n"
"[b]Note:[/b] If [method _physics_process] is overridden, this will be "
"automatically enabled before [method _ready] is called."
msgstr ""
"Si défini à [code]true[/code], active le traitement de la physique (à "
"framerate fixe). Lorsqu'un nœud est traité, il recevra une notification "
"[constant NOTIFICATION_PHYSICS_PROCESS] à un intervalle fixe (généralement 60 "
"FPS, voir [member Engine.physics_ticks_per_second] pour changer) (et le "
"callback [method _physics_process] sera appelé s'il existe).\n"
"[b]Note :[/b] Si [method _physics_process] est redéfinie, cela sera "
"automatiquement activé avant que [method _ready] soit appelée."

msgid ""
"If set to [code]true[/code], enables internal physics for this node. Internal "
"physics processing happens in isolation from the normal [method "
"_physics_process] calls and is used by some nodes internally to guarantee "
"proper functioning even if the node is paused or physics processing is "
"disabled for scripting ([method set_physics_process]).\n"
"[b]Warning:[/b] Built-in nodes rely on internal processing for their internal "
"logic. Disabling it is unsafe and may lead to unexpected behavior. Use this "
"method if you know what you are doing."
msgstr ""
"Si défini à [code]true[/code], active la physique en interne pour ce nœud. Le "
"traitement de la physique en interne se produit séparément des appels normaux "
"de [method _physics_process] et est utilisé par certains nœuds en interne "
"pour garantir le bon fonctionnement même si le nœud est mis ou en pause ou "
"que le traitement de la physique est désactivé pour le scripting ([method "
"set_physics_process]).\n"
"[b]Attention :[/b] Les nœuds intégrés s'appuient sur du traitement interne "
"pour leur logique interne. Désactiver cela est dangereux et peut conduire à "
"un comportement inattendu. Utilisez cette méthode si vous savez ce que vous "
"faites."

msgid ""
"If set to [code]true[/code], enables processing. When a node is being "
"processed, it will receive a [constant NOTIFICATION_PROCESS] on every drawn "
"frame (and the [method _process] callback will be called if it exists).\n"
"[b]Note:[/b] If [method _process] is overridden, this will be automatically "
"enabled before [method _ready] is called.\n"
"[b]Note:[/b] This method only affects the [method _process] callback, i.e. it "
"has no effect on other callbacks like [method _physics_process]. If you want "
"to disable all processing for the node, set [member process_mode] to "
"[constant PROCESS_MODE_DISABLED]."
msgstr ""
"Si défini à [code]true[/code], active le traitement. Lorsqu'un nœud est en "
"cours de traitement, il recevra un [constant NOTIFICATION_PROCESS] à chaque "
"trame dessinée (et le callback [method _process] sera appelé s'il existe).\n"
"[b]Note :[/b] Si [method _process] est redéfinie, cela sera automatiquement "
"activé avant que [method _ready] soit appelée.\n"
"[b]Note :[/b] Cette méthode n'affecte que le callback [method _process], "
"c'est-à-dire qu'elle n'a aucun effet sur d'autres callbacks comme [method "
"_physics_process]. Si vous voulez désactiver tout traitement pour le nœud, "
"définissez [member process_mode] à [constant PROCESS_MODE_DISABLED]."

msgid ""
"If set to [code]true[/code], enables input processing.\n"
"[b]Note:[/b] If [method _input] is overridden, this will be automatically "
"enabled before [method _ready] is called. Input processing is also already "
"enabled for GUI controls, such as [Button] and [TextEdit]."
msgstr ""
"Si défini à [code]true[/code], active le traitement des entrées.\n"
"[b]Note :[/b] Si [method _input] est redéfinie, cela sera automatiquement "
"activé avant que [method _ready] soir appelée. Le traitement des entrées est "
"également déjà activé pour les contrôles de GUI, tels que [Button] et "
"[TextEdit]."

msgid ""
"If set to [code]true[/code], enables internal processing for this node. "
"Internal processing happens in isolation from the normal [method _process] "
"calls and is used by some nodes internally to guarantee proper functioning "
"even if the node is paused or processing is disabled for scripting ([method "
"set_process]).\n"
"[b]Warning:[/b] Built-in nodes rely on internal processing for their internal "
"logic. Disabling it is unsafe and may lead to unexpected behavior. Use this "
"method if you know what you are doing."
msgstr ""
"Si défini à [code]true[/code], active la traitement en interne pour ce nœud. "
"Le traitement en interne se produit séparément des appels normaux de [method "
"_process] et est utilisé par certains nœuds en interne pour garantir un bon "
"fonctionnement même si le nœud est mis ou en pause ou que le traitement est "
"désactivé pour le scripting ([method set_process]).\n"
"[b]Attention :[/b] Les nœuds intégrés s'appuient sur du traitement interne "
"pour leur logique interne. Désactiver cela est dangereux et peut conduire à "
"un comportement inattendu. Utilisez cette méthode si vous savez ce que vous "
"faites."

msgid ""
"If set to [code]true[/code], enables shortcut processing for this node.\n"
"[b]Note:[/b] If [method _shortcut_input] is overridden, this will be "
"automatically enabled before [method _ready] is called."
msgstr ""
"Si défini à [code]true[/code], active le traitement des raccourcis pour ce "
"nœud.\n"
"[b]Note :[/b] Si [method _shortcut_input] est redéfinie, cela sera "
"automatiquement activé avant que [method _ready] soit appelée."

msgid ""
"If set to [code]true[/code], enables unhandled input processing. It enables "
"the node to receive all input that was not previously handled (usually by a "
"[Control]).\n"
"[b]Note:[/b] If [method _unhandled_input] is overridden, this will be "
"automatically enabled before [method _ready] is called. Unhandled input "
"processing is also already enabled for GUI controls, such as [Button] and "
"[TextEdit]."
msgstr ""
"Si défini à [code]true[/code], active le traitement des entrées non gérées. "
"Cela permet au nœud de recevoir toutes les entrées qui n'ont pas été gérées "
"précédemment (généralement par un [Control]).\n"
"[b]Note :[/b] Si [method _unhandled_input] est redéfinie, cela sera "
"automatiquement activé avant que [method _ready] soit appelée. Le traitement "
"des entrées non gérées est généralement déjà activé pour les contrôles GUI "
"tels que [Button] et [TextEdit]."

msgid ""
"If set to [code]true[/code], enables unhandled key input processing.\n"
"[b]Note:[/b] If [method _unhandled_key_input] is overridden, this will be "
"automatically enabled before [method _ready] is called."
msgstr ""
"Si défini à [code]true[/code], active le traitement des entrées de touche non "
"traitées.\n"
"[b]Note :[/b] Si [method _unhandled_key_input] est redéfinie, cela sera "
"automatiquement activé avant que [method _ready] soit appelée."

msgid ""
"If set to [code]true[/code], the node becomes an [InstancePlaceholder] when "
"packed and instantiated from a [PackedScene]. See also [method "
"get_scene_instance_load_placeholder]."
msgstr ""
"Si défini à [code]true[/code], le nœud devient un [InstancePlaceholder] "
"lorsqu'il est compacté et instancié depuis une [PackedScene]. Voir aussi "
"[method get_scene_instance_load_placeholder]."

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 ""
"Makes this node inherit the translation domain from its parent node. If this "
"node has no parent, the main translation domain will be used.\n"
"This is the default behavior for all nodes. Calling [method "
"Object.set_translation_domain] disables this behavior."
msgstr ""
"Fait hériter ce nœud du domaine de traduction de son nœud parent. Si ce nœud "
"n'a pas de parent, le domaine de traduction principal sera utilisé.\n"
"Il s'agit du comportement par défaut pour tous les nœuds. Appeler [method "
"Object.set_translation_domain] désactive ce comportement."

msgid ""
"Refreshes the warnings displayed for this node in the Scene dock. Use [method "
"_get_configuration_warnings] to customize the warning messages to display."
msgstr ""
"Rafraîchit les avertissements affichés pour ce nœud dans le dock Scène. "
"Utilisez [method _get_configuration_warnings] pour personnaliser les messages "
"d'avertissement à afficher."

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 nœud dans le dock Scene de l'éditeur."

msgid ""
"The [MultiplayerAPI] instance associated with this node. See [method "
"SceneTree.get_multiplayer].\n"
"[b]Note:[/b] Renaming the node, or moving it in the tree, will not move the "
"[MultiplayerAPI] to the new path, you will have to update this manually."
msgstr ""
"L'instance [MultiplayerAPI] associée à ce nœud. Voir [method "
"SceneTree.get_multiplayer].\n"
"[b]Note :[/b] Renommer le nœud, ou le déplacer dans l'arborescence, ne "
"déplacera pas le [MultiplayerAPI] au nouveau chemin, vous devrez mettre à "
"jour ceci manuellement."

msgid ""
"The name of the node. This name must be unique among the siblings (other "
"child nodes from the same parent). When set to an existing sibling's name, "
"the node is automatically renamed.\n"
"[b]Note:[/b] When changing the name, the following characters will be "
"replaced with an underscore: ([code].[/code] [code]:[/code] [code]@[/code] "
"[code]/[/code] [code]\"[/code] [code]%[/code]). In particular, the [code]@[/"
"code] character is reserved for auto-generated names. See also [method "
"String.validate_node_name]."
msgstr ""
"Le nom du nœud. Ce nom doit être unique parmi les frères (autres nœuds "
"enfants du même parent). Lorsqu'il est défini au nom d'un frère existant, le "
"nœud est automatiquement renommé.\n"
"[b]Note :[/b] Lors de la modification du nom, les caractères suivants seront "
"remplacés par un tiret-bas : ([code].[/code] [code]:[/code] [code]@[/code] "
"[code]/[/code] [code]\"[/code] [code]%[/code]). En particulier, le caractère "
"[code]@[/code] est réservé aux noms autogénérés. Voir aussi [method "
"String.validate_node_name]."

msgid ""
"The physics interpolation mode to use for this node. Only effective if "
"[member ProjectSettings.physics/common/physics_interpolation] or [member "
"SceneTree.physics_interpolation] is [code]true[/code].\n"
"By default, nodes inherit the physics interpolation mode from their parent. "
"This property can enable or disable physics interpolation individually for "
"each node, regardless of their parents' physics interpolation mode.\n"
"[b]Note:[/b] Some node types like [VehicleWheel3D] have physics interpolation "
"disabled by default, as they rely on their own custom solution.\n"
"[b]Note:[/b] When teleporting a node to a distant position, it's recommended "
"to temporarily disable interpolation with [method "
"Node.reset_physics_interpolation] [i]after[/i] moving the node. This avoids "
"creating a visual streak between the old and new positions."
msgstr ""
"Le mode d'interpolation de la physique à utiliser pour ce nœud. Seulement "
"effectif si [member ProjectSettings.physics/common/physics_interpolation] ou "
"[member SceneTree.physics_interpolation] vaut [code]true[/code].\n"
"Par défaut, les nœuds héritent du mode d'interpolation de la physique de leur "
"parent. Cette propriété peut activer ou désactiver l'interpolation de la "
"physique individuellement pour chaque nœud, indépendamment du mode "
"d'interpolation de la physique de leurs parents.\n"
"[b]Note :[/b] Certains types de nœuds comme [VehicleWheel3D] ont une "
"interpolation de la physique désactivée par défaut, car ils se reposent sur "
"leur propre solution personnalisée.\n"
"[b]Note :[/b] Lors de la téléportation d'un nœud vers une position éloignée, "
"il est recommandé de désactiver temporairement l'interpolation avec [method "
"Node.reset_physics_interpolation] [i]après[/i] le déplacement du nœud. Cela "
"évite de créer un trait visuel entre l'ancienne et la nouvelle position."

msgid ""
"The node's processing behavior. To check if the node can process in its "
"current mode, use [method can_process]."
msgstr ""
"Le comportement de traitement du nœud. Pour vérifier si le nœud peut traiter "
"dans son mode actuel, utilisez [method can_process]."

msgid ""
"Similar to [member process_priority] but for [constant "
"NOTIFICATION_PHYSICS_PROCESS], [method _physics_process], or [constant "
"NOTIFICATION_INTERNAL_PHYSICS_PROCESS]."
msgstr ""
"Similaire à [member process_priority] mais pour [constant "
"NOTIFICATION_PHYSICS_PROCESS], [method _physics_process], ou [constant "
"NOTIFICATION_INTERNAL_PHYSICS_PROCESS]."

msgid ""
"The node's execution order of the process callbacks ([method _process], "
"[constant NOTIFICATION_PROCESS], and [constant "
"NOTIFICATION_INTERNAL_PROCESS]). Nodes whose priority value is [i]lower[/i] "
"call their process callbacks first, regardless of tree order."
msgstr ""
"L'ordre d'exécution du nœud des callbacks de traitement ([method _process], "
"[constant NOTIFICATION_PROCESS] et [constant NOTIFICATION_INTERNAL_PROCESS]). "
"Les nœuds dont la valeur de priorité est [i]plus basse[/i] auront leurs "
"callback de traitement appelés en premier, peu importe l'ordre de "
"l'arborescence."

msgid ""
"Change the process thread group order. Groups with a lesser order will "
"process before groups with a greater order. This is useful when a large "
"amount of nodes process in sub thread and, afterwards, another group wants to "
"collect their result in the main thread, as an example."
msgstr ""
"Change l'ordre du groupe de thread de traitement. Les groupes avec un ordre "
"inférieur traiteront avant les groupes avec un ordre plus élevé. Ceci est "
"utile par exemple lorsqu'une grande quantité de nœuds se traitent dans un "
"sous-thread et, par la suite, un autre groupe veut recueillir leur résultat "
"dans le thread principal."

msgid ""
"Set whether the current thread group will process messages (calls to [method "
"call_deferred_thread_group] on threads), and whether it wants to receive them "
"during regular process or physics process callbacks."
msgstr ""
"Définit si le groupe de thread actuel traitera les messages (appels à [method "
"call_deferred_thread_group] sur les threads), et s'il veut les recevoir lors "
"des callbacks de traitement régulier ou de traitement de la physique."

msgid ""
"The original scene's file path, if the node has been instantiated from a "
"[PackedScene] file. Only scene root nodes contains this."
msgstr ""
"Le chemin de fichier de la scène originale, si le nœud a été instancié à "
"partir d'un fichier [PackedScene]. Seuls les nœuds racine de scène "
"contiennent ceci."

msgid ""
"If [code]true[/code], the node can be accessed from any node sharing the same "
"[member owner] or from the [member owner] itself, with special [code]%Name[/"
"code] syntax in [method get_node].\n"
"[b]Note:[/b] If another node with the same [member owner] shares the same "
"[member name] as this node, the other node will no longer be accessible as "
"unique."
msgstr ""
"Si [code]true[/code], le nœud peut être accessible à partir de n'importe quel "
"nœud partageant le même [member owner] ou de l'[member owner] lui-même, avec "
"la syntaxe spéciale [code]%Nom[/code] dans [method get_node].\n"
"[b]Note :[/b] Si un autre nœud avec le même [member owner] partage le même "
"[member name] que ce nœud, l'autre nœud ne sera plus accessible en tant que "
"nœud unique."

msgid ""
"Emitted when the child [param node] enters the [SceneTree], usually because "
"this node entered the tree (see [signal tree_entered]), or [method add_child] "
"has been called.\n"
"This signal is emitted [i]after[/i] the child node's own [constant "
"NOTIFICATION_ENTER_TREE] and [signal tree_entered]."
msgstr ""
"Émis lorsque le nœud enfant [param node] entre dans le [SceneTree], parce "
"qu'il est entré dans l'arborescence, parce que ce nœud est entré dans "
"l'arborescence (voir [signal tree_entered]), ou que [method add_child] a été "
"appelée.\n"
"Ce signal est émis [i]après[/i] la notification [constant "
"NOTIFICATION_ENTER_TREE] et le signal [signal tree_entered] du nœud enfant."

msgid ""
"Emitted when the child [param node] is about to exit the [SceneTree], usually "
"because this node is exiting the tree (see [signal tree_exiting]), or because "
"the child [param node] is being removed or freed.\n"
"When this signal is received, the child [param node] is still accessible "
"inside the tree. This signal is emitted [i]after[/i] the child node's own "
"[signal tree_exiting] and [constant NOTIFICATION_EXIT_TREE]."
msgstr ""
"Émis lorsque le nœud enfant [param node] va sortir du [SceneTree], parce que "
"ce nœud va sortir de l'arborescence (voir [signal tree_exiting]) ou que "
"[param node] est supprimé ou libéré.\n"
"Lorsque ce signal est reçu, [param node] est toujours accessible à "
"l'intérieur de l'arborescence. Ce signal est émis [i]après[/i] la "
"notification [constant NOTIFICATION_EXIT_TREE] et le signal [signal "
"tree_exiting] du nœud enfant."

msgid ""
"Emitted when the list of children is changed. This happens when child nodes "
"are added, moved or removed."
msgstr ""
"Émis lorsque la liste des enfants est modifiée. Cela se produit lorsque des "
"nœuds enfants sont ajoutés, déplacés ou retirés."

msgid "Emitted when the node's editor description field changed."
msgstr "Émis quand le champ de description du nœud dans l'éditeur a changé."

msgid ""
"Emitted when an attribute of the node that is relevant to the editor is "
"changed. Only emitted in the editor."
msgstr ""
"Émis lorsqu'un attribut du nœud qui est pertinent pour l'éditeur est modifié. "
"Seulement émis dans l'éditeur."

msgid ""
"Emitted when the node is considered ready, after [method _ready] is called."
msgstr ""
"Émis lorsque le nœud est considéré prêt, après que [method _ready] soit "
"appelée."

msgid ""
"Emitted when the node's [member name] is changed, if the node is inside the "
"tree."
msgstr ""
"Émis lorsque le nom [member name] du nœud est changé, si le nœud est à "
"l'intérieur de l'arborescence."

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 after the node exits the tree and is no longer active.\n"
"This signal is emitted [i]after[/i] the related [constant "
"NOTIFICATION_EXIT_TREE] notification."
msgstr ""
"Émis après que le nœud sort de l'arborescence et n'est plus actif.\n"
"Ce signal est émis [i]après[/i] la notification [constant "
"NOTIFICATION_EXIT_TREE] correspondante."

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 nœud 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 enters a [SceneTree]. See [method "
"_enter_tree].\n"
"This notification is received [i]before[/i] the related [signal tree_entered] "
"signal."
msgstr ""
"Notification reçue lorsque le nœud entre dans un [SceneTree]. Voir [method "
"_enter_tree].\n"
"Cette notification est reçue [i]avant[/i] le signal [signal tree_entered] "
"correspondant."

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.\n"
"This notification is sent in reversed order."
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 tree_exiting] "
"correspondant.\n"
"Cette notification est envoyée en ordre inverse."

msgid ""
"This notification is no longer sent by the engine. Use [constant "
"NOTIFICATION_CHILD_ORDER_CHANGED] instead."
msgstr ""
"Cette notification n'est plus envoyée par le moteur. Utilisez plutôt "
"[constant NOTIFICATION_CHILD_ORDER_CHANGED]."

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 node is paused. See [member process_mode]."
msgstr ""
"Notification reçue lorsque le nœud est mis en pause. Voir [member "
"process_mode]."

msgid ""
"Notification received when the node is unpaused. See [member process_mode]."
msgstr ""
"Notification reçue lorsque le nœud est sorti de la pause. Voir [member "
"process_mode]."

msgid ""
"Notification received from the tree every physics frame when [method "
"is_physics_processing] returns [code]true[/code]. See [method "
"_physics_process]."
msgstr ""
"Notification reçue de l’arborescence à chaque trame de physique lorsque "
"[method is_physics_processing] renvoie [code]true[/code]. Voir [method "
"_physics_process]."

msgid ""
"Notification received from the tree every rendered frame when [method "
"is_processing] returns [code]true[/code]. See [method _process]."
msgstr ""
"Notification reçue de l’arborescence à chaque trame rendue lorsque [method "
"is_processing] renvoie [code]true[/code]. Voir [method _process]."

msgid ""
"Notification received when the node is set as a child of another node (see "
"[method add_child] and [method add_sibling]).\n"
"[b]Note:[/b] This does [i]not[/i] mean that the node entered the [SceneTree]."
msgstr ""
"Notification reçue lorsque le nœud est défini comme un enfant d'un autre nœud "
"(voir [method add_child] et [method add_sibling]).\n"
"[b]Note :[/b] Cela ne signifie [i]pas[/i] que le nœud est entré dans le "
"[SceneTree]."

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 [i]only[/i] by the newly instantiated scene root node, "
"when [method PackedScene.instantiate] is completed."
msgstr ""
"Notification reçue [i]seulement[/i] par le nœud racine de la scène "
"nouvellement instanciée, lorsque [method PackedScene.instantiate] est "
"complétée."

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 when the node's [member name] or one of its ancestors' "
"[member name] is changed. This notification is [i]not[/i] received when the "
"node is removed from the [SceneTree]."
msgstr ""
"Notification reçue lorsque le nom [member name] du nœud ou le [member name] "
"d'un de ses ancêtres est modifié. Cette notification n'est [i]pas[/i] reçue "
"lorsque le nœud est retiré du [SceneTree]."

msgid ""
"Notification received when the list of children is changed. This happens when "
"child nodes are added, moved or removed."
msgstr ""
"Notification reçue lorsque la liste des enfants est modifiée. Cela se produit "
"lorsque des nœuds enfants sont ajoutés, déplacés ou retirés."

msgid ""
"Notification received from the tree every rendered frame when [method "
"is_processing_internal] returns [code]true[/code]."
msgstr ""
"Notification reçue de l'arborescence à chaque trame rendue lorsque [method "
"is_processing_internal] renvoie [code]true[/code]."

msgid ""
"Notification received from the tree every physics frame when [method "
"is_physics_processing_internal] returns [code]true[/code]."
msgstr ""
"Notification reçue de l'arborescence à chaque trame rendue lorsque [method "
"is_physics_processing_internal] renvoie [code]true[/code]."

msgid ""
"Notification received when the node enters the tree, just before [constant "
"NOTIFICATION_READY] may be received. Unlike the latter, it is sent every time "
"the node enters tree, not just once."
msgstr ""
"Notification reçue lorsque le nœud entre dans l'arborescence, juste avant que "
"[constant NOTIFICATION_READY] soit reçue. Contrairement à cette dernière, "
"cette notification est envoyée à chaque fois que le nœud entre dans "
"l'arborescence, et pas juste une seule fois."

msgid ""
"Notification received when the node is disabled. See [constant "
"PROCESS_MODE_DISABLED]."
msgstr ""
"Notification reçue lorsque le nœud est désactivé. Voir [constant "
"PROCESS_MODE_DISABLED]."

msgid ""
"Notification received when the node is enabled again after being disabled. "
"See [constant PROCESS_MODE_DISABLED]."
msgstr ""
"Notification reçue lorsque le nœud est activé à nouveau après avoir été "
"désactivé. Voir [constant PROCESS_MODE_DISABLED]."

msgid ""
"Notification received when [method reset_physics_interpolation] is called on "
"the node or its ancestors."
msgstr ""
"Notification reçue lorsque [method reset_physics_interpolation] est appelée "
"sur le nœud ou ses ancêtres."

msgid ""
"Notification received right before the scene with the node is saved in the "
"editor. This notification is only sent in the Godot editor and will not occur "
"in exported projects."
msgstr ""
"Notification reçue juste avant que la scène avec le nœud soit sauvegardée "
"dans l'éditeur. Cette notification n'est envoyée que dans l'éditeur Godot et "
"ne se produira pas dans des projets exportés."

msgid ""
"Notification received right after the scene with the node is saved in the "
"editor. This notification is only sent in the Godot editor and will not occur "
"in exported projects."
msgstr ""
"Notification reçue juste après que la scène avec le nœud soit sauvegardée "
"dans l'éditeur. Cette notification n'est envoyée que dans l'éditeur Godot et "
"ne se produira pas dans des projets exportés."

msgid ""
"Notification received when the mouse enters the window.\n"
"Implemented for embedded windows and on desktop and web platforms."
msgstr ""
"Notification reçue lorsque la souris entre dans la fenêtre.\n"
"Implémenté pour les fenêtres intégrées et sur les plateformes de bureau et "
"web."

msgid ""
"Notification received when the mouse leaves the window.\n"
"Implemented for embedded windows and on desktop and web platforms."
msgstr ""
"Notification reçue lorsque la souris quitte la fenêtre.\n"
"Implémenté pour les fenêtres intégrées et sur les plateformes de bureau et "
"web."

msgid ""
"Notification received from the OS when the node's [Window] ancestor is "
"focused. This may be a change of focus between two windows of the same engine "
"instance, or from the OS desktop or a third-party application to a window of "
"the game (in which case [constant NOTIFICATION_APPLICATION_FOCUS_IN] is also "
"received).\n"
"A [Window] node receives this notification when it is focused."
msgstr ""
"Notification reçue du système d'exploitation lorsque l'ancêtre [Window] du "
"nœud reçoit le focus. Il peut s'agir d'un changement de focus entre deux "
"fenêtres de la même instance du moteur, ou du bureau du système ou d'une "
"application tierce vers une fenêtre du jeu (dans ce cas [constant "
"NOTIFICATION_APPLICATION_FOCUS_IN] est également reçue).\n"
"Un nœud [Window] reçoit cette notification lorsqu'il reçoit le focus."

msgid ""
"Notification received from the OS when the node's [Window] ancestor is "
"defocused. This may be a change of focus between two windows of the same "
"engine instance, or from a window of the game to the OS desktop or a third-"
"party application (in which case [constant "
"NOTIFICATION_APPLICATION_FOCUS_OUT] is also received).\n"
"A [Window] node receives this notification when it is defocused."
msgstr ""
"Notification reçue du système d'exploitation lorsque l'ancêtre [Window] du "
"nœud perd le focus. Il peut s'agir d'un changement de focus entre deux "
"fenêtres de la même instance du moteur, ou d'une fenêtre du jeu vers le "
"bureau du système ou une application tierce (dans ce cas [constant "
"NOTIFICATION_APPLICATION_FOCUS_OUT] est également reçue).\n"
"Un nœud [Window] reçoit cette notification lorsqu'il perd le focus."

msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
"Notification reçue du système d'exploitation lorsqu'une requête de fermeture "
"est envoyée (par exemple, fermer la fenêtre avec un bouton \"Fermer\" ou "
"[kbd]Alt + F4[/kbd]).\n"
"Implémentée sur les plateformes de bureau."

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 resized.\n"
"[b]Note:[/b] Only the resized [Window] node receives this notification, and "
"it's not propagated to the child nodes."
msgstr ""
"Notification reçue lorsque la fenêtre est redimensionnée.\n"
"[b]Note :[/b] Seul le nœud [Window] redimensionné reçoit cette notification, "
"et elle n'est pas propagée aux nœuds enfants."

msgid ""
"Notification received from the OS when the screen's dots per inch (DPI) scale "
"is changed. Only implemented on macOS."
msgstr ""
"Notification reçue de l'OS lorsque l'échelle de points par pouce (DPI) de "
"l'écran est modifiée. Seulement implémentée sur macOS."

msgid ""
"Notification received when the mouse cursor enters the [Viewport]'s visible "
"area, that is not occluded behind other [Control]s or [Window]s, provided its "
"[member Viewport.gui_disable_input] is [code]false[/code] and regardless if "
"it's currently focused or not."
msgstr ""
"Notification reçue lorsque le curseur de la souris pénètre dans la zone "
"visible du [Viewport], qui n'est pas occultée derrière d'autres [Control]s ou "
"[Window]s, pourvu que son [member Viewport.gui_disable_input] vaille "
"[code]false[/code] et peu importe s'il a le focus ou non."

msgid ""
"Notification received when the mouse cursor leaves the [Viewport]'s visible "
"area, that is not occluded behind other [Control]s or [Window]s, provided its "
"[member Viewport.gui_disable_input] is [code]false[/code] and regardless if "
"it's currently focused or not."
msgstr ""
"Notification reçue lorsque le curseur de la souris sort de la zone visible du "
"[Viewport], qui n'est pas occultée derrière d'autres [Control]s ou [Window]s, "
"pourvu que son [member Viewport.gui_disable_input] vaille [code]false[/code] "
"et peu importe s'il a le focus ou non."

msgid "Notification received when the window is moved."
msgstr "Notification reçue lorsque la fenêtre est déplacée."

msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Implemented only on iOS."
msgstr ""
"Notification du système d'exploitation lorsque l'application dépasse sa "
"mémoire allouée.\n"
"Implémentée seulement sur iOS."

msgid ""
"Notification received when translations may have changed. Can be triggered by "
"the user changing the locale, changing [member auto_translate_mode] or when "
"the node enters the scene tree. 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].\n"
"[b]Note:[/b] This notification is received alongside [constant "
"NOTIFICATION_ENTER_TREE], so if you are instantiating a scene, the child "
"nodes will not be initialized yet. You can use it to setup translations 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 "
"is_node_ready].\n"
"[codeblock]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_TRANSLATION_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Wait until ready signal.\n"
"\t\t$Label.text = atr(\"%d Bananas\") % banana_counter\n"
"[/codeblock]"
msgstr ""
"Notification reçue lorsque les traductions ont peut-être changé. Peut être "
"déclenché par l'utilisateur changeant la langue, changeant [member "
"auto_translate_mode] ou lorsque le nœud entre dans l'arborescence de la "
"scène. Peut être utilisé pour répondre aux changements de langue, par exemple "
"pour changer les chaînes de l'interface utilisateur à la volée. Utile pour "
"travailler avec le support des traductions intégré, comme [method "
"Object.tr].\n"
"[b]Note :[/b] Cette notification est reçue avec [constant "
"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 traductions pour ce nœud et les nœuds enfants créés à partir "
"d'un 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 "
"is_node_ready].\n"
"[codeblock]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_TRANSLATION_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Attendre le signal ready.\n"
"\t\t$Label.text = atr(\"%d Bananes\") % banana_counter\n"
"[/codeblock]"

msgid ""
"Notification received from the OS when a request for \"About\" information is "
"sent.\n"
"Implemented only on macOS."
msgstr ""
"Notification reçue de l'OS lorsqu'une demande d'information \"À propos\" est "
"envoyée.\n"
"Implémentée uniquement sur 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 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 ""
"Notification received when an accessibility information update is required."
msgstr ""
"Notification reçue lorsqu'une mise à jour d'information d'accessibilité est "
"requise."

msgid ""
"Notification received when accessibility elements are invalidated. All node "
"accessibility elements are automatically deleted after receiving this "
"message, therefore all existing references to such elements should be "
"discarded."
msgstr ""
"Notification reçue lorsque les éléments d'accessibilité sont invalidés. Tous "
"les éléments d'accessibilité du nœud sont automatiquement supprimés après "
"avoir reçu ce message, donc toutes les références existantes à ces éléments "
"devraient être supprimées."

msgid ""
"Inherits [member process_mode] from the node's parent. This is the default "
"for any newly created node."
msgstr ""
"Hérite le [member process_mode] du parent du nœud. Il s'agit de la valeur par "
"défaut pour tout nœud nouvellement créé."

msgid ""
"Stops processing when [member SceneTree.paused] is [code]true[/code]. This is "
"the inverse of [constant PROCESS_MODE_WHEN_PAUSED], and the default for the "
"root node."
msgstr ""
"Arrête le traitement lorsque [member SceneTree.paused] vaut [code]true[/"
"code]. Il s'agit de l'inverse de [constant PROCESS_MODE_WHEN_PAUSED], et la "
"valeur par défaut pour le nœud racine."

msgid ""
"Process [b]only[/b] when [member SceneTree.paused] is [code]true[/code]. This "
"is the inverse of [constant PROCESS_MODE_PAUSABLE]."
msgstr ""
"Traiter [b]seulement[/b] quand [member SceneTree.paused] vaut [code]true[/"
"code]. Il s'agit de l'inverse de [constant PROCESS_MODE_PAUSABLE]."

msgid ""
"Always process. Keeps processing, ignoring [member SceneTree.paused]. This is "
"the inverse of [constant PROCESS_MODE_DISABLED]."
msgstr ""
"Toujours traiter. Continue à traiter, en ignorant [member SceneTree.paused]. "
"Il s'agit de l'inverse de [constant PROCESS_MODE_DISABLED]."

msgid ""
"Never process. Completely disables processing, ignoring [member "
"SceneTree.paused]. This is the inverse of [constant PROCESS_MODE_ALWAYS]."
msgstr ""
"Ne jamais traiter. Désactive complètement le traitement, ignorant [member "
"SceneTree.paused]. Il s'agit de l'inverse de [constant PROCESS_MODE_ALWAYS]."

msgid ""
"Inherits [member physics_interpolation_mode] from the node's parent. This is "
"the default for any newly created node."
msgstr ""
"Hérite [member physics_interpolation_mode] du parent du nœud. Il s'agit de la "
"valeur par défaut pour tout nœud nouvellement créé."

msgid ""
"Enables physics interpolation for this node and for children set to [constant "
"PHYSICS_INTERPOLATION_MODE_INHERIT]. This is the default for the root node."
msgstr ""
"Active l'interpolation de la physique pour ce nœud et pour les enfants "
"définis à [constant PHYSICS_INTERPOLATION_MODE_INHERIT]. Il s'agit de la "
"valeur par défaut pour le nœud racine."

msgid ""
"Disables physics interpolation for this node and for children set to "
"[constant PHYSICS_INTERPOLATION_MODE_INHERIT]."
msgstr ""
"Désactive l'interpolation de la physique pour ce nœud et pour ses enfants "
"définis à [constant PHYSICS_INTERPOLATION_MODE_INHERIT]."

msgid ""
"Duplicate the node's signal connections that are connected with the [constant "
"Object.CONNECT_PERSIST] flag."
msgstr ""
"Dupliquer les connexions de signal du nœud qui sont connectées avec le "
"drapeau [constant Object.CONNECT_PERSIST]."

msgid "Duplicate the node's groups."
msgstr "Dupliquer les groupes du nœud."

msgid ""
"Duplicate the node's script (also overriding the duplicated children's "
"scripts, if combined with [constant DUPLICATE_USE_INSTANTIATION])."
msgstr ""
"Dupliquer le script du nœud (redéfinit également les scripts des enfants "
"dupliqués, si combiné avec [constant DUPLICATE_USE_INSTANTIATION])."

msgid ""
"Duplicate using [method PackedScene.instantiate]. If the node comes from a "
"scene saved on disk, reuses [method PackedScene.instantiate] as the base for "
"the duplicated node and its children."
msgstr ""
"Dupliquer en utilisant [method PackedScene.instantiate]. Si le nœud vient "
"d'une scène sauvegardée sur le disque, réutilise [method "
"PackedScene.instantiate] comme base pour le nœud dupliqué et ses enfants."

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 ""
"Inherits [member auto_translate_mode] from the node's parent. This is the "
"default for any newly created node."
msgstr ""
"Hérite [member auto_translate_mode] du parent du nœud. Il s'agit de la valeur "
"par défaut pour tout nœud nouvellement créé."

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 [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 ""
"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 "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 nœud. 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 nœud, relative au parent du nœud. 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 "
"nœud 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 nœud 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 nœud).\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 nœud 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'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 "Abstract class to expose editor gizmos for [Node3D]."
msgstr ""
"Classe abstraite pour exposer des manipulateurs dans l'éditeur pour [Node3D]."

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]\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. The bottom-most sub-class will be called "
"first, with subsequent calls ascending the class hierarchy. The call chain "
"will stop on the first class that returns a non-[code]null[/code] value."
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]\n"
"[b]Note :[/b] Contrairement à d'autres méthodes virtuelles, cette méthode est "
"appelée automatiquement pour chaque script qui l'écrase. Cela signifie que la "
"mise en œuvre de base ne doit pas être appelée via [code]super[/code] dans "
"GDScript ou ses équivalents dans d'autres langues. La sous-classe la plus "
"basse sera appelée en premier, avec des appels subséquents ascendant la "
"hiérarchie de classe. La chaîne d'appels s'arrête sur la première classe qui "
"retourne une valeur non-[code]null[/code]."

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 ""
"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]\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. The bottom-most sub-class will be called "
"first, with subsequent calls ascending the class hierarchy. The call chain "
"will stop on the first class that returns [code]true[/code]."
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]\n"
"[b]Note :[/b] Contrairement à d'autres méthodes virtuelles, cette méthode est "
"appelée automatiquement pour chaque script qui l'écrase. Cela signifie que la "
"mise en œuvre de base ne doit pas être appelée via [code]super[/code] dans "
"GDScript ou ses équivalents dans d'autres langues. La sous-classe la plus "
"basse sera appelée en premier, avec des appels subséquents ascendant la "
"hiérarchie de classe. La chaîne d'appels s'arrête sur la première classe qui "
"retourne [code]true[/code]."

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 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 ""
"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 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 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 "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 ""
"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 [MultiplayerPeer] which is always connected and acts as a server."
msgstr ""
"Un [MultiplayerPeer] qui est toujours connecté et agit comme un serveur."

msgid ""
"This is the default [member MultiplayerAPI.multiplayer_peer] for the [member "
"Node.multiplayer]. It mimics the behavior of a server with no peers "
"connected.\n"
"This means that the [SceneTree] will act as the multiplayer authority by "
"default. Calls to [method MultiplayerAPI.is_server] will return [code]true[/"
"code], and calls to [method MultiplayerAPI.get_unique_id] will return "
"[constant MultiplayerPeer.TARGET_PEER_SERVER]."
msgstr ""
"Il s'agit du [member MultiplayerAPI.multiplayer_peer] par défaut pour [member "
"Node.multiplayer]. Il imite le comportement d'un serveur sans pairs "
"connectés.\n"
"Cela signifie que le [SceneTree] agira en tant qu'autorité multijoueur par "
"défaut. Les appels à [method MultiplayerAPI.is_server] renverront [code]true[/"
"code], et les appels à [method MultiplayerAPI.get_unique_id] renverront "
"[constant MultiplayerPeer.TARGET_PEER_SERVER]."

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 d'[OpenXRActionSet]s qui font partie de cette action map."

msgid ""
"Collection of [OpenXRInteractionProfile]s that are part of this action map."
msgstr ""
"Collection d'[OpenXRInteractionProfile]s qui font partie 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 ""
"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 ""
"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 ""
"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 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 "Use [OpenXRExtensionWrapper] instead."
msgstr "Utilisez [OpenXRExtensionWrapper] à la place."

msgid ""
"[OpenXRExtensionWrapperExtension] allows implementing OpenXR extensions with "
"GDExtension. The extension should be registered with [method "
"OpenXRExtensionWrapper.register_extension_wrapper]."
msgstr ""
"[OpenXRExtensionWrapperExtension] permet d'implémenter des extensions OpenXR "
"avec GDExtension. L'extension doit être enregistrée avec [method "
"OpenXRExtensionWrapper.register_extension_wrapper]."

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 "Our OpenXR interface."
msgstr "Notre interface OpenXR."

msgid ""
"The OpenXR interface allows Godot to interact with OpenXR runtimes and make "
"it possible to create XR experiences and games.\n"
"Due to the needs of OpenXR this interface works slightly different than other "
"plugin based XR interfaces. It needs to be initialized when Godot starts. You "
"need to enable OpenXR, settings for this can be found in your games project "
"settings under the XR heading. You do need to mark a viewport for use with XR "
"in order for Godot to know which render result should be output to the "
"headset."
msgstr ""
"L'interface OpenXR permet à Godot d'interagir avec OpenXR et de créer des "
"expériences et des jeux XR.\n"
"En raison des besoins d'OpenXR, cette interface fonctionne légèrement "
"différent des autres plugins d'interfaces XR. Elle doit être initialisée "
"quand Godot démarre. Vous devez activer OpenXR, les paramètres pour cela "
"peuvent être trouvés dans les paramètres du projet de votre jeu sous la "
"rubrique XR. Vous avez besoin de marquer un viewport pour une utilisation XR "
"afin que Godot sache quel résultat de rendu devrait être envoyé vers le "
"casque."

msgid "Setting up XR"
msgstr "Configuration de la XR"

msgid ""
"Returns a list of action sets registered with Godot (loaded from the action "
"map at runtime)."
msgstr ""
"Renvoie une liste d'ensembles d'actions enregistrés avec Godot (chargés à "
"partir de l'action map durant l'exécution)."

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 ""
"If handtracking is enabled, returns flags that inform us of the validity of "
"the tracking data."
msgstr ""
"Si le suivi des mains est activé, renvoie des drapeaux qui nous informent de "
"la validité des données du suivi."

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 ""
"If handtracking is enabled and hand tracking source is supported, gets the "
"source of the hand tracking data for [param hand]."
msgstr ""
"Si le suivi des mains est activé et que la source de suivi des mains est "
"supportée, obtient la source des données de suivi des mains pour la main "
"[param hand]."

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 "Informs our OpenXR session has been synchronized."
msgstr "Informe que notre session OpenXR a été synchronisée."

msgid ""
"Informs our OpenXR session is now visible, for example output is sent to the "
"HMD but we don't receive XR input."
msgstr ""
"Informe que notre session OpenXR est maintenant visible, par exemple la "
"sortie est envoyée au HMD mais nous ne recevons pas d'entrée XR."

msgid ""
"The state of the session is unknown, we haven't tried setting up OpenXR yet."
msgstr ""
"L'état de la session est inconnu, nous n'avons pas encore essayé de "
"configurer OpenXR."

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 ""
"OpenXR is ready to begin our session. [signal session_begun] is emitted when "
"we change to this state."
msgstr ""
"OpenXR est prêt à démarrer notre session. [signal session_begun] est émis "
"lorsque nous changeons vers cette état."

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 ""
"The source of hand tracking data is unknown (the extension is likely "
"unsupported)."
msgstr ""
"La source des données du suivi des mains est inconnue (l'extension est "
"probablement non supportée)."

msgid ""
"The source of hand tracking is unobstructed, this means that an accurate "
"method of hand tracking is used, e.g. optical hand tracking, data gloves, etc."
msgstr ""
"La source des données du suivi des mains est non obstruée, cela signifie "
"qu'une méthode précise de suivi des mains est utilisée, par ex. du suivi des "
"mains optique, des gants de données, etc..."

msgid ""
"The source of hand tracking is a controller, bone positions are inferred from "
"controller inputs."
msgstr ""
"La source des données du suivi des mains est un contrôleur, les positions des "
"os sont inférées des entrées du contrôleur."

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 ""
"The application has entered a non-XR section (head-locked / static screen), "
"during which power savings are to be prioritized."
msgstr ""
"L'application est entrée dans une section non-XR (écran verrouillé / sans "
"mouvement de tête), au cours de laquelle les économies d'énergie doivent être "
"priorisées."

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 ""
"This binding resource binds an [OpenXRAction] to an input or output. As most "
"controllers have left hand and right versions that are handled by the same "
"interaction profile we can specify multiple bindings. For instance an action "
"\"Fire\" could be bound to both \"/user/hand/left/input/trigger\" and \"/user/"
"hand/right/input/trigger\". This would require two binding entries."
msgstr ""
"Cette ressource de liaison lie une [OpenXRAction] à une entrée ou une sortie. "
"Comme la plupart des contrôleurs ont des versions gauche et droite qui sont "
"gérées par le même profil d'interaction, nous pouvons spécifier plusieurs "
"liaisons. Par exemple, une action \"Tirer\" pourrait être liée à la fois à \"/"
"user/hand/left/input/trigger\" et \"/user/hand/right/input/trigger\". Cela "
"nécessiterait deux entrées de liaison."

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 ""
"Returns [code]true[/code] if this input/output path is part of this binding."
msgstr ""
"Renvoie [code]true[/code] si ce chemin d'entrée/sortie fait partie de cette "
"liaison."

msgid "Removes this input/output path from this binding."
msgstr "Retire ce lien d'entrée/sortie de cette liaison."

msgid "[OpenXRAction] that is bound to [member binding_path]."
msgstr "[OpenXRAction] qui est liée à [member binding_path]."

msgid "Binding modifiers for this binding."
msgstr "Modificateurs de liaison pour cette liaison."

msgid ""
"Binding path that defines the input or output bound to [member action].\n"
"[b]Note:[/b] Binding paths are suggestions, an XR runtime may choose to bind "
"the action to a different input or output emulating this input or output."
msgstr ""
"Chemin de liaison qui définit l'entrée ou la sortie liée à [member action].\n"
"[b]Note :[/b] Les chemins de liaison sont des suggestions, un runtime XR peut "
"choisir de lier l'action à une entrée/sortie différente émulant cette entrée/"
"sortie."

msgid "Use [member binding_path] instead."
msgstr "Utilisez [member binding_path] à la place."

msgid "Paths that define the inputs or outputs bound on the device."
msgstr "Chemins qui définissent les entrées/sorties liées sur l'appareil."

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 "Uncategorized plane."
msgstr "Plan non catégorisé."

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 "A button that brings up a dropdown with selectable options when pressed."
msgstr ""
"Un bouton qui affiche un menu déroulant avec des options sélectionnables lors "
"qu’appuyé."

msgid ""
"[OptionButton] is a type of button that brings up a dropdown with selectable "
"items when pressed. The item selected becomes the \"current\" item and is "
"displayed as the button text.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] The IDs used for items are limited to signed 32-bit integers, "
"not the full 64 bits of [int]. These have a range of [code]-2^31[/code] to "
"[code]2^31 - 1[/code], that is, [code]-2147483648[/code] to [code]2147483647[/"
"code].\n"
"[b]Note:[/b] The [member Button.text] and [member Button.icon] properties are "
"set automatically based on the selected item. They shouldn't be changed "
"manually."
msgstr ""
"[OptionButton] est un type de bouton qui affiche un menu déroulant avec des "
"éléments sélectionnables lors qu’appuyé. L'élément sélectionné devient "
"l'élément \"actuel\" et s'affiche comme le texte du bouton.\n"
"Voir aussi [BaseButton] qui contient des propriétés et des méthodes communes "
"associées à ce nœud.\n"
"[b]Note :[/b] Les identifiants utilisés pour les éléments sont limités à des "
"entiers de 32 bits signés, pas aux 64 bits complets de [int]. Ils ont une "
"plage de [code]-2^31[/code] à [code]2^31 - 1[/code], c'est-à-dire "
"[code]-2147483648[/code] à [code]2147483647[/code].\n"
"[b]Note :[/b] Les propriétés [member Button.text] et [member Button.icon] "
"sont définies automatiquement en fonction de l'élément sélectionné. Elles ne "
"devraient pas être changées manuellement."

msgid ""
"Adds an item, with a [param texture] icon, text [param label] and "
"(optionally) [param id]. If no [param id] is passed, the item index will be "
"used as the item's ID. New items are appended at the end.\n"
"[b]Note:[/b] The item will be selected if there are no other items."
msgstr ""
"Ajoute un élément, avec une icône [param texture], un texte [param label] et "
"(en option) un [param id]. Si aucun [param id] n'est spécifié, l'index de "
"l'élément sera utilisé comme identifiant de l'élément.Les nouveaux éléments "
"sont placés à la fin de la liste.\n"
"[b]Note :[/b] L'élément sera sélectionné s'il n'y a pas d'autres éléments."

msgid ""
"Adds an item, with text [param label] and (optionally) [param id]. If no "
"[param id] is passed, the item index will be used as the item's ID. New items "
"are appended at the end.\n"
"[b]Note:[/b] The item will be selected if there are no other items."
msgstr ""
"Ajoute un élément, avec le texte [param label]] et (en option) un [param id]. "
"Si aucun [param id] n'est spécifié, l'index de l'élément sera utilisé comme "
"identifiant de l'élément. Les nouveaux éléments sont placés à la fin de la "
"liste.\n"
"[b]Note :[/b] L'élément sera sélectionné s'il n'y a pas d'autres éléments."

msgid ""
"Adds a separator to the list of items. Separators help to group items, and "
"can optionally be given a [param text] header. A separator also gets an index "
"assigned, and is appended at the end of the item list."
msgstr ""
"Ajoute un séparateur à la liste des éléments. Les séparateurs aident à "
"regrouper les éléments, et peuvent en option recevoir un en-tête [param "
"text]. Un séparateur se voit également assigné un index, et est ajouté à la "
"fin de la liste d'éléments."

msgid "Clears all the items in the [OptionButton]."
msgstr "Retire tous les éléments du [OptionButton]."

msgid "Returns the auto translate mode of the item at index [param idx]."
msgstr ""
"Renvoie le mode de traduction automatique de l'élément à l'index [param idx]."

msgid "Returns the icon of the item at index [param idx]."
msgstr "Renvoie l'icône de l'élément à l'index [param idx]."

msgid "Returns the ID of the item at index [param idx]."
msgstr "Renvoie l'identifiant de l'élément à l'index [param idx]."

msgid "Returns the index of the item with the given [param id]."
msgstr "Renvoie l'index de l'élément avec l'identifiant [param id] donné."

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 index of the first item which is not disabled, or marked as a "
"separator. If [param from_last] is [code]true[/code], the items will be "
"searched in reverse order.\n"
"Returns [code]-1[/code] if no item is found."
msgstr ""
"Renvoie l'index du premier élément qui n'est pas désactivé, ou marqué comme "
"séparateur. Si [param from_last] vaut [code]true[/code], les éléments seront "
"recherchés en ordre inverse.\n"
"Renvoie [code]-1[/code] si aucun élément n'est trouvé."

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 ""
"Returns [code]true[/code] if this button contains at least one item which is "
"not disabled, or marked as a separator."
msgstr ""
"Renvoie [code]true[/code] si ce bouton contient au moins un élément qui n'est "
"pas désactivé ou marqué comme séparateur."

msgid "Returns [code]true[/code] if the item at index [param idx] is disabled."
msgstr ""
"Renvoie [code]true[/code] si l'élément à l'index [param idx] est désactivé."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is marked as a "
"separator."
msgstr ""
"Renvoie [code]true[/code] si l'élément à l'index [param idx] est marqué comme "
"séparateur."

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 auto translate mode of the item at index [param idx].\n"
"Items use [constant Node.AUTO_TRANSLATE_MODE_INHERIT] by default, which uses "
"the same auto translate mode as the [OptionButton] itself."
msgstr ""
"Définit le mode de traduction automatique de l'élément à l'index [param "
"idx].\n"
"Les éléments utilisent [constant Node.AUTO_TRANSLATE_MODE_INHERIT] par "
"défaut, qui utilise le même mode de traduction automatique que "
"l'[OptionButton] lui-même."

msgid ""
"Sets whether the item at index [param idx] is disabled.\n"
"Disabled items are drawn differently in the dropdown and are not selectable "
"by the user. If the current selected item is set as disabled, it will remain "
"selected."
msgstr ""
"Définit si l'élément à l'index [param idx] est désactivé.\n"
"Les éléments désactivés sont dessinés différemment dans le menu déroulant et "
"ne peuvent pas être sélectionnés par l'utilisateur. Si l'élément sélectionné "
"actuel est défini comme désactivé, il restera sélectionné."

msgid "Sets the icon of the item at index [param idx]."
msgstr "Définit l'icône pour l'élément à l'index [param idx]."

msgid "Sets the ID of the item at index [param idx]."
msgstr "Définit l'identifiant pour l'élément à l'index [param idx]."

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 "Sets the text of the item at index [param idx]."
msgstr "Définit le texte pour l'élément à l'index [param idx]."

msgid "Sets the tooltip of the item at index [param idx]."
msgstr "Définit l'infobulle pour l'élément à l'index [param idx]."

msgid ""
"Adjusts popup position and sizing for the [OptionButton], then shows the "
"[PopupMenu]. Prefer this over using [code]get_popup().popup()[/code]."
msgstr ""
"Ajuste la position et la taille de la popup pour l'[OptionButton], puis "
"affiche le [PopupMenu]. Préférez ceci plutôt qu'utiliser "
"[code]get_popup().popup()[/code]."

msgid ""
"If [code]true[/code], minimum size will be determined by the longest item's "
"text, instead of the currently selected one's.\n"
"[b]Note:[/b] For performance reasons, the minimum size doesn't update "
"immediately when adding, removing or modifying items."
msgstr ""
"Si [code]true[/code], la taille minimale sera déterminée par le texte de "
"l'élément le plus long, au lieu de celui de l'élément actuellement "
"sélectionné.\n"
"[b]Note :[/b] Pour des raisons de performances, la taille minimale ne se met "
"pas immédiatement à jour lorsque vous ajoutez, supprimez ou modifiez des "
"éléments."

msgid "The number of items to select from."
msgstr "Le nombre d'éléments sélectionnables."

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 ""
"Emitted when the user navigates to an item using the [member "
"ProjectSettings.input/ui_up] or [member ProjectSettings.input/ui_down] input "
"actions. The index of the item selected is passed as argument."
msgstr ""
"Émis lorsque l'utilisateur navigue vers un élément utilisant les actions "
"d'entrée [member ProjectSettings.input/ui_up] ou [member "
"ProjectSettings.input/ui_down]. L'index de l'élément sélectionné est passé en "
"tant qu'argument."

msgid ""
"Emitted when the current item has been changed by the user. The index of the "
"item selected is passed as argument.\n"
"[member allow_reselect] must be enabled to reselect an item."
msgstr ""
"Émis lorsque l'élément actuel a été changé par l'utilisateur. L'index de "
"l'élément sélectionné est passé en tant qu'argument.\n"
"[member allow_reselect] doit être activé pour ré-sélectionner un article."

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 ""
"If different than [code]0[/code], the arrow icon will be modulated to the "
"font color."
msgstr ""
"Si différent de [code]0[/code], l'icône de la flèche sera modulée à la "
"couleur de la police."

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 ""
"Assigns the given name to the current thread. Returns [constant "
"ERR_UNAVAILABLE] if unavailable on the current platform."
msgstr ""
"Attribue le nom donné au thread courant. Renvoie [constant ERR_UNAVAILABLE] "
"si non disponible sur la plateforme actuelle."

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 ""
"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 ""
"Use [method @GlobalScope.var_to_bytes] or [method FileAccess.store_var] "
"instead. To enable data compression, use [method PackedByteArray.compress] or "
"[method FileAccess.open_compressed]."
msgstr ""
"Utilisez [method @GlobalScope.var_to_bytes] ou [method FileAccess.store_var] "
"à la place. Pour activer la compression des données, utilisez [method "
"PackedByteArray.compress] ou [method FileAccess.open_compressed]."

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 "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 [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 "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 "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 ""
"PacketStreamPeer provides a wrapper for working using packets over a stream. "
"This allows for using packet based code with StreamPeers. PacketPeerStream "
"implements a custom protocol over the StreamPeer, so the user should not read "
"or write to the wrapped StreamPeer directly.\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 ""
"PacketStreamPeer fournit un wrapper pour travailler avec des paquets à "
"travers un flux. Cela permet d'utiliser du code à base de paquets avec des "
"StreamPeers. PacketPeerStream implémente un protocole personnalisé à travers "
"le StreamPeer, donc l'utilisateur ne devrait pas lire ou écrire dans le "
"StreamPeer wrappé directement.\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'exportation Android "
"avant d'exporter le projet ou en utilisant un clic de déploiement. Sinon, la "
"communication réseau de tout type sera bloquée par Android."

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 "A GUI control that displays a [StyleBox]."
msgstr "Une contrôle de GUI qui affiche une [StyleBox]."

msgid ""
"[Panel] is a GUI control that displays a [StyleBox]. See also "
"[PanelContainer]."
msgstr ""
"[Panel] est un contrôle de GUI qui affiche une [StyleBox]. Voir aussi "
"[PanelContainer]."

msgid "The [StyleBox] of this control."
msgstr "La [StyleBox] de ce contrôle."

msgid ""
"A container that keeps its child controls within the area of a [StyleBox]."
msgstr ""
"Un conteneur qui maintient ses contrôles enfants dans la zone d'une "
"[StyleBox]."

msgid ""
"A container that keeps its child controls within the area of a [StyleBox]. "
"Useful for giving controls an outline."
msgstr ""
"Un conteneur qui maintient ses contrôles enfants dans la zone d'une "
"[StyleBox]. Utile pour donner à des contrôles un contour."

msgid "The style of [PanelContainer]'s background."
msgstr "Le style de l'arrière-plan de [PanelContainer]."

msgid ""
"A material that provides a special texture to a [Sky], usually an HDR "
"panorama."
msgstr ""
"Un matériau qui fournit une texture spéciale à un [Sky], généralement un "
"panorama HDR."

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 ""
"A [Parallax2D] is used to create a parallax effect. It can move at a "
"different speed relative to the camera movement using [member scroll_scale]. "
"This creates an illusion of depth in a 2D game. If manual scrolling is "
"desired, the [Camera2D] position can be ignored with [member "
"ignore_camera_scroll].\n"
"[b]Note:[/b] Any changes to this node's position made after it enters the "
"scene tree will be overridden if [member ignore_camera_scroll] is "
"[code]false[/code] or [member screen_offset] is modified."
msgstr ""
"Un [Parallax2D] est utilisé pour créer un effet de parallaxe. Il peut se "
"déplacer à une vitesse différente par rapport au mouvement de la caméra en "
"utilisant [member scroll_scale]. Cela crée une illusion de profondeur dans un "
"jeu 2D. Si du défilement manuel est souhaité, la position de la [Camera2D] "
"peut être ignorée avec [member ignore_camera_scroll].\n"
"[b]Note :[/b] Tout changement à la position de ce nœud effectué après son "
"entrée dans l'arbre de scène sera redéfini si [member ignore_camera_scroll] "
"vaut [code]false[/code] ou que [member screen_offset] est modifié."

msgid "2D Parallax"
msgstr "Parallaxe 2D"

msgid ""
"Velocity at which the offset scrolls automatically, in pixels per second."
msgstr ""
"Vélocité à laquelle le décalage défile automatiquement, en pixels par seconde."

msgid ""
"If [code]true[/code], this [Parallax2D] is offset by the current camera's "
"position. If the [Parallax2D] is in a [CanvasLayer] separate from the current "
"camera, it may be desired to match the value with [member "
"CanvasLayer.follow_viewport_enabled]."
msgstr ""
"Si [code]true[/code], ce [Parallax2D] est décalé par la position actuelle de "
"la caméra. Si le [Parallax2D] se trouve dans un [CanvasLayer] séparé de la "
"caméra actuelle, il peut être souhaité de faire correspondre la valeur avec "
"[member CanvasLayer.follow_viewport_enabled]."

msgid ""
"If [code]true[/code], [Parallax2D]'s position is not affected by the position "
"of the camera."
msgstr ""
"Si [code]true[/code], la position de [Parallax2D] n'est pas affectée par la "
"position de la caméra."

msgid ""
"Top-left limits for scrolling to begin. If the camera is outside of this "
"limit, the [Parallax2D] stops scrolling. Must be lower than [member "
"limit_end] minus the viewport size to work."
msgstr ""
"Limites en haut à gauche pour que le défilement commence. Si la caméra est en "
"dehors de cette limite, le [Parallax2D] cesse de défiler. Doit être inférieur "
"à [member limit_end] moins la taille du viewport pour fonctionner."

msgid ""
"Bottom-right limits for scrolling to end. If the camera is outside of this "
"limit, the [Parallax2D] will stop scrolling. Must be higher than [member "
"limit_begin] and the viewport size combined to work."
msgstr ""
"Limites en bas à droite pour que le défilement s'arrête. Si la caméra est en "
"dehors de cette limite, le [Parallax2D] cesse de défiler. Doit être supérieur "
"à [member limit_begin] plus la taille du viewport pour fonctionner."

msgid ""
"Repeats the [Texture2D] of each of this node's children and offsets them by "
"this value. When scrolling, the node's position loops, giving the illusion of "
"an infinite scrolling background if the values are larger than the screen "
"size. If an axis is set to [code]0[/code], the [Texture2D] will not be "
"repeated."
msgstr ""
"Répète la [Texture2D] de chacun des enfants de ce nœud et les décale de cette "
"valeur. Lors du défilement, la position du nœud boucle, donnant l'illusion "
"d'un arrière-plan défilant de manière infinie si les valeurs sont plus "
"grandes que la taille de l'écran. Si un axe est défini à [code]0[/code], la "
"[Texture2D] ne sera pas répétée."

msgid ""
"Overrides the amount of times the texture repeats. Each texture copy spreads "
"evenly from the original by [member repeat_size]. Useful for when zooming out "
"with a camera."
msgstr ""
"Redéfinit le nombre de fois que la texture répète. Chaque copie de la texture "
"s'écarte uniformément de l'original de [member repeat_size]. Utile pour "
"dézoomer avec une caméra."

msgid ""
"Offset used to scroll this [Parallax2D]. This value is updated automatically "
"unless [member ignore_camera_scroll] is [code]true[/code]."
msgstr ""
"Décalage utilisé pour défiler ce [Parallax2D]. Cette valeur est mise à jour "
"automatiquement sauf si [member ignore_camera_scroll] vaut [code]true[/code]."

msgid ""
"The [Parallax2D]'s offset. Similar to [member screen_offset] and [member "
"Node2D.position], but will not be overridden.\n"
"[b]Note:[/b] Values will loop if [member repeat_size] is set higher than "
"[code]0[/code]."
msgstr ""
"Le décalage du [Parallax2D]. Similaire à [member screen_offset] et [member "
"Node2D.position], mais ne sera pas redéfini.\n"
"[b]Note :[/b] Les valeurs vont boucler si [member repeat_size] est défini "
"supérieur à [code]0[/code]."

msgid ""
"Multiplier to the final [Parallax2D]'s offset. Can be used to simulate "
"distance from the camera.\n"
"For example, a value of [code]1[/code] scrolls at the same speed as the "
"camera. A value greater than [code]1[/code] scrolls faster, making objects "
"appear closer. Less than [code]1[/code] scrolls slower, making objects appear "
"further, and a value of [code]0[/code] stops the objects completely."
msgstr ""
"Multiplicateur du décalage final du [Parallax2D]. Peut être utilisé pour "
"simuler de la distance à la caméra.\n"
"Par exemple, une valeur de [code]1[/code] défile à la même vitesse que la "
"caméra. Une valeur supérieure à [code]1[/code] défile plus vite, faisant "
"apparaître les objets comme plus proches. Une valeur inférieure à [code]1[/"
"code] défile plus lentement, faisant apparaître les objets comme plus "
"lointains, et une valeur de [code]0[/code] arrête complètement les objets."

msgid "Use the [Parallax2D] node instead."
msgstr "Utilisez le nœud [Parallax2D] à la place."

msgid ""
"A ParallaxBackground uses one or more [ParallaxLayer] child nodes to create a "
"parallax effect. Each [ParallaxLayer] can move at a different speed using "
"[member ParallaxLayer.motion_offset]. This creates an illusion of depth in a "
"2D game. If not used with a [Camera2D], you must manually calculate the "
"[member scroll_offset].\n"
"[b]Note:[/b] Each [ParallaxBackground] is drawn on one specific [Viewport] "
"and cannot be shared between multiple [Viewport]s, see [member "
"CanvasLayer.custom_viewport]. When using multiple [Viewport]s, for example in "
"a split-screen game, you need create an individual [ParallaxBackground] for "
"each [Viewport] you want it to be drawn on."
msgstr ""
"Un ParallaxBackground utilise un ou plusieurs nœuds [ParallaxLayer] enfants "
"pour créer un effet de parallaxe. Chaque [ParallaxLayer] peut se déplacer à "
"une vitesse différente en utilisant [member ParallaxLayer.motion_offset]. "
"Cela crée une illusion de profondeur dans un jeu 2D. Si non utilisé avec une "
"[Camera2D], vous devez calculer manuellement le [member scroll_offset].\n"
"[b]Note :[/b] Chaque [ParallaxBackground] est dessiné sur un [Viewport] "
"spécifique et ne peut pas être partagé entre plusieurs [Viewport]s, voir "
"[member CanvasLayer.custom_viewport]. Lors de l'utilisation de plusieurs "
"[Viewport]s, par exemple dans un jeu à écran séparé, vous devez créer un "
"[ParallaxBackground] individuel pour chaque [Viewport] sur lequel vous voulez "
"qu'il soit dessiné."

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 ""
"Top-left limits for scrolling to begin. If the camera is outside of this "
"limit, the background will stop scrolling. Must be lower than [member "
"scroll_limit_end] to work."
msgstr ""
"Limites en haut à gauche pour que le défilement commence. Si la caméra est en "
"dehors de cette limite, l'arrière-plan cesse de défiler. Doit être inférieur "
"à [member scroll_limit_end] pour fonctionner."

msgid ""
"Bottom-right limits for scrolling to end. If the camera is outside of this "
"limit, the background will stop scrolling. Must be higher than [member "
"scroll_limit_begin] to work."
msgstr ""
"Limites en bas à droite pour que le défilement s'arrête. Si la caméra est en "
"dehors de cette limite, l'arrière-plan cesse de défiler. Doit être supérieur "
"à [member scroll_limit_begin] pour fonctionner."

msgid ""
"The ParallaxBackground's scroll value. Calculated automatically when using a "
"[Camera2D], but can be used to manually manage scrolling when no camera is "
"present."
msgstr ""
"La valeur de défilement du ParallaxBackground. Calculé automatiquement lors "
"de l'utilisation d'une [Camera2D], mais peut être utilisé pour gérer "
"manuellement le défilement lorsqu'aucune caméra n'est présente."

msgid "A parallax scrolling layer to be used with [ParallaxBackground]."
msgstr ""
"Une couche de défilement parallaxe à utiliser avec [ParallaxBackground]."

msgid ""
"A ParallaxLayer must be the child of a [ParallaxBackground] node. Each "
"ParallaxLayer can be set to move at different speeds relative to the camera "
"movement or the [member ParallaxBackground.scroll_offset] value.\n"
"This node's children will be affected by its scroll offset.\n"
"[b]Note:[/b] Any changes to this node's position and scale made after it "
"enters the scene will be ignored."
msgstr ""
"Un ParallaxLayer doit être l'enfant d'un nœud [ParallaxBackground]. Chaque "
"ParallaxLayer peut être défini pour se déplacer à différentes vitesses par "
"rapport au mouvement de la caméra ou à la valeur de [member "
"ParallaxBackground.scroll_offset].\n"
"Les enfants de ce nœud seront affectés par son décalage de défilement.\n"
"[b]Note :[/b] Tout changement de position et d'échelle de ce nœud effectué "
"après son entrée dans la scène sera ignoré."

msgid ""
"The interval, in pixels, at which the [ParallaxLayer] is drawn repeatedly. "
"Useful for creating an infinitely scrolling background. If an axis is set to "
"[code]0[/code], the [ParallaxLayer] will be drawn only once along that "
"direction.\n"
"[b]Note:[/b] If you want the repetition to pixel-perfect match a [Texture2D] "
"displayed by a child node, you should account for any scale applied to the "
"texture when defining this interval. For example, if you use a child "
"[Sprite2D] scaled to [code]0.5[/code] to display a 600x600 texture, and want "
"this sprite to be repeated continuously horizontally, you should set the "
"mirroring to [code]Vector2(300, 0)[/code].\n"
"[b]Note:[/b] If the length of the viewport axis is bigger than twice the "
"repeated axis size, it will not repeat infinitely, as the parallax layer only "
"draws 2 instances of the layer at any given time. The visibility window is "
"calculated from the parent [ParallaxBackground]'s position, not the layer's "
"own position. So, if you use mirroring, [b]do not[/b] change the "
"[ParallaxLayer] position relative to its parent. Instead, if you need to "
"adjust the background's position, set the [member CanvasLayer.offset] "
"property in the parent [ParallaxBackground].\n"
"[b]Note:[/b] Despite the name, the layer will not be mirrored, it will only "
"be repeated."
msgstr ""
"L'intervalle, en pixels, auquel le [ParallaxLayer] est dessiné à plusieurs "
"reprises. Utile pour créer un fond défilant de manière infinie. Si un axe est "
"fixé à [code]0[/code], le [ParallaxLayer] ne sera tracé qu'une fois le long "
"de cette direction.\n"
"[b]Note :[/b] Si vous voulez que la répétition corresponde au pixel près à "
"une [Texture2D] affiché par un nœud enfant, vous devez tenir compte de toute "
"échelle appliquée à la texture lors de la définition de cet intervalle. Par "
"exemple, si vous utilisez un enfant [Sprite2D] à l'échelle [code]0.5[/code] "
"pour afficher une texture 600x600, et que vous voulez que ce sprite soit "
"répété en continu horizontalement, vous devez configurer cette valeur en "
"[code]Vector2(300, 0)[/code].\n"
"[b]Note :[/b] Si la longueur de l'axe du viewport est supérieure à deux fois "
"la taille de l'axe répétée, elle ne se répétera pas infiniment, car le calque "
"du parallaxe ne dessine que 2 instances du calque à un moment donné. La "
"fenêtre de visibilité est calculée à partir de la position du "
"[ParallaxBackground] parent, et non de sa propre position. Donc, si vous "
"utilisez le mirroring, [b]ne changez pas[/b] la position du [ParallaxLayer] "
"par rapport à son parent. Au lieu de cela, si vous devez ajuster la position "
"de l'arrière-plan, définissez la propriété [member CanvasLayer.offset] dans "
"le [ParallaxBackground] parent.\n"
"[b]Note :[/b] Malgré le nom, le calque ne sera pas mis en miroir, il ne sera "
"que répété."

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 ""
"[ParticleProcessMaterial] defines particle properties and behavior. It is "
"used in the [code]process_material[/code] of the [GPUParticles2D] and "
"[GPUParticles3D] nodes. Some of this material's properties are applied to "
"each particle when emitted, while others can have a [CurveTexture] or a "
"[GradientTexture1D] applied to vary numerical or color values over the "
"lifetime of the particle."
msgstr ""
"[ParticleProcessMaterial] définit les propriétés et le comportement d'une "
"particule. Il est utilisé dans les nœuds [code]process_material[/code] des "
"nœuds [GPUParticles2D] et [GPUParticles3D]. Certaines propriétés de ce "
"matériau sont appliquées à chaque particule lorsqu'elles sont émises, tandis "
"que d'autres peuvent avoir une [CurveTexture] ou une [GradientTexture1D] "
"appliquées pour faire varier les valeurs numériques ou de couleur au cours de "
"la durée de vie de la particule."

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 "Returns the [Texture2D] used by the specified parameter."
msgstr "Renvoie la [Texture2D] utilisée par le paramètre spécifié."

msgid "Returns [code]true[/code] if the specified particle flag is enabled."
msgstr ""
"Renvoie [code]true[/code] si le drapeau de particule spécifié est activé."

msgid ""
"Sets the minimum and maximum values of the given [param param].\n"
"The [code]x[/code] component of the argument vector corresponds to minimum "
"and the [code]y[/code] component corresponds to maximum."
msgstr ""
"Définit les valeurs minimales et maximales du paramètre [param param] donné.\n"
"La composante [code]x[/code] du vecteur de l'argument correspond au minimum "
"et la composante [code]y[/code] correspond au maximum."

msgid "Sets the maximum value range for the given parameter."
msgstr "Définit la valeur de plage maximale pour le paramètre donné."

msgid "Sets the minimum value range for the given parameter."
msgstr "Définit la valeur de plage minimale pour le paramètre donné."

msgid "Sets the [Texture2D] for the specified [enum Parameter]."
msgstr "Définit la [Texture2D] pour le paramètre [enum Parameter] spécifié."

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 ""
"Maximum initial rotation applied to each particle, in degrees.\n"
"Only applied when [member particle_flag_disable_z] or [member "
"particle_flag_rotate_y] are [code]true[/code] or the [BaseMaterial3D] being "
"used to draw the particle is using [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."
msgstr ""
"Rotation initiale maximale appliquée à chaque particule, en degrés.\n"
"Seulement appliquée lorsque [member particle_flag_disable_z] ou [member "
"particle_flag_rotate_y] vaillent [code]true[/code] ou que le [BaseMaterial3D] "
"utilisé pour dessiner la particule utilise [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."

msgid ""
"Each particle's angular velocity (rotation speed) will vary along this "
"[CurveTexture] over its lifetime."
msgstr ""
"La vitesse angulaire (vitesse de rotation) de chaque particule variera "
"suivant cette [CurveTexture] au cours de sa durée de vie."

msgid ""
"Maximum initial angular velocity (rotation speed) applied to each particle in "
"[i]degrees[/i] per second.\n"
"Only applied when [member particle_flag_disable_z] or [member "
"particle_flag_rotate_y] are [code]true[/code] or the [BaseMaterial3D] being "
"used to draw the particle is using [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."
msgstr ""
"Vitesse angulaire (vitesse de rotation) initiale maximale appliquée à chaque "
"particule, en [i]degrés[/i] par seconde.\n"
"Seulement appliquée lorsque [member particle_flag_disable_z] ou [member "
"particle_flag_rotate_y] vaillent [code]true[/code] ou que le [BaseMaterial3D] "
"utilisé pour dessiner la particule utilise [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."

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 ""
"If [code]true[/code], interaction with particle attractors is enabled. In 3D, "
"attraction only occurs within the area defined by the [GPUParticles3D] node's "
"[member GPUParticles3D.visibility_aabb]."
msgstr ""
"Si [code]true[/code], l'interaction avec les attracteurs de particules est "
"activée. En 3D, l'attraction ne se produit que dans la zone définie par la "
"[member GPUParticles3D.visibility_aabb] du nœud [GPUParticles3D]."

msgid ""
"The particles' bounciness. Values range from [code]0[/code] (no bounce) to "
"[code]1[/code] (full bounciness). Only effective if [member collision_mode] "
"is [constant COLLISION_RIGID]."
msgstr ""
"La bouciness des particules. Les valeurs vont de [code]0[/code] (pas de "
"rebond) à [code]1[/code] (rebond complet). Seulement effectif si [member "
"collision_mode] vaut [constant COLLISION_RIGID]."

msgid ""
"The particles' friction. Values range from [code]0[/code] (frictionless) to "
"[code]1[/code] (maximum friction). Only effective if [member collision_mode] "
"is [constant COLLISION_RIGID]."
msgstr ""
"La friction des particules. Les valeurs vont de [code]0[/code] (sans "
"friction) à [code]1[/code] (friction maximale). Seulement effectif si [member "
"collision_mode] vaut [constant COLLISION_RIGID]."

msgid ""
"The particles' collision mode.\n"
"[b]Note:[/b] 3D Particles can only collide with [GPUParticlesCollision3D] "
"nodes, not [PhysicsBody3D] nodes. To make particles collide with various "
"objects, you can add [GPUParticlesCollision3D] nodes as children of "
"[PhysicsBody3D] nodes. In 3D, collisions only occur within the area defined "
"by the [GPUParticles3D] node's [member GPUParticles3D.visibility_aabb].\n"
"[b]Note:[/b] 2D Particles can only collide with [LightOccluder2D] nodes, not "
"[PhysicsBody2D] nodes."
msgstr ""
"Le mode de collision des particules.\n"
"[b]Note :[/b] Les particules 3D ne peuvent entrer en collision qu'avec des "
"nœuds [GPUParticlesCollision3D], pas des nœuds [PhysicsBody3D]. Pour faire "
"entrer en collision des particules avec divers objets, vous pouvez ajouter "
"des nœuds [GPUParticlesCollision3D] comme enfants de nœuds [PhysicsBody3D]. "
"En 3D, les collisions ne se produisent que dans la zone définie par la "
"[member GPUParticles3D.visibility_aabb] du nœud [GPUParticles3D].\n"
"[b]Note :[/b] Les particules 2D ne peuvent entrer en collision qu'avec des "
"nœuds [LightOccluder2D], pas les nœuds [PhysicsBody2D]."

msgid ""
"If [code]true[/code], [member GPUParticles3D.collision_base_size] is "
"multiplied by the particle's effective scale (see [member scale_min], [member "
"scale_max], [member scale_curve], and [member scale_over_velocity_curve])."
msgstr ""
"Si [code]true[/code], [member GPUParticles3D.collision_base_size] est "
"multipliée par l'échelle effective de la particule (voir [member scale_min], "
"[member scale_max], [member scale_curve], et [member "
"scale_over_velocity_curve])."

msgid ""
"Each particle's initial color. If the [GPUParticles2D]'s [code]texture[/code] "
"is defined, it will be multiplied by this 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. Si la [code]texture[/code] de "
"[GPUParticles2D] est définie, elle sera multipliée par cette couleur.\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 [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 ""
"A curve that specifies the velocity along each of the axes of the particle "
"system along its lifetime.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Une courbe qui spécifie la vitesse le long de chacun des axes du système de "
"particules au cours de sa durée de vie.\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

msgid ""
"Maximum directional velocity value, which is multiplied by [member "
"directional_velocity_curve].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Valeur de la vitesse directionnelle maximale, qui est multipliée par [member "
"directional_velocity_curve].\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

msgid ""
"Minimum directional velocity value, which is multiplied by [member "
"directional_velocity_curve].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Valeur de la vitesse directionnelle minimale, qui est multipliée par [member "
"directional_velocity_curve].\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

msgid ""
"The box's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_BOX].\n"
"[b]Note:[/b] [member emission_box_extents] starts from the center point and "
"applies the X, Y, and Z values in both directions. The size is twice the area "
"of the extents."
msgstr ""
"L'étendue de la boîte si [member emission_shape] est définie à [constant "
"EMISSION_SHAPE_BOX].\n"
"[b]Note :[/b] [member emission_box_extents] démarre du point central et "
"applique les valeurs X, Y et Z dans les deux directions. La taille vaut deux "
"fois l'aire de l'étendue."

msgid ""
"Particle color will be modulated by color determined by sampling this texture "
"at the same point as the [member emission_point_texture].\n"
"[b]Note:[/b] [member emission_color_texture] 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_color_texture] will have no visible effect."
msgstr ""
"La couleur des particules sera modulée par la couleur déterminée en "
"échantillonnant cette texture au même point que [member "
"emission_point_texture].\n"
"[b]Note :[/b] [member emission_color_texture] 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_color_texture] n'aura pas d'effet visible."

msgid ""
"Each particle's color will be multiplied by this [CurveTexture] over its "
"lifetime.\n"
"[b]Note:[/b] [member emission_curve] 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_curve] will have no visible effect."
msgstr ""
"La couleur de chaque particule sera multipliée par cette [CurveTexture] au "
"cours de sa durée de vie.\n"
"[b]Note :[/b] [member emission_curve] 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_curve] n'aura pas d'effet visible."

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 ""
"The number of emission points if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Le nombre de points d'émission si [member emission_shape] vaut [constant "
"EMISSION_SHAPE_POINTS] ou [constant EMISSION_SHAPE_DIRECTED_POINTS]."

msgid ""
"Particles will be emitted at positions determined by sampling this texture at "
"a random position. Used with [constant EMISSION_SHAPE_POINTS] and [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 ""
"Les particules seront émises aux positions déterminées en échantillonnant "
"cette texture à une position aléatoire. Utilisé avec [constant "
"EMISSION_SHAPE_POINTS] et [constant EMISSION_SHAPE_DIRECTED_POINTS]. Peut "
"être créé automatiquement à partir d'un maillage ou d'un nœud en "
"sélectionnant \"Créer points d'émission à partir d'un maillage/Nœud\" sous "
"l'outil \"Particles\" dans la barre d'outils."

msgid "The offset for the [member emission_shape], in local space."
msgstr "Le décalage pour [member emission_shape], dans l'espace local."

msgid "The scale of the [member emission_shape], in local space."
msgstr "L'échelle de [member emission_shape], dans l'espace local."

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 ""
"Percentage of the velocity of the respective [GPUParticles2D] or "
"[GPUParticles3D] inherited by each particle when spawning."
msgstr ""
"Pourcentage de la vitesse du [GPUParticles2D] ou [GPUParticles3D] respectif "
"héritée par chaque particule lors de son apparition."

msgid ""
"Particle lifetime randomness ratio. The equation for the lifetime of a "
"particle is [code]lifetime * (1.0 - randf() * lifetime_randomness)[/code]. "
"For example, a [member lifetime_randomness] of [code]0.4[/code] scales the "
"lifetime between [code]0.6[/code] to [code]1.0[/code] of its original value."
msgstr ""
"Facteur de l'aléatoire pour la durée de vie des particules. L'équation pour "
"la durée de vie d'une particule est [code]lifetime * (1.0 - randf() * "
"lifetime_randomness)[/code]. Par exemple, un [member lifetime_randomness] de "
"[code]0.4[/code] dimensionne la durée de vie entre [code]0.6[/code] à "
"[code]1.0[/code] de sa valeur originale."

msgid "Each particle's linear acceleration will vary along this [CurveTexture]."
msgstr ""
"La vitesse linéaire de chaque particule variera suivant cette [CurveTexture]."

msgid ""
"Each particle's orbital velocity will vary along this [CurveTexture].\n"
"[b]Note:[/b] For 3D orbital velocity, use a [CurveXYZTexture].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"La vitesse orbitale de chaque particule variera suivant cette "
"[CurveTexture].\n"
"[b]Note :[/b] Pour la vitesse orbitale 3D, utilisez une [CurveXYZTexture].\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

msgid ""
"Maximum orbital velocity applied to each particle. Makes the particles circle "
"around origin. Specified in number of full rotations around origin per "
"second.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Vitesse orbitale maximale appliquée à chaque particule. Fait tourner les "
"particules autour de l'origine. Spécifié en nombre de rotations complètes "
"autour de l'origine par seconde.\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

msgid ""
"Minimum equivalent of [member orbit_velocity_max].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Équivalent pour le minimum de [member orbit_velocity_max].\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

msgid ""
"Changes the behavior of the damping properties from a linear deceleration to "
"a deceleration based on speed percentage."
msgstr ""
"Change le comportement des propriétés d'amortissement d'une décélération "
"linéaire en une décélération basée sur un pourcentage de la vitesse."

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 ""
"Maximum radial velocity applied to each particle. Makes particles move away "
"from the [member velocity_pivot], or toward it if negative.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Vitesse radiale maximale appliquée à chaque particule. Fait que les "
"particules s’éloignent de [member velocity_pivot], ou s'en approchent si "
"négative.\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

msgid ""
"Minimum radial velocity applied to each particle. Makes particles move away "
"from the [member velocity_pivot], or toward it if negative.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Vitesse radiale minimale appliquée à chaque particule. Fait que les "
"particules s’éloignent de [member velocity_pivot], ou s'en approchent si "
"négative.\n"
"[b]Note :[/b] Les vitesses animées ne seront pas affectées par "
"l'amortissement, utilisez plutôt [member velocity_limit_curve]."

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 ""
"Maximum velocity value reference for [member scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] will be interpolated between [member "
"scale_over_velocity_min] and [member scale_over_velocity_max]."
msgstr ""
"Référence de la valeur de vitesse maximale pour [member "
"scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] sera interpolée entre [member "
"scale_over_velocity_min] et [member scale_over_velocity_max]."

msgid ""
"Minimum velocity value reference for [member scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] will be interpolated between [member "
"scale_over_velocity_min] and [member scale_over_velocity_max]."
msgstr ""
"Référence de la valeur de vitesse minimale pour [member "
"scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] sera interpolée entre [member "
"scale_over_velocity_min] et [member scale_over_velocity_max]."

msgid ""
"The amount of particles to spawn from the subemitter node when a collision "
"occurs. When combined with [constant COLLISION_HIDE_ON_CONTACT] on the main "
"particles material, this can be used to achieve effects such as raindrops "
"hitting the ground.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"La quantité de particules apparaissant du nœud sous-émetteur lorsqu'une "
"collision survient. Lorsque combiné avec [constant COLLISION_HIDE_ON_CONTACT] "
"sur le matériau des particules principales, cela peut être utilisé pour "
"réaliser des effets tels que des gouttes de pluie frappant le sol.\n"
"[b]Note :[/b] Cette valeur ne doit pas dépasser [member "
"GPUParticles2D.amount] ou [member GPUParticles3D.amount] défini sur le nœud "
"[i]sous-émetteur[/i] (pas le nœud principal), par rapport à la durée de vie "
"des particules du sous-émetteur. Si le nombre de particules est dépassé, "
"aucune nouvelle particule n'apparaîtra du sous-émetteur jusqu'à ce que "
"suffisamment de particules aient expiré."

msgid ""
"The amount of particles to spawn from the subemitter node when the particle "
"expires.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"La quantité de particules apparaissant du nœud sous-émetteur lorsque la "
"particule expire.\n"
"[b]Note :[/b] Cette valeur ne doit pas dépasser [member "
"GPUParticles2D.amount] ou [member GPUParticles3D.amount] défini sur le nœud "
"[i]sous-émetteur[/i] (pas le nœud principal), par rapport à la durée de vie "
"des particules du sous-émetteur. Si le nombre de particules est dépassé, "
"aucune nouvelle particule n'apparaîtra du sous-émetteur jusqu'à ce que "
"suffisamment de particules aient expiré."

msgid ""
"The amount of particles to spawn from the subemitter node when the particle "
"spawns.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"La quantité de particules apparaissant du nœud sous-émetteur lorsque la "
"particule apparaît.\n"
"[b]Note :[/b] Cette valeur ne doit pas dépasser [member "
"GPUParticles2D.amount] ou [member GPUParticles3D.amount] défini sur le nœud "
"[i]sous-émetteur[/i] (pas le nœud principal), par rapport à la durée de vie "
"des particules du sous-émetteur. Si le nombre de particules est dépassé, "
"aucune nouvelle particule n'apparaîtra du sous-émetteur jusqu'à ce que "
"suffisamment de particules aient expiré."

msgid ""
"The frequency at which particles should be emitted from the subemitter node. "
"One particle will be spawned every [member sub_emitter_frequency] seconds.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"La fréquence à laquelle les particules devraient être émises du nœud sous-"
"émetteur. Une particule apparaîtra toutes les [member sub_emitter_frequency] "
"secondes.\n"
"[b]Note :[/b] Cette valeur ne doit pas dépasser [member "
"GPUParticles2D.amount] ou [member GPUParticles3D.amount] défini sur le nœud "
"[i]sous-émetteur[/i] (pas le nœud principal), par rapport à la durée de vie "
"des particules du sous-émetteur. Si le nombre de particules est dépassé, "
"aucune nouvelle particule n'apparaîtra du sous-émetteur jusqu'à ce que "
"suffisamment de particules aient expiré."

msgid ""
"If [code]true[/code], the subemitter inherits the parent particle's velocity "
"when it spawns."
msgstr ""
"Si [code]true[/code], le sous-émetteur hérite de la vitesse de la particule "
"parente lorsqu'il apparaît."

msgid ""
"The particle subemitter mode (see [member GPUParticles2D.sub_emitter] and "
"[member GPUParticles3D.sub_emitter])."
msgstr ""
"Le mode de sous-émetteur de particules (voir [member "
"GPUParticles2D.sub_emitter] et [member GPUParticles3D.sub_emitter])."

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 ""
"If [code]true[/code], enables turbulence for the particle system. Turbulence "
"can be used to vary particle movement according to its position (based on a "
"3D noise pattern). In 3D, [GPUParticlesAttractorVectorField3D] with "
"[NoiseTexture3D] can be used as an alternative to turbulence that works in "
"world space and with multiple particle systems reacting in the same way.\n"
"[b]Note:[/b] Enabling turbulence has a high performance cost on the GPU. Only "
"enable turbulence on a few particle systems at once at most, and consider "
"disabling it when targeting mobile/web platforms."
msgstr ""
"Si [code]true[/code], active la turbulence pour le système de particules. La "
"turbulence peut être utilisée pour faire varier le mouvement d'une particule "
"en fonction de sa position (selon sur un motif de bruit 3D). En 3D, "
"[GPUParticlesAttractorVectorField3D] avec [NoiseTexture3D] peut être utilisé "
"comme alternative à une turbulence qui fonctionne dans l'espace global et "
"avec plusieurs systèmes de particules réagissant de la même manière.\n"
"[b]Note :[/b] Activer la turbulence a un coût élevé de performances sur le "
"GPU. N'activez la turbulence que sur quelques systèmes de particules à la "
"fois au maximum, et envisagez de la désactiver lorsque vous ciblez les "
"plateformes mobiles/web."

msgid ""
"Maximum turbulence influence on each particle.\n"
"The actual amount of turbulence influence on each particle is calculated as a "
"random value between [member turbulence_influence_min] and [member "
"turbulence_influence_max] and multiplied by the amount of turbulence "
"influence from [member turbulence_influence_over_life]."
msgstr ""
"Influence maximale de la turbulence sur chaque particule.\n"
"La quantité réelle d'influence de la turbulence sur chaque particule est "
"calculée en tant que valeur aléatoire entre [member turbulence_influence_min] "
"et [member turbulence_influence_max] et est multipliée par la quantité "
"d'influence de la turbulence de [member turbulence_influence_over_life]."

msgid ""
"Minimum turbulence influence on each particle.\n"
"The actual amount of turbulence influence on each particle is calculated as a "
"random value between [member turbulence_influence_min] and [member "
"turbulence_influence_max] and multiplied by the amount of turbulence "
"influence from [member turbulence_influence_over_life]."
msgstr ""
"Influence minimale de la turbulence sur chaque particule.\n"
"La quantité réelle d'influence de la turbulence sur chaque particule est "
"calculée en tant que valeur aléatoire entre [member turbulence_influence_min] "
"et [member turbulence_influence_max] et est multipliée par la quantité "
"d'influence de la turbulence de [member turbulence_influence_over_life]."

msgid ""
"Each particle's amount of turbulence will be influenced along this "
"[CurveTexture] over its life time."
msgstr ""
"La quantité de turbulence avec chaque particule sera influencée le long de "
"cette [CurveTexture] au cous de sa durée de vie."

msgid ""
"Maximum displacement of each particle's spawn position by the turbulence.\n"
"The actual amount of displacement will be a factor of the underlying "
"turbulence multiplied by a random value between [member "
"turbulence_initial_displacement_min] and [member "
"turbulence_initial_displacement_max]."
msgstr ""
"Déplacement maximal de la position d'apparition de chaque particule par la "
"turbulence.\n"
"La quantité réelle de déplacement sera un facteur de la turbulence sous-"
"jacente multipliée par une valeur aléatoire entre [member "
"turbulence_initial_displacement_min] et [member "
"turbulence_initial_displacement_max]."

msgid ""
"Minimum displacement of each particle's spawn position by the turbulence.\n"
"The actual amount of displacement will be a factor of the underlying "
"turbulence multiplied by a random value between [member "
"turbulence_initial_displacement_min] and [member "
"turbulence_initial_displacement_max]."
msgstr ""
"Déplacement minimal de la position d'apparition de chaque particule par la "
"turbulence.\n"
"La quantité réelle de déplacement sera un facteur de la turbulence sous-"
"jacente multipliée par une valeur aléatoire entre [member "
"turbulence_initial_displacement_min] et [member "
"turbulence_initial_displacement_max]."

msgid ""
"This value controls the overall scale/frequency of the turbulence noise "
"pattern.\n"
"A small scale will result in smaller features with more detail while a high "
"scale will result in smoother noise with larger features."
msgstr ""
"Cette valeur contrôle l'échelle/la fréquence globale du motif du bruit de la "
"turbulence.\n"
"Une petite échelle résultera en des caractéristiques plus petites avec plus "
"de détails tandis qu'une grande échelle résultera en un bruit plus doux avec "
"des caractéristiques plus grandes."

msgid ""
"A scrolling velocity for the turbulence field. This sets a directional trend "
"for the pattern to move in over time.\n"
"The default value of [code]Vector3(0, 0, 0)[/code] turns off the scrolling."
msgstr ""
"Une vitesse de défilement pour le champ de turbulence. Cela définit une "
"tendance directionnelle pour le déplacement du motif au cours du temps.\n"
"La valeur par défaut de [code]Vector3(0, 0, 0)[/code] désactive le défilement."

msgid ""
"A [CurveTexture] that defines the maximum velocity of a particle during its "
"lifetime."
msgstr ""
"Une [CurveTexture] qui définit la vitesse maximale d'une particule au cours "
"de sa durée de vie."

msgid ""
"A pivot point used to calculate radial and orbital velocity of particles."
msgstr ""
"Un point de pivot utilisé pour calculer la vitesse radiale et orbitale des "
"particules."

msgid ""
"Emitted when this material's emission shape is changed in any way. This "
"includes changes to [member emission_shape], [member emission_shape_scale], "
"or [member emission_sphere_radius], and any other property that affects the "
"emission shape's offset, size, scale, or orientation.\n"
"[b]Note:[/b] This signal is only emitted inside the editor for performance "
"reasons."
msgstr ""
"Émis lorsque la forme d'émission de ce matériau est modifiée de quelque "
"manière que ce soit. Cela comprend les modifications à [member "
"emission_shape], [member emission_shape_scale], ou [member "
"emission_sphere_radius], et toute autre propriété qui affecte le décalage, la "
"taille, l'échelle ou l'orientation de la forme d'émission.\n"
"[b]Note :[/b] Ce signal n'est émis que dans l'éditeur pour des raisons de "
"performance."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set initial velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de la vitesse initiale."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set angular velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de la vitesse angulaire."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set orbital velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] 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_texture] to set linear acceleration properties."
msgstr ""
"À utiliser 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 ""
"À utiliser 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 ""
"À utiliser 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 damping properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés d'amortissement."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set angle properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés angulaires."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set scale properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de mise à l'échelle."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set hue variation properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] 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_texture] to set animation speed properties."
msgstr ""
"À utiliser 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 ""
"À utiliser 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 ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set radial velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de vitesse radiale."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set directional velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de vitesse directionnelle."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set scale over velocity properties."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_texture] pour définir les propriétés de l'échelle selon la vitesse."

msgid ""
"Particles will be emitted at a position determined by sampling a random point "
"on the [member emission_point_texture]. Particle color will be modulated by "
"[member emission_color_texture]."
msgstr ""
"Les particules seront émises à une position déterminée en échantillonnant un "
"point aléatoire sur [member emission_point_texture]. La couleur des "
"particules sera modulée par [member emission_color_texture]."

msgid ""
"Particles will be emitted at a position determined by sampling a random point "
"on the [member emission_point_texture]. Particle velocity and rotation will "
"be set based on [member emission_normal_texture]. Particle color will be "
"modulated by [member emission_color_texture]."
msgstr ""
"Les particules seront émises à une position déterminée en échantillonnant un "
"point aléatoire sur [member emission_point_texture]. La vitesse et la "
"rotation de la particule seront définies selon [member "
"emission_normal_texture]. La couleur des particules sera modulée par [member "
"emission_color_texture]."

msgid ""
"Use with [method set_param_min] and [method set_param_max] to set the "
"turbulence minimum und maximum influence on each particles velocity."
msgstr ""
"À utiliser avec [method set_param_min], [method set_param_max], et [method "
"set_param_max] pour définir l'influence minimale et maximale de la turbulence "
"sur la vitesse de chaque particule."

msgid ""
"Use with [method set_param_min] and [method set_param_max] to set the "
"turbulence minimum and maximum displacement of the particles spawn position."
msgstr ""
"À utiliser avec [method set_param_min] and [method set_param_max] pour "
"définir le déplacement minimal et maximale de la turbulence sur la position "
"d'apparition des particules."

msgid ""
"Use with [method set_param_texture] to set the turbulence influence over the "
"particles life time."
msgstr ""
"À utiliser avec [method set_param_texture] pour définir l'influence de la "
"turbulence au cours de la durée de vie de la particule."

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

msgid ""
"No collision for particles. Particles will go through "
"[GPUParticlesCollision3D] nodes."
msgstr ""
"Pas de collision pour les particules. Les particules traverseront les nœuds "
"[GPUParticlesCollision3D]."

msgid ""
"[RigidBody3D]-style collision for particles using [GPUParticlesCollision3D] "
"nodes."
msgstr ""
"Collision de type [RigidBody3D] pour les particules utilisant des nœuds "
"[GPUParticlesCollision3D]."

msgid ""
"Hide particles instantly when colliding with a [GPUParticlesCollision3D] "
"node. This can be combined with a subemitter that uses the [constant "
"COLLISION_RIGID] collision mode to \"replace\" the parent particle with the "
"subemitter on impact."
msgstr ""
"Cacher les particules instantanément lors de la collision avec un nœud "
"[GPUParticlesCollision3D]. Cela peut être combiné avec un sous-émetteur qui "
"utilise le mode de collision [constant COLLISION_RIGID] pour « remplacer » la "
"particule parente par le sous-émetteur lors de l'impact."

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 "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 ""
"This node takes its parent [Path2D], and returns the coordinates of a point "
"within it, given a distance from the first vertex.\n"
"It is useful for making other nodes follow a path, without coding the "
"movement pattern. For that, the nodes must be children of this node. The "
"descendant nodes will then move accordingly when setting the [member "
"progress] in this node."
msgstr ""
"Ce nœud prend son parent [Path2D], et renvoie les coordonnées d'un point à "
"l'intérieur, selon une distance par rapport au premier sommet.\n"
"Il est utile pour faire que d'autres nœuds suivent un chemin, sans coder le "
"motif du mouvement. Pour cela, les nœuds doivent être des enfants de ce nœud. "
"Les nœuds descendants se déplaceront alors en conséquence lorsque [member "
"progress] est défini."

msgid ""
"If [code]true[/code], the position between two cached points is interpolated "
"cubically, and linearly otherwise.\n"
"The points along the [Curve2D] of the [Path2D] are precomputed before use, "
"for faster calculations. The point at the requested offset is then calculated "
"interpolating between two adjacent cached points. This may present a problem "
"if the curve makes sharp turns, as the cached points may not follow the curve "
"closely enough.\n"
"There are two answers to this problem: either increase the number of cached "
"points and increase memory consumption, or make a cubic interpolation between "
"two points at the cost of (slightly) slower calculations."
msgstr ""
"Si [code]true[/code], la position entre deux points mis en cache est "
"interpolée de façon cubique, et linéairement sinon.\n"
"Les points le long de la [Curve2D] du [Path2D] sont pré-calculés avant "
"utilisation, pour des calculs plus rapides. Le point au décalage demandé est "
"alors calculé en interpolant entre deux points du cache adjacents. Cela peut "
"présenter un problème si la courbe fait des virages aigus, car les points mis "
"en cache peuvent ne pas suivre la courbe d'assez près.\n"
"Il y a deux réponses à ce problème : soit augmenter le nombre de points mis "
"en cache et augmenter la consommation de mémoire, soit faire une "
"interpolation cubique entre deux points au coût de calculs (légèrement) plus "
"lents."

msgid "The node's offset along the curve."
msgstr "Le décalage du nœud le long de la courbe."

msgid ""
"The distance along the path, in pixels. Changing this value sets this node's "
"position to a point within the path."
msgstr ""
"La distance le long du chemin, en pixels. Changer cette valeur fixe la "
"position de ce nœud à celle d'un point sur le chemin."

msgid ""
"The distance along the path as a number in the range 0.0 (for the first "
"vertex) to 1.0 (for the last). This is just another way of expressing the "
"progress within the path, as the offset supplied is multiplied internally by "
"the path's length.\n"
"It can be set or get only if the [PathFollow2D] is the child of a [Path2D] "
"which is part of the scene tree, and that this [Path2D] has a [Curve2D] with "
"a non-zero length. Otherwise, trying to set this field will print an error, "
"and getting this field will return [code]0.0[/code]."
msgstr ""
"La distance le long du chemin en tant que nombre dans l'intervalle 0.0 (pour "
"le premier sommet) à 1.0 (pour le dernier). Il s'agit juste d'une autre façon "
"d'exprimer la progression sur le chemin, car le décalage fourni est multiplié "
"en interne par la longueur du chemin.\n"
"Elle peut être définie ou obtenue seulement si le [PathFollow2D] est l'enfant "
"d'un [Path2D] qui fait partie de l'arborescence de scène, et que ce [Path2D] "
"a une [Curve2D] avec une longueur non nulle. Sinon, essayer de définir ce "
"champ affichera une erreur, et obtenir ce champ renverra [code]0.0[/code]."

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 ""
"This node takes its parent [Path3D], and returns the coordinates of a point "
"within it, given a distance from the first vertex.\n"
"It is useful for making other nodes follow a path, without coding the "
"movement pattern. For that, the nodes must be children of this node. The "
"descendant nodes will then move accordingly when setting the [member "
"progress] in this node."
msgstr ""
"Ce nœud prend son parent [Path3D], et renvoie les coordonnées d'un point à "
"l'intérieur, selon une distance par rapport au premier sommet.\n"
"Il est utile pour faire que d'autres nœuds suivent un chemin, sans coder le "
"motif du mouvement. Pour cela, les nœuds doivent être des enfants de ce nœud. "
"Les nœuds descendants se déplaceront alors en conséquence lorsque [member "
"progress] est défini."

msgid ""
"Correct the [param transform]. [param rotation_mode] implicitly specifies how "
"posture (forward, up and sideway direction) is calculated."
msgstr ""
"Corrige la transformation [param transform]. [param rotation_mode] spécifie "
"implicitement comment la posture (direction avant, haut et côté) est calculée."

msgid ""
"If [code]true[/code], the position between two cached points is interpolated "
"cubically, and linearly otherwise.\n"
"The points along the [Curve3D] of the [Path3D] are precomputed before use, "
"for faster calculations. The point at the requested offset is then calculated "
"interpolating between two adjacent cached points. This may present a problem "
"if the curve makes sharp turns, as the cached points may not follow the curve "
"closely enough.\n"
"There are two answers to this problem: either increase the number of cached "
"points and increase memory consumption, or make a cubic interpolation between "
"two points at the cost of (slightly) slower calculations."
msgstr ""
"Si [code]true[/code], la position entre deux points mis en cache est "
"interpolée de façon cubique, et linéairement sinon.\n"
"Les points le long de la [Curve3D] du [Path3D] sont pré-calculés avant "
"utilisation, pour des calculs plus rapides. Le point au décalage demandé est "
"alors calculé en interpolant entre deux points du cache adjacents. Cela peut "
"présenter un problème si la courbe fait des virages aigus, car les points mis "
"en cache peuvent ne pas suivre la courbe d'assez près.\n"
"Il y a deux réponses à ce problème : soit augmenter le nombre de points mis "
"en cache et augmenter la consommation de mémoire, soit faire une "
"interpolation cubique entre deux points au coût de calculs (légèrement) plus "
"lents."

msgid ""
"The distance from the first vertex, measured in 3D units along the path. "
"Changing this value sets this node's position to a point within the path."
msgstr ""
"La distance par rapport au premier sommet, mesurée en unités 3D le long du "
"chemin. Changer cette valeur fixe la position de ce nœud à celle d'un point "
"sur le chemin."

msgid ""
"The distance from the first vertex, considering 0.0 as the first vertex and "
"1.0 as the last. This is just another way of expressing the progress within "
"the path, as the progress supplied is multiplied internally by the path's "
"length.\n"
"It can be set or get only if the [PathFollow3D] is the child of a [Path3D] "
"which is part of the scene tree, and that this [Path3D] has a [Curve3D] with "
"a non-zero length. Otherwise, trying to set this field will print an error, "
"and getting this field will return [code]0.0[/code]."
msgstr ""
"La distance par rapport au premier sommet, en considérant 0.0 comme le "
"premier sommet et 1.0 comme le dernier. Il s'agit juste d'une autre façon "
"d'exprimer la progression sur le chemin, car la progression fournie est "
"multipliée en interne par la longueur du chemin.\n"
"Elle peut être définie ou obtenue seulement si le [PathFollow3D] est l'enfant "
"d'un [Path3D] qui fait partie de l'arborescence de scène, et que ce [Path3D] "
"a une [Curve3D] avec une longueur non nulle. Sinon, essayer de définir ce "
"champ affichera une erreur, et obtenir ce champ renverra [code]0.0[/code]."

msgid ""
"Allows or forbids rotation on one or more axes, depending on the [enum "
"RotationMode] constants being used."
msgstr ""
"Autorise ou interdit la rotation sur un ou plusieurs axes, selon les "
"constantes [enum RotationMode] utilisées."

msgid "If [code]true[/code], the tilt property of [Curve3D] takes effect."
msgstr ""
"Si [code]true[/code], la propriété d'inclinaison de la [Curve3D] prend effet."

msgid "Forbids the PathFollow3D to rotate."
msgstr "Interdit au PathFollow3D de pivoter."

msgid "Allows the PathFollow3D to rotate in the Y axis only."
msgstr "Autorise le PathFollow3D à ne pivoter que selon l'axe Y."

msgid "Allows the PathFollow3D to rotate in both the X, and Y axes."
msgstr "Autorise le PathFollow3D à pivoter selon les axes X et Y."

msgid "Allows the PathFollow3D to rotate in any axis."
msgstr "Autorise le PathFollow3D à pivoter suivant n'importe quel axe."

msgid ""
"Uses the up vector information in a [Curve3D] to enforce orientation. This "
"rotation mode requires the [Path3D]'s [member Curve3D.up_vector_enabled] "
"property to be set to [code]true[/code]."
msgstr ""
"Utilise l'information sur les vecteurs dans une [Curve3D] pour faire "
"respecter l'orientation. Ce mode de rotation exige que la propriété [member "
"Curve3D.up_vector_enabled] du [Path3D] soit définie à [code]true[/code]."

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]\n"
"[b]Note:[/b] This is only available in debug mode and will always return "
"[code]0[/code] when used in a project exported in release mode."
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]Une valeur faible est souhaitable.[/i]\n"
"[b]Note :[/b] Ceci est seulement disponible en mode de débogage et renvoie "
"toujours [code]0[/code] lorsqu'il est utilisé dans un projet exporté en mode "
"release."

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 "Ragdoll System"
msgstr "Système Ragdoll"

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 ""
"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 "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 ""
"This class replaces a [Cubemap] or a [Cubemap]-derived class in 2 "
"conditions:\n"
"- In dedicated server mode, where the image data shouldn't affect game logic. "
"This allows reducing the exported PCK's size significantly.\n"
"- When the [Cubemap]-derived class is missing, for example when using a "
"different engine version.\n"
"[b]Note:[/b] This class is not intended for rendering or for use in shaders. "
"Operations like calculating UV are not guaranteed to work."
msgstr ""
"Cette classe remplace une classe [Cubemap] ou une classe dérivée de [Cubemap] "
"dans 2 cas :\n"
"- En mode serveur dédié, où les données d'image ne devraient pas affecter la "
"logique du jeu. Cela permet de réduire considérablement la taille du PCK "
"exporté.\n"
"- Lorsque la classe dérivée de [Cubemap] est manquante, par exemple en "
"utilisant une autre version du moteur.\n"
"[b]Note :[/b] Cette classe n'est pas destinée au rendu ou à l'utilisation "
"dans les shaders. Les opérations comme le calcul des UV ne sont pas garanties "
"de fonctionner."

msgid "A [CubemapArray] without image data."
msgstr "Un [CubemapArray] sans données d'image."

msgid ""
"This class replaces a [CubemapArray] or a [CubemapArray]-derived class in 2 "
"conditions:\n"
"- In dedicated server mode, where the image data shouldn't affect game logic. "
"This allows reducing the exported PCK's size significantly.\n"
"- When the [CubemapArray]-derived class is missing, for example when using a "
"different engine version.\n"
"[b]Note:[/b] This class is not intended for rendering or for use in shaders. "
"Operations like calculating UV are not guaranteed to work."
msgstr ""
"Cette classe remplace une classe [CubemapArray] ou une classe dérivée de "
"[CubemapArray] dans 2 cas :\n"
"- En mode serveur dédié, où les données d'image ne devraient pas affecter la "
"logique du jeu. Cela permet de réduire considérablement la taille du PCK "
"exporté.\n"
"- Lorsque la classe dérivée de [CubemapArray] est manquante, par exemple en "
"utilisant une autre version du moteur.\n"
"[b]Note :[/b] Cette classe n'est pas destinée au rendu ou à l'utilisation "
"dans les shaders. Les opérations comme le calcul des UV ne sont pas garanties "
"de fonctionner."

msgid "Placeholder class for a material."
msgstr "Classe placeholder pour un matériau."

msgid ""
"This class is used when loading a project that uses a [Material] subclass in "
"2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled)."
msgstr ""
"Cette classe est utilisée lors du chargement d'un projet qui utilise une sous-"
"classe de [Material] dans deux cas :\n"
"- Lors de l'exécution du projet exporté en mode serveur dédié, seules les "
"dimensions de la texture sont conservées (comme elles peuvent être utilisées "
"à des fins de gameplay ou de positionnement d'autres éléments). Cela permet "
"de réduire considérablement la taille du PCK exporté.\n"
"- Lorsque cette sous-classe est manquante en raison de l'utilisation d'une "
"autre version du moteur ou d'une autre compilation (par ex. avec des modules "
"désactivés)."

msgid "Placeholder class for a mesh."
msgstr "Classe placeholder pour un maillage."

msgid ""
"This class is used when loading a project that uses a [Mesh] subclass in 2 "
"conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled)."
msgstr ""
"Cette classe est utilisée lors du chargement d'un projet qui utilise une sous-"
"classe de [Mesh] dans deux cas :\n"
"- Lors de l'exécution du projet exporté en mode serveur dédié, seules les "
"dimensions de la texture sont conservées (comme elles peuvent être utilisées "
"à des fins de gameplay ou de positionnement d'autres éléments). Cela permet "
"de réduire considérablement la taille du PCK exporté.\n"
"- Lorsque cette sous-classe est manquante en raison de l'utilisation d'une "
"autre version du moteur ou d'une autre compilation (par ex. avec des modules "
"désactivés)."

msgid "The smallest [AABB] enclosing this mesh in local space."
msgstr "La plus petite [AABB] englobant ce maillage dans l'espace local."

msgid "Placeholder class for a 2-dimensional texture."
msgstr "Classe placeholder pour une texture 2D."

msgid ""
"This class is used when loading a project that uses a [Texture2D] subclass in "
"2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled).\n"
"[b]Note:[/b] This is not intended to be used as an actual texture for "
"rendering. It is not guaranteed to work like one in shaders or materials (for "
"example when calculating UV)."
msgstr ""
"Cette classe est utilisée lors du chargement d'un projet qui utilise une sous-"
"classe de [Texture2D] dans deux cas :\n"
"- Lors de l'exécution du projet exporté en mode serveur dédié, seules les "
"dimensions de la texture sont conservées (comme elles peuvent être utilisées "
"à des fins de gameplay ou de positionnement d'autres éléments). Cela permet "
"de réduire considérablement la taille du PCK exporté.\n"
"- Lorsque cette sous-classe est manquante en raison de l'utilisation d'une "
"autre version du moteur ou d'une autre compilation (par ex. avec des modules "
"désactivés).\n"
"[b]Note :[/b] Cette classe n'est pas destinée à être utilisée comme une vraie "
"texture pour du rendu. Elle n'est pas garantie de fonctionner comme une "
"texture pour des shaders ou des matériaux (par ex. lors du calcul des UV)."

msgid "The texture's size (in pixels)."
msgstr "La taille de la texture (en pixels)."

msgid "Placeholder class for a 2-dimensional texture array."
msgstr "Classe placeholder pour un tableau de textures 2D."

msgid "Placeholder class for a 3-dimensional texture."
msgstr "Classe placeholder pour un tableau de textures 3D."

msgid ""
"This class is used when loading a project that uses a [Texture3D] subclass in "
"2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled).\n"
"[b]Note:[/b] This is not intended to be used as an actual texture for "
"rendering. It is not guaranteed to work like one in shaders or materials (for "
"example when calculating UV)."
msgstr ""
"Cette classe est utilisée lors du chargement d'un projet qui utilise une sous-"
"classe de [Texture3D] dans deux cas :\n"
"- Lors de l'exécution du projet exporté en mode serveur dédié, seules les "
"dimensions de la texture sont conservées (comme elles peuvent être utilisées "
"à des fins de gameplay ou de positionnement d'autres éléments). Cela permet "
"de réduire considérablement la taille du PCK exporté.\n"
"- Lorsque cette sous-classe est manquante en raison de l'utilisation d'une "
"autre version du moteur ou d'une autre compilation (par ex. avec des modules "
"désactivés).\n"
"[b]Note :[/b] Cette classe n'est pas destinée à être utilisée comme une vraie "
"texture pour du rendu. Elle n'est pas garantie de fonctionner comme une "
"texture pour des shaders ou des matériaux (par ex. lors du calcul des UV)."

msgid ""
"This class is used when loading a project that uses a [TextureLayered] "
"subclass in 2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled).\n"
"[b]Note:[/b] This is not intended to be used as an actual texture for "
"rendering. It is not guaranteed to work like one in shaders or materials (for "
"example when calculating UV)."
msgstr ""
"Cette classe est utilisée lors du chargement d'un projet qui utilise une sous-"
"classe de [TextureLayered] dans deux cas :\n"
"- Lors de l'exécution du projet exporté en mode serveur dédié, seules les "
"dimensions de la texture sont conservées (comme elles peuvent être utilisées "
"à des fins de gameplay ou de positionnement d'autres éléments). Cela permet "
"de réduire considérablement la taille du PCK exporté.\n"
"- Lorsque cette sous-classe est manquante en raison de l'utilisation d'une "
"autre version du moteur ou d'une autre compilation (par ex. avec des modules "
"désactivés).\n"
"[b]Note :[/b] Cette classe n'est pas destinée à être utilisée comme une vraie "
"texture pour du rendu. Elle n'est pas garantie de fonctionner comme une "
"texture pour des shaders ou des matériaux (par ex. lors du calcul des UV)."

msgid "The number of layers in the texture array."
msgstr "Le nombre de couches dans le tableau de textures."

msgid "The size of each texture layer (in pixels)."
msgstr "La taille de chaque couche de texture (en pixels)."

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 "Offset of the generated plane. Useful for particles."
msgstr "Décalage du plan généré. Utile pour des particules."

msgid "Direction that the [PlaneMesh] is facing."
msgstr "Direction vers laquelle le [PlaneMesh] fait face."

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 "[PlaneMesh] will face the positive X-axis."
msgstr "[PlaneMesh] fera face à l'axe X positif."

msgid ""
"[PlaneMesh] will face the positive Y-axis. This matches the behavior of the "
"[PlaneMesh] in Godot 3.x."
msgstr ""
"[PlaneMesh] fera face à l'axe Y positif. Cela correspond au comportement de "
"[PlaneMesh] dans Godot 3.x."

msgid ""
"[PlaneMesh] will face the positive Z-axis. This matches the behavior of the "
"QuadMesh in Godot 3.x."
msgstr ""
"[PlaneMesh] fera face à l'axe z positif. Cela correspond au comportement de "
"QuadMesh dans Godot 3.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 "Mesh with a single point primitive."
msgstr "Maillage avec une primitive de type point unique."

msgid ""
"A [PointMesh] is a primitive mesh composed of a single point. Instead of "
"relying on triangles, points are rendered as a single rectangle on the screen "
"with a constant size. They are intended to be used with particle systems, but "
"can also be used as a cheap way to render billboarded sprites (for example in "
"a point cloud).\n"
"In order to be displayed, point meshes must be used with a material that has "
"a point size. The point size can be accessed in a shader with the "
"[code]POINT_SIZE[/code] built-in, or in a [BaseMaterial3D] by setting the "
"[member BaseMaterial3D.use_point_size] and [member BaseMaterial3D.point_size] "
"properties.\n"
"[b]Note:[/b] When using point meshes, properties that normally affect "
"vertices will be ignored, including [member BaseMaterial3D.billboard_mode], "
"[member BaseMaterial3D.grow], and [member BaseMaterial3D.cull_mode]."
msgstr ""
"Un [PointMesh] est un maillage primitif composé d'un seul point. Au lieu de "
"se baser sur des triangles, les points sont rendus en tant que rectangle "
"unique sur l'écran avec une taille constante. Ils sont destinés à être "
"utilisés avec des systèmes de particules, mais peuvent également être "
"utilisés comme moyen bon marché pour rendre des sprites de billboard (par "
"exemple dans un nuage de points).\n"
"Pour être affiché, les maillages de point doivent être utilisés avec un "
"matériau qui a une taille de point. La taille du point peut être accédée dans "
"un shader avec la propriété intégrée [code]POINT_SIZE[/code], ou dans un "
"[BaseMaterial3D] en définissant les propriétés [member "
"BaseMaterial3D.use_point_size] et [member BaseMaterial3D.point_size].\n"
"[b]Note :[/b] Lors de l'utilisation de maillages de point, les propriétés qui "
"affectent normalement les sommets seront ignorées, y compris [member "
"BaseMaterial3D.billboard_mode], [member BaseMaterial3D.grow], et [member "
"BaseMaterial3D.cull_mode]."

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 "A modal window used to display a list of options."
msgstr "Une fenêtre modale utilisée pour afficher une liste d'options."

msgid ""
"Checks the provided [param event] against the [PopupMenu]'s shortcuts and "
"accelerators, and activates the first item with matching events. If [param "
"for_global_only] is [code]true[/code], only shortcuts and accelerators with "
"[code]global[/code] set to [code]true[/code] will be called.\n"
"Returns [code]true[/code] if an item was successfully activated.\n"
"[b]Note:[/b] Certain [Control]s, such as [MenuButton], will call this method "
"automatically."
msgstr ""
"Vérifie l'événement [param event] fourni contre les raccourcis et "
"accélérateurs du [PopupMenu] et active le premier élément avec des événements "
"correspondants. Si [param for_global_only] vaut [code]true[/code], seuls les "
"raccourcis et les accélérateurs avec [code]global[/code] défini à [code]true[/"
"code] seront appelés.\n"
"Renvoie [code]true[/code] si un élément a été activé avec succès.\n"
"[b]Note :[/b] Certains [Control]s, comme [MenuButton], appelleront cette "
"méthode automatiquement."

msgid ""
"Adds a new checkable item with text [param label].\n"
"An [param id] can optionally be provided, as well as an accelerator ([param "
"accel]). If no [param id] is provided, one will be created from the index. If "
"no [param accel] is provided, then the default value of 0 (corresponding to "
"[constant @GlobalScope.KEY_NONE]) will be assigned to the item (which means "
"it won't have any accelerator). See [method get_item_accelerator] for more "
"info on accelerators.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Ajoute un nouvel élément cochable avec le texte [param label].\n"
"Un [param id] peut être fourni en option, ainsi qu'un accélérateur ([param "
"accel]). Si aucun [param id] n'est fourni, un id sera créé à partir de "
"l'index. Si aucun [param accel] n'est fourni, la valeur par défaut de 0 "
"(correspondant à [constant @GlobalScope.KEY_NONE]) sera assignée à l'élément "
"(ce qui signifie qu'il n'aura pas d'accélérateur). Voir [method "
"get_item_accelerator] pour plus d'informations sur les accélérateurs.\n"
"[b]Note :[/b] Les éléments cochables affichent simplement une case à cocher, "
"mais n'ont aucun comportement de vérification intégré et doivent être cochés/"
"décochés manuellement. Voir [method set_item_checked] pour plus "
"d'informations sur la façon de le contrôler."

msgid ""
"Adds a new checkable item and assigns the specified [Shortcut] to it. Sets "
"the label of the checkbox to the [Shortcut]'s name.\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Ajoute un nouvel élément vérifiable et lui attribue le [Shortcut] spécifié. "
"Définit le texte de la case à cocher au nom du [Shortcut].\n"
"Un [param id] peut être fourni en option. Si aucun [param id] n'est fourni, "
"un id sera créé à partir de l'index.\n"
"[b]Note :[/b] Les éléments cochables affichent simplement une case à cocher, "
"mais n'ont aucun comportement de vérification intégré et doivent être cochés/"
"décochés manuellement. Voir [method set_item_checked] pour plus "
"d'informations sur la façon de le contrôler."

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] for the background panel."
msgstr "[StyleBox] pour le panneau de l'arrière-plan."

msgid "[StyleBox] used for the separators. See [method add_separator]."
msgstr ""
"Le [StyleBox] utilisé pour les séparateurs. Voir [method add_separator]."

msgid "A popup with a panel background."
msgstr "Une popup avec un panneau en arrière-plan."

msgid ""
"A popup with a configurable panel background. Any child controls added to "
"this node will be stretched to fit the panel's size (similar to how "
"[PanelContainer] works). If you are making windows, see [Window]."
msgstr ""
"Une popup avec un panneau en arrière-plan. Tout contrôle enfant ajouté à ce "
"nœud sera étiré pour correspondre à la taille du panneau (similaire à comment "
"[PanelContainer] fonctionne). Si vous faites des fenêtres, regardez [Window]."

msgid ""
"Provides a compressed texture for disk and/or VRAM in a way that is portable."
msgstr ""
"Fournit une texture compressée pour le disque et/ou la VRAM d'une manière qui "
"est portable."

msgid ""
"Initializes the compressed texture from a base image. The compression mode "
"must be provided.\n"
"[param normal_map] is recommended to ensure optimum quality if this image "
"will be used as a normal map.\n"
"If lossy compression is requested, the quality setting can optionally be "
"provided. This maps to Lossy WebP compression quality."
msgstr ""
"Initialise la texture compressée à partir d'une image de base. Le mode de "
"compression doit être fourni.\n"
"[param normal_map] est recommandé pour assurer une qualité optimale si cette "
"image sera utilisée comme normal map.\n"
"Si une compression avec perte est demandée, le réglage de la qualité peut "
"être fourni en option. Cela est associé à la qualité de compression de Lossy "
"WebP."

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 ""
"Base class for all primitive meshes. Handles applying a [Material] to a "
"primitive mesh."
msgstr ""
"Classe de base pour tous les maillages primitifs. Gère l'application d'un "
"[Material] à un maillage primitif."

msgid ""
"Base class for all primitive meshes. Handles applying a [Material] to a "
"primitive mesh. Examples include [BoxMesh], [CapsuleMesh], [CylinderMesh], "
"[PlaneMesh], [PrismMesh], and [SphereMesh]."
msgstr ""
"Classe de base pour tous les maillages primitifs. Gère l'application d'un "
"[Material] à un maillage primitif. On peut citer par exemple [BoxMesh], "
"[CapsuleMesh], [CylinderMesh], [PlaneMesh], [PrismMesh], et [SphereMesh]."

msgid ""
"Override this method to customize how this primitive mesh should be "
"generated. Should return an [Array] where each element is another Array of "
"values required for the mesh (see the [enum Mesh.ArrayType] constants)."
msgstr ""
"Redéfinissez cette méthode pour personnaliser comment ce maillage primitif "
"devrait être généré. Devrait renvoyer un [Array] où chaque élément est un "
"autre Array de valeurs requises pour le maillage (voir les constantes [enum "
"Mesh.ArrayType])."

msgid ""
"Returns the mesh arrays used to make up the surface of this primitive mesh.\n"
"[b]Example:[/b] Pass the result to [method ArrayMesh.add_surface_from_arrays] "
"to create a new surface:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var c = CylinderMesh.new()\n"
"var arr_mesh = ArrayMesh.new()\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, "
"c.get_mesh_arrays())\n"
"[/gdscript]\n"
"[csharp]\n"
"var c = new CylinderMesh();\n"
"var arrMesh = new ArrayMesh();\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, "
"c.GetMeshArrays());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie les tableaux du maillage utilisés pour constituer la surface de ce "
"maillage primitif.\n"
"[b]Exemple :[/b] Passez le résultat à [method "
"ArrayMesh.add_surface_from_arrays] pour créer une nouvelle surface :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var c = CylinderMesh.new()\n"
"var arr_mesh = ArrayMesh.new()\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, "
"c.get_mesh_arrays())\n"
"[/gdscript]\n"
"[csharp]\n"
"var c = new CylinderMesh();\n"
"var arrMesh = new ArrayMesh();\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, "
"c.GetMeshArrays());\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Request an update of this primitive mesh based on its properties."
msgstr "Demande une mise à jour de ce maillage primitif selon ses propriétés."

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 ""
"Displacement of the upper edge along the X axis. 0.0 positions edge straight "
"above the bottom-left edge."
msgstr ""
"Déplacement de l'arête supérieure le long de l'axe X. 0.0 positionne l'arête "
"directement au-dessus de l'arête inférieure gauche."

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 ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]\"name\"[/code]: [String] (the property's name)\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"
"ProjectSettings.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"
"ProjectSettings.add_property_info(property_info)\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.Singleton.Set(\"category/property_name\", 0);\n"
"\n"
"var propertyInfo = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"name\", \"category/propertyName\" },\n"
"\t{ \"type\", (int)Variant.Type.Int },\n"
"\t{ \"hint\", (int)PropertyHint.Enum },\n"
"\t{ \"hint_string\", \"one,two,three\" },\n"
"};\n"
"\n"
"ProjectSettings.AddPropertyInfo(propertyInfo);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Setting [code]\"usage\"[/code] for the property is not "
"supported. Use [method set_as_basic], [method set_restart_if_changed], and "
"[method set_as_internal] to modify usage flags."
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"
"ProjectSettings.set(\"category/property_name\", 0)\n"
"\n"
"var info_propriete = {\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"
"ProjectSettings.add_property_info(info_propriete)\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.Singleton.Set(\"category/property_name\", 0);\n"
"\n"
"var infoPropriete = new Godot.Collections.Dictionary\n"
"{\n"
"\t{\"name\", \"category/propertyName\"},\n"
"\t{\"type\", (int)Variant.Type.Int},\n"
"\t{\"hint\", (int)PropertyHint.Enum},\n"
"\t{\"hint_string\", \"un, deux, trois\"},\n"
"};\n"
"\n"
"ProjectSettings.AddPropertyInfo(infoPropriete);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Définir [code]\"usage\"[/code] pour la propriété n'est pas pris "
"en charge. Utilisez [method set_as_basic], [method set_restart_if_changed], "
"et [method set_as_internal] pour modifier les drapeaux d'utilisation."

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 "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 ""
"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 ""
"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 ""
"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 ""
"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 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 ""
"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, 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 arê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 arê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 arê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 arê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 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 ""
"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 ""
"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 "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 ""
"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 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 ""
"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 ""
"Controls how much physics ticks are synchronized with real time. For 0 or "
"less, the ticks are synchronized. Such values are recommended for network "
"games, where clock synchronization matters. Higher values cause higher "
"deviation of in-game clock and real clock, but allows smoothing out framerate "
"jitters. The default value of 0.5 should be good enough for most; values "
"above 2 could cause the game to react to dropped frames with a noticeable "
"delay and are not recommended.\n"
"[b]Note:[/b] Jitter fix is automatically disabled at runtime when [member "
"physics/common/physics_interpolation] is enabled.\n"
"[b]Note:[/b] When using a custom physics interpolation solution, the physics "
"jitter fix should be disabled by setting [member physics/common/"
"physics_jitter_fix] to [code]0.0[/code].\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the physics jitter fix at runtime, set [member Engine.physics_jitter_fix] "
"instead."
msgstr ""
"Contrôle la synchronisation de l'écoulement des trames de physique avec le "
"temps réel. Pour 0 ou moins, les trames sont synchronisées. Ces valeurs sont "
"recommandées pour les jeux en réseau, où la synchronisation d'horloge est "
"importante. Les valeurs plus élevées provoquent une déviation plus élevée "
"entre l'horloge du jeu et de l'horloge réelle, mais permet de lisser les "
"sautillements du taux de rafraîchissement. La valeur par défaut de 0,5 "
"devrait être suffisante la plupart du temps, les valeurs supérieures à 2 "
"pourraient amener le jeu à réagir aux trames sautées avec un retard notable "
"et ne sont pas recommandées.\n"
"[b]Note :[/b] La correction du sautillement est automatiquement désactivée "
"durant l'exécution lorsque [member physics/common/physics_interpolation] est "
"activé.\n"
"[b]Note :[/b] Lors de l'utilisation d'une solution d'interpolation de "
"physique personnalisée, le correcteur des sautillements physiques devrait "
"être désactivé en définissant [member physics/common/physics_jitter_fix] à "
"[code]0.0[/code].\n"
"[b]Note :[/b] Cette propriété est seulement lue au démarrage du projet. Pour "
"changer le correcteur des sautillements physiques durant l'exécution, "
"définissez [member Engine.physics_jitter_fix] à la place."

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'arête entre ces "
"triangles est considérée comme inactive.\n"
"Les collisions contre une arê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] Donner une valeur trop importante 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 sur des formes, ainsi "
"qu'aux corps physiques dans la simulation.\n"
"[b]Note :[/b] Cela ne s'applique pas lors de l'activation dans Jolt de la "
"suppression améliorée des arêtes internes, qui a la priorité."

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 arê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 arê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 arê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 arê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 arê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 arê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 arêtes de deux "
"[BoxShape3D] parfaitement joints. La suppression ne s'applique qu'aux arêtes "
"internes à un seul corps, ce qui signifie que les arê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/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/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/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/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/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/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/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/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/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/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 ""
"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 ""
"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 ""
"The filtering quality to use for [OmniLight3D] and [SpotLight3D] projectors. "
"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 pour les projecteurs d'[OmniLight3D] et de "
"[SpotLight3D]. 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 how OpenXR should blend in the environment. This is specific to "
"certain AR and passthrough devices where camera images are blended in by the "
"XR compositor."
msgstr ""
"Spécifie comment OpenXR devrait se mélanger avec l'environnement. Ceci est "
"spécifique à certains appareils RA et passthrough où les images des caméras "
"sont mélangées par le compositeur XR."

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 ""
"If [code]true[/code] we enable the render model extension if available.\n"
"[b]Note:[/b] This relates to the core OpenXR render model extension and has "
"no relation to any vendor render model extensions."
msgstr ""
"Si [code]true[/code], nous activons l'extension de modèle de rendu si "
"disponible.\n"
"[b]Note :[/b] Cela concerne l'extension de modèle de rendu OpenXR de base et "
"n'a aucun rapport avec des extensions de modèle de rendu de fournisseur."

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 ""
"If [code]true[/code], OpenXR will manage the depth buffer and use the depth "
"buffer for advanced reprojection provided this is supported by the XR "
"runtime. Note that some rendering features in Godot can't be used with this "
"feature."
msgstr ""
"Si [code]true[/code], OpenXR gérera le buffer de profondeur et utilisera le "
"buffer de profondeur pour une reprojection avancée à condition que cela soit "
"supporté par le runtime XR. Notez que certaines fonctionnalités de rendu dans "
"Godot ne peuvent pas être utilisées avec cette fonctionnalité."

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 ""
"[PropertyTweener] is used to interpolate a property in an object. See [method "
"Tween.tween_property] for more usage information.\n"
"The tweener will finish automatically if the target object is freed.\n"
"[b]Note:[/b] [method Tween.tween_property] is the only correct way to create "
"[PropertyTweener]. Any [PropertyTweener] created manually will not function "
"correctly."
msgstr ""
"[PropertyTweener] est utilisé pour interpoler une propriété dans un objet. "
"Voir [method Tween.tween_property] pour plus d'informations.\n"
"Le tweener se finira automatiquement si l'objet cible est libéré.\n"
"[b]Note :[/b] [method Tween.tween_property] est le seul moyen correct de "
"créer un [PropertyTweener]. Les [PropertyTweener] créés manuellement ne "
"fonctionneront pas correctement."

msgid ""
"When called, the final value will be used as a relative value instead.\n"
"[b]Example:[/b] Move the node by [code]100[/code] pixels to the right.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2.RIGHT * 100, "
"1).as_relative()\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", Vector2.Right * 100.0f, "
"1.0f).AsRelative();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Quand appelée, la valeur finale sera utilisée comme une valeur relative à la "
"place.\n"
"[b]Exemple :[/b] Déplacer le nœud de [code]100[/code] pixels vers la droite.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2.RIGHT * 100, "
"1).as_relative()\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", Vector2.Right * 100.0f, "
"1.0f).AsRelative();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Sets a custom initial value to the [PropertyTweener].\n"
"[b]Example:[/b] Move the node from position [code](100, 100)[/code] to [code]"
"(200, 100)[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(Vector2(100, 100))\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(new Vector2(100.0f, 100.0f));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Définit une valeur initiale personnalisée pour le [PropertyTweener].\n"
"[b]Exemple :[/b] Déplacer le nœud de la position [code](100, 100)[/code] à "
"[code](200, 100)[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(Vector2(100, 100))\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(new Vector2(100.0f, 100.0f));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Makes the [PropertyTweener] use the current property value (i.e. at the time "
"of creating this [PropertyTweener]) as a starting point. This is equivalent "
"of using [method from] with the current value. These two calls will do the "
"same:\n"
"[codeblocks]\n"
"[gdscript]\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(position)\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from_current()\n"
"[/gdscript]\n"
"[csharp]\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(Position);\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).FromCurrent();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Fait que ce [PropertyTweener] utilisera la valeur de propriété actuelle "
"(c'est-à-dire au moment de créer ce [PropertyTweener]) comme point de départ. "
"Ceci est équivalent à l'utilisation de [method from] avec la valeur actuelle. "
"Ces deux appels sont identiques :\n"
"[codeblocks]\n"
"[gdscript]\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(position)\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from_current()\n"
"[/gdscript]\n"
"[csharp]\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(Position);\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).FromCurrent();\n"
"[/csharp]\n"
"[/codeblocks]"

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 "Class representing a square mesh facing the camera."
msgstr "Classe représentant un maillage carré faisant face à la caméra."

msgid ""
"Class representing a square [PrimitiveMesh]. This flat mesh does not have a "
"thickness. By default, this mesh is aligned on the X and Y axes; this "
"rotation is more suited for use with billboarded materials. A [QuadMesh] is "
"equivalent to a [PlaneMesh] except its default [member PlaneMesh.orientation] "
"is [constant PlaneMesh.FACE_Z]."
msgstr ""
"Classe représentant un [PrimitiveMesh] carré. Ce maillage plat n'a pas "
"d'épaisseur. Par défaut, ce maillage est aligné sur les axes X et Y, cette "
"rotation est plus adaptée aux matériaux de billboard. Un [QuadMesh] équivaut "
"à un [PlaneMesh], sauf que son [member PlaneMesh.orientation] par défaut vaut "
"[constant PlaneMesh.FACE_Z]."

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 "Provides methods for generating pseudo-random numbers."
msgstr "Fournit des méthodes pour générer des nombres pseudo-aléatoires."

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 ""
"Returns a random index with non-uniform weights. Prints an error and returns "
"[code]-1[/code] if the array is empty.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rng = RandomNumberGenerator.new()\n"
"\n"
"var my_array = [\"one\", \"two\", \"three\", \"four\"]\n"
"var weights = PackedFloat32Array([0.5, 1, 1, 2])\n"
"\n"
"# Prints one of the four elements in `my_array`.\n"
"# It is more likely to print \"four\", and less likely to print \"one\".\n"
"print(my_array[rng.rand_weighted(weights)])\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un index aléatoire avec des poids non-uniformes. Affiche une erreur "
"et renvoie [code]-1[/code] si le tableau est vide.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rng = RandomNumberGenerator.new()\n"
"\n"
"var mon_tableau = [\"un\", \"deux\", \"trois\", \"quatre\"]\n"
"var poids = PackedFloat32Array([0.5, 1, 1, 2])\n"
"\n"
"# Affiche un des quatre éléments dans `mon_tableau`.\n"
"# Il est plus probable que \"quatre\" soit affiché, et moins probable que "
"\"un\" soit affiché.\n"
"print(mon_tableau[rng.rand_weighted(poids)])\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns a pseudo-random float between [code]0.0[/code] and [code]1.0[/code] "
"(inclusive)."
msgstr ""
"Renvoie un flottant pseudo-aléatoire entre [code]0.0[/code] et [code]1.0[/"
"code] (inclus)."

msgid ""
"Returns a pseudo-random float between [param from] and [param to] (inclusive)."
msgstr ""
"Renvoie un flottant pseudo-aléatoire entre [param from] et [param to] "
"(inclus)."

msgid ""
"Returns a [url=https://en.wikipedia.org/wiki/Normal_distribution]normally-"
"distributed[/url], pseudo-random floating-point number 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 un flottant pseudo-aléatoire, [url=https://fr.wikipedia.org/wiki/"
"Loi_normale]distribué normalement[/url], depuis la moyenne [param mean] et "
"l'écart-type [param deviation] spécifiés. Ceci est également connu en tant "
"que loi gaussienne.\n"
"[b]Note :[/b] Cette méthode utilise l'algorithme de la [url=https://"
"fr.wikipedia.org/wiki/M%C3%A9thode_de_Box-Muller]méthode de Box-Muller[/url]."

msgid ""
"Returns a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
"[code]4294967295[/code] (inclusive)."
msgstr ""
"Renvoie un entier non signé de 32 bits pseudo-aléatoire compris entre "
"[code]0[/code] et [code]4294967295[/code] (inclus)."

msgid ""
"Returns a pseudo-random 32-bit signed integer between [param from] and [param "
"to] (inclusive)."
msgstr ""
"Renvoie un entier signé de 32 bits pseudo-aléatoire compris entre [param "
"from] et [param to] (inclus)."

msgid ""
"Sets up a time-based seed for this [RandomNumberGenerator] instance. Unlike "
"the [@GlobalScope] random number generation functions, different "
"[RandomNumberGenerator] instances can use different seeds."
msgstr ""
"Définit une graine basée sur le temps pour cette instance "
"[RandomNumberGenerator]. Contrairement aux fonctions de génération de nombres "
"aléatoires de [@GlobalScope], différentes instances de "
"[RandomNumberGenerator] peuvent utiliser des graines différentes."

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 ""
"The current state of the random number generator. Save and restore this "
"property to restore the generator to a previous state:\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"print(rng.randf())\n"
"var saved_state = rng.state # Store current state.\n"
"print(rng.randf()) # Advance internal state.\n"
"rng.state = saved_state # Restore the state.\n"
"print(rng.randf()) # Prints the same value as previously.\n"
"[/codeblock]\n"
"[b]Note:[/b] Do not set state to arbitrary values, since the random number "
"generator requires the state to have certain qualities to behave properly. It "
"should only be set to values that came from the state property itself. To "
"initialize the random number generator with arbitrary input, use [member "
"seed] instead.\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 state."
msgstr ""
"L'état actuel du générateur de nombres aléatoires. Enregistrez puis restaurez "
"cette propriété pour restorer l'état du générateur à un état précédent :\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"print(rng.randf())\n"
"var etat_sauvegarde = rng.state # Enregistre l'état actuel.\n"
"print(rng.randf()) # Avance l'état interne.\n"
"rng.state = etat_sauvegarde # Restaure l'état.\n"
"print(rng.randf()) # Affiche la même valeur que précédemment.\n"
"[/codeblock]\n"
"[b]Note :[/b] Ne définissez pas l'état sauvegardé à des valeurs arbitraires, "
"car le générateur de nombre aléatoires a besoin que l'état ait des propriétés "
"particulières pour se comporter correctement. Cet état ne devrait être défini "
"qu'à partir de valeurs qui proviennent de la propriété de l'état lui-même. "
"Pour initialiser le générateur avec une entrée arbitraire, utilisez plutôt "
"[member seed].\n"
"[b]Note :[/b] La valeur par défaut de cette propriété est pseudo-aléatoire, "
"et change lors de l'appel à [method randomize]. La valeur de [code]0[/code] "
"documentée ici est un placeholder, et non l'état par défaut réel."

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 ""
"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. que [method "
"is_colliding] renvoie [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 [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. que [method "
"is_colliding] renvoie [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 "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 ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
"Unlike other [Object] types, [RefCounted]s keep an internal reference counter "
"so that they are automatically released when no longer in use, and only then. "
"[RefCounted]s therefore do not need to be freed manually with [method "
"Object.free].\n"
"[RefCounted] instances caught in a cyclic reference will [b]not[/b] be freed "
"automatically. For example, if a node holds a reference to instance [code]A[/"
"code], which directly or indirectly holds a reference back to [code]A[/code], "
"[code]A[/code]'s reference count will be 2. Destruction of the node will "
"leave [code]A[/code] dangling with a reference count of 1, and there will be "
"a memory leak. To prevent this, one of the references in the cycle can be "
"made weak with [method @GlobalScope.weakref].\n"
"In the vast majority of use cases, instantiating and using [RefCounted]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused.\n"
"[b]Note:[/b] In C#, reference-counted objects will not be freed instantly "
"after they are no longer in use. Instead, garbage collection will run "
"periodically and will free reference-counted objects that are no longer in "
"use. This means that unused ones will remain in memory for a while before "
"being removed."
msgstr ""
"Classe de base pour tout objet qui conserve un compte de références. "
"[Resource] et beaucoup d'autres objets d'aide héritent de cette classe.\n"
"Contrairement aux autres types [Object], les [RefCounted]s conservent un "
"compteur de référence interne afin qu'ils soient automatiquement libérés "
"lorsqu'ils ne sont plus utilisés, et seulement là. Les [RefCounted]s n'ont "
"donc pas besoin d'être libérés manuellement avec [method Object.free].\n"
"Les instances [RefCounted] prises dans une référence cyclique ne seront "
"[b]pas[/b] automatiquement libérées. Par exemple, si un nœud contient une "
"référence à une instance [code]A[/code], qui contient directement ou "
"indirectement une référence à [code]A[/code], le compte de références de "
"[code]A[/code] sera de 2. La destruction du nœud laissera [code]A[/code] avec "
"un compteur de références de 1, et il y aura une fuite de mémoire. Pour "
"éviter cela, l'une des références du cycle peut être rendue faible avec "
"[method @GlobalScope.weakref].\n"
"Dans la grande majorité des cas d'utilisation, l'instanciation et "
"l'utilisation de types dérivés de [RefCounted] est tout ce que vous devez "
"faire. Les méthodes fournies dans cette classe ne sont que pour les "
"utilisateurs avancés, et peuvent causer des problèmes si mal utilisées.\n"
"[b]Note :[/b] En C#, les objets avec un compteur de références ne seront pas "
"libérés instantanément après qu'ils ne soient plus utilisés. Au lieu de cela, "
"le ramasse-miette s'exécutera périodiquement et libérera les objets "
"référencés qui ne sont plus utilisés. Cela signifie que les objets non "
"utilisés resteront en mémoire pendant un certain temps avant d'être "
"supprimé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érences 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 ""
"Incrémente le compteur de références interne. Utilisez ceci seulement si vous "
"savez vraiment ce que vous faites.\n"
"Renvoie [code]true[/code] si l'incrémentation a réussi, [code]false[/code] "
"sinon."

msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns [code]true[/code] if the object should be freed after the decrement, "
"[code]false[/code] otherwise."
msgstr ""
"Décrémente le compteur de références interne. Utilisez ceci seulement si vous "
"savez vraiment ce que vous faites.\n"
"Renvoie [code]true[/code] si l'objet devrait être libéré après la "
"décrémentation, [code]false[/code] sinon."

msgid "A rectangular box for designing UIs."
msgstr "Une boîte rectangulaire pour la conception des interfaces utilisateur."

msgid ""
"A rectangular box that displays only a colored border around its rectangle "
"(see [method Control.get_rect]). It can be used to visualize the extents of a "
"[Control] node, for testing purposes."
msgstr ""
"Une boîte rectangulaire qui n'affiche qu'une bordure colorée autour de son "
"rectangle (voir [method Control.get_rect]). Elle peut être utilisée pour "
"visualiser l'étendue d'un nœud [Control], à des fins de test."

msgid "Sets the border color of the [ReferenceRect]."
msgstr "Définit la couleur de la bordure du [ReferenceRect]."

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 ""
"If [code]true[/code], the [ReferenceRect] will only be visible while in "
"editor. Otherwise, [ReferenceRect] will be visible in the running project."
msgstr ""
"Si [code]true[/code], le [ReferenceRect] ne sera visible que dans l'éditeur. "
"Sinon, le [ReferenceRect] sera aussi visible durant l'exécution du projet."

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 ""
"The custom ambient color to use within the [ReflectionProbe]'s box defined by "
"its [member size]. Only effective if [member ambient_mode] is [constant "
"AMBIENT_COLOR]."
msgstr ""
"La couleur ambiante personnalisée à utiliser dans la boîte de la "
"[ReflectionProbe] définie par sa taille [member size]. Seulement effectif si "
"[member ambient_mode] vaut [constant AMBIENT_COLOR]."

msgid ""
"The custom ambient color energy to use within the [ReflectionProbe]'s box "
"defined by its [member size]. Only effective if [member ambient_mode] is "
"[constant AMBIENT_COLOR]."
msgstr ""
"L'énergie de la couleur ambiante personnalisée à utiliser dans la boîte de la "
"[ReflectionProbe] définie par sa taille [member size]. Seulement effective si "
"[member ambient_mode] vaut [constant AMBIENT_COLOR]."

msgid ""
"The ambient color to use within the [ReflectionProbe]'s box defined by its "
"[member size]. The ambient color will smoothly blend with other "
"[ReflectionProbe]s and the rest of the scene (outside the [ReflectionProbe]'s "
"box defined by its [member size])."
msgstr ""
"La couleur ambiante personnalisée à utiliser dans la boîte de la "
"[ReflectionProbe] définie par sa taille [member size]. La couleur ambiante se "
"mélangera en douceur avec d'autres [ReflectionProbe]s et le reste de la scène "
"(à l'extérieur de la boîte de la [ReflectionProbe] définie par sa taille "
"[member size])."

msgid "Defines the distance in meters over which a probe blends into the scene."
msgstr ""
"Définit la distance en mètres sur laquelle une sonde se mélange avec la scène."

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 "Class for searching text for patterns using regular expressions."
msgstr ""
"Classe pour chercher du texte avec des motifs en utilisant des expressions "
"régulières."

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 ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If compilation fails, returns [constant FAILED] "
"and when [param show_error] is [code]true[/code], details are printed to "
"standard output."
msgstr ""
"Compile et assigne le motif de recherche à utiliser. Renvoie [constant OK] si "
"la compilation est réussie. Si la compilation échoue, renvoie [constant "
"FAILED] et lorsque [param show_error] vaut [code]true[/code], les détails "
"sont affichés à la sortie standard."

msgid "Creates and compiles a new [RegEx] object. See also [method compile]."
msgstr "Crée et compile un nouvel objet [RegEx]. Voir aussi [method compile]."

msgid "Returns the number of capturing groups in compiled pattern."
msgstr "Renvoie le nombre de groupes de capture dans le motif compilé."

msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
"Renvoie un tableau de noms de groupes de capture nommés dans le motif "
"compilé. Ils sont ordonnés par ordre d'apparition."

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 a un motif de recherche valide assigné."

msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code].\n"
"The region to search within can be specified with [param offset] and [param "
"end]. This is useful when searching for another match in the same [param "
"subject] by calling this method again after a previous success. Note that "
"setting these parameters differs from passing over a shortened string. For "
"example, the start anchor [code]^[/code] is not affected by [param offset], "
"and the character before [param offset] will be checked for the word boundary "
"[code]\\b[/code]."
msgstr ""
"Cherche le texte pour le motif compilé. Renvoie un conteneur [RegExMatch] du "
"premier résultat correspondant si trouvé, sinon [code]null[/code].\n"
"La région dans laquelle rechercher peut être spécifiée avec [param offset] et "
"[param end]. Ceci est utile lors d'une recherche d'un autre correspondance "
"dans le même objet [param subject] en appelant cette méthode à nouveau après "
"un succès précédent. Notez que définir ces paramètres diffère du passage "
"d'une chaîne raccourcie. Par exemple, l'ancre de démarrage [code]^[/code] "
"n'est pas affectée par [param offset], et le caractère avant [param offset] "
"sera vérifié pour la limite de mot [code]\\b[/code]."

msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
"empty array is returned instead.\n"
"The region to search within can be specified with [param offset] and [param "
"end]. This is useful when searching for another match in the same [param "
"subject] by calling this method again after a previous success. Note that "
"setting these parameters differs from passing over a shortened string. For "
"example, the start anchor [code]^[/code] is not affected by [param offset], "
"and the character before [param offset] will be checked for the word boundary "
"[code]\\b[/code]."
msgstr ""
"Cherche le texte pour le motif compilé. Renvoie un tableau de conteneurs "
"[RegExMatch] pour chaque résultat ne se superposant pas. Si aucun résultat "
"n'est trouvé, un tableau vide est renvoyé à la place.\n"
"La région dans laquelle rechercher peut être spécifiée avec [param offset] et "
"[param end]. Ceci est utile lors d'une recherche d'un autre correspondance "
"dans le même objet [param subject] en appelant cette méthode à nouveau après "
"un succès précédent. Notez que définir ces paramètres diffère du passage "
"d'une chaîne raccourcie. Par exemple, l'ancre de démarrage [code]^[/code] "
"n'est pas affectée par [param offset], et le caractère avant [param offset] "
"sera vérifié pour la limite de mot [code]\\b[/code]."

msgid ""
"Searches the text for the compiled pattern and replaces it with the specified "
"string. Escapes and backreferences such as [code]$1[/code] and [code]$name[/"
"code] are expanded and resolved. By default, only the first instance is "
"replaced, but it can be changed for all instances (global replacement).\n"
"The region to search within can be specified with [param offset] and [param "
"end]. This is useful when searching for another match in the same [param "
"subject] by calling this method again after a previous success. Note that "
"setting these parameters differs from passing over a shortened string. For "
"example, the start anchor [code]^[/code] is not affected by [param offset], "
"and the character before [param offset] will be checked for the word boundary "
"[code]\\b[/code]."
msgstr ""
"Cherche le texte pour le motif compilé et le remplace par la chaîne "
"spécifiée. les séquences d'échappement et les références arrières telles que "
"[code]$1[/code] et [code]$name[/code] sont étendues et résolues. Par défaut, "
"seule la première instance est remplacée, mais cela peut être changé pour "
"toutes les instances (remplacement global).\n"
"La région dans laquelle rechercher peut être spécifiée avec [param offset] et "
"[param end]. Ceci est utile lors d'une recherche d'un autre correspondance "
"dans le même objet [param subject] en appelant cette méthode à nouveau après "
"un succès précédent. Notez que définir ces paramètres diffère du passage "
"d'une chaîne raccourcie. Par exemple, l'ancre de démarrage [code]^[/code] "
"n'est pas affectée par [param offset], et le caractère avant [param offset] "
"sera vérifié pour la limite de mot [code]\\b[/code]."

msgid "Contains the results of a [RegEx] search."
msgstr "Contient le résultat d'une recherche avec une [RegEx]."

msgid ""
"Contains the results of a single [RegEx] match returned by [method "
"RegEx.search] and [method RegEx.search_all]. It can be used to find the "
"position and range of the match and its capturing groups, and it can extract "
"its substring for you."
msgstr ""
"Contient les résultats d'une seule correspondance [RegEx] renvoyée par "
"[method RegEx.search] et [method RegEx.search_all]. Elle peut être utilisée "
"pour trouver la position et la portée de la correspondance et de ses groupes "
"de capture, et elle peut extraire sa sous-chaîne pour vous."

msgid ""
"Returns the end position of the match within the source string. The end "
"position of capturing groups can be retrieved by providing its group number "
"as an integer or its string name (if it's a named group). The default value "
"of 0 refers to the whole pattern.\n"
"Returns -1 if the group did not match or doesn't exist."
msgstr ""
"Renvoie la position finale de la correspondance dans la chaîne source. La "
"position finale des groupes de capture peut être récupérée en fournissant son "
"numéro de groupe en un entier ou son nom de chaîne (s'il s'agit d'un groupe "
"nommé). La valeur par défaut de 0 se réfère à l'ensemble du motif.\n"
"Renvoie -1 si le groupe n'a pas eu de correspondance ou n'existe pas."

msgid "Returns the number of capturing groups."
msgstr "Renvoie le nombre de groupes de capture."

msgid ""
"Returns the starting position of the match within the source string. The "
"starting position of capturing groups can be retrieved by providing its group "
"number as an integer or its string name (if it's a named group). The default "
"value of 0 refers to the whole pattern.\n"
"Returns -1 if the group did not match or doesn't exist."
msgstr ""
"Renvoie la position de départ de la correspondance dans la chaîne source. La "
"position de départ des groupes de capture peut être récupérée en fournissant "
"son numéro de groupe en un entier ou son nom de chaîne (s'il s'agit d'un "
"groupe nommé). La valeur par défaut de 0 se réfère à l'ensemble du motif.\n"
"Renvoie -1 si le groupe n'a pas eu de correspondance ou n'existe pas."

msgid ""
"Returns the substring of the match from the source string. Capturing groups "
"can be retrieved by providing its group number as an integer or its string "
"name (if it's a named group). The default value of 0 refers to the whole "
"pattern.\n"
"Returns an empty string if the group did not match or doesn't exist."
msgstr ""
"Renvoie la sous-chaîne de la correspondance dans la chaîne source. Les "
"groupes de capture peuvent être récupérés en fournissant leur numéro de "
"groupe en un entier ou son nom de chaîne (s'il s'agit d'un groupe nommé). La "
"valeur par défaut de 0 se réfère à l'ensemble du motif.\n"
"Renvoie une chaîne vide si le groupe n'a pas eu de correspondance ou n'existe "
"pas."

msgid ""
"A dictionary of named groups and its corresponding group number. Only groups "
"that were matched are included. If multiple groups have the same name, that "
"name would refer to the first matching one."
msgstr ""
"Un dictionnaire de groupes nommés et leur numéro de groupe correspondant. "
"Seuls les groupes qui ont eu une correspondance sont inclus. Si plusieurs "
"groupes ont le même nom, ce nom se référerait au premier ayant une "
"correspondance."

msgid "An [Array] of the match and its capturing groups."
msgstr "Un [Array] de la correspondance et de ses groupes de capture."

msgid ""
"The source string used with the search pattern to find this matching result."
msgstr ""
"La chaîne source utilisée avec le motif de recherche pour trouver ce résultat "
"de correspondance."

msgid ""
"RemoteTransform2D pushes its own [Transform2D] to another [Node2D] derived "
"node in the scene."
msgstr ""
"RemoteTransform2D pousse sa propre [Transform2D] à un autre nœud dérivé de "
"[Node2D] dans la scène."

msgid ""
"RemoteTransform2D pushes its own [Transform2D] to another [Node2D] derived "
"node (called the remote node) in the scene.\n"
"It can be set to update another node's position, rotation and/or scale. It "
"can use either global or local coordinates."
msgstr ""
"RemoteTransform2D pousse sa propre [Transform2D] à un autre nœud dérivé de "
"[Node2D] (appelé le nœud distant) dans la scène.\n"
"Il peut être défini pour mettre à jour la position, la rotation et/ou "
"l'échelle d'un autre nœud. Il peut utiliser des coordonnées globales ou "
"locales."

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 pushes its own [Transform3D] to another [Node3D] derived "
"Node in the scene."
msgstr ""
"RemoteTransform3D pousse sa propre [Transform3D] à un autre nœud dérivé de "
"[Node3D] dans la scène."

msgid ""
"RemoteTransform3D pushes its own [Transform3D] to another [Node3D] derived "
"Node (called the remote node) in the scene.\n"
"It can be set to update another Node's position, rotation and/or scale. It "
"can use either global or local coordinates."
msgstr ""
"RemoteTransform3D pousse sa propre [Transform3D] à un autre nœud dérivé de "
"[Node3D] (appelé le nœud distant) dans la scène.\n"
"Il peut être défini pour mettre à jour la position, la rotation et/ou "
"l'échelle d'un autre nœud. Il peut utiliser des coordonnées globales ou "
"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 ""
"The [NodePath] to the remote node, relative to the RemoteTransform3D's "
"position in the scene."
msgstr ""
"Le [NodePath] vers le nœud distant, relatif à la position du "
"RemoteTransform3D dans la scène."

msgid "Using compute shaders"
msgstr "Utiliser des shaders de calcul"

msgid "This method does nothing and always returns an empty [PackedInt64Array]."
msgstr ""
"Cette méthode ne fait rien et renvoie toujours un [PackedInt64Array] vide."

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]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 "Texture can be updated using [method texture_update]."
msgstr "La texture peut être mise à jour en utilisant [method texture_update]."

msgid "Texture can be a source for [method texture_copy]."
msgstr "La texture peut être une source pour [method texture_copy]."

msgid "Texture can be a destination for [method texture_copy]."
msgstr "La texture peut être une destination pour [method texture_copy]."

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 "Initial actions are solved automatically by RenderingDevice."
msgstr ""
"Les actions initiales sont résolues automatiquement par RenderingDevice."

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 renvoie 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 "Renvoie le matériau de la surface d'un 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 "Deprecated. This method does nothing."
msgstr "Obsolète. Cette méthode ne fait rien."

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 maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in sharper "
"textures at oblique angles, but is more expensive to compute. A value of "
"[code]0[/code] forcibly disables anisotropic filtering, even on materials "
"where it is enabled.\n"
"The anisotropic filtering level also affects decals and light projectors if "
"they are configured to use anisotropic filtering. See [member "
"ProjectSettings.rendering/textures/decals/filter] and [member "
"ProjectSettings.rendering/textures/light_projectors/filter].\n"
"[b]Note:[/b] In 3D, for this setting to have an effect, set [member "
"BaseMaterial3D.texture_filter] to [constant "
"BaseMaterial3D.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] or [constant "
"BaseMaterial3D.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] on "
"materials.\n"
"[b]Note:[/b] In 2D, for this setting to have an effect, set [member "
"CanvasItem.texture_filter] to [constant "
"CanvasItem.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] or [constant "
"CanvasItem.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] on the "
"[CanvasItem] node displaying the texture (or in [CanvasTexture]). However, "
"anisotropic filtering is rarely useful in 2D, so only enable it for textures "
"in 2D if it makes a meaningful visual difference."
msgstr ""
"Définit le nombre maximal d'échantillons à prendre lors de l'utilisation du "
"filtrage anisotrope sur des textures (en puissance de deux). Un nombre plus "
"élevé d'échantillons résultera en des textures plus nettes à des angles "
"obliques, mais est plus cher à calculer. Une valeur de [code]0[/code] "
"désactive de force le filtrage anisotrope, même sur les matériaux où il est "
"activé.\n"
"Le niveau du filtrage anisotrope affecte aussi les décalques et les "
"projecteurs de lumière s'ils sont configurés pour utiliser le filtrage "
"anisotrope. Voir [member ProjectSettings.rendering/textures/decals/filter] et "
"[member ProjectSettings.rendering/textures/light_projectors/filter].\n"
"[b]Note :[/b] En 3D, pour que ce paramètre ait un effet, définissez [member "
"BaseMaterial3D.texture_filter] à [constant "
"BaseMaterial3D.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] ou [constant "
"BaseMaterial3D.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] sur les "
"matériaux.\n"
"[b]Note :[/b] En 2D, pour que ce paramètre ait un effet, définissez [member "
"CanvasItem.texture_filter] à [constant "
"CanvasItem.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] ou [constant "
"CanvasItem.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] sur le nœud "
"[CanvasItem] affichant la texture (ou dans [CanvasTexture]). Cependant, le "
"filtrage anisotrope est rarement utile en 2D, donc ne l'activez pour des "
"textures 2D que si cela fait une différence visuelle significative."

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 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 ""
"Use AMD FidelityFX Super Resolution 2.2 upscaling for the viewport's 3D "
"buffer. The amount of scaling can be set using [member "
"Viewport.scaling_3d_scale]. Values less than [code]1.0[/code] will result in "
"the viewport being upscaled using FSR2. Values greater than [code]1.0[/code] "
"are not supported and bilinear downsampling will be used instead. A value of "
"[code]1.0[/code] will use FSR2 at native resolution as a TAA solution."
msgstr ""
"Utiliser la mise à l'échelle AMD Fidelity FX Super Resolution 2.2 pour le "
"buffer 3D du viewport. L'échelle peut être définie en utilisant [member "
"Viewport.scaling_3d_scale]. Les valeurs inférieures à [code]1.0[/code] "
"résulteront en la mise à l'échelle du viewport en utilisant la FSR2. Les "
"valeurs supérieures à [code]1.0[/code] ne sont pas supportées et un "
"échantillonnage bilinéaire sera utilisé à la place. Une valeur de [code]1.0[/"
"code] utilisera la FSR2 en résolution native comme solution TAA."

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 "Anisotropic filtering is disabled."
msgstr "Le filtrage anisotrope est désactivé."

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 "Do not perform any antialiasing in the full screen post-process."
msgstr ""
"Ne pas effectuer d'anticrénelage dans le post-traitement du plein écran."

msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
"especially at lower resolutions. It can still work relatively well at large "
"resolutions such as 1440p and 4K."
msgstr ""
"Utiliser un antialiasing approximatif rapide. La FXAA est une méthode "
"populaire d'anti-crénelage de l'espace-écran, qui est rapide, mais rendra "
"l'image floue, en particulier dans les basses résolutions. Elle peut toujours "
"fonctionner relativement bien dans de grandes résolutions telles que 1440p et "
"4K."

msgid ""
"Use subpixel morphological antialiasing. SMAA may produce clearer results "
"than FXAA, but at a slightly higher performance cost."
msgstr ""
"Utiliser l’anticrénelage morphologique sous-pixel. La SMAA peut produire des "
"résultats plus clairs que la FXAA, mais à un coût de performance légèrement "
"plus élevé."

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 ""
"Shadow render pass. Objects will be rendered several times depending on the "
"number of amounts of lights with shadows and the number of directional shadow "
"splits."
msgstr ""
"Passe de rendu des ombres. Les objets seront rendus plusieurs fois en "
"fonction du nombre de lumières avec des ombres et du nombre de divisions des "
"ombres directionnelles."

msgid "Canvas item rendering. This includes all 2D rendering."
msgstr "Rendu des éléments de canevas. Cela inclut tous les rendus 2D."

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 ""
"Objects are displayed with only the albedo value from [VoxelGI]s. Requires at "
"least one visible [VoxelGI] node that has been baked to have a visible "
"effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Les objets sont affichés avec seulement la valeur albédo des [VoxelGI]s. "
"Nécessite au moins un nœud [VoxelGI] visible qui a été pré-calculé pour avoir "
"un effet visible.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Objects are displayed with only the lighting value from [VoxelGI]s. Requires "
"at least one visible [VoxelGI] node that has been baked to have a visible "
"effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Les objets sont affichés avec seulement la valeur d'éclairage des [VoxelGI]s. "
"Nécessite au moins un nœud [VoxelGI] visible qui a été pré-calculé pour avoir "
"un effet visible.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Objects are displayed with only the emission color from [VoxelGI]s. Requires "
"at least one visible [VoxelGI] node that has been baked to have a visible "
"effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Les objets sont affichés avec seulement la couleur d'émission des [VoxelGI]s. "
"Nécessite au moins un nœud [VoxelGI] visible qui a été pré-calculé pour avoir "
"un effet visible.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
"Dessine l'atlas d'ombres qui stocke les ombres des [OmniLight3D]s et des "
"[SpotLight3D]s dans le quadrant supérieur gauche du [Viewport]."

msgid ""
"Colors each PSSM split for the [DirectionalLight3D]s in the scene a different "
"color so you can see where the splits are. In order (from closest to furthest "
"from the camera), they are colored red, green, blue, and yellow.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Colorise chaque division PSSM pour les [DirectionalLight3D]s dans la scène "
"avec une couleur différente afin que vous puissiez voir où sont les "
"divisions. Dans l'ordre (de la plus proche à la plus éloignée de la caméra), "
"elles sont coloriées en rouge, vert, bleu et jaune.\n"
"[b]Note :[/b] Lors de l'utilisation de ce mode de dessin de débogage, les "
"shaders personnalisées sont ignorés puisque tous les matériaux de la scène "
"utilisent temporairement un matériau de débogage. Cela signifie que le "
"résultat des fonctions de shaders personnalisées (comme le déplacement de "
"sommets) ne sera plus visible lors de l'utilisation de ce mode de dessin de "
"débogage.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation des méthodes de rendu "
"Forward+ ou Mobile."

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

msgid "The input texture for variable rate shading will not be processed."
msgstr "La texture d'entrée pour le variable rate shading ne sera pas traitée."

msgid "The input texture for variable rate shading will be processed once."
msgstr ""
"La texture d'entrée pour le variable rate shading sera traitée une fois."

msgid ""
"The input texture for variable rate shading will be processed each frame."
msgstr ""
"La texture d'entrée pour le variable rate shading sera traitée à chaque trame."

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 ""
"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 "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 ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 range, "
"the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
"Désactive la répétition des textures. À la place, lors de la lecture d'UVs en "
"dehors de l'intervalle 0-1, la valeur sera bornée au bord de la texture, ce "
"qui donne un aspect étiré sur les bordures de la texture."

msgid ""
"Flip the texture when repeating so that the edge lines up instead of abruptly "
"changing."
msgstr ""
"Inverse la texture lors de la répétition de sorte que les bords correspondent "
"au lieu de changer brusquement."

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 ""
"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 ""
"Resource is the base class for all Godot-specific resource types, serving "
"primarily as data containers. Since they inherit from [RefCounted], resources "
"are reference-counted and freed when no longer in use. They can also be "
"nested within other resources, and saved on disk. [PackedScene], one of the "
"most common [Object]s in a Godot project, is also a resource, uniquely "
"capable of storing and instantiating the [Node]s it contains as many times as "
"desired.\n"
"In GDScript, resources can loaded from disk by their [member resource_path] "
"using [method @GDScript.load] or [method @GDScript.preload].\n"
"The engine keeps a global cache of all loaded resources, referenced by paths "
"(see [method ResourceLoader.has_cached]). A resource will be cached when "
"loaded for the first time and removed from cache once all references are "
"released. When a resource is cached, subsequent loads using its path will "
"return the cached reference.\n"
"[b]Note:[/b] In C#, resources will not be freed instantly after they are no "
"longer in use. Instead, garbage collection will run periodically and will "
"free resources that are no longer in use. This means that unused resources "
"will remain in memory for a while before being removed."
msgstr ""
"Les ressources sont la classe de base pour tous les types de ressources "
"propres à Godot, servant principalement comme conteneurs de données. Comme "
"ils héritent de [RefCounted], les ressources ont un compteur de références et "
"sont libérées lorsqu'elles ne sont plus utilisées. Elles peuvent également "
"être imbriquées dans d'autres ressources, et sauvegardées sur le disque. "
"[PackedScene], l'un des [Object] le plus courant dans un projet Godot, est "
"également une ressource, uniquement capable de stocker et d'instancier les "
"[Node]s qu'elle contient autant de fois que désiré.\n"
"En GDScript, les ressources peuvent être chargées à partir du disque par leur "
"chemin [member resource_path] en utilisant [method @GDScript.load] ou [method "
"@GDScript.preload].\n"
"Le moteur conserve un cache globale de toutes les ressources chargées, "
"référencées par des chemins (voir [method ResourceLoader.has_cached]). Une "
"ressource sera mise en cache lorsqu'elle est chargée pour la première fois et "
"retirée du cache une fois toutes les références libérées. Lorsqu'une "
"ressource est mise en cache, les chargements subséquents utilisant son chemin "
"renverront la référence en cache.\n"
"[b]Note :[/b] En C#, les ressources ne seront pas libérées instantanément "
"après qu'elles ne soient plus utilisées. Au lieu de cela, le ramasse-miette "
"s'exécutera périodiquement et libérera les ressources qui ne sont plus "
"utilisées. Cela signifie que les objets ressources utilisées resteront en "
"mémoire pendant un certain temps avant d'être supprimées."

msgid ""
"Override this method to return a custom [RID] when [method get_rid] is called."
msgstr ""
"Redéfinissez cette méthode pour renvoyer un [RID] personnalisé lorsque "
"[method get_rid] est appelée."

msgid ""
"Override this method to execute additional logic after [method "
"set_path_cache] is called on this object."
msgstr ""
"Redéfinissez cette méthode pour exécuter de la logique supplémentaire après "
"que [method set_path_cache] soit appelée sur cet objet."

msgid ""
"Override this method to customize the newly duplicated resource created from "
"[method PackedScene.instantiate], if the original's [member "
"resource_local_to_scene] is set to [code]true[/code].\n"
"[b]Example:[/b] Set a random [code]damage[/code] value to every local "
"resource from an instantiated scene:\n"
"[codeblock]\n"
"extends Resource\n"
"\n"
"var damage = 0\n"
"\n"
"func _setup_local_to_scene():\n"
"\tdamage = randi_range(10, 40)\n"
"[/codeblock]"
msgstr ""
"Redéfinissez cette méthode pour personnaliser la ressource nouvellement "
"dupliquée créée à partir de [method PackedScene.instantiate], si le [member "
"resource_local_to_scene] de l'original est défini à [code]true[/code].\n"
"[b]Exemple :[/b] Définir une valeur aléatoire [code]degats[/code] à chaque "
"ressource locale depuis une scène instanciée :\n"
"[codeblock]\n"
"extends Resource\n"
"\n"
"var degats = 0\n"
"\n"
"func _setup_local_to_scene():\n"
"\tdegats = randi_range(10, 40)\n"
"[/codeblock]"

msgid ""
"Duplicates this resource, returning a new resource with its [code]export[/"
"code]ed or [constant PROPERTY_USAGE_STORAGE] properties copied from the "
"original.\n"
"If [param deep] is [code]false[/code], a [b]shallow[/b] copy is returned: "
"nested [Array], [Dictionary], and [Resource] properties are not duplicated "
"and are shared with the original resource.\n"
"If [param deep] is [code]true[/code], a [b]deep[/b] copy is returned: all "
"nested arrays, dictionaries, and packed arrays are also duplicated "
"(recursively). Any [Resource] found inside will only be duplicated if it's "
"local, like [constant DEEP_DUPLICATE_INTERNAL] used with [method "
"duplicate_deep].\n"
"The following exceptions apply:\n"
"- Subresource properties with the [constant PROPERTY_USAGE_ALWAYS_DUPLICATE] "
"flag are always duplicated (recursively or not, depending on [param deep]).\n"
"- Subresource properties with the [constant PROPERTY_USAGE_NEVER_DUPLICATE] "
"flag are never duplicated.\n"
"[b]Note:[/b] For custom resources, this method will fail if [method "
"Object._init] has been defined with required parameters.\n"
"[b]Note:[/b] When duplicating with [param deep] set to [code]true[/code], "
"each resource found, including the one on which this method is called, will "
"be only duplicated once and referenced as many times as needed in the "
"duplicate. For instance, if you are duplicating resource A that happens to "
"have resource B referenced twice, you'll get a new resource A' referencing a "
"new resource B' twice."
msgstr ""
"Doublons cette ressource, renvoyant une nouvelle ressource avec ses "
"propriétés [code]export[/code]ées ou [constant PROPERTY_USAGE_STORAGE] "
"copiées de l'original.\n"
"Si [param deep] vaut [code]false[/code], une copie [b]superficielle[/b] est "
"renvoyée : les propriétés [Array], [Dictionary] et [Resource] imbriquées ne "
"sont pas dupliquées et sont partagées avec la ressource originale.\n"
"Si [param deep] vaut [code]true[/code], une copie [b]profonde[/b] est "
"renvoyée : tous les tableaux, dictionnaires et tableaux imbriquées sont "
"également dupliqués (récursivement). Toute [Resource] trouvée à l'intérieur "
"ne sera dupliquée que si elle est locale, comme pour [constant "
"DEEP_DUPLICATE_INTERNAL] utilisé avec [method duplicate_deep].\n"
"Les exceptions suivantes s'appliquent :\n"
"- Les propriétés de sous-ressources avec le drapeau [constant "
"PROPERTY_USAGE_ALWAYS_DUPLICATE] sont toujours dupliquées (récursivement ou "
"non, selon [param deep]).\n"
"- Les propriétés de sous-ressources avec le drapeau [constant "
"PROPERTY_USAGE_NEVER_DUPLICATE] ne sont jamais dupliquées.\n"
"[b]Note :[/b] Pour les ressources personnalisées, cette méthode échouera si "
"[method Object._init] a été défini avec les paramètres requis.\n"
"[b]Note :[/b] Lors de la duplication avec [param deep] défini à [code]true[/"
"code], chaque ressource trouvée, y compris celle sur laquelle cette méthode "
"est appelée, ne sera dupliquée qu'une fois et référencée autant de fois que "
"nécessaire dans le duplicata. Par exemple, si vous dupliquez la ressource A "
"qui se trouve avoir la ressource B référencée deux fois, vous obtiendrez une "
"nouvelle ressource A' référençant une nouvelle ressource B' deux fois."

msgid ""
"Emits the [signal changed] signal. This method is called automatically for "
"some built-in resources.\n"
"[b]Note:[/b] For custom resources, it's recommended to call this method "
"whenever a meaningful change occurs, such as a modified property. This "
"ensures that custom [Object]s depending on the resource are properly "
"updated.\n"
"[codeblock]\n"
"var damage:\n"
"\tset(new_value):\n"
"\t\tif damage != new_value:\n"
"\t\t\tdamage = new_value\n"
"\t\t\temit_changed()\n"
"[/codeblock]"
msgstr ""
"Émet le signal [signal changed]. Cette méthode est appelée automatiquement "
"pour certaines ressources intégrées.\n"
"[b]Note :[/b] Pour les ressources personnalisées, il est recommandé d'appeler "
"cette méthode lorsqu'un changement significatif se produit, comme une "
"propriété modifiée. Cela garantit que les [Object]s personnalisés dépendant "
"de la ressource sont correctement mis à jour.\n"
"[codeblock]\n"
"var degats:\n"
"\tset(nouvelle_valeur):\n"
"\t\tif degats != nouvelle_valeur:\n"
"\t\t\tdegats = nouvelle_valeur\n"
"\t\t\temit_changed()\n"
"[/codeblock]"

msgid ""
"Generates a unique identifier for a resource to be contained inside a "
"[PackedScene], based on the current date, time, and a random value. The "
"returned string is only composed of letters ([code]a[/code] to [code]y[/"
"code]) and numbers ([code]0[/code] to [code]8[/code]). See also [member "
"resource_scene_unique_id]."
msgstr ""
"Génère un identifiant unique pour une ressource qui doit être contenue dans "
"une [PackedScene], en fonction de la date, de l'heure et d'une valeur "
"aléatoire. La chaîne renvoyée n'est composée que de lettres ([code]a[/code] à "
"[code]y[/code]) et de nombres ([code]0[/code] à [code]8[/code]). Voir aussi "
"[member resource_scene_unique_id]."

msgid ""
"If [member resource_local_to_scene] is set to [code]true[/code] and the "
"resource has been loaded from a [PackedScene] instantiation, returns the root "
"[Node] of the scene where this resource is used. Otherwise, returns "
"[code]null[/code]."
msgstr ""
"Si [member resource_local_to_scene] est défini à [code]true[/code] et que la "
"ressource a été chargée à partir d'un instanciation de [PackedScene], renvoie "
"le [Node] racine de la scène où cette ressource est utilisée. Sinon, renvoie "
"[code]null[/code]."

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 ""
"Sets the resource's path to [param path] without involving the resource "
"cache. Useful for handling [enum ResourceFormatLoader.CacheMode] values when "
"implementing a custom resource format by extending [ResourceFormatLoader] and "
"[ResourceFormatSaver]."
msgstr ""
"Définit le chemin de la ressource à [param path] sans impliquer le cache des "
"ressources. Utile pour gérer les valeurs de [enum "
"ResourceFormatLoader.CacheMode] lors de l'implémentation d'un format de "
"ressource personnalisée 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 ""
"Calls [method _setup_local_to_scene]. If [member resource_local_to_scene] is "
"set to [code]true[/code], this method is automatically called from [method "
"PackedScene.instantiate] by the newly duplicated resource within the scene "
"instance."
msgstr ""
"Appelle [method _setup_local_to_scene]. Si [member resource_local_to_scene] "
"est défini à [code]true[/code], cette méthode est automatiquement appelée "
"depuis [method PackedScene.instantiate] par la ressource nouvellement "
"dupliquée dans l'instance de la scène."

msgid ""
"Sets the [member resource_path] to [param path], potentially overriding an "
"existing cache entry for this path. Further attempts to load an overridden "
"resource by path will instead return this resource."
msgstr ""
"Définit [member resource_path] à [param path], redéfinissant potentiellement "
"une entrée existante du cache pour ce chemin. Les prochaines tentatives pour "
"charger une ressource redéfinie par chemin renverront à la place cette "
"ressource."

msgid ""
"If [code]true[/code], the resource is duplicated for each instance of all "
"scenes using it. At run-time, the resource can be modified in one scene "
"without affecting other instances (see [method PackedScene.instantiate]).\n"
"[b]Note:[/b] Changing this property at run-time has no effect on already "
"created duplicate resources."
msgstr ""
"Si [code]true[/code], la ressource est dupliquée pour chaque instance de "
"toutes les scènes qui l'utilisent. Durant l'exécution, la ressource peut être "
"modifiée dans une scène sans affecter d'autres instances (voir [method "
"PackedScene.instantiate]).\n"
"[b]Note :[/b] Modifier cette propriété durant l'exécution n'a aucun effet sur "
"les ressources dupliquées déjà créées."

msgid ""
"An optional name for this resource. When defined, its value is displayed to "
"represent the resource in the Inspector dock. For built-in scripts, the name "
"is displayed as part of the tab name in the script editor.\n"
"[b]Note:[/b] Some resource formats do not support resource names. You can "
"still set the name in the editor or via code, but it will be lost when the "
"resource is reloaded. For example, only built-in scripts can have a resource "
"name, while scripts stored in separate files cannot."
msgstr ""
"Un nom optionnel pour cette ressource. Lorsque définie, sa valeur est "
"affichée pour représenter la ressource dans le dock de l'Inspecteur. Pour les "
"scripts intégrés, le nom est affiché dans le nom de l'onglet dans l'éditeur "
"de script.\n"
"[b]Note :[/b] Certains formats de ressources ne supportent pas de nom de "
"ressource. Vous pouvez toujours définir le nom dans l'éditeur ou via le code, "
"mais il sera perdu lorsque la ressource est rechargée. Par exemple, seuls les "
"scripts intégrés peuvent avoir un nom de ressource, tandis que les scripts "
"stockés dans des fichiers séparés ne le peuvent pas."

msgid ""
"The unique path to this resource. If it has been saved to disk, the value "
"will be its filepath. If the resource is exclusively contained within a "
"scene, the value will be the [PackedScene]'s filepath, followed by a unique "
"identifier.\n"
"[b]Note:[/b] Setting this property manually may fail if a resource with the "
"same path has already been previously loaded. If necessary, use [method "
"take_over_path]."
msgstr ""
"Le chemin unique vers cette ressource. Si elle a été sauvegardée sur le "
"disque, la valeur sera son chemin de fichier. Si la ressource est "
"exclusivement contenue dans une scène, la valeur sera le chemin de fichier de "
"la [PackedScene], suivi d'un identifiant unique.\n"
"[b]Note :[/b] Définir manuellement cette propriété peut échouer si une "
"ressource avec le même chemin a déjà été chargée précédemment. Si nécessaire, "
"utilisez [method take_over_path]."

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 ""
"Emitted when the resource changes, usually when one of its properties is "
"modified. See also [method emit_changed].\n"
"[b]Note:[/b] This signal is not emitted automatically for properties of "
"custom resources. If necessary, a setter needs to be created to emit the "
"signal."
msgstr ""
"Émis lorsque la ressource change, habituellement lorsque l'une de ses "
"propriétés est modifiée. Voir aussi [method emit_changed].\n"
"[b]Note :[/b] Ce signal n'est pas émis automatiquement pour les propriétés de "
"ressources personnalisées. Si nécessaire, un setter doit être créé pour "
"émettre le signal."

msgid ""
"This signal is only emitted when the resource is created. Override [method "
"_setup_local_to_scene] instead."
msgstr ""
"Ce signal n'est émis que lorsque la ressource est créée. Redéfinissez [method "
"_setup_local_to_scene] à la place."

msgid ""
"Emitted by a newly duplicated resource with [member resource_local_to_scene] "
"set to [code]true[/code]."
msgstr ""
"Émis par une ressource nouvellement dupliquée avec [member "
"resource_local_to_scene] défini à [code]true[/code]."

msgid ""
"No subresorces at all are duplicated. This is useful even in a deep "
"duplication to have all the arrays and dictionaries duplicated but still "
"pointing to the original resources."
msgstr ""
"Aucun sous-ressource n'est dupliquée. Ceci est utile même dans une "
"duplication profonde pour que tous les tableaux et les dictionnaires soient "
"dupliqués, mais pointent toujours vers les ressources originales."

msgid ""
"Only subresources without a path or with a scene-local path will be "
"duplicated."
msgstr ""
"Seules les sous-ressources sans chemin ou avec un chemin local à la scène "
"seront dupliquées."

msgid ""
"Every subresource found will be duplicated, even if it has a non-local path. "
"In other words, even potentially big resources stored separately will be "
"duplicated."
msgstr ""
"Chaque sous-ressource trouvée sera dupliquée, même si elle a un chemin non "
"local. En d'autres termes, même les potentiellement grandes ressources "
"stockées séparément seront dupliquées."

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 gérer, il devrait 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 ""
"Should return the unique ID for the resource associated with the given path. "
"If this method is not overridden, a [code].uid[/code] file is generated along "
"with the resource file, containing the unique ID."
msgstr ""
"Doit renvoyer l'identifiant unique pour la ressource associée au chemin "
"donné. Si cette méthode n'est pas redéfinie, un fichier [code].uid[/code] est "
"généré avec le fichier de ressources, contenant l'identifiant unique."

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 ressource 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 gérer [code]"
"\"Resource\"[/code] pour eux."

msgid ""
"Loads a resource when the engine finds this loader to be compatible. If the "
"loaded resource is the result of an import, [param original_path] will target "
"the source file. Returns a [Resource] object on success, or an [enum Error] "
"constant in case of failure.\n"
"The [param cache_mode] property defines whether and how the cache should be "
"used or updated when loading the resource. See [enum CacheMode] for details."
msgstr ""
"Charge une ressource lorsque le moteur juge ce chargeur compatible. Si la "
"ressource chargée est le résultat d'un import, [param original_path] ciblera "
"le fichier source. Renvoie un objet [Resource] lors du succès, ou une "
"constante [enum Error] en cas d'échec.\n"
"La propriété [param cache_mode] définit si et comment le cache devrait être "
"utilisé ou mis à jour lors du chargement de la ressource. Voir [enum "
"CacheMode] pour plus de détails."

msgid ""
"Tells whether or not this loader should load a resource from its resource "
"path for a given type.\n"
"If it is not implemented, the default behavior returns whether the path's "
"extension is within the ones provided by [method _get_recognized_extensions], "
"and if the type is within the ones provided by [method _get_resource_type]."
msgstr ""
"Indique si ce chargeur doit ou non charger une ressource depuis son chemin de "
"ressource pour un type donné.\n"
"Si cette méthode n’est pas implémentée, le comportement par défaut vérifie si "
"l’extension du chemin fait partie de celles renvoyées par [method "
"_get_recognized_extensions], et si le type fait partie de ceux renvoyés par "
"[method _get_resource_type]."

msgid ""
"If implemented, renames dependencies within the given resource and saves it. "
"[param renames] is a dictionary [code]{ String => String }[/code] mapping old "
"dependency paths to new paths.\n"
"Returns [constant OK] on success, or an [enum Error] constant in case of "
"failure."
msgstr ""
"Si elle implémentée, renomme les dépendances dans la ressource donnée et "
"l'enregistre. [param renames] est un dictionnaire [code]{ String => String }[/"
"code] qui associe les anciens chemins de dépendance avec les nouveaux "
"chemins.\n"
"Renvoie [constant OK] lors du succès, ou une constante [enum Error] en cas "
"d'échec."

msgid ""
"Neither the main resource (the one requested to be loaded) nor any of its "
"subresources are retrieved from cache nor stored into it. Dependencies "
"(external resources) are loaded with [constant CACHE_MODE_REUSE]."
msgstr ""
"Ni la ressource principale (celle dont le chargement est demandé) ni ses sous-"
"ressources ne sont récupérées depuis le cache ni y sont stockées. Les "
"dépendances (ressources externes) sont chargées avec [constant "
"CACHE_MODE_REUSE]."

msgid ""
"The main resource (the one requested to be loaded), its subresources, and its "
"dependencies (external resources) are retrieved from cache if present, "
"instead of loaded. Those not cached are loaded and then stored into the "
"cache. The same rules are propagated recursively down the tree of "
"dependencies (external resources)."
msgstr ""
"La ressource principale (celle dont le chargement est demandé), ses sous-"
"ressources et ses dépendances (ressources externes) sont récupérées depuis le "
"cache si elles y sont présentes, plutôt que chargées. Celles qui ne sont pas "
"en cache sont chargées puis stockées dans le cache. Ces mêmes règles "
"s’appliquent récursivement à l’ensemble de l’arbre des dépendances "
"(ressources externes)."

msgid ""
"Like [constant CACHE_MODE_REUSE], but the cache is checked for the main "
"resource (the one requested to be loaded) as well as for each of its "
"subresources. Those already in the cache, as long as the loaded and cached "
"types match, have their data refreshed from storage into the already existing "
"instances. Otherwise, they are recreated as completely new objects."
msgstr ""
"Comme [constant CACHE_MODE_REUSE], mais le cache est vérifié pour la "
"ressource principale (celle dont le chargement est demandé) ainsi que pour "
"chacune de ses sous-ressources. Celles déjà présentes dans le cache, à "
"condition que les types chargés et mis en cache correspondent, voient leurs "
"données rafraîchies depuis le stockage dans les instances déjà existantes. "
"Sinon, elles sont recréées en tant qu’objets entièrement nouveaux."

msgid ""
"Like [constant CACHE_MODE_IGNORE], but propagated recursively down the tree "
"of dependencies (external resources)."
msgstr ""
"Comme [constant CACHE_MODE_IGNORE], mais propagé de façon récursive dans "
"l'arbre des dépendances (ressources externes)."

msgid ""
"Like [constant CACHE_MODE_REPLACE], but propagated recursively down the tree "
"of dependencies (external resources)."
msgstr ""
"Comme [constant CACHE_MODE_REPLACE], mais propagé de façon récursive dans "
"l'arbre des dépendances (ressources externes)."

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 the list of extensions available for saving the resource object, "
"provided it is recognized (see [method _recognize])."
msgstr ""
"Renvoie la liste des extensions disponibles pour sauvegarder l'objet "
"ressource, à condition qu'il soit reconnu (voir [method _recognize])."

msgid "Returns whether the given resource object can be saved by this saver."
msgstr ""
"Renvoie si une ressource donnée peut être enregistrée par cet enregistreur."

msgid ""
"Returns [code]true[/code] if this saver handles a given save path and "
"[code]false[/code] otherwise.\n"
"If this method is not implemented, the default behavior returns whether the "
"path's extension is within the ones provided by [method "
"_get_recognized_extensions]."
msgstr ""
"Renvoie [code]true[/code] si cet enregistreur gère un chemin de sauvegarde "
"donné et [code]false[/code] sinon.\n"
"Si cette méthode n'est pas implémentée, le comportement par défaut renvoie si "
"l'extension du chemin se trouve dans celles fournies par [method "
"_get_recognized_extensions]."

msgid ""
"Saves the given resource object to a file at the target [param path]. [param "
"flags] is a bitmask composed with [enum ResourceSaver.SaverFlags] constants.\n"
"Returns [constant OK] on success, or an [enum Error] constant in case of "
"failure."
msgstr ""
"Enregistre l'objet de ressource donné vers un fichier au chemin cible [param "
"path]. [param flags] est un bitmask composé de constantes [enum "
"ResourceSaver.SaverFlags].\n"
"Renvoie [constant OK] lors du succès, ou une constante [enum Error] en cas "
"d'échec."

msgid ""
"Sets a new UID for the resource at the given [param path]. Returns [constant "
"OK] on success, or an [enum Error] constant in case of failure."
msgstr ""
"Définit un nouvel UID pour la ressource au chemin [param path] donné. Renvoie "
"[constant OK] lors du succès, ou une constante [enum Error] en cas d'échec."

msgid "Base class for resource importers."
msgstr "Classe de base pour les importateurs de ressources."

msgid ""
"This is the base class for Godot's resource importers. To implement your own "
"resource importers using editor plugins, see [EditorImportPlugin]."
msgstr ""
"Il s'agit de la classe de base pour les importeurs de ressources de Godot. "
"Pour implémenter vos propres importeurs de ressources en utilisant des "
"plugins éditeur, voir [EditorImportPlugin]."

msgid ""
"Called when the engine compilation profile editor wants to check what build "
"options an imported resource needs. For example, "
"[ResourceImporterDynamicFont] has a property called [member "
"ResourceImporterDynamicFont.multichannel_signed_distance_field], that depends "
"on the engine to be build with the \"msdfgen\" module. If that resource "
"happened to be a custom one, it would be handled like this:\n"
"[codeblock]\n"
"func _get_build_dependencies(path):\n"
"\tvar resource = load(path)\n"
"\tvar dependencies = PackedStringArray()\n"
"\n"
"\tif resource.multichannel_signed_distance_field:\n"
"\t\tdependencies.push_back(\"module_msdfgen_enabled\")\n"
"\n"
"\treturn dependencies\n"
"[/codeblock]"
msgstr ""
"Appelée lorsque l'éditeur de profil de compilation du moteur veut vérifier "
"quelles options de compilation une ressource importée a besoin. Par exemple, "
"[ResourceImporterDynamicFont] a une propriété appelée [member "
"ResourceImporterDynamicFont.multichannel_signed_distance_field], qui "
"nécessite à ce que le moteur soit compilé avec le module \"msdfgen\". Si "
"cette ressource était une ressource personnalisée, ceci serait géré comme "
"ceci :\n"
"[codeblock]\n"
"func _get_build_dependencies(path):\n"
"\tvar ressource = load(path)\n"
"\tvar dependances = PackedStringArray()\n"
"\n"
"\tif ressource.multichannel_signed_distance_field:\n"
"\t\tdependances.push_back(\"module_msdfgen_enabled\")\n"
"\n"
"\treturn dependances\n"
"[/codeblock]"

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 TSV 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 "Bitmap fonts - Using fonts"
msgstr "Polices Bitmap - Utiliser des polices"

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 as [Translation]s."
msgstr ""
"Importe des valeurs séparées par des virgules en tant que [Translation]s."

msgid "Importing translations"
msgstr "Importer des traductions"

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 "Dynamic fonts - Using fonts"
msgstr "Polices dynamiques - Utiliser des polices d'écriture"

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 "Unimplemented. This currently has no effect when changed."
msgstr "Non implémenté. Ceci n'a actuellement aucun effet lorsque modifié."

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 "Imports a glTF, FBX, COLLADA, or Blender 3D scene."
msgstr "Importe une scène 3D glTF, FBX, COLLADA ou Blender."

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], import animations from the 3D scene."
msgstr "Si [code]true[/code], importe les animations de la scène 3D."

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 "Imports native GLSL shaders (not Godot shaders) as an [RDShaderFile]."
msgstr ""
"Importe des shaders GLSL natifs (pas des shaders Godot) en tant que "
"[RDShaderFile]."

msgid ""
"This imports native GLSL shaders as [RDShaderFile] resources, for use with "
"low-level [RenderingDevice] operations. This importer does [i]not[/i] handle "
"[code].gdshader[/code] files."
msgstr ""
"Cela importe les shaders GLSL natifs en tant que ressources [RDShaderFile], "
"pour une utilisation avec des opérations de [RenderingDevice] de bas niveau. "
"Cet importeur ne gère [i]pas[/i] les fichiers [code].gdshader[/code]."

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], trims the region to exclude fully transparent pixels "
"using a clipping rectangle (which is never rotated). This can be used to save "
"memory. See also [member crop_to_region].\n"
"[b]Note:[/b] Only effective if [member import_mode] is [b]Region[/b]."
msgstr ""
"Si [code]true[/code], coupe la région pour exclure les pixels entièrement "
"transparents en utilisant un rectangle de découpage (qui n'est jamais "
"tourné). Cela peut être utilisé pour économiser de la mémoire. Voir aussi "
"[member crop_to_region].\n"
"[b]Note :[/b] Seulement effectif si [member import_mode] vaut [b]Region[/b]."

msgid "Imports a WAV audio file for playback."
msgstr "Importe un fichier audio WAV pour la lecture."

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 "A singleton for loading resource files."
msgstr "Un singleton pour charger des fichiers de ressource."

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 ""
"A modifier to transfer parent skeleton poses (or global poses) to child "
"skeletons in model space with different rests."
msgstr ""
"Un modificateur pour transférer des poses d'un squelette parent (ou poses "
"globales) à des squelettes enfant dans l'espace modèle avec des repos "
"différents."

msgid ""
"Returns [code]true[/code] if [member enable] has [constant "
"TRANSFORM_FLAG_POSITION]."
msgstr ""
"Renvoie [code]true[/code] si [member enable] a [constant "
"TRANSFORM_FLAG_POSITION]."

msgid ""
"Returns [code]true[/code] if [member enable] has [constant "
"TRANSFORM_FLAG_ROTATION]."
msgstr ""
"Renvoie [code]true[/code] si [member enable] a [constant "
"TRANSFORM_FLAG_ROTATION]."

msgid ""
"Returns [code]true[/code] if [member enable] has [constant "
"TRANSFORM_FLAG_SCALE]."
msgstr ""
"Renvoie [code]true[/code] si [member enable] a [constant "
"TRANSFORM_FLAG_SCALE]."

msgid "Sets [constant TRANSFORM_FLAG_POSITION] into [member enable]."
msgstr "Définit [constant TRANSFORM_FLAG_POSITION] dans [member enable]."

msgid "Sets [constant TRANSFORM_FLAG_ROTATION] into [member enable]."
msgstr "Définit [constant TRANSFORM_FLAG_ROTATION] dans [member enable]."

msgid "Sets [constant TRANSFORM_FLAG_SCALE] into [member enable]."
msgstr "Définit [constant TRANSFORM_FLAG_SCALE] dans [member enable]."

msgid "If set, allows to retarget the position."
msgstr "Si défini, permet de re-cibler la position."

msgid "If set, allows to retarget the rotation."
msgstr "Si défini, permet de re-cibler la rotation."

msgid "If set, allows to retarget the scale."
msgstr "Si défini, permet de re-cibler l'échelle."

msgid "If set, allows to retarget the position/rotation/scale."
msgstr "Si défini, permet de re-cibler la position/rotation/échelle."

msgid "Represents a straight ribbon-shaped [PrimitiveMesh] with variable width."
msgstr ""
"Représente un [PrimitiveMesh] forme de ruban droit avec une largeur variable."

msgid ""
"[RibbonTrailMesh] represents a straight ribbon-shaped mesh with variable "
"width. The ribbon is composed of a number of flat or cross-shaped sections, "
"each with the same [member section_length] and number of [member "
"section_segments]. A [member curve] is sampled along the total length of the "
"ribbon, meaning that the curve determines the size of the ribbon along its "
"length.\n"
"This primitive mesh is usually used for particle trails."
msgstr ""
"[RibbonTrailMesh] représente un maillage en forme de ruban droit avec une "
"largeur variable. Le ruban est composé d'un certain nombre de sections plates "
"ou en forme de croix, chacune avec la même [member section_length] et le même "
"nombre [member section_segments]. Une courbe [member curve] est "
"échantillonnée le long de la longueur totale du ruban, ce qui signifie que la "
"courbe détermine la taille du ruban sur toute sa longueur.\n"
"Ce maillage primitif est généralement utilisé pour les traînées de particules."

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 "The length of a section of the ribbon."
msgstr "La longueur d'une section du ruban."

msgid ""
"The number of segments in a section. The [member curve] is sampled on each "
"segment to determine its size. Higher values result in a more detailed ribbon "
"at the cost of performance."
msgstr ""
"Le nombre de segments dans une section. La courbe [member curve] est "
"échantillonnée sur chaque segment pour déterminer sa taille. Des valeurs plus "
"élevées résultent en un ruban plus détaillé au détriment des performances."

msgid "The total number of sections on the ribbon."
msgstr "Le nombre total de sections sur le ruban."

msgid "Determines the shape of the ribbon."
msgstr "Détermine la forme du ruban."

msgid ""
"The baseline size of the ribbon. The size of a particular section segment is "
"obtained by multiplying this size by the value of the [member curve] at the "
"given distance."
msgstr ""
"La taille de base du ruban. La taille d'un segment particulier de section est "
"obtenue en multipliant cette taille par la valeur de la courbe [member curve] "
"à la distance donnée."

msgid "Gives the mesh a single flat face."
msgstr "Donne au maillage une seule face plate."

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 ""
"A custom effect for a [RichTextLabel], which can be loaded in the "
"[RichTextLabel] inspector or using [method RichTextLabel.install_effect].\n"
"[b]Note:[/b] For a [RichTextEffect] to be usable, a BBCode tag must be "
"defined as a member variable called [code]bbcode[/code] in the script.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"# The RichTextEffect will be usable like this: `[example]Some text[/"
"example]`\n"
"var bbcode = \"example\"\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"// The RichTextEffect will be usable like this: `[example]Some text[/"
"example]`\n"
"string bbcode = \"example\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] As soon as a [RichTextLabel] contains at least one "
"[RichTextEffect], it will continuously process the effect unless the project "
"is paused. This may impact battery life negatively."
msgstr ""
"Un effet personnalisé pour un [RichTextLabel], qui peut être chargé dans "
"l'inspecteur [RichTextLabel] ou en utilisant [method "
"RichTextLabel.install_effect].\n"
"[b]Note :[/b] Pour qu'un [RichTextEffect] soit utilisable, une balise BBCode "
"doit être définie sous forme de variable membre nommée [code]bbcode[/code] "
"dans le script.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"# Le RichTextEffect sera utilisable comme ceci : `[exemple]Du texte[/"
"exemple]`\n"
"var bbcode = \"exemple\"\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"// Le RichTextEffect sera utilisable comme ceci : `[exemple]Du texte[/"
"exemple]`\n"
"string bbcode = \"example\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Dès qu'un [RichTextLabel] contient au moins un "
"[RichTextEffect], il va traiter l'effet en permanence tant que le projet ne "
"sera pas mis en pause. Ceci peut impacter négativement la vie de la batterie."

msgid "RichTextEffect test project (third-party)"
msgstr "Projet de test pour RichTextEffect (tierce partie)"

msgid ""
"Override this method to modify properties in [param char_fx]. The method must "
"return [code]true[/code] if the character could be transformed successfully. "
"If the method returns [code]false[/code], it will skip transformation to "
"avoid displaying broken text."
msgstr ""
"Redéfinissez cette méthode pour modifier les propriétés de [param char_fx]. "
"Cette méthode doit renvoyer [code]true[/code] si le caractère peut être "
"transformé avec succès. Si la méthode renvoie [code]false[/code], l'effet "
"sera ignoré pour éviter de mal afficher le texte."

msgid ""
"A control for displaying text that can contain different font styles, images, "
"and basic formatting."
msgstr ""
"Un contrôle pour afficher du texte qui peut contenir différents styles de "
"police, images et formatage de base."

msgid ""
"A control for displaying text that can contain custom fonts, images, and "
"basic formatting. [RichTextLabel] manages these as an internal tag stack. It "
"also adapts itself to given width/heights.\n"
"[b]Note:[/b] [method newline], [method push_paragraph], [code]\"\\n\"[/code], "
"[code]\"\\r\\n\"[/code], [code]p[/code] tag, and alignment tags start a new "
"paragraph. Each paragraph is processed independently, in its own BiDi "
"context. If you want to force line wrapping within paragraph, any other line "
"breaking character can be used, for example, Form Feed (U+000C), Next Line "
"(U+0085), Line Separator (U+2028).\n"
"[b]Note:[/b] Assignments to [member text] clear the tag stack and reconstruct "
"it from the property's contents. Any edits made to [member text] will erase "
"previous edits made from other manual sources such as [method append_text] "
"and the [code]push_*[/code] / [method pop] methods.\n"
"[b]Note:[/b] RichTextLabel doesn't support entangled BBCode tags. For "
"example, instead of using [code skip-lint][b]bold[i]bold italic[/b]italic[/i]"
"[/code], use [code skip-lint][b]bold[i]bold italic[/i][/b][i]italic[/i][/"
"code].\n"
"[b]Note:[/b] [code]push_*/pop_*[/code] functions won't affect BBCode.\n"
"[b]Note:[/b] While [member bbcode_enabled] is enabled, alignment tags such as "
"[code skip-lint][center][/code] will take priority over the [member "
"horizontal_alignment] setting which determines the default text alignment."
msgstr ""
"Un contrôle pour afficher du texte qui peut contenir des polices "
"personnalisées, des images et un formatage de base. [RichTextLabel] gère ce "
"contenu dans une pile interne de marqueurs. Il peut aussi s'adapter à une "
"hauteur/largeur données.\n"
"[b]Note :[/b] [method newline], [method push_paragraph], [code]\"\\n\"[/"
"code], [code]\"\\r\\n\"[/code], la balise [code]p[/code] et les marqueurs "
"d'alignement commencent un nouveau paragraphe. Chaque paragraphe est traité "
"indépendamment, dans son propre contexte BiDi. Si vous voulez forcer le "
"retour à la ligne dans un paragraphe, n'importe quelle caractère de fin de "
"ligne peut être utilisé, comme par exemple Saut de page (U+000C), Fin de "
"ligne (U+0085), ou le Séparateur de lignes (U+2028).\n"
"[b]Note :[/b] Les assignations à [member text] effacent la pile des balises "
"et la reconstruit à partir du contenu de la propriété. Chaque modification "
"faite à [member text] effacera les modifications précédentes faites depuis "
"une autre source manuelle comme [method append_text] et les méthodes "
"[code]push_*[/code] / [method pop].\n"
"[b]Note :[/b] RichTextLabel ne supporte pas les balises BBCode intriquées. "
"Par exemple, au lieu d'utiliser [code skip-lint][b]bold[i]bold italic[/"
"b]italic[/i][/code], utilisez [code skip-lint][b]bold[i]bold italic[/i][/b]"
"[i]italic[/i][/code].\n"
"[b]Note :[/b] Les méthodes [code]push_*/pop_*[/code] ne modifient pas le "
"BBCode.\n"
"[b]Note :[/b] Tant que [member bbcode_enabled] est activé, les balises "
"d'alignement tels que [code skip-lint][center][/code] prendront la priorité "
"sur le paramètre [member horizontal_alignment] qui détermine l'alignement de "
"texte par défaut."

msgid "Rich Text Label with BBCode Demo"
msgstr "Démo RichTextLabel avec du BBCode"

msgid ""
"Adds a horizontal rule that can be used to separate content.\n"
"If [param width_in_percent] is set, [param width] values are percentages of "
"the control width instead of pixels.\n"
"If [param height_in_percent] is set, [param height] values are percentages of "
"the control width instead of pixels."
msgstr ""
"Ajoute une ligne horizontale qui peut être utilisée pour séparer le contenu.\n"
"Si [param width_in_percent] est défini, [param width] est un pourcentage de "
"la largeur du contrôle au lieu de pixels.\n"
"Si [param height_in_percent] est défini, [param height] est un pourcentage de "
"la hauteur du contrôle au lieu de pixels."

msgid ""
"Adds an image's opening and closing tags to the tag stack, optionally "
"providing a [param width] and [param height] to resize the image, a [param "
"color] to tint the image and a [param region] to only use parts of the "
"image.\n"
"If [param width] or [param height] is set to 0, the image size will be "
"adjusted in order to keep the original aspect ratio.\n"
"If [param width] and [param height] are not set, but [param region] is, the "
"region's rect will be used.\n"
"[param key] is an optional identifier, that can be used to modify the image "
"via [method update_image].\n"
"If [param pad] is set, and the image is smaller than the size specified by "
"[param width] and [param height], the image padding is added to match the "
"size instead of upscaling.\n"
"If [param width_in_percent] is set, [param width] values are percentages of "
"the control width instead of pixels.\n"
"If [param height_in_percent] is set, [param height] values are percentages of "
"the control width instead of pixels.\n"
"[param alt_text] is used as the image description for assistive apps."
msgstr ""
"Ajoute les balises d'ouverture et de fermeture d'une image à la pile des "
"balises, en fournissant en option une largeur [param width] et une hauteur "
"[param height] pour redimensionner l'image, une couleur [param color] pour "
"teinter l'image et une [param region] pour utiliser uniquement des parties de "
"l'image.\n"
"Si [param width] ou [param height] est défini à 0, la taille de l'image sera "
"ajustée afin de garder le rapport d'aspect original.\n"
"Si [param width] et [param height] ne sont pas définis, mais [param region] "
"l'est, le rectangle de la région sera utilisé.\n"
"[param key] est un identifiant optionnel, qui peut être utilisé pour modifier "
"l'image via [method update_image].\n"
"Si [param pad] est défini, et que l'image est plus petite que la taille "
"spécifiée par [param width] et [param height], le rembourrage de l'image est "
"ajouté pour correspondre à la taille au lieu de la mettre à l'échelle..\n"
"Si [param width_in_percent] est défini, la valeur de [param width] est un "
"pourcentage de la largeur du contrôle au lieu de pixels.\n"
"Si [param height_in_percent] est défini, la valeur de [param height] est un "
"pourcentage de la hauteur du contrôle au lieu de pixels.\n"
"[param alt_text] est utilisé comme description de l'image pour les "
"applications d'assistance."

msgid "Adds raw non-BBCode-parsed text to the tag stack."
msgstr "Ajoute du texte brut non interprété en BBCode à le pile des balises."

msgid ""
"Parses [param bbcode] and adds tags to the tag stack as needed.\n"
"[b]Note:[/b] Using this method, you can't close a tag that was opened in a "
"previous [method append_text] call. This is done to improve performance, "
"especially when updating large RichTextLabels since rebuilding the whole "
"BBCode every time would be slower. If you absolutely need to close a tag in a "
"future method call, append the [member text] instead of using [method "
"append_text]."
msgstr ""
"Parse le [param bbcode] et ajoute des balises à la pile des balises au "
"besoin.\n"
"[b]Note :[/b] En utilisant cette méthode, vous ne pouvez pas fermer une "
"balise qui a été ouverte dans un appel précédent à [method append_text]. Ceci "
"est fait pour améliorer les performances, en particulier lors de la mise à "
"jour de grands RichTextLabels car la reconstruction de tout le BBCode à "
"chaque fois serait plus lent. Si vous avez absolument besoin de fermer une "
"balise dans un futur appel de méthode, ajoutez au [member text] au lieu "
"d'utiliser [method append_text]."

msgid ""
"Clears the tag stack, causing the label to display nothing.\n"
"[b]Note:[/b] This method does not affect [member text], and its contents will "
"show again if the label is redrawn. However, setting [member text] to an "
"empty [String] also clears the stack."
msgstr ""
"Vide la pile des balises, ce qui fait que l'étiquette n'affiche rien.\n"
"[b]Note :[/b] Cette méthode n'affecte pas [member text], et son contenu "
"s'affichera de nouveau si l'étiquette est redessinée. Cependant, définir "
"[member text] à un [String] vide va également vider la pile."

msgid ""
"Returns the line number of the character position provided. Line and "
"character numbers are both zero-indexed.\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 numéro de ligne de la position de caractère fournie. Les numéros "
"de lignes et de caractères sont tous deux indexés en commençant à zéro.\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 paragraph number of the character position provided. Paragraph "
"and character numbers are both zero-indexed.\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 numéro de paragraphe de la position de caractère fournie. Les "
"numéros de paragraphe et de caractère sont tous deux indexés en commençant à "
"zéro.\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 height of the content.\n"
"[b]Note:[/b] This method always returns the full content size, and is not "
"affected by [member visible_ratio] and [member visible_characters]. To get "
"the visible content size, use [method get_visible_content_rect].\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 la hauteur du contenu.\n"
"[b]Note:[/b] Cette méthode renvoie toujours la taille de contenu complet, et "
"n'est pas affectée par [member visible_ratio] et [member visible_characters]. "
"Pour obtenir la taille du contenu visible, utilisez [method "
"get_visible_content_rect].\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 width of the content.\n"
"[b]Note:[/b] This method always returns the full content size, and is not "
"affected by [member visible_ratio] and [member visible_characters]. To get "
"the visible content size, use [method get_visible_content_rect].\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 la largeur du contenu.\n"
"[b]Note:[/b] Cette méthode renvoie toujours la taille de contenu complet, et "
"n'est pas affectée par [member visible_ratio] et [member visible_characters]. "
"Pour obtenir la taille du contenu visible, utilisez [method "
"get_visible_content_rect].\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 lines in the text. Wrapped text is counted as "
"multiple lines.\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 total de lignes dans le texte. Les textes avec des retours "
"à la ligne sont comptés comme plusieurs lignes.\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 height of the line found at the provided index.\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 the document is fully loaded."
msgstr ""
"Renvoie la hauteur de la ligne trouvée à l'index fourni.\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 vertical offset of the line found at the provided index.\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 décalage vertical de la ligne trouvée à l'index fourni.\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 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 width of the line found at the provided index.\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 the document is fully loaded."
msgstr ""
"Renvoie la largeur de la ligne trouvée à l'index fourni.\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 [PopupMenu] of this [RichTextLabel]. By default, this menu is "
"displayed when right-clicking on the [RichTextLabel].\n"
"You can add custom menu items or remove standard ones. Make sure your IDs "
"don't conflict with the standard ones (see [enum MenuItems]). For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Remove \"Select All\" item.\n"
"\tmenu.remove_item(MENU_SELECT_ALL)\n"
"\t# Add custom items.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Duplicate Text\", MENU_MAX + 1)\n"
"\t# Connect callback.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tadd_text(\"\\n\" + get_parsed_text())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Remove \"Select All\" item.\n"
"\tmenu.RemoveItem(RichTextLabel.MenuItems.SelectAll);\n"
"\t// Add custom items.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Duplicate Text\", RichTextLabel.MenuItems.Max + 1);\n"
"\t// Add event handler.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == TextEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tAddText(\"\\n\" + GetParsedText());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\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] de ce [RichTextLabel]. Par défaut, ce menu s'affiche "
"lors d'un clic droit sur le [RichTextLabel].\n"
"Vous pouvez ajouter des éléments de menu personnalisés ou supprimer ceux "
"standard. Assurez-vous que vos identifiants ne sont pas en conflit avec les "
"identifiants standards (voir [enum MenuItems]). Par exemple :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Retirer l’élément \"Sélectionner tout\".\n"
"\tmenu.remove_item(MENU_SELECT_ALL)\n"
"\t# Ajouter des éléments personnalisés.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Dupliquer texte\", MENU_MAX + 1)\n"
"\t# Connecter le callback.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tadd_text(\"\\n\" + get_parsed_text())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Retirer l’élément \"Sélectionner tout\".\n"
"\tmenu.RemoveItem(RichTextLabel.MenuItems.SelectAll);\n"
"\t// Ajouter des éléments personnalisés.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Duplicate Text\", RichTextLabel.MenuItems.Max + 1);\n"
"\t// Ajouter le gestionnaire d'élément.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == TextEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tAddText(\"\\n\" + GetParsedText());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\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 ""
"Returns the total number of paragraphs (newlines or [code]p[/code] tags in "
"the tag stack's text tags). Considers wrapped text as one paragraph."
msgstr ""
"Renvoie le nombre total de paragraphes (balises nouvelle ligne ou [code]p[/"
"code] dans la pile des balises du texte). Considère un texte renvoyé "
"automatiquement à la ligne comme un seul paragraphe."

msgid ""
"Returns the vertical offset of the paragraph found at the provided index.\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 décalage vertical du paragraphe trouvé à l'index fourni.\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 text without BBCode mark-up."
msgstr "Renvoie le texte sans balisage BBCode."

msgid "Returns the current selection text. Does not include BBCodes."
msgstr "Renvoie le texte actuellement sélectionné. N'inclut pas les BBCodes."

msgid ""
"Returns the current selection first character index if a selection is active, "
"[code]-1[/code] otherwise. Does not include BBCodes."
msgstr ""
"Renvoie l'index du premier caractère de la sélection actuelle si une "
"sélection est active, [code]-1[/code] sinon. N'inclut pas les BBCodes."

msgid ""
"Returns the current selection last character index if a selection is active, "
"[code]-1[/code] otherwise. Does not include BBCodes."
msgstr ""
"Renvoie l'index du dernier caractère de la sélection actuelle si une "
"sélection est active, [code]-1.0[/code] sinon. N'inclut pas les BBCodes."

msgid ""
"Returns the total number of characters from text tags. Does not include "
"BBCodes."
msgstr ""
"Renvoie le nombre total de caractères des marqueurs du texte. N'inclus pas "
"les BBCodes."

msgid ""
"Returns the bounding rectangle of the visible content.\n"
"[b]Note:[/b] This method returns a correct value only after the label has "
"been drawn.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends RichTextLabel\n"
"\n"
"@export var background_panel: Panel\n"
"\n"
"func _ready():\n"
"\tawait draw\n"
"\tbackground_panel.position = get_visible_content_rect().position\n"
"\tbackground_panel.size = get_visible_content_rect().size\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class TestLabel : RichTextLabel\n"
"{\n"
"\t[Export]\n"
"\tpublic Panel BackgroundPanel { get; set; }\n"
"\n"
"\tpublic override async void _Ready()\n"
"\t{\n"
"\t\tawait ToSignal(this, Control.SignalName.Draw);\n"
"\t\tBackgroundGPanel.Position = GetVisibleContentRect().Position;\n"
"\t\tBackgroundPanel.Size = GetVisibleContentRect().Size;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le rectangle délimitant du contenu visible.\n"
"[b]Note :[/b] Cette méthode renvoie une valeur correcte seulement après que "
"l'étiquette a été dessinée.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends RichTextLabel\n"
"\n"
"@export var panneau_arriere_plan : Panel\n"
"\n"
"func _ready():\n"
"\tawait draw\n"
"\tpanneau_arriere_plan.position = get_visible_content_rect().position\n"
"\tpanneau_arriere_plan.size = get_visible_content_rect().size\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class TestLabel : RichTextLabel\n"
"{\n"
"\t[Export]\n"
"\tpublic Panel PanneauArrierePlan { get; set; }\n"
"\n"
"\tpublic override async void _Ready()\n"
"\t{\n"
"\t\tawait ToSignal(this, Control.SignalName.Draw);\n"
"\t\tPanneauArrierePlan.Position = GetVisibleContentRect().Position;\n"
"\t\tPanneauArrierePlan.Size = GetVisibleContentRect().Size;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"Returns the number of visible paragraphs. A paragraph is considered visible "
"if at least one of its lines is visible.\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 paragraphes visibles. Un paragraphe est considéré comme "
"visible si au moins une de ses lignes est visible.\n"
"[b]Note :[/b] Cette méthode renvoie une valeur correcte seulement après que "
"l'étiquette ait été dessinée.\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 ""
"Installs a custom effect. This can also be done in the Inspector through the "
"[member custom_effects] property. [param effect] should be a valid "
"[RichTextEffect].\n"
"[b]Example:[/b] With the following script extending from [RichTextEffect]:\n"
"[codeblock]\n"
"# effect.gd\n"
"class_name MyCustomEffect\n"
"extends RichTextEffect\n"
"\n"
"var bbcode = \"my_custom_effect\"\n"
"\n"
"# ...\n"
"[/codeblock]\n"
"The above effect can be installed in [RichTextLabel] from a script:\n"
"[codeblock]\n"
"# rich_text_label.gd\n"
"extends RichTextLabel\n"
"\n"
"func _ready():\n"
"\tinstall_effect(MyCustomEffect.new())\n"
"\n"
"\t# Alternatively, if not using `class_name` in the script that extends "
"RichTextEffect:\n"
"\tinstall_effect(preload(\"res://effect.gd\").new())\n"
"[/codeblock]"
msgstr ""
"Installe un effet personnalisé. Cela peut également être fait dans "
"l'Inspecteur par l'intermédiaire de la propriété [member custom_effects]. "
"[param effect] devrait être un [RichTextEffect] valide.\n"
"[b]Exemple :[/b] Avec le script suivant étendant [RichTextEffect] :\n"
"[codeblock]\n"
"# effet.gd\n"
"class_name MonEffetPerso\n"
"extends RichTextEffect\n"
"\n"
"var bbcode = \"mon_effet_perso\"\n"
"\n"
"# ...\n"
"[/codeblock]\n"
"L'effet ci-dessus peut être installé dans [RichTextLabel] depuis un script :\n"
"[codeblock]\n"
"# rich_text_label.gd\n"
"extends RichTextLabel\n"
"\n"
"func _ready():\n"
"\tinstall_effect(MonEffetPerso.new())\n"
"\n"
"\t# Sinon, sans utiliser `class_name` dans le script qui étend "
"RichTextEffect :\n"
"\tinstall_effect(preload(\"res://effet.gd\").new())\n"
"[/codeblock]"

msgid "Invalidates [param paragraph] and all subsequent paragraphs cache."
msgstr "Invalide [param paragraph] et le cache des paragraphes suivants."

msgid ""
"If [member threaded] is enabled, returns [code]true[/code] if the background "
"thread has finished text processing, otherwise always return [code]true[/"
"code]."
msgstr ""
"Si [member threaded] est activé, renvoie [code]true[/code] si le thread "
"d'arrière-plan a terminé le traitement du texte, sinon renvoie toujours "
"[code]true[/code]."

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

msgid "Adds a newline tag to the tag stack."
msgstr "Ajoute une balise de retour à la ligne à la pile des balises."

msgid ""
"The assignment version of [method append_text]. Clears the tag stack and "
"inserts the new content."
msgstr ""
"La version en assignation de [method append_text]. Vide la pile des balises "
"et insère le nouveau contenu."

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 ""
"Adds a [code skip-lint][font][/code] tag with a bold font to the tag stack. "
"This is the same as adding a [code skip-lint][b][/code] tag if not currently "
"in a [code skip-lint][i][/code] tag."
msgstr ""
"Ajoute une balise [code skip-lint][font][/code] avec une police en gras à la "
"pile des balises . Ceci est identique à l'ajout d'une balise [code skip-lint]"
"[b][/code] si nous ne sommes pas actuellement dans une balise[code skip-lint]"
"[i][/code]."

msgid ""
"Adds a [code skip-lint][font][/code] tag with a bold italics font to the tag "
"stack."
msgstr ""
"Ajoute une balise [code skip-lint][font][/code] avec une police en italique "
"gras à la pile des balises."

msgid ""
"Adds a [code skip-lint][cell][/code] tag to the tag stack. Must be inside a "
"[code skip-lint][table][/code] tag. See [method push_table] for details. Use "
"[method set_table_column_expand] to set column expansion ratio, [method "
"set_cell_border_color] to set cell border, [method "
"set_cell_row_background_color] to set cell background, [method "
"set_cell_size_override] to override cell size, and [method set_cell_padding] "
"to set padding."
msgstr ""
"Ajoute une balise [code skip-lint][cell][/code] à la pile des balises. Doit "
"être à l'intérieur d'une balise [code skip-lint][table][/code]. Voir [method "
"push_table] pour plus de détails. Utilisez [method set_table_column_expand] "
"pour définir le rapport d'extension de la colonne, [method "
"set_cell_border_color] pour définir la bordure de la cellule, [method "
"set_cell_row_background_color] pour définir l'arrière-plan de la cellule, "
"[method set_cell_size_override] pour redéfinir la taille de la cellule, et "
"[method set_cell_padding] pour définir le rembourrage."

msgid "Adds a [code skip-lint][color][/code] tag to the tag stack."
msgstr "Ajoute une balise [code skip-lint][color][/code] à la pile des balises."

msgid "Adds a context marker to the tag stack. See [method pop_context]."
msgstr ""
"Ajoute un marqueur de contexte à la pile des balises. Voir [method "
"pop_context]."

msgid ""
"Adds a custom effect tag to the tag stack. The effect does not need to be in "
"[member custom_effects]. The environment is directly passed to the effect."
msgstr ""
"Ajoute une balise d'effet personnalisé à la pile des balises. L'effet n'a pas "
"besoin d'être dans [member custom_effects]. L'environnement est directement "
"transmis à l'effet."

msgid ""
"Adds a [code skip-lint][dropcap][/code] tag to the tag stack. Drop cap "
"(dropped capital) is a decorative element at the beginning of a paragraph "
"that is larger than the rest of the text."
msgstr ""
"Ajoute une balise [code skip-lint][dropcap][/code] à la pile des balises. Le "
"dropcap, ou lettrine en français, est un élément décoratif au début d'un "
"paragraphe qui est plus grand que le reste du texte."

msgid ""
"Adds a [code skip-lint][font][/code] tag to the tag stack. Overrides default "
"fonts for its duration.\n"
"Passing [code]0[/code] to [param font_size] will use the existing default "
"font size."
msgstr ""
"Ajoute une balise [code skip-lint][font][/code] à la pile des balises. "
"Redéfinit les polices par défaut pendant sa durée.\n"
"Passer [code]0[/code] à [param font_size] utilisera la taille de police par "
"défaut existante."

msgid ""
"Adds a [code skip-lint][font_size][/code] tag to the tag stack. Overrides "
"default font size for its duration."
msgstr ""
"Ajoute une balise [code skip-lint][font_size][/code] à la pile des balises. "
"Redéfinit la taille de police par défaut pendant sa durée."

msgid ""
"Adds a [code skip-lint][hint][/code] tag to the tag stack. Same as BBCode "
"[code skip-lint][hint=something]{text}[/hint][/code]."
msgstr ""
"Ajoute un marqueur [code skip-lint][hint][/code] à la pile des balises. "
"Identique au BBCode [code skip-lint][hint=something]{texte}[/hint][/code]."

msgid ""
"Adds an [code skip-lint][indent][/code] tag to the tag stack. Multiplies "
"[param level] by current [member tab_size] to determine new margin length."
msgstr ""
"Ajoute une balise [code skip-lint][indent][/code] à la pile des balises. "
"Multiple [param level] par le [member tab_size] actuel pour déterminer la "
"nouvelle taille des marges."

msgid ""
"Adds a [code skip-lint][font][/code] tag with an italics font to the tag "
"stack. This is the same as adding an [code skip-lint][i][/code] tag if not "
"currently in a [code skip-lint][b][/code] tag."
msgstr ""
"Ajouter une balise [code skip-lint][font][/code] avec une police en italique "
"à la pile des balises. Identique à l'ajout d'une balise [code skip-lint][i][/"
"code] si nous ne sommes pas dans une balise [code skip-lint][b][/code]."

msgid ""
"Adds language code used for text shaping algorithm and Open-Type font "
"features."
msgstr ""
"Ajoute un code de langage, utilisé pour l'algorithme de façonnage de texte et "
"les fonctionnalités de police Open-Type."

msgid ""
"Adds [code skip-lint][ol][/code] or [code skip-lint][ul][/code] tag to the "
"tag stack. Multiplies [param level] by current [member tab_size] to determine "
"new margin length."
msgstr ""
"Ajoute une balise [code skip-lint][ol][/code] ou [code skip-lint][ul][/code] "
"à la pile des balises. Multiple [param level] par le [member tab_size] actuel "
"pour déterminer la nouvelle taille des marges."

msgid ""
"Adds a meta tag to the tag stack. Similar to the BBCode [code skip-lint]"
"[url=something]{text}[/url][/code], but supports non-[String] metadata "
"types.\n"
"If [member meta_underlined] is [code]true[/code], meta tags display an "
"underline. This behavior can be customized with [param underline_mode].\n"
"[b]Note:[/b] Meta tags do nothing by default when clicked. To assign behavior "
"when clicked, connect [signal meta_clicked] to a function that is called when "
"the meta tag is clicked."
msgstr ""
"Ajoute une méta-balise à la pile de balises. Similaire au BBCode [code skip-"
"lint][url=qqch]{texte}[/url][/code], mais prend en charge les types de "
"métadonnées non-[String].\n"
"Si [member meta_underlined] vaut [code]true[/code], les méta-balises sont "
"soulignées. Ce comportement peut être personnalisé avec [param "
"underline_mode].\n"
"[b]Note :[/b] Les méta-balises ne font rien par défaut lorsqu'elles sont "
"cliquées. Pour attribuer le comportement lorsque cliquées, connectez [signal "
"meta_clicked] à une fonction qui est appelée lorsque la méta-balise est "
"cliquée."

msgid ""
"Adds a [code skip-lint][font][/code] tag with a monospace font to the tag "
"stack."
msgstr ""
"Ajoute une balise [code skip-lint][font][/code] avec une police monospace à "
"la pile des balises."

msgid ""
"Adds a [code skip-lint][font][/code] tag with a normal font to the tag stack."
msgstr ""
"Ajoute une balise [code skip-lint][font][/code] avec une police normale à la "
"pile des balises."

msgid ""
"Adds a [code skip-lint][outline_color][/code] tag to the tag stack. Adds text "
"outline for its duration."
msgstr ""
"Ajouter une balise [code skip-lint][outline_color][/code] à la pile des "
"balises. Ajoute un contour au texte pendant sa durée."

msgid ""
"Adds a [code skip-lint][outline_size][/code] tag to the tag stack. Overrides "
"default text outline size for its duration."
msgstr ""
"Ajoute une balise [code skip-lint][outline_size][/code] à la pile des "
"balises. Redéfinit la taille du contour du texte pendant sa durée."

msgid "Adds a [code skip-lint][p][/code] tag to the tag stack."
msgstr "Ajoute une balise [code skip-lint][p][/code] à la pile des balises."

msgid ""
"Adds a [code skip-lint][table=columns,inline_align][/code] tag to the tag "
"stack. Use [method set_table_column_expand] to set column expansion ratio. "
"Use [method push_cell] to add cells. [param name] is used as the table name "
"for assistive apps."
msgstr ""
"Ajoute une balise [code skip-lint][table=columns,inline_align][/code] à la "
"pile des balises. Utilisez [method set_table_column_expand] pour définir le "
"rapport d'extension de la colonne. Utilisez [method push_cell] pour ajouter "
"des cellules. [param name] est utilisé comme nom du tableau pour les "
"applications d'assistance."

msgid ""
"Reloads custom effects. Useful when [member custom_effects] is modified "
"manually."
msgstr ""
"Recharge les effets personnalisés. Utile lorsque [member custom_effects] est "
"modifié manuellement."

msgid ""
"Removes a paragraph of content from the label. Returns [code]true[/code] if "
"the paragraph exists.\n"
"The [param paragraph] argument is the index of the paragraph to remove, it "
"can take values in the interval [code][0, get_paragraph_count() - 1][/code].\n"
"If [param no_invalidate] is set to [code]true[/code], cache for the "
"subsequent paragraphs is not invalidated. Use it for faster updates if "
"deleted paragraph is fully self-contained (have no unclosed tags), or this "
"call is part of the complex edit operation and [method invalidate_paragraph] "
"will be called at the end of operation."
msgstr ""
"Retire un paragraphe de contenu de l'étiquette. Renvoie [code]true[/code] si "
"le paragraphe existe.\n"
"L'argument [param paragraph] est l'index du paragraphe à supprimer, il peut "
"prendre des valeurs dans l'intervalle [code][0, get_paragraph_count() - 1][/"
"code].\n"
"Si [param no_invalidate] est défini à [code]true[/code], le cache des "
"paragraphes suivants n'est pas invalidé. Utilisez-le pour des mises à jour "
"plus rapides si le paragraphe supprimé est entièrement autonome (pas de "
"balises non fermées), ou cet appel fait partie d'une opération de "
"modification complexe et [method invalidate_paragraph] sera appelée à la fin "
"de l'opération."

msgid "Scrolls the window's top line to match [param line]."
msgstr ""
"Fait défiler la ligne supérieure de la fenêtre pour correspondre à la ligne "
"[param line]."

msgid ""
"Scrolls the window's top line to match first line of the [param paragraph]."
msgstr ""
"Fait défiler la ligne supérieure de la fenêtre pour correspondre à la "
"première ligne du [param paragraph]."

msgid "Scrolls to the beginning of the current selection."
msgstr "Défile vers le début de la sélection actuelle."

msgid ""
"Select all the text.\n"
"If [member selection_enabled] is [code]false[/code], no selection will occur."
msgstr ""
"Sélectionne tout le texte.\n"
"Si [member selection_enabled] vaut [code]false[/code], aucun sélection ne se "
"fera."

msgid "Sets color of a table cell border."
msgstr "Définit la couleur d'une bordure de cellule de tableau."

msgid "Sets inner padding of a table cell."
msgstr "Définit le rembourrage intérieur d'une cellule de tableau."

msgid ""
"Sets color of a table cell. Separate colors for alternating rows can be "
"specified."
msgstr ""
"Définit la couleur d'une cellule de tableau. Des couleurs distinctes pour des "
"rangées alternées peuvent être spécifiées."

msgid "Sets minimum and maximum size overrides for a table cell."
msgstr ""
"Définit la redéfinition de la taille minimale et maximale pour une cellule de "
"tableau."

msgid ""
"Edits the selected column's expansion options. If [param expand] is "
"[code]true[/code], the column expands in proportion to its expansion ratio "
"versus the other columns' ratios.\n"
"For example, 2 columns with ratios 3 and 4 plus 70 pixels in available width "
"would expand 30 and 40 pixels, respectively.\n"
"If [param expand] is [code]false[/code], the column will not contribute to "
"the total ratio."
msgstr ""
"Modifie les options d'extension de la colonne sélectionnée. Si [param expand] "
"vaut [code]true[/code], la colonne s'étend proportionnellement à son rapport "
"d'extension par rapport aux rapport des autres colonnes.\n"
"Par exemple, 2 colonnes avec des ratios 3 et 4 avec 70 pixels en largeur "
"disponible augmenteraient respectivement 30 et 40 pixels.\n"
"Si [param expand] vaut [code]false[/code], la colonne ne contribuera pas au "
"rapport total."

msgid "Sets table column name for assistive apps."
msgstr ""
"Définit le nom d'une colonne de tableau pour les applications d'assistance."

msgid ""
"Updates the existing images with the key [param key]. Only properties "
"specified by [param mask] bits are updated. See [method add_image]."
msgstr ""
"Met à jour les images existantes avec la clé [param key]. Seules les "
"propriétés spécifiées par les bits de [param mask] sont mises à jour. Voir "
"[method add_image]."

msgid ""
"If [code]true[/code], the label uses BBCode formatting.\n"
"[b]Note:[/b] This only affects the contents of [member text], not the tag "
"stack."
msgstr ""
"Si [code]true[/code], l'étiquette utilise le formatage BBCode.\n"
"[b]Note :[/b] Cela n'affecte que le contenu de [member text], pas la pile des "
"balises."

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 label's minimum size will be automatically updated "
"to fit its content, matching the behavior of [Label]."
msgstr ""
"Si [code]true[/code], la taille minimale de l'étiquette sera automatiquement "
"mise à jour pour s'ajuster à son contenu, correspondant ainsi au comportement "
"de [Label]."

msgid ""
"If [code]true[/code], the label underlines hint tags such as [code skip-lint]"
"[hint=description]{text}[/hint][/code]."
msgstr ""
"Si [code]true[/code], l'étiquette souligne les balises d'indice comme [code "
"skip-lint][hint=description]{texte}[/hint][/code]."

msgid ""
"If [code]true[/code], the label underlines meta tags such as [code skip-lint]"
"[url]{text}[/url][/code]. These tags can call a function when clicked if "
"[signal meta_clicked] is connected to a function."
msgstr ""
"Si [code]true[/code], l'étiquette souligne les méta-balises comme [code skip-"
"lint][url]{text}[/url][/code]. Ces balises peuvent appeler une fonction "
"lorsqu'elles sont cliquées si [signal meta_clicked] est connecté à une "
"fonction."

msgid ""
"The delay after which the loading progress bar is displayed, in milliseconds. "
"Set to [code]-1[/code] to disable progress bar entirely.\n"
"[b]Note:[/b] Progress bar is displayed only if [member threaded] is enabled."
msgstr ""
"Le délai après lequel la barre de progression du chargement est affichée, en "
"millisecondes. Définir à [code]-1[/code] pour désactiver entièrement la barre "
"de progression.\n"
"[b]Note :[/b] La barre de progression n'est affichée que si [member threaded] "
"est activé."

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 window scrolls to display the last visible line "
"when [member visible_characters] or [member visible_ratio] is changed."
msgstr ""
"Si [code]true[/code], la fenêtre défile pour afficher la dernière ligne "
"visible lorsque [member visible_characters] ou [member visible_ratio] sont "
"modifiés."

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 ""
"The label's text in BBCode format. Is not representative of manual "
"modifications to the internal tag stack. Erases changes made by other methods "
"when edited.\n"
"[b]Note:[/b] If [member bbcode_enabled] is [code]true[/code], it is unadvised "
"to use the [code]+=[/code] operator with [member text] (e.g. [code]text += "
"\"some string\"[/code]) as it replaces the whole text and can cause "
"slowdowns. It will also erase all BBCode that was added to stack using "
"[code]push_*[/code] methods. Use [method append_text] for adding text "
"instead, unless you absolutely need to close a tag that was opened in an "
"earlier method call."
msgstr ""
"Le texte de l'étiquette en format BBCode. N'est pas représentatif des "
"modifications manuelles à la pile des balises interne. Efface les "
"modifications apportées par d'autres méthodes lorsque modifié.\n"
"[b]Note :[/b] Si [member bbcode_enabled] vaut [code]true[/code], il n'est pas "
"conseillé d'utiliser l'opérateur [code]+=[/code] avec [member text] (par ex. "
"[code]text += \"une chaîne\"[/code]) car il remplace le texte entier et peut "
"causer des ralentissements. Il effacera également tout le BBCode qui a été "
"ajouté à la pile en utilisant les méthodes [code]push_*[/code]. Utilisez "
"[method append_text] pour ajouter du texte à la place, à moins que vous "
"n'ayez absolument besoin de fermer une balise qui a été ouverte dans un appel "
"de méthode antérieur."

msgid "If [code]true[/code], text processing is done in a background thread."
msgstr ""
"Si [code]true[/code], le traitement du texte est effectué dans un thread "
"d'arrière-plan."

msgid ""
"Triggered when the document is fully loaded.\n"
"[b]Note:[/b] This can happen before the text is processed for drawing. "
"Scrolling values may not be valid until the document is drawn for the first "
"time after this signal."
msgstr ""
"Déclenché lorsque le document est entièrement chargé.\n"
"[b]Note :[/b] Cela peut se produire avant que le texte ne soit traité pour le "
"dessin. Les valeurs de défilement peuvent ne pas être valides jusqu'à ce que "
"le document soit dessiné pour la première fois après ce signal."

msgid ""
"Triggered when the user clicks on content between meta (URL) tags. If the "
"meta is defined in BBCode, e.g. [code skip-lint][url={\"key\": "
"\"value\"}]Text[/url][/code], then the parameter for this signal will always "
"be a [String] type. If a particular type or an object is desired, the [method "
"push_meta] method must be used to manually insert the data into the tag "
"stack. Alternatively, you can convert the [String] input to the desired type "
"based on its contents (such as calling [method JSON.parse] on it).\n"
"For example, the following method can be connected to [signal meta_clicked] "
"to open clicked URLs using the user's default web browser:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This assumes RichTextLabel's `meta_clicked` signal was connected to\n"
"# the function below using the signal connection dialog.\n"
"func _richtextlabel_on_meta_clicked(meta):\n"
"\t# `meta` is of Variant type, so convert it to a String to avoid script "
"errors at run-time.\n"
"\tOS.shell_open(str(meta))\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Déclenché lorsque l'utilisateur clique sur du contenu entre des méta-balises "
"(URL). Si le méta est défini en BBCode, par exemple [code skip-lint]"
"[url={\"clé\": \"valeur\"}]Texte[/url][/code], alors le paramètre pour ce "
"signal sera toujours un type [String]. Si un type particulier ou un objet est "
"souhaité, la méthode [method push_meta] doit être utilisée pour insérer "
"manuellement les données dans la pile des balises. Alternativement, vous "
"pouvez convertir l'entrée [String] au type souhaité en fonction de son "
"contenu (comme appeler [method JSON.parse] dessus).\n"
"Par exemple, la méthode suivante peut être connectée à [signal meta_clicked] "
"pour ouvrir des URLs cliquées en utilisant le navigateur Web par défaut de "
"l'utilisateur :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Cela suppose que le signal `meta_clicked` de RichTextLabel a été connecté "
"à\n"
"# la fonction ci-dessous en utilisant le dialogue de connexion de signal.\n"
"func _richtextlabel_on_meta_clicked(meta):\n"
"\t# `meta` est de type Variant, alors convertissez-le en un String pour "
"éviter des erreurs de script durant l'exécution.\n"
"\tOS.shell_open(str(meta))\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Triggers when the mouse exits a meta tag."
msgstr "Se déclenche lorsque la souris sort d'une méta-balise."

msgid "Triggers when the mouse enters a meta tag."
msgstr "Se déclenche lorsque la souris entre dans une méta-balise."

msgid "Each list item has a number marker."
msgstr "Chaque élément de la liste a un chiffre comme marqueur."

msgid "Each list item has a letter marker."
msgstr "Chaque élément de la liste a une lettre comme marqueur."

msgid "Each list item has a roman number marker."
msgstr "Chaque élément de la liste a un nombre romain comme marqueur."

msgid "Each list item has a filled circle marker."
msgstr "Chaque élément de la liste a un cercle rempli comme marqueur."

msgid "Selects the whole [RichTextLabel] text."
msgstr "Sélectionne le texte [RichTextLabel] entier."

msgid ""
"Meta tag does not display an underline, even if [member meta_underlined] is "
"[code]true[/code]."
msgstr ""
"Les méta-balises ne sont pas soulignées, même si [member meta_underlined] "
"vaut [code]true[/code]."

msgid ""
"If [member meta_underlined] is [code]true[/code], meta tag always display an "
"underline."
msgstr ""
"Si [member meta_underlined] vaut [code]true[/code], les méta-balises sont "
"toujours soulignées."

msgid ""
"If [member meta_underlined] is [code]true[/code], meta tag display an "
"underline when the mouse cursor is over it."
msgstr ""
"Si [member meta_underlined] vaut [code]true[/code], les méta-balises sont "
"soulignées lorsque le curseur de la souris les survole."

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 padding."
msgstr ""
"Si ce bit est défini, [method update_image] modifie le rembourrage 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 cell border color."
msgstr "La couleur par défaut de la bordure de cellule."

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 ""
"Additional vertical spacing between paragraphs (in pixels). Spacing is added "
"after the last line. This value can be negative."
msgstr ""
"Espacement vertical supplémentaire entre des paragraphes (en pixels). "
"L'espacement est ajouté après la dernière ligne. Cette valeur peut être "
"négative."

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 default strikethrough color transparency (percent). For strikethroughs "
"with a custom color, this theme item is only used if the custom color's alpha "
"is [code]0.0[/code] (fully transparent)."
msgstr ""
"La transparence de la couleur de la biffure par défaut (en pourcentage). Pour "
"les biffures avec une couleur personnalisée, cet élément de thème n'est "
"utilisé que si l'alpha de la couleur personnalisée vaut [code]0.0[/code] "
"(complètement transparente)."

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 horizontal padding around boxes drawn by the [code][fgcolor][/code] and "
"[code][bgcolor][/code] tags. This does not affect the appearance of text "
"selection. To avoid any risk of neighboring highlights overlapping each "
"other, set this to [code]0[/code] to disable padding."
msgstr ""
"Le rembourrage horizontal autour des boîtes dessinées par les balises [code]"
"[fgcolor][/code] et [code][bgcolor][/code]. Cela n'affecte pas l'apparence de "
"la sélection de texte. Pour éviter tout risque de mises en valeur voisines "
"qui se chevauchent, définissez ceci à [code]0[/code] pour désactiver le "
"rembourrage."

msgid ""
"The vertical padding around boxes drawn by the [code][fgcolor][/code] and "
"[code][bgcolor][/code] tags. This does not affect the appearance of text "
"selection. To avoid any risk of neighboring highlights overlapping each "
"other, set this to [code]0[/code] to disable padding."
msgstr ""
"Le rembourrage vertical autour des boîtes dessinées par les balises [code]"
"[fgcolor][/code] et [code][bgcolor][/code]. Cela n'affecte pas l'apparence de "
"la sélection de texte. Pour éviter tout risque de mises en valeur voisines "
"qui se chevauchent, définissez ceci à [code]0[/code] pour désactiver le "
"rembourrage."

msgid ""
"The default underline color transparency (percent). For underlines with a "
"custom color, this theme item is only used if the custom color's alpha is "
"[code]0.0[/code] (fully transparent)."
msgstr ""
"La transparence de couleur de soulignement par défaut (pourcentage). Pour les "
"soulignements avec une couleur personnalisée, cet élément de thème n'est "
"utilisé que si l'alpha de la couleur personnalisée vaut [code]0.0[/code] "
"(complètement transparente)."

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 bold italics text."
msgstr "La taille de police utilisée pour du texte en italique 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 horizontal rule texture."
msgstr "La texture de la ligne horizontale."

msgid ""
"The background used when the [RichTextLabel] 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 ""
"L'arrière-plan utilisé lorsque le [RichTextLabel] 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 "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 ""
"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 ""
"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 "Editor-only helper for setting up root motion in [AnimationMixer]."
msgstr ""
"Assistant dans l'éditeur seulement pour la mise en place du mouvement racine "
"dans [AnimationMixer]."

msgid ""
"[i]Root motion[/i] refers to an animation technique where a mesh's skeleton "
"is used to give impulse to a character. When working with 3D animations, a "
"popular technique is for animators to use the root skeleton bone to give "
"motion to the rest of the skeleton. This allows animating characters in a way "
"where steps actually match the floor below. It also allows precise "
"interaction with objects during cinematics. See also [AnimationMixer].\n"
"[b]Note:[/b] [RootMotionView] is only visible in the editor. It will be "
"hidden automatically in the running project."
msgstr ""
"Le [i]mouvement racine[/i] (en anglais, \"root motion\") se réfère à une "
"technique d'animation où un squelette d'un maillage est utilisé pour donner "
"une impulsion à un personnage. En travaillant avec des animations 3D, une "
"technique populaire est pour les animateurs d'utiliser l'os racine du "
"squelette pour donner du mouvement au reste du squelette. Cela permet "
"d'animer des personnages d'une manière où les pas correspondent réellement au "
"sol en-dessous. Cela permet également une interaction précise avec des objets "
"pendant les cinématiques. Voir aussi [AnimationMixer].\n"
"[b]Note :[/b] [RootMotionView] n'est visible que dans l'éditeur. Il sera "
"automatiquement caché dans le projet en exécution."

msgid "Using AnimationTree - Root motion"
msgstr "Utiliser AnimationTree - Mouvement racine"

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 provided [Node]. Useful when you want to set "
"up the new scene before changing.\n"
"Returns [constant OK] on success, [constant ERR_INVALID_PARAMETER] if the "
"[param node] is [code]null[/code], or [constant ERR_UNCONFIGURED] if the "
"[param node] is already inside the scene tree.\n"
"[b]Note:[/b] Operations happen in the following order when [method "
"change_scene_to_node] 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 node "
"will be 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.\n"
"[b]Warning:[/b] After using this method, the [SceneTree] will take ownership "
"of the node and will free it automatically when changing scene again. Any "
"references you had to that node will become invalid."
msgstr ""
"Change la scène en cours d'exécution sans le noeud utilisé. Utile lorsque "
"vous voulez mettre en place une scène avant un changement.\n"
"Renvoie [constant OK] lors du succès, [constant ERR_INVALID_PARAMETER] si le "
"[param node] vaut [code]null[/code], ou [constant ERR_UNCONFIGURED] si le "
"[param node] est déjà dans l'arborescence de scène.\n"
"[b]Note :[/b] Les opérations se déroulent dans l'ordre suivant quand [method "
"change_scene_to_node] 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 scene_changed] signal .\n"
"[b]Attention :[/b] Après avoir utilisé cette méthode, le [SceneTree] prendra "
"possession du nœud et le libérera automatiquement lors de la modification de "
"la scène. Toute référence que vous avez eue à ce nœud deviendra invalide."

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 nœud 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 ""
"A class stored as a resource. A script extends the functionality of all "
"objects that instantiate it.\n"
"This is the base class for all scripts and should not be used directly. "
"Trying to create a new script with this class will result in an error.\n"
"The [code]new[/code] method of a script subclass creates a new instance. "
"[method Object.set_script] extends an existing object, if that object's class "
"matches one of the script's base classes."
msgstr ""
"Une classe stockée en tant que ressource. Un script prolonge la "
"fonctionnalité de tous les objets qui l'instancient.\n"
"Il s'agit de la classe de base pour tous les scripts et ne devrait pas être "
"utilisée directement. Essayer de créer un nouveau script avec cette classe "
"entraînera une erreur.\n"
"La méthode [code]new[/code] d'une sous-classe de script crée une nouvelle "
"instance. [method Object.set_script] étend un objet existant, si la classe de "
"cet objet correspond à l'une des classes de base du script."

msgid "Scripting documentation index"
msgstr "Index de la documentation sur le scripting"

msgid "Returns [code]true[/code] if the script can be instantiated."
msgstr "Renvoie [code]true[/code] si le script peut être instancié."

msgid "Returns the script directly inherited by this script."
msgstr "Renvoie le script directement hérité par ce script."

msgid ""
"Returns the class name associated with the script, if there is one. Returns "
"an empty string otherwise.\n"
"To give the script a global name, you can use the [code]class_name[/code] "
"keyword in GDScript and the [code][GlobalClass][/code] attribute in C#.\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MyNode\n"
"extends Node\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MyNode : Node\n"
"{\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie le nom de classe associé au script, s'il y en a un. Renvoie une "
"chaîne vide sinon.\n"
"Pour donner au script un nom global, vous pouvez utiliser le mot-clé "
"[code]class_name[/code] en GDScript et l'attribut [code][GlobalClass][/code] "
"en C#.\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MonNoeud\n"
"extends Node\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MonNoeud : Node\n"
"{\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 [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 "Godot editor's popup dialog for creating new [Script] files."
msgstr ""
"La fenêtre contextuelle de l'éditeur Godot pour créer de nouveaux fichiers "
"[Script]."

msgid ""
"The [ScriptCreateDialog] creates script files according to a given template "
"for a given scripting language. The standard use is to configure its fields "
"prior to calling one of the [method Window.popup] methods.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar dialog = ScriptCreateDialog.new();\n"
"\tdialog.config(\"Node\", \"res://new_node.gd\") # For in-engine types.\n"
"\tdialog.config(\"\\\"res://base_node.gd\\\"\", \"res://derived_node.gd\") # "
"For script types.\n"
"\tdialog.popup_centered()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar dialog = new ScriptCreateDialog();\n"
"\tdialog.Config(\"Node\", \"res://NewNode.cs\"); // For in-engine types.\n"
"\tdialog.Config(\"\\\"res://BaseNode.cs\\\"\", \"res://DerivedNode.cs\"); // "
"For script types.\n"
"\tdialog.PopupCentered();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Le [ScriptCreateDialog] crée des fichiers de script selon un modèle donné "
"pour un langage de script donné. L'utilisation standard est de configurer ses "
"champs avant d'appeler l'une des méthodes [method Window.popup].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar dialog = ScriptCreateDialog.new();\n"
"\tdialog.config(\"Node\", \"res://nouveau_noeud.gd\") # Pour les types du "
"moteur.\n"
"\tdialog.config(\"\\\"res://noeud_de_base.gd\\\"\", \"res://"
"noeud_derive.gd\") # Pour les types de scripts.\n"
"\tdialog.popup_centered()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar dialog = new ScriptCreateDialog();\n"
"\tdialog.Config(\"Node\", \"res://NouveauNoeud.cs\"); // Pour les types du "
"moteur.\n"
"\tdialog.Config(\"\\\"res://NoeudDeBase.cs\\\"\", \"res://"
"NoeudDerive.cs\"); // Pour les types de scripts.\n"
"\tdialog.PopupCentered();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

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 source associated with a given debug stack position."
msgstr ""
"Renvoie la source associée avec une position donnée de pile de débogage."

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 ""
"Ensures the given [param control] is visible (must be a direct or indirect "
"child of the ScrollContainer). Used by [member follow_focus].\n"
"[b]Note:[/b] This will not work on a node that was just added during the same "
"frame. If you want to scroll to a newly added child, you must wait until the "
"next frame using [signal SceneTree.process_frame]:\n"
"[codeblock]\n"
"add_child(child_node)\n"
"await get_tree().process_frame\n"
"ensure_control_visible(child_node)\n"
"[/codeblock]"
msgstr ""
"Veille à ce que le [param control] donné soit visible (doit être un enfant "
"direct ou indirect du ScrollContainer). Utilisé par [member follow_focus].\n"
"[b]Note :[/b] Cela ne fonctionnera pas sur un nœud qui vient d'être ajouté "
"pendant la même trame. Si vous voulez faire défiler vers un enfant "
"nouvellement ajouté, vous devez attendre jusqu'à la prochaine trame en "
"utilisant [signal SceneTree.process_frame] :\n"
"[codeblock]\n"
"add_child(noeud_enfant)\n"
"await get_tree().process_frame\n"
"ensure_control_visible(noeud_enfant)\n"
"[/codeblock]"

msgid ""
"Returns the horizontal scrollbar [HScrollBar] of this [ScrollContainer].\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to disable or hide a scrollbar, you can use "
"[member horizontal_scroll_mode]."
msgstr ""
"Renvoie la barre de défilement horizontale [HScrollBar] de ce "
"[ScrollContainer].\n"
"[b]Attention :[/b] Il s'agit d'un nœud interne requis, l'enlever et le "
"libérer peut causer un plantage. Si vous souhaitez désactiver ou cacher une "
"barre de défilement, vous pouvez utiliser [member horizontal_scroll_mode]."

msgid ""
"Returns the vertical scrollbar [VScrollBar] of this [ScrollContainer].\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to disable or hide a scrollbar, you can use "
"[member vertical_scroll_mode]."
msgstr ""
"Renvoie la barre de défilement verticale [VScrollBar] de ce "
"[ScrollContainer].\n"
"[b]Attention :[/b] Il s'agit d'un nœud interne requis, l'enlever et le "
"libérer peut causer un plantage. Si vous souhaitez désactiver ou cacher une "
"barre de défilement, vous pouvez utiliser [member vertical_scroll_mode]."

msgid ""
"If [code]true[/code], [theme_item focus] is drawn when the ScrollContainer or "
"one of its descendant nodes is focused."
msgstr ""
"Si [code]true[/code], [theme_item focus] est dessiné lorsque le "
"ScrollContainer ou l'un de ses nœuds descendants a le focus."

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 ""
"Controls whether horizontal scrollbar can be used and when it should be "
"visible."
msgstr ""
"Contrôle si la barre de défilement horizontale peut être utilisée et quand "
"elle devrait être visible."

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 ""
"The current horizontal scroll value.\n"
"[b]Note:[/b] If you are setting this value in the [method Node._ready] "
"function or earlier, it needs to be wrapped with [method "
"Object.set_deferred], since scroll bar's [member Range.max_value] is not "
"initialized yet.\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_horizontal\", 600)\n"
"[/codeblock]"
msgstr ""
"La valeur de défilement horizontal actuelle.\n"
"[b]Note :[/b] Si vous définissez cette valeur dans la fonction [method "
"Node._ready] ou plus tôt, elle doit être définie avec [method "
"Object.set_deferred], puisque la [member Range.max_value] de la barre de "
"défilement n'est pas encore initialisée.\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_horizontal\", 600)\n"
"[/codeblock]"

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 ""
"The current vertical scroll value.\n"
"[b]Note:[/b] Setting it early needs to be deferred, just like in [member "
"scroll_horizontal].\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_vertical\", 600)\n"
"[/codeblock]"
msgstr ""
"La valeur de défilement vertical actuelle.\n"
"[b]Note :[/b] La définir tôt doit être fait en différé, comme avec [member "
"scroll_horizontal].\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_vertical\", 600)\n"
"[/codeblock]"

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 ""
"Controls whether vertical scrollbar can be used and when it should be visible."
msgstr ""
"Contrôle si la barre de défilement verticale peut être utilisée et quand elle "
"devrait être visible."

msgid ""
"Emitted when scrolling stops when dragging the scrollable area [i]with a "
"touch event[/i]. This signal is [i]not[/i] emitted when scrolling by dragging "
"the scrollbar, scrolling with the mouse wheel or scrolling with keyboard/"
"gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Émis lorsque le défilement s'arrête lors du glissement de la zone défilante "
"[i]avec un événement tactile[/i]. Ce signal n'est [i]pas[/i] émis lors du "
"défilement en faisant glisser la barre de défilement, en défilant avec la "
"roue de la souris ou en défilant avec des événements de clavier/manette.\n"
"[b]Note :[/b] Ce signal n'est émis que sur Android ou iOS, ou sur les "
"plateformes de bureau/web lorsque [member ProjectSettings.input_devices/"
"pointing/emulate_touch_from_mouse] est activé."

msgid ""
"Emitted when scrolling starts when dragging the scrollable area w[i]ith a "
"touch event[/i]. This signal is [i]not[/i] emitted when scrolling by dragging "
"the scrollbar, scrolling with the mouse wheel or scrolling with keyboard/"
"gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Émis lorsque le défilement commence lors du glissement de la zone défilante "
"[i]avec un événement tactile[/i]. Ce signal n'est [i]pas[/i] émis lors du "
"défilement en faisant glisser la barre de défilement, en défilant avec la "
"roue de la souris ou en défilant avec des événements de clavier/manette.\n"
"[b]Note :[/b] Ce signal n'est émis que sur Android ou iOS, ou sur les "
"plateformes de bureau/web lorsque [member ProjectSettings.input_devices/"
"pointing/emulate_touch_from_mouse] est activé."

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 visible only if necessary, i.e. "
"container's content is bigger than the container."
msgstr ""
"Défilement activé, la barre de défilement ne sera visible que si nécessaire, "
"c'est-à-dire que le contenu du conteneur est plus grand que le conteneur."

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 ""
"Combines [constant SCROLL_MODE_AUTO] and [constant SCROLL_MODE_SHOW_ALWAYS]. "
"The scrollbar is only visible if necessary, but the content size is adjusted "
"as if it was always visible. It's useful for ensuring that content size stays "
"the same regardless if the scrollbar is visible."
msgstr ""
"Combine [constant SCROLL_MODE_AUTO] et [constant SCROLL_MODE_SHOW_ALWAYS]. La "
"barre de défilement n'est visible que si nécessaire, mais la taille du "
"contenu est ajustée comme si elle était toujours visible. Utile pour "
"s'assurer que la taille du contenu reste la même peu importe si la barre de "
"défilement est visible."

msgid ""
"The focus border [StyleBox] of the [ScrollContainer]. Only used if [member "
"draw_focus_border] is [code]true[/code]."
msgstr ""
"La [StyleBox] du bord avec focus du [ScrollContainer]. Seulement utilisé si "
"[member draw_focus_border] vaut [code]true[/code]."

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 "A node used to override global shader parameters' values in a scene."
msgstr ""
"Un nœud utilisé pour redéfinir les valeurs des paramètres de shader globaux "
"dans une scène."

msgid ""
"Similar to how a [WorldEnvironment] node can be used to override the "
"environment while a specific scene is loaded, [ShaderGlobalsOverride] can be "
"used to override global shader parameters temporarily. Once the node is "
"removed, the project-wide values for the global shader parameters are "
"restored. See the [RenderingServer] [code]global_shader_parameter_*[/code] "
"methods for more information.\n"
"[b]Note:[/b] Only one [ShaderGlobalsOverride] can be used per scene. If there "
"is more than one [ShaderGlobalsOverride] node in the scene tree, only the "
"first node (in tree order) will be taken into account.\n"
"[b]Note:[/b] All [ShaderGlobalsOverride] nodes are made part of a [code]"
"\"shader_overrides_group\"[/code] group when they are added to the scene "
"tree. The currently active [ShaderGlobalsOverride] node also has a [code]"
"\"shader_overrides_group_active\"[/code] group added to it. You can use this "
"to check which [ShaderGlobalsOverride] node is currently active."
msgstr ""
"Similaire à comment un nœud [WorldEnvironment] peut être utilisé pour "
"redéfinir l'environnement lorsqu'une scène spécifique est chargée, "
"[ShaderGlobalsOverride] peut être utilisé pour redéfinir temporairement les "
"paramètres de shader globaux. Une fois le nœud retiré, les valeurs liées au "
"projet pour les paramètres de shader globaux sont restaurées. Voir les "
"méthodes [code]global_shader_parameter_*[/code] de [RenderingServer] pour "
"plus d'informations.\n"
"[b]Note :[/b] Seulement un [ShaderGlobalsOverride] peut être utilisé par "
"scène. S'il y a plus d'un nœud [ShaderGlobalsOverride] dans l'arborescence de "
"scène, seul le premier nœud (dans l'ordre de l'arbre) sera pris en compte.\n"
"[b]Note :[/b] Tous les nœuds [ShaderGlobalsOverride] font partie d'un groupe "
"[code]\"shader_overrides_group\"[/code] lorsqu'ils sont ajoutés à "
"l'arborescence de scène. Le nœud [ShaderGlobalsOverride] actuellement actif a "
"également un groupe [code]\"shader_overrides_group_active\"[/code] ajouté à "
"lui. Vous pouvez utiliser ceci pour vérifier quel nœud "
"[ShaderGlobalsOverride] est actuellement actif."

msgid "Shading language"
msgstr "Langue pour le shading"

msgid ""
"A snippet of shader code to be included in a [Shader] with [code]#include[/"
"code]."
msgstr ""
"Un bout de code de shader à inclure dans un [Shader] avec [code]#include[/"
"code]."

msgid ""
"A shader include file, saved with the [code].gdshaderinc[/code] extension. "
"This class allows you to define a custom shader snippet that can be included "
"in a [Shader] by using the preprocessor directive [code]#include[/code], "
"followed by the file path (e.g. [code]#include \"res://"
"shader_lib.gdshaderinc\"[/code]). The snippet doesn't have to be a valid "
"shader on its own."
msgstr ""
"Un fichier à inclure dans un shader, enregistré avec l'extension "
"[code].gdshaderinc[/code]. Cette classe vous permet de définir un bout de "
"code de shader personnalisé qui peut être inclus dans un [Shader] en "
"utilisant la directive de préprocesseur [code]#include[/code], suivie du "
"chemin de fichier (par exemple [code]#include \"res://"
"shader_lib.gdshaderinc\"[/code]). Le bout de code n'a pas besoin d'être un "
"shader valide seul."

msgid "Shader preprocessor"
msgstr "Pré-calcul par le processeur de shader"

msgid ""
"Returns the code of the shader include file. The returned text is what the "
"user has written, not the full generated code used internally."
msgstr ""
"Renvoie le code du fichier à inclure dans le shader. Le texte renvoyé est ce "
"que l'utilisateur a écrit, pas le code entièrement généré utilisé en interne."

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 "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 "Returns the shortcut's first valid [InputEvent] as a [String]."
msgstr ""
"Renvoie le premier [InputEvent] valide du raccourci en tant que [String]."

msgid "Returns whether [member events] contains an [InputEvent] which is valid."
msgstr "Renvoie si [member events] contient un [InputEvent] qui est valide."

msgid ""
"Returns whether any [InputEvent] in [member events] equals [param event]. "
"This uses [method InputEvent.is_match] to compare events."
msgstr ""
"Renvoie si au moins un [InputEvent] dans [member events] est égal à [param "
"event]. Cela utilise [method InputEvent.is_match] pour comparer les "
"événements."

msgid ""
"The shortcut's [InputEvent] array.\n"
"Generally the [InputEvent] used is an [InputEventKey], though it can be any "
"[InputEvent], including an [InputEventAction]."
msgstr ""
"Le tableau d'[InputEvent]s du raccourci.\n"
"En général, [InputEvent] utilisé est un [InputEventKey], bien qu'il puisse "
"être n'importe quel [InputEvent], y compris un [InputEventAction]."

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 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 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 bone name, [param name], for the bone at [param bone_idx]."
msgstr ""
"Définit le nom de l'os, [param name], pour l'os à l'index [param bone_idx]."

msgid ""
"Sets the bone index [param parent_idx] as the parent of the bone at [param "
"bone_idx]. If -1, then bone has no parent.\n"
"[b]Note:[/b] [param parent_idx] must be less than [param bone_idx]."
msgstr ""
"Définit l'os d'index [param parent_idx] comme parent de l'os à l'index [param "
"bone_idx]. Si -1, alors l'os n'a pas de parent.\n"
"[b]Note :[/b] [param parent_idx] doit être inférieur à [param bone_idx]."

msgid "Sets the pose transform, [param pose], for the bone at [param bone_idx]."
msgstr ""
"Définit la transformation de pose, [param pose], pour l'os à l'index [param "
"bone_idx]."

msgid ""
"Sets the pose position of the bone at [param bone_idx] to [param position]. "
"[param position] is a [Vector3] describing a position local to the "
"[Skeleton3D] node."
msgstr ""
"Définit la position de pose de l'os à l'index [param bone_idx] à [param "
"position]. [param position] est un [Vector3] décrivant une position locale "
"par rapport au nœud [Skeleton3D]."

msgid ""
"Sets the pose rotation of the bone at [param bone_idx] to [param rotation]. "
"[param rotation] is a [Quaternion] describing a rotation in the bone's local "
"coordinate space with respect to the rotation of any parent bones."
msgstr ""
"Définit la rotation de pose de l'os à l'index [param bone_idx] à [param "
"rotation]. [param rotation] est un [Quaternion] décrivant une rotation dans "
"l'espace de coordonnées local de l'os par rapport à la rotation des os "
"parents."

msgid "Sets the pose scale of the bone at [param bone_idx] to [param scale]."
msgstr ""
"Définit l'échelle de pose de l'os à l'index [param bone_idx] à [param scale]."

msgid "Sets the rest transform for bone [param bone_idx]."
msgstr "Définit la transformation au repos pour l'os [param bone_idx]."

msgid ""
"Unparents the bone at [param bone_idx] and sets its rest position to that of "
"its parent prior to being reset."
msgstr ""
"Déparente l'os à l'index [param bone_idx] et fixe sa position de repos à "
"celle de son parent avant d'être réinitialisé."

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 bone at [param bone_idx] is toggled with [method "
"set_bone_enabled]. Use [method is_bone_enabled] to check the new value."
msgstr ""
"Émis lorsque l'os à l'index [param bone_idx] est activé/désactivé avec "
"[method set_bone_enabled]. Utilisez [method is_bone_enabled] pour vérifier la "
"nouvelle valeur."

msgid ""
"Emitted when the list of bones changes, such as when calling [method "
"add_bone], [method set_bone_parent], [method unparent_bone_and_rest], or "
"[method clear_bones]."
msgstr ""
"Émis lorsque la liste des os change, comme lors de l'appel à [method "
"add_bone], [method set_bone_parent], [method unparent_bone_and_rest], ou "
"[method clear_bones]."

msgid ""
"Emitted when the pose is updated.\n"
"[b]Note:[/b] During the update process, this signal is not fired, so "
"modification by [SkeletonModifier3D] is not detected."
msgstr ""
"Émis lorsque la pose est mise à jour.\n"
"[b]Note :[/b] Lors du traitement de la mise à jour, le signal n'est pas émis, "
"donc une modification par [SkeletonModifier3D] n'est pas détectée."

msgid "Emitted when the rest is updated."
msgstr "Émis lorsque la pose de repos est mise à jour."

msgid "Emitted when the value of [member show_rest_only] changes."
msgstr "Émis lorsque la valeur de [member show_rest_only] change."

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 ""
"Interpolation value for how much the IK results are applied to the current "
"skeleton bone chain. A value of [code]1.0[/code] will overwrite all skeleton "
"bone transforms completely while a value of [code]0.0[/code] will visually "
"disable the SkeletonIK."
msgstr ""
"Valeur de l'interpolation indiquant de combien les résultats de l'IK sont "
"appliqués à la chaîne d'os du squelette actuelle. Une valeur de [code]1.0[/"
"code] écrasera toutes les transformations d'os du squelette complètement "
"alors qu'une valeur de [code]0.0[/code] désactivera visuellement le "
"SkeletonIK."

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 ""
"First target of the IK chain where the tip bone is placed and, if [member "
"override_tip_basis] is [code]true[/code], how the tip bone is rotated. If a "
"[member target_node] path is available the nodes transform is used instead "
"and this property is ignored."
msgstr ""
"Première cible de la chaîne IK où l'os du bout est placé et, si [member "
"override_tip_basis] vaut [code]true[/code], comment l'os du bout est tourné. "
"Si un chemin [member target_node] est disponible, la transformation des nœuds "
"est utilisée à la place et cette propriété est ignorée."

msgid ""
"Target node [NodePath] for the IK chain. If available, the node's current "
"[Transform3D] is used instead of the [member target] property."
msgstr ""
"[NodePath] du nœud cible pour la chaîne IK. Si disponible, la [Transform3D] "
"actuelle du nœud est utilisée au lieu de la propriété [member target]."

msgid ""
"The name of the current tip bone, the last bone in the IK chain placed at the "
"[member target] transform (or [member target_node] if defined)."
msgstr ""
"Le nom de l'os du bout actuel, le dernier os de la chaîne d'IK placé à la "
"transformation [member target] (ou [member target_node] si défini)."

msgid ""
"If [code]true[/code], instructs the IK solver to consider the secondary "
"magnet target (pole target) when calculating the bone chain. Use the magnet "
"position (pole target) to control the bending of the IK chain."
msgstr ""
"Si [code]true[/code], ordonne au solveur IK de considérer la cible magnétique "
"secondaire (cible du pôle) lors du calcul de la chaîne d'os. Utilisez la "
"position de l'aimant (cible du pôle) pour contrôler la flexion de la chaîne "
"IK."

msgid "Base class for resources that operate on [Bone2D]s in a [Skeleton2D]."
msgstr ""
"Classe de base pour les ressources qui fonctionnent sur des [Bone2D]s dans un "
"[Skeleton2D]."

msgid ""
"This resource provides an interface that can be expanded so code that "
"operates on [Bone2D] nodes in a [Skeleton2D] can be mixed and matched "
"together to create complex interactions.\n"
"This is used to provide Godot with a flexible and powerful Inverse Kinematics "
"solution that can be adapted for many different uses."
msgstr ""
"Cette ressource fournit une interface qui peut être étendue pour que du code "
"fonctionne sur des nœuds [Bone2D] dans un [Skeleton2D] puisse être mélangé et "
"associé ensemble pour créer des interactions complexes.\n"
"Ceci est utilisé pour fournir à Godot une solution de cinématique inverse "
"flexible et puissante qui peut être adaptée pour de nombreuses utilisations "
"différentes."

msgid ""
"Used for drawing [b]editor-only[/b] modification gizmos. This function will "
"only be called in the Godot editor and can be overridden to draw custom "
"gizmos.\n"
"[b]Note:[/b] You will need to use the Skeleton2D from [method "
"SkeletonModificationStack2D.get_skeleton] and it's draw functions, as the "
"[SkeletonModification2D] resource cannot draw on its own."
msgstr ""
"Utilisé pour dessiner des manipulateur de modification [b]uniquement dans "
"l'éditeur[/b]. Cette fonction ne sera appelée que dans l'éditeur Godot et "
"peut être redéfinie pour dessiner des manipulateurs personnalisés.\n"
"[b]Note :[/b] Vous aurez besoin d'utiliser le Skeleton2D de [method "
"SkeletonModificationStack2D.get_skeleton] et ses fonctions de dessin, car la "
"ressource [SkeletonModification2D] ne peut pas dessiner seule."

msgid ""
"Executes the given modification. This is where the modification performs "
"whatever function it is designed to do."
msgstr ""
"Exécute la modification donnée. C'est ici que la modification effectue la "
"fonction pour laquelle elle est conçue."

msgid ""
"Called when the modification is setup. This is where the modification "
"performs initialization."
msgstr ""
"Appelée lorsque la modification est mise en place. C'est ici que la "
"modification effectue son initialisation."

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 ""
"Manually allows you to set the setup state of the modification. This function "
"should only rarely be used, as the [SkeletonModificationStack2D] the "
"modification is bound to should handle setting the modification up."
msgstr ""
"Vous permet de configurer manuellement l'état de configuration de la "
"modification. Cette fonction ne devrait être utilisée que rarement, puisque "
"la [SkeletonModificationStack2D] à laquelle la modification est liée devrait "
"gérer la mise en place de la modification."

msgid ""
"If [code]true[/code], the modification's [method _execute] function will be "
"called by the [SkeletonModificationStack2D]."
msgstr ""
"Si [code]true[/code], la fonction [method _execute] de la modification sera "
"appelée par [SkeletonModificationStack2D]."

msgid ""
"The execution mode for the modification. This tells the modification stack "
"when to execute the modification. Some modifications have settings that are "
"only available in certain execution modes."
msgstr ""
"Le mode d'exécution pour la modification. Cela indique à la pile de "
"modifications quand exécuter la modification. Certaines modifications ont des "
"paramètres qui ne sont disponibles que dans certains modes d'exécution."

msgid ""
"A modification that uses CCDIK to manipulate a series of bones to reach a "
"target in 2D."
msgstr ""
"Une modification qui utilise un algorithme de CCDIK pour manipuler une série "
"d'os pour atteindre une cible en 2D."

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 "A modification that rotates a [Bone2D] node to look at a target."
msgstr ""
"Une modification qui tourne un nœud [Bone2D] pour qu'il regarde une cible."

msgid ""
"This [SkeletonModification2D] rotates a bone to look a target. This is "
"extremely helpful for moving character's head to look at the player, rotating "
"a turret to look at a target, or any other case where you want to make a bone "
"rotate towards something quickly and easily."
msgstr ""
"Ce [SkeletonModification2D] tourne un os pour qu'il regarde une cible. Ceci "
"est extrêmement utile pour déplacer la tête d'un personnage pour regarder le "
"joueur, tourner une tourelle pour regarder une cible, ou tout autre cas où "
"vous voulez faire qu'un os tourne vers quelque chose rapidement et facilement."

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 ""
"When [code]true[/code], the modification will use an inverted joint "
"constraint.\n"
"An inverted joint constraint only constraints the [Bone2D] to the angles "
"[i]outside of[/i] the inputted minimum and maximum angles. For this reason, "
"it is referred to as an inverted joint constraint, as it constraints the "
"joint to the outside of the inputted values."
msgstr ""
"Lorsque [code]true[/code], la modification utilisera une contrainte "
"d'articulation inversée.\n"
"Une contrainte d'articulation inversée limite le [Bone2D] qu'aux angles [i]en "
"dehors[/i] des angles minimum et maximum saisis. Pour cette raison, elle est "
"appelée contrainte d'articulation inversée, car elle limite l'articulation à "
"l'extérieur des valeurs saisies."

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 minimal autorisé de la contrainte."

msgid ""
"Sets whether this modification will use constraints or not. When [code]true[/"
"code], constraints will be applied when solving the LookAt modification."
msgstr ""
"Définit si cette modification utilisera des contraintes ou non. Lorsque "
"[code]true[/code], des contraintes seront appliquées lors de la résolution de "
"la modification LookAt."

msgid "The [Bone2D] node that the modification will operate on."
msgstr "Le nœud [Bone2D] sur lequel la modification s'opérera."

msgid "The index of the [Bone2D] node that the modification will operate on."
msgstr "L'index du nœud [Bone2D] sur lequel la modification s'opérera."

msgid ""
"The NodePath to the node that is the target for the LookAt modification. This "
"node is what the modification will rotate the [Bone2D] to."
msgstr ""
"Le NodePath vers le nœud qui est la cible pour la modification LookAt. Ce "
"nœud est celui vers lequel la modification va tourner le [Bone2D]."

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 ""
"Sets the [SkeletonModificationStack2D] that this modification is holding. "
"This modification stack will then be executed when this modification is "
"executed."
msgstr ""
"Définit le [SkeletonModificationStack2D] que cette modification contient. "
"Cette pile de modification sera ensuite exécutée lorsque cette modification "
"est exécutée."

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 ""
"This resource is used by the Skeleton and holds a stack of "
"[SkeletonModification2D]s.\n"
"This controls the order of the modifications and how they are applied. "
"Modification order is especially important for full-body IK setups, as you "
"need to execute the modifications in the correct order to get the desired "
"results. For example, you want to execute a modification on the spine "
"[i]before[/i] the arms on a humanoid skeleton.\n"
"This resource also controls how strongly all of the modifications are applied "
"to the [Skeleton2D]."
msgstr ""
"Cette ressource est utilisée par le Skeleton et possède une pile de "
"[SkeletonModification2D]s.\n"
"Cela contrôle l'ordre des modifications et comment elles sont appliquées. "
"L'ordre des modifications est particulièrement important pour les "
"configurations d'IK sur le corps entier, car vous devez exécuter les "
"modifications dans le bon ordre pour obtenir les résultats souhaités. Par "
"exemple, vous voulez exécuter une modification sur la colonne vertébrale "
"[i]avant[/i] les bras sur un squelette humanoïde.\n"
"Cette ressource contrôle la force avec laquelle toutes les modifications sont "
"appliquées au [Skeleton2D]."

msgid "Adds the passed-in [SkeletonModification2D] to the stack."
msgstr "Ajoute à la pile le [SkeletonModification2D] donné."

msgid ""
"Deletes the [SkeletonModification2D] at the index position [param mod_idx], "
"if it exists."
msgstr ""
"Supprime la [SkeletonModification2D] à la position d'index [param mod_idx], "
"si elle existe."

msgid "Enables all [SkeletonModification2D]s in the stack."
msgstr "Active toutes les [SkeletonModification2D]s dans la pile."

msgid ""
"Executes all of the [SkeletonModification2D]s in the stack that use the same "
"execution mode as the passed-in [param execution_mode], starting from index "
"[code]0[/code] to [member modification_count].\n"
"[b]Note:[/b] The order of the modifications can matter depending on the "
"modifications. For example, modifications on a spine should operate before "
"modifications on the arms in order to get proper results."
msgstr ""
"Exécute tous les [SkeletonModification2D]s dans la pile qui utilisent le même "
"mode d'exécution que le mode passé [param execution_mode], à partir de "
"l'index [code]0[/code] jusqu'à l'index [member modification_count].\n"
"[b]Note :[/b] L'ordre des modifications peut être important en fonction des "
"modifications. Par exemple, les modifications sur une colonne vertébrale "
"doivent s'opérer avant les modifications sur les bras afin d'obtenir des "
"résultats appropriés."

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 ""
"Returns the [SkeletonModification2D] at the passed-in index, [param mod_idx]."
msgstr ""
"Renvoie la [SkeletonModification2D] à l'index transmis, [param mod_idx]."

msgid ""
"Returns the [Skeleton2D] node that the SkeletonModificationStack2D is bound "
"to."
msgstr ""
"Renvoie le nœud [Skeleton2D] auquel la SkeletonModificationStack2D est liée."

msgid ""
"Sets the modification at [param mod_idx] to the passed-in modification, "
"[param modification]."
msgstr ""
"Définit la modification à l'index [param mod_idx] à la modification "
"transmise, [param modification]."

msgid ""
"Sets up the modification stack so it can execute. This function should be "
"called by [Skeleton2D] and shouldn't be manually called unless you know what "
"you are doing."
msgstr ""
"Met en place la pile de modifications pour qu'elle puisse exécuter. Cette "
"fonction devrait être appelée par [Skeleton2D] et ne devrait pas être appelée "
"manuellement à moins que vous ne sachiez ce que vous faites."

msgid ""
"If [code]true[/code], the modification's in the stack will be called. This is "
"handled automatically through the [Skeleton2D] node."
msgstr ""
"Si [code]true[/code], les modifications dans la pile seront appelées. Ceci "
"est géré automatiquement par le nœud [Skeleton2D]."

msgid "The number of modifications in the stack."
msgstr "Le nombre de modifications dans la pile."

msgid ""
"The interpolation strength of the modifications in stack. A value of [code]0[/"
"code] will make it where the modifications are not applied, a strength of "
"[code]0.5[/code] will be half applied, and a strength of [code]1[/code] will "
"allow the modifications to be fully applied and override the [Skeleton2D] "
"[Bone2D] poses."
msgstr ""
"La force d'interpolation des modifications dans la pile. Une valeur de "
"[code]0[/code] fera que les modifications ne seront pas appliquées, une force "
"de [code]0.5[/code] fera qu'elles seront appliquées à moitié, et une force de "
"[code]1[/code] permettra d'appliquer pleinement les modifications et de "
"redéfinir les poses des [Bone2D] du [Skeleton2D]."

msgid "A node that may modify a Skeleton3D's bones."
msgstr "Un nœud qui peut modifier les os d'un Skeleton3D."

msgid ""
"[SkeletonModifier3D] retrieves a target [Skeleton3D] by having a [Skeleton3D] "
"parent.\n"
"If there is an [AnimationMixer], a modification always performs after "
"playback process of the [AnimationMixer].\n"
"This node should be used to implement custom IK solvers, constraints, or "
"skeleton physics."
msgstr ""
"[SkeletonModifier3D] récupère un [Skeleton3D] cible en ayant un [Skeleton3D] "
"parent.\n"
"S'il y a un [AnimationMixer], une modification s'effectue toujours après le "
"processus de lecture de l'[AnimationMixer].\n"
"Ce nœud devrait être utilisé pour implémenter des solveur d'IK, des "
"contraintes ou de la physique de squelette personnalisés."

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 ""
"Override this virtual method to implement a custom skeleton modifier. You "
"should do things like get the [Skeleton3D]'s current pose and apply the pose "
"here.\n"
"[method _process_modification] must not apply [member influence] to bone "
"poses because the [Skeleton3D] automatically applies influence to all bone "
"poses set by the modifier."
msgstr ""
"Redéfinissez cette méthode virtuelle pour implémenter un modificateur de "
"squelette personnalisé. Vous devriez faire des choses comme obtenir la pose "
"actuelle du [Skeleton3D] et appliquer la pose ici.\n"
"[method _process_modification] ne doit pas appliquer [member influence] aux "
"poses des os car le [Skeleton3D] applique automatiquement l'influence à "
"toutes les poses des os définies par le modificateur."

msgid "Called when the skeleton is changed."
msgstr "Appelée quand le squelette est changé."

msgid "If [code]true[/code], the [SkeletonModifier3D] will be processing."
msgstr "Si [code]true[/code], le [SkeletonModifier3D] traitera."

msgid ""
"Sets the influence of the modification.\n"
"[b]Note:[/b] This value is used by [Skeleton3D] to blend, so the "
"[SkeletonModifier3D] should always apply only 100% of the result without "
"interpolation."
msgstr ""
"Définit l'influence de la modification.\n"
"[b]Note :[/b] Cette valeur est utilisée par [Skeleton3D] pour mélanger, de "
"sorte que le [SkeletonModifier3D] devrait toujours seulement appliquer 100% "
"du résultat sans interpolation."

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 "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 "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 ""
"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 bone index that matches [param bone_name] as its name."
msgstr "Renvoie l'index de l'os dont le nom correspond à [param bone_name]."

msgid ""
"Returns the name of the bone at [param bone_idx] that will be the key name in "
"the [BoneMap].\n"
"In the retargeting process, the returned bone name is the bone name of the "
"target skeleton."
msgstr ""
"Renvoie le nom de l'os à l'index [param bone_idx] qui sera le nom de la clé "
"dans la [BoneMap].\n"
"Dans le processus de re-ciblage, le nom d'os renvoyé est le nom de l'os du "
"squelette cible."

msgid ""
"Returns the name of the bone which is the parent to the bone at [param "
"bone_idx]. The result is empty if the bone has no parent."
msgstr ""
"Renvoie le nom de l'os qui est le parent de l'os à l'index [param bone_idx]. "
"Le résultat est vide si l'os n'a pas de parent."

msgid ""
"Returns the name of the bone which is the tail of the bone at [param "
"bone_idx]."
msgstr ""
"Renvoie le nom de l'os qui est la queue de l'os à l'index [param bone_idx]."

msgid "Returns the group of the bone at [param bone_idx]."
msgstr "Renvoie le groupe de l'os à l'index [param bone_idx]."

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 ""
"Returns the offset of the bone at [param bone_idx] that will be the button "
"position in the [BoneMap] editor.\n"
"This is the offset with origin at the top left corner of the square."
msgstr ""
"Renvoie le décalage de l'os à l'index [param bone_idx] qui sera la position "
"du bouton dans l'éditeur [BoneMap].\n"
"Il s'agit du décalage avec l'origine du coin supérieur gauche du carré."

msgid "Returns the reference pose transform for bone [param bone_idx]."
msgstr ""
"Renvoie la transformation de la pose de référence pour l'os à l'index [param "
"bone_idx]."

msgid "Returns the tail direction of the bone at [param bone_idx]."
msgstr "Renvoie la direction de queue de l'os à l'index [param bone_idx]."

msgid ""
"Sets the name of the bone at [param bone_idx] that will be the key name in "
"the [BoneMap].\n"
"In the retargeting process, the setting bone name is the bone name of the "
"target skeleton."
msgstr ""
"Définit le nom de l'os à l'index [param bone_idx] qui sera le nom de la clé "
"dans la [BoneMap].\n"
"Dans le processus de re-ciblage, le nom d'os défini est le nom de l'os du "
"squelette cible."

msgid ""
"Sets the bone with name [param bone_parent] as the parent of the bone at "
"[param bone_idx]. If an empty string is passed, then the bone has no parent."
msgstr ""
"Définit l'os avec le nom [param bone_parent] comme le parent de l'os à "
"l'index [param bone_idx]. Si une chaîne vide est passée, l'os n'a pas de "
"parent."

msgid ""
"Sets the bone with name [param bone_tail] as the tail of the bone at [param "
"bone_idx]."
msgstr ""
"Définit l'os avec le nom [param bone_tail] comme queue de l'os à l'index "
"[param bone_idx]."

msgid "Sets the group of the bone at [param bone_idx]."
msgstr "Définit le groupe de l'os à l'index [param bone_idx]."

msgid ""
"Sets the name of the group at [param group_idx] that will be the drawing "
"group in the [BoneMap] editor."
msgstr ""
"Définit le nom du groupe à l'index [param group_idx] qui sera le groupe de "
"dessin dans l'éditeur [BoneMap]."

msgid ""
"Sets the offset of the bone at [param bone_idx] that will be the button "
"position in the [BoneMap] editor.\n"
"This is the offset with origin at the top left corner of the square."
msgstr ""
"Définit le décalage de l'os à l'index [param bone_idx] qui sera la position "
"du bouton dans l'éditeur [BoneMap].\n"
"Il s'agit du décalage avec l'origine du coin supérieur gauche du carré."

msgid "Sets the reference pose transform for bone [param bone_idx]."
msgstr ""
"Définit la transformation de la pose de référence pour l'os à l'index [param "
"bone_idx]."

msgid "Sets the required status for bone [param bone_idx] to [param required]."
msgstr ""
"Définit le statut de nécessité pour l'os à l'index [param bone_idx] à [param "
"required]."

msgid ""
"The amount of bones in retargeting section's [BoneMap] editor. For example, "
"[SkeletonProfileHumanoid] has 56 bones.\n"
"The size of elements in [BoneMap] updates when changing this property in it's "
"assigned [SkeletonProfile]."
msgstr ""
"La quantité d'os dans la section re-ciblage de l'éditeur [BoneMap]. Par "
"exemple, [SkeletonProfileHumanoid] a 56 os.\n"
"La taille des éléments dans la [BoneMap] set met à jour lors de la "
"modification de cette propriété dans son [SkeletonProfile] assigné."

msgid ""
"A bone name that will be used as the root bone in [AnimationTree]. This "
"should be the bone of the parent of hips that exists at the world origin."
msgstr ""
"Un nom d'os qui sera utilisé comme os racine dans [AnimationTree]. Cela "
"devrait être l'os du parent des hanches qui existe à l'origine du monde."

msgid ""
"A bone name which will use model's height as the coefficient for "
"normalization. For example, [SkeletonProfileHumanoid] defines it as "
"[code]Hips[/code]."
msgstr ""
"Un nom d'os qui utilisera la hauteur du modèle comme coefficient de "
"normalisation. Par exemple, [SkeletonProfileHumanoid] le définit comme "
"[code]Hips[/code]."

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 ""
"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 ""
"The background for the whole slider. Affects the height or width of the "
"[theme_item grabber_area]."
msgstr ""
"L'arrière-plan pour tout le slider. Affecte la hauteur ou la largeur du "
"[theme_item grabber_area]."

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 "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 "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 ""
"[SpinBox] is a numerical input text field. It allows entering integers and "
"floating-point numbers. The [SpinBox] also has up and down buttons that can "
"be clicked increase or decrease the value. The value can also be changed by "
"dragging the mouse up or down over the [SpinBox]'s arrows.\n"
"Additionally, mathematical expressions can be entered. These are evaluated "
"when the user presses [kbd]Enter[/kbd] while editing the [SpinBox]'s text "
"field. This uses the [Expression] class to parse and evaluate the expression. "
"The result of the expression is then set as the value of the [SpinBox]. Some "
"examples of valid expressions are [code]5 + 2 * 3[/code], [code]pow(2, 4)[/"
"code], and [code]PI + sin(0.5)[/code]. Expressions are case-sensitive.\n"
"[b]Example:[/b] Create a [SpinBox], disable its context menu and set its text "
"alignment to right.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var spin_box = SpinBox.new()\n"
"add_child(spin_box)\n"
"var line_edit = spin_box.get_line_edit()\n"
"line_edit.context_menu_enabled = false\n"
"spin_box.horizontal_alignment = LineEdit.HORIZONTAL_ALIGNMENT_RIGHT\n"
"[/gdscript]\n"
"[csharp]\n"
"var spinBox = new SpinBox();\n"
"AddChild(spinBox);\n"
"var lineEdit = spinBox.GetLineEdit();\n"
"lineEdit.ContextMenuEnabled = false;\n"
"spinBox.AlignHorizontal = LineEdit.HorizontalAlignEnum.Right;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See [Range] class for more options over the [SpinBox].\n"
"[b]Note:[/b] With the [SpinBox]'s context menu disabled, you can right-click "
"the bottom half of the spinbox to set the value to its minimum, while right-"
"clicking the top half sets the value to its maximum.\n"
"[b]Note:[/b] [SpinBox] relies on an underlying [LineEdit] node. To theme a "
"[SpinBox]'s background, add theme items for [LineEdit] and customize them. "
"The [LineEdit] has the [code]SpinBoxInnerLineEdit[/code] theme variation, so "
"that you can give it a distinct appearance from regular [LineEdit]s.\n"
"[b]Note:[/b] If you want to implement drag and drop for the underlying "
"[LineEdit], you can use [method Control.set_drag_forwarding] on the node "
"returned by [method get_line_edit]."
msgstr ""
"[SpinBox] est un champ de texte d'entrée numérique. Il permet d'entrer des "
"entiers et des flottants. [SpinBox] dispose également de boutons haut et bas "
"qui peuvent être cliqués pour augmenter ou diminuer la valeur. La valeur peut "
"également être changée en faisant glisser la souris vers le haut ou vers le "
"bas sur les flèches de la [SpinBox].\n"
"De plus, des expressions mathématiques peuvent être entrées. Elles sont "
"évaluées lorsque l'utilisateur appuie sur [kbd]Entrée[/kbd] tout en éditant "
"le champ de texte de la [SpinBox]. Ceci utilise la classe [Expression] pour "
"analyser et évaluer l'expression. Le résultat de l'expression est alors "
"défini comme la valeur de la [SpinBox]. Certains exemples d'expressions "
"valides sont [code]5 + 2 * 3[/code], [code]pow(2, 4)[/code], et [code]PI + "
"sin(0.5)[/code]. Les expressions sont sensibles à la casse.\n"
"[b]Exemple :[/b] Créer une [SpinBox], désactiver son menu contextuel et "
"aligner son texte sur la droite.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var spin_box = SpinBox.new()\n"
"add_child(spin_box)\n"
"var line_edit = spin_box.get_line_edit()\n"
"line_edit.context_menu_enabled = false\n"
"spin_box.horizontal_alignment = LineEdit.HORIZONTAL_ALIGNMENT_RIGHT\n"
"[/gdscript]\n"
"[csharp]\n"
"var spinBox = new SpinBox();\n"
"AddChild(spinBox);\n"
"var lineEdit = spinBox.GetLineEdit();\n"
"lineEdit.ContextMenuEnabled = false;\n"
"spinBox.AlignHorizontal = LineEdit.HorizontalAlignEnum.Right;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Voir la classe [Range] pour plus d'options sur [SpinBox].\n"
"[b]Note :[/b] Avec le menu contextuel de la [SpinBox] désactivé, vous pouvez "
"clic-droit sur la moitié inférieure de la spinbox pour définir la valeur à "
"son minimum, tandis que le clic droit sur la moitié supérieure définit la "
"valeur à son maximum.\n"
"[b]Note :[/b] [SpinBox] s'appuie sur un noeud [LineEdit] sous-jacent. Pour "
"donner un thème à l'arrière-plan d'une [SpinBox], ajoutez des éléments de "
"thème pour [LineEdit] et personnalisez-les. Le [LineEdit] a la variation de "
"thème [code]SpinBoxInnerLineEdit[/code], de sorte que vous pouvez lui donner "
"une apparence distincte des [LineEdit] réguliers.\n"
"[b]Note :[/b] Si vous voulez implémenter un glisser-déposer pour le "
"[LineEdit] sous-jacent, vous pouvez utiliser [method "
"Control.set_drag_forwarding] sur le nœud renvoyé par [method get_line_edit]."

msgid ""
"Applies the current value of this [SpinBox]. This is equivalent to pressing "
"[kbd]Enter[/kbd] while editing the [LineEdit] used by the [SpinBox]. This "
"will cause [signal LineEdit.text_submitted] to be emitted and its currently "
"contained expression to be evaluated."
msgstr ""
"Applique la valeur actuelle de cette [SpinBox]. Ceci équivaut à appuyer sur "
"[kbd]Entrée[/kbd] lors de l'édition du [LineEdit] utilisé par la [SpinBox]. "
"Cela provoquer l'émission de [signal LineEdit.text_submitted] et l'évaluation "
"de son expression actuellement contenue."

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 not [code]0[/code], sets the step when interacting with the arrow buttons "
"of the [SpinBox].\n"
"[b]Note:[/b] [member Range.value] will still be rounded to a multiple of "
"[member Range.step]."
msgstr ""
"Si différent de [code]0[/code], définit le pas lors de l'interaction avec les "
"boutons flèche de la [SpinBox].\n"
"[b]Note :[/b] [member Range.value] sera toujours arrondi à un multiple de "
"[member Range.step]."

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 ""
"Adds the specified prefix string before the numerical value of the [SpinBox]."
msgstr ""
"Ajoute la chaîne de caractères de préfixe spécifiée avant la valeur numérique "
"de la [SpinBox]."

msgid ""
"If [code]true[/code], the [SpinBox] will select the whole text when the "
"[LineEdit] gains focus. Clicking the up and down arrows won't trigger this "
"behavior."
msgstr ""
"Si [code]true[/code], la [SpinBox] sélectionnera tout le texte lorsque le "
"[LineEdit] obtient le focus. Cliquer sur les flèches haut et bas ne "
"déclenchera pas ce comportement."

msgid ""
"Adds the specified suffix string after the numerical value of the [SpinBox]."
msgstr ""
"Ajoute la chaîne de caractères de suffixe spécifiée avant la valeur numérique "
"de la [SpinBox]."

msgid ""
"Sets the value of the [Range] for this [SpinBox] when the [LineEdit] text is "
"[i]changed[/i] instead of [i]submitted[/i]. See [signal "
"LineEdit.text_changed] and [signal LineEdit.text_submitted].\n"
"[b]Note:[/b] If set to [code]true[/code], this will interfere with entering "
"mathematical expressions in the [SpinBox]. The [SpinBox] will try to evaluate "
"the expression as you type, which means symbols like a trailing [code]+[/"
"code] are removed immediately by the expression being evaluated."
msgstr ""
"Définit la valeur du [Range] pour cette [SpinBox] lorsque le texte du "
"[LineEdit] est [i]modifié[/i] au lieu d'être [i]soumis[/i]. Voir [signal "
"LineEdit.text_changed] et [signal LineEdit.text_submitted].\n"
"[b]Note :[/b] Si défini à [code]true[/code], cela interfère avec l'entrée "
"d'expressions mathématiques dans la [SpinBox]. La [SpinBox] tentera d'évaluer "
"l'expression au fur et à mesure que vous la tapiez, ce qui signifie que les "
"symboles comme un [code]+[/code] de fin sont enlevés immédiatement par "
"l’évaluation de l’expression."

msgid "Down button icon modulation color, when the button is disabled."
msgstr ""
"Couleur de modulation de l'icône du bouton bas, lorsque le bouton est "
"désactivé."

msgid "Down button icon modulation color, when the button is hovered."
msgstr ""
"Couleur de modulation de l'icône du bouton bas, lorsque le bouton est survolé."

msgid "Down button icon modulation color."
msgstr "Couleur de modulation de l'icône du bouton bas."

msgid "Down button icon modulation color, when the button is being pressed."
msgstr ""
"Couleur de modulation de l'icône du bouton bas, lorsque le bouton est appuyé."

msgid "Up button icon modulation color, when the button is disabled."
msgstr ""
"Couleur de modulation de l'icône du bouton haut, lorsque le bouton est "
"désactivé."

msgid "Up button icon modulation color, when the button is hovered."
msgstr ""
"Couleur de modulation de l'icône du bouton haut, lorsque le bouton est "
"survolé."

msgid "Up button icon modulation color."
msgstr "Couleur de modulation de l'icône du bouton haut."

msgid "Up button icon modulation color, when the button is being pressed."
msgstr ""
"Couleur de modulation de l'icône du bouton haut, lorsque le bouton est appuyé."

msgid "Vertical separation between the up and down buttons."
msgstr "Séparation verticale entre les boutons haut et bas."

msgid ""
"Width of the up and down buttons. If smaller than any icon set on the "
"buttons, the respective icon may overlap neighboring elements. If smaller "
"than [code]0[/code], the width is automatically adjusted from the icon size."
msgstr ""
"Largeur des boutons haut et bas. Si plus petite que n'importe quelle icône "
"définie sur les boutons, l'icône respective peut recouvrir les éléments "
"voisins. Si plus petite que [code]0[/code], la largeur est automatiquement "
"ajustée depuis la taille de l'icône."

msgid ""
"Width of the horizontal separation between the text input field ([LineEdit]) "
"and the buttons."
msgstr ""
"Largeur de la séparation horizontale entre le champ de saisie de texte "
"([LineEdit]) et les boutons."

msgid ""
"This property exists only for compatibility with older themes. Setting "
"[theme_item buttons_width] to a negative value has the same effect."
msgstr ""
"Cette propriété n'existe que pour la compatibilité avec les thèmes plus "
"anciens. Définir [theme_item boutons_width] à une valeur négative a le même "
"effet."

msgid ""
"If not [code]0[/code], the minimum button width corresponds to the widest of "
"all icons set on those buttons, even if [theme_item buttons_width] is smaller."
msgstr ""
"Si différent de [code]0[/code], la largeur minimale du bouton correspond à la "
"plus grande largeur des icônes définies sur ces boutons, même si [theme_item "
"buttons_width] est plus petite."

msgid ""
"Down button icon, displayed in the middle of the down (value-decreasing) "
"button."
msgstr ""
"Icône du bouton bas, affichée au milieu du bouton bas (diminution de la "
"valeur)."

msgid "Down button icon when the button is disabled."
msgstr "Icône du bouton bas lorsque le bouton est désactivé."

msgid "Down button icon when the button is hovered."
msgstr "Icône du bouton bas lorsque le bouton est survolé."

msgid "Down button icon when the button is being pressed."
msgstr "Icône du bouton bas lorsque le bouton est appuyé."

msgid ""
"Up button icon, displayed in the middle of the up (value-increasing) button."
msgstr ""
"Icône du bouton haut, affichée au milieu du bouton haut (augmentation de la "
"valeur)."

msgid "Up button icon when the button is disabled."
msgstr "Icône du bouton haut lorsque le bouton est désactivé."

msgid "Up button icon when the button is hovered."
msgstr "Icône du bouton haut lorsque le bouton est survolé."

msgid "Up button icon when the button is being pressed."
msgstr "Icône du bouton haut lorsque le bouton est appuyé."

msgid "Use [theme_item up] and [theme_item down] instead."
msgstr "Utilisez [theme_item up] et [theme_item down] à la place."

msgid ""
"Single texture representing both the up and down buttons icons. It is "
"displayed in the middle of the buttons and does not change upon interaction. "
"If a valid icon is assigned, it will replace [theme_item up] and [theme_item "
"down]."
msgstr ""
"Texture unique représentant à la fois les icônes des boutons haut et bas. "
"Elle est affichée au milieu des boutons et ne change pas lors d'une "
"interaction. Si une icône valide est assignée, elle remplacera [theme_item "
"up] et [theme_item down]."

msgid "Background style of the down button."
msgstr "Style de l'arrière-plan du bouton bas."

msgid "Background style of the down button when disabled."
msgstr "Style de l'arrière-plan du bouton bas lorsque désactivé."

msgid "Background style of the down button when hovered."
msgstr "Style de l'arrière-plan du bouton bas lorsque survolé."

msgid "Background style of the down button when being pressed."
msgstr "Style de l'arrière-plan du bouton bas lorsqu'appuyé."

msgid ""
"[StyleBox] drawn in the space occupied by the separation between the input "
"field and the buttons."
msgstr ""
"[StyleBox] dessinée dans l'espace occupé par la séparation entre le champ de "
"saisie et les boutons."

msgid "Background style of the up button."
msgstr "Style d'arrière-plan du bouton haut."

msgid "Background style of the up button when disabled."
msgstr "Style de l'arrière-plan du bouton haut lorsque désactivé."

msgid "Background style of the up button when hovered."
msgstr "Style de l'arrière-plan du bouton haut lorsque survolé."

msgid "Background style of the up button when being pressed."
msgstr "Style de l'arrière-plan du bouton haut lorsqu'appuyé."

msgid ""
"[StyleBox] drawn in the space occupied by the separation between the up and "
"down buttons."
msgstr ""
"[StyleBox] dessinée dans l'espace occupé par la séparation entre les boutons "
"haut et bas."

msgid ""
"Highlights the drag area [Rect2] so you can see where it is during "
"development. The drag area is gold if [member dragging_enabled] is "
"[code]true[/code], and red if [code]false[/code]."
msgstr ""
"Fait ressortir le [Rect2] de la zone de glissement pour que vous puissiez "
"voir où elle est pendant le développement. La zone de glissement est en or si "
"[member dragging_enabled] vaut [code]true[/code], et rouge si [code]false[/"
"code]."

msgid ""
"Reduces the size of the drag area and split bar [theme_item "
"split_bar_background] at the beginning of the container."
msgstr ""
"Réduit la taille de la zone de glissement et de la barre de séparation "
"[theme_item split_bar_background] au début du conteneur."

msgid ""
"Reduces the size of the drag area and split bar [theme_item "
"split_bar_background] at the end of the container."
msgstr ""
"Réduit la taille de la zone de glissement et de la barre de séparation "
"[theme_item split_bar_background] à la fin du conteneur."

msgid ""
"Shifts the drag area in the axis of the container to prevent the drag area "
"from overlapping the [ScrollBar] or other selectable [Control] of a child "
"node."
msgstr ""
"Décale la zone de glissement dans l'axe du conteneur pour empêcher la zone de "
"glissement de recouvrir la [ScrollBar] ou tout autre [Control] sélectionnable "
"d'un nœud enfant."

msgid ""
"Determines the dragger's visibility. This property does not determine whether "
"dragging is enabled or not. Use [member dragging_enabled] for that."
msgstr ""
"Détermine la visibilité de l’ascenseur. Cette propriété ne détermine pas si "
"le glissement est activé ou non. Utilisez [member dragging_enabled] pour cela."

msgid "Enables or disables split dragging."
msgstr "Active ou désactive le glissement de la séparation."

msgid ""
"If [code]true[/code], a touch-friendly drag handle will be enabled for better "
"usability on smaller screens. Unlike the standard grabber, this drag handle "
"overlaps the [SplitContainer]'s children and does not affect their minimum "
"separation. The standard grabber will no longer be drawn when this option is "
"enabled."
msgstr ""
"Si [code]true[/code], une poignée de glissement adaptée au tactile sera "
"activée pour une meilleure utilisabilité sur les écrans plus petits. "
"Contrairement à l'ascenseur standard, cette poignée de glissement recouvre "
"les enfants du [SplitContainer] et n'affecte pas leur séparation minimale. "
"L'ascenseur standard ne sera plus dessiné lorsque cette option sera activée."

msgid ""
"If [code]true[/code], the [SplitContainer] will arrange its children "
"vertically, rather than horizontally.\n"
"Can't be changed when using [HSplitContainer] and [VSplitContainer]."
msgstr ""
"Si [code]true[/code], le [SplitContainer] arrangera ses enfants "
"verticalement, plutôt que horizontalement.\n"
"Ne peut être changé lors de l'utilisation de [HSplitContainer] et de "
"[VSplitContainer]."

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 ""
"The split dragger icon is always visible when [theme_item autohide] is "
"[code]false[/code], otherwise visible only when the cursor hovers it.\n"
"The size of the grabber icon determines the minimum [theme_item separation].\n"
"The dragger icon is automatically hidden if the length of the grabber icon is "
"longer than the split bar."
msgstr ""
"L'icône de l’ascenseur de séparation est toujours visible lorsque [theme_item "
"autohide] vaut [code]false[/code], sinon visible seulement lorsque le curseur "
"le survole.\n"
"La taille de l'icône de l'ascenseur détermine la séparation minimale "
"[theme_item separation].\n"
"L'icône de l'ascenseur est automatiquement cachée si la longueur de l'icône "
"de l'ascenseur est plus longue que la barre de séparation."

msgid ""
"The split dragger icon is never visible regardless of the value of "
"[theme_item autohide].\n"
"The size of the grabber icon determines the minimum [theme_item separation]."
msgstr ""
"L'icône de l’ascenseur de séparation n'est jamais visible peu importe la "
"valeur de [theme_item autohide].\n"
"La taille de l'icône de l'ascenseur détermine la séparation minimale "
"[theme_item separation]."

msgid ""
"The split dragger icon is not visible, and the split bar is collapsed to zero "
"thickness."
msgstr ""
"L'icône de l’ascenseur de séparation n'est pas visible, et la barre de "
"séparation est réduite à une épaisseur nulle."

msgid "The color of the touch dragger."
msgstr "La couleur de l’ascenseur tactile."

msgid "The color of the touch dragger when hovered."
msgstr "La couleur de l’ascenseur tactile lorsque survolé."

msgid "The color of the touch dragger when pressed."
msgstr "La couleur de l’ascenseur tactile lorsqu'appuyé."

msgid ""
"The icon used for the drag handle when [member touch_dragger_enabled] is "
"[code]true[/code] and [member vertical] is [code]false[/code]."
msgstr ""
"L'icône utilisée pour la poignée à glisser lorsque [member "
"touch_dragger_enabled] vaut [code]true[/code] et que [member vertical] vaut "
"[code]false[/code]."

msgid ""
"The icon used for the drag handle when [member touch_dragger_enabled] is "
"[code]true[/code]. This is only used in [HSplitContainer] and "
"[VSplitContainer]. For [SplitContainer], see [theme_item h_touch_dragger] and "
"[theme_item v_touch_dragger] instead."
msgstr ""
"L'icône utilisée pour la poignée de glissement lorsque [member "
"touch_dragger_enabled] vaut [code]true[/code]. Ceci est utilisé uniquement "
"dans [HSplitContainer] et [VSplitContainer]. Pour [SplitContainer], voir "
"[theme_item h_touch_dragger] et [theme_item v_touch_dragger] à la place."

msgid ""
"The icon used for the drag handle when [member touch_dragger_enabled] is "
"[code]true[/code] and [member vertical] is [code]true[/code]."
msgstr ""
"L'icône utilisée pour la poignée à glisser lorsque [member "
"touch_dragger_enabled] vaut [code]true[/code] et que [member vertical] vaut "
"[code]true[/code]."

msgid ""
"Determines the background of the split bar if its thickness is greater than "
"zero."
msgstr ""
"Détermine le fond de la barre de séparation si son épaisseur est supérieure à "
"zéro."

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 ""
"A 3D raycast that dynamically moves its children near the collision point."
msgstr ""
"Un raycast 3D qui déplace dynamiquement ses enfants près du point de "
"collision."

msgid ""
"[SpringArm3D] casts a ray or a shape along its Z axis and moves all its "
"direct children to the collision point, with an optional margin. This is "
"useful for 3rd person cameras that move closer to the player when inside a "
"tight space (you may need to exclude the player's collider from the "
"[SpringArm3D]'s collision check)."
msgstr ""
"[SpringArm3D] projette un rayon ou une forme le long de son axe Z et déplace "
"tous ses enfants directs au point de collision, avec une marge facultative. "
"Ceci est utile pour les caméras à la 3ème personne qui se rapprochent du "
"joueur lorsqu'il se trouve à l'intérieur d'un espace serré (vous pourriez "
"avoir besoin d'exclure le collider du joueur de la vérification de collision "
"du [SpringArm3D])."

msgid "Third-person camera with spring arm"
msgstr "Caméra à la troisième personne avec un bras en ressort"

msgid ""
"Adds the [PhysicsBody3D] object with the given [RID] to the list of "
"[PhysicsBody3D] objects excluded from the collision check."
msgstr ""
"Ajoute l'objet [PhysicsBody3D] avec le [RID] donné à la liste des objets "
"[PhysicsBody3D] exclus de la vérification de collision."

msgid ""
"Clears the list of [PhysicsBody3D] objects excluded from the collision check."
msgstr ""
"Vide la liste des objets [PhysicsBody3D] exclus de la vérification de "
"collision."

msgid "Returns the spring arm's current length."
msgstr "Renvoie la longueur actuelle du bras en ressort."

msgid ""
"Removes the given [RID] from the list of [PhysicsBody3D] objects excluded "
"from the collision check."
msgstr ""
"Supprime le [RID] donné de la liste des objets [PhysicsBody3D] exclus de la "
"vérification de collision."

msgid ""
"When the collision check is made, a candidate length for the SpringArm3D is "
"given.\n"
"The margin is then subtracted to this length and the translation is applied "
"to the child objects of the SpringArm3D.\n"
"This margin is useful for when the SpringArm3D has a [Camera3D] as a child "
"node: without the margin, the [Camera3D] would be placed on the exact point "
"of collision, while with the margin the [Camera3D] would be placed close to "
"the point of collision."
msgstr ""
"Lorsque la vérification de collision est faite, une longueur candidate pour "
"le SpringArm3D est donnée.\n"
"La marge est ensuite soustraite à cette longueur et la translation est "
"appliquée aux objets enfants du SpringArm3D.\n"
"Cette marge est utile lorsque le SpringArm3D a un nœud enfant [Camera3D] : "
"sans la marge, la [Camera3D] serait placée au point de collision exact, alors "
"qu'avec la marge la [Camera3D] serait placée près du point de collision."

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 ""
"The maximum extent of the SpringArm3D. This is used as a length for both the "
"ray and the shape cast used internally to calculate the desired position of "
"the SpringArm3D's child nodes.\n"
"To know more about how to perform a shape cast or a ray cast, please consult "
"the [PhysicsDirectSpaceState3D] documentation."
msgstr ""
"L'étendue maximale du SpringArm3D. Elle est utilisée comme longueur pour le "
"raycast et le shapecast utilisés en interne pour calculer la position désirée "
"pour les nœuds enfants du SpringArm3D.\n"
"Pour en savoir plus sur la façon d'effectuer un shapecast ou un raycast, "
"veuillez consulter la documentation de [PhysicsDirectSpaceState3D]."

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 "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 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 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 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 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 "
"SkeletonModifier3D.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 "
"SkeletonModifier3D.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 ""
"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 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 ""
"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 SkeletonModifier3D.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 SkeletonModifier3D.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 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 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 SkeletonModifier3D.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 SkeletonModifier3D.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 SkeletonModifier3D.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 SkeletonModifier3D.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 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 "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 ""
"Returns a [Rect2] representing the Sprite2D's boundary in local coordinates.\n"
"[b]Example:[/b] Detect if the Sprite2D was clicked:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _input(event):\n"
"\tif event is InputEventMouseButton and event.pressed and event.button_index "
"== MOUSE_BUTTON_LEFT:\n"
"\t\tif get_rect().has_point(to_local(event.position)):\n"
"\t\t\tprint(\"A click!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Input(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton inputEventMouse)\n"
"\t{\n"
"\t\tif (inputEventMouse.Pressed && inputEventMouse.ButtonIndex == "
"MouseButton.Left)\n"
"\t\t{\n"
"\t\t\tif (GetRect().HasPoint(ToLocal(inputEventMouse.Position)))\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print(\"A click!\");\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Renvoie un [Rect2] représentant la bordure du Sprite2D dans les coordonnées "
"locales.\n"
"[b]Exemple :[/b] Détecter si le Sprite2D a été cliqué :\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _input(event):\n"
"\tif event is InputEventMouseButton and event.pressed and event.button_index "
"== MOUSE_BUTTON_LEFT:\n"
"\t\tif get_rect().has_point(to_local(event.position)):\n"
"\t\t\tprint(\"Un clic !\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Input(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton inputEventMouse)\n"
"\t{\n"
"\t\tif (inputEventMouse.Pressed && inputEventMouse.ButtonIndex == "
"MouseButton.Left)\n"
"\t\t{\n"
"\t\t\tif (GetRect().HasPoint(ToLocal(inputEventMouse.Position)))\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print(\"Un clic !\");\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]true[/code], texture is 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 est 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 ""
"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 texture's drawing offset.\n"
"[b]Note:[/b] When you increase [member offset].y in Sprite2D, the sprite "
"moves downward on screen (i.e., +Y is down)."
msgstr ""
"Le décalage de dessin de la texture.\n"
"[b]Note :[/b] Lorsque vous augmentez [member offset].y dans Sprite2D, le "
"sprite se déplace vers le bas à l'écran (c.-à-d. +Y pointe vers le bas)."

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 ""
"If [code]true[/code], the sprite will use [member region_rect] and display "
"only the specified part of its texture."
msgstr ""
"Si [code]true[/code], le sprite utilisera [member region_rect] et n'affichera "
"que la partie spécifiée de sa texture."

msgid ""
"[Texture2D] object to draw. If [member GeometryInstance3D.material_override] "
"is used, this will be overridden. The size information is still used."
msgstr ""
"L'objet [Texture2D] à dessiner. Si [member "
"GeometryInstance3D.material_override] est utilisé, cela sera redéfini. "
"L'information de la taille est toujours utilisée."

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 "Abstract base class for interacting with streams."
msgstr "Classe de base abstraite pour interagir avec des flux."

msgid ""
"StreamPeer is an abstract base class mostly used for stream-based protocols "
"(such as TCP). It provides an API for sending and receiving data through "
"streams as raw data or strings.\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 ""
"StreamPeer est une classe de base abstraite principalement utilisée pour les "
"protocoles orientés flux (comme le TCP). Elle fournit une API pour l'envoi et "
"la réception de données à travers des flux comme des données brutes ou des "
"chaînes de caractères.\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 un déploiement en un clic. Sinon, la "
"communication réseau de tout type sera bloquée par Android."

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 "Returns the number of bytes this [StreamPeer] has available."
msgstr "Renvoie le nombre d'octets que ce [StreamPeer] a de disponible."

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 a half-precision float from the stream."
msgstr "Obtient un flottant en demi-précision depuis le flux."

msgid ""
"Gets an ASCII string with byte-length [param bytes] from the stream. If "
"[param bytes] is negative (default) the length will be read from the stream "
"using the reverse process of [method put_string]."
msgstr ""
"Obtient une chaîne ASCII d'une longueur de [param bytes] octets du flux. Si "
"[param bytes] est négatif (par défaut), la longueur sera lue depuis le flux "
"en utilisant le processus inverse de [method put_string]."

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 ""
"Gets a UTF-8 string with byte-length [param bytes] from the stream (this "
"decodes the string sent as UTF-8). If [param bytes] is negative (default) the "
"length will be read from the stream using the reverse process of [method "
"put_utf8_string]."
msgstr ""
"Obtient une chaîne UTF-8 d'une longueur de [param bytes] octets du flux (ceci "
"décode la chaîne envoyée en UTF-8). Si [param bytes] est négatif (par "
"défaut), la longueur sera lue depuis le flux en utilisant le processus "
"inverse de [method put_utf8_string]."

msgid ""
"Gets a Variant from the stream. 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 ""
"Obtient un Variant du flux. Si [param allow_objects] vaut [code]true[/code], "
"le décodage des 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]Avertissement :[/b] Les objets désérialisés peuvent contenir du code qui "
"sera exécuté. N'utilisez pas cette option si l'objet sérialisé provient de "
"sources non sûres pour éviter des risques de sécurité telles que de "
"l'exécution de code à distance."

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 ""
"Sends a chunk of data through the connection, blocking if necessary until the "
"data is done sending. This function returns an [enum Error] code."
msgstr ""
"Envoie un morceau de données à travers la connexion, en bloquant si "
"nécessaire jusqu'à ce que les données soient finies d'être envoyées. Cette "
"fonction renvoie un code [enum Error]."

msgid "Puts a double-precision float into the stream."
msgstr "Ajoute un flottant en double-précision dans le flux."

msgid "Puts a single-precision float into the stream."
msgstr "Ajoute un flottant en simple-précision dans le flux."

msgid "Puts a half-precision float into the stream."
msgstr "Ajoute un flottant en demi-précision dans le flux."

msgid ""
"Sends a chunk of data through the connection. If all the data could not be "
"sent at once, only part of it will. This function returns two values, an "
"[enum Error] code and an integer, describing how much data was actually sent."
msgstr ""
"Envoie un morceau de données par la connexion. Si toutes les données ne "
"peuvent pas être envoyées à la fois, seule une partie de celles-ci le seront. "
"Cette fonction renvoie deux valeurs : un code [enum Error], et un entier, "
"décrivant combien de données ont effectivement été envoyées."

msgid ""
"Puts a zero-terminated ASCII string into the stream prepended by a 32-bit "
"unsigned integer representing its size.\n"
"[b]Note:[/b] To put an ASCII string without prepending its size, you can use "
"[method put_data]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Hello world\".to_ascii_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Hello World\".ToAsciiBuffer());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Ajoute une chaîne ASCII se terminant par le caractère nul dans le flux, "
"précédée par un entier 32 bits non signé représentant sa taille.\n"
"[b]Note :[/b] Pour ajouter une chaîne ASCII sans la faire précéder par sa "
"taille, vous pouvez utiliser [method put_data] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Salut le monde\".to_ascii_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Salut le monde\".ToAsciiBuffer());\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits "
"unsigned integer representing its size.\n"
"[b]Note:[/b] To put a UTF-8 string without prepending its size, you can use "
"[method put_data]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Hello world\".to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Hello World\".ToUtf8Buffer());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Ajoute une chaîne UTF-8 se terminant par le caractère nul dans le flux, "
"précédée par un entier 32 bits non signé représentant sa taille.\n"
"[b]Note :[/b] Pour ajouter une chaîne UTF-8 sans la faire précéder par sa "
"taille, vous pouvez utiliser [method put_data] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Salut le monde\".to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Salut le monde\".ToUtf8Buffer());\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Puts a Variant into the stream. 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 ""
"Ajoute un Variant dans le flux. Si [param full_objects] vaut [code]true[/"
"code], l'encodage d'objets est autorisé (et ceux-ci peuvent potentiellement "
"contenir du code).\n"
"En interne, cela utilise le même mécanisme d'encodage que la méthode [method "
"@GlobalScope.var_to_bytes]."

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 ""
"Moves the cursor to the specified position. [param position] must be a valid "
"index of [member data_array]."
msgstr ""
"Déplace le curseur vers la position spécifiée. [param position] doit être un "
"index valide de [member data_array]."

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 "A stream peer that handles GZIP and deflate compression/decompression."
msgstr "Un pair de flux qui gère la compression/décompression GZIP et deflate."

msgid ""
"This class allows to compress or decompress data using GZIP/deflate in a "
"streaming fashion. This is particularly useful when compressing or "
"decompressing files that have to be sent through the network without needing "
"to allocate them all in memory.\n"
"After starting the stream via [method start_compression] (or [method "
"start_decompression]), calling [method StreamPeer.put_partial_data] on this "
"stream will compress (or decompress) the data, writing it to the internal "
"buffer. Calling [method StreamPeer.get_available_bytes] will return the "
"pending bytes in the internal buffer, and [method "
"StreamPeer.get_partial_data] will retrieve the compressed (or decompressed) "
"bytes from it. When the stream is over, you must call [method finish] to "
"ensure the internal buffer is properly flushed (make sure to call [method "
"StreamPeer.get_available_bytes] on last time to check if more data needs to "
"be read after that)."
msgstr ""
"Cette classe permet de compresser ou de décompresser des données utilisant "
"GZIP/deflate à la manière d'un flux. Ceci est particulièrement utile lorsque "
"vous compressez ou décompressez des fichiers qui doivent être envoyés par le "
"réseau sans avoir besoin de tous les allouer en mémoire.\n"
"Après avoir démarré le flux via [method start_compression] (ou [method "
"start_decompression]), appeler [method StreamPeer.put_partial_data] sur ce "
"flux compressera (ou décompressera) les données, les écrivant dans le buffer "
"interne. L'appel à [method StreamPeer.get_available_bytes] renverra les "
"octets en attente dans le buffer interne, et [method "
"StreamPeer.get_partial_data] récupérera les octets compressés (ou "
"décompressés). Lorsque le flux est terminé, vous devez appeler [method "
"finish] pour garantir que le buffer interne est correctement vidé (assurez "
"vous d'appeler [method StreamPeer.get_available_bytes] une dernière fois pour "
"vérifier si d'autres données doivent être lues après cela)."

msgid "Clears this stream, resetting the internal state."
msgstr "Vide le flux, réinitialisant l'état interne."

msgid ""
"Finalizes the stream, compressing any buffered chunk left.\n"
"You must call it only when you are compressing."
msgstr ""
"Finalise le flux, compressant n'importe quel morceau du buffer restant.\n"
"Vous ne devez l'appeler seulement que quand vous compressez."

msgid ""
"Start the stream in compression mode with the given [param buffer_size], if "
"[param use_deflate] is [code]true[/code] uses deflate instead of GZIP."
msgstr ""
"Démarre le flux en mode compression avec la taille de buffer [param "
"buffer_size] donnée. Si [param use_deflate] vaut [code]true[/code], utilise "
"deflate au lieu de GZIP."

msgid ""
"Start the stream in decompression mode with the given [param buffer_size], if "
"[param use_deflate] is [code]true[/code] uses deflate instead of GZIP."
msgstr ""
"Démarre le flux en mode décompression avec la taille de buffer [param "
"buffer_size] donnée. Si [param use_deflate] vaut [code]true[/code], utilise "
"deflate au lieu de GZIP."

msgid "Disconnects from host."
msgstr "Se déconnecte de l'hôte."

msgid "A stream peer that handles TCP connections."
msgstr "Un pair de flux qui gère des connexions TCP."

msgid ""
"A stream peer that handles TCP connections. This object can be used to "
"connect to TCP servers, or also is returned by a TCP server.\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 ""
"Un pair de flux qui gère des connexions TCP. Cet objet peut être utilisé pour "
"se connecter à des serveurs TCP, ou est également renvoyé par un serveur "
"TCP.\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 en utilisant le déploiement en un clic. Sinon, la "
"communication réseau de tout type sera bloquée par Android."

msgid ""
"Connects to the specified [code]host:port[/code] pair. A hostname will be "
"resolved if valid. Returns [constant OK] on success."
msgstr ""
"Se connecte à la paire [code]host:port[/code] spécifiée. Un nom d'hôte sera "
"résolu si valide. Renvoie [constant OK] lors du succès."

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 ""
"If [param enabled] is [code]true[/code], packets will be sent immediately. If "
"[param enabled] is [code]false[/code] (the default), packet transfers will be "
"delayed and combined using [url=https://en.wikipedia.org/wiki/"
"Nagle%27s_algorithm]Nagle's algorithm[/url].\n"
"[b]Note:[/b] It's recommended to leave this disabled for applications that "
"send large packets or need to transfer a lot of data, as enabling this can "
"decrease the total available bandwidth."
msgstr ""
"Si [param enabled] vaut [code]true[/code], les paquets seront envoyés "
"immédiatement. Si [param enabled] vaut [code]false[/code] (par défaut), les "
"transferts de paquets seront retardés et combinés en utilisant [url=https://"
"fr.wikipedia.org/wiki/Algorithme_de_Nagle]l'algorithme de Nagle[/url].\n"
"[b]Note :[/b] Il est recommandé de laisser ceci désactivé pour les "
"applications qui envoient de larges paquets ou qui doivent transférer "
"beaucoup de données, car activer ceci peut diminuer la bande passante totale "
"disponible."

msgid "A stream peer that handles TLS connections."
msgstr "Un pair de flux qui gère des connexions TLS."

msgid ""
"Accepts a peer connection as a server using the given [param server_options]. "
"See [method TLSOptions.server]."
msgstr ""
"Accepte une connexion de pair en tant que serveur en utilisant [param "
"server_options]. Voir [method TLSOptions.server]."

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.\n"
"[b]Note:[/b] A negative value of [param from] is converted to a starting "
"index by counting back from the last possible index with enough space to find "
"[param what]."
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].\n"
"[b]Note :[/b] Une valeur négative de [param from] est convertie en un index "
"de départ en comptant à partir du dernier index possible avec suffisamment "
"d'espace pour trouver [param what]."

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 ""
"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 ""
"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] [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 ""
"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 ""
"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 "Abstract base class for defining stylized boxes for UI elements."
msgstr ""
"Classe de base abstraite pour définir des boîtes stylisées pour des éléments "
"d'UI."

msgid ""
"Virtual method to be implemented by the user. Returns a custom minimum size "
"that the stylebox must respect when drawing. By default [method "
"get_minimum_size] only takes content margins into account. This method can be "
"overridden to add another size restriction. A combination of the default "
"behavior and the output of this method will be used, to account for both "
"sizes."
msgstr ""
"Méthode virtuelle à implémenter par l'utilisateur. Renvoie une taille "
"minimale personnalisée que la stylebox doit respecter lors du dessin. Par "
"défaut [method get_minimum_size] prend uniquement en compte les marges du "
"contenu. Cette méthode peut être redéfinie pour ajouter une autre restriction "
"de taille. Une combinaison du comportement par défaut et de la sortie de "
"cette méthode sera utilisée pour tenir compte des deux tailles."

msgid ""
"Draws this stylebox using a canvas item identified by the given [RID].\n"
"The [RID] value can either be the result of [method "
"CanvasItem.get_canvas_item] called on an existing [CanvasItem]-derived node, "
"or directly from creating a canvas item in the [RenderingServer] with [method "
"RenderingServer.canvas_item_create]."
msgstr ""
"Dessine cette stylebox en utilisant un élément de canevasidentifié par le "
"[RID] donné.\n"
"La valeur du [RID] peut soit être le résultat de [method "
"CanvasItem.get_canvas_item] appelé sur un nœud dérivé de [CanvasItem] "
"existant, ou directement de la création d'un élément de canevas dans le "
"[RenderingServer] avec [method RenderingServer.canvas_item_create]."

msgid "Returns the default margin of the specified [enum Side]."
msgstr "Renvoie la marge par défaut du côté [enum Side] spécifié."

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 content margin offset for the specified [enum Side].\n"
"Positive values reduce size inwards, unlike [Control]'s margin values."
msgstr ""
"Renvoie le décalage de la marge de contenu pour le côté [enum Side] "
"spécifié.\n"
"Les valeurs positives réduisent la taille vers l'intérieur, contrairement aux "
"valeurs des marges de [Control]."

msgid "Returns the minimum size that this stylebox can be shrunk to."
msgstr "Renvoie la taille minimale à laquelle cette stylebox 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 ""
"Sets the default value of the specified [enum Side] to [param offset] pixels."
msgstr ""
"Définit la valeur par défaut du côté [enum Side] spécifié à [param offset] "
"pixels."

msgid "Sets the default margin to [param offset] pixels for all sides."
msgstr ""
"Définit la marge par défaut à [param offset] pixels pour tous les côtés."

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 left margin for the contents of this style box. Increasing this value "
"reduces the space available to the contents from the left.\n"
"Refer to [member content_margin_bottom] for extra considerations."
msgstr ""
"La marge gauche pour le contenu de cette stylebox. Augmenter cette valeur "
"réduit l'espace disponible pour le contenu à partir de la gauche.\n"
"Se référer à [member content_margin_bottom] pour des considérations "
"supplémentaires."

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 stylebox. Augmenter cette valeur "
"réduit l'espace disponible pour le contenu à partir de la droite.\n"
"Se référer à [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 du haut pour le contenu de cette stylebox. Augmenter cette valeur "
"réduit l'espace disponible pour le contenu à partir du haut.\n"
"Se référer à [member content_margin_bottom] pour des considérations "
"supplémentaires."

msgid "An empty [StyleBox] (does not display anything)."
msgstr "Une [StyleBox] vide (n'affiche rien)."

msgid ""
"An empty [StyleBox] that can be used to display nothing instead of the "
"default style (e.g. it can \"disable\" [code]focus[/code] styles)."
msgstr ""
"Une [StyleBox] vide qui peut être utilisée pour ne rien afficher au lieu du "
"style par défaut (par exemple, elle peut \"désactiver\" les styles "
"[code]focus[/code])."

msgid "A customizable [StyleBox] that doesn't use a texture."
msgstr "Une [StyleBox] personnalisable qui n'utilise pas de texture."

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 specified [enum Side]'s border width."
msgstr "Renvoie la largeur de la bordure du côté [enum Side] spécifié."

msgid "Returns the smallest border width out of all four borders."
msgstr "Renvoie la plus fine bordure parmi les quatre bordures."

msgid "Returns the given [param corner]'s radius."
msgstr "Renvoie le rayon du coin [param corner] donné."

msgid "Returns the size of the specified [enum Side]'s expand margin."
msgstr "Renvoie la taille de la marge d'extension du côté [enum Side] spécifié."

msgid "Sets the specified [enum Side]'s border width to [param width] pixels."
msgstr ""
"Définit la largeur de la bordure du côté [enum Side] spécifié à [param width] "
"pixels."

msgid "Sets the border width to [param width] pixels for all sides."
msgstr ""
"Définit la largeur de la bordure à [param width] pixels pour tous les côtés."

msgid ""
"Sets the corner radius to [param radius] pixels for the given [param corner]."
msgstr ""
"Définit le rayon de coin à [param radius] pixels pour le coin [param corner] "
"donné."

msgid "Sets the corner radius to [param radius] pixels for all corners."
msgstr "Définit le rayon de coin à [param radius] pixels pour tous les coins."

msgid ""
"Sets the expand margin to [param size] pixels for the specified [enum Side]."
msgstr ""
"Définit la marge d'élargissement à [param size] pixels pour le côté [enum "
"Side] spécifié."

msgid "Sets the expand margin to [param size] pixels for all sides."
msgstr ""
"Définit la marge d'élargissement à [param size] pixels pour tous les côtés."

msgid ""
"Antialiasing draws a small ring around the edges, which fades to "
"transparency. As a result, edges look much smoother. This is only noticeable "
"when using rounded corners or [member skew].\n"
"[b]Note:[/b] When using beveled corners with 45-degree angles ([member "
"corner_detail] = 1), it is recommended to set [member anti_aliasing] to "
"[code]false[/code] to ensure crisp visuals and avoid possible visual glitches."
msgstr ""
"L'anticrénelage dessine un petit anneau autour des bords, qui disparaît vers "
"de la transparence. En conséquence, les bords sont beaucoup plus doux. Ceci "
"n'est visible que lorsque vous utilisez des coins arrondis ou [member skew].\n"
"[b]Note :[/b] Lors de l'utilisation d'angles biseautés avec des angles de 45 "
"degrés ([member corner_detail] = 1), il est recommandé de définir [member "
"anti_aliasing] à [code]false[/code] afin d'assurer des visuels nets et "
"d'éviter des glitchs visuels possibles."

msgid ""
"This changes the size of the antialiasing effect. [code]1.0[/code] is "
"recommended for an optimal result at 100% scale, identical to how rounded "
"rectangles are rendered in web browsers and most vector drawing software.\n"
"[b]Note:[/b] Higher values may produce a blur effect but can also create "
"undesired artifacts on small boxes with large-radius corners."
msgstr ""
"Cela modifie la taille de l'effet d'anticrénelage. [code]1.0[/code] est "
"recommandé pour un résultat optimal à l'échelle 100%, identique à la façon "
"dont les rectangles arrondis sont rendus dans les navigateurs Web et la "
"plupart des logiciels de dessin vectoriel.\n"
"[b]Note :[/b] Des valeurs plus élevées peuvent produire un effet de flou, "
"mais peuvent également créer des artéfacts indésirables sur les petites "
"boîtes avec des angles à grand rayon."

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 ""
"This sets the number of vertices used for each corner. Higher values result "
"in rounder corners but take more processing power to compute. When choosing a "
"value, you should take the corner radius ([method set_corner_radius_all]) "
"into account.\n"
"For corner radii less than 10, [code]4[/code] or [code]5[/code] should be "
"enough. For corner radii less than 30, values between [code]8[/code] and "
"[code]12[/code] should be enough.\n"
"A corner detail of [code]1[/code] will result in chamfered corners instead of "
"rounded corners, which is useful for some artistic effects."
msgstr ""
"Cela définit le nombre de sommets utilisés pour chaque coin. Les valeurs plus "
"élevées résultent en des angles plus ronds mais prennent plus de puissance de "
"traitement pour calculer. Lors du choix d'une valeur, vous devriez prendre en "
"compte le rayon du coin ([method set_corner_radius_all]).\n"
"Pour des rayons de coin inférieurs à 10, [code]4[/code] ou [code]5[/code] "
"devrait suffire. Pour des rayons de coin inférieurs à 30, des valeurs entre "
"[code]8[/code] et [code]12[/code] devraient suffire.\n"
"Un détail d'angle de [code]1[/code] résultera en des angles chanfreinés au "
"lieu d'angles arrondis, ce qui est utile pour certains effets artistiques."

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 ""
"If set to a non-zero value on either axis, [member skew] distorts the "
"StyleBox horizontally and/or vertically. This can be used for \"futuristic\"-"
"style UIs. Positive values skew the StyleBox towards the right (X axis) and "
"upwards (Y axis), while negative values skew the StyleBox towards the left (X "
"axis) and downwards (Y axis).\n"
"[b]Note:[/b] To ensure text does not touch the StyleBox's edges, consider "
"increasing the [StyleBox]'s content margin (see [member "
"StyleBox.content_margin_bottom]). It is preferable to increase the content "
"margin instead of the expand margin (see [member expand_margin_bottom]), as "
"increasing the expand margin does not increase the size of the clickable area "
"for [Control]s."
msgstr ""
"Si défini à une valeur non nulle sur l'un des axes, [member skew] déforme la "
"StyleBox horizontalement et/ou verticalement. Cela peut être utilisé pour les "
"UIs de style \"futuriste\". Les valeurs positives cisaillent la StyleBox vers "
"la droite (axe X) et vers le haut (axe Y), tandis que les valeurs négatives "
"cisaillent la StyleBox vers la gauche (axe X) et vers le bas (axe Y).\n"
"[b]Note :[/b] Pour garantir que le texte ne touche pas les bords de la "
"StyleBox, envisagez d'augmenter la marge du contenu de la [StyleBox] (voir "
"[member StyleBox.content_margin_bottom]). Il est préférable d'augmenter la "
"marge du contenu au lieu de la marge d'extension (voir [member "
"expand_margin_bottom]), car augmenter la marge d'extension n'augmente pas la "
"taille de la zone cliquable pour les [Control]s."

msgid "A [StyleBox] that displays a single line of a given color and thickness."
msgstr ""
"Une [StyleBox] qui affiche une seule ligne de couleur et d'épaisseur données."

msgid ""
"A [StyleBox] that displays a single line of a given color and thickness. The "
"line can be either horizontal or vertical. Useful for separators."
msgstr ""
"Une [StyleBox] qui affiche une seule ligne de couleur et d'épaisseur données. "
"Cette ligne peut être verticale ou horizontale. Utile pour des séparateurs."

msgid "The line's color."
msgstr "La couleur de la ligne."

msgid ""
"The number of pixels the line will extend before the [StyleBoxLine]'s bounds. "
"If set to a negative value, the line will begin inside the [StyleBoxLine]'s "
"bounds."
msgstr ""
"Le nombre de pixels où la ligne s'étendra avant les limites de la "
"[StyleBoxLine]. Si défini à une valeur négative, la ligne commencera dans les "
"limites de la [StyleBoxLine]."

msgid ""
"The number of pixels the line will extend past the [StyleBoxLine]'s bounds. "
"If set to a negative value, the line will end inside the [StyleBoxLine]'s "
"bounds."
msgstr ""
"Le nombre de pixels où la ligne s'étendra après les limites de la "
"[StyleBoxLine]. Si défini à une valeur négative, la ligne finira dans les "
"limites de la [StyleBoxLine]."

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 "A texture-based nine-patch [StyleBox]."
msgstr "Une [StyleBox] à 9 sections basée sur une texture."

msgid ""
"A texture-based nine-patch [StyleBox], in a way similar to [NinePatchRect]. "
"This stylebox performs a 3×3 scaling of a texture, where only the center cell "
"is fully stretched. This makes it possible to design bordered styles "
"regardless of the stylebox's size."
msgstr ""
"Une [StyleBox] à 9 sections basée sur une texture, d'une manière semblable à "
"[NinePatchRect]. Cette stylebox effectue un mise à l'échelle 3×3 d'une "
"texture, où seule la cellule centrale est entièrement étirée. Cela permet de "
"concevoir des styles à bordures indépendamment de la taille de la stylebox."

msgid "Returns the expand margin size of the specified [enum Side]."
msgstr "Renvoie la taille de la marge d'extension du côté [enum Side] spécifié."

msgid "Returns the margin size of the specified [enum Side]."
msgstr "Renvoie la taille de la marge du côté [enum Side] spécifié."

msgid "Sets the margin to [param size] pixels for the specified [enum Side]."
msgstr ""
"Définit la marge à [param size] pixels pour le côté [enum Side] spécifié."

msgid "Sets the margin to [param size] pixels for all sides."
msgstr "Définit la marge à [param size] pixels pour tous les côtés."

msgid ""
"Controls how the stylebox's texture will be stretched or tiled horizontally."
msgstr ""
"Contrôle la façon dont la texture de la stylebox sera étirée ou répétée "
"horizontalement."

msgid ""
"Controls how the stylebox's texture will be stretched or tiled vertically."
msgstr ""
"Contrôle la façon dont la texture de la stylebox sera étirée ou répétée "
"verticalement."

msgid ""
"If [code]true[/code], the nine-patch texture's center tile will be drawn."
msgstr ""
"Si [code]true[/code], la tuile centrale de la texture à neuf sections sera "
"dessinée."

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 region to use from the [member texture].\n"
"This is equivalent to first wrapping the [member texture] in an "
"[AtlasTexture] with the same region.\n"
"If empty ([code]Rect2(0, 0, 0, 0)[/code]), the whole [member texture] is used."
msgstr ""
"La région à utiliser de [member texture].\n"
"Cela est équivalent à wrapper la [member texture] dans une [AtlasTexture] "
"avec la même région.\n"
"Si vide ([code]Rect2(0, 0, 0, 0)[/code]), la [member texture] entière est "
"utilisé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 ""
"Repeats the stylebox's texture to match the stylebox's size according to the "
"nine-patch system."
msgstr ""
"Répète la texture de la stylebox pour correspondre à la taille de la stylebox "
"selon le système à 9 sections."

msgid ""
"Repeats the stylebox's texture to match the stylebox's size according to the "
"nine-patch system. Unlike [constant AXIS_STRETCH_MODE_TILE], the texture may "
"be slightly stretched to make the nine-patch texture tile seamlessly."
msgstr ""
"Répète la texture de la stylebox pour correspondre à la taille de la stylebox "
"selon le système à 9 sections. Contrairement à [constant "
"AXIS_STRETCH_MODE_TILE], la texture peut être légèrement étirée pour répéter "
"la texture à 9 sections sans coutures."

msgid "Runs a [Tween] nested within another [Tween]."
msgstr "Exécute un [Tween] niché dans un autre [Tween]."

msgid ""
"[SubtweenTweener] is used to execute a [Tween] as one step in a sequence "
"defined by another [Tween]. See [method Tween.tween_subtween] for more usage "
"information.\n"
"[b]Note:[/b] [method Tween.tween_subtween] is the only correct way to create "
"[SubtweenTweener]. Any [SubtweenTweener] created manually will not function "
"correctly."
msgstr ""
"[SubtweenTweener] est utilisé pour exécuter un [Tween] comme une étape dans "
"une séquence définie par un autre [Tween]. Voir [method Tween.tween_subtween] "
"pour plus d'informations d'utilisation.\n"
"[b]Note :[/b] [method Tween.tween_subtween] est le seul moyen correct de "
"créer un [SubtweenTweener]. Tout [SubtweenTweener] créé manuellement ne "
"fonctionnera pas correctement."

msgid ""
"Sets the time in seconds after which the [SubtweenTweener] will start running "
"the subtween. By default there's no delay."
msgstr ""
"Définit le temps en secondes après lequel le [SubtweenTweener] commence à "
"exécuter le sous-tween. Par défaut, il n'y a pas de délai."

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 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 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 a tab will emit the [signal "
"tab_close_pressed] signal."
msgstr ""
"Si [code]true[/code], un clic du milieu de la souris sur un onglet émettra le "
"[signal tab_close_pressed]signal."

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 "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 is hovered by the mouse."
msgstr "Émis quand un onglet est survolé par la souris."

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 "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 ""
"A container that creates a tab for each child control, displaying only the "
"active tab's control."
msgstr ""
"Un conteneur qui crée un onglet pour chaque contrôle enfant, n'affichant que "
"le contrôle de l'onglet actif."

msgid ""
"Arranges child controls into a tabbed view, creating a tab for each one. The "
"active tab's corresponding control is made visible, while all other child "
"controls are hidden. Ignores non-control children.\n"
"[b]Note:[/b] The drawing of the clickable tabs is handled by this node; "
"[TabBar] is not needed."
msgstr ""
"Arrange les contrôles enfants en une vue en onglets, créant un onglet pour "
"chacun. Le contrôle correspondant à l'onglet actif est rendu visible, tandis "
"que tous les autres contrôles enfants sont cachés. Ignore les contrôles non "
"enfants.\n"
"[b]Note :[/b] Le dessin des onglets cliquables est géré par ce nœud, [TabBar] "
"n'est pas nécessaire."

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 [Popup] node instance if one has been set already with [method "
"set_popup].\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 l'instance de nœud [Popup] si l'un a déjà été défini avec [method "
"set_popup].\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 leur propriété [member Window.visible]."

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 ""
"Returns the index of the tab tied to the given [param control]. The control "
"must be a child of the [TabContainer]."
msgstr ""
"Renvoie l'index de l'onglet lié au contrôle [param control] donné. Le "
"contrôle doit être un enfant du [TabContainer]."

msgid ""
"Returns the title of the tab at index [param tab_idx]. Tab titles default to "
"the name of the indexed child node, but this can be overridden with [method "
"set_tab_title]."
msgstr ""
"Renvoie le titre de l'onglet à l'index [param tab_idx]. Le titres des onglets "
"sont par défaut le nom des nœuds enfants indexés, mais ça peut être redéfini "
"avec [method set_tab_title]."

msgid ""
"If set on a [Popup] node instance, a popup menu icon appears in the top-right "
"corner of the [TabContainer] (setting it to [code]null[/code] will make it go "
"away). Clicking it will expand the [Popup] node."
msgstr ""
"Si défini à une instance de nœud [Popup], une icône de menu popup apparaît "
"dans le coin supérieur droit du [TabContainer] (le définir à [code]null[/"
"code] la fera disparaître). Cliquer dessus étendra le nœud [Popup]."

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 ""
"Sets a custom title for the tab at index [param tab_idx] (tab titles default "
"to the name of the indexed child node). Set it back to the child's name to "
"make the tab default to it again."
msgstr ""
"Définit un titre personnalisé pour l'onglet à l'index [param tab_idx] (les "
"titres des onglets sont par défaut le nom du nœud enfant indexé). Définissez "
"au nom de l'enfant pour qu'il redevienne le nom par défaut."

msgid ""
"Sets a custom tooltip text 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 un texte d'info-bulle personnalisé pour l'onglet à l'index [param "
"tab_idx].\n"
"[b]Note :[/b] Par défaut, si le [param tooltip] est vide et que le texte de "
"l'onglet est tronqué (tous les caractères ne s'inscrivent pas tous dans "
"l'onglet), le titre sera affiché en tant qu'info-bulle. Pour cacher l'info-"
"bulle, assignez [code]\" \"[/code] comme texte du [param tooltip]."

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 current tab index. When set, this index's [Control] node's [code]visible[/"
"code] property is set to [code]true[/code] and all others are set to "
"[code]false[/code].\n"
"A value of [code]-1[/code] means that no tab is selected."
msgstr ""
"L'index actuel de l'onglet. Lorsque définie, la propriété [code]visible[/"
"code] du nœud [Control] de cet index est définie à [code]true[/code] et "
"toutes les autres sont définies à [code]false[/code].\n"
"Une valeur de [code]-1[/code] signifie qu'aucun onglet n'est sélectionné."

msgid ""
"If [code]true[/code], all tabs can be deselected so that no tab is selected. "
"Click on the [member current_tab] to deselect it.\n"
"Only the tab header will be shown if no tabs are selected."
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 [member "
"current_tab] pour le désélectionner.\n"
"Seul l'en-tête de l'onglet sera affiché si aucun onglet n'est sélectionné."

msgid "The position at which tabs will be placed."
msgstr "La position à laquelle les onglets seront placés."

msgid "The focus access mode for the internal [TabBar] node."
msgstr "Le mode d'accès au focus pour le nœud [TabBar] interne."

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 ""
"If [code]true[/code], child [Control] nodes that are hidden have their "
"minimum size take into account in the total, instead of only the currently "
"visible one."
msgstr ""
"Si [code]true[/code], les nœuds [Control] enfants qui sont cachés auront leur "
"taille minimale qui sera prise en compte dans le total, au lieu de seulement "
"celle actuellement visible."

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 "Places the tab bar at the top."
msgstr "Place la barre d'onglet en haut."

msgid ""
"Places the tab bar at the bottom. The tab bar's [StyleBox] will be flipped "
"vertically."
msgstr ""
"Place la barre d'onglets en bas. La [StyleBox] de la barre d'onglets sera "
"inversée verticalement."

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

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 "
"TabBar.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 par dessus la taille par défaut de l'icône, mais avant la valeur "
"définie avec [method TabBar.set_tab_icon_max_width]. La hauteur est ajustée "
"selon le rapport de l'icône."

msgid "Space between tab's name and its icon."
msgstr "Espacement entre le nom de l'onglet et son icône."

msgid ""
"The space at the left or right edges of the tab bar, accordingly with the "
"current [member tab_alignment].\n"
"The margin is ignored with [constant TabBar.ALIGNMENT_RIGHT] if the tabs are "
"clipped (see [member clip_tabs]) or a popup has been set (see [method "
"set_popup]). The margin is always ignored with [constant "
"TabBar.ALIGNMENT_CENTER]."
msgstr ""
"L'espace du bord gauche ou droite de la barre d'onglet, selon le [member "
"tab_alignment] actuel.\n"
"La marge est ignorée avec [constant TabBar.ALIGNMENT_RIGHT] si les onglets "
"sont coupés (voir [member clip_tabs]) ou si une popup a été définie (voir "
"[method set_popup]). La marge est toujours ignorée avec [constant "
"TabBar.ALIGNMENT_CENTER]."

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 of the currently hovered 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é.\n"
"[b]Note :[/b] Ce style sera dessiné avec la même largeur que [theme_item "
"tab_unselected] au minimum."

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 ""
"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 ""
"Returns [code]true[/code] if a [method begin_multicaret_edit] has been called "
"and [method end_multicaret_edit] has not yet been called."
msgstr ""
"Renvoie [code]true[/code] si une [method begin_multicaret_edit] a été appelée "
"et que [method end_multicaret_edit] n'a pas encore été appelée."

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], allow drag and drop of selected text. Text can still be "
"dropped from other sources."
msgstr ""
"Si [code]true[/code], permet le glissé-déposé du texte sélectionné. Le texte "
"peut toujours être déposé depuis d'autres sources."

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 ""
"The text to generate mesh from.\n"
"[b]Note:[/b] Due to being a [Resource], it doesn't follow the rules of "
"[member Node.auto_translate_mode]. If disabling translation is desired, it "
"should be done manually with [method Object.set_message_translation]."
msgstr ""
"Le texte duquel générer du maillage.\n"
"[b]Note :[/b] En raison d'être une [Resource], il ne suit pas les règles de "
"[member Node.auto_translate_mode]. Si désactiver la traduction est souhaité, "
"cela doit être fait manuellement avec [method Object.set_message_translation]."

msgid "Text width (in pixels), used for fill alignment."
msgstr ""
"Largeur du texte (en pixels), utilisée pour l'alignement du remplissage."

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 "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 "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 ""
"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 "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 ""
"[TextureButton] has the same functionality as [Button], except it uses "
"sprites instead of Godot's [Theme] resource. It is faster to create, but it "
"doesn't support localization like more complex [Control]s.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] Setting a texture for the \"normal\" state ([member "
"texture_normal]) is recommended. If [member texture_normal] is not set, the "
"[TextureButton] will still receive input events and be clickable, but the "
"user will not be able to see it unless they activate another one of its "
"states with a texture assigned (e.g., hover over it to show [member "
"texture_hover])."
msgstr ""
"[TextureButton] a les même fonctionnalités que [Button], sauf qu'il utilise "
"des sprites plutôt que la ressource [Theme] de Godot. Il est plus rapide à "
"créer, mais ne supporte pas la localisation comme certains [Control] plus "
"complexes.\n"
"Voir aussi [BaseButton] qui contient les propriétés et méthodes communes "
"associées avec ce nœud.\n"
"[b]Note :[/b] Il est recommandé de définir une texture pour l'état \"normal\" "
"([member texture_normal]). Si [member texture_normal] n'est pas définie, le "
"[TextureButton] recevra encore des événements d'entrée et sera cliquable, "
"mais l'utilisateur ne pourra pas le voir à moins qu'ils activent un autre de "
"ses états avec une texture assignée (par exemple, le survoler pour afficher "
"[member texture_hover])."

msgid ""
"If [code]true[/code], the size of the texture won't be considered for minimum "
"size calculation, so the [TextureButton] can be shrunk down past the texture "
"size."
msgstr ""
"Si [code]true[/code], la taille de la texture ne sera pas considérée pour le "
"calcul de la taille minimale, de sorte que le [TextureButton] puisse être "
"rétréci au delà de la taille de la texture."

msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle. See the [enum StretchMode] constants for available options."
msgstr ""
"Contrôle le comportement de la texture lorsque vous redimensionnez le "
"rectangle délimitant du nœud. Voir les constantes [enum StretchMode] pour les "
"options disponibles."

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 ""
"Texture to display when the node is disabled. See [member "
"BaseButton.disabled]. If not assigned, the [TextureButton] displays [member "
"texture_normal] instead."
msgstr ""
"Texture à afficher lorsque le nœud est désactivé. Voir [member "
"BaseButton.disabled]. Si non assignée, le [TextureButton] affiche [member "
"texture_normal] à la place."

msgid ""
"Texture to [i]overlay on the base texture[/i] when the node has mouse or "
"keyboard focus. Because [member texture_focused] is displayed on top of the "
"base texture, a partially transparent texture should be used to ensure the "
"base texture remains visible. A texture that represents an outline or an "
"underline works well for this purpose. To disable the focus visual effect, "
"assign a fully transparent texture of any size. Note that disabling the focus "
"visual effect will harm keyboard/controller navigation usability, so this is "
"not recommended for accessibility reasons."
msgstr ""
"Texture à [i]superposer sur la texture de base[/i] lorsque le nœud a le focus "
"de la souris ou du clavier. Comme [member texture_focused] est affiché au-"
"dessus de la texture de base, une texture partiellement transparente devrait "
"être utilisée pour s'assurer que la texture de base reste visible. Une "
"texture qui représente un contour ou une soulignage fonctionne bien à cette "
"fin. Pour désactiver l'effet visuel du focus, assignez une texture "
"entièrement transparente de n'importe quelle taille. Notez que la "
"désactivation de l'effet visuel du focus va nuire à l'utilisabilité de "
"navigation clavier/contrôleur, ce qui n'est donc pas recommandé pour des "
"raisons d'accessibilité."

msgid ""
"Texture to display when the mouse hovers over the node. If not assigned, the "
"[TextureButton] displays [member texture_normal] instead when hovered over."
msgstr ""
"Texture à afficher lorsque la souris survole le nœud. Si non assignée, le "
"[TextureButton] affiche [member texture_normal] à la place lorsqu'il est "
"survolé."

msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"hover or pressed state. This texture is still displayed in the focused state, "
"with [member texture_focused] drawn on top."
msgstr ""
"Texture à afficher par défaut, quand le nœud n'est [b]pas[/b] dans l'état "
"désactivé, survolé or appuyé. Cette texture sera toujours affichée dans "
"l'état avec le focus, avec [member texture_focused] dessiné par dessus."

msgid ""
"Texture to display on mouse down over the node, if the node has keyboard "
"focus and the player presses the Enter key or if the player presses the "
"[member BaseButton.shortcut] key. If not assigned, the [TextureButton] "
"displays [member texture_hover] instead when pressed."
msgstr ""
"Texture à afficher quand la souris appuie sur le nœud, si le nœud a le focus "
"du clavier et que l'utilisateur appuie sur la touche Entrée, ou quand "
"l'utilisateur appuie sur la touche [member BaseButton.shortcut]. Si non "
"assignée, le [TextureButton] affiche [member texture_hover] à la place lors "
"qu’appuyé."

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 to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
"Échelonne la texture pour s'adapter au rectangle délimitant du nœud, la "
"centre, et maintient son rapport d'aspect."

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 ""
"Texture Array for Cubemaps that is bound to a texture created on the "
"[RenderingDevice]."
msgstr ""
"Tableau de textures pour des Cubemaps qui est lié à une texture créée sur le "
"[RenderingDevice]."

msgid ""
"Texture for Cubemap that is bound to a texture created on the "
"[RenderingDevice]."
msgstr ""
"Texture pour Cubemap qui est liée à une texture créée sur le "
"[RenderingDevice]."

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] is currently running the provided "
"function. This is useful for determining if [method wait_to_finish] can be "
"called without blocking the calling thread.\n"
"To check if a [Thread] is joinable, use [method is_started]."
msgstr ""
"Renvoie [code]true[/code] si ce [Thread] exécute actuellement la fonction "
"fournie. Ceci est utile pour déterminer si [method wait_to_finish] peut être "
"appelée sans bloquer le thread d'appel.\n"
"Pour vérifier si un [Thread] est joignable, utilisez [method is_started]."

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 ""
"Starts a new [Thread] that calls [param callable].\n"
"If the method takes some arguments, you can pass them using [method "
"Callable.bind].\n"
"The [param priority] of the [Thread] can be changed by passing a value from "
"the [enum Priority] enum.\n"
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
"Démarre un nouveau [Thread] qui appelle [param callable].\n"
"Si la méthode prend des arguments, vous pouvez les passer en utilisant "
"[method Callable.bind].\n"
"La priorité [param priority] du [Thread] peut être modifiée en passant une "
"valeur de l’énumération [enum Priority].\n"
"Renvoie [constant OK] lors du succès, ou [constant ERR_CANT_CREATE] lors de "
"l'échec."

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 a TileMap layer's Z-index value.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Renvoie la valeur Z-index d'une couche TileMap.\n"
"Si [param layer] est négative, les couches sont accédées en commençant par la "
"dernière."

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 ""
"Returns the [RID] of the [NavigationServer2D] navigation map assigned to the "
"specified TileMap layer [param layer]."
msgstr ""
"Renvoie le [RID] de la carte de navigation du [NavigationServer2D] assignée à "
"la couche de la TileMap spécifiée [param layer]."

msgid ""
"Returns the neighboring cell to the one at coordinates [param coords], "
"identified by the [param neighbor] direction. This method takes into account "
"the different layouts a TileMap can take."
msgstr ""
"Renvoie la cellule voisine à celle aux coordonnées [param coords], identifiée "
"par la direction [param neighbor]. Cette méthode prend en compte les "
"différentes dispositions qu'une TileMap peut prendre."

msgid ""
"Returns if a layer Y-sorts its tiles.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Renvoie si une couche trie en Y ses tuiles.\n"
"Si [param layer] est négatif, les couches sont accédées en commençant par la "
"dernière."

msgid ""
"Returns the map coordinates of the cell containing the given [param "
"local_position]. If [param local_position] is in global coordinates, consider "
"using [method Node2D.to_local] before passing it to this method. See also "
"[method map_to_local]."
msgstr ""
"Renvoie les coordonnées de grille de la cellule contenant la [param "
"local_position] donnée. Si [param local_position] est dans les coordonnées "
"globales, envisagez d'utiliser [method Node2D.to_local] avant de les "
"transmettre à cette méthode. Voir aussi [method map_to_local]."

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 ""
"Assigns [param map] as a [NavigationServer2D] navigation map for the "
"specified TileMap layer [param layer]."
msgstr ""
"Assigne [param map] comme carte de navigation du [NavigationServer2D] pour la "
"couche de TileMap [param layer] spécifiée."

msgid ""
"Paste the given [TileMapPattern] at the given [param position] and [param "
"layer] in the tile map.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Colle le [TileMapPattern] donné à la [param position] et la couche [param "
"layer] donnés dans la tile map.\n"
"Si [param layer] est négatif, les couches sont accédées en commençant par la "
"dernière."

msgid ""
"The [TileSet] used by this [TileMap]. The textures, collisions, and "
"additional behavior of all available tiles are stored here."
msgstr ""
"Le [TileSet] utilisé par cette [TileMap]. Les textures, les collisions et le "
"comportement supplémentaire de toutes les tuiles disponibles sont stockés ici."

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 ""
"Called with a [TileData] object about to be used internally by the "
"[TileMapLayer], allowing its modification at runtime.\n"
"This method is only called if [method _use_tile_data_runtime_update] is "
"implemented and returns [code]true[/code] for the given tile [param coords].\n"
"[b]Warning:[/b] The [param tile_data] object's sub-resources are the same as "
"the one in the TileSet. Modifying them might impact the whole TileSet. "
"Instead, make sure to duplicate those resources.\n"
"[b]Note:[/b] If the properties of [param tile_data] object should change over "
"time, use [method notify_runtime_tile_data_update] to notify the "
"[TileMapLayer] it needs an update."
msgstr ""
"Appelée avec un objet [TileData] sur le point d'être utilisé en interne par "
"le [TileMapLayer], permettant sa modification durant l'exécution.\n"
"Cette méthode n'est appelée que si [method _use_tile_data_runtime_update] est "
"implémentée et renvoie [code]true[/code] pour les coordonnées de tuile [param "
"coords] données.\n"
"[b]Avertissement :[/b] Les sous-ressources de l'objet [param tile_data] sont "
"les mêmes que celui dans le TileSet. Les modifier pourrait avoir un impact "
"sur le TileSet entier. Assurez-vous de dupliquer ces ressources.\n"
"[b]Note: [/b] Si les propriétés de l'objet [param tile_data] devraient "
"changer au fil du temps, utilisez [method notify_runtime_tile_data_update] "
"pour notifier au [TileMapLayer] qu'il doit se mettre à jour."

msgid "Erases the cell at coordinates [param coords]."
msgstr "Efface la cellule aux coordonnées [param coords]."

msgid ""
"Returns the [TileData] object associated with the given cell, or [code]null[/"
"code] if the cell does not exist or is not a [TileSetAtlasSource].\n"
"[codeblock]\n"
"func get_clicked_tile_power():\n"
"\tvar clicked_cell = "
"tile_map_layer.local_to_map(tile_map_layer.get_local_mouse_position())\n"
"\tvar data = tile_map_layer.get_cell_tile_data(clicked_cell)\n"
"\tif data:\n"
"\t\treturn data.get_custom_data(\"power\")\n"
"\telse:\n"
"\t\treturn 0\n"
"[/codeblock]"
msgstr ""
"Renvoie l'objet [TileData] associé à la cellule donnée, ou [code]null[/code] "
"si la cellule n'existe pas ou n'est pas une [TileSetAtlasSource].\n"
"[codeblock]\n"
"func get_clicked_tile_power():\n"
"\tvar cellule_cliquee = "
"tile_map_layer.local_to_map(tile_map_layer.get_local_mouse_position())\n"
"\tvar donnees = tile_map_layer.get_cell_tile_data(cellule_cliquee)\n"
"\tif donnees:\n"
"\t\treturn donnees.get_custom_data(\"puissance\")\n"
"\telse:\n"
"\t\treturn 0\n"
"[/codeblock]"

msgid ""
"Sets a custom [param map] as a [NavigationServer2D] navigation map. If not "
"set, uses the default [World2D] navigation map instead."
msgstr ""
"Définit une carte de navigation personnalisée [param map] comme carte de "
"navigation du [NavigationServer2D]. Si non définie, utilise à la place la "
"carte de navigation par défaut du [World2D]."

msgid ""
"Pastes the [TileMapPattern] at the given [param position] in the tile map. "
"See also [method get_pattern]."
msgstr ""
"Colle le [TileMapPattern] à la [param position] donnée dans la tile map. Voir "
"aussi [method get_pattern]."

msgid "Enable or disable collisions."
msgstr "Active ou désactive les collisions."

msgid "Always hide the collisions or navigation debug shapes."
msgstr "Toujours cacher les formes de débogage de collision ou de navigation."

msgid "Always show the collisions or navigation debug shapes."
msgstr "Toujours afficher les formes de débogage de collision ou de navigation."

msgid "Holds a pattern to be copied from or pasted into [TileMap]s."
msgstr "Contient un motif à copier ou à coller dans des [TileMap]s."

msgid ""
"This resource holds a set of cells to help bulk manipulations of [TileMap].\n"
"A pattern always starts at the [code](0, 0)[/code] coordinates and cannot "
"have cells with negative coordinates."
msgstr ""
"Cette ressource contient un ensemble de cellules pour aider les manipulations "
"en masse de [TileMap].\n"
"Un motif commence toujours aux coordonnées [code](0, 0)[/code] et ne peut pas "
"avoir de cellules avec des coordonnées négatives."

msgid "Returns the tile alternative ID of the cell at [param coords]."
msgstr ""
"Renvoie l'identifiant alternatif de tuile de la cellule aux coordonnées "
"[param coords]."

msgid "Returns the tile atlas coordinates ID of the cell at [param coords]."
msgstr ""
"Renvoie l'identifiant des coordonnées d'atlas de tuile de la cellule aux "
"coordonnées [param coords]."

msgid "Returns the size, in cells, of the pattern."
msgstr "Renvoie la taille, en cellules, du motif."

msgid "Returns the list of used cell coordinates in the pattern."
msgstr "Renvoie la liste des coordonnées des cellules utilisées dans le 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 tile identifiers for the cell at coordinates [param coords]. See "
"[method TileMap.set_cell]."
msgstr ""
"Définit les identifiants de tuile pour la cellule aux coordonnées [param "
"coords]. Voir [method TileMap.set_cell]."

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 ""
"Checks if the source has any tiles that don't fit the texture area (either "
"partially or completely)."
msgstr ""
"Vérifie si la source a des tuiles qui ne rentrent pas dans la zone de la "
"texture (soit partiellement ou complètement)."

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 Signals 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 timeout]signal .\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 timeout] signal 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 "TLS configuration for clients and servers."
msgstr "Configuration TLS pour des clients et des serveurs."

msgid ""
"TLSOptions abstracts the configuration options for the [StreamPeerTLS] and "
"[PacketPeerDTLS] classes.\n"
"Objects of this class cannot be instantiated directly, and one of the static "
"methods [method client], [method client_unsafe], or [method server] should be "
"used instead.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Create a TLS client configuration which uses our custom trusted CA chain.\n"
"var client_trusted_cas = load(\"res://my_trusted_cas.crt\")\n"
"var client_tls_options = TLSOptions.client(client_trusted_cas)\n"
"\n"
"# Create a TLS server configuration.\n"
"var server_certs = load(\"res://my_server_cas.crt\")\n"
"var server_key = load(\"res://my_server_key.key\")\n"
"var server_tls_options = TLSOptions.server(server_key, server_certs)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"TLSOptions abstrait les options de configuration pour les classes "
"[StreamPeerTLS] et [PacketPeerDTLS].\n"
"Les objets de cette classe ne peuvent être instanciés directement, et l'une "
"des méthodes statiques [method client], [method client_unsafe] ou [method "
"server] devraient être utilisées à la place.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Créer une configuration de client TLS qui utilise notre chaîne de CA "
"approuvée personnalisée.\n"
"var cas_approuves_client = load(\"res://mes_cas_approuves.crt\")\n"
"var options_tls_client = TLSOptions.client(cas_approuves_client)\n"
"\n"
"# Créer une configuration de serveur TLS.\n"
"var certificats_serveur = load(\"res://mes_cas_serveur.crt\")\n"
"var cle_serveur = load(\"res://ma_cle_serveur.key\")\n"
"var options_tls_serveur = TLSOptions.server(cle_serveur, "
"certificats_serveur)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Class representing a torus [PrimitiveMesh]."
msgstr "Classe représentant un [PrimitiveMesh] en forme de tore."

msgid "Button for touch screen devices for gameplay use."
msgstr "Bouton pour écran tactile pour utilisation durant le gameplay."

msgid ""
"TouchScreenButton allows you to create on-screen buttons for touch devices. "
"It's intended for gameplay use, such as a unit you have to touch to move. "
"Unlike [Button], TouchScreenButton supports multitouch out of the box. "
"Several TouchScreenButtons can be pressed at the same time with touch input.\n"
"This node inherits from [Node2D]. Unlike with [Control] nodes, you cannot set "
"anchors on it. If you want to create menus or user interfaces, you may want "
"to use [Button] nodes instead. To make button nodes react to touch events, "
"you can enable [member ProjectSettings.input_devices/pointing/"
"emulate_mouse_from_touch] in the Project Settings.\n"
"You can configure TouchScreenButton to be visible only on touch devices, "
"helping you develop your game both for desktop and mobile devices."
msgstr ""
"TouchScreenButton vous permet de créer des boutons à l'écran pour les "
"appareils tactiles. Il est destiné à l'utilisation durant le gameplay, comme "
"avec une unité que vous devez toucher pour la bouger. Contrairement à "
"[Button], TouchScreenButton supporte directement le multi-toucher. Plusieurs "
"TouchScreenButtons peuvent être appuyés en même temps avec l'entrée tactile.\n"
"Ce nœud hérite de [Node2D]. Contrairement aux nœuds [Control], vous ne pouvez "
"pas définir des ancres dessus. Si vous voulez créer des menus ou des "
"interfaces utilisateur, vous pourriez vouloir utiliser des nœuds [Button] à "
"la place. Pour que les nœuds de bouton réagissent aux événements tactiles, "
"vous pouvez activer [member ProjectSettings.input_devices/pointing/"
"emulate_mouse_from_touch] dans les paramètres du projet.\n"
"Vous pouvez configurer TouchScreenButton pour être visible uniquement sur les "
"appareils tactiles, vous aidant ainsi à développer votre jeu à la fois pour "
"les appareils de bureau et mobiles."

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 ""
"If [code]true[/code], the [signal pressed] and [signal released] signals are "
"emitted whenever a pressed finger goes in and out of the button, even if the "
"pressure started outside the active area of the button.\n"
"[b]Note:[/b] This is a \"pass-by\" (not \"bypass\") press mode."
msgstr ""
"Si [code]true[/code], les signaux [signal pressed] et [signal released] sont "
"émis lorsqu'un doigt appuyé entre et sort du bouton, même si la pression a "
"commencé à l'extérieur de la zone active du bouton.\n"
"[b]Note :[/b] Il s'agit d'un mode d'appui \"pass-by\" (et non \"bypass\")."

msgid "The button's shape."
msgstr "La forme du bouton."

msgid ""
"If [code]true[/code], the button's shape is centered in the provided texture. "
"If no texture is used, this property has no effect."
msgstr ""
"Si [code]true[/code], la forme du bouton est centrée dans la texture fournie. "
"Si aucune texture n'est utilisée, cette propriété n'a aucun effet."

msgid "If [code]true[/code], the button's shape is visible in the editor."
msgstr "Si [code]true[/code], la forme du bouton est visible dans l'éditeur."

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 "The button's visibility mode."
msgstr "Le mode de visibilité du bouton."

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 "Internationalizing games"
msgstr "Internationaliser des jeux"

msgid "Localization using gettext"
msgstr "Localisation à l'aide de 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 "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 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 "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 ""
"[StyleBox] for the item being hovered, while a button of the same item is "
"hovered as the same time."
msgstr ""
"[StyleBox] utilisée pour l'élément survolé, quand un bouton du même élément "
"est survolé en même temps."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [Tree] is not "
"being focused."
msgstr ""
"[StyleBox] utilisée pour les éléments sélectionnés et survolés, quand le "
"[Tree] n'a pas le focus."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [Tree] is being "
"focused."
msgstr ""
"[StyleBox] utilisée pour les éléments sélectionnés et survolés, quand le "
"[Tree] a le focus."

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 "An internal control for a single item inside [Tree]."
msgstr "Un contrôle interne pour un seul élément à l'intérieur d'un [Tree]."

msgid ""
"A single item of a [Tree] control. It can contain other [TreeItem]s as "
"children, which allows it to create a hierarchy. It can also contain text and "
"buttons. [TreeItem] is not a [Node], it is internal to the [Tree].\n"
"To create a [TreeItem], use [method Tree.create_item] or [method "
"TreeItem.create_child]. To remove a [TreeItem], use [method Object.free].\n"
"[b]Note:[/b] The ID values used for buttons are 32-bit, unlike [int] which is "
"always 64-bit. They go from [code]-2147483648[/code] to [code]2147483647[/"
"code]."
msgstr ""
"Un seul élément d'un contrôle [Tree]. Il peut contenir d'autres [TreeItem]s "
"comme enfants, ce qui lui permet de créer une hiérarchie. Il peut également "
"contenir du texte et des boutons. [TreeItem] n'est pas un [Node], il est "
"interne au [Tree].\n"
"Pour créer un [TreeItem], utilisez [method Tree.create_item] ou [method "
"TreeItem.create_child]. Pour supprimer un [TreeItem], utilisez [method "
"Object.free].\n"
"[b]Note :[/b] Les valeurs d'ID utilisées pour les boutons sont sur 32 bits, "
"contrairement à [int] qui est toujours sur 64 bits. Ils vont de "
"[code]-2147483648[/code] à [code]2147483647[/code]."

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 ""
"Creates a bounding volume hierarchy (BVH) tree structure around triangle "
"geometry.\n"
"The triangle BVH tree can be used for efficient intersection queries without "
"involving a physics engine.\n"
"For example, this can be used in editor tools to select objects with complex "
"shapes based on the mouse cursor position.\n"
"[b]Performance:[/b] Creating the BVH tree for complex geometry is a slow "
"process and best done in a background thread."
msgstr ""
"Crée un arbre de hiérarchie de volume englobant (Bounding Volume Hierarchy) "
"autour de la géométrie en triangles.\n"
"L'arbre BVH des triangles peut être utilisé pour des requêtes d'intersection "
"efficaces sans impliquer un moteur physique.\n"
"Par exemple, cela peut être utilisé dans des outils d'éditeur pour "
"sélectionner des objets avec des formes complexes selon sur la position du "
"curseur de la souris.\n"
"[b]Performance :[/b] Créer l'arbre BVH pour une géométrie complexe est un "
"processus lent et généralement fait dans un thread d'arrière-plan."

msgid ""
"Creates the BVH tree from an array of faces. Each 3 vertices of the input "
"[param faces] array represent one triangle (face).\n"
"Returns [code]true[/code] if the tree is successfully built, [code]false[/"
"code] otherwise."
msgstr ""
"Crée l'arbre BVH depuis un tableau de faces. Chaque 3 sommets du tableau "
"d'entrée [param faces] représentent un triangle (face).\n"
"Renvoie [code]true[/code] si l'arbre est construit avec succès, [code]false[/"
"code] sinon."

msgid ""
"Returns a copy of the geometry faces. Each 3 vertices of the array represent "
"one triangle (face)."
msgstr ""
"Renvoie une copie des faces de la géométrie. Chaque 3 sommets du tableau "
"représentent un triangle (face)."

msgid ""
"Tests for intersection with a ray starting at [param begin] and facing [param "
"dir] and extending toward infinity.\n"
"If an intersection with a triangle happens, returns a [Dictionary] with the "
"following fields:\n"
"[code]position[/code]: The position on the intersected triangle.\n"
"[code]normal[/code]: The normal of the intersected triangle.\n"
"[code]face_index[/code]: The index of the intersected triangle.\n"
"Returns an empty [Dictionary] if no intersection happens.\n"
"See also [method intersect_segment], which is similar but uses a finite-"
"length segment."
msgstr ""
"Teste l'intersection avec un rayon commençant à [param begin], de direction "
"[param dir] et de longueur infinie.\n"
"Si une intersection avec un triangle se produit, renvoie un [Dictionary] avec "
"les champs suivants :\n"
"[code]position[/code] : La position sur le triangle intersecté.\n"
"[code]normal[/code] : La normale du triangle intersecté.\n"
"[code]face_index[/code] : L'index du triangle intersecté.\n"
"Renvoie un [Dictionary] vide si aucune intersection ne se produit.\n"
"Voir aussi [method intersect_segment], qui est similaire mais utilise un "
"segment de taille finie."

msgid ""
"Tests for intersection with a segment going from [param begin] to [param "
"end].\n"
"If an intersection with a triangle happens returns a [Dictionary] with the "
"following fields:\n"
"[code]position[/code]: The position on the intersected triangle.\n"
"[code]normal[/code]: The normal of the intersected triangle.\n"
"[code]face_index[/code]: The index of the intersected triangle.\n"
"Returns an empty [Dictionary] if no intersection happens.\n"
"See also [method intersect_ray], which is similar but uses an infinite-length "
"ray."
msgstr ""
"Teste l'intersection avec un segment allant de [param begin] à [param end].\n"
"Si une intersection avec un triangle se produit, renvoie un [Dictionary] avec "
"les champs suivants :\n"
"[code]position[/code] : La position sur le triangle intersecté.\n"
"[code]normal[/code] : La normale du triangle intersecté.\n"
"[code]face_index[/code] : L'index du triangle intersecté.\n"
"Renvoie un [Dictionary] vide si aucune intersection ne se produit.\n"
"Voir aussi [method intersect_ray], qui est similaire mais utilise un rayon "
"infini."

msgid "Represents a straight tube-shaped [PrimitiveMesh] with variable width."
msgstr ""
"Représente un [PrimitiveMesh] en forme de tube droit avec une largeur "
"variable."

msgid ""
"[TubeTrailMesh] represents a straight tube-shaped mesh with variable width. "
"The tube is composed of a number of cylindrical sections, each with the same "
"[member section_length] and number of [member section_rings]. A [member "
"curve] is sampled along the total length of the tube, meaning that the curve "
"determines the radius of the tube along its length.\n"
"This primitive mesh is usually used for particle trails."
msgstr ""
"[TubeTrailMesh] représente un maillage en forme en forme de tube droit avec "
"une largeur variable. Le tube est composé d'un certain nombre de sections "
"cylindriques, chacune avec la même longueur de section [member "
"section_length] et le même nombre d'anneaux [member section_rings]. Une "
"courbe [member curve] est échantillonnée le long de la longueur totale du "
"tube, ce qui signifie que la courbe détermine le rayon du tube le long de sa "
"longueur.\n"
"Ce maillage primitif est généralement utilisé pour les traînées de particules."

msgid ""
"If [code]true[/code], generates a cap at the bottom of the tube. This can be "
"set to [code]false[/code] to speed up generation and rendering when the cap "
"is never seen by the camera."
msgstr ""
"Si [code]true[/code], génère un bouchon en bas du tube. 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."

msgid ""
"If [code]true[/code], generates a cap at the top of the tube. This can be set "
"to [code]false[/code] to speed up generation and rendering when the cap is "
"never seen by the camera."
msgstr ""
"Si [code]true[/code], génère un bouchon en haut du tube. 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."

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 number of sides on the tube. For example, a value of [code]5[/code] means "
"the tube will be pentagonal. Higher values result in a more detailed tube at "
"the cost of performance."
msgstr ""
"Le nombre de côtés sur le tube. Par exemple, une valeur de [code]5[/code] "
"signifie que le tube sera pentagonal. Des valeurs plus élevées résultent en "
"un tube plus détaillé au détriment de la performance."

msgid ""
"The baseline radius of the tube. The radius of a particular section ring is "
"obtained by multiplying this radius by the value of the [member curve] at the "
"given distance."
msgstr ""
"Le rayon de base du tube. Le rayon d'un anneau de section particulier est "
"obtenu en multipliant ce rayon par la valeur de [member curve] à la distance "
"donnée."

msgid "The length of a section of the tube."
msgstr "La longueur d'une section du tube."

msgid ""
"The number of rings in a section. The [member curve] is sampled on each ring "
"to determine its radius. Higher values result in a more detailed tube at the "
"cost of performance."
msgstr ""
"Le nombre d'anneaux dans une section. La courbe [member curve] est "
"échantillonnée sur chaque anneau pour déterminer son rayon. Des valeurs plus "
"élevées résultent en un tube plus détaillé au détriment de la performance."

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 ""
"Tweens are mostly useful for animations requiring a numerical property to be "
"interpolated over a range of values. The name [i]tween[/i] comes from [i]in-"
"betweening[/i], an animation technique where you specify [i]keyframes[/i] and "
"the computer interpolates the frames that appear between them. Animating "
"something with a [Tween] is called tweening.\n"
"[Tween] is more suited than [AnimationPlayer] for animations where you don't "
"know the final values in advance. For example, interpolating a dynamically-"
"chosen camera zoom value is best done with a [Tween]; it would be difficult "
"to do the same thing with an [AnimationPlayer] node. Tweens are also more "
"light-weight than [AnimationPlayer], so they are very much suited for simple "
"animations or general tasks that don't require visual tweaking provided by "
"the editor. They can be used in a \"fire-and-forget\" manner for some logic "
"that normally would be done by code. You can e.g. make something shoot "
"periodically by using a looped [CallbackTweener] with a delay.\n"
"A [Tween] can be created by using either [method SceneTree.create_tween] or "
"[method Node.create_tween]. [Tween]s created manually (i.e. by using "
"[code]Tween.new()[/code]) are invalid and can't be used for tweening values.\n"
"A tween animation is created by adding [Tweener]s to the [Tween] object, "
"using [method tween_property], [method tween_interval], [method "
"tween_callback] or [method tween_method]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This sequence will make the [code]$Sprite[/code] node turn red, then shrink, "
"before finally calling [method Node.queue_free] to free the sprite. "
"[Tweener]s are executed one after another by default. This behavior can be "
"changed using [method parallel] and [method set_parallel].\n"
"When a [Tweener] is created with one of the [code]tween_*[/code] methods, a "
"chained method call can be used to tweak the properties of this [Tweener]. "
"For example, if you want to set a different transition type in the above "
"example, you can use [method set_trans]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, "
"1.0).set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), "
"1.0).set_trans(Tween.TRANS_BOUNCE)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, "
"1.0f).SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, "
"1.0f).SetTrans(Tween.TransitionType.Bounce);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Most of the [Tween] methods can be chained this way too. In the following "
"example the [Tween] is bound to the running script's node and a default "
"transition is set for its [Tweener]s:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = "
"get_tree().create_tween().bind_node(self).set_trans(Tween.TRANS_ELASTIC)\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"var tween = "
"GetTree().CreateTween().BindNode(this).SetTrans(Tween.TransitionType.Elastic);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Another interesting use for [Tween]s is animating arbitrary sets of objects:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"for sprite in get_children():\n"
"\ttween.tween_property(sprite, \"position\", Vector2(0, 0), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"foreach (Node sprite in GetChildren())\n"
"\ttween.TweenProperty(sprite, \"position\", Vector2.Zero, 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In the example above, all children of a node are moved one after another to "
"position [code](0, 0)[/code].\n"
"You should avoid using more than one [Tween] per object's property. If two or "
"more tweens animate one property at the same time, the last one created will "
"take priority and assign the final value. If you want to interrupt and "
"restart an animation, consider assigning the [Tween] to a variable:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween\n"
"func animate():\n"
"\tif tween:\n"
"\t\ttween.kill() # Abort the previous animation.\n"
"\ttween = create_tween()\n"
"[/gdscript]\n"
"[csharp]\n"
"private Tween _tween;\n"
"\n"
"public void Animate()\n"
"{\n"
"\tif (_tween != null)\n"
"\t\t_tween.Kill(); // Abort the previous animation\n"
"\t_tween = CreateTween();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Some [Tweener]s use transitions and eases. The first accepts a [enum "
"TransitionType] constant, and refers to the way the timing of the animation "
"is handled (see [url=https://easings.net/]easings.net[/url] for some "
"examples). The second accepts an [enum EaseType] constant, and controls where "
"the [code]trans_type[/code] is applied to the interpolation (in the "
"beginning, the end, or both). If you don't know which transition and easing "
"to pick, you can try different [enum TransitionType] constants with [constant "
"EASE_IN_OUT], and use the one that looks best.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"tween_cheatsheet.webp]Tween easing and transition types cheatsheet[/url]\n"
"[b]Note:[/b] Tweens are not designed to be reused and trying to do so results "
"in an undefined behavior. Create a new Tween for each animation and every "
"time you replay an animation from start. Keep in mind that Tweens start "
"immediately, so only create a Tween when you want to start animating.\n"
"[b]Note:[/b] The tween is processed after all of the nodes in the current "
"frame, i.e. node's [method Node._process] method would be called before the "
"tween (or [method Node._physics_process] depending on the value passed to "
"[method set_process_mode])."
msgstr ""
"Les tweens sont généralement utiles pour des animations ayant besoin "
"d'interpoler une propriété numérique sur une plage de valeurs. Le nom "
"[i]tween[/i] provient de l'anglais [i]in-betweening[/i] (litt. \"entre-"
"dedans\"), une technique d'animation où l'on spécifie des [i]clés "
"d'animation[/i] et l'ordinateur interpole les trames qui apparaissent entre "
"elles. Animer quelque chose avec un [Tween] est appelé du tweening.\n"
"[Tween] est plus adapté qu'[AnimationPlayer] pour les animations où l'on ne "
"connaît pas les valeurs finales à l'avance. Par exemple, interpoler une "
"valeur de zoom de caméra choisie dynamiquement est mieux fait avec un "
"[Tween], il serait difficile de faire la même chose avec un nœud "
"[AnimationNode]. Les tweens sont aussi plus légers qu'[AnimationPlayer], car "
"ils sont très adaptés aux animations simples ou aux tâches générales qui ne "
"nécessitent pas d'ajustement manuel dans l'éditeur. Ils peuvent être utilisés "
"d'une manière \"déclencher et oublier\" pour de la logique qui serait "
"normalement faite dans du code. Vous pouvez par exemple faire tirer quelque "
"chose périodiquement en utilisant un [CallbackTweener] bouclant avec un "
"délai.\n"
"Un [Tween] peut être créé en utilisant soit [method SceneTree.create_tween] "
"ou [method Node.create_tween]. Les [Tween]s créés manuellement (par ex. en "
"utilisant [code]Tween.new()[/code]) sont invalides et ne peuvent être "
"utiliser pour tweener des valeurs.\n"
"Une animation de tween est créée en ajoutant des [Tweener]s à l'objet "
"[Tween], en utilisant [method tween_property], [method tween_interval], "
"[method tween_callback] ou [method tween_method] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Cette séquence changera le nœud [code]$Sprite[/code] en rouge, puis le "
"réduira jusqu'à le faire disparaître et enfin [method Node.queue_free] sera "
"appelée pour libérer le sprite. Les [Tweener]s sont exécutés l'un après "
"l'autre par défaut. Ce comportement peut être changé en utilisant [method "
"parallel] et [method set_parallel].\n"
"Quand un [Tweener] est créé avec une des méthodes [code]tween_*[/code], une "
"méthode peut être enchaînée pour ajuster les propriétés de ce [Tweener]. Par "
"exemple, si vous souhaitez définir un autre type d'accélération dans "
"l'exemple précédent, vous pouvez utiliser [method set_trans] :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, "
"1.0).set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), "
"1.0).set_trans(Tween.TRANS_BOUNCE)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, "
"1.0f).SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, "
"1.0f).SetTrans(Tween.TransitionType.Bounce);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"La plupart des méthodes [Tween] peuvent aussi être enchaînées de cette façon. "
"Dans cet exemple, le [Tween] est lié au nœud du script en cours d'exécution "
"et une transition par défaut sera définie pour ses [Tweener]s :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = "
"get_tree().create_tween().bind_node(self).set_trans(Tween.TRANS_ELASTIC)\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"var tween = "
"GetTree().CreateTween().BindNode(this).SetTrans(Tween.TransitionType.Elastic);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Un autre usage intéressant des [Tween]s est l'animation d'ensembles "
"arbitraires d'objets :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"for sprite in get_children():\n"
"\ttween.tween_property(sprite, \"position\", Vector2(0, 0), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"foreach (Node sprite in GetChildren())\n"
"\ttween.TweenProperty(sprite, \"position\", Vector2.Zero, 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Dans l'exemple au-dessus, tous les enfants d'un nœud sont déplacés à leur "
"tour à la position [code](0, 0)[/code].\n"
"Vous devriez éviter d'utiliser plus d'un [Tween] par propriété d'un objet. Si "
"deux tweens ou plus animent une propriété en même temps, le dernier créé "
"prendra la priorité et assignera la valeur finale. Si vous voulez interrompre "
"et redémarrer une animation, envisagez d'assigner le [Tween] à une "
"variable :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween\n"
"func animer():\n"
"\tif tween:\n"
"\t\ttween.kill() # Avorter l'animation précédente.\n"
"\ttween = create_tween()\n"
"[/gdscript]\n"
"[csharp]\n"
"private Tween _tween;\n"
"\n"
"public void Animer()\n"
"{\n"
"\tif (_tween != null)\n"
"\t\t_tween.Kill(); // Avorter l'animation précédente.\n"
"\t_tween = CreateTween();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Certains [Tweener]s utilisent des transitions et des accélérations. Le "
"premier accepte une constante [enum Tween.TransitionType], et se réfère à la "
"manière dont le timing de l'animation est gérée (voir [url=https://"
"easings.net/]easings.net[/url] pour quelques exemples). Le second accepte une "
"constante [enum Tween.EaseType], et contrôle où le [code]trans_type[/code] "
"s'applique durant l'interpolation (au début, à la fin, ou les deux). Si vous "
"ne savez pas quel transition et accélération choisir, vous pouvez essayer "
"différentes constantes [enum Tween.TransitionType] avec [constant "
"Tween.EASE_IN_OUT], et utiliser celle qui vous semble la meilleure.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"tween_cheatsheet.webp]Aide-mémoire des types de transitions et d'accélération "
"des Tween[/url]\n"
"[b]Note :[/b] Les Tweens ne sont pas prévus pour être réutilisés et essayer "
"de le faire résulte en un comportement indéfini. Créez un nouveau Tween pour "
"chaque animation et chaque fois que vous recommencez une animation du début. "
"Gardez à l'esprit que les Tweens commencent immédiatement, donc ne créez un "
"Tween que lorsque vous voulez commencer à animer.\n"
"[b]Note :[/b] Le tween est traité après tous les nœuds de la trame actuelle, "
"c-à-d la méthode [method Node._process] du nœud serait appelée avant le tween "
"(ou [method Node._physics_process] selon la valeur passée à [method "
"set_process_mode])."

msgid ""
"Binds this [Tween] with the given [param node]. [Tween]s are processed "
"directly by the [SceneTree], so they run independently of the animated nodes. "
"When you bind a [Node] with the [Tween], the [Tween] will halt the animation "
"when the object is not inside tree and the [Tween] will be automatically "
"killed when the bound object is freed. Also [constant TWEEN_PAUSE_BOUND] will "
"make the pausing behavior dependent on the bound node.\n"
"For a shorter way to create and bind a [Tween], you can use [method "
"Node.create_tween]."
msgstr ""
"Lie ce [Tween] avec le nœud [param node] donné. Les [Tween]s sont traités "
"directement par le [SceneTree], donc ils fonctionnent indépendamment des "
"nœuds animés. Lorsque vous liez un [Node] avec le [Tween], le [Tween] "
"arrêtera l'animation lorsque l'objet n'est pas à l'intérieur de "
"l'arborescence et le [Tween] sera automatiquement tué lorsque l'objet lié est "
"libéré. [constant TWEEN_PAUSE_BOUND] rendra aussi le comportement de pause "
"dépendant du nœud lié.\n"
"Pour un moyen plus court de créer et de lier un [Tween], vous pouvez utiliser "
"[method Node.create_tween]."

msgid ""
"Used to chain two [Tweener]s after [method set_parallel] is called with "
"[code]true[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_parallel(true)\n"
"tween.tween_property(...)\n"
"tween.tween_property(...) # Will run parallelly with above.\n"
"tween.chain().tween_property(...) # Will run after two above are finished.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetParallel(true);\n"
"tween.TweenProperty(...);\n"
"tween.TweenProperty(...); // Will run parallelly with above.\n"
"tween.Chain().TweenProperty(...); // Will run after two above are finished.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Utiliser pour enchaîner deux [Tweener] après que [method set_parallel] est "
"appelé avec [code]true[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_parallel(true)\n"
"tween.tween_property(...)\n"
"tween.tween_property(...) # S'exécutera en parallèle de l'appel au-dessus.\n"
"tween.chain().tween_property(...) # S'exécutera que quand les deux appels au-"
"dessus seront terminés.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetParallel(true);\n"
"tween.TweenProperty(...);\n"
"tween.TweenProperty(...); // S'exécutera en parallèle de l'appel au-dessus.\n"
"tween.Chain().TweenProperty(...); // S'exécutera que quand les deux appels au-"
"dessus seront terminés.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Processes the [Tween] by the given [param delta] value, in seconds. This is "
"mostly useful for manual control when the [Tween] is paused. It can also be "
"used to end the [Tween] animation immediately, by setting [param delta] "
"longer than the whole duration of the [Tween] animation.\n"
"Returns [code]true[/code] if the [Tween] still has [Tweener]s that haven't "
"finished."
msgstr ""
"Traite le [Tween] par la valeur [param delta] donnée, en secondes. Cela est "
"surtout utile pour du contrôle manuel lorsque le [Tween] est mis en pause. "
"Elle peut également être utilisée pour mettre fin à l'animation du [Tween] "
"immédiatement, en fixant [param delta] à une valeur plus longue que toute la "
"durée de l'animation du [Tween].\n"
"Renvoie [code]true[/code] si le [Tween] a encore des [Tweener]s qui ne sont "
"pas finis."

msgid ""
"Returns the number of remaining loops for this [Tween] (see [method "
"set_loops]). A return value of [code]-1[/code] indicates an infinitely "
"looping [Tween], and a return value of [code]0[/code] indicates that the "
"[Tween] has already finished."
msgstr ""
"Renvoie le nombre de boucles restantes pour ce [Tween] (voir [method "
"set_loops]). Une valeur de renvoie de [code]-1[/code] indique un [Tween] "
"bouclant infiniement, et une valeur de renvoi de [code]0[/code] indique que "
"le [Tween] s'est déjà terminé."

msgid ""
"Returns the total time in seconds the [Tween] has been animating (i.e. the "
"time since it started, not counting pauses etc.). The time is affected by "
"[method set_speed_scale], and [method stop] will reset it to [code]0[/code].\n"
"[b]Note:[/b] As it results from accumulating frame deltas, the time returned "
"after the [Tween] has finished animating will be slightly greater than the "
"actual [Tween] duration."
msgstr ""
"Renvoie le temps total en secondes durant lequel [Tween] a animé (c.-à-d. le "
"temps depuis son début, sans compter les pauses, etc.). Le temps est affecté "
"par [method set_speed_scale], et [method stop] le réinitialisera à [code]0[/"
"code].\n"
"[b]Note :[/b] Comme il résulte de l'accumulation des deltas de trames, le "
"temps renvoyé après que le [Tween] ait fini d'animer sera légèrement "
"supérieur à la durée réelle du [Tween]."

msgid ""
"This method can be used for manual interpolation of a value, when you don't "
"want [Tween] to do animating for you. It's similar to [method "
"@GlobalScope.lerp], but with support for custom transition and easing.\n"
"[param initial_value] is the starting value of the interpolation.\n"
"[param delta_value] is the change of the value in the interpolation, i.e. "
"it's equal to [code]final_value - initial_value[/code].\n"
"[param elapsed_time] is the time in seconds that passed after the "
"interpolation started and it's used to control the position of the "
"interpolation. E.g. when it's equal to half of the [param duration], the "
"interpolated value will be halfway between initial and final values. This "
"value can also be greater than [param duration] or lower than 0, which will "
"extrapolate the value.\n"
"[param duration] is the total time of the interpolation.\n"
"[b]Note:[/b] If [param duration] is equal to [code]0[/code], the method will "
"always return the final value, regardless of [param elapsed_time] provided."
msgstr ""
"Cette méthode peut être utilisée pour de l'interpolation manuelle d'une "
"valeur, lorsque vous ne voulez pas que [Tween] fasse l'animation pour vous. "
"Elle est similaire à [method @GlobalScope.lerp], mais avec du support pour "
"des transitions et accélérations personnalisées.\n"
"[param initial_value] est la valeur de départ de l'interpolation.\n"
"[param delta_value] est le changement de la valeur dans l'interpolation, "
"c'est-à-dire qu'il est égal à [code]final_value - initial_value[/code].\n"
"[param elapsed_time] est le temps en secondes passé après que l'interpolation "
"ait commencé et il est utilisé pour contrôler la position de l'interpolation. "
"Par exemple, lorsqu'il est égal à la moitié de [param duration], la valeur "
"interpolée sera à mi-chemin entre les valeurs initiales et finales. Cette "
"valeur peut également être supérieure à [param duration] ou inférieure à 0, "
"ce qui extrapolera la valeur.\n"
"[param duration] est le temps total de l'interpolation.\n"
"[b]Note :[/b] Si [param duration] est égal à [code]0[/code], la méthode "
"renverra toujours la valeur finale, peu importe l'[param elapsed_time] fourni."

msgid ""
"Returns whether the [Tween] is currently running, i.e. it wasn't paused and "
"it's not finished."
msgstr ""
"Renvoie si le [Tween] est actuellement en cours d'exécution, c'est-à-dire "
"qu'il n'a pas été mis en pause et il n'est pas fini."

msgid ""
"Returns whether the [Tween] is valid. A valid [Tween] is a [Tween] contained "
"by the scene tree (i.e. the array from [method "
"SceneTree.get_processed_tweens] will contain this [Tween]). A [Tween] might "
"become invalid when it has finished tweening, is killed, or when created with "
"[code]Tween.new()[/code]. Invalid [Tween]s can't have [Tweener]s appended."
msgstr ""
"Renvoie si le [Tween] est valide. Un [Tween] valide est un [Tween] contenu "
"par l'arborescence de scène (c.-à-d. le tableau de [method "
"SceneTree.get_processed_tweens] contiendra ce [Tween]). Un [Tween] peut "
"devenir invalide lorsqu'il a fini de tweening, est tué, ou lorsqu'il est créé "
"avec [code]Tween.new()[/code]. Les [Tween] invalides ne peuvent pas avoir de "
"[Tweener]s ajoutés."

msgid "Aborts all tweening operations and invalidates the [Tween]."
msgstr "Avorte toutes les opérations de tweening et invalide le [Tween]."

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 ""
"Pauses the tweening. The animation can be resumed by using [method play].\n"
"[b]Note:[/b] If a Tween is paused and not bound to any node, it will exist "
"indefinitely until manually started or invalidated. If you lose a reference "
"to such Tween, you can retrieve it using [method "
"SceneTree.get_processed_tweens]."
msgstr ""
"Met en pause le tweening. L'animation peut être reprise en utilisant [method "
"play].\n"
"[b]Note :[/b] Si un Tween est en pause et n'est pas lié à un nœud, il "
"existera indéfiniment jusqu'à ce qu'il soit manuellement démarré ou invalidé. "
"Si vous perdez une référence à ce Tween, vous pouvez le récupérer en "
"utilisant [method SceneTree.get_processed_tweens]."

msgid "Resumes a paused or stopped [Tween]."
msgstr "Reprend un [Tween] en pause ou arrêté."

msgid ""
"Sets the default ease type for [PropertyTweener]s and [MethodTweener]s "
"appended after this method.\n"
"Before this method is called, the default ease type is [constant "
"EASE_IN_OUT].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Uses "
"EASE_IN_OUT.\n"
"tween.set_ease(Tween.EASE_IN)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Uses EASE_IN.\n"
"[/codeblock]"
msgstr ""
"Définit le type d'accélération par défaut pour les [PropertyTweener]s et "
"[MethodTweener]s ajoutés après cette méthode.\n"
"Avant que cette méthode soit appelée, le type d'accélération par défaut est "
"[constant EASE_IN_OUT].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Utilise "
"EASE_IN_OUT.\n"
"tween.set_ease(Tween.EASE_IN)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Utilise "
"EASE_IN.\n"
"[/codeblock]"

msgid ""
"If [param ignore] is [code]true[/code], the tween will ignore [member "
"Engine.time_scale] and update with the real, elapsed time. This affects all "
"[Tweener]s and their delays. Default value is [code]false[/code]."
msgstr ""
"Si [param ignore] vaut [code]true[/code], le tween ignorera [member "
"Engine.time_scale] et se met à jour avec le temps réel écoulé. Cela affecte "
"tous les [Tweener] et leurs délais. La valeur par défaut est [code]false[/"
"code]."

msgid ""
"Sets the number of times the tweening sequence will be repeated, i.e. "
"[code]set_loops(2)[/code] will run the animation twice.\n"
"Calling this method without arguments will make the [Tween] run infinitely, "
"until either it is killed with [method kill], the [Tween]'s bound node is "
"freed, or all the animated objects have been freed (which makes further "
"animation impossible).\n"
"[b]Warning:[/b] Make sure to always add some duration/delay when using "
"infinite loops. To prevent the game freezing, 0-duration looped animations "
"(e.g. a single [CallbackTweener] with no delay) are stopped after a small "
"number of loops, which may produce unexpected results. If a [Tween]'s "
"lifetime depends on some node, always use [method bind_node]."
msgstr ""
"Définit le nombre de fois que la séquence de tweening sera répétée, c'est-à-"
"dire que [code]set_loops(2)[/code] exécutera l'animation deux fois.\n"
"Appeler cette méthode sans argument fera s'exécuter le [Tween] de manière "
"infinie, jusqu'à ce qu'il soit tué avec [method kill], le nœud lié du [Tween] "
"est libéré, ou tous les objets animés ont été libérés (ce qui rend la suite "
"de l'animation impossible).\n"
"[b]Attention :[/b] Assurez-vous d'ajouter toujours une durée ou un délai lors "
"de l'utilisation de boucles infinies. Pour éviter le gel du jeu, les "
"animations en boucle de durée nulle (p. ex. un single [CallbackTweener] sans "
"délai) sont arrêtées après un petit nombre de boucles, qui peut produire des "
"résultats inattendus. Si la durée de vie d'un [Tween] dépend d'un nœud, "
"utilisez toujours [method bind_node]."

msgid ""
"If [param parallel] is [code]true[/code], the [Tweener]s appended after this "
"method will by default run simultaneously, as opposed to sequentially.\n"
"[b]Note:[/b] Just like with [method parallel], the tweener added right before "
"this method will also be part of the parallel step.\n"
"[codeblock]\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5)\n"
"tween.set_parallel()\n"
"tween.tween_property(self, \"modulate\", Color.GREEN, 0.5) # Runs together "
"with the position tweener.\n"
"[/codeblock]"
msgstr ""
"Si [param parallel] vaut [code]true[/code], les [Tweener]s ajoutés après "
"cette méthode s'exécuteront par défaut simultanément, au lieu de "
"séquentiellement.\n"
"[b]Note:[/b] Tout comme avec [method parallel], le tweener ajouté juste avant "
"cette méthode fera également partie de l'étape parallèle.\n"
"[codeblock]\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5)\n"
"tween.set_parallel()\n"
"tween.tween_property(self, \"modulate\", Couleur. GREEN, 0.5) # S'exécute "
"ensemble avec le tweener de position.\n"
"[/codeblock]"

msgid ""
"Determines the behavior of the [Tween] when the [SceneTree] is paused.\n"
"Default value is [constant TWEEN_PAUSE_BOUND]."
msgstr ""
"Détermine le comportement du [Tween] lorsque le [SceneTree] est mis en "
"pause.\n"
"La valeur par défaut est [constant TWEEN_PAUSE_BOUND]."

msgid ""
"Determines whether the [Tween] should run after process frames (see [method "
"Node._process]) or physics frames (see [method Node._physics_process]).\n"
"Default value is [constant TWEEN_PROCESS_IDLE]."
msgstr ""
"Détermine si le [Tween] devrait s'exécuter après les cadres de traitement "
"(voir [method Node._process]) ou les trames de physique (voir [method "
"Node._physics_process]).\n"
"La valeur par défaut est [constant TWEEN_PROCESS_IDLE]."

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 ""
"Sets the default transition type for [PropertyTweener]s and [MethodTweener]s "
"appended after this method.\n"
"Before this method is called, the default transition type is [constant "
"TRANS_LINEAR].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Uses "
"TRANS_LINEAR.\n"
"tween.set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Uses "
"TRANS_SINE.\n"
"[/codeblock]"
msgstr ""
"Définit le type de transition par défaut pour les [PropertyTweener]s et "
"[MethodTweener]s ajoutés après cette méthode.\n"
"Avant que cette méthode soit appelée, le type de transition par défaut est "
"[constant TRANS_LINEAR].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Utilise "
"TRANS_LINEAR.\n"
"tween.set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Utilise "
"TRANS_SINE.\n"
"[/codeblock]"

msgid ""
"Stops the tweening and resets the [Tween] to its initial state. This will not "
"remove any appended [Tweener]s.\n"
"[b]Note:[/b] This does [i]not[/i] reset targets of [PropertyTweener]s to "
"their values when the [Tween] first started.\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"\n"
"# Will move from 0 to 500 over 1 second.\n"
"position.x = 0.0\n"
"tween.tween_property(self, \"position:x\", 500, 1.0)\n"
"\n"
"# Will be at (about) 250 when the timer finishes.\n"
"await get_tree().create_timer(0.5).timeout\n"
"\n"
"# Will now move from (about) 250 to 500 over 1 second,\n"
"# thus at half the speed as before.\n"
"tween.stop()\n"
"tween.play()\n"
"[/codeblock]\n"
"[b]Note:[/b] If a Tween is stopped and not bound to any node, it will exist "
"indefinitely until manually started or invalidated. If you lose a reference "
"to such Tween, you can retrieve it using [method "
"SceneTree.get_processed_tweens]."
msgstr ""
"Arrête le tweening et réinitialise le [Tween] à son état initial. Cela ne "
"supprimera pas de [Tweener]s ajoutés.\n"
"[b]Note :[/b] Cela ne réinitialise [i]pas[/i] les cibles des "
"[PropertyTweener]s à leur valeurs de quand le [Tween] a démarré pour la "
"première fois.\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"\n"
"# Se déplacera de 0 à 500 en une 1 seconde.\n"
"position.x = 0.0\n"
"tween.tween_property(self, \"position:x\", 500, 1.0)\n"
"\n"
"# Sera à (environ) 250 quand le minuteur se finit.\n"
"await get_tree().create_timer(0.5).timeout\n"
"\n"
"# Se déplacera maintenant d'environ 250 à 500 en une 1 seconde,\n"
"# donc à la moitié de la vitesse d'avant.\n"
"tween.stop()\n"
"tween.play()\n"
"[/codeblock]\n"
"[b]Note :[/b] Si un Tween est arrêté et n'est pas lié à un nœud, il existera "
"toujours jusqu'à ce qu'il soit démarré ou invalidé manuellement. Si vous "
"perdez une référence à ce genre de Tween, vous pouvez la récupérer en "
"utilisant [method SceneTree.get_processed_tweens]."

msgid ""
"Creates and appends a [CallbackTweener]. This method can be used to call an "
"arbitrary method in any object. Use [method Callable.bind] to bind additional "
"arguments for the call.\n"
"[b]Example:[/b] Object that keeps shooting every 1 second:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween().set_loops()\n"
"tween.tween_callback(shoot).set_delay(1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween().SetLoops();\n"
"tween.TweenCallback(Callable.From(Shoot)).SetDelay(1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Turning a sprite red and then blue, with 2 second delay:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.RED)).set_delay(2)\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.BLUE)).set_delay(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"Sprite2D sprite = GetNode<Sprite2D>(\"Sprite\");\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Red)).SetDelay(2.0f);\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Blue)).SetDelay(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Crée et ajoute un [CallbackTweener]. Cette méthode peut être utilisée pour "
"appeler une méthode arbitraire sur n'importe quel objet. Utilisez [method "
"Callable.bind] pour passer des arguments additionnels lors de l'appel.\n"
"[b]Exemple :[/b] Un objet qui tire toujours les secondes :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween().set_loops()\n"
"tween.tween_callback(tirer).set_delay(1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween().SetLoops();\n"
"tween.TweenCallback(Callable.From(Tirer)).SetDelay(1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Exemple :[/b] Changer un sprite en rouge puis en bleu, avec un délai de 2 "
"secondes :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.RED)).set_delay(2)\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.BLUE)).set_delay(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"Sprite2D sprite = GetNode<Sprite2D>(\"Sprite\");\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Red)).SetDelay(2.0f);\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Blue)).SetDelay(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates and appends an [IntervalTweener]. This method can be used to create "
"delays in the tween animation, as an alternative to using the delay in other "
"[Tweener]s, or when there's no animation (in which case the [Tween] acts as a "
"timer). [param time] is the length of the interval, in seconds.\n"
"[b]Example:[/b] Creating an interval in code execution:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# ... some code\n"
"await create_tween().tween_interval(2).finished\n"
"# ... more code\n"
"[/gdscript]\n"
"[csharp]\n"
"// ... some code\n"
"await ToSignal(CreateTween().TweenInterval(2.0f), "
"Tween.SignalName.Finished);\n"
"// ... more code\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Creating an object that moves back and forth and jumps every "
"few seconds:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_loops()\n"
"tween.tween_property($Sprite, \"position:x\", 200.0, 1.0).as_relative()\n"
"tween.tween_callback(jump)\n"
"tween.tween_interval(2)\n"
"tween.tween_property($Sprite, \"position:x\", -200.0, 1.0).as_relative()\n"
"tween.tween_callback(jump)\n"
"tween.tween_interval(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetLoops();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", 200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Jump));\n"
"tween.TweenInterval(2.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", -200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Jump));\n"
"tween.TweenInterval(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Crée et ajoute un [IntervalTweener]. Cette méthode peut être utilisée pour "
"créer des délais lors de l'interpolation du tween, ou comme une alternative "
"pour utiliser le délai dans d'autres [Tweener]s, ou quand il n'y a pas "
"d'animation (dans ce cas le [Tween] se comporte comme un minuteur). [param "
"time] est le durée du délai, en secondes.\n"
"[b]Exemple :[/b] Créer un délai dans l'exécution du code :\n"
"[codeblocks]\n"
"[gdscript]\n"
"# ... du code\n"
"await create_tween().tween_interval(2).finished\n"
"# ... encore du code\n"
"[/gdscript]\n"
"[csharp]\n"
"// ... du code\n"
"await ToSignal(CreateTween().TweenInterval(2.0f), "
"Tween.SignalName.Finished);\n"
"// ... encode du code\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Exemple :[/b] Créer un objet qui se déplace d'avant en arrière et saute "
"toutes les quelques secondes :\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_loops()\n"
"tween.tween_property($Sprite, \"position:x\", 200.0, 1.0).as_relative()\n"
"tween.tween_callback(sauter)\n"
"tween.tween_interval(2)\n"
"tween.tween_property($Sprite, \"position:x\", -200.0, 1.0).as_relative()\n"
"tween.tween_callback(sauter)\n"
"tween.tween_interval(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetLoops();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", 200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Sauter));\n"
"tween.TweenInterval(2.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", -200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Sauter));\n"
"tween.TweenInterval(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"

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 ""
"Creates and appends a [PropertyTweener]. This method tweens a [param "
"property] of an [param object] between an initial value and [param final_val] "
"in a span of time equal to [param duration], in seconds. The initial value by "
"default is the property's value at the time the tweening of the "
"[PropertyTweener] starts.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2(100, 200), 1.0)\n"
"tween.tween_property($Sprite, \"position\", Vector2(200, 300), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(100.0f, "
"200.0f), 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(200.0f, "
"300.0f), 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"will move the sprite to position (100, 200) and then to (200, 300). If you "
"use [method PropertyTweener.from] or [method PropertyTweener.from_current], "
"the starting position will be overwritten by the given value instead. See "
"other methods in [PropertyTweener] to see how the tweening can be tweaked "
"further.\n"
"[b]Note:[/b] You can find the correct property name by hovering over the "
"property in the Inspector. You can also provide the components of a property "
"directly by using [code]\"property:component\"[/code] (eg. [code]position:x[/"
"code]), where it would only apply to that particular component.\n"
"[b]Example:[/b] Moving an object twice from the same position, with different "
"transition types:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().from_current().set_trans(Tween.TRANS_EXPO)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, 1.0f).AsRelative().SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, "
"1.0f).AsRelative().FromCurrent().SetTrans(Tween.TransitionType.Expo);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Crée et ajoute un [PropertyTweener]. Cette méthode interpole une propriété "
"[param property] d'un objet [param object] entre une valeur initiale et une "
"valeur finale [param final_val] durant la durée [param duration], en "
"secondes. La valeur initiale par défaut est la valeur de la propriété au "
"moment où le tweening du [PropertyTweener] commence.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2(100, 200), 1.0)\n"
"tween.tween_property($Sprite, \"position\", Vector2(200, 300), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(100.0f, "
"200.0f), 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(200.0f, "
"300.0f), 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"déplacera la sprite à la position (100, 200) puis ensuite à (200, 300). Si "
"vous utilisez [method PropertyTweener.from] ou [method "
"PropertyTweener.from_current], la position de départ sera remplacée par la "
"valeur donnée à la place. Voir les autres méthodes de [PropertyTweener] pour "
"voir comment le tweening peut être encore plus ajusté.\n"
"[b]Note :[/b] Vous pouvez trouver les noms corrects des propriétés en "
"survolant ces propriétés dans l'Inspecteur. Vous pouvez aussi fournir les "
"composantes d'une propriété directement en utilisant [code]"
"\"propriété:composante\"[/code] (ex. [code]position:x[/code]), "
"l'interpolation ne se fera alors que sur cette unique composante.\n"
"[b]Exemple :[/b] Déplacer un objet deux fois depuis la même position, avec "
"différents types de transition.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().from_current().set_trans(Tween.TRANS_EXPO)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, 1.0f).AsRelative().SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, "
"1.0f).AsRelative().FromCurrent().SetTrans(Tween.TransitionType.Expo);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates and appends a [SubtweenTweener]. This method can be used to nest "
"[param subtween] within this [Tween], allowing for the creation of more "
"complex and composable sequences.\n"
"[codeblock]\n"
"# Subtween will rotate the object.\n"
"var subtween = create_tween()\n"
"subtween.tween_property(self, \"rotation_degrees\", 45.0, 1.0)\n"
"subtween.tween_property(self, \"rotation_degrees\", 0.0, 1.0)\n"
"\n"
"# Parent tween will execute the subtween as one of its steps.\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position:x\", 500, 3.0)\n"
"tween.tween_subtween(subtween)\n"
"tween.tween_property(self, \"position:x\", 300, 2.0)\n"
"[/codeblock]\n"
"[b]Note:[/b] The methods [method pause], [method stop], and [method "
"set_loops] can cause the parent [Tween] to get stuck on the subtween step; "
"see the documentation for those methods for more information.\n"
"[b]Note:[/b] The pause and process modes set by [method set_pause_mode] and "
"[method set_process_mode] on [param subtween] will be overridden by the "
"parent [Tween]'s settings."
msgstr ""
"Crée et ajoute un [SubtweenTweener]. Cette méthode peut être utiliser pour "
"imbriquer un [param subtween] dans ce [Tween], permettant la création de "
"séquences composables et plus complexes.\n"
"[codeblock]\n"
"# Le sous-tween tournera l'objet.\n"
"var subtween = create_tween()\n"
"subtween.tween_property(self, \"rotation_degrees\", 45.0, 1.0)\n"
"subtween.tween_property(self, \"rotation_degrees\", 0.0, 1.0)\n"
"\n"
"# Le tween parent exécutera le sous-tween comme l'une de ses étapes.\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position:x\", 500, 3.0)\n"
"tween.tween_subtween(subtween)\n"
"tween.tween_property(self, \"position:x\", 300, 2.0)\n"
"[/codeblock]\n"
"[b]Note :[/b] Les méthodes [method pause], [method stop], et [method "
"set_loops] peuvent faire que le [Tween] parent soit bloqué à l'étape du sous-"
"tween, voir la documentation sur ces méthodes pour plus d'informations.\n"
"[b]Note :[/b] Les modes de pause et de traitement définis par [method "
"set_pause_mode] et [method set_process_mode] sur [param subtween] seront "
"redéfinies par les paramètres du [Tween] parent."

msgid ""
"Emitted when the [Tween] has finished all tweening. Never emitted when the "
"[Tween] is set to infinite looping (see [method set_loops])."
msgstr ""
"Émis quand le [Tween] a fini tout le tweening. Jamais émis lorsque le [Tween] "
"est défini à une boucle infinie (voir [method set_loops])."

msgid ""
"Emitted when a full loop is complete (see [method set_loops]), providing the "
"loop index. This signal is not emitted after the final loop, use [signal "
"finished] instead for this case."
msgstr ""
"Émis lorsqu'une boucle complète est finie (voir [method set_loops]), "
"fournissant l'index de la boucle. Ce signal n'est pas émis après la boucle "
"finale, utilisez [signal finished] à la place pour ce cas."

msgid ""
"Emitted when one step of the [Tween] is complete, providing the step index. "
"One step is either a single [Tweener] or a group of [Tweener]s running in "
"parallel."
msgstr ""
"Émis lorsqu'une étape du [Tween] est terminée, en fournissant l'index de "
"l'étape. Une étape est soit un seul [Tweener] ou un groupe de [Tweener]s "
"fonctionnant en parallèle."

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 [Tween] updates after each process frame (see [method Node._process])."
msgstr ""
"Le [Tween] se met à jour après chaque trame de traitement (voir [method "
"Node._process])."

msgid ""
"If the [Tween] has a bound node, it will process when that node can process "
"(see [member Node.process_mode]). Otherwise it's the same as [constant "
"TWEEN_PAUSE_STOP]."
msgstr ""
"Si le [Tween] a un nœud lié, il traitera quand ce nœud peut traiter (voir "
"[member Node.process_mode]). Sinon, identique à [constant TWEEN_PAUSE_STOP]."

msgid "If [SceneTree] is paused, the [Tween] will also pause."
msgstr "Si le [SceneTree] est en pause, le [Tween] le sera aussi."

msgid "The [Tween] will process regardless of whether [SceneTree] is paused."
msgstr "Le [Tween] traitera peu importe l'état de pause du [SceneTree]."

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 animation is interpolated like a spring towards the end."
msgstr "L'animation est interpolée comme un ressort vers la fin."

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. Renvoie 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"
"This is equivalent to calling [method @GlobalScope.atan2] with [member y] and "
"[member x].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle.png]Illustration of the returned angle.[/url]"
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"
"Équivalent au résultat de [method @GlobalScope.atan2] lorsqu'appelé avec "
"[member y] et [member x].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle.png]Illustration de l'angle renvoyé.[/url]"

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 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]. Revient à é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 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 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 [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]. Revient à é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 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 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]. Revient à é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 [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]. Revient à é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]. Revient à é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 [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]. Revient à é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 ""
"Ticks video playback for [param delta] seconds. Called every frame as long as "
"both [method _is_paused] and [method _is_playing] return [code]true[/code]."
msgstr ""
"Avance la lecture vidéo de [param delta] secondes. Appelée à chaque trame "
"tant que [method _is_paused] et [method _is_playing] renvoient [code]true[/"
"code]."

msgid ""
"Render [param num_frames] audio frames (of [method _get_channels] floats "
"each) from [param buffer], starting from index [param offset] in the array. "
"Returns the number of audio frames rendered, or -1 on error."
msgstr ""
"Rend [param num_frames] trames audio (de [method _get_channels] flottants "
"chacun) du [param buffer], à partir de l'index [param offset] dans le "
"tableau. Renvoie le nombre de trames audio rendues, ou -1 lors d'une erreur."

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 ""
"[VideoStream] resource handling the [url=https://www.theora.org/]Ogg Theora[/"
"url] video format with [code].ogv[/code] extension. The Theora codec is "
"decoded on the CPU.\n"
"[b]Note:[/b] While Ogg Theora videos can also have a [code].ogg[/code] "
"extension, you will have to rename the extension to [code].ogv[/code] to use "
"those videos within Godot."
msgstr ""
"Ressource [VideoStream] gérant le format vidéo [url=https://"
"www.theora.org/]Ogg Theora[/url] avec l'extension [code].ogv[/code]. Le codec "
"Theora est décodé sur le CPU.\n"
"[b]Note :[/b] Bien que les vidéos Ogg Theora peuvent également avoir une "
"extension [code].ogg[/code], vous devrez renommer l'extension en [code].ogv[/"
"code] pour utiliser ces vidéos dans Godot."

msgid ""
"Abstract base class for viewports. Encapsulates drawing and interaction with "
"a game world."
msgstr ""
"Classe de base abstraite pour les viewports. Encapsule le dessin et "
"l'interaction avec un monde de jeu."

msgid ""
"A [Viewport] creates a different view into the screen, or a sub-view inside "
"another viewport. Child 2D nodes will display on it, and child Camera3D 3D "
"nodes will render on it too.\n"
"Optionally, a viewport can have its own 2D or 3D world, so it doesn't share "
"what it draws with other viewports.\n"
"Viewports can also choose to be audio listeners, so they generate positional "
"audio depending on a 2D or 3D camera child of it.\n"
"Also, viewports can be assigned to different screens in case the devices have "
"multiple screens.\n"
"Finally, viewports can also behave as render targets, in which case they will "
"not be visible unless the associated texture is used to draw."
msgstr ""
"Un [Viewport] crée une vue différente à l'écran, ou une sous-vue à "
"l'intérieur d'un autre viewport. Les nœuds 2D enfants s'afficheront dessus, "
"et les nœuds 3D Camera3D enfants rendront également dessus.\n"
"Optionnellement, un viewport peut avoir son propre monde 2D ou 3D, donc il ne "
"partage pas ce qu'il dessine avec d'autres viewports.\n"
"Des viewports peuvent également choisir d'être des auditeurs audio, donc ils "
"génèrent de l'audio positionnel en fonction d'une camera enfant 2D ou 3D.\n"
"De plus, des viewports peuvent être affectés à différents écrans au cas où "
"les appareils ont plusieurs écrans.\n"
"Enfin, les viewports peuvent aussi se comporter comme des cibles de rendu, "
"auquel cas ils ne seront pas visibles à moins que la texture associée ne soit "
"utilisée pour dessiner."

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 first valid [World3D] for this viewport, searching the [member "
"world_3d] property of itself and any Viewport ancestor."
msgstr ""
"Renvoie le premier [World3D] valide de ce viewport, en cherchant dans sa "
"propriété [member world_3d] ainsi que celles de ses ancêtres Viewport."

msgid ""
"Returns the currently active 2D audio listener. Returns [code]null[/code] if "
"there are no active 2D audio listeners, in which case the active 2D camera "
"will be treated as listener."
msgstr ""
"Renvoie l'auditeur audio 2D actuellement actif. Renvoie [code]null[/code] "
"s'il n'y a pas d'auditeurs audio 2D actifs, auquel cas la caméra 2D active "
"sera traitée comme auditeur."

msgid ""
"Returns the currently active 3D audio listener. Returns [code]null[/code] if "
"there are no active 3D audio listeners, in which case the active 3D camera "
"will be treated as listener."
msgstr ""
"Renvoie l'auditeur audio 3D actuellement actif. Renvoie [code]null[/code] "
"s'il n'y a pas d'auditeurs audio 3D actifs, auquel cas la caméra 3D active "
"sera traitée comme auditeur."

msgid "Returns an individual bit on the rendering layer mask."
msgstr "Renvoie un bit individuel sur le masque des couches de rendu."

msgid ""
"Returns a list of the visible embedded [Window]s inside the viewport.\n"
"[b]Note:[/b] [Window]s inside other viewports will not be listed."
msgstr ""
"Renvoie une liste des [Window]s intégrées visibles à l'intérieur du "
"viewport.\n"
"[b]Note :[/b] Les [Window]s à l'intérieur d'autres viewports ne seront pas "
"listées."

msgid ""
"Returns the transform from the viewport's coordinate system to the embedder's "
"coordinate system."
msgstr ""
"Renvoie la transformation du système de coordonnées du viewport vers le "
"système de coordonnées de l'intégrateur."

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 viewport oversampling factor."
msgstr "Renvoie le facteur de suréchantillonnage du viewport."

msgid "Returns rendering statistics of the given type."
msgstr "Renvoie des statistiques de rendu du type donné."

msgid ""
"Returns the automatically computed 2D stretch transform, taking the "
"[Viewport]'s stretch settings into account. The final value is multiplied by "
"[member Window.content_scale_factor], but only for the root viewport. If this "
"method is called on a [SubViewport] (e.g., in a scene tree with "
"[SubViewportContainer] and [SubViewport]), the scale factor of the root "
"window will not be applied. Using [method Transform2D.get_scale] on the "
"returned value, this can be used to compensate for scaling when zooming a "
"[Camera2D] node, or to scale down a [TextureRect] to be pixel-perfect "
"regardless of the automatically computed scale factor.\n"
"[b]Note:[/b] Due to how pixel scaling works, the returned transform's X and Y "
"scale may differ slightly, even when [member Window.content_scale_aspect] is "
"set to a mode that preserves the pixels' aspect ratio. If [member "
"Window.content_scale_aspect] is [constant "
"Window.CONTENT_SCALE_ASPECT_IGNORE], the X and Y scale may differ "
"[i]significantly[/i]."
msgstr ""
"Renvoie la transformation d'étirement 2D automatiquement calculée, en tenant "
"compte des réglages d'étirement du [Viewport]. La valeur finale est "
"multipliée par [member Window.content_scale_factor], mais seulement pour le "
"viewport racine. Si cette méthode est appelée sur un [SubViewport] (par "
"exemple, dans un arborescence de scène avec [SubViewportContainer] et "
"[SubViewport]), le facteur d'échelle du viewport racine ne sera pas appliqué. "
"En utilisant [method Transform2D.get_scale] sur la valeur renvoyée, cela peut "
"être utilisé pour compenser l'échelle lors du zoom d'un nœud [Camera2D], ou "
"pour rétrécir un [TextureRect] pour être au pixel près indépendamment du "
"facteur d'échelle calculé automatiquement.\n"
"[b]Note :[/b] En raison de la façon dont fonctionne l'échelle des pixels, "
"l'échelle en X et en Y de la transformation renvoyée peut différer "
"légèrement, même lorsque [member Window.content_scale_aspect] est définie à "
"un mode qui conserve le rapport d'aspect des pixels. Si [member "
"Window.content_scale_aspect] vaut [constant "
"Window.CONTENT_SCALE_ASPECT_IGNORE], l'échelle en X et en Y peut différer "
"[i]de façon significative[/i]."

msgid ""
"Returns the viewport's texture.\n"
"[b]Note:[/b] When trying to store the current texture (e.g. in a file), it "
"might be completely black or outdated if used too early, especially when used "
"in e.g. [method Node._ready]. To make sure the texture you get is correct, "
"you can await [signal RenderingServer.frame_post_draw] signal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"    await RenderingServer.frame_post_draw\n"
"    $Viewport.get_texture().get_image().save_png(\"user://Screenshot.png\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async override void _Ready()\n"
"{\n"
"    await ToSignal(RenderingServer.Singleton, "
"RenderingServer.SignalName.FramePostDraw);\n"
"    var viewport = GetNode<Viewport>(\"Viewport\");\n"
"    viewport.GetTexture().GetImage().SavePng(\"user://Screenshot.png\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] When [member use_hdr_2d] is [code]true[/code] the returned "
"texture will be an HDR image using linear encoding."
msgstr ""
"Renvoie la texture du viewport.\n"
"[b]Note :[/b] Lorsque vous essayez de stocker la texture actuelle (par "
"exemple dans un fichier), elle peut être complètement noire ou périmée si "
"elle est utilisée trop tôt, surtout lorsqu'elle est utilisée par ex. dans "
"[method Node._ready]. Pour vous assurer que la texture que vous obtenez est "
"correcte, vous pouvez attendre le signal [signal "
"RenderingServer.frame_post_draw].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"    await RenderingServer.frame_post_draw\n"
"    $Viewport.get_texture().get_image().save_png(\"user://"
"Capture_d_ecran.png\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async override void _Ready()\n"
"{\n"
"    await ToSignal(RenderingServer.Singleton, "
"RenderingServer.SignalName.FramePostDraw);\n"
"    var viewport = GetNode<Viewport>(\"Viewport\");\n"
"    viewport.GetTexture().GetImage().SavePng(\"user://"
"Capture_d_ecran.png\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note :[/b] Lorsque [member use_hdr_2d] vaut [code]true[/code], la texture "
"renvoyée sera une image HDR encodée dans l'espace linéaire."

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 ""
"Cancels the drag operation that was previously started through [method "
"Control._get_drag_data] or forced with [method Control.force_drag]."
msgstr ""
"Annule l'opération de glissement qui a déjà été lancée par [method "
"Control._get_drag_data] ou forcée avec [method Control.force_drag]."

msgid ""
"Returns the drag data from the GUI, that was previously returned by [method "
"Control._get_drag_data]."
msgstr ""
"Renvoie les données de déposer-glisser du GUI, qui étaient précédemment "
"renvoyées par [method Control._get_drag_data]."

msgid ""
"Returns the currently focused [Control] within this viewport. If no [Control] "
"is focused, returns [code]null[/code]."
msgstr ""
"Renvoie le [Control] ayant actuellement le focus dans ce viewport. Si aucun "
"[Control] n'a le focus, renvoie [code]null[/code]."

msgid ""
"Returns the [Control] that the mouse is currently hovering over in this "
"viewport. If no [Control] has the cursor, returns [code]null[/code].\n"
"Typically the leaf [Control] node or deepest level of the subtree which "
"claims hover. This is very useful when used together with [method "
"Node.is_ancestor_of] to find if the mouse is within a control tree."
msgstr ""
"Renvoie le [Control] que la souris survole dans ce viewport. Si aucun "
"[Control] n'a le curseur, renvoie [code]null[/code].\n"
"Typiquement le nœud [Control] feuille ou le niveau le plus profond du sous-"
"arbre qui revendique le survol. Ceci est très utile lorsqu'utilisé avec "
"[method Node.is_ancestor_of] pour trouver si la souris est dans un arbre de "
"contrôles."

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 ""
"Returns [code]true[/code] if a drag operation is currently ongoing and where "
"the drop action could happen in this viewport.\n"
"Alternative to [constant Node.NOTIFICATION_DRAG_BEGIN] and [constant "
"Node.NOTIFICATION_DRAG_END] when you prefer polling the value."
msgstr ""
"Renvoie [code]true[/code] si une opération de glissement est en cours et où "
"l'action de déposer pourrait se produire dans ce viewport.\n"
"Alternative à [constant Node.NOTIFICATION_DRAG_BEGIN] et [constant "
"Node.NOTIFICATION_DRAG_END] lorsque vous préférez sonder la valeur."

msgid ""
"Removes the focus from the currently focused [Control] within this viewport. "
"If no [Control] has the focus, does nothing."
msgstr ""
"Retire le focus du [Control] ayant actuellement le focus dans ce viewport. Si "
"aucun [Control] n'a le focus, ne fait rien."

msgid ""
"Returns whether the current [InputEvent] has been handled. Input events are "
"not handled until [method set_input_as_handled] has been called during the "
"lifetime of an [InputEvent].\n"
"This is usually done as part of input handling methods like [method "
"Node._input], [method Control._gui_input] or others, as well as in "
"corresponding signal handlers.\n"
"If [member handle_input_locally] is set to [code]false[/code], this method "
"will try finding the first parent viewport that is set to handle input "
"locally, and return its value for [method is_input_handled] instead."
msgstr ""
"Renvoie si l'[InputEvent] actuel a été géré. Les événements d'entrée ne sont "
"pas gérés jusqu'à ce que [method set_input_as_handled] ait été appelée "
"pendant la durée de vie d'un [InputEvent].\n"
"Ceci est généralement fait dans le cadre de méthodes de manipulation des "
"entrées comme [method Node._input], [method Control._gui_input] ou d'autres, "
"ainsi que dans les gestionnaires des signaux correspondants.\n"
"Si [member handle_input_locally] est défini à [code]false[/code], cette "
"méthode va essayer de trouver le premier viewport parent qui est défini pour "
"gérer l'entrée localement, et de renvoyer sa valeur pour [method "
"is_input_handled] à la place."

msgid ""
"Inform the Viewport that the mouse has entered its area. Use this function "
"before sending an [InputEventMouseButton] or [InputEventMouseMotion] to the "
"[Viewport] with [method Viewport.push_input]. See also [method "
"notify_mouse_exited].\n"
"[b]Note:[/b] In most cases, it is not necessary to call this function because "
"[SubViewport] nodes that are children of [SubViewportContainer] are notified "
"automatically. This is only necessary when interacting with viewports in non-"
"default ways, for example as textures in [TextureRect] or with an [Area3D] "
"that forwards input events."
msgstr ""
"Informe le Viewport que la souris est entrée dans sa zone. Utilisez cette "
"fonction avant d'envoyer un [InputEventMouseButton] ou un "
"[InputEventMouseMotion] au [Viewport] avec [method Viewport.push_input]. Voir "
"aussi [method notify_mouse_exited].\n"
"[b]Note :[/b] Dans la plupart des cas, il n'est pas nécessaire d'appeler "
"cette fonction parce que les nœuds [SubViewport] qui sont des enfants de "
"[SubViewportContainer] sont notifiés automatiquement. Cela n'est nécessaire "
"que lorsqu'on interagit avec des viewports de façon non par défaut, par "
"exemple comme des textures dans [TextureRect] ou avec une [Area3D] qui "
"transmet les événements d'entrée."

msgid ""
"Inform the Viewport that the mouse has left its area. Use this function when "
"the node that displays the viewport notices the mouse has left the area of "
"the displayed viewport. See also [method notify_mouse_entered].\n"
"[b]Note:[/b] In most cases, it is not necessary to call this function because "
"[SubViewport] nodes that are children of [SubViewportContainer] are notified "
"automatically. This is only necessary when interacting with viewports in non-"
"default ways, for example as textures in [TextureRect] or with an [Area3D] "
"that forwards input events."
msgstr ""
"Informe le Viewport que la souris a quitté sa zone. Utilisez cette fonction "
"lorsque le nœud qui affiche le viewport note que la souris a quitté la zone "
"du viewport affiché. Voir aussi [method notify_mouse_entered].\n"
"[b]Note :[/b] Dans la plupart des cas, il n'est pas nécessaire d'appeler "
"cette fonction parce que les nœuds [SubViewport] qui sont des enfants de "
"[SubViewportContainer] sont notifiés automatiquement. Cela n'est nécessaire "
"que lorsqu'on interagit avec des viewports de façon non par défaut, par "
"exemple comme des textures dans [TextureRect] ou avec une [Area3D] qui "
"transmet les événements d'entrée."

msgid ""
"Triggers the given [param event] in this [Viewport]. This can be used to pass "
"an [InputEvent] between viewports, or to locally apply inputs that were sent "
"over the network or saved to a file.\n"
"If [param in_local_coords] is [code]false[/code], the event's position is in "
"the embedder's coordinates and will be converted to viewport coordinates. If "
"[param in_local_coords] is [code]true[/code], the event's position is in "
"viewport coordinates.\n"
"While this method serves a similar purpose as [method "
"Input.parse_input_event], it does not remap the specified [param event] based "
"on project settings like [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse].\n"
"Calling this method will propagate calls to child nodes for following methods "
"in the given order:\n"
"- [method Node._input]\n"
"- [method Control._gui_input] for [Control] nodes\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"If an earlier method marks the input as handled via [method "
"set_input_as_handled], any later method in this list will not be called.\n"
"If none of the methods handle the event and [member physics_object_picking] "
"is [code]true[/code], the event is used for physics object picking."
msgstr ""
"Déclenche l'évènement [param event] donné dans ce [Viewport]. Cela peut être "
"utilisé pour passer un [InputEvent] entre des viewports, ou pour appliquer "
"localement des entrées qui ont été envoyées sur le réseau ou sauvegardées "
"dans un fichier.\n"
"Si [param in_local_coords] vaut [code]false[/code], la position de "
"l'événement est dans les coordonnées de l'éditeur et sera convertie en "
"coordonnées du viewport. Si [param in_local_coords] vaut [code]true[/code], "
"la position de l'événement est dans les coordonnées du viewport.\n"
"Bien que cette méthode serve un but similaire à [method "
"Input.parse_input_event], elle ne ré-associe pas l'[param event] spécifié "
"selon les paramètres du projet comme [member ProjectSettings.input_devices/"
"pointing/emulate_touch_from_mouse].\n"
"L'appel de cette méthode va propager des appels aux nœuds enfants pour les "
"méthodes suivantes dans l'ordre donné :\n"
"- [method Node._input]\n"
"- [method Control._gui_input] pour les nœuds [Control]\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"Si une méthode antérieure marque l'entrée comme gérée via [method "
"set_input_as_handled], toute méthode ultérieure dans cette liste ne sera pas "
"appelée.\n"
"Si aucune des méthodes ne gèrent l'événement et que [member "
"physics_object_picking] vaut [code]true[/code], l'événement est utilisé pour "
"la sélection d'objets physiques."

msgid ""
"Helper method which calls the [code]set_text()[/code] method on the currently "
"focused [Control], provided that it is defined (e.g. if the focused Control "
"is [Button] or [LineEdit])."
msgstr ""
"Méthode d'aide qui appelle la méthode [code]set_text()[/code] sur le "
"[Control] ayant actuellement le focus, à condition qu'elle soit définie (par "
"ex. si le Control ciblé est un [Button] ou un [LineEdit])."

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

msgid ""
"Triggers the given [param event] in this [Viewport]. This can be used to pass "
"an [InputEvent] between viewports, or to locally apply inputs that were sent "
"over the network or saved to a file.\n"
"If [param in_local_coords] is [code]false[/code], the event's position is in "
"the embedder's coordinates and will be converted to viewport coordinates. If "
"[param in_local_coords] is [code]true[/code], the event's position is in "
"viewport coordinates.\n"
"Calling this method will propagate calls to child nodes for following methods "
"in the given order:\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"If an earlier method marks the input as handled via [method "
"set_input_as_handled], any later method in this list will not be called.\n"
"If none of the methods handle the event and [member physics_object_picking] "
"is [code]true[/code], the event is used for physics object picking.\n"
"[b]Note:[/b] This method doesn't propagate input events to embedded [Window]s "
"or [SubViewport]s."
msgstr ""
"Déclenche l'évènement [param event] donné dans ce [Viewport]. Cela peut être "
"utilisé pour passer un [InputEvent] entre des viewports, ou pour appliquer "
"localement des entrées qui ont été envoyées sur le réseau ou sauvegardées "
"dans un fichier.\n"
"Si [param in_local_coords] vaut [code]false[/code], la position de "
"l'événement est dans les coordonnées de l'intégrateur et sera convertie en "
"coordonnées du viewport. Si [param in_local_coords] vaut [code]true[/code], "
"la position de l'événement est dans les coordonnées du viewport.\n"
"L'appel de cette méthode va propager des appels aux nœuds enfants pour les "
"méthodes suivantes dans l'ordre donné :\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"Si une méthode antérieure marque l'entrée comme gérée via [method "
"set_input_as_handled], toute méthode ultérieure dans cette liste ne sera pas "
"appelée.\n"
"Si aucune des méthodes ne gèrent l'événement et que [member "
"physics_object_picking] vaut [code]true[/code], l'événement est utilisé pour "
"la sélection d'objets physiques.\n"
"[b]Note :[/b] Cette méthode ne propage pas d'événements d'entrée aux "
"[Window]s ou [SubViewport]s intégrés."

msgid ""
"Set/clear individual bits on the rendering layer mask. This simplifies "
"editing this [Viewport]'s layers."
msgstr ""
"Définit ou efface des bits individuels sur le masque de couches de rendu. "
"Cela simplifie l'édition des couches de ce [Viewport]."

msgid ""
"Sets the number of subdivisions to use in the specified quadrant. A higher "
"number of subdivisions allows you to have more shadows in the scene at once, "
"but reduces the quality of the shadows. A good practice is to have quadrants "
"with a varying number of subdivisions and to have as few subdivisions as "
"possible."
msgstr ""
"Définit le nombre de sous-divisions à utiliser dans le quadrant spécifié. Un "
"nombre plus élevé de sous-divisions vous permet d'avoir plus d'ombres dans la "
"scène à la fois, mais réduit la qualité des ombres. Une bonne habitude est "
"d'avoir des quadrants avec un nombre variable de sous-divisions et d'avoir "
"peu de sous-divisions autant que possible."

msgid ""
"Force instantly updating the display based on the current mouse cursor "
"position. This includes updating the mouse cursor shape and sending necessary "
"[signal Control.mouse_entered], [signal CollisionObject2D.mouse_entered], "
"[signal CollisionObject3D.mouse_entered] and [signal Window.mouse_entered] "
"signals and their respective [code]mouse_exited[/code] counterparts."
msgstr ""
"Force la mise à jour instantanée de l'écran en fonction de la position "
"actuelle du curseur de la souris. Cela comprend la mise à jour de la forme du "
"curseur de la souris et l'envoi des signaux nécessaires [signal "
"Control.mouse_entered], [signal CollisionObject2D.mouse_entered], [signal "
"CollisionObject3D.mouse_entered] et [signal Window.mouse_entered] et leurs "
"homologues respectifs [code]mouse_exited[/code]."

msgid ""
"Moves the mouse pointer to the specified position in this [Viewport] using "
"the coordinate system of this [Viewport].\n"
"[b]Note:[/b] [method warp_mouse] is only supported on Windows, macOS and "
"Linux. It has no effect on Android, iOS and Web."
msgstr ""
"Déplace le pointeur de la souris à la position spécifiée dans ce [Viewport] "
"en utilisant le système de coordonnées de ce [Viewport].\n"
"[b]Note :[/b] [method warp_mouse] n'est supportée que sous Windows, macOS et "
"Linux. Elle n'a aucun effet sur Android, iOS et Web."

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 ""
"Determines how sharp the upscaled image will be when using the FSR upscaling "
"mode. Sharpness halves with every whole number. Values go from 0.0 (sharpest) "
"to 2.0. Values above 2.0 won't make a visible difference.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/scaling_3d/fsr_sharpness] project setting."
msgstr ""
"Détermine la netteté de l'image mise à l'échelle lors de l'utilisation du "
"mode de mise à l'échelle FSR. La netteté est divisée par deux à chaque nombre "
"entier. Les valeurs vont de 0.0 (le plus net) à 2.0. Les valeurs supérieures "
"à 2,0 ne feront pas de différence visible.\n"
"Pour contrôler cette propriété sur le viewport racine, définissez le "
"paramètre de projet [member ProjectSettings.rendering/scaling_3d/"
"fsr_sharpness]."

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], sub-windows (popups and dialogs) will be embedded "
"inside application window as control-like nodes. If [code]false[/code], they "
"will appear as separate windows handled by the operating system."
msgstr ""
"Si [code]true[/code], les sous-fenêtres (popups et boites de dialogue) seront "
"intégrées dans la fenêtre de l'application d'une manière similaire à des "
"nœuds Control. Si [code]false[/code], ils apparaîtront comme des fenêtres "
"séparées gérées par le système d'exploitation."

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 ""
"If [code]true[/code], this viewport will mark incoming input events as "
"handled by itself. If [code]false[/code], this is instead done by the first "
"parent viewport that is set to handle input locally.\n"
"A [SubViewportContainer] will automatically set this property to [code]false[/"
"code] for the [Viewport] contained inside of it.\n"
"See also [method set_input_as_handled] and [method is_input_handled]."
msgstr ""
"Si [code]true[/code], ce viewport marquera les événements d'entrée entrants "
"gérés par lui-même. Si [code]false[/code], cela est fait à la place par le "
"premier viewport parent qui est défini pour gérer les entrées localement.\n"
"Un [SubViewportContainer] définira automatiquement cette propriété à "
"[code]false[/code] pour le [Viewport] contenu à l'intérieur.\n"
"Voir aussi [method set_input_as_handled] et [method is_input_handled]."

msgid ""
"The automatic LOD bias to use for meshes rendered within the [Viewport] (this "
"is analogous to [member ReflectionProbe.mesh_lod_threshold]). Higher values "
"will use less detailed versions of meshes that have LOD variations generated. "
"If set to [code]0.0[/code], automatic LOD is disabled. Increase [member "
"mesh_lod_threshold] to improve performance at the cost of geometry detail.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/mesh_lod/lod_change/threshold_pixels] project "
"setting.\n"
"[b]Note:[/b] [member mesh_lod_threshold] does not affect [GeometryInstance3D] "
"visibility ranges (also known as \"manual\" LOD or hierarchical LOD)."
msgstr ""
"Le biais de LOD automatique à utiliser pour les maillages rendus dans le "
"[Viewport] (analogue à [member ReflectionProbe.mesh_lod_threshold]). Des "
"valeurs plus élevées utiliseront des versions moins détaillées des maillages "
"qui ont des variations de LOD générées. Si défini à [code]0.0[/code], le LOD "
"automatique est désactivé. Augmentez [member mesh_lod_threshold] pour "
"améliorer les performances au coût des détails de géométrie.\n"
"Pour contrôler cette propriété sur le viewport racine, définissez le "
"paramètre de projet [member ProjectSettings.rendering/mesh_lod/lod_change/"
"threshold_pixels].\n"
"[b]Note :[/b] [member mesh_lod_threshold] n'affecte pas les plages de "
"visibilité de [GeometryInstance3D] (également appelées LOD \"manuel\" ou LOD "
"hiérarchique)."

msgid ""
"The multisample antialiasing mode for 2D/Canvas rendering. A higher number "
"results in smoother edges at the cost of significantly worse performance. A "
"value of [constant Viewport.MSAA_2X] or [constant Viewport.MSAA_4X] is best "
"unless targeting very high-end systems. This has no effect on shader-induced "
"aliasing or texture aliasing.\n"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/msaa_2d] and "
"[method RenderingServer.viewport_set_msaa_2d]."
msgstr ""
"Le mode d'anti-crénelage multi-échantillon pour le rendu 2D/Canevas. Un "
"nombre plus élevé se traduit par des bords plus lisses au coût de "
"performances nettement pires. Une valeur de [constant Viewport.MSAA_2X] ou "
"[constant Viewport.MSAA_4X] est préférable à moins de cibler des systèmes "
"très haut de gamme. Cela n'a aucun effet sur le crénelage du à des shaders ou "
"le crénelage de texture.\n"
"Voir aussi [member ProjectSettings.rendering/anti_aliasing/quality/msaa_2d] "
"et [method RenderingServer.viewport_set_msaa_2d]."

msgid ""
"The multisample antialiasing mode for 3D rendering. A higher number results "
"in smoother edges at the cost of significantly worse performance. A value of "
"[constant Viewport.MSAA_2X] or [constant Viewport.MSAA_4X] is best unless "
"targeting very high-end systems. See also bilinear scaling 3D [member "
"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"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/msaa_3d] and "
"[method RenderingServer.viewport_set_msaa_3d]."
msgstr ""
"Le mode d'anti-crénelage multi-échantillon pour le rendu 3D. Un nombre plus "
"élevé se traduit par des bords plus lisses au coût de performances nettement "
"pires. Une valeur de [constant Viewport.MSAA_2X] ou [constant "
"Viewport.MSAA_4X] est préférable à moins de cibler des systèmes très haut de "
"gamme. Voir aussi la mise à l'échelle bilinéaire 3D [member scaling_3d_mode] "
"pour du sur-échantillonnage, qui fournit une qualité supérieure mais est "
"beaucoup plus cher. Cela n'a aucun effet sur le crénelage du à des shaders ou "
"le crénelage de texture.\n"
"Voir aussi [member ProjectSettings.rendering/anti_aliasing/quality/msaa_3d] "
"et [method RenderingServer.viewport_set_msaa_3d]."

msgid ""
"If [code]true[/code] and one of the following conditions are true: [member "
"SubViewport.size_2d_override_stretch] and [member "
"SubViewport.size_2d_override] are set, [member Window.content_scale_factor] "
"is set and scaling is enabled, [member oversampling_override] is set, font "
"and [DPITexture] oversampling are enabled."
msgstr ""
"Si [code]true[/code] et que l'une des conditions suivantes est vraie : "
"[member SubViewport.size_2d_override_stretch] et [member "
"SubViewport.size_2d_override] sont définis, [member "
"Window.content_scale_factor] est activé et la mise à l'échelle est activée, "
"[member oversampling_override] est activé, le sur-échantillonnage des polices "
"et de [DPITexture] est activé."

msgid ""
"If greater than zero, this value is used as the font oversampling factor, "
"otherwise oversampling is equal to viewport scale."
msgstr ""
"Si supérieur à zéro, cette valeur est utilisée comme facteur de sur-"
"échantillonnage de police, sinon le sur-échantillonnage est égal à l'échelle "
"du viewport."

msgid ""
"If [code]true[/code], the viewport will use a unique copy of the [World3D] "
"defined in [member world_3d]."
msgstr ""
"Si [code]true[/code], le viewport utilisera une copie unique du [World3D] "
"défini dans la propriété [member world_3d]."

msgid ""
"If [code]true[/code], the objects rendered by viewport become subjects of "
"mouse picking process.\n"
"[b]Note:[/b] The number of simultaneously pickable objects is limited to 64 "
"and they are selected in a non-deterministic order, which can be different in "
"each picking process."
msgstr ""
"Si [code]true[/code], les objets rendus par le viewport deviennent des sujets "
"du processus de sélection par la souris.\n"
"[b]Note :[/b] Le nombre d'objets pouvant être choisis simultanément est "
"limité à 64 et ils sont sélectionnés dans un ordre non déterministe, qui peut "
"être différent à chaque processus de sélection."

msgid ""
"If [code]true[/code], the input_event signal will only be sent to one physics "
"object in the mouse picking process. If you want to get the top object only, "
"you must also enable [member physics_object_picking_sort].\n"
"If [code]false[/code], an input_event signal will be sent to all physics "
"objects in the mouse picking process.\n"
"This applies to 2D CanvasItem object picking only."
msgstr ""
"Si [code]true[/code], le signal input_event ne sera envoyé qu'à un objet "
"physique dans le processus de sélection de la souris. Si vous voulez obtenir "
"l'objet du haut seulement, vous devez également activer [member "
"physics_object_picking_sort].\n"
"Si [code]false[/code], un signal input_event sera envoyé à tous les objets "
"physiques dans le processus de sélection de la souris.\n"
"Ceci s'applique à la sélection d'objets CanvasItem 2D uniquement."

msgid ""
"If [code]true[/code], objects receive mouse picking events sorted primarily "
"by their [member CanvasItem.z_index] and secondarily by their position in the "
"scene tree. If [code]false[/code], the order is undetermined.\n"
"[b]Note:[/b] This setting is disabled by default because of its potential "
"expensive computational cost.\n"
"[b]Note:[/b] Sorting happens after selecting the pickable objects. Because of "
"the limitation of 64 simultaneously pickable objects, it is not guaranteed "
"that the object with the highest [member CanvasItem.z_index] receives the "
"picking event."
msgstr ""
"Si [code]true[/code], les objets reçoivent des événements de sélection de "
"souris triés d'abord par leur [member CanvasItem.z_index] puis par leur "
"position dans l'arborescence de scène. Si [code]false[/code], l'ordre est "
"indéterminé.\n"
"[b]Note :[/b] Ce paramètre est désactivé par défaut en raison de son coût de "
"calcul coûteux potentiel.\n"
"[b]Note :[/b] Le tri s'effectue après avoir sélectionné les objets "
"sélectionnables. En raison de la limitation de 64 objets récupérables "
"simultanément, il n'est pas garanti que l'objet avec le plus haut [member "
"CanvasItem.z_index] reçoive l'événement de sélection."

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 ""
"The shadow atlas' resolution (used for omni and spot lights). The value is "
"rounded up to the nearest power of 2.\n"
"[b]Note:[/b] If this is set to [code]0[/code], no positional shadows will be "
"visible at all. This can improve performance significantly on low-end systems "
"by reducing both the CPU and GPU load (as fewer draw calls are needed to draw "
"the scene without shadows)."
msgstr ""
"La résolution de l'atlas des ombres (utilisé pour les SpotLights et "
"OmniLights). La valeur est arrondie à la puissance de 2 la plus proche.\n"
"[b]Note :[/b] Si cela est défini à [code]0[/code], aucune ombre positionnelle "
"ne sera visible du tout. Cela peut améliorer considérablement les "
"performances sur les systèmes bas de gamme en réduisant à la fois la charge "
"CPU et GPU (car il faut moins de draw calls pour dessiner la scène sans "
"ombres)."

msgid ""
"Sets scaling 3D mode. Bilinear scaling renders at different resolution to "
"either undersample or supersample the viewport. FidelityFX Super Resolution "
"1.0, abbreviated to FSR, is an upscaling technology that produces high "
"quality images at fast framerates by using a spatially aware upscaling "
"algorithm. FSR is slightly more expensive than bilinear, but it produces "
"significantly higher image quality. FSR should be used where possible.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/scaling_3d/mode] project setting."
msgstr ""
"Définit le mode d'échelle 3D. L'échelle bilinéaire rend à une résolution "
"différente pour soit sous-échantillonner soit sur-échantillonner le viewport. "
"FidelityFX Super Resolution 1.0, abrégé en FSR, est une technologie de "
"redimensionnement qui produit des images de haute qualité à des framerates "
"rapides en utilisant un algorithme de redimensionnement spatialement "
"conscient. Le FSR est légèrement plus cher que le bilinéaire, mais il produit "
"une qualité d'image beaucoup plus élevée. Le FSR devrait être utilisé si "
"possible.\n"
"Pour contrôler cette propriété sur le viewport racine, définissez le "
"paramètre de projet [member ProjectSettings.rendering/scaling_3d/mode]."

msgid ""
"Scales the 3D render buffer based on the viewport size uses an image filter "
"specified in [member ProjectSettings.rendering/scaling_3d/mode] to scale the "
"output image to the full viewport size. Values lower than [code]1.0[/code] "
"can be used to speed up 3D rendering at the cost of quality (undersampling). "
"Values greater than [code]1.0[/code] are only valid for bilinear mode and can "
"be used to improve 3D rendering quality at a high performance cost "
"(supersampling). See also [member ProjectSettings.rendering/anti_aliasing/"
"quality/msaa_3d] for multi-sample antialiasing, which is significantly "
"cheaper but only smooths the edges of polygons.\n"
"When using FSR upscaling, AMD recommends exposing the following values as "
"preset options to users \"Ultra Quality: 0.77\", \"Quality: 0.67\", "
"\"Balanced: 0.59\", \"Performance: 0.5\" instead of exposing the entire "
"scale.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/scaling_3d/scale] project setting."
msgstr ""
"Redimensionne le buffer de rendu 3D selon la taille du viewport en utilisant "
"un filtrage d'image spécifié dans [member ProjectSettings.rendering/"
"scaling_3d/mode] pour mettre à l'échelle l'image de sortie à la taille "
"complète du viewport. Les valeurs inférieures à [code]1.0[/code] peuvent être "
"utilisées pour accélérer le rendu 3D au coût de la qualité (sous-"
"échantillonnage). Les valeurs supérieures à [code]1.0[/code] ne sont valables "
"que pour le mode bilinéaire et peuvent être utilisées pour améliorer la "
"qualité du rendu 3D à un coût élevé sur les performances (sur-"
"échantillonnage). Voir aussi [member ProjectSettings.rendering/anti_aliasing/"
"quality/msaa_3d] pour l'anti-crénelage multi-échantillons, qui est nettement "
"moins cher mais ne lisse que les bords des polygones.\n"
"Lors de l'utilisation de l'upscaling FSR, AMD recommande d'indiquer les "
"valeurs suivantes comme options prédéfinies aux utilisateurs \"Qualité "
"Ultra : 0.77\", \"Qualité : 0.67\", \"Équilibré : 0.59\", \"Performances : "
"0.5\" au lieu d'exposer l'échelle entière.\n"
"Pour contrôler cette propriété sur le viewport racine, définissez le "
"paramètre de projet [member ProjectSettings.rendering/scaling_3d/scale]."

msgid ""
"Sets the screen-space antialiasing method used. Screen-space antialiasing "
"works by selectively blurring edges in a post-process shader. It differs from "
"MSAA which takes multiple coverage samples while rendering objects. Screen-"
"space AA methods are typically faster than MSAA and will smooth out specular "
"aliasing, but tend to make scenes appear blurry.\n"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/"
"screen_space_aa] and [method RenderingServer.viewport_set_screen_space_aa]."
msgstr ""
"Définit la méthode d'anti-crénelage de l'espace-écran utilisée. L'anti-"
"crénelage de l'espace-écran fonctionne en sélectionnant des bords flous dans "
"un shader de post-traitement. Il diffère de la MSAA qui prend plusieurs "
"échantillons de couverture tout en rendant des objets. Les méthodes d'anti-"
"crénelage de l'espace d'écran sont généralement plus rapides que la MSAA et "
"lissent le crénelage spéculaire, mais ont tendance à rendre les scènes "
"floues.\n"
"Voir aussi [member ProjectSettings.rendering/anti_aliasing/quality/"
"screen_space_aa] et [method RenderingServer.viewport_set_screen_space_aa]."

msgid ""
"The resolution scale to use for the 2D signed distance field. Higher values "
"lead to a more precise and more stable signed distance field as the camera "
"moves, at the cost of performance."
msgstr ""
"L'échelle de résolution à utiliser pour le champ de distance signée 2D. Les "
"valeurs plus élevées conduisent à un champ de distance signée plus précis et "
"plus stable lorsque la caméra se déplace, avec un coût sur les performances."

msgid ""
"If [code]true[/code], [CanvasItem] nodes will internally snap to full pixels. "
"Their position can still be sub-pixel, but the decimals will not have effect. "
"This can lead to a crisper appearance at the cost of less smooth movement, "
"especially when [Camera2D] smoothing is enabled."
msgstr ""
"Si [code]true[/code], les nœuds [CanvasItem] s’aimanteront en interne sur des "
"pixels complets. Leur position peut encore être au sous-pixel, mais les "
"décimales n'auront pas d'effet. Cela peut conduire à un aspect plus net au "
"coût d'un mouvement moins lisse, surtout lorsque le lissage de la [Camera2D] "
"est activé."

msgid ""
"If [code]true[/code], vertices of [CanvasItem] nodes will snap to full "
"pixels. 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."
msgstr ""
"Si [code]true[/code], les sommets des nœuds [CanvasItem] s’aimanteront sur "
"des pixels complets. N'affecte que les positions finales des sommets, pas les "
"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é."

msgid ""
"If [code]true[/code], [OccluderInstance3D] nodes will be usable for occlusion "
"culling in 3D for this viewport. For the root viewport, [member "
"ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] must be "
"set to [code]true[/code] instead.\n"
"[b]Note:[/b] Enabling occlusion culling has a cost on the CPU. Only enable "
"occlusion culling if you actually plan to use it, and think whether your "
"scene can actually benefit from occlusion culling. 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 ""
"Si [code]true[/code], les nœuds [OccluderInstance3D] seront utilisables pour "
"l'occlusion culling en 3D pour ce viewport. Pour le viewport racine, [member "
"ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] doit être "
"défini à [code]true[/code] à la place.\n"
"[b]Note :[/b] Activer l'occlusion culling a un coût sur le CPU. N'activer "
"l'occlusion culling que si vous envisagez réellement de l'utiliser, et pensez "
"si votre scène peut réellement bénéficier de l'occlusion culling. 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 plages de visibilité et des LODs de "
"maillages ([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é par défaut dans les modèles d'export Web. Elle peut être activée "
"en compilant des modèles d'export Web personnalisés avec "
"[code]module_raycast_enabled=yes[/code]."

msgid ""
"If [code]true[/code], the viewport will use the primary XR interface to "
"render XR output. When applicable this can result in a stereoscopic image and "
"the resulting render being output to a headset."
msgstr ""
"Si [code]true[/code], le viewport utilisera l'interface primaire XR pour "
"rendre la sortie XR. Le cas échéant, cela peut résulter en une image "
"stéréoscopique et l'envoi du rendu résultant vers un casque."

msgid ""
"The Variable Rate Shading (VRS) mode that is used for this viewport. Note, if "
"hardware does not support VRS this property is ignored."
msgstr ""
"Le mode Variable Rate Shading (VRS) qui est utilisé pour ce viewport. Notez, "
"si du matériel ne supporte pas le VRS, cette propriété est ignorée."

msgid ""
"Texture to use when [member vrs_mode] is set to [constant "
"Viewport.VRS_TEXTURE].\n"
"The texture [i]must[/i] use a lossless compression format so that colors can "
"be matched precisely. The following VRS densities are mapped to various "
"colors, with brighter colors representing a lower level of shading "
"precision:\n"
"[codeblock lang=text]\n"
"- 1×1 = rgb(0, 0, 0)     - #000000\n"
"- 1×2 = rgb(0, 85, 0)    - #005500\n"
"- 2×1 = rgb(85, 0, 0)    - #550000\n"
"- 2×2 = rgb(85, 85, 0)   - #555500\n"
"- 2×4 = rgb(85, 170, 0)  - #55aa00\n"
"- 4×2 = rgb(170, 85, 0)  - #aa5500\n"
"- 4×4 = rgb(170, 170, 0) - #aaaa00\n"
"- 4×8 = rgb(170, 255, 0) - #aaff00 - Not supported on most hardware\n"
"- 8×4 = rgb(255, 170, 0) - #ffaa00 - Not supported on most hardware\n"
"- 8×8 = rgb(255, 255, 0) - #ffff00 - Not supported on most hardware\n"
"[/codeblock]"
msgstr ""
"Texture à utiliser lorsque [member vrs_mode] est défini à [constant "
"Viewport.VRS_TEXTURE].\n"
"La texture [i]doit[/i] utiliser un format de compression sans perte afin que "
"les couleurs puissent être associées avec précision. Les densités VRS "
"suivantes sont associées à différentes couleurs, avec les couleurs plus vives "
"représentant un niveau inférieur de précision du shader :\n"
"[codeblock lang=text]\n"
"- 1×1 = rgb(0, 0, 0)     - #000000\n"
"- 1×2 = rgb(0, 85, 0)    - #005500\n"
"- 2×1 = rgb(85, 0, 0)    - #550000\n"
"- 2×2 = rgb(85, 85, 0)   - #555500\n"
"- 2×4 = rgb(85, 170, 0)  - #55aa00\n"
"- 4×2 = rgb(170, 85, 0)  - #aa5500\n"
"- 4×4 = rgb(170, 170, 0) - #aaaa00\n"
"- 4×8 = rgb(170, 255, 0) - #aaff00 - Non supporté sur la plupart des "
"matériels\n"
"- 8×4 = rgb(255, 170, 0) - #ffaa00 - Non supporté sur la plupart des "
"matériels\n"
"- 8×8 = rgb(255, 255, 0) - #ffff00 - Non supporté sur la plupart des "
"matériels\n"
"[/codeblock]"

msgid ""
"Sets the update mode for Variable Rate Shading (VRS) for the viewport. VRS "
"requires the input texture to be converted to the format usable by the VRS "
"method supported by the hardware. The update mode defines how often this "
"happens. If the GPU does not support VRS, or VRS is not enabled, this "
"property is ignored."
msgstr ""
"Définit le mode de mise à jour pour le Variable Rate Shading (VRS) pour le "
"viewport. Le VRS exige que la texture d'entrée soit convertie au format "
"utilisable par la méthode VRS supportée par le matériel. Le mode de mise à "
"jour définit combien de fois cela se produit. Si le GPU ne supporte pas le "
"VRS, ou si le VRS n'est pas activé, cette propriété est ignorée."

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 "The custom [World3D] which can be used as 3D environment source."
msgstr ""
"Le [World3D] personnalisé qui peut être utilisé comme source d'environnement "
"3D."

msgid ""
"Emitted when a Control node grabs keyboard focus.\n"
"[b]Note:[/b] A Control node losing focus doesn't cause this signal to be "
"emitted."
msgstr ""
"Émis lorsqu'un nœud Control récupère le focus du clavier.\n"
"[b]Note :[/b] Un nœud Control perdant le focus ne provoque pas l'émission de "
"ce signal."

msgid ""
"Emitted when the size of the viewport is changed, whether by resizing of "
"window, or some other means."
msgstr ""
"Émis lorsque la taille du viewport a changé, que ce soit en redimensionnant "
"la fenêtre, ou par d'autres moyens."

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 shadow map."

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é par jusqu'à 4 shadow maps."

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é par jusqu'à 16 shadow maps."

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é par jusqu'à 64 shadow maps."

msgid ""
"This quadrant will be split 256 ways and used by up to 256 shadow maps. "
"Unless the [member positional_shadow_atlas_size] is very high, the shadows in "
"this quadrant will be very low resolution."
msgstr ""
"Ce quadrant sera découpé en 256, et utilisé par jusqu'à 256 shadow maps. Sauf "
"si [member positional_shadow_atlas_size] est très élevé, les ombres dans ce "
"quadrant seront à très basse résolution."

msgid ""
"This quadrant will be split 1024 ways and used by up to 1024 shadow maps. "
"Unless the [member positional_shadow_atlas_size] is very high, the shadows in "
"this quadrant will be very low resolution."
msgstr ""
"Ce quadrant sera découpé en 1024, et utilisé par jusqu'à 1024 shadow maps. "
"Sauf si [member positional_shadow_atlas_size] est très élevé, les ombres de "
"ce quadrant seront à très basse résolution."

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

msgid ""
"Use bilinear scaling for the viewport's 3D buffer. The amount of scaling can "
"be set using [member scaling_3d_scale]. Values less than [code]1.0[/code] "
"will result in undersampling while values greater than [code]1.0[/code] will "
"result in supersampling. A value of [code]1.0[/code] disables scaling."
msgstr ""
"Utiliser une mise à l'échelle bilinéaire pour le buffer 3D du viewport. "
"L'échelle peut être définie en utilisant [member scaling_3d_scale]. Les "
"valeurs inférieures à [code]1.0[/code] entraîneront un sous-échantillonnage "
"tandis que les valeurs supérieures à [code]1.0[/code] entraîneront un sur-"
"échantillonage. Une valeur de [code]1.0[/code] désactive la mise à l'échelle."

msgid ""
"Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D "
"buffer. The amount of scaling can be set using [member scaling_3d_scale]. "
"Values less than [code]1.0[/code] will result in the viewport being upscaled "
"using FSR. Values greater than [code]1.0[/code] are not supported and "
"bilinear downsampling will be used instead. A value of [code]1.0[/code] "
"disables scaling."
msgstr ""
"Utiliser l'upscaling AMD Fidelity FX Super Resolution 1.0 pour le buffer 3D "
"du viewport. La quantité d'échelle peut être définie en utilisant [member "
"scaling_3d_scale]. Les valeurs inférieures à [code]1.0[/code] résulteront en "
"l'upscaling du viewport en utilisant le FSR. Les valeurs supérieures à "
"[code]1.0[/code] ne sont pas supportées et l'échantillonnage bilinéaire sera "
"utilisé à la place. Une valeur de [code]1.0[/code] désactive la mise à "
"l'échelle."

msgid ""
"Use the [url=https://developer.apple.com/documentation/metalfx/"
"mtlfxspatialscaler#overview]MetalFX spatial upscaler[/url] for the viewport's "
"3D buffer.\n"
"The amount of scaling can be set using [member scaling_3d_scale].\n"
"Values less than [code]1.0[/code] will result in the viewport being upscaled "
"using MetalFX. Values greater than [code]1.0[/code] are not supported and "
"bilinear downsampling will be used instead. A value of [code]1.0[/code] "
"disables scaling.\n"
"More information: [url=https://developer.apple.com/documentation/"
"metalfx]MetalFX[/url].\n"
"[b]Note:[/b] Only supported when the Metal rendering driver is in use, which "
"limits this scaling mode to macOS and iOS."
msgstr ""
"Utiliser l'[url=https://developer.apple.com/documentation/metalfx/"
"mtlfxspatialscaler#overview]upscaler spatial MetalFX[/url] pour le buffer 3D "
"du viewport.\n"
"La quantité d'échelle peut être définie en utilisant [member "
"scaling_3d_scale].\n"
"Les valeurs inférieures à [code]1.0[/code] résulteront en l'upscaling du "
"viewport en utilisant MetalFX. Les valeurs supérieures à [code]1.0[/code] ne "
"sont pas supportées et l'échantillonnage bilinéaire sera utilisé à la place. "
"Une valeur de [code]1.0[/code] désactive la mise à l'échelle.\n"
"Plus d'informations : [url=https://developer.apple.com/documentation/"
"metalfx]MetalFX[/url].\n"
"[b]Note :[/b] Seulement supporté lorsque le pilote de rendu Metal est "
"utilisé, ce qui limite ce mode d'échelle à macOS et iOS."

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

msgid ""
"Multisample antialiasing mode disabled. This is the default value, and is "
"also the fastest setting."
msgstr ""
"Mode d’anticrénelage multi-échantillion désactivé. Il s'agit de la valeur par "
"défaut, et aussi du paramètre le plus rapide."

msgid ""
"Use 2× Multisample Antialiasing. This has a moderate performance cost. It "
"helps reduce aliasing noticeably, but 4× MSAA still looks substantially "
"better."
msgstr ""
"Utiliser l'anti-crénelage multi-échantillion ×2 (×2 MSAA). Cela a un coût de "
"performance modéré. Il aide à réduire le crénelage de façon notable, mais le "
"MSAA 4× est toujours beaucoup plus beau."

msgid ""
"Use 4× Multisample Antialiasing. This has a significant performance cost, and "
"is generally a good compromise between performance and quality."
msgstr ""
"Utiliser l'anti-crénelage multi-échantillion ×4 (×4 MSAA). Cela a un coût de "
"performance significatif, et est généralement un bon compromis entre "
"performances et qualité."

msgid ""
"Use 8× Multisample Antialiasing. This has a very high performance cost. The "
"difference between 4× and 8× MSAA may not always be visible in real gameplay "
"conditions. Likely unsupported on low-end and older hardware."
msgstr ""
"Utiliser l'anti-crénelage multi-échantillion ×8 (×8 MSAA). Cela a un très "
"haut coût sur les performances. La différence entre la MSAA ×4 et ×8 n'est "
"pas toujours visible en condition de gameplay réelles. Probablement non "
"supporté sur du matériel ancien ou bas de gamme."

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 ""
"Objects are displayed without textures and only with lighting information.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode."
msgstr ""
"Les objets sont affichés sans texture et seulement avec des informations "
"d'éclairage.\n"
"[b]Note :[/b] Lors de l'utilisation de ce mode de dessin de débogage, les "
"shaders personnalisés sont ignorés puisque tous les matériaux de la scène "
"utilisent temporairement un matériau de débogage. Cela signifie que le "
"résultat des fonctions de shader personnalisés (comme le déplacement de "
"sommets) ne sera plus visible lors de l'utilisation de ce mode de dessin de "
"débogage."

msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
"are wasting performance on drawing pixels that are being hidden behind "
"others.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode."
msgstr ""
"Les objets sont affichés en semi-transparent avec un mélange additif afin que "
"vous puissiez voir où ils dessinent les uns sur les autres. Un sur-dessin "
"plus élevé signifie que vous perdez des performances sur le dessin de pixels "
"qui sont cachés derrière d'autres.\n"
"[b]Note :[/b] Lors de l'utilisation de ce mode de dessin de débogage, les "
"shaders personnalisés sont ignorés puisque tous les matériaux de la scène "
"utilisent temporairement un matériau de débogage. Cela signifie que le "
"résultat des fonctions de shader personnalisés (comme le déplacement de "
"sommets) ne sera plus visible lors de l'utilisation de ce mode de dessin de "
"débogage."

msgid ""
"Objects are displayed as wireframe models.\n"
"[b]Note:[/b] [method RenderingServer.set_debug_generate_wireframes] must be "
"called before loading any meshes for wireframes to be visible when using the "
"Compatibility renderer."
msgstr ""
"Les objets sont affichés en tant que modèles en fil de fer.\n"
"[b]Note :[/b] [method RenderingServer.set_debug_generate_wireframes] doit "
"être appelée avant de charger tout maillage pour que les fils de fer soient "
"visibles lors de l'utilisation de la méthode de rendu Compatibilité."

msgid ""
"Objects are displayed without lighting information and their textures "
"replaced by normal mapping.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Les objets sont affichés sans information d'éclairage et leurs textures sont "
"remplacées par du normal mapping.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
"Dessine l'atlas des ombres qui stocke les ombres des [DirectionalLight3D]s "
"dans le quadrant supérieur gauche du [Viewport]."

msgid ""
"Draws the scene luminance buffer (if available) in the upper left quadrant of "
"the [Viewport].\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Dessine le buffer de luminance de la scène (si disponible) dans le quadrant "
"supérieur gauche du [Viewport].\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the screen-space ambient occlusion texture instead of the scene so that "
"you can clearly see how it is affecting objects. In order for this display "
"mode to work, you must have [member Environment.ssao_enabled] set in your "
"[WorldEnvironment].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine la texture d'occlusion ambiante de l'espace-écran au lieu de la scène "
"afin que vous puissiez voir clairement comment elle affecte les objets. Pour "
"que ce mode d'affichage fonctionne, vous devez avoir [member "
"Environment.ssao_enabled] défini dans votre [WorldEnvironment].\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the screen-space indirect lighting texture instead of the scene so that "
"you can clearly see how it is affecting objects. In order for this display "
"mode to work, you must have [member Environment.ssil_enabled] set in your "
"[WorldEnvironment].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine la texture d'éclairage indirect de l'espace-écran au lieu de la scène "
"afin que vous puissiez voir clairement comment elle affecte les objets. Pour "
"que ce mode d'affichage fonctionne, vous devez avoir [member "
"Environment.ssil_enabled] défini dans votre [WorldEnvironment].\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the cascades used to render signed distance field global illumination "
"(SDFGI).\n"
"Does nothing if the current environment's [member Environment.sdfgi_enabled] "
"is [code]false[/code].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine les cascades utilisées pour rendre l'illumination globale avec champ "
"de distance signée (SDFGI).\n"
"Ne fait rien si le [member Environment.sdfgi_enabled] de l'environnement "
"actuel vaut [code]false[/code].\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the buffer used for global illumination from [VoxelGI] or SDFGI. "
"Requires [VoxelGI] (at least one visible baked VoxelGI node) or SDFGI "
"([member Environment.sdfgi_enabled]) to be enabled to have a visible effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine le buffer utilisé pour l'illumination globale de [VoxelGI] ou de "
"SDFGI. Nécessite que [VoxelGI] (au moins un nœud VoxelGI pré-calculé visible) "
"ou que SDFGI ([member Environment.sdfgi_enabled]) soit activé pour avoir un "
"effet visible.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws all of the objects at their highest polycount regardless of their "
"distance from the camera. No low level of detail (LOD) is applied."
msgstr ""
"Dessine tous les objets à leur compte de polygones le plus haut "
"indépendamment de leur distance de la caméra. Aucun niveau de détail faible "
"(LOD) n'est appliqué."

msgid ""
"Draws the cluster used by [OmniLight3D] nodes to optimize light rendering.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine le cluster utilisé par les nœuds [OmniLight3D] pour optimiser le "
"rendu de la lumière.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the cluster used by [SpotLight3D] nodes to optimize light rendering.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine le cluster utilisé par les nœuds [SpotLight3D] pour optimiser le "
"rendu de la lumière.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the cluster used by [Decal] nodes to optimize decal rendering.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine le cluster utilisé par les nœuds [Decal] pour optimiser le rendu des "
"décalques.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the cluster used by [ReflectionProbe] nodes to optimize reflection "
"probes.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine le cluster utilisé par les nœuds [ReflectionProbe] pour optimiser les "
"sondes de réflexion.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the buffer used for occlusion culling.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Dessine le buffer utilisé pour l'occlusion culling.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation des méthodes de rendu "
"Forward+ ou Mobile."

msgid ""
"Draws vector lines over the viewport to indicate the movement of pixels "
"between frames.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Dessine des lignes de vecteur sur le viewport pour indiquer le mouvement des "
"pixels entre les trames.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation de la méthode de rendu "
"Forward+."

msgid ""
"Draws the internal resolution buffer of the scene in linear colorspace before "
"tonemapping or post-processing is applied.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Dessine le buffer de résolution interne de la scène dans l'espace de couleur "
"linéaire avant que le tonemapping ou du post-traitement soit appliqué.\n"
"[b]Note :[/b] Seulement supporté lors de l'utilisation des méthodes de rendu "
"Forward+ ou Mobile."

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 "The signed distance field only covers the viewport's own rectangle."
msgstr ""
"Le champ de distance signée ne couvre que le propre rectangle du viewport."

msgid ""
"The signed distance field is expanded to cover 20% of the viewport's size "
"around the borders."
msgstr ""
"Le champ de distance signée est étendu pour couvrir 20% de la taille du "
"viewport autour des bordures."

msgid ""
"The signed distance field is expanded to cover 50% of the viewport's size "
"around the borders."
msgstr ""
"Le champ de distance signée est étendu pour couvrir 50% de la taille du "
"viewport autour des bordures."

msgid ""
"The signed distance field is expanded to cover 100% (double) of the "
"viewport's size around the borders."
msgstr ""
"Le champ de distance signée est étendu pour couvrir 100% (le double) de la "
"taille du viewport autour des bordures."

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

msgid "The signed distance field is rendered at full resolution."
msgstr "Le champ de distance signée est rendu à pleine résolution."

msgid ""
"The signed distance field is rendered at half the resolution of this viewport."
msgstr ""
"Le champ de distance signée est rendu à la moitié de la résolution de ce "
"viewport."

msgid ""
"The signed distance field is rendered at a quarter the resolution of this "
"viewport."
msgstr ""
"Le champ de distance signée est rendu au quart de la résolution de ce "
"viewport."

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

msgid "Variable Rate Shading is disabled."
msgstr "Le Variable Rate Shading est désactivé."

msgid ""
"Variable Rate Shading uses a texture. Note, for stereoscopic use a texture "
"atlas with a texture for each view."
msgstr ""
"Le Variable Rate Shading utilise une texture. Notez qu'en stéréoscopique, il "
"faut utiliser un atlas de textures avec une texture pour chaque vue."

msgid ""
"Variable Rate Shading's texture is supplied by the primary [XRInterface]."
msgstr ""
"La texture du Variable Rate Shading est fournie par la [XRInterface] primaire."

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 "Provides the content of a [Viewport] as a dynamic texture."
msgstr "Fournit le contenu d'un [Viewport] en tant que texture dynamique."

msgid ""
"The path to the [Viewport] node to display. This is relative to the local "
"scene root (see [method Resource.get_local_scene]), [b]not[/b] to the nodes "
"that use this texture.\n"
"[b]Note:[/b] In the editor, this path is automatically updated when the "
"target viewport or one of its ancestors is renamed or moved. At runtime, this "
"path may not automatically update if the scene root cannot be found."
msgstr ""
"Le chemin vers le nœud [Viewport] à afficher. Ceci est relatif à la racine de "
"la scène locale (voir [method Resource.get_local_scene]), [b]pas[/b] aux "
"nœuds qui utilisent cette texture.\n"
"[b]Note :[/b] Dans l'éditeur, ce chemin est automatiquement mis à jour "
"lorsque le viewport cible ou l'un de ses ancêtres est renommé ou déplacé. "
"Durant l'exécution, ce chemin peut ne pas être automatiquement mis à jour si "
"la racine de la scène ne peut pas être trouvée."

msgid ""
"A rectangular region of 2D space that, when visible on screen, enables a "
"target node."
msgstr ""
"Une région rectangulaire de l'espace 2D qui, lorsqu'elle est visible à "
"l'écran, active un nœud cible."

msgid ""
"[VisibleOnScreenEnabler2D] contains a rectangular region of 2D space and a "
"target node. The target node will be automatically enabled (via its [member "
"Node.process_mode] property) when any part of this region becomes visible on "
"the screen, and automatically disabled otherwise. This can for example be "
"used to activate enemies only when the player approaches them.\n"
"See [VisibleOnScreenNotifier2D] if you only want to be notified when the "
"region is visible on screen.\n"
"[b]Note:[/b] [VisibleOnScreenEnabler2D] uses the render culling code to "
"determine whether it's visible on screen, so it won't function unless [member "
"CanvasItem.visible] is set to [code]true[/code]."
msgstr ""
"[VisibleOnScreenEnabler2D] contient une région rectangulaire de l'espace 2D "
"et un nœud cible. Le nœud cible sera automatiquement activé (via sa propriété "
"[member Node.process_mode]) lorsque toute partie de cette région devient "
"visible à l'écran, et automatiquement désactivé sinon. Cela peut par exemple "
"être utilisé pour activer les ennemis seulement lorsque le joueur les "
"approche.\n"
"Voir [VisibleOnScreenNotifier2D] si vous voulez seulement être informé "
"lorsque la région est visible à l'écran.\n"
"[b]Note :[/b] [VisibleOnScreenEnabler2D] utilise le code du render culling "
"pour déterminer s'il est visible à l'écran, ainsi il ne fonctionnera pas sauf "
"si [member CanvasItem.visible] est défini à [code]true[/code]."

msgid ""
"Determines how the target node is enabled. Corresponds to [enum "
"Node.ProcessMode]. When the node is disabled, it always uses [constant "
"Node.PROCESS_MODE_DISABLED]."
msgstr ""
"Détermine comment le nœud cible est activé. Correspond à [enum "
"Node.ProcessMode]. Lorsque le nœud est désactivé, il utilise toujours "
"[constant Node.PROCESS_MODE_DISABLED]."

msgid ""
"The path to the target node, relative to the [VisibleOnScreenEnabler2D]. The "
"target node is cached; it's only assigned when setting this property (if the "
"[VisibleOnScreenEnabler2D] is inside the scene tree) and every time the "
"[VisibleOnScreenEnabler2D] enters the scene tree. If the path is empty, no "
"node will be affected. If the path is invalid, an error is also generated."
msgstr ""
"Le chemin vers le nœud cible, relatif au [VisibleOnScreenEnabler2D]. Le nœud "
"cible est mis en cache, il n'est assigné que lors du réglage de cette "
"propriété (si le [VisibleOnScreenEnabler2D] est à l'intérieur de "
"l'arborescence de la scène) et à chaque fois que le "
"[VisibleOnScreenEnabler2D] entre dans l'arborescence de la scène. Si le "
"chemin est vide, aucun nœud ne sera affecté. Si le chemin est invalide, une "
"erreur est également générée."

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 ""
"A box-shaped region of 3D space that, when visible on screen, enables a "
"target node."
msgstr ""
"Une région en forme de boîte de l'espace 3D qui, lorsqu'elle est visible à "
"l'écran, active un nœud cible."

msgid ""
"[VisibleOnScreenEnabler3D] contains a box-shaped region of 3D space and a "
"target node. The target node will be automatically enabled (via its [member "
"Node.process_mode] property) when any part of this region becomes visible on "
"the screen, and automatically disabled otherwise. This can for example be "
"used to activate enemies only when the player approaches them.\n"
"See [VisibleOnScreenNotifier3D] if you only want to be notified when the "
"region is visible on screen.\n"
"[b]Note:[/b] [VisibleOnScreenEnabler3D] uses an approximate heuristic that "
"doesn't take walls and other occlusion into account, unless occlusion culling "
"is used. It also won't function unless [member Node3D.visible] is set to "
"[code]true[/code]."
msgstr ""
"[VisibleOnScreenEnabler3D] contient une région en forme de boîte de l'espace "
"3D et un nœud cible. Le nœud cible sera automatiquement activé (via sa "
"propriété [member Node.process_mode]) lorsque toute partie de cette région "
"devient visible à l'écran, et automatiquement désactivé sinon. Cela peut par "
"exemple être utilisé pour activer les ennemis seulement lorsque le joueur les "
"approche.\n"
"Voir [VisibleOnScreenNotifier3D] si vous voulez seulement être informé "
"lorsque la région est visible à l'écran.\n"
"[b]Note :[/b] [VisibleOnScreenEnabler3D] utilise une heuristique "
"approximative qui ne prend pas en compte les murs et les autres occlusions, à "
"moins que l'occlusion culling ne soit utilisé. Aussi, elle ne fonctionnera "
"pas à moins que [member Node3D.visible] ne soit défini à [code]true[/code]."

msgid ""
"The path to the target node, relative to the [VisibleOnScreenEnabler3D]. The "
"target node is cached; it's only assigned when setting this property (if the "
"[VisibleOnScreenEnabler3D] is inside the scene tree) and every time the "
"[VisibleOnScreenEnabler3D] enters the scene tree. If the path is empty, no "
"node will be affected. If the path is invalid, an error is also generated."
msgstr ""
"Le chemin vers le nœud cible, relatif au [VisibleOnScreenEnabler3D]. Le nœud "
"cible est mis en cache, il n'est assigné que lors du réglage de cette "
"propriété (si le [VisibleOnScreenEnabler3D] est à l'intérieur de "
"l'arborescence de la scène) et à chaque fois que le "
"[VisibleOnScreenEnabler3D] entre dans l'arborescence de la scène. Si le "
"chemin est vide, aucun nœud ne sera affecté. Si le chemin est invalide, une "
"erreur est également générée."

msgid ""
"A rectangular region of 2D space that detects whether it is visible on screen."
msgstr ""
"Une région rectangulaire de l'espace 2D qui détecte s'il est visible à "
"l'écran."

msgid ""
"[VisibleOnScreenNotifier2D] represents a rectangular region of 2D space. When "
"any part of this region becomes visible on screen or in a viewport, it will "
"emit a [signal screen_entered] signal, and likewise it will emit a [signal "
"screen_exited] signal when no part of it remains visible.\n"
"If you want a node to be enabled automatically when this region is visible on "
"screen, use [VisibleOnScreenEnabler2D].\n"
"[b]Note:[/b] [VisibleOnScreenNotifier2D] uses the render culling code to "
"determine whether it's visible on screen, so it won't function unless [member "
"CanvasItem.visible] is set to [code]true[/code]."
msgstr ""
"[VisibleOnScreenNotifier2D] représente une région rectangulaire de l'espace "
"2D qui détecte s'il est visible à l'écran. Lorsqu'une partie de cette région "
"devient visible à l'écran ou dans un viewport, il émettra un signal [signal "
"screen_entered], et de même il émettra un signal [signal screen_exited] "
"lorsqu'aucune partie de celle-ci n'est visible.\n"
"Si vous voulez qu'un nœud soit activé automatiquement lorsque cette région "
"est visible à l'écran, utilisez [VisibleOnScreenEnabler2D].\n"
"[b]Note :[/b] [VisibleOnScreenNotifier2D] utilise le code du render culling "
"pour déterminer s'il est visible à l'écran, ainsi il ne fonctionnera pas sauf "
"si [member CanvasItem.visible] est défini à [code]true[/code]."

msgid "The VisibleOnScreenNotifier2D's bounding rectangle."
msgstr "Le rectangle délimitant du VisibleOnScreenNotifier2D."

msgid ""
"If [code]true[/code], shows the rectangle area of [member rect] in the editor "
"with a translucent magenta fill. Unlike changing the visibility of the "
"VisibleOnScreenNotifier2D, this does not affect the screen culling detection."
msgstr ""
"Si [code]true[/code], affiche la zone du rectangle de [member rect] dans "
"l'éditeur avec un remplissage magenta translucide. Contrairement à changer la "
"visibilité du VisibleOnScreenNotifier2D, cela n'affecte pas la détection du "
"screen culling."

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 ""
"A box-shaped region of 3D space that detects whether it is visible on screen."
msgstr ""
"Une région en forme de boîte de l'espace 3D qui détecte s'il est visible à "
"l'écran."

msgid ""
"[VisibleOnScreenNotifier3D] represents a box-shaped region of 3D space. When "
"any part of this region becomes visible on screen or in a [Camera3D]'s view, "
"it will emit a [signal screen_entered] signal, and likewise it will emit a "
"[signal screen_exited] signal when no part of it remains visible.\n"
"If you want a node to be enabled automatically when this region is visible on "
"screen, use [VisibleOnScreenEnabler3D].\n"
"[b]Note:[/b] [VisibleOnScreenNotifier3D] uses an approximate heuristic that "
"doesn't take walls and other occlusion into account, unless occlusion culling "
"is used. It also won't function unless [member Node3D.visible] is set to "
"[code]true[/code]."
msgstr ""
"[VisibleOnScreenNotifier3D] représente une région en forme de boîte de "
"l'espace 3D. Lorsqu'une partie de cette région devient visible à l'écran ou "
"dans la vue d'une [Camera3D], il émettra un signal [signal screen_entered], "
"et de même il émettra un signal [signal screen_exited] lorsqu'aucune partie "
"de celle-ci n'est visible.\n"
"Si vous voulez qu'un nœud soit activé automatiquement lorsque cette région "
"est visible à l'écran, utilisez [VisibleOnScreenEnabler3D].\n"
"[b]Note :[/b] [VisibleOnScreenNotifier3D] utilise une heuristique "
"approximative qui ne prend pas en compte les murs et les autres occlusions, à "
"moins que l'occlusion culling ne soit utilisé. Aussi, elle ne fonctionnera "
"pas à moins que [member Node3D.visible] ne soit défini à [code]true[/code]."

msgid "The [VisibleOnScreenNotifier3D]'s bounding box."
msgstr "La boîte délimitante du [VisibleOnScreenNotifier3D]."

msgid "Emitted when the [VisibleOnScreenNotifier3D] enters the screen."
msgstr "Émis lorsque le [VisibleOnScreenNotifier3D] entre dans l'écran."

msgid "Emitted when the [VisibleOnScreenNotifier3D] exits the screen."
msgstr "Émis lorsque le [VisibleOnScreenNotifier3D] quitte l’écran."

msgid "Parent of all visual 3D nodes."
msgstr "Le parent de tous les nœuds visuels 3D."

msgid ""
"The [VisualInstance3D] is used to connect a resource to a visual "
"representation. All visual 3D nodes inherit from the [VisualInstance3D]. In "
"general, you should not access the [VisualInstance3D] properties directly as "
"they are accessed and managed by the nodes that inherit from "
"[VisualInstance3D]. [VisualInstance3D] is the node representation of the "
"[RenderingServer] instance."
msgstr ""
"La [VisualInstance3D] est utilisée pour connecter une ressource à une "
"représentation visuelle. Tous les nœuds 3D visuels héritent de "
"[VisualInstance3D]. En général, vous ne devriez pas accéder aux propriétés de "
"la [VisualInstance3D] directement car elles sont accédées et gérées par les "
"nœuds qui héritent de [VisualInstance3D]. [VisualInstance3D] est la "
"représentation en nœud de l'instance [RenderingServer]."

msgid ""
"Returns the [AABB] (also known as the bounding box) for this "
"[VisualInstance3D]."
msgstr ""
"Renvoie la [AABB] (aussi connue comme la boîte délimitante) pour cette "
"[VisualInstance3D]."

msgid ""
"Returns the RID of the resource associated with this [VisualInstance3D]. For "
"example, if the Node is a [MeshInstance3D], this will return the RID of the "
"associated [Mesh]."
msgstr ""
"Renvoie le RID de la ressource associée avec cette [VisualInstance3D]. Par "
"exemple, si le nœud est une [MeshInstance3D], cela renvoie le RID du [Mesh] "
"associé."

msgid ""
"Returns the RID of this instance. This RID is the same as the RID returned by "
"[method RenderingServer.instance_create]. This RID is needed if you want to "
"call [RenderingServer] functions directly on this [VisualInstance3D]."
msgstr ""
"Renvoie le RID de cette instance. Ce RID est le même que le RID renvoyé par "
"[method RenderingServer.instance_create]. Ce RID est nécessaire si vous "
"voulez appeler les fonctions de [RenderingServer] directement sur cette "
"[VisualInstance3D]."

msgid ""
"Returns whether or not the specified layer of the [member layers] is enabled, "
"given a [param layer_number] between 1 and 20."
msgstr ""
"Renvoie si la couche spécifiée de [member layers] est activée ou non, compte "
"tenu d'un numéro de couche [param layer_number] entre 1 et 20."

msgid ""
"Sets the resource that is instantiated by this [VisualInstance3D], which "
"changes how the engine handles the [VisualInstance3D] under the hood. "
"Equivalent to [method RenderingServer.instance_set_base]."
msgstr ""
"Définit la ressource qui est instanciée par cette [VisualInstance3D], ce qui "
"modifie la façon dont le moteur gère la [VisualInstance3D] en interne. "
"Équivalent à [method RenderingServer.instance_set_base]."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member layers], given a [param layer_number] between 1 and 20."
msgstr ""
"Selon [param value], active ou désactive la couche spécifiée dans [member "
"layers], selon un numéro de couche [param layer_number] entre 1 et 20."

msgid ""
"The amount by which the depth of this [VisualInstance3D] will be adjusted "
"when sorting by depth. Uses the same units as the engine (which are typically "
"meters). Adjusting it to a higher value will make the [VisualInstance3D] "
"reliably draw on top of other [VisualInstance3D]s that are otherwise "
"positioned at the same spot. To ensure it always draws on top of other "
"objects around it (not positioned at the same spot), set the value to be "
"greater than the distance between this [VisualInstance3D] and the other "
"nearby [VisualInstance3D]s."
msgstr ""
"La quantité par laquelle la profondeur de cette [VisualInstance3D] sera "
"ajustée lors du tri par profondeur. Utilise les mêmes unités que le moteur "
"(qui sont généralement des mètres). L'ajuster à une valeur plus élevée fera "
"que les [VisualInstance3D] se dessinent de manière fiable sur les autres "
"[VisualInstance3D] qui sont sinon positionnées au même endroit. Pour "
"s'assurer qu'elle se dessine toujours au-dessus des autres objets autour "
"d'elle (non positionnés au même endroit), définissez la valeur pour qu'elle "
"soit supérieure à la distance entre cette [VisualInstance3D] et les autres "
"[VisualInstance3D] à proximité."

msgid ""
"If [code]true[/code], the object is sorted based on the [AABB] center. The "
"object will be sorted based on the global position otherwise.\n"
"The [AABB] center based sorting is generally more accurate for 3D models. The "
"position based sorting instead allows to better control the drawing order "
"when working with [GPUParticles3D] and [CPUParticles3D]."
msgstr ""
"Si [code]true[/code], l'objet est trié en fonction du centre de l'[AABB]. "
"L'objet sera trié en fonction de la position globale sinon.\n"
"Le tri basé sur le centre de la [AABB] est généralement plus précis pour les "
"modèles 3D. Le tri basé sur la position permet à la place de mieux contrôler "
"l'ordre de dessin lorsqu'on travaille avec [GPUParticles3D] et "
"[CPUParticles3D]."

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 TSV en équivalent RGB."

msgid "Converts RGB vector to HSV equivalent."
msgstr "Convertit le vecteur RGB en équivalent TSV."

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 "A [Cubemap] sampling node to be used within the visual shader graph."
msgstr ""
"Un nœud d'échantillonnage de [Cubemap] à utiliser 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 ""
"The [Cubemap] texture to sample when using [constant SOURCE_TEXTURE] as "
"[member source]."
msgstr ""
"La texture [Cubemap] à échantillonner lors de l'utilisation de [constant "
"SOURCE_TEXTURE] comme [member source]."

msgid "Defines which source should be used for the sampling."
msgstr "Définit quelle source devrait être utilisée pour l'échantillonnage."

msgid "Defines the type of data provided by the source texture."
msgstr "Définit le type de données fournies par la texture source."

msgid ""
"Use the [Cubemap] set via [member cube_map]. If this is set to [member "
"source], the [code]samplerCube[/code] port is ignored."
msgstr ""
"Utilise la [Cubemap] définie via [member cube_map]. Si cela est défini à "
"[member source], le port [code]samplerCube[/code] est ignoré."

msgid ""
"Use the [Cubemap] sampler reference passed via the [code]samplerCube[/code] "
"port. If this is set to [member source], the [member cube_map] texture is "
"ignored."
msgstr ""
"Utilise la référence de l'échantillonneur [Cubemap] passée via le port "
"[code]samplerCube[/code]. Si cela est défini à [member source], la texture "
"[member cube_map] est ignorée."

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 "A [Cubemap] parameter node to be used within the visual shader graph."
msgstr ""
"Un nœud de paramètre [Cubemap] à utiliser dans le graphe de shader visuel."

msgid ""
"Translated to [code]uniform samplerCube[/code] in the shader language. The "
"output value can be used as port for [VisualShaderNodeCubemap]."
msgstr ""
"Sera traduit en [code]uniform samplerCube[/code] dans le langage du shader. "
"La valeur de sortie peut être utilisée comme port pour "
"[VisualShaderNodeCubemap]."

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 ""
"[VoxelGI]s are used to provide high-quality real-time indirect light and "
"reflections to scenes. They precompute the effect of objects that emit light "
"and the effect of static geometry to simulate the behavior of complex light "
"in real-time. [VoxelGI]s need to be baked before having a visible effect. "
"However, once baked, dynamic objects will receive light from them. "
"Furthermore, lights can be fully dynamic or baked.\n"
"[b]Note:[/b] [VoxelGI] is only supported in the Forward+ rendering method, "
"not Mobile or Compatibility.\n"
"[b]Procedural generation:[/b] [VoxelGI] can be baked in an exported project, "
"which makes it suitable for procedurally generated or user-built levels as "
"long as all the geometry is generated in advance. For games where geometry is "
"generated at any time during gameplay, SDFGI is more suitable (see [member "
"Environment.sdfgi_enabled]).\n"
"[b]Performance:[/b] [VoxelGI] is relatively demanding on the GPU and is not "
"suited to low-end hardware such as integrated graphics (consider [LightmapGI] "
"instead). To improve performance, adjust [member ProjectSettings.rendering/"
"global_illumination/voxel_gi/quality] and enable [member "
"ProjectSettings.rendering/global_illumination/gi/use_half_resolution] in the "
"Project Settings. To provide a fallback for low-end hardware, consider adding "
"an option to disable [VoxelGI] in your project's options menus. A [VoxelGI] "
"node can be disabled by hiding it.\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. To further "
"prevent light leaks, you can also strategically place temporary "
"[MeshInstance3D] nodes with their [member GeometryInstance3D.gi_mode] set to "
"[constant GeometryInstance3D.GI_MODE_STATIC]. These temporary nodes can then "
"be hidden after baking the [VoxelGI] node."
msgstr ""
"Les [VoxelGI]s sont utilisées pour fournir une lumière indirecte en temps "
"réel et en haute qualité à des scènes. Elles pré-calculent les effets "
"d'objets qui émettent de la lumière et l'effet de la géométrie statique pour "
"simuler le comportement de lumières complexes en temps réel. Les [VoxelGI]s "
"doivent être pré-calculées avant d'avoir un effet visible. Cependant, mais "
"une fois calculées, les objets dynamiques recevront d'elles de la lumière. De "
"plus, des lumières peuvent être entièrement dynamiques ou pré-calculées.\n"
"[b]Note :[/b] [VoxelGI] n'est prise en charge que dans la méthode de rendu "
"Forward+, pas Mobile ou Compatibilité.\n"
"[b]Génération procédurale :[/b] [VoxelGI] peut être pré-calculée dans un "
"projet exporté, ce qui la rend adaptée pour des niveaux générés de manière "
"procédurale ou construits par l'utilisateur tant que la géométrie est générée "
"à l'avance. Pour les jeux où la géométrie est générée à tout moment du "
"gameplay, la SDFGI est plus adaptée (voir [member "
"Environment.sdfgi_enabled]).\n"
"[b]Performance :[/b] [VoxelGI] est relativement exigeante sur le GPU et n'est "
"pas adaptée au matériel d'entrée de gamme tel que les cartes graphiques "
"intégrées (utilisez plutôt [LightmapGI]). Pour améliorer les performances, "
"ajustez [member ProjectSettings.rendering/global_illumination/voxel_gi/"
"quality] et activez [member ProjectSettings.rendering/global_illumination/gi/"
"use_half_resolution] dans les Paramètres du projet. Pour fournir une solution "
"de repli au matériel d'entrée de gamme, envisagez d'ajouter une option pour "
"désactiver [VoxelGI] dans les menus d'options de votre projet. Un nœud "
"[VoxelGI] peut être désactivé en le cachant..\n"
"[b]Note :[/b] Les maillages doivent avoir des murs suffisamment épais pour "
"éviter les fuites de lumière à travers (évitez les murs qui n'ont qu'un seul "
"côté). Pour les niveaux intérieurs, enfermez votre géométrie du niveau dans "
"une boîte suffisamment grande et bouchez les trous pour fermer le maillage. "
"Pour éviter encore plus les fuites de lumière, vous pouvez également placer "
"stratégiquement des nœuds [MeshInstance3D] temporaires avec leur [member "
"GeometryInstance3D.gi_mode] défini à [constant "
"GeometryInstance3D.GI_MODE_STATIC]. Ces nœuds temporaires peuvent ensuite "
"être cachés après avoir pré-calculé le nœud [VoxelGI]."

msgid "Using Voxel global illumination"
msgstr "Utiliser l'illumination globale Voxel"

msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_STATIC] and [Light3D]s marked with either "
"[constant Light3D.BAKE_STATIC] or [constant Light3D.BAKE_DYNAMIC]. If [param "
"create_visual_debug] is [code]true[/code], after baking the light, this will "
"generate a [MultiMesh] that has a cube representing each solid cell with each "
"cube colored to the cell's albedo color. This can be used to visualize the "
"[VoxelGI]'s data and debug any issues that may be occurring.\n"
"[b]Note:[/b] [method bake] works from the editor and in exported projects. "
"This makes it suitable for procedurally generated or user-built levels. "
"Baking a [VoxelGI] node generally takes from 5 to 20 seconds in most scenes. "
"Reducing [member subdiv] can speed up baking.\n"
"[b]Note:[/b] [GeometryInstance3D]s and [Light3D]s must be fully ready before "
"[method bake] is called. If you are procedurally creating those and some "
"meshes or lights are missing from your baked [VoxelGI], use "
"[code]call_deferred(\"bake\")[/code] instead of calling [method bake] "
"directly."
msgstr ""
"Pré-calcul l'effet de toutes les [GeometryInstance3D]s marquées avec "
"[constant GeometryInstance3D.GI_MODE_STATIC] et les [Light3D]s marquées avec "
"[constant Light3D.BAKE_STATIC] ou [constant Light3D.BAKE_DYNAMIC]. Si [param "
"create_visual_debug] vaut [code]true[/code], après avoir pré-calculé la "
"lumière, cela générera un [MultiMesh] qui a un cube représentant chaque "
"cellule solide avec chaque cube coloré à la couleur d'albedo de la cellule. "
"Ceci peut être utilisé pour visualiser les données de [VoxelGI] et déboguer "
"toute problème qui pourrait se produire.\n"
"[b]Note :[/b] [method bake] fonctionne depuis l'éditeur et dans des projets "
"exportés. Cela le rend adapté aux niveaux générés procéduralement ou "
"construits par l'utilisateur. Pré-calculer un noeud [VoxelGI] prend "
"généralement de 5 à 20 secondes dans la plupart des scènes. Réduire [member "
"subdiv] peut accélérer le calcul.\n"
"[b]Note :[/b] Les [GeometryInstance3D]s et les [Light3D]s doivent être "
"entièrement prêtes avant que [method bake] soit appelée. Si vous créez de "
"façon procédurale celles-ci et que certains maillages ou lumières sont "
"manquants de votre [VoxelGI] pré-calculée, utilisez "
"[code]call_deferred(\"bake\")[/code] au lieu d'appeler [method bake] "
"directement."

msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
msgstr "Appelle [method bake] avec [code]create_visual_debug[/code] activé."

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 [VoxelGI] 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 [VoxelGI] aura des artéfacts de bande ou peut avoir des artéfacts de sur-"
"exposition."

msgid "The [VoxelGIData] resource that holds the data for this [VoxelGI]."
msgstr "La ressource [VoxelGIData] qui contient les données de ce [VoxelGI]."

msgid ""
"Number of times to subdivide the grid that the [VoxelGI] operates on. A "
"higher number results in finer detail and thus higher visual quality, while "
"lower numbers result in better performance."
msgstr ""
"Nombre de sous-divisions de la grille sur laquelle le [VoxelGI] opère. Un "
"nombre plus élevé résulte en un détail plus fin et donc une qualité visuelle "
"plus élevée, tandis que les nombres plus bas résultent en une meilleure "
"performance."

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 ""
"Contains baked voxel global illumination data for use in a [VoxelGI] node."
msgstr ""
"Contient des données d'illumination globale de voxel pré-calculées pour une "
"utilisation dans un nœud [VoxelGI]."

msgid ""
"[VoxelGIData] contains baked voxel global illumination for use in a [VoxelGI] "
"node. [VoxelGIData] also offers several properties to adjust the final "
"appearance of the global illumination. These properties can be adjusted at "
"run-time without having to bake the [VoxelGI] node again.\n"
"[b]Note:[/b] To prevent text-based scene files ([code].tscn[/code]) from "
"growing too much and becoming slow to load and save, always save "
"[VoxelGIData] to an external binary resource file ([code].res[/code]) instead "
"of embedding it within the scene. This can be done by clicking the dropdown "
"arrow next to the [VoxelGIData] resource, choosing [b]Edit[/b], clicking the "
"floppy disk icon at the top of the Inspector then choosing [b]Save As...[/b]."
msgstr ""
"[VoxelGIData] contient de l'illumination global de voxel pré-calculée pour "
"utiliser dans un nœud [VoxelGI]. [VoxelGIData] offre également plusieurs "
"propriétés pour ajuster l'apparence finale de l'illumination globale. Ces "
"propriétés peuvent être ajustées durant l'exécution sans avoir à pré-calculer "
"le nœud [VoxelGI] à nouveau.\n"
"[b]Note :[/b] Pour éviter que les fichiers de scène basés sur du texte "
"([code].tscn[/code]) ne grandissent trop et deviennent lents pour charger et "
"s'enregistrer, sauvegardez toujours [VoxelGIData] en un fichier de ressources "
"binaire externe ([code].res[/code]) au lieu de l'intégrer à la scène. Cela "
"peut être fait en cliquant sur la flèche descendante à côté de la ressource "
"[VoxelGIData], choisir [b]Édition[/b], cliquer sur l'icône de disquette en "
"haut de l'inspecteur puis choisir [b]Enregistrer sous...[/b]."

msgid ""
"Returns the bounds of the baked voxel data as an [AABB], which should match "
"[member VoxelGI.size] after being baked (which only contains the size as a "
"[Vector3]).\n"
"[b]Note:[/b] If the size was modified without baking the VoxelGI data, then "
"the value of [method get_bounds] and [member VoxelGI.size] will not match."
msgstr ""
"Renvoies les limites des données de voxel pré-calculées en tant qu'[AABB], "
"qui devrait correspondre à [member VoxelGI.size] après avoir été pré-calculé "
"(qui ne contient la taille qu'en tant que [Vector3]).\n"
"[b]Note :[/b] Si la taille a été modifiée sans pré-calculer les données "
"VoxelGI, alors la valeur de [method get_bounds] et de [member VoxelGI.size] "
"ne correspondront pas."

msgid ""
"The normal bias to use for indirect lighting and reflections. Higher values "
"reduce self-reflections visible in non-rough materials, at the cost of more "
"visible light leaking and flatter-looking indirect lighting. To prioritize "
"hiding self-reflections over lighting quality, set [member bias] to "
"[code]0.0[/code] and [member normal_bias] to a value between [code]1.0[/code] "
"and [code]2.0[/code]."
msgstr ""
"Le biais des normales à utiliser pour l'éclairage indirect et les réflexions. "
"Des valeurs plus élevées réduisent les auto-réflexions visibles dans les "
"matériaux non-rugueux, au prix de fuites de lumières plus visibles et d'un "
"éclairage indirect plus plat. Pour prioriser la dissimulation des auto-"
"réflexions sur la qualité de l'éclairage, définissez [member bias] à "
"[code]0.0[/code] et [member normal_bias] à une valeur entre [code]1.0[/code] "
"et [code]2.0[/code]."

msgid ""
"The dynamic range to use ([code]1.0[/code] represents a low dynamic range "
"scene brightness). Higher values can be used to provide brighter indirect "
"lighting, at the cost of more visible color banding in dark areas (both in "
"indirect lighting and reflections). To avoid color banding, it's recommended "
"to use the lowest value that does not result in visible light clipping."
msgstr ""
"La plage dynamique à utiliser ([code]1.0[/code] représente une luminosité de "
"la scène à plage dynamique basse). Des valeurs plus élevées peuvent être "
"utilisées pour fournir un éclairage indirect plus lumineux, au coût de bandes "
"de couleur plus visibles dans les zones sombres (à la fois dans l'éclairage "
"indirect et dans les réflexions). Pour éviter les bandes des couleurs, il est "
"recommandé d'utiliser la valeur la plus basse qui n'entraîne pas de coupure "
"visible dans la lumière."

msgid ""
"The energy of the indirect lighting and reflections produced by the [VoxelGI] "
"node. Higher values result in brighter indirect lighting. If indirect "
"lighting looks too flat, try decreasing [member propagation] while increasing "
"[member energy] at the same time. See also [member use_two_bounces] which "
"influences the indirect lighting's effective brightness."
msgstr ""
"L'énergie de l'éclairage indirect et des réflexions produits par le nœud "
"[VoxelGI]. Des valeurs plus élevées résultent en un éclairage indirect plus "
"lumineux. Si l'éclairage indirect semble trop plat, essayez de diminuer "
"[member propagation] tout en augmentant [member energy] en même temps. Voir "
"aussi [member use_two_bounces] qui influence la luminosité effective de "
"l'éclairage indirect."

msgid ""
"If [code]true[/code], [Environment] lighting is ignored by the [VoxelGI] "
"node. If [code]false[/code], [Environment] lighting is taken into account by "
"the [VoxelGI] node. [Environment] lighting updates in real-time, which means "
"it can be changed without having to bake the [VoxelGI] node again."
msgstr ""
"Si [code]true[/code], l'éclairage de l'[Environment] est ignoré par le "
"nœud[VoxelGI]. Si [code]false[/code], l'éclairage de l'[Environment] est pris "
"en compte par le nœud [VoxelGI]. L'éclairage de l'[Environment] est mis à "
"jour en temps réel, ce qui signifie qu'il peut être changé sans avoir à re-"
"calculer le nœud [VoxelGI] à nouveau."

msgid ""
"The normal bias to use for indirect lighting and reflections. Higher values "
"reduce self-reflections visible in non-rough materials, at the cost of more "
"visible light leaking and flatter-looking indirect lighting. See also [member "
"bias]. To prioritize hiding self-reflections over lighting quality, set "
"[member bias] to [code]0.0[/code] and [member normal_bias] to a value between "
"[code]1.0[/code] and [code]2.0[/code]."
msgstr ""
"Le biais des normales à utiliser pour l'éclairage indirect et les réflexions. "
"Des valeurs plus élevées réduisent les auto-réflexions visibles dans les "
"matériaux non-rugueux, au prix de fuites de lumières plus visibles et d'un "
"éclairage indirect plus plat. Voir aussi [member bias]. Pour prioriser la "
"dissimulation des auto-réflexions sur la qualité de l'éclairage, définissez "
"[member bias] à [code]0.0[/code] et [member normal_bias] à une valeur entre "
"[code]1.0[/code] et [code]2.0[/code]."

msgid ""
"The multiplier to use when light bounces off a surface. Higher values result "
"in brighter indirect lighting. If indirect lighting looks too flat, try "
"decreasing [member propagation] while increasing [member energy] at the same "
"time. See also [member use_two_bounces] which influences the indirect "
"lighting's effective brightness."
msgstr ""
"Le multiplicateur à utiliser lorsque la lumière rebondit sur une surface. Des "
"valeurs plus élevées résultent en un éclairage indirect plus lumineux. Si "
"l'éclairage indirect semble trop plat, essayez de diminuer [member "
"propagation] tout en augmentant [member energy] en même temps. Voir aussi "
"[member use_two_bounces] qui influence la luminosité effective de l'éclairage "
"indirect."

msgid ""
"If [code]true[/code], performs two bounces of indirect lighting instead of "
"one. This makes indirect lighting look more natural and brighter at a small "
"performance cost. The second bounce is also visible in reflections. If the "
"scene appears too bright after enabling [member use_two_bounces], adjust "
"[member propagation] and [member energy]."
msgstr ""
"Si [code]true[/code], effectue deux rebonds d'éclairage indirect au lieu "
"d'un. Cela rend l'éclairage indirect plus naturel et plus lumineux avec un "
"petit coût de performance. La deuxième rebond est également visible dans les "
"réflexions. Si la scène apparaît trop brillante après avoir activé [member "
"use_two_bounces], ajustez [member propagation] et [member energy]."

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 ""
"Holds an [Object]. If the object is [RefCounted], it doesn't update the "
"reference count."
msgstr ""
"Contient un [Object]. Si l'objet est [RefCounted], il ne met pas à jour le "
"compte des références."

msgid ""
"A weakref can hold a [RefCounted] without contributing to the reference "
"counter. A weakref can be created from an [Object] using [method "
"@GlobalScope.weakref]. If this object is not a reference, weakref still "
"works, however, it does not have any effect on the object. Weakrefs are "
"useful in cases where multiple classes have variables that refer to each "
"other. Without weakrefs, using these classes could lead to memory leaks, "
"since both references keep each other from being released. Making part of the "
"variables a weakref can prevent this cyclic dependency, and allows the "
"references to be released."
msgstr ""
"Un weakref (litt. \"référence faible\") peut tenir un [RefCounted] sans "
"contribuer au compteur de références. Un weakref peut être créé à partir d'un "
"[Object] utilisant [method @GlobalScope.weakref]. Si cet objet n'est pas une "
"référence, weakref fonctionne toujours, cependant, il n'a aucun effet sur "
"l'objet. Les weakrefs sont utiles dans les cas où plusieurs classes ont des "
"variables qui se réfèrent l'une à l'autre. Sans weakrefs, l'utilisation de "
"ces classes pourrait conduire à des fuites de mémoire, puisque les deux "
"références s'entre-empêchent d'être libérées. Rendre une partie des variables "
"une weakref peut prévenir cette dépendance cyclique, et permet de libérer les "
"références."

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 ID assigned to this channel during creation (or auto-assigned "
"during negotiation).\n"
"If the channel is not negotiated out-of-band the ID will only be available "
"after the connection is established (will return [code]65535[/code] until "
"then)."
msgstr ""
"Renvoie l'identifiant assigné à ce canal pendant la création (ou auto-assigné "
"pendant la négociation).\n"
"Si le canal n'est pas négocié hors bande, l'ID ne sera disponible qu'après la "
"mise en place de la connexion (renverra [code]65535[/code] jusqu'alors)."

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 [code]maxPacketLifeTime[/code] value assigned to this channel "
"during creation.\n"
"Will be [code]65535[/code] if not specified."
msgstr ""
"Renvoie la valeur [code]maxPacketLifeTime[/code] attribuée à ce canal durant "
"la création.\n"
"Vaudra [code]65535[/code] si non spécifié."

msgid ""
"Returns the [code]maxRetransmits[/code] value assigned to this channel during "
"creation.\n"
"Will be [code]65535[/code] if not specified."
msgstr ""
"Renvoie la valeur [code]maxRetransmits[/code] attribuée à ce canal durant la "
"création.\n"
"Vaudra [code]65535[/code] si non spécifié."

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 "Returns the current state of this channel."
msgstr "Renvoie l'état actuel de ce canal."

msgid ""
"Returns [code]true[/code] if this channel was created with out-of-band "
"configuration."
msgstr ""
"Renvoie [code]true[/code] si ce canal a été créé avec une configuration hors "
"bande."

msgid ""
"Returns [code]true[/code] if this channel was created with ordering enabled "
"(default)."
msgstr ""
"Renvoie [code]true[/code] si ce canal a été créé avec le tri activé (par "
"défaut)."

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 "WebRTC documentation"
msgstr "Documentation 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 "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 ""
"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 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 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 singleton that allocates some [Thread]s on startup, used to offload tasks "
"to these threads."
msgstr ""
"Un singleton qui attribue quelques [Thread]s au démarrage, utilisé pour "
"décharger des tâches à ces threads."

msgid ""
"Returns the task group ID of the current thread calling this method, or "
"[code]-1[/code] if invalid or the current thread is not part of a task group."
msgstr ""
"Renvoie l'ID du groupe de tâche du thread courant appelant cette méthode, ou "
"[code]-1[/code] si invalide ou si le thread courant ne fait pas partie d'un "
"groupe de tâche."

msgid ""
"Returns [code]true[/code] if the task with the given ID is completed.\n"
"[b]Note:[/b] You should only call this method between adding the task and "
"awaiting its completion."
msgstr ""
"Renvoie [code]true[/code] si la tâche avec l'identifiant donné est terminée.\n"
"[b]Note :[/b] Vous ne devriez appeler cette méthode que seulement entre "
"l'ajout de la tâche et l'attente de sa complétion."

msgid ""
"Pauses the thread that calls this method until the group task with the given "
"ID is completed."
msgstr ""
"Pause le thread qui appelle cette méthode jusqu'à ce que la tâche du groupe "
"avec l'identifiant donné soit terminée."

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 the current status of our tracking."
msgstr "Renvoie le statut actuel de notre suivi."

msgid "Returns a [Transform3D] for a given view."
msgstr "Renvoie une [Transform3D] pour une vue donnée."

msgid "Returns the format of the texture returned by [method _get_vrs_texture]."
msgstr ""
"Retourne le format de la texture retournée par [method _get_vrs_texture]."

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 ""
"This is an important function to understand correctly. AR and VR platforms "
"all handle positioning slightly differently.\n"
"For platforms that do not offer spatial tracking, our origin point [code](0, "
"0, 0)[/code] is the location of our HMD, but you have little control over the "
"direction the player is facing in the real world.\n"
"For platforms that do offer spatial tracking, our origin point depends very "
"much on the system. For OpenVR, our origin point is usually the center of the "
"tracking space, on the ground. For other platforms, it's often the location "
"of the tracking camera.\n"
"This method allows you to center your tracker on the location of the HMD. It "
"will take the current location of the HMD and use that to adjust all your "
"tracking data; in essence, realigning the real world to your player's current "
"position in the game world.\n"
"For this method to produce usable results, tracking information must be "
"available. This often takes a few frames after starting your game.\n"
"You should call this method after a few seconds have passed. For example, "
"when the user requests a realignment of the display holding a designated "
"button on a controller for a short period of time, or when implementing a "
"teleport mechanism."
msgstr ""
"Il s'agit d'une fonction importante qu'il faut comprendre correctement. Les "
"plates-formes AR et VR gèrent les positions légèrement différemment.\n"
"Pour les plateformes qui n'offrent pas de suivi spatial, notre point "
"d'origine [code](0,0,0)[/code] est l'emplacement de notre HMD, mais vous avez "
"peu de contrôle sur la direction que le joueur fait face dans le monde réel.\n"
"Pour les plateformes qui offrent un suivi spatial, notre point d'origine "
"dépend beaucoup du système. Pour OpenVR, notre point d'origine est "
"généralement le centre de l'espace de suivi, au sol. Pour d'autres plates-"
"formes, il s'agit souvent de l'emplacement de la caméra de suivi.\n"
"Cette méthode vous permet de centrer votre tracker sur l'emplacement du HMD. "
"Il prendra l'emplacement actuel de l'HMD et l'utilisera pour ajuster toutes "
"vos données de suivi ; c'est-à-dire réaligner le monde réel à la position "
"actuelle de votre joueur dans le monde du jeu.\n"
"Pour que cette méthode produise des résultats utilisables, des informations "
"de suivi doivent être disponibles. Cela prend souvent quelques trames après "
"le démarrage de votre jeu.\n"
"Vous devriez appeler cette méthode après quelques secondes. Par exemple, "
"lorsque l'utilisateur demande un réalignement de l'écran en maintenant un "
"bouton désigné sur un contrôleur pendant une courte période, ou lors de "
"l'implémentation d'un mécanisme de téléportation."

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 renvoie [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 ""
"If set to [code]true[/code], the scene will be rendered as if the camera is "
"locked to the [XROrigin3D].\n"
"[b]Note:[/b] This doesn't provide a very comfortable experience for users. "
"This setting exists for doing benchmarking or automated testing, where you "
"want to control what is rendered via code."
msgstr ""
"Si défini à [code]true[/code], la scène sera rendue comme si la caméra était "
"verrouillée au [XROrigin3D].\n"
"[b]Note :[/b] Cela ne fournit pas une expérience très confortable pour les "
"utilisateurs. Ce paramètre existe pour faire des tests de référence ou "
"automatisés, où vous voulez contrôler ce qui est rendu via le code."

msgid "The primary [XRInterface] currently bound to the [XRServer]."
msgstr "La [XRInterface] principale actuellement connectée à ce [XRServer]."

msgid ""
"The current origin of our tracking space in the virtual world. This is used "
"by the renderer to properly position the camera with new tracking data.\n"
"[b]Note:[/b] This property is managed by the current [XROrigin3D] node. It is "
"exposed for access from GDExtensions."
msgstr ""
"L'origine actuelle de notre espace de suivi dans le monde virtuel. Ceci est "
"utilisé par le moteur de rendu pour positionner correctement la caméra avec "
"de nouvelles données de suivi.\n"
"[b]Note :[/b] Cette propriété est gérée par le nœud [XROrigin3D] courant. Il "
"est exposé pour y accéder depuis des GDExtensions."

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 the player's head. This is usually a "
"location centered between the player's eyes. Note that for handheld AR "
"devices this can be the current location of the device."
msgstr ""
"Le tracker suit l'emplacement de la tête du joueur. Il s'agit généralement "
"d'un emplacement centré entre les yeux du joueur. Notez que pour les "
"appareils AR portatifs, cela peut être l'emplacement actuel de l'appareil."

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 tracker permet de suivre l'emplacement d'une station de base."

msgid "The tracker tracks the location and size of an AR anchor."
msgstr ""
"Le tracker 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]."