Description

In this situation, a FRuntimeFloatCurve UPROPERTY is stored in an Actor Component called CurveComponent. A Blueprint of MyActor (A subclass of AActor) is created and the CurveComponent is added to the Blueprint. A child of this Blueprint is created and then placed in the level. Editing the curve in the CurveComponent of any instances of this child blueprint results in any edits being lost when the map is reloaded, even if you save it.

Regression?: No
This happened as far back as 4.15

To note, in addition to load, this will also occur after any edit to the Blueprint Actor instance in the Actor Details tab that results in a RerunConstructionScripts() call. For example, typing into the Transform's "X" loc and pressing ENTER.

Steps to Reproduce
  1. Download the attached project, generate project files, compile, and open the project.
  2. Open the MyLevel level
  3. Click on the MyChildBP in the level
  4. In the details panel, select the Curve component and create a few points on the curve
  5. Save all, overwrite if asked to
  6. Open the MyLevel level again
  7. Click on the MyChildBP in the level
  8. Look at the Curve in the Curve component
    Result: The curve is clear of any points that you added.
    Expected: The curve has the points that you added.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-53466 in the post.

3
Login to Vote

Won't Fix
ComponentUE - Gameplay
Affects Versions4.154.164.174.184.19
CreatedDec 14, 2017
ResolvedDec 15, 2017
UpdatedApr 27, 2018