how to hide a UClass from any subgruop.

Suppose, I have a class that serve as the base for a family of similar objects, say a furniture.

the form the base class the user can select diffrent king of furniture to populate a room, ex:
chairs, tables, sofas, etc. But does not make sence that the user select a furniture form the set.
bellow is a simple example

UCLASS(ClassGroup=(MyGroup), meta=(BlueprintSpawnableComponent))
class MyFurniture : public USceneComponent
{
};


UCLASS(ClassGroup=(MyGroup), meta=(BlueprintSpawnableComponent))
class MyChair : public MyFurniture
{
};

how can the programmer make so that the base class is hide, form the editor detail panel, an all othe panel?
I ha searched the engine, I I can figure out how to accomplish this.
But I assume this is a quite common situation.

Thanks
Julio

You can make the class abstract. This stops it from being placed in the level, but you can disallow abstract when selecting.

Alternatively, I forget the exact meta specifiers, but you can make the base class Blueprintable, BlueprintInternalUseOnly, to make that class not appear in blueprints, but all child classes appear.

1 Like

ahh, UCLASS(Abstract, …
that does it, awesome!!!

one the assumption that it will not show any later side effect. This can be closed now.

Thank you man.

No problem~
You just need to click solution on my response to mark it as solved