MoteursGuidesFAQPatreonDiscordTélécharger
Se connecter
RuneTranslate · traduisez vos jeux japonais de bout en bout
MoteursGuidesComparerTexte des imagesÉditeur de sauvegardeMode tricheFAQTéléchargerPatreonDiscordYouTubeConfidentialitéConditionsContact
Tous les articles
unity · tutorial · engine

Comment traduire un jeu Unity en anglais

9 juin 2026·6 min de lecture

Traduisez les jeux Unity avec RuneTranslate — en lisant les TextAssets, les champs MonoBehaviour (Mono et IL2CPP) et StreamingAssets, pourquoi c'est du texte externalisé uniquement, et comment la garde d'identifiants vous empêche de casser le jeu.

Unity est le moteur derrière une part croissante de jeux indépendants et de romans visuels japonais — et le plus délicat des moteurs courants à traduire, parce qu'Unity n'a pas de format de texte unique. Le dialogue peut vivre dans des blobs TextAsset, dans des champs de chaîne MonoBehaviour, dans des scripts StreamingAssets libres, ou compilé directement dans une DLL C#. Ce guide parcourt la traduction d'un jeu Unity avec RuneTranslate et, tout aussi important, explique la seule règle qui rend Unity différent : texte externalisé uniquement.

La grande réserve d'abord : texte externalisé uniquement

RuneTranslate traduit le texte Unity qui vit dans des données — les fichiers d'actifs que le moteur charge à l'exécution, y compris les champs de chaîne sur les composants MonoBehaviour (dialogue, noms, libellés). Il lit ces champs sur les builds Mono et IL2CPP : la disposition des types provient des propres DLL du jeu sur Mono, ou est reconstruite à partir des métadonnées IL2CPP quand il n'y a pas de dossier Managed/. Ce qu'il ne peut pas atteindre, c'est le texte codé en dur dans le code C# compilé lui-même (Assembly-CSharp.dll). En pratique, les jeux qui gardent leur script dans les actifs et les composants se traduisent bien — et ouvrir le projet, la première étape, vous dit ce que vous avez.

Ce qu'il vous faut

  • RuneTranslate pour Windows — gratuit, chaque moteur et fournisseur débloqué.
  • Un dossier de jeu Unity — le répertoire avec le .exe du jeu et un dossier <GameName>_Data/ (contenant globalgamemanagers, resources.assets, data.unity3d, et des fichiers level*).
  • Une langue cible — anglais, espagnol, français, allemand, portugais, russe, chinois, italien, turc, vietnamien, et plus de 20 autres.
  • Un fournisseur de traduction. Google Translate gratuit fonctionne d'emblée ; DeepL a un palier gratuit ; OpenAI, Anthropic, un modèle local et toute API compatible OpenAI fonctionnent avec votre propre clé.

Étape 1 : Ouvrir le dossier du jeu

Lancez RuneTranslate, cliquez sur Nouveau projet, et pointez-le vers le répertoire du jeu Unity. La détection du moteur cherche le dossier _Data/ et identifie le projet comme Unity. Un sidecar Python UnityPy embarqué (livré dans l'installeur) ouvre les fichiers d'actifs et liste les chaînes lisibles dans un espace de travail par projet sous %APPDATA%/RuneTranslate/unity-workspace/<projectId>/. Votre dossier de jeu d'origine n'est jamais modifié. Unity est un moteur au mieux — vérifiez que le build exporté se lance avant de le redistribuer.

Étape 2 : Comment les chaînes sont extraites

RuneTranslate lit le texte de chaque endroit où Unity l'externalise :

  • TextAssets — blobs JSON / CSV / script embarqués dans les .assets et les AssetBundles, découpés par un extracteur conscient du format.
  • Champs de chaîne MonoBehaviour — texte d'affichage sur les composants (dialogue, noms, libellés), sur les builds Mono et IL2CPP (les informations de type proviennent des DLL du jeu, ou sont reconstruites à partir des métadonnées IL2CPP).
  • StreamingAssets — fichiers de script libres parcourus directement sur le disque (.json, .txt, .csv, .tsv, .xml, .yaml, .ks, et plus).
  • AssetBundles Addressable chiffrés — les jeux qui chiffrent en AES leurs AssetBundles Addressable sont déchiffrés automatiquement (la clé est dérivée du propre nom de fichier du bundle), pour que leur texte s'extraie comme tout autre bundle.

Unity est aussi l'endroit où la sur-traduction fait le plus de dégâts, donc RuneTranslate embarque une garde pour cela. Beaucoup de chaînes MonoBehaviour ne sont pas du texte d'affichage du tout — ce sont des identifiants de contrôle et des opérandes de flux : noms de scène qu'un appel LoadScene résout par chaîne, clés de routage de messages, noms de clips d'animation / de son, noms de parties Live2D, et les valeurs de comparaison à l'intérieur de la logique Fungus If / SetVariable (par ex. un indicateur comme 村落出口). Traduisez-les et le jeu casse silencieusement — le symptôme classique est un écran de « chargement » infini sans erreur. RuneTranslate les classe automatiquement comme exclues (affichées en rouge, à activer seulement), pour que l'éditeur fasse ressortir les dialogues et libellés authentiques et laisse la machinerie tranquille. Les substitutions {$var} de Fungus et le balisage {color=...} / TMP <...> sont masqués derrière des espaces réservés pour survivre à la traduction intacts.

Étape 3 : Traduire et relire

Choisissez un fournisseur et lancez. DeepL ou un LLM offrent la meilleure lecture pour les dialogues ; Google Translate gratuit couvre les menus et les noms d'objets. Constituez d'abord le glossaire de votre distribution et de vos termes récurrents — voir Glossaire 101. Chaque ligne atterrit dans l'éditeur à côté de sa source ; modifiez en ligne (enregistrement à la perte de focus ou par Ctrl+Entrée), et lancez l'affineur IA facultatif pour une relecture de deuxième passe. Le palier gratuit s'exécute avec un bridage modeste (environ 2× plus lent sur les fournisseurs d'IA, moins sur les scrapers) — mêmes moteurs, même qualité de sortie ; le payant s'exécute simplement à pleine vitesse.

Étape 4 : Exporter une version jouable

Cliquez sur Exporter. RuneTranslate copie le jeu, puis patche les chaînes traduites dans les fichiers d'actifs en place. La même garde d'exclusion s'exécute à la réécriture, pour qu'un ancien projet ne puisse pas pousser par accident un nom de scène traduit ou un opérande de flux à la réexportation. La sortie est une copie complète et jouable du jeu à l'emplacement de votre choix — lancez le .exe et il se joue dans votre langue cible.

Vous traduisez vers une langue non latine (chinois, japonais, coréen, thaï, arabe) dont la police intégrée du jeu ne peut pas afficher les glyphes ? RuneTranslate injecte une police de repli dans la pile de polices TextMeshPro à l'export, pour que le texte traduit s'affiche au lieu de carrés de glyphes manquants.

Limitations connues

  • Texte externalisé uniquement : les chaînes codées en dur dans le code C# compilé (Assembly-CSharp.dll sur Mono, ou le binaire IL2CPP) ne sont pas traduites. Les champs de données MonoBehaviour le sont — sur les builds Mono et IL2CPP.
  • La lecture MonoBehaviour IL2CPP nécessite un global-metadata.dat analysable ; des métadonnées fortement obfusquées peuvent ne pas se reconstruire (au mieux).
  • Au mieux : confirmez que le jeu exporté se lance et se lit correctement avant de le partager.
  • Le texte dans les images (logos, interface dessinée à la main, légendes de CG) n'est pas traduit — hors du périmètre de la traduction automatique.

Pourquoi c'est plus facile qu'avant

La traduction manuelle d'Unity impliquait de déballer les actifs avec UABE ou AssetStudio, de chercher quels TextAssets et champs MonoBehaviour contenaient du vrai texte, d'éviter à la main les chaînes d'identifiants qui plantent le jeu, puis de réimporter sans corrompre la table d'actifs. RuneTranslate replie extraire, classer (pour que vous ne traduisiez pas la machinerie), traduire et patcher-en-place en quelques clics — avec l'éditeur ouvert pour que vous contrôliez la formulation.

Voir la page moteur Unity pour la liste complète des fonctionnalités, lisez le guide TyranoBuilder pour un moteur basé sur HTML, ou téléchargez RuneTranslate et essayez-le sur un vrai jeu.

À lire aussi
01

Comment traduire les fichiers .po et .mo d’un jeu (gettext)

gettextpomoenginetutorial4 août 2026 · 7 min
Lire →
02

Comment traduire les jeux Godot en anglais

godotenginetutorial17 juin 2026 · 6 min
Lire →
03

Comment traduire un jeu Ren'Py en anglais (guide complet)

renpytutorialengine9 juin 2026 · 6 min
Lire →

Prêt à essayer RuneTranslate ?

L'offre gratuite débloque tous les moteurs et tous les fournisseurs de traduction. Supporter (3 $/mois) débloque la vitesse maximale.

Télécharger pour Windows