# 【常见问题】

# 项目工程里有哪些文件忽略提交

  1. Binaries
  2. DerivedDataCache
  3. Intermediate
  4. Saved
  5. Build
  6. .vscode
  7. .vs
  8. *.VC.db
  9. *.opensdf
  10. *.opendb
  11. *.sdf
  12. *.sln
  13. *.suo
  14. *.xcodeproj
  15. *.xcworkspace

# 解决右键项目无 Generate Visual Studio project files

在cmd命令行中,进入到 UnrealBuildTool.exe 所在的文件夹

执行如下的命令

UnrealBuildTool.exe  -projectfiles -project="D:/xxx/xxx.uproject" -game -engine -progress

也可以在Unreal工程目录创建GenVSProjectFiles.bat文件方便直接操作

e:
cd E:\apps\Epic Gamese\UE_5.3\Engine\Binaries\DotNET\UnrealBuildTool
UnrealBuildTool.exe -projectfiles -project="%~dp0\Blaster.uproject" -game -engine -progress
pause;

# 解决右键项目无 Launch Game

在cmd命令行中,进入到 UnrealEditor.exe 所在的文件夹

执行如下的命令

UnrealEditor.exe %~dp0\MenuSystem.uproject -game

也可以在Unreal工程目录创建LaunchGame.bat文件方便直接操作

e:
cd E:\apps\Epic Gamese\UE_5.3\Engine\Binaries\Win64
UnrealEditor.exe %~dp0\MenuSystem.uproject -game
pause;

# 在C++里如何输出日志

其中第二个参数 ELogVerbosity 每个枚举值的作用:

  • NoLogging: 表示不输出任何日志(无用值)。
  • Fatal: 表示发生了致命的错误,会导致程序终止。
  • Error: 表示发生了错误,但程序仍然可以继续运行。
  • Warning: 表示警告信息,用于指出潜在的问题或错误。
  • Display: 表示普通的显示信息,用于输出一般的提示信息。
  • Log: 表示一般日志信息,通常用于记录程序运行状态。
  • Verbose: 表示冗长的日志信息,适用于详细的程序调试和跟踪。
  • VeryVerbose: 表示非常冗长的日志信息,用于极其详细的调试和跟踪。
#include "YourClassName.h"
#include "Logging/LogMacros.h"

void UYourClassName::YourFunction()
{
    // 输出一条普通的日志
    UE_LOG(LogTemp, Log, TEXT("这是一条普通的日志"));

    // 输出一条警告日志
    UE_LOG(LogTemp, Warning, TEXT("这是一条警告日志"));

    // 输出一条错误日志
    UE_LOG(LogTemp, Error, TEXT("这是一条错误日志"));
    
    // 在游戏界面左上角显示日志信息
    if(GEngine) {
        GEngine->AddOnScreenDebugMessage(
            -1,
            15.f,
            FColor::Blue,
            FString::Printf(TEXT("Hello Vp666"))
        );
    }
}