Unreal项目修改名字

Unreal项目修改名字

  • 前言
  • 修改Unreal Blueprints工程项目名字
  • 修改Unreal C++工程项目名字

前言

Unreal项目修改名字还是比较麻烦的,针对纯蓝图工程和C++工程有一些区别。

修改Unreal Blueprints工程项目名字

修改纯蓝图的Unreal项目还是比较简单的,只要两个步骤:

1、将OldName.uproject文件名修改为NewName.uproject
2、用记事本编辑.uproject文件,将Modules[0].Name修改为新项目名字
在这里插入图片描述
项目所在的目录与项目名称没有关系。重新启动工程即可。

修改Unreal C++工程项目名字

修改C++工程相对复杂一些,主要是C++的工程重命名和蓝图类关联C++类丢失问题。
1、参照上一届按照纯蓝图工程给项目重命名
2、修改C++工程名
2-1、将Source目录下两个.cs文件重命名

OldName.Target.cs重命名为NewName.Target.cs
OldNameEditor.Target.cs重命名为NewNameEditor.Target.cs
打开记事本编辑两个cs文件,将文件内容中OldName都替换为NewName

2-2、将Source目录下OldName文件夹重命名为NewName
将Source/NewName目录下三个项目相关文件名修改为新的文件名

OldName.h修改为NewName.h OldName.cpp修改为NewName.cpp
OldName.Build.cs修改为NewName.Build.cs
打开记事本编辑这三个文件,将文件内容中OldName都替换为NewName

2-3、删除Intermediate目录和OldName.sln项目文件,右键点击NewName.uproject工程文件,重新生成C++项目
在这里插入图片描述
生成新的NewName.sln项目文件,用Visual Studio打开编辑,如果类名是Unreal自动创建的,一般类名前带有API_OldName的修饰,可以直接删掉,也可以修改为API_NewName修饰。重新编译,完成C++项目名修改

3、修改蓝图类引用
这一步是最麻烦的,当你重新打开Unreal工程后,发现所有的以C++类为基类的蓝图都坏了,且蓝图基类根本无法修改为AActor的C++派生类。
蓝图基类出现问题的原因是C++编译后的类名,除了C++类名,还被加上了项目名的前缀,实际上的类名可能是OldName_MyPawn.OldName_MyPawn.class,需要将类名的前缀修改为新的项目名才行。
如果手动修改蓝图,工作量很大,没有改项目名的意义,不如新建项目。

Unreal引入了一个Core Redirects功能,可以帮助我们批量修改蓝图类的项目名前缀。
参考文档
Unreal官方文档:Core Redirects

使用方法
用记事本打开项目Config/DefaultEngine.ini文件,增加以下节点信息:

[CoreRedirects]
+PackageRedirects=(OldName="/Script/OldName",NewName="/Script/NewName")

重新打开Unreal工程,可以看到蓝图类的引用也正确了。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

hcia datacom学习(12):vlan间路由

不同vlan相当于不同网段,如果vlan间没有三层技术,那么它们就无法互相通信。 vlan间路由可以有3种方式: 1.直接使用路由器转发 *路由器本身不需要额外设置,只需配置端口ip作为网关即可。 *路由器不能处理带有vlan标签的数据帧&a…

vulnhub靶机实战_DC-4

下载 靶机下载链接汇总:https://download.vulnhub.com/使用搜索功能,搜索dc类型的靶机即可。本次实战使用的靶机是:DC-4系统:Debian下载链接:https://download.vulnhub.com/dc/DC-4.zip 启动 下载完成后,…

【PL理论】(5) F#:递归类型 | Immutability 特性(F#中值一旦定义就不会改变)

💭 写在前面:本文旨在探讨不可变数据结构在 F# 编程中的应用,特别是如何利用递归记录类型来表示和操作数值表达式。通过定义存储整数的二叉树和数值表达式的类型,我们将展示不可变性如何简化程序的理解和维护。文章将对比 F# 与命…

适合航天航空的国产FTP替代软件

在宇宙探索的旅程中,航空和航天领域总是站在科技的最前沿,对数据传输的要求特别高。随着信息量急剧增加和安全威胁的复杂化,传统的FTP软件已经不能满足这个高端领域的需要了。因此,找到一款适合航空和航天领域的FTP替代软件&#…

spring 解决循环依赖

在 spring 框架中,我们知道它是通过三级缓存来解决循环依赖的,那么它具体是怎么实现的,以及是否必须需要三级缓存才能解决循环依赖,本文来作相关介绍。 具体实现 先来看看它的三级缓存到底是什么,先看如下代码&#…

Nginx网站服务【☆☆☆】

市面上常用Linux的web服务器:apache、Nginx。 apache与nginx的区别? 最核心的区别在于NGINX采用异步非阻塞机制,多个连接可以对应一个进程;apache采用的是同步阻塞多进程/线程模型,一个连接对应一个进程。apache美国…

c++简略实现共享智能指针Shared_Ptr<T>

重点: 1.引用计数在堆上(原本应为原子变量) 2.引用计数增加减少需要加锁保证线程安全。 3.内部实现Release函数用于释放资源 4.未实现,增加自定义删除器可以将Release修改为模板函数,传入可调用参数。对于shared_p…

tomcat服务器之maxHttpHeaderSize

背景:在OA流程表单中,填写了200条数据,一提交,秒报400错误,且请求没有打到后端中(无报错日志),一开始以为是谷歌浏览器的问题,可百度上关于这个错误的解决方案都是清除缓…

docker实战流程:

Docker-compose是docker官方的开源项目,负责实现对docker容器的集群的快速编排(通过yaml文件docker-compose.yml管理写好容器之间的调用关系只需一个命令就能实现容器的通识开启或关闭)。 类比spring容器,spring管理的是bean而do…

vue3+uniapp

1.页面滚动 2.图片懒加载 3.安全区域 4.返回顶部,刷新页面 5.grid布局 place-self: center; 6.模糊效果 7.缩放 8.微信小程序联系客服 9.拨打电话 10.穿透 11.盒子宽度 12.一般文字以及盒子阴影 13.选中文字 14.顶部安全距离 15.onLoad周期函数在setup语法糖执行后…

PVE安装虚拟主机

本文记录PVE安装其他虚拟主机的步骤,以安装win-server为例。裸机安装PVE则不是本文主题。 准备文件 获取Windows系统镜像 win server镜像可以从官网获取普通Windows镜像可从MSDN获取此外,安装Windows系统还需要从PVE下载特殊驱动 获取Windows必要驱动 …

数据库(25)——多表关系介绍

在项目开发中,进行数据库表结构设计时,会根据业务需求及业务模块之间的关系,分析并设计表结构,各个表之间的结构基本上分为三种:一对多,多对多,一对一。 一对多 例如,一个学校可以有…

PromptPerfect:AI Prompt生成与优化专家

PromptPerfect:AI Prompt生成与优化专家 PromptPerfect是一款专业的AI Prompt生成与优化工具,旨在帮助用户解锁和最大化GPT-4、ChatGPT、Midjourney等先进AI模型的潜力。它通过智能生成和精细优化Prompt,帮助用户获得更精确、更相关、更高效…

Aws EC2,kubeadm方式安装kubernetes(k8s)

版本 docker版本:20.10.25 k8s版本(kubeadm,kubelet和kubectl):1.20.10-0 初始化 # 禁用 SELinux sudo setenforce 0 sudo sed -i s/^SELINUXenforcing$/SELINUXpermissive/ /etc/selinux/config# 关闭防火墙 sudo …

题号:BC19 题目:反向输出一个四位数

题号:BC19 题目:反向输出一个四位数 废话不多说,上题目: 解题思路: 我们发现可以用%和/两个操作符就可以解决。 代码如下: int main() {int a 0;scanf("%d ",& a);while (a){printf("%d "…

【实物+仿真设计】基于单片机的物流皮带传输监控系统设计

《基于单片机的物流皮带传输监控系统设计 实物仿真》 整体功能: 本设计采用以单片机为核心控制器,以及传感器检测部分作为输入部分,以报警、显示、洒水、排烟、电机停止模块作为输出部分,构成整个物流皮带传输监控系统。 本设计…

Kolmogorov–Arnold Networks (KAN) 即将改变 AI 世界

目录 一、说明 二、KAN介绍 2.1 什么是 Kolmogorov-Arnold Networks (KAN): 2.2 KAN 的秘诀,Splines! 2.3 了解KAN工作的最简单方法 三、KAN的主要优点 四、KAN 的 Python 实现 (PyKAN) 4.1 …

神经网络 | 深度学习背后的数学

神经网分析 机器学习处理的是数据,通过学习输入的数据,从而建立模型,以便预测新的数据的输出 按照类型可以进行如下分类 监督分类 非监督分类 强化学习 神经元 生物学中,人的大脑是由多个神经元互相连接形成网络而构成的。也…

访问vue乱码解决

前情提要: 前端 vue工程npm run build生成的dist静态文件 后端 springboot 后端mvn install 生成war包,前端dist放进war包 报错: 页面访问白屏 报错如图 可以看到chunk-vendors.xxxx.js出现了中文乱码,这个js文件是vue build生成的…

2024版本---LabVIEW 软件安装及使用教程

目录 第1章 LabVIEW 软件安装及使用教程 1. 简介 2. 安装教程 2.1 下载 LabVIEW 2024 版本 2.2 安装 LabVIEW 3. 激活 LabVIEW 4. LabVIEW 基本使用教程 4.1 用户界面介绍 4.2 创建一个简单的 VI(虚拟仪器) 4.3 数据采集示例 5. 进阶功能介绍…