Line Traces are not correctly returning the Physical Material Info when that information is changed at runtime via a Override Physical Material or a Set Physical Material via a Dynamic Material Instance.

Also Reproduced in 4.11 Preview 1 and Dev-Rendering CL-2822902

Steps to Reproduce

*Quick Reproduction - PIE Attached Project, Press K to change MID Physical Material, Press L to run a check based on call to MID directly, Press J to run a check based on Line Trace*

  1. Create a New Blank Project with No Starter Content
  2. Create a New Material Called M_Test with a Vector Parameter called Color plugged into Base Color
  3. Create a New Physical Material called Phys_Mat_A
  4. Assign Phys_Mat_A to M_Test
  5. Create a New Physical Material called Phys_Mat_B with Friction set to 2.5
  6. Create a New Actor Blueprint called BP_TraceTest
  7. Add a Cube to BP_TraceTest
  8. In the Cube Coimponent's Detail Pane under Collision, set Return Material on Move to true
  9. In the Class Defaults under Input, set Auto Receive Input to Player 0
  10. Recreate the Construction Script and Event Graph shown in the attached picture BP.jpg
  11. PIE
  12. Press L
  13. Press K
  14. Press J
  15. Press L

RESULTS: When running a check calling the Physical Material directly, the results are always correct, but when running a line trace the Physical Material returned is always incorrect.

EXPECTED: Physical Material returned is always correct.

Have Comments or More Details?

Head over to the existing AnswerHub thread and let us know what's up.

Login to Vote

By Design
ComponentSimulation - Physics
Affects Versions4.
CreatedJan 11, 2016
ResolvedJan 12, 2016
UpdatedJul 14, 2021