How do you call interface function from a different module in Blueprints?

I want to call ExportAssets from the IAssetTools interface. There’s already an implementation of this interface in “Source/Developer/AssetTools/AssetTools.h” and its part of the AssetToolsModule. When I call the function in blueprint nothing happens.

217780-exportassetnotworking.png

However this does nothing. What I had to do was create a cpp class that includes that module and creates a function to call that function.

#pragma once

#include "CoreMinimal.h"
#include "Engine/SceneCaptureCube.h"
#include "AssetToolsModule.h"
#include "SceneCaptureIng.generated.h"

/**
 * 
 */
UCLASS(Blueprintable)
class CAPTUREENVIRONMENT_API ASceneCaptureIng : public ASceneCaptureCube
{
	GENERATED_BODY()

	UFUNCTION(BlueprintCallable)
	void ExportAsset(const TArray<FString> assetsToExport, const FString exportPath) 
	{
		FAssetToolsModule::GetModule().Get().ExportAssets(assetsToExport, exportPath);
	}
	
};

I just inherit from this cpp class in a blueprint and then call that function and it works. There has to be an easier way then this?

A Interface itself does nothing and the node will ignore everything that did not implement that Interface (Target). Since you want to call the already implemented Functionality of FAssetToolsModule the way you got it is correct. You could also implement the Interface on your Class but you would do the exact same thing there. The only benefit would be that you can call it trough the Interface.

You might want to lookup what a Interface is (easy to find on the Internet)

I know what an interface is. I just wanted to know if there was a way for me to access the implementation that already exist in blueprints without having to make this cplusplus class.

That doesn’t work. It’s telling me the value it gets is a default implementation. However the function doesn’t do anything. I put a break point in the code and got nothing. I also looked into the interface blueprints and I couldn’t even inherit from IAssetTools. Is this just something you can’t do in Blueprints?