Seems like we are probably just missing a metadata check when drawing the details of the actor instance, and it is only doing the check for drawing ActorComponent details.
Using this code in:
////////////////////////// // FooActor.h UCLASS(Blueprintable) class QAGAME_API AFooActor : public AActor { GENERATED_BODY() public: AFooActor(); UPROPERTY(VisibleAnywhere, BlueprintReadOnly) UHideComponent* FooComponent; }; // Hide most categories from the parent class UCLASS(BlueprintType, HideCategories = ("Rendering|Components|Sprite", Physics, Collision, Navigation)) class QAGAME_API UHideComponent : public UBillboardComponent { public: GENERATED_BODY() UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Foo") UTexture2D* FooTexture; }; ////////////////////////// // FooActor.cpp AFooActor::AFooActor() { FooComponent = CreateDefaultSubobject<UHideComponent>(TEXT("I should be hidden Component")); RootComponent = FooComponent; }
1. Create a BP based off of FooActor
2. Drag an instance of it into the level
3. In the details panel, select the root instance
Result:
The "Sprite" category is not hidden, but it is when you select the component itself
Expected:
The "Sprite" category should be hidden on that component
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-96383 in the post.
1 |
Component | UE - Gameplay - Blueprint Editor |
---|---|
Affects Versions | 4.25 |
Created | Aug 4, 2020 |
---|---|
Resolved | Jul 19, 2022 |
Updated | Jul 19, 2022 |