Build Type: ‘Binary’ build from the Unreal Launcher
Build version: 4.14.3-3249277
Decription: References on component gets cleared when updating parent actor blueprint
Repro project includes:
- Clean c++ project created form UE launcher without any engine/starter content
- One c++ class
UTestSceneComponent
derived from USceneComponent
with UPROPERTY(EditAnywhere) AActor* testActor
- One Actor blueprint
TestActor_BP
with a UTestSceneComponent
- One
NewMap
level with a TestActor_BP
Repro Steps:
- Open
NewMap
- Select
TestActor_BP
in the world outliner panel
- Select
TestScene (Inherited)
in the details panel
- Note that the “Test Actor” property is set to
TestActor_BP
- Open/Edit the
TestActor_BP
blueprint
- Edit any value in ClassDefualts (e.g. TickInterval from 0.0 to 1.0)
- Compile and save the blueprint
- Note that
TestScene (Inherited)
:s “Test Actor” property is now None
in the details panel
Issue occurs 100% of the timefor me with these steps
System Specs: reference card
Am I perhaps using this component in an officially unsupported way? is there a workaround/right way to implement this behavior?
Hey j_zeitler-
Thank you for submitting a bug report. I have reproduced this issue and logged a report for it here Unreal Engine Issues and Bug Tracker (UE-41523) . You can track the report’s status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.
Cheers
Thanks ,
Great to get some UE eyes on this
Saw this by the way:
[…] setting the pointer to point to
an instance of the same blueprint will
cause the pointer to reset to “None”
The issue actually happens regardless what (actor) instance the pointer points to.
This also seem to happen with references in level sequences. haven’t tested that as thoroughly though
Okay, so the bug is not as severe as I thought for Level Sequences. Still annoying though. For level sequences it has to do with referencing blueprint instances in sub-levels. Repro is:
- start a fresh project
- make two levels (
main.umap
and sub.umap
)
- load
main
in the editor
- drag-drop
sub
into the levels list and set it to initially visible+loaded or always loaded
- create a level sequence,
mainSeq
- drop
mainSeq
into main
and set it to autoplay
- drop a cube into
sub
- make a blueprint,
BP_cube
from the cube
- open
mainSeq
from the content browser
- drop in
cube
into mainSeq
from the world outliner
- create some transform animation for the cube track
- save all
- play in editor (note that the cube is moving)
- open
BP_cube
- change anything in class defaults (like TickInterval)
- compile and save
BP_cube
- play in editor again (note that cube is not moving, lvlseq ref is broken)
should I open a new bug report for this? Since it’s between levels it may have to do with the lazyPtr
implementation or something rather than the regular references above
the lvlseq bug is tested with 4.15.1