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

news2025/3/17 11:46:56

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

  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.coloradmin.cn/o/1598135.html

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

相关文章

海思Hi3519 DV500 部署yolov5并加速优化

本项目代码已开源,见文末 导出onnx模型 yolov5官方地址 利用官方命令导出python export.py --weights yolov5n.pt --include onnx 或者自写代码导出 import os import sys os.chdir(sys.path[0]) import onnx import torch sys.path.append(..) from models.co…

ASP.NET MVC企业级程序设计 (EF+三层架构+MVP实现查询数据)

目录 效果图 实现过程 1创建数据库 2创建项目文件 3创建控制器,右键添加,控制器 ​编辑 注意这里要写Home​编辑 创建成功 数据模型创建过程之前作品有具体过程​编辑 4创建DAL 5创建BLL 6创建视图,右键添加视图 ​编辑 7HomeContr…

[计算机效率] 本地视频播放器:QQPlayer

3.26 本地视频播放器:QQPlayer QQPlayer是一款由腾讯公司开发的视频播放软件,它支持多种视频格式,包括MP4、AVI、FLV等,并且可以播放高清视频。 强大的播放功能:QQPlayer具有强大的解码功能,可以轻松播放…

GIS 数据格式转换

1、在线工具 mapshaper 2、数据上传 3、数据格式转换 导入数据可导出为多种格式:Shapefile、Json、GeoJson、CSV、TopJSON、KML、SVG

面试算法-174-二叉树的层序遍历

题目 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 解 class Solut…

Antd:在文本框中展示格式化JSON

要想将对象转换为格式化 JSON 展示在文本框中,需要用到 JSON.stringify JSON.stringify 方法接受三个参数: value:必需,一个 JavaScript 值(通常为对象或数组)要转换为 JSON 字符串。replacer&#xff1a…

基于springboot+vue实现的疫情防控物资调配与管理系统

作者主页:Java码库 主营内容:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】:Java 【框架】:spring…

【软考高项】二十一、政策法规之招投标法知识点学习

一、总则部分 必须招标的 社会公共利益、公众安全的;国有资金投资或者国家融资的;外国政府贷款、援助资金的原则 公开、公平、公正和诚实信用 不得将依法必须进行招标的项目化整为零或者以其他任何方式规避招标、不受地区或者部门的限…

【Go】原子并发操作

目录 一、基本概念 支持的数据类型 主要函数 使用场景 二、基础代码实例 开协程给原子变量做加法 统计多个变量 原子标志判断 三、并发日志记录器 四、并发计数器与性能监控 五、优雅的停止并发任务 worker函数 Main函数 应用价值 Go语言中,原子并发操…

ABAP MESSAGE 常用的类型

类型文本描述A终止处理终止,用户必须重启事务X退出与消息类型A 类似,但带有程序崩溃 MESSAGE_TYPE_XE错误处理受到干扰,用户必须修正输入条目,左下角提示!W警告处理受到干扰,用户可以修正输入条目,左下角提示!I信息处理受到干扰&a…

中断的设备树修改及上机实验(按键驱动)流程

写在前面的话:对于 GPIO 按键,我们并不需要去写驱动程序,使用内核自带的驱动程序 drivers/input/keyboard/gpio_keys.c 就可以,然后你需要做的只是修改设备树指定引脚及键值。 根据驱动文件中的platform_driver中的.of_match_tabl…

一套3种风格经典的wordpress免费主题模板

wordpress免费企业主题 https://www.wpniu.com/themes/39.html 免费wordpress企业模板 https://www.wpniu.com/themes/43.html 免费wordpress企业主题 https://www.wpniu.com/themes/44.html

图灵奖2023:Avi Wigderson的开创性贡献揭示计算中的随机性和伪随机性

文章目录 每日一句正能量前言背景什么是理论计算机科学?为什么随机性很重要?三篇影响深远的论文Avi Wigderson在计算复杂性理论方面的贡献及其对现代计算的影响Avi Wigderson对随机性和伪随机性在计算中作用的理解及其实际应用Avi Wigderson的学术生涯和…

超越GPT-4V!马斯克发布Grok-1.5 With Vision

在 Grok-1 开源后不到一个月,xAI 的首个多模态模型就问世了。Grok-1.5V是XAI的第一代多模态模型,除了其强大的文本处理能力之外,Grok现在还能够处理包括文档、图表、图形、屏幕截图和照片在内的各种视觉信息。相信Grok-1.5V将很快提供给现有的…

基于unity+c#的随机点名系统(简单UI界面+列表+数组)

目录 一、功能界面显示 二、UI 1、视频的使用 (1)渲染纹理 (2) 视频铺全屏 (3)视频的调用 2、 下拉文本框的使用(旧版) 3、输入文本框的使用(旧版) …

OneFlow深度学习简介

介绍 OneFlow是一个基于深度学习的开源框架,主要面向机器学习工程师和研究人员。它提供了类似于其他深度学习框架(如TensorFlow和PyTorch)的API,同时具有高性能和高效的特点。OneFlow专注于在大规模数据集和分布式环境下的训练和推理,以及在生产环境中的部署和优化。其设计…

冯诺依曼结构理解

冯诺依曼结构 存储器:内存 数据是要在计算机的体系结构中进行流动的,在流动过程中对数据加工处理 从一个设备到另一个设备,本质是一种拷贝 CPU的计算速度是很快的,所以数据设备间的拷贝效率,决定了计算机整体的基本效率…

vue3第十八节(diff算法)

引言: 上一节说了key的用途,而这个key属性,在vue的vnode 中至关重要,直接影响了虚拟DOM的更新机制; 什么场景中会用到diff算法 如:修改响应式属性需要重新渲染页面,会重新执行render渲染函数返…

Maven 项目 JDK 8、JDK 17 多版本 Java 编译依赖最佳实践

博主历时三年精心创作的《大数据平台架构与原型实现:数据中台建设实战》一书现已由知名IT图书品牌电子工业出版社博文视点出版发行,点击《重磅推荐:建大数据平台太难了!给我发个工程原型吧!》了解图书详情,…

layui复选框勾选取消勾选事件监听

监听事件放置位置&#xff1a; form.on(checkbox(equipInputClick), function(data){var a data.elem.checked;var val data.value;if(a true){}else{}});html部分 <input lay-filter"equipInputClick" type"checkbox" lay-skin"primary&quo…