Description

Because both FWorldAsyncTraceState's CurrentFrame and FTraceHandle are default initialized to 0, on the first frame, if a new Asnc Trace starts all default FTraceHandles will reference the same (now valid) data. This results in presumed distinct default FTraceHandles unexpectedly affecting the validity via IsTraceHandleValid of one another.

Steps to Reproduce
  1. Setup 2 instances of an Actor with a default initialized FTraceHandle.
  2. Have the actors check IsTraceHandleValid on this handle on the first frame. 
  3. If invalid, replace with results from a new Async Trace.

Expected Results: Both actors receive invalid and create new traces.

Actual Results: The first actor receives invalid and creates a new trace, the second receives valid

Have Comments or More Details?

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

0
Login to Vote

Won't Fix
ComponentUE - Simulation - Physics
Affects Versions4.20
CreatedSep 18, 2018
ResolvedAug 18, 2021
UpdatedAug 18, 2021