UE5 文字游戏(1) 仅UI截图转换为texture2d(适用于window端)

目录

需求

思路

1.截图并读取到本地

2.本地读取图片并转换为纹理2d

效果展示


找了好多的解决办法,都不管用。这个算是折中的。


需求

将当前的用户控件(ui)截图下来,并赋值到一个texture2d上。

我的需求:文字游戏中,点击存档,将当前的游戏画面转换为一个纹理2d,任何将纹理2d赋值到该存档的头图。


思路

先截图到本地,然后再从本地读取成texture2d。


1.截图并读取到本地

参考:

UE Widget截图功能实现-CSDN博客

cpp 复制代码
.h	
UFUNCTION(BlueprintCallable, Category = "MyFunc", meta = (Keywords = "ScreenShot_"))
		void CaptureUIScreenshot(UUserWidget* Widget ,const FString& SavePath);

.cpp
void UMyScreenShotComponent::CaptureUIScreenshot(UUserWidget* Widget, const FString& SavePath)
{
	
	TSharedRef<SWidget> TargetSWidget = Widget->TakeWidget();
	TArray<FColor> RawData;
	FIntVector OutSize;
	bool bScreenshotSuccessful = FSlateApplication::Get().TakeScreenshot(TargetSWidget, RawData, OutSize);
	if (bScreenshotSuccessful) {
		TArray<uint8> CompressedBitmap;
		FImageUtils::CompressImageArray(OutSize.X, OutSize.Y, RawData, CompressedBitmap);
		FFileHelper::SaveArrayToFile(CompressedBitmap, *SavePath);
	}
}

2.本地读取图片并转换为纹理2d

插件

效果展示

相关推荐
温玉琳琅1 小时前
【UE5】虚幻引擎小百科
ue5·游戏引擎·虚幻
远离UE41 天前
UE 材质 变体 概念
ue5·材质
吴梓穆3 天前
UE5 重新编译插件版本
ue5
HECUgauss3 天前
UE5 使用过程遇到的问题
ue5
小白学过的代码3 天前
ue5.4和webul通信
开发语言·javascript·ue5
m0_552200823 天前
《UE5_C++多人TPS完整教程》学习笔记40 ——《P41 装备(武器)姿势(Equipped Pose)》
c++·游戏·ue5
漫游者Nova3 天前
虚幻引擎Unreal Engine5恐怖游戏设计制作教程,从入门到精通从零开始完整项目开发实战详细讲解中英字幕
ue5·游戏引擎·虚幻·游戏开发完整教程·恐怖游戏开发
ue星空5 天前
UE5音频技术
ue5
帅_shuai_16 天前
UE5 游戏模板 —— FirstShootGame
游戏·ue5
吴梓穆17 天前
UE5 手动停止Delay定时器
ue5