For me, it’s not UWheeledVehicleMovement. My VehicleMovementComponent is entirely custom and does not derive from WheeledVehicleMovement. Both of the components this has happened to are custom components, derived from either ActorComponent or SceneComponent.
Hello,
I’ve spent a good amount of time trying to get this issue to reproduce reliably but haven’t been able to manage to get it happen at all recently, even using UWheeledVehicleMovementComponent as mentioned previously. Unfortunately there isn’t much more I can do without a reproduction of some sort. I’m going to this as resolved for now for tracking purposes. If you are able to find a lead on how to reproduce this issue, please feel free to comment.
I have spent two days trying to solve this issue with no luck in 4.14. Things were working fine and all of a sudden I get this issue and it has completely broken my Blueprint classes. Changing to VisibleAnywhere and BlueprintReadOnly is the only thing that works most of the time, setting to EditAnywhere breaks customisation and BlueprintReadWrite seems to make no difference.
My scenario is that I have a UStaticMeshComponent* on my C++ Actor class which I am applying a mesh and scale to via a Blueprint-derived class.
My C++ Actor class also has a pointer to a C++ class that derives from UActorComponent. This C++ UActorComponent-derived class also contains a UStaticMeshComponent* so that it can store a reference to the actor’s mesh component for applying movement functionality to it.
I have tried removing all functionality and properties from the UActorComponent-derived class and then just added a UStaticMeshComponent* to it (no functionality in the CPP file, it doesn’t create one or anything); with or without stating it as a UPROPERTY in the Component class, it has the same result.
Also, when the Blueprint class of the Actor is added to a map and then the Blueprint Editor is opened, it causes an onslaught of “Ensure condition failed: PropertyNodeMap.ParentProperty == CurObjectNode” errors. I’m not sure what that means or if it is a different problem but hopefully it is relevant.
Let me know if anything else can help; it is extremely random so I am not sure how to give reliable reproduction steps but will see if I can come up with something that continues to reproduce this.
The errors I was getting are unrelated, it was a recursion issue with using PostEditChangeProperty.
It seems the main way to reproduce the edit issue is changing from VisibleAnywhere to any other value (EditDefaultsOnly/EditAnywhere/etc) but I started having the issue well before I changed the UPROPERTY from VisibleAnywhere to something else. Sometimes it just completely blanks out the detail page without showing anything and other times it only shows some of the details.
I’ve bumped into the same problem and was able to understand more details about this issue:
- It happens only with already existing blueprints. If after meddling with UPROPERTY you create another BP based on C++ class then it will works fine, until you change UPROPERTY meta tags again.
2.Commenting out, compiling, uncommenting, compiling did not restore my old BPs, however after I reparented BP in Class settings to Actor and then restored parent back to my C++ class - everything was restored correctly. Due to updates in 4.17 all pins remained unharmed and I lost only some customization of default values on pre-existing components.
I’ve run into this issue several times today. Make blueprint from class, change some things in the C++ base, then a seemingly random subset of the components lack Details. Could you point out where in the source code I might set some breakpoints in order to figure out what is happening differently when I select one component (whose Details work) versus another (whose details are invisible)?
I think the more simple solution is to only change the variable name (with the rename feature on the visual studio), and compile the project. With that the component details on the BP will show again and non of the BP data is lost.