Create MaterialInstance inside constructor

Hello,

There is a problem creating you dynamic material instance in the constructor.
What I did is the following.

In the constructor:

AAAAA::AAAAA(const FObjectInitializer& ObjectInitializer)
	: Super(ObjectInitializer)
{
	static ConstructorHelpers::FObjectFinder<UMaterialInstance> IconEnergyFillMatOb(TEXT("/Game/HUD/Materials/M_IconEnergyLevel_Inst"));

if (IconEnergyFillMatOb.Succeeded())
	IconEnergyFillMatInst = IconEnergyFillMatOb.Object;

}

In the class AAAAA
UMaterialInstance* IconEnergyFillMatInst;
UMaterialInstanceDynamic* IconEnergyFillMatInstDyn;

In PostInitialize :

void AAAAA::PostInitializeComponents()
{
	Super::PostInitializeComponents();

	if (IconEnergyFillMatInst)
		IconEnergyFillMatInstDyn = UMaterialInstanceDynamic::Create(IconEnergyFillMatInst, this);
}

The FObjectFinder uses a UMaterialInstance
And UMaterialInstanceDynamic::Create returns a UMaterialInstanceDynamic

I hope this will help you.
D.