diff --git a/InstancedMeshLines/Content/ExampleMap.umap b/InstancedMeshLines/Content/ExampleMap.umap
index b1de94ebe5442028715f3f989b4fa96eda7d253a..74ab5998667c252a02f42a9f3a4a647b42da4120 100644
Binary files a/InstancedMeshLines/Content/ExampleMap.umap and b/InstancedMeshLines/Content/ExampleMap.umap differ
diff --git a/InstancedMeshLines/Content/ExampleMap_BuiltData.uasset b/InstancedMeshLines/Content/ExampleMap_BuiltData.uasset
index 2c286af6defcfe1bdee79231d1d8de3684093ce5..32316315fc263a664fccfa3ab79ead1fef1f0c8b 100644
Binary files a/InstancedMeshLines/Content/ExampleMap_BuiltData.uasset and b/InstancedMeshLines/Content/ExampleMap_BuiltData.uasset differ
diff --git a/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Content/TestActor.uasset b/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Content/TestActor.uasset
index a74cd69312be0dcea158b0f1fec86e4ebc231972..a4ad9f54aa45342162aa0260f072b8361be2431b 100644
Binary files a/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Content/TestActor.uasset and b/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Content/TestActor.uasset differ
diff --git a/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp b/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp
index 81e55a0245a7ef7c60c4df08fbdb5f5e82aed78f..8a41797ca17a0eec846c614a0575006576414b55 100644
--- a/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp
+++ b/InstancedMeshLines/Plugins/InstancedMeshLineRendering/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp
@@ -11,8 +11,11 @@ UGPUInstancedLineComponent::UGPUInstancedLineComponent(const FObjectInitializer&
 	SetGenerateOverlapEvents(false);
 	
 	static ConstructorHelpers::FObjectFinder<UStaticMesh>LineMeshAsset(TEXT("StaticMesh'/InstancedMeshLineRendering/line.line'"));
+	static ConstructorHelpers::FObjectFinder<UMaterial>LineMaterialAsset(TEXT("Material'/InstancedMeshLineRendering/DynamicLineMaterial.DynamicLineMaterial'"));
 	UStaticMesh* LineAsset = LineMeshAsset.Object;
+	UMaterial* LineMaterial = LineMaterialAsset.Object;
 	SetStaticMesh(LineAsset);
+	SetMaterial(0, LineMaterial);
 	
 	// three color values + width + 1 texture index value
 	// r | g | b | w | i_T 
@@ -131,7 +134,7 @@ void UGPUInstancedLineComponent::BeginPlay()
 
 	//if (PositionTexture == nullptr)
 	{
-		UE_LOG(LogTemp, Display, TEXT("UGPUInstancedLineComponent::PostInitProperties Creating Texture"));
+		UE_LOG(LogTemp, Display, TEXT("UGPUInstancedLineComponent::BeginPlay Creating Texture"));
 
 		PositionTexture = UTexture2D::CreateTransient(TextureWidth, TextureHeight, PF_A32B32G32R32F); // TODO Hardcoded values
 		// Allocate the texture RHI
@@ -140,12 +143,12 @@ void UGPUInstancedLineComponent::BeginPlay()
 
 	//if (DynamicLineMaterial == nullptr)
 	{
-		UE_LOG(LogTemp, Display, TEXT("UGPUInstancedLineComponent::PostInitProperties Creating MID"));
+		UE_LOG(LogTemp, Display, TEXT("UGPUInstancedLineComponent::BeginPlay Creating MID"));
 
-		UMaterial* LineMat = LoadObject<UMaterial>(GetTransientPackage(), TEXT("Material'/InstancedMeshLineRendering/DynamicLineMaterial.DynamicLineMaterial'"));
-		DynamicLineMaterial = UMaterialInstanceDynamic::Create(LineMat, this, "DynamicLineMaterial");
+		//UMaterial* LineMat = LoadObject<UMaterial>(GetTransientPackage(), TEXT("Material'/InstancedMeshLineRendering/DynamicLineMaterial.DynamicLineMaterial'"));
+		DynamicLineMaterial = CreateAndSetMaterialInstanceDynamic(0);// UMaterialInstanceDynamic::Create(LineMat, this, "DynamicLineMaterialMID");
 
-		GetStaticMesh()->SetMaterial(0, DynamicLineMaterial);
+		//GetStaticMesh()->SetMaterial(0, DynamicLineMaterial);
 
 		DynamicLineMaterial->SetTextureParameterValue("PositionTexture", PositionTexture);
 		DynamicLineMaterial->SetScalarParameterValue("TextureWidth", TextureWidth);