Custom asset inheriting UObject not directly

I’m trying to create custom asset which derives USoundBase instead of UObject directly. This would be some kind of abstraction over two or more SoundWaves objects and play only one of them depending on dynamic setting (dynamic localization of audio). After creating MySoundBaseFactory according to this answer and recompiling the code MySoundBase doesn’t appear in the Miscellaneous context menu. If I change base class to UObject everything works like a charm (except that it doesn’t provide functionality I require :slight_smile: ). However, if I create an asset when UObject is the base and then change it to USoundBase, editor doesn’t have any problem with showing me the fields inherited from USoundBase. Am I doing something wrong (I might provide the code, but it is as simple as a) Asset type: just inherit USoundBase and add one text field b) Factory: mentioned above) or is it a bug (or a feature) in the Editor?

lets assume for a minute that every human on earth types so perfectly that they never introduce bugs, or leave things out unintentionally. If its not doing what you want it to, then you are definitely doing something wrong.

But in the real world people aren’t perfect. And they make mistakes. And nobody has to know what the mistakes are as long as we keep the code to ourselves and never share it when asking for help.

Lets just assume its a bug in the editor… What do you really think?

I believe you need to properly decorate your class with the proper meta data.

UCLASS( BlueprintType )

But I may be wrong.

Try using the same decorations you used when it worked, or copy the decorations from another class that works like USoundBase.