diff --git a/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp b/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp
index 17a5b81849fd5ec8ad14418ae59962b3027835de..a47299a66f0b3f94c7bd7137e2a87d5ba8a8c085 100644
--- a/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp
+++ b/Source/InstancedMeshLineRendering/Private/GPUInstancedLineComponent.cpp
@@ -38,7 +38,7 @@ UGPUInstancedLineComponent::UGPUInstancedLineComponent(const FObjectInitializer&
LineMaterialInterface = LoadObject<UMaterialInterface>(NULL, TEXT("/InstancedMeshLineRendering/DynamicLineMaterial.DynamicLineMaterial"), NULL, LOAD_None, NULL);
//DynamicLineMaterial = UMaterialInstanceDynamic::Create(LineMaterialInterface, GetTransientPackage());
SetMaterial(0, DynamicLineMaterial);
- SetMobility(EComponentMobility::Static);
+ //SetMobility(EComponentMobility::Static);
#if WITH_EDITOR
bAutoActivate = true;
@@ -404,6 +404,14 @@ void UGPUInstancedLineComponent::PostEditChangeProperty(FPropertyChangedEvent& P
UpdateAllEditorLines();
}
}
+ if (PropertyName == "LineMaterialInterface")
+ {
+ DynamicLineMaterial = UMaterialInstanceDynamic::Create(LineMaterialInterface, GetTransientPackage());
+ SetMaterial(0, DynamicLineMaterial);
+
+ DynamicLineMaterial->SetTextureParameterValue("PositionTexture", PositionTexture);
+ DynamicLineMaterial->SetScalarParameterValue("TextureWidth", TextureWidth);
+ }
}
Super::PostEditChangeProperty(PropertyChangedEvent);
diff --git a/Source/InstancedMeshLineRendering/Public/GPUInstancedLineComponent.h b/Source/InstancedMeshLineRendering/Public/GPUInstancedLineComponent.h
index a949141c4c7a7e15b5fe14dff31c0c2e31038f81..974f51fa177c40efe7611f6f87874651396db75f 100644
--- a/Source/InstancedMeshLineRendering/Public/GPUInstancedLineComponent.h
+++ b/Source/InstancedMeshLineRendering/Public/GPUInstancedLineComponent.h
@@ -465,7 +465,7 @@ public:
UPROPERTY(EditAnywhere, DisplayName = "Lines", meta = (MakeEditWidget = true, EditFixedOrder))
TArray<FEditorLineData> EditorLines;
- UPROPERTY()
+ UPROPERTY(EditAnywhere)
UMaterialInterface* LineMaterialInterface;
UPROPERTY()