可可西

UE4资源移动与跨项目迁移

资源移动

1. 在编辑器的Content中,可通过拖拽资源文件或目录来进行移动(注:资源的移动不能在windows资源管理器中进行,否则会导致引用关系丢失)

2. 若被移动的资源被其他资源引用着,移动完后会存在一个同名的重定向文件(jump文件,大小约为2KB):用于记录文件移动后的位置

3. 通过Fixed Up操作来更新并保存其他资源中对移动的资源的引用路径(注:即不再通过重定向文件跳转,而是在其他资源中直接填写资源移动后的位置)

4. 可通过ResavePackages的Commandlet命令进行批量Fixed Up操作

 

注:资源的重命名、删除都需要在编辑器中进行

 

移动文件或目录

将Content\ThirdPersonCPP\Meshes目录移动到Content\ThirdPerson中

 

在UE4中,移动或重命名一个资源会在其原有位置处留下一个重定向文件(jump文件)

 

注1:需要打开Filters -- Other Filters -- Show Redirectors过滤器,才能看到这些重定向文件(jump文件)

注2:双击这些重定向文件(jump文件)会跳转到文件真正的位置

注3:如果当前已经打开了地图A,地图A会将对这些文件的引用调整到移动后的位置(即:不需要借助jump文件)。不过,要记得保存地图A。

 

使用Type=ObjectRedirector来查看某个目录下所有Redirectors过滤器

 

 

 

注:这些重定向文件(jump文件)很小,约为2KB,里面只记录一个跳转路径,实际的数据已经存放到移动后的目录中

 

注:使用右键菜单"Fix Up"和"Fix Up Redirectors in Folder"时,会修复所有指向重定向文件的包中的链接到移动后的位置。当成功完成修理后,会保存这些包,并删除重定向文件

 

使用ResavePackages命令来清理重定向文件 

首先需要注意的是,该命令只能处理没有被引用的重定位文件。如果重定位文件还被其他文件引用着,则会被跳过

 

UE4Editor.exe "%GameDir%\MyGame.uproject" -run=ResavePackages -fixupredirects -projectonly  // 只修复项目中的重定向文件

UE4Editor.exe "%GameDir%\MyGame.uproject" -run=ResavePackages -fixupredirects -packagefolder="G:/svn/MyTest1/Content/ThirdPersonCPP/Meshes"   // 修复目录G:/svn/MyTest1/Content/ThirdPersonCPP/Meshes中的重定向文件

不过需要对ContentCommandlets.cpp的UResavePackagesCommandlet::InitializeResaveParameters函数中做如下修改,才能正常执行

 

UE4Editor.exe "%GameDir%\MyGame.uproject" -run=ResavePackages -fixupredirects -package=/Game/ThirdPersonCPP/Meshes/Linear_Stair_StaticMesh  // 修复名为ThirdPersonCPP/Meshes/Linear_Stair_StaticMesh的重定向文件

UE4Editor.exe "%GameDir%\MyGame.uproject" -run=ResavePackages -fixupredirects -file="G:/svn/MyTest1/fixfilelist.txt" // 修复G:/svn/MyTest1/fixfilelist.txt列表中的重定向文件

fixfilelist.txt中内容如下

G:/svn/MyTest1/Content/ThirdPersonCPP/Meshes/Bump_StaticMesh.uasset
G:/svn/MyTest1/Content/ThirdPersonCPP/Meshes/LeftArm_StaticMesh.uasset

 

跨项目迁移

迁移资源目录到另外一个工程

 

注:可双击Asset Report面板上的资源来打开预览

 

 

 

迁移某些Level到另外一个工程

具体操作步骤:在Levels面板中,选择要迁移的Level,然后点击面板左上角Levels按钮,在弹出的菜单中选择“Migrate...”

注:可双击Asset Report面板上的资源来打开预览 

 

参考

资源:重定向器

ue4中资源和代码的跨工程迁移 

移植资源 

 

posted on 2020-08-31 17:46  可可西  阅读(7892)  评论(0编辑  收藏  举报

导航