You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

在Visual Studio中移动Unreal Engine项目的.h与.cpp文件的问题及解决方法

在Visual Studio中移动Unreal Engine项目的.h与.cpp文件的问题及解决方法

作为刚入门Unreal Engine的新程序员,我完全懂你想整理项目文件结构却碰壁的烦恼——直接在VS解决方案里拖文件,实际文件根本没动;手动在资源管理器里挪了文件,结果VS直接找不到文件了,太闹心了对吧?

问题根源

Unreal Engine的项目不像普通VS项目那样灵活,它的.uproject.Build.cs这些核心配置文件里硬编码了所有代码文件的路径,而且VS的解决方案是依赖这些UE配置生成的。单纯移动文件不更新配置,自然会导致路径不匹配,VS找不到文件,编译也会报错。

正确的解决方法

方法1:直接在UE编辑器里操作(最稳妥,推荐!)

  • 打开你的Unreal Engine项目,在内容浏览器里找到要移动的Item.hItem.cpp
  • 如果还没创建目标文件夹层级,右键内容浏览器空白处,依次创建你想要的文件夹(比如CoreItems
  • 直接把Item相关文件拖进目标文件夹,UE会自动帮你更新所有关联的配置文件,包括.Build.cs和VS解决方案的路径
  • 等UE处理完,再打开VS,文件结构就和你想要的一致了,完全不会有找不到文件的问题

方法2:已经手动移动了文件?这样修复

如果你已经在资源管理器里挪了文件,别慌,按下面步骤来:

  • 先关闭VS和UE编辑器,避免文件被占用
  • 找到项目根目录下的[你的项目名].Build.cs文件,用记事本或VS打开
  • 找到里面的PublicIncludePaths(对应.h文件)、PrivateIncludePathsPrivateSourceFiles(对应.cpp文件),把原来的旧路径改成新的文件夹路径,比如原来写的是"Source/[项目名]",现在要改成"Source/[项目名]/Core/Items"
  • 打开项目的.uproject文件,检查里面是否有文件路径的引用,有的话同步改成新路径
  • 右键.uproject文件,选择Generate Visual Studio project files,重新生成VS解决方案
  • 现在打开VS,文件就能正常被识别,编译也不会报错了

避坑提醒

  • 别直接在VS解决方案里拖文件!那只是修改了VS的显示结构,实际文件位置没动,下次打开UE还是会显示在原来的位置,等于白忙活
  • 不管用哪种方法,移动文件后最好重新生成一次VS项目文件,确保所有路径完全同步

备注:内容来源于stack exchange,提问作者ProgrammingHaBit

火山引擎 最新活动