1. 绑定截图回调
FScreenshotRequest::OnScreenshotRequestProcessed().AddUObject(this, &UMyWidget::SetExportTexture); //本文由优快云博主执手画眉弯原创,未经允许不得转载!
绑定回调后,截图成功处理后回调到该函数
2. 调用截图功能
FScreenshotRequest::RequestScreenshot(FileName, bShowUI, true);//本文由优快云博主执手画眉弯原创,未经允许不得转载!
3. 截图处理模块
添加GameViewportClient子类,重载ProcessScreenShots(FViewport * InViewport)函数。
//在原图上添加水印
UTexture2D* LogoTexture = Cast<UTexture2D>(StaticLoadObject(UTexture2D::StaticClass(), NULL, TEXT("/Game/UI/Texture/Watermark")));
uint8* BitMapPtr = (uint8*)&Bitmap[Size.X * (Size.Y - (LogoTexture->GetSizeY()) * 2)];
uint8* MipData = static_cast<uint8*>(LogoTexture->PlatformData->Mips[0].BulkData.Lo