La localisation des ressources vous permet de remplacer complètement une ressource par une autre en fonction de la culture.
Les ressources localisées sont organisées dans des dossiers spécifiques à chaque culture, dans le dossier "L10N" qui se trouve dans le dossier de contenu de votre projet. Ainsi, si vous avez une ressource nommée /Game/MyFolder/MyAsset et que vous souhaitez la localiser pour le français ("fr"), alors la ressource localisée sera dans le dossier /Game/L10N/fr/MyFolder/MyAsset.
Le navigateur de contenu dispose d'options pour vous aider à gérer les ressources localisées. Vous les trouverez dans le sous-menu Asset Localization (Localisation des ressources). Pour créer ou gérer des ressources localisées à l'aide des options du navigateur de contenu, vous devez disposer de fichiers LocRes disponibles pour les cultures pour lesquelles vous effectuez la localisation. Les ressources localisées sont masquées par défaut dans le navigateur de contenu. Cliquez sur Settings > Show Localized Content (Paramètres > Afficher le contenu localisé) pour les afficher.
Les ressources localisées ne sont pas rechargées automatiquement si la culture est modifiée au moment de l'exécution, car le rechargement dynamique du contenu n'est disponible que dans l'éditeur. Si vous prévoyez de prendre en charge le changement de culture dynamique lors de l'exécution, vous devrez peut-être redémarrer votre jeu pour que ces modifications prennent effet. Le redémarrage du jeu purge et recharge les ressources localisées.
Les ressources contenant un code à octet (tels que les blueprints) ne peuvent pas être localisées, car elles peuvent être converties en C++. Ces ressources ne peuvent pas être remplacées au moment de l'exécution.
Localisation des polices
La localisation des polices peut se faire de deux manières :
-
Vous pouvez utiliser des polices composites pour produire une seule ressource de police qui fonctionne pour toutes les cultures.
-
Vous pouvez utiliser la localisation des ressources pour produire des ressources de police distinctes pour chaque culture.
La deuxième option n'est recommandée que si votre projet ne prend pas en charge le changement de culture dynamique au moment de l'exécution et n'affiche aucun texte défini par l'utilisateur sans restriction (comme les noms des joueurs ou une fenêtre de discussion). Dans tous les autres cas, la première option donnera un meilleur résultat.
Localisation des dialogues
La localisation des dialogues est centrée sur le type de ressource Dialogue Wave (Vague de dialogue), qui vous permet de définir du texte parlé (et des remplacements de sous-titres facultatifs) qui sont collectés via l'étape de collecte du pipeline de localisation standard.
Les vagues de dialogue elles-mêmes ne constituent pas un système de dialogue ou de conversation complet. Elles fournissent simplement un moyen de dire « La ligne X est prononcée par la personne A aux personnes B, C ou D », en utilisant une onde sonore désignée pour chaque combinaison. Le nombre d'ondes sonores uniques dont vous avez besoin pour chaque langue peut varier en fonction des règles de la langue. Cependant, cette préoccupation est résumée dans la vague de dialogue. Par conséquent, il vous suffit de la jouer avec le bon contexte et vous obtiendrez un résultat localisé avec précision.
L'Unreal Engine (l'UE) fournit également une série d'utilitaires pour faciliter l'enregistrement et la gestion des dialogues localisés. Vous n'êtes pas obligé d'utiliser ces utilitaires pour localiser le dialogue dans l'UE, mais ils automatisent une grande partie du travail.
Si vous utilisez ces utilitaires, ils généreront un fichier supplémentaire par culture dans le dossier de contenu de votre cible de localisation, appelé {TargetName}Dialogue.csv. Les feuilles de dialogue sont des fichiers CSV personnalisés qui contiennent les lignes de dialogue par culture collectées à partir de vos ressources par le pipeline de localisation. Ils sont générés par l'étape de script d'exportation de localisation et sont réimportés dans les archives par l'étape de script d'importation de localisation.
Gardez à l'esprit les informations suivantes sur les feuilles de dialogue :
-
Le champ SpokenDialogue peut être modifié lors de l'enregistrement et réimporté en tant que traduction actuelle.
-
Le champ AudioFileName définit le fichier WAV par culture que doit contenir l'audio enregistré pour la ligne de dialogue (voir ci-dessous).
Une fois l'audio enregistré à partir de ces feuilles de dialogue, le fichier audio doit être nommé comme défini par le champ AudioFileName et placé dans un sous-dossier de culture (par exemple, MyRecordedAudio/fr). Il peut ensuite être importé dans l'UE à l'aide de l'étape de dialogue d'importation pour produire le Dialogue et les Ressources d'ondes sonores corrects (cela peut se faire de manière itérative à mesure que de nouveaux éléments audio sont disponibles).
Le format de nom de fichier de dialogue par défaut garantit l'unicité, mais n'est pas très lisible par les utilisateurs. Cela peut être modifié à l'aide du paramètre Dialogue Filename Format (Format du nom de fichier de dialogue) dans la section Audio de vos paramètres de projet. Le format de nom de fichier que vous utilisez doit être décidé avant de commencer à enregistrer un fichier audio, car il sera difficile de le modifier ultérieurement.
En raison du coût relativement élevé de la traduction des dialogues par rapport à la traduction des textes, il est prévu que la localisation des dialogues ne commence qu'une fois le script finalisé et qu'elle suive ce flux de travail.
-
Le dialogue natif est défini pour une ligne de dialogue.
-
Le dialogue natif est enregistré et potentiellement révisé (potentiellement avec plusieurs itérations). Si le dialogue est révisé, le dialogue natif modifié est réimporté prêt à être traduit.
-
Le dialogue natif est traduit sous forme de texte, prêt à produire un dialogue localisé.
-
Le dialogue localisé est enregistré et potentiellement révisé (potentiellement avec plusieurs itérations). En cas de révision, le dialogue localisé est réimporté pour assurer l'exactitude des sous-titres.
Tout texte natif modifié au cours de ce processus est censé redémarrer le flux de travail à partir de l'étape 1.
Créer des groupes de ressources
Les groupes de ressources vous permettent de créer des ensembles de classes de ressources qui peuvent être assignées à une culture différente de celle du reste de votre projet.
Un cas d'utilisation courant serait de permettre au joueur de choisir d'avoir l'audio dans une langue et tout le reste dans une autre langue. Pour ce faire, définissez un nouveau groupe de ressources appelé Audio et configurez-le pour utiliser les classes audio de votre projet (celui-ci se trouve généralement dans DefaultGame.ini) :
[Internationalization.AssetGroupClasses]
+Audio=SoundWave
+Audio=DialogueWave
Vous pouvez maintenant assigner une culture unique à ce groupe de ressources, sans assigner le reste de votre projet. Consultez la page Gestion de la culture active pour plus d'informations.