Fatal error:[File:D:/Build/++UE4/Sync/Engine/Source/Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp] [Line: 3281]
Error LogWindows Bad path name: Blueprint‘/Game/Blueprints/BP_Powerup, missing ‘ or an incorrect format
主要是第二行代码,意思是这个这个路径缺少 ‘
或一个不正确的格式,其实就是路径格式问题。
路径格式问题
static ConstructorHelpers::FClassFinder<APowerup> BP_Powerup(TEXT("Blueprint‘/Game/Blueprints/BP_Powerup.BP_Powerup‘"));
Powerup = BP_Powerup.Class;
我是因为在C++中写了资源查找函数,然后格式写错了,编译的时候项目就直接奔溃了,之后把路径格式改了在编译器里编译还是打开项目就奔溃,
删掉了错误代码还是无法打开项目
unreal引擎编译c++代码的时候,如果代码中有错误,引擎非常容易崩溃,崩溃后,经常无法再次成功打开。这时候需要以下操作才可以重新打开:
1.将vs中的错误代码注释掉。
2.打开项目文件夹的目录,将 .vs、binary、intermediate、saved删掉。
3.在目录下找到.uproject右键重新生成。
重新生成文件 成功打开
打开后引擎提示如图
就是路劲问题引起的,修改后重新编译
路径格式的讲究
之前我们用下面这个函数去引入文件
static ConstructorHelpers::FClassFinder<> (TEXT(""));
可以直接去Content里鼠标左键复制路径引用过来,是没问题的,但是我翻车了,则才有了这篇博客,我是用了这个路径才好的
static ConstructorHelpers::FClassFinder<APowerup> BP_Powerup(TEXT("/Game/Blueprints/BP_Powerup"));
if(BP_Powerup.Succeeded()) Powerup = BP_Powerup.Class;
解释一下和之前引用的区别,/Game/
后面跟你要引入的文件的路径,不用加后缀哦。
还有一个是一定要用Succeeded()
方法检测一下,以免空指针调用报错。
!!!路径一定要写好,我尝试有Succeeded()
方法保护的情况下去乱写路径格式,真没让我失望,引擎崩溃了