UnrealImageCapture icon indicating copy to clipboard operation
UnrealImageCapture copied to clipboard

UnrealImageCapture in UE-5.3

Open gdaddi opened this issue 1 year ago • 3 comments

These are the steps I followed to get a minimal version of this pipeline working.

I rebuilt the Plugin for UE-5.3, but could not get the Plugin to work properly (There were errors in the CameraCaptureManager_BP and I could not place it in the Editors).

Similarly to https://github.com/TimmHess/UnrealImageCapture/issues/35, I ended up porting the source files into a project (MyProject) and building everything in that project. Here are the notes I took along the way:

  • Moved from UnrealImageCapture/Plugin_UE5, the files CameraCaptureManager.cpp, CameraCaptureManager.h to MyProject/Source/MyProject/.
  • Solve the linking issues by modifying MyProject.Build.cs
public class MyProject : ModuleRules
{
	public MyProject(ReadOnlyTargetRules Target) : base(Target)
	{
		PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
	
		PublicDependencyModuleNames.AddRange(new string[] { 
			"Core",
			"InputCore", 
			"ImageWrapper", 
			"RenderCore", 
			"Renderer", 
			"RHI",
			"CoreUObject",
			"Engine",
			"Slate",
			"SlateCore",
		});

}
  • You should be able to compile the C++ code now using VSCode's build task.
  • Check that things are working by looking for CameraCaptureManager in the Editor's content manager under C++ Classes.
  • Drag and drop CameraCaptureManager into the viewport.
  • Place a SceneCapture2D actor (from the Place Actor Panel)
  • Set the CaptureComponent of CameraCaptureManager to point to the SceneCapture2D camera.
  • Open the Level's Blueprint and connect a Capture Non Blocking function to a EnhancedInputComponent that triggers when the desired key-binding is pressed.
  • Play the map, and press the selected capture key-binding.

gdaddi avatar Mar 04 '24 23:03 gdaddi

Hey, sorry I am not very active on this anymore (especially with the pull request pending which is quite nice but ya.. there is barely time ':D). The prebuild plugin cannot work on any version different than the one it was compiled for - this is why I dropped it all altogether. Unfortunately, that sentence never made it into the readme as I realize now...

The way you did it is exactly how I intended it to be done. At some point, I tried to the entire thing more stand-alone but the maintenance is just not worth for me atm. Let's say I am happy that the codebase or interface did not change drastically so that this code can still function at all :)

Thanks for checking out the repo, I hope it will help you :high_brightness:

TimmHess avatar Mar 05 '24 13:03 TimmHess

hello @gdaddi. I followed the same steps as you to complete the code migration in 5.3, but I could only capture the color image, and there was only one empty picture when I captured the Mask image. the setting for the mask image the setting for the color image

clolor image
mask image

Alioth5670 avatar Oct 14 '24 08:10 Alioth5670

I solved this problem by saving images in RGBA format, which had some problems displaying images on my computer, and using python to read them was no problem

Alioth5670 avatar Oct 15 '24 03:10 Alioth5670