5#include "CoreMinimal.h"
7#include "Materials/MaterialInstanceDynamic.h"
9#include "Engine/InstancedStaticMesh.h"
11#include "Components/HierarchicalInstancedStaticMeshComponent.h"
14#include "TaggedComponent.generated.h"
18UCLASS( meta=(BlueprintSpawnableComponent) )
29 virtual FPrimitiveSceneProxy * CreateSceneProxy()
override;
32 virtual void TickComponent(
float DeltaTime,
enum ELevelTick TickType, FActorComponentTickFunction * ThisTickFunction)
override;
35 virtual void OnRegister()
override;
38 virtual FBoxSphereBounds CalcBounds(
const FTransform & LocalToWorld)
const ;
41 void SetColor(FLinearColor color);
44 FLinearColor GetColor();
52 UMaterial * TaggedMaterial;
56 UMaterialInstanceDynamic * TaggedMID;
59 bool bSkeletalMesh = false;
62 FPrimitiveSceneProxy * CreateSceneProxy(UStaticMeshComponent * StaticMeshComponent);
63 FPrimitiveSceneProxy * CreateSceneProxy(USkeletalMeshComponent * SkeletalMeshComponent);
64 FPrimitiveSceneProxy * CreateSceneProxy(UHierarchicalInstancedStaticMeshComponent * MeshComponent);
65 FPrimitiveSceneProxy * CreateSceneProxy(UInstancedStaticMeshComponent * MeshComponent);
68 bool bShouldWaitFrame =
true;
69 int NumFramesToWait = 2;
77 FTaggedStaticMeshSceneProxy(UStaticMeshComponent * Component,
bool bForceLODsShareStaticLighting, UMaterialInstance * MaterialInstance);
80 virtual FPrimitiveViewRelevance GetViewRelevance(
const FSceneView * View)
const override;
92 FTaggedSkeletalMeshSceneProxy(
const USkinnedMeshComponent * Component, FSkeletalMeshRenderData * InSkeletalMeshRenderData, UMaterialInstance * MaterialInstance);
95 virtual FPrimitiveViewRelevance
GetViewRelevance(
const FSceneView * View)
const override;
110 virtual FPrimitiveViewRelevance
GetViewRelevance(
const FSceneView * View)
const override;
125 virtual FPrimitiveViewRelevance
GetViewRelevance(
const FSceneView * View)
const override;
UMaterialInstance * TaggedMaterialInstance
virtual FPrimitiveViewRelevance GetViewRelevance(const FSceneView *View) const override
virtual FPrimitiveViewRelevance GetViewRelevance(const FSceneView *View) const override
UMaterialInstance * TaggedMaterialInstance
virtual FPrimitiveViewRelevance GetViewRelevance(const FSceneView *View) const override
UMaterialInstance * TaggedMaterialInstance
UMaterialInstance * TaggedMaterialInstance