1.0 禁用屏幕日志
executeConsoleCommand+Instr("DisableAllScreenMessages ")
启用屏幕日志
executeConsoleCommand+Instr("EnableAllScreenMessages ")
2.0 C++将枚举变量转化为Name
const UEnum* EnumPtr = FindObject<UEnum>(ANY_PACKAGE, TEXT("枚举名称"), true);
if (EnumPtr)
{
FString commitType = EnumPtr->GetNameByValue((int64)枚举变量名称).ToString();
}
3.0修改分辨率
来源 https://blog.csdn.net/qq_21153225/article/details/82505353
r.setRes 1280x720
后缀:f 全屏、w窗口化
eg:r.setRes 1280x720f、r.setRes 1280x720w
4.0查找一个文件夹下所有文件
只查找当前文件夹下内容
IFileManager::Get().FindFiles(FindedFiles, *FilePath);
查找当前文件夹以及所有子文件夹
class ItemTableVisitor : public IPlatformFile::FDirectoryVisitor
{
virtual bool Visit(const TCHAR* FilenameOrDirectory, bool bIsDirectory) override
{
//内容自己实现
}
}
ItemTableVisitor Visitor;
FPlatformFileManager::Get().GetPlatformFile().IterateDirectoryRecursively(*FilePath, Visitor);
5.0 LexFromString( T& A,const TChar* str);
将一个const TCHAR* 字符串转化成int,PackageIndex,FMD5Hash,FGuid,double等等格式
6.0碰撞类型转换
TArray<TEnumAsByte<EObjectTypeQuery>>ObjectTypes;
ObjectTypes.Add(UEngineTypes::ConvertToObjectType(ECC_Vehicle));
7.0 调用关卡蓝图函数的几种方式
https://blog.csdn.net/SittingAtThisMoment/article/details/80815859
8.0 UE4 包含windows下面的文件
https://blog.csdn.net/liudi_jing/article/details/78271975
9.0 UE4 C++调用蓝图的属性和方法
调用属性
UFloatProperty* FloatProp = FindField<UFloatProperty>(Target->GetClass(), VarName);
FloatProp->SetPropertyValue_InContainer(Target, NewValue);
调用方法
UFunction* p_Func = inActor->FindFunction(inFuncName);
if (p_Func == nullptr)return false;
inActor->ProcessEvent(p_Func, inParams);
10.0 调试状态下禁用变量优化
#if PLATFORM_WINDOWS
#pragma optimize("",off)
#endif
。。。。。。。。。。
#if PLATFORM_WINDOWS
#pragma optimize("",on)
#endif