Skip to content

Commit

Permalink
chore: cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
GerkinDev committed Sep 3, 2024
1 parent 41025f8 commit a3d7307
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 69 deletions.
82 changes: 16 additions & 66 deletions Source/SvgBooga/Private/SvgTexture2D.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,20 +21,20 @@ uint32 ConvertFLinearColorToInteger(const FLinearColor& Color)
USvgTexture2D::USvgTexture2D(const FObjectInitializer& ObjectInitializer)
: Super(ObjectInitializer)
{
UE_LOG(LogTemp, Warning, TEXT("SvgBooga: USvgTexture2D(ObjectInitializer)"));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D(ObjectInitializer)"));
Texture = ObjectInitializer.CreateDefaultSubobject<UTexture2D>(this, TEXT("Texture"));
}

#if WITH_EDITOR
bool USvgTexture2D::UpdateTextureFromSvg(const FString& SvgFilePath, const int TextureWidth, const int TextureHeight,
const FLinearColor InBackgroundColor = FLinearColor::Transparent)
{
UE_LOG(LogTemp, Warning, TEXT("SvgBooga: USvgTexture2D::UpdateTextureFromSvg()"));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::UpdateTextureFromSvg()"));
BackgroundColor = InBackgroundColor;
const std::unique_ptr<lunasvg::Document> Document = lunasvg::Document::loadFromFile(TCHAR_TO_UTF8(*SvgFilePath));
if (!Document)
{
UE_LOG(LogTemp, Error, TEXT("SvgBooga: Failed to load SVG file: %s"), *SvgFilePath);
UE_LOG(LogTemp, Error, TEXT("Failed to load SVG file: %s"), *SvgFilePath);
return false;
}

Expand All @@ -60,7 +60,7 @@ bool USvgTexture2D::UpdateTextureFromSvg(const FString& SvgFilePath, const int T
ConvertFLinearColorToInteger(BackgroundColor));
if (!Bitmap.valid())
{
UE_LOG(LogTemp, Error, TEXT("SvgBooga: Failed to render SVG to bitmap."));
UE_LOG(LogTemp, Error, TEXT("Failed to render SVG to bitmap."));
return false;
}

Expand All @@ -70,7 +70,7 @@ bool USvgTexture2D::UpdateTextureFromSvg(const FString& SvgFilePath, const int T

TSharedPtr<FImage> USvgTexture2D::ConvertBitmapToImage(const lunasvg::Bitmap& Bitmap)
{
UE_LOG(LogTemp, Warning, TEXT("SvgBooga: USvgTexture2D::ConvertBitmapToImage()"));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::ConvertBitmapToImage()"));
TSharedPtr<FImage> Image = MakeShared<FImage>();
if (!Bitmap.valid())
{
Expand Down Expand Up @@ -109,22 +109,22 @@ TSharedPtr<FImage> USvgTexture2D::ConvertBitmapToImage(const lunasvg::Bitmap& Bi
void USvgTexture2D::UpdateTextureFromImage(const TSharedPtr<FImage>& SourceImage, const int TextureWidth,
const int TextureHeight)
{
UE_LOG(LogTemp, Warning, TEXT("SvgBooga: USvgTexture2D::UpdateTextureFromImage()"));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::UpdateTextureFromImage()"));
if (!IsInGameThread())
{
UE_LOG(LogTemp, Error, TEXT("SvgBooga: UpdateTextureFromImage must be called on the game thread."));
UE_LOG(LogTemp, Error, TEXT("UpdateTextureFromImage must be called on the game thread."));
return;
}

if (!SourceImage)
{
UE_LOG(LogTemp, Error, TEXT("SvgBooga: SourceImage is not valid."));
UE_LOG(LogTemp, Error, TEXT("SourceImage is not valid."));
return;
}

if (!Texture)
{
UE_LOG(LogTemp, Error, TEXT("SvgBooga: Texture is not initialized."));
UE_LOG(LogTemp, Error, TEXT("Texture is not initialized."));
return;
}

Expand Down Expand Up @@ -183,7 +183,7 @@ void USvgTexture2D::UpdateTextureFromImage(const TSharedPtr<FImage>& SourceImage
}
else
{
UE_LOG(LogTemp, Error, TEXT("SvgBooga: Failed to lock MipMap data for writing."));
UE_LOG(LogTemp, Error, TEXT("Failed to lock MipMap data for writing."));
return;
}

Expand All @@ -199,28 +199,17 @@ void USvgTexture2D::UpdateTextureFromBitmap(const lunasvg::Bitmap& Bitmap, const
}
#endif

inline int32 MipsCount(USvgTexture2D *SvgTexture) {
return SvgTexture->GetTexture()->GetPlatformData() == nullptr ? -1 :
SvgTexture->GetTexture()->GetPlatformData()->Mips.Num();
}

void USvgTexture2D::Serialize(FArchive& Ar)
{
UE_LOG(LogTemp, Warning, TEXT("SvgBooga: USvgTexture2D::Serialize() in mode %s"), Ar.IsSaving() ? TEXT("Save") : Ar.IsLoading() ? TEXT("Load") : TEXT("Other"));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::Serialize()"));
Super::Serialize(Ar);

Ar << OriginalWidth;
Ar << OriginalHeight;
Ar << ImportPath;
Ar << AspectRatio;
Ar << BackgroundColor;
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::Serialize(): num mips before: %d"),
MipsCount(this));
Ar << Texture;
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::Serialize(): num mips after: %d"),
MipsCount(this));
}

UTexture2D* USvgTexture2D::GetTexture()
Expand All @@ -247,12 +236,9 @@ float USvgTexture2D::GetAspectRatio()

//#region For UTexture
FTextureResource* USvgTexture2D::CreateResource() {
UE_LOG(LogTemp, Warning, TEXT("SvgBooga: USvgTexture2D::CreateResource()"));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::CreateResource()"));
FTextureResource* TextureResource = Texture->CreateResource();
UE_LOG(LogTemp, Warning, TEXT("SvgBooga: TextureResource obtained."));
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::CreateResource(): num mips after: %d (%d)"),
MipsCount(this), TextureResource->GetCurrentMipCount());
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::CreateResource() done"));
return TextureResource;
}

Expand All @@ -273,56 +259,20 @@ uint32 USvgTexture2D::GetSurfaceArraySize() const {
return Texture->GetSurfaceArraySize();
}
void USvgTexture2D::PreSave(FObjectPreSaveContext ObjectSaveContext) {
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::PreSave(): num mips after: %d"),
MipsCount(this));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::PreSave()"));
Super::PreSave(ObjectSaveContext);
Texture->PreSave(ObjectSaveContext);
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::PreSave(): num mips after: %d"),
MipsCount(this));
}
bool USvgTexture2D::IsReadyForAsyncPostLoad() const {
bool bReady = Texture->IsReadyForAsyncPostLoad();
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::IsReadyForAsyncPostLoad(): ret val: %d"),
bReady);
return bReady;
}
void USvgTexture2D::PostLoad() {
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::PostLoad(): num mips before: %d"),
MipsCount(this));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::PostLoad()"));
Texture->PostLoad();
Super::PostLoad();
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::PostLoad(): num mips after: %d"),
MipsCount(this));
}

bool USvgTexture2D::IsCompiling() const {
bool Compiling = Texture->IsCompiling();
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::IsCompiling(): compiling: %d"),
Compiling);
return Compiling;
}
bool USvgTexture2D::IsCurrentlyVirtualTextured() const {
bool VirtuallyTextured = Texture->IsCurrentlyVirtualTextured();
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::IsCurrentlyVirtualTextured(): %d"),
VirtuallyTextured);
return VirtuallyTextured;
}
void USvgTexture2D::UpdateResource() {
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::UpdateResource(): num mips before: %d"),
MipsCount(this));
UE_LOG(LogTemp, Warning, TEXT("USvgTexture2D::UpdateResource()"));
Texture->UpdateResource();
Super::UpdateResource();
UE_LOG(LogTemp, Warning,
TEXT("SvgBooga: USvgTexture2D::UpdateResource(): num mips after: %d"),
MipsCount(this));
}

//#region for UStreamableRenderAsset
Expand Down
3 changes: 0 additions & 3 deletions Source/SvgBooga/Public/SvgTexture2D.h
Original file line number Diff line number Diff line change
Expand Up @@ -79,10 +79,7 @@ class SVGBOOGA_API USvgTexture2D : public UTexture
virtual float GetSurfaceDepth() const override;
virtual uint32 GetSurfaceArraySize() const override;
virtual void PreSave(FObjectPreSaveContext ObjectSaveContext) override;
virtual bool IsReadyForAsyncPostLoad() const override;
virtual void PostLoad() override;
virtual bool IsCompiling() const override;
virtual bool IsCurrentlyVirtualTextured() const override;
virtual void UpdateResource() override;
//#region for UStreamableRenderAsset
virtual bool StreamOut(int32 NewMipCount) override;
Expand Down

0 comments on commit a3d7307

Please sign in to comment.