重定向链接

概述

在虚幻引擎4中移动或重命名一个资源时将会在它的旧的位置留下一个'Redirector(重定向器)'。 这样,那些目前还没有加载但是引用该资源的包会知道到哪里能够找到它的新位置。 选择先前使用的命名系统并遵守它的规则可以避免很多和重定向相关的很多问题。

FixupRedirects 命令行开关

请定期地运行'fixupredirects'命令行开关。 在战争机器中,我们的关卡设计人员每隔两周在所有的包上运行一次这个命令行开关。 它将会尽可能多地进行清理(所以它不需要每个人迁入每个包)。

要点

重命名

如果您创建一个对象,重命名它,然后使用同样的名字创建一个新的对象作为原始对象,将会发生错误。 这是因为,当地一个对象被重命名时创建了一个Redirector(重定向器),而且Redirector(重定向器)和另一个资源不能具有相同的名称。 要想解决这个问题,请使用FixupRedirects命令开关。

Redirector(重定向器)的相关问题

关于Redirectors(重定向器)有几个已知问题,可以使用以下信息进行重现:

情境 1

  • 把对象A重命名为B。

  • 删除B。

  • 将会弹出一个信息说不能删除B,因为正在使用它。 这个问题的出现是因为在重命名过程中创建的Redirector(重定向器)仍然指向B。

情境 2

  • 把对象A重命名为B。

  • 再把B重命名回A。

  • 删除A。

  • 第一次重命名创建的重定向器已经被销毁,但是在重命名B时又创建一个新的重定向器。所以,A不能被删除,是因为它被引用着。

在删除对象之前运行FixupRedirects命令行开关将可以修复这个问题。