UE 4.7.5 - C++ component class change break the BP


How to reproduce the issue:

1 - create a C++ class with a StaticMeshComponent attach to the SceneRoot

2 - Create a BP based on it and assign a StaticMesh to it.

3 - Place the BP in your level

4 - close the editor

5 - Change the SMComponent to SkeletalMeshComponent and keep the variable name.

6 - Open the BP → You can’t the MeshComponent anymore.

The value of the component has been properly reseted (as it can’t map it during unserialize) but you can’t use it anymore.


Hey -

This seems to be more of an issue with the skeletal mesh component rather than changing from one to the other. When adding only the skeletal mesh to a project I found that had the same issue of not being able to make any changes to the component’s values as I did after switching from a static mesh component to a skeletal mesh component. This has been bugged as UE-13899) for further investigation.


as per your comment in the forums:
13899 - The property you are looking to add to your blueprint is not exposed by default. Add something like this: UPROPERTY(Category = Something, VisibleAnywhere) to make it editable.

I don’t understand the answer.
My property are set with a UPROPERTY attribute otherwise, I can’t see them in the BP side.

the issue is with changing the type of a property that was editable (a SM component to a SK Component) and that change made the BP not usable anymore as the SK Mesh was not exposed to the BP interface whereas the SM was removed properly.


Hey -

Can you clarify what behavior you’re seeing? After running through the steps listed above I found that the details panel of the mesh component was blank which is another known issue. If you’re seeing something different please let me know so that I can update my reproduction steps.


I’m not sure what you are calling blank.

My issue is that you can’t setup the new SKComponent (set the mesh / anim properties), you have no more access to the component.
If you create a new BP after the changes, you are able to configure the SKComponent.

Is this the same thing ?

After changing the code from a UStaticMeshComponent* to a USkeletealMeshComponent* this is what I see when I select the mesh component in the blueprint :


Can you post a screenshot of what you’re seeing to give me a better idea of what it is you’re trying to explain?

this is exatly this.

We can’t configure the component. the details panel is blank.

So if it’s another issue, is there any tracking number for it? Is it solved in 4.8 preview?


Hey -

I tested this in 4.8 preview 3 and was able to still edit the component after switching from static to skeletal mesh. You should be see the same behavior in the 4.8 branch available on GitHub as well.