UE5 c++打印日志

cpp 复制代码
void AItem::BeginPlay()
{
	Super::BeginPlay();
	UE_LOG(LogTemp,Warning,TEXT("beginPlay"));//打印到日志面板
}
void AItem::Tick(float DeltaTime)
{
	Super::Tick(DeltaTime);
	UE_LOG(LogTemp, Warning, TEXT("DeltaTime:%f"), DeltaTime);//打印数字,在可变参数里追加要打印的数字,使用%f规定第一个参数为float类型  %d整数  %u无符号整数
}

UE_LOG:打印宏,打印日志到日志面板

参数一:日志的分类

可选级别:

LogTemp,临时日志

LogActor,Actor相关

LogCharacter,角色相关

LogUI,UI日志

LogAnimation,动画相关

LogGameplay,游戏逻辑

参数二:日志的级别

Dispaly:白色

Warning:黄色

Error:红色

Log:日志

Verbose:详细日志

VerVerbose:最详细的日志

参数3:要打印的内容

参数4...:可变参数

**GEngine->AddOnScreenDebugMessage() 打印日志到屏幕 **

cpp 复制代码
void AItem::BeginPlay()
{
	Super::BeginPlay();
	if (GEngine)//在屏幕上打印
	{
		GEngine->AddOnScreenDebugMessage(1,60.f,FColor::Cyan,FString("Item_OnScreen Message"));
	}
}
void AItem::Tick(float DeltaTime)
{
	Super::Tick(DeltaTime);
	if (GEngine)
	{
		//打印带参数的字符串,使用FString的Printf方法
		FString message = FString::Printf(TEXT("DeltaTime:%f"), DeltaTime);
		GEngine->AddOnScreenDebugMessage(1, 60.f, FColor::Cyan, message);
		GEngine->AddOnScreenDebugMessage(2, 60.f, FColor::Cyan, 	FString::Printf(TEXT("DeltaTime:%f"), DeltaTime));
	}
}

GEngine是一个指针,通常会在Beginpaly前就初始化完成,但是为了规范起见,应该用if()检查指针是否为0,为0则为空指针

参数1:日志的key,同一个key不会重复显示

参数2:显示的时长

参数3:颜色 Cyan是青色

参数4:要打印的字符串,只能用FString生成

打印一个字符串参数

cpp 复制代码
void AItem::Tick(float DeltaTime)
{
	Super::Tick(DeltaTime);
	if (GEngine)
	{
		FString Name = GetName();//Actor自带的方法,获取displayName
		FString message = FString::Printf(TEXT("DeltaTime:%s"), *Name);//注意字符串的*不是解析指针,UE对这里进行了重载,*的实际作用是获取一个C风格的字符串,即char[]
		GEngine->AddOnScreenDebugMessage(1, 60.f, FColor::Cyan, message);
	}
}
相关推荐
GIS阵地6 小时前
QgsSingleBandPseudoColorRenderer 完整详解(QGIS 3.40.13 C++)
开发语言·前端·c++·qt·qgis
王维同学6 小时前
[原创][Windows C++]LSA 认证、安全与通知包的注册表枚举
c++·windows·安全
yaoxin5211237 小时前
470. Java 反射 - Member 接口与 AccessFlag
java·开发语言·python
groundhappy7 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
_wyt0017 小时前
完全背包问题详解
c++·背包dp
小钻风33668 小时前
Spring Boot 文件上传详解:深入理解 MultipartFile 的使用与原理
java·开发语言
qq_452396239 小时前
第二篇:《Go 开发环境搭建:SDK、IDE、Module 与 Hello World》
开发语言·ide·golang
天青色等烟雨..9 小时前
全流程ArcGISPro空间分析、三维建模、可视化及Python融合应用技术
开发语言·python
丰锋ff9 小时前
1.2 Qt常用基础类型
开发语言·qt
皓月斯语9 小时前
B3842 [GESP202306 三级] 春游 题解
数据结构·c++·算法·题解