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);
	}
}
相关推荐
*.✧屠苏隐遥(ノ◕ヮ◕)ノ*.✧5 小时前
C++学习:基础知识的掌握
c++·visualstudio
wuyk5555 小时前
第2章:六步换相原理全解+STM32工程实战
c语言·开发语言·stm32·单片机·嵌入式硬件
hey_sml5 小时前
JAVA每日一学---CompletableFuture中thenApply与thenCompose区别详解
java·开发语言
萧瑟余晖7 小时前
Java深入解析篇十七之SpringCloud
java·开发语言
ttod_qzstudio7 小时前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python
萧瑟余晖9 小时前
Java深入解析篇十七之Spring Security
java·开发语言·spring
C++ 老炮儿的技术栈11 小时前
从 Qt Designer 属性编辑器的层级可以看到继承链
c语言·数据库·c++·qt·sqlite·visual studio
new_zhou11 小时前
C++ 项目 AI 协作指南(Windows / MSVC 环境)
c++·人工智能·windows
二十雨辰11 小时前
[Java]-Spring面试题
java·开发语言
_oP_i12 小时前
python 后缀 mjs文件
开发语言·python