Let’s AInfo class, make a new C++ class that inherit from it.
Go in the editor and create a blueprint of your new class.
Go back to C++ and add in the constructor: .DoNotCreateDefaultSubobject(TEXT(“Sprite”)) which should remove the sprite that is used as root component.
Go back in the editor and open up the blueprint created previously. You can see that now the root component is a empty billboard object and you have a default root component attach to it.
The bug is that you can’t remove the Billboard component.
If you create a new blueprint of your class, you will see that now you just have the default root component.
Expected: Be able to edit previous blueprint after the C++ and not have to redo them all in order to reflect the real C++ native structure.
I’d like to see if I can reproduce this bug on my machine but I’m not sure what you mean at the beginning by “Let’s AInfo class.” Is this a custom class that you created? Also, which version of the engine are you working in where this is happening? Are you still unable to edit the original blueprint if you close and reopen the editor after making the changes in code?
Sorry I was not clear. I meant let’s take AInfo (from the engine) for our example.
I’m using this class as a base class of a custom one.
I’m on 4.5 (not 4.5.1).
If fact, I can always edit the original Blueprint, it’s just that some component should not be there (the billboard one) and I can remove it.
Closing and reopening the editor didn’t impact this behavior.
I created a class (MyInfo) based off of the Info class, however I’m not seeing the option to make a blueprint based on my class. Do you get the bug if you follow the same steps using “Actor” as the parent class rather than Info?
After adding Blueprintable to the UClass() there is a memory leak when opening the project. What code do you have before .DoNotCreateDefaultSubobject(TEXT(“Sprite”)) in the constructor and do you have any code added to the .h file of your custom class?