Download

Trying to use ImageWrapper in Core make cyclic dependency...

I need for a new feature related to the splash screen (to support png and jpg, not just bmp), it work on windows and mac.

But on linux, well it’s another story, I wanted to add SDL2_Image lib but it can be simpler if I use image wrapper instead to load the image
and convert it in a SDL_Surface, it’s only used by linux anyway… also this SDL2_Image is not working with libjpg, so it is a no go in my opinion…

Now the problem is when I try to add ImageWrapper in (Runtime) Core.Build.cs with this



else if ((Target.Platform == UnrealTargetPlatform.Linux))
        {
			PublicIncludePaths.Add("Runtime/Core/Public/Linux");
			AddThirdPartyPrivateStaticDependencies(Target, 
				"zlib",
				"jemalloc",
				"elftoolchain",
				"SDL2"
                );
			PrivateDependencyModuleNames.Add("ImageWrapper");
...


in the linux platform section, when I compile it got cyclic…

Basically I just want to get the image data without recoding all thing like ImageWrapper do, it load PNG, JPG etc… so it can be used
to do the job. Then I just get the buffer/size/ image properties and recreate a new SDL_Surface, that quite simple what I want to accomplish :slight_smile:

Anyway, what can I do? can unreal poeples check this? move ImageWrapper to where It can be used from the Core module?

Thank you