UE5学习日记——制作多语言版本游戏,同时初步学习UI制作、多语言化、控制器配置、独立进程测试、打包配置和快速批量翻译等

所有的文本类,无论变量还是控件等都能实现本地化,以此实现不同语言版本。
在这里先将重点注意标注一下:

  1. 所有文本类的变量、控件等都可以多语言;
  2. 本地化控制板中收集、编译时,别忘了编译这一步;
  3. 支持批量复制和粘贴文本字段
  4. 测试时必须要独立进程才能起效,否则有bug;
  5. 打包前必须将本地化语言选择配置好,并使用国际化支持;

本文针对UI界面的文本多国语言化,重点是学会原理,实际开发时结合实际情况操作。
实际操作时还是比较简单的,只是写本文的时候为了尽可能详细,所以截图有点多,看着很麻烦。

创建UI

1. 创建一个UI控件蓝图

在这里插入图片描述

2. 选择用户控件

在这里插入图片描述

3. 修改名字

在这里插入图片描述

4. 拖入画布面板

在这里插入图片描述

5. 加入文本框,修改字体大小、内容等

在这里插入图片描述

6. 加入多个按钮

在这里插入图片描述

7. 文本框拖入按钮并修改内容

在这里插入图片描述

8. 两个按钮去掉本地化,即不进行翻译

在这里插入图片描述

9. 增加按钮点击事件

在这里插入图片描述

10.添加修改语言的事件

在这里插入图片描述

zh为中文,en为英文,其它名称参考下一步的本地化控制板中的名称。
注意:除了保存别忘了编译一下。

本地化(多语言化)

1. 打开本地化控制板

在这里插入图片描述

2. 设置本地化

  1. 设置路径的目的是告诉系统从哪些地方收集需要进行翻译的语言;
  2. 添加需要翻译的语言;
    在这里插入图片描述

3. 添加语言

这里中文标识了名称为zh,这也是上一章第十节中提到的那个名称。
在这里插入图片描述

4. 收集文本

在这里插入图片描述

5. 打开编辑语言

在这里插入图片描述

6. 翻译语言

比如这里是选择英语(en)进行翻译
在这里插入图片描述

7. 编译语言

在这里插入图片描述

8. 再次收集语言

主要是查看是否全部翻译完成,全部完成则为100%
在这里插入图片描述

9. 全部完成

在这里插入图片描述

控制器

主要是为了设置起来方便点,你可以找自己的方法

1. 选择蓝图类

在这里插入图片描述

2. 选择玩家控制器

在这里插入图片描述

3. 修改关卡中的玩家控制器类

在这里插入图片描述
在这里插入图片描述

4. 打开控制器增加鼠标并且将UI添加到视口界面里

  1. 实际开发时可以通过按钮来打开界面,本文只是在启动游戏时就打开UI界面;
  2. 增加鼠标是为了点击按钮方便,实际开发也是根据情况来随时激活鼠标。
    在这里插入图片描述

运行测试

1. 选择独立进程游戏

需要使用单独进程运行才能成功,否则无法成功,并且在我的这个版本UE5如果不适用单独进程将会出错,比如所有编辑器中的中文变为英文…

在这里插入图片描述

2. 测试

在这里插入图片描述

在这里插入图片描述

打包配置

要对外发布时需要进行打包配置,否则这些本地化语言并不会打包进去。

1. 项目设置

在这里插入图片描述

2. 选择配置

  1. 选择要打包的本地化语言,不选择那么这些语言包并不会被打包。
  2. 选择国际化支持,可选择所有。
    在这里插入图片描述

3. 打包完成

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4. 成功运行

在这里插入图片描述

批量翻译替换

1. 新增文本

为了测试看,在UI界面中增加多个文本
在这里插入图片描述

2. 打开本地化控制板

选择收集文本后打开编辑此语言翻译

在这里插入图片描述

3. 全选或多选待翻译的源文本后复制(Ctrl+C)

在这里插入图片描述

4. 粘贴到在线翻译软件后复制翻译好的文本

在这里插入图片描述

5. UE翻译编辑器选中待粘贴的字段

在这里插入图片描述

6. 粘贴翻译好的内容

在这里插入图片描述
保存关闭~~

7. 开始编译

在这里插入图片描述

8. 完成编译

在这里插入图片描述

9. 测试成功

在这里插入图片描述

在这里插入图片描述

参考:
【虚幻4/虚幻5本地化多语言翻译教程】UE4/UE5语言本地化教程,本地化工具、切换语言、本地化打包《虚幻4/虚幻5纯蓝图游戏开发为所欲为系列教程》
我是如何5分钟翻译完11种语言上千行文字的?虚幻5独立游戏开发教程!先不说准不准,就说快不快!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/809274.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一探究竟:选择排序原理、实现与应用分析

在众多基础排序算法中,选择排序以其独特的工作机制和稳定的性能表现,吸引了众多算法学习者的关注。本文将深入剖析选择排序的原理、详细实现步骤,以及其在实际应用中的表现与适用场景,助您全面理解这一经典排序算法。 一、选择排…

ClickHouse--16--普通函数

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、日期函数1、时间或日期截取函数(返回非日期)2、时间或日期截取函数(返回日期)3、日期或时间日期生成函数 二、类…

PTA 应急救援站选址(floyd+打印路径)

大学城虎溪社区有很多居民小区,居民小区道路图是连通的。现要在该社区新建一个应急救援站,且该应急救援站要和某个小区建在一起。为了使应急救援最快速,经各部门商量决定:应急救援站建好后,离应急救援站最远的小区到应…

使用 Axios 处理 AxiosError 的三种常见方法

在使用 Axios 时处理 AxiosError 有几种常见的方法: 使用 try-catch 语句捕获异常: try {const response await axios.get(/api/data);// 处理响应数据 } catch (error) {if (error.response) {// 请求成功但状态码不在 2xx 范围console.log(error.response.data);console.l…

React Hooks全面解读与高效开发实践

React Hooks是React 16.8版本引入的新特性,它可以让函数式组件具有类组件的能力。通过使用Hooks,我们可以在不编写类的情况下,使用状态(state)和其他React特性,使得组件的开发更加简单和高效。 在React中&…

Git - 设置全局用户名和邮箱

环境信息 Git 版本信息: $ git --version git version 2.33.0.windows.1设置全局用户名和邮箱 设置全局用户名: $ git config --global user.name "hello"设置全局邮箱: $ git config --global user.email "1234567890qq…

Web刷题记录——不翼而飞的余额

一、代码及思路解析 1、创建路由 // TODO:待补充代码,在此引入路由相关 API const { createRouter,createWebHistory } VueRouter; // TODO:待补充代码,为项目配置 history 模式的路由 const router createRouter({// 1、配置路由模式[…

单例模式以及常见的两种实现模式

单例模式是校招中最常考的设计模式之一. 设计模式其实就是类似于“规章制度”,按照这个套路来进行操作。 单例模式能保证某个类在程序中只存在唯一 一份实例。而不会创建出多个实例,如果创建出了多个实例,就会编译报错。而不会创建出多个实…

element-ui backtop 组件源码分享

今日简单分享 backtop 组件的源码实现,从以下三个方面: 1、backtop 组件页面结构 2、backtop 组件属性 3、backtop 组件事件 一、backtop 组件页面结构 二、backtop 组件属性 2.1 target 属性,触发滚动的对象,类型 string&am…

Java 流(Stream)、文件(File)和IO

Java 流(Stream)、文件(File)和IO 目录 Java 流(Stream)、文件(File)和IO 读取控制台输入 从控制台读取多字符输入 从控制台读取字符串 控制台输出 实例 读写文件 FileInputStream FileOutputStream 实例 文件和I/O Java中的目录 创建目录: 读取目录 Ja…

GitLab介绍、安装、创建第一个项目

一、Gitlab介绍 GitLab是一个基于Web的DevOps平台,提供了Git仓库管理、问题跟踪、代码审查、CI/CD等一系列功能。它由Dmitriy Zaporozhets和Valery Sizov于2011年创建,旨在为开发团队提供一个集中式的项目管理解决方案。以下是GitLab的一些关键特点和功能: 1、代码管理 提供…

JavaGUI编程

目录 GUI概念 Swing概念 组件 容器组件 窗口(JFrame) 代码 运行 面板(JPanel) 代码 运行 布局管理器 FlowLayout 代码 运行 BorderLayout 代码 运行 GridLayout 代码 运行 常用组件 标签(JLabel) 代码 运…

HarmonyOS实战开发-WebSocket的使用。

介绍 本示例展示了WebSocket的使用,包括客户端与服务端的连接和断开以及客户端数据的接收和发送。 WebSocket连接:使用WebSocket建立服务器与客户端的双向连接,需要先通过createWebSocket方法创建WebSocket对象,然后通过connect…

HarmonyOS实战开发-证书管理、如何实现对签名数据进行校验功能。

介绍 本示例使用了ohos.security.certManager相关接口实现了对签名数据进行校验的功能。 实现场景如下: 1)使用正确的原始数据和签名数据进行签名校验场景:模拟服务端对签名数据进行校验,验证客户端身份和原始数据完整性。 2&…

多线程(46)线程局部存储

线程局部存储(Thread Local Storage, TLS)是一种允许数据在多个线程中被独立地存储的编程范式。在Java中,这通过ThreadLocal类实现,它提供了一种线程封闭的机制,确保每个线程都有自己的变量副本,从而避免了变量共享所带来的线程安…

MongoDB聚合运算符:$objectToArray

文章目录 语法使用例1,无内嵌文档的情况例2,有内嵌文档的情况 举例objectToAarray 举例使用objectToArray对内嵌字段求和 o b j e c t T o A r r a y 与 objectToArray与 objectToArray与arrayToObject一起使用的例子 $objectToArray聚合运算符用于将文档…

绝地求生:PUBG×杜卡迪联名上线!参与投稿评论赢取精美好礼

PUBG杜卡迪联名活动游戏内现已正式上线!我们诚邀与您一起在开拓未知战场和书写新历史的过程中,与杜卡迪一同实现您的极速梦想! 在本次的杜卡迪工坊中,更是包含了具备标志性红色在内的6种颜色供您自由选择,一起自由驰骋…

Redis入门到通过之Redis安装

文章目录 Redis安装说明1.单机安装Redis1.1.安装Redis依赖1.2.上传安装包并解压1.3.启动1.3.1.默认启动1.3.2.指定配置启动1.3.3.开机自启 2.Redis客户端2.1.Redis命令行客户端2.2.图形化桌面客户端2.2.1.安装2.2.2.建立连接 Redis安装说明 大多数企业都是基于Linux服务器来部…

【Python 小学低段竞赛数学题】数字5在书本页码中出现16次,这本书最多有多少页

书的页码编号是按1 2 3 4 5一直这样下去的,数字5恰好出现了16次,请问这本书最多可以有多少页? 包含5的页码: 5 15 25 35 45 50 51 52 53 54 55 56 57 58 59 65 需要注意页码55,出现了两次5。因此到59页就满足数字5出现…

力扣爆刷第117天之CodeTop100五连刷71-75

力扣爆刷第117天之CodeTop100五连刷71-75 文章目录 力扣爆刷第117天之CodeTop100五连刷71-75一、48. 旋转图像二、39. 组合总和三、113. 路径总和 II四、34. 在排序数组中查找元素的第一个和最后一个位置五、394. 字符串解码 一、48. 旋转图像 题目链接:https://le…