A localização de ativos permite substituir completamente um ativo por outro conforme a cultura.
Os ativos localizados ficam em pastas conforme a cultura na pasta "L10N", dentro da pasta "Content" do projeto. Portanto, se você tiver um ativo chamado "/Game/MyFolder/MyAsset" e quiser localizá-lo para o francês ("fr"), o ativo localizado será "/Game/L10N/fr/MyFolder/MyAsset".
O Navegador de Conteúdo tem opções para ajudar a gerenciar ativos localizados. Eles podem ser encontrados no submenu Asset Localization. Para criar ou gerenciar ativos localizados usando as opções do Navegador de Conteúdo, você deve ter arquivos “LocRes” disponíveis para as culturas que deseja localizar. Por padrão, os ativos localizados ficam ocultos no Navegador de Conteúdo. Clique em Settings > Show Localized Content para visualizá-los.
Ativos localizados não são recarregados automaticamente se a cultura for alterada em tempo de execução, pois a recarga dinâmica de conteúdo só está disponível no editor. Se você pretende oferecer suporte para a mudança de cultura dinâmica em tempo de execução, talvez seja necessário reiniciar o jogo para que essas alterações entrem em vigor. A reinicialização do remove limpa e recarrega os ativos localizados.
Ativos que contêm bytecode (como Blueprints) não podem ser localizados, pois podem ser nativizados em C++. Esses ativos não podem ser substituídos em tempo de execução.
Como localizar fontes
A localização de fontes pode ser feita de duas maneiras:
-
Você pode usar fontes compostas para produzir um único ativo de fonte que funcione para todas as culturas.
-
Você pode usar a localização de ativos para produzir ativos de fonte separados para cada cultura.
A segunda opção só será recomendada se o projeto não permitir a mudança cultural dinâmica em tempo de execução e não exibir qualquer texto irrestrito definido pelo usuário (como nomes de jogador ou uma janela de bate-papo). Em todos os outros casos, a primeira opção fornecerá um resultado melhor.
Como localizar diálogos
A localização de diálogos tem como foco o tipo de ativo Dialogue Wave, que permite definir o texto falado (e substituições opcionais de legendas) que é coletado pela etapa de coleta padrão do pipeline de localização.
Ondas de diálogo em si não são um sistema completo de diálogo ou conversa. Elas fornecem uma maneira de dizer que a "fala x é falada da pessoa A para a pessoa B, C ou D", usando um som para cada combinação. O número de ondas sonoras únicas que você precisa para cada linguagem pode variar, dependendo das regras da linguagem. No entanto, essa preocupação está contida no Dialogue Wave. Como resultado, basta reproduzi-la com o contexto correto para obter o resultado localizado com precisão.
A Unreal Engine (UE) também fornece uma série de utilitários para auxiliar na gravação e gerenciamento de diálogo localizados. Você não precisa usar esses utilitários para localizar diálogos na UE, mas eles automatizam grande parte do trabalho.
Se você usar esses utilitários, eles gerarão um arquivo extra por cultura na pasta de conteúdo do destino de localização, chamado "{TargetName}Dialogue.csv". As Folhas de Diálogo são arquivos CSV personalizados que contêm falas de diálogo por cultura coletadas dos ativos pelo pipeline de localização. Eles são gerados pela etapa de código de exportação da localização e reimportados para os arquivos pela etapa de código de importação da localização.
Lembre-se das seguintes informações sobre as Folhas de Diálogo:
-
O campo SpokenDialogue pode ser editado durante a gravação e reimportado como a tradução atual.
-
O campo AudioFileName define o arquivo WAV por cultura que o áudio gravado para a linha de diálogo deve ter (veja abaixo).
Após a gravação do áudio a partir dessas planilhas de diálogo, o arquivo de áudio deve ser nomeado conforme definido no campo AudioFileName e colocado em uma subpasta de cultura (por exemplo, "MyRecordedAudio/fr"). Ele pode ser importado para a UE usando a etapa de importação de diálogo para produzir os ativos Dialogue e *Sound Wave** corretos (isso pode ser feito de forma iterativa conforme novos áudios são disponibilizados).
O formato de nome de arquivo de diálogo padrão garante exclusividade, mas não é muito legível pelos usuários. Isso pode ser alterado usando a configuração Dialogue Filename Format na seção Audio, em Project Settings. O formato do nome do arquivo a ser usado deve ser decidido antes de começar a gravar qualquer áudio, pois será difícil mudá-lo depois.
Devido ao custo relativamente alto da tradução de diálogo em comparação com a tradução de textos, a previsão é que a localização de diálogo só comece após a finalização do código e siga esse fluxo de trabalho.
-
O diálogo nativo está definido para uma linha de diálogo.
-
O diálogo nativo é gravado e eventualmente editado (possivelmente com várias iterações). Em caso de cópia editada, o diálogo nativo editado é reimportado e estará pronto para a tradução.
-
O diálogo nativo é traduzido como texto e estará pronto para a produção de diálogo localizado.
-
O diálogo localizado é gravado e eventualmente editado (possivelmente com várias iterações). Se o texto for editado, o diálogo localizado é reimportado para garantir legendas precisas.
Todo texto nativo alterado durante esse processo reiniciará o fluxo de trabalho da etapa 1.
Como criar grupos de ativos
Os grupos de ativos permitem que você crie conjuntos de classes de ativos que podem ser atribuídos a uma cultura diferente do restante do seu projeto.
Um caso de uso comum seria permitir que o jogador escolhesse ter o áudio em um idioma e todo o resto em outro idioma. Para isso, defina um novo grupo de ativos chamado Audio e configure-o para usar as classes de áudio no projeto (em geral, isso deve estar dentro de "DefaultGame.ini"):
[Internationalization.AssetGroupClasses]
+Audio=SoundWave
+Audio=DialogueWave
Agora você pode atribuir uma cultura única a esse grupo de ativos sem afetar o restante do projeto. Confira a página Como gerenciar a cultura de ativa para obter mais informações.