Разработчик «игр для дяденек в галстуках»
1. Используй манифест как чек-лист при генерации.
А мне вот это понравилось, а код будет генерироваться пеонами или ИИ?
Спасибо за отзыв. Рад, что статья оказалась полезной!
Оставлю в комментарии апдейт.
Код работает без изменений под 5.1, проверено.
В UE 5.1 добавили коллбэк на HighresShot, теперь на него можно подписаться, и считать картинку из памяти не сохраняя на диск, вот так:
void A_GMB::TakeScreenshot() { FHighResScreenshotConfig& HighResScreenshotConfig = GetHighResScreenshotConfig(); HighResScreenshotConfig.SetResolution(1920, 1080); HighResScreenshotConfig.SetFilename(ScreenshotFileName); HighResScreenshotConfig.SetMaskEnabled(false); HighResScreenshotConfig.SetHDRCapture(false); GEngine->GameViewport->OnScreenshotCaptured().AddUObject(this, &A_GMB::HandleScreenshotData); GEngine->GameViewport->GetGameViewport()->TakeHighResScreenShot(); } void A_GMB::HandleScreenshotData(int32 InSizeX, int32 InSizeY, const TArray<FColor>& InImageData) { TArray64<uint8> CompressedBitmap; FImageUtils::PNGCompressImageArray(InSizeX, InSizeY, TArrayView64<const FColor>(InImageData.GetData(), InImageData.Num()), CompressedBitmap); UE_LOG(LogTemp, Error, TEXT("Screenshot taken")); // тут можно запилить новую функцию и передать в нее адрес массива с картинкой UploadManager->UploadScreenshot(CompressedBitmap, UploadInfo); }
Для того, чтобы конвертировать TArray64 в TArray можно использовать конструктор вида TArray(CompressedBitmap) из примера выше.
А мне вот это понравилось, а код будет генерироваться пеонами или ИИ?
Спасибо за отзыв. Рад, что статья оказалась полезной!
Оставлю в комментарии апдейт.
Код работает без изменений под 5.1, проверено.
В UE 5.1 добавили коллбэк на HighresShot, теперь на него можно подписаться, и считать картинку из памяти не сохраняя на диск, вот так:
Для того, чтобы конвертировать TArray64 в TArray можно использовать конструктор вида TArray(CompressedBitmap) из примера выше.