Physics actor with physics toggled will fall through static meshes set to Movable
User Description:
Basically, what this project does is enable simulate physics on the black cube in the middle, then disables it once it safely landed on the bottom cube. After that, it enables physics on the top cube, and once the top cube is near the black cube, it re-enables the black cube's physics.
As you can see, if the black cube gets his physics re-enabled on a movable actor (on the right), it just clips through it. If the black cube gets his physics re-enabled on a static actor (on the left), its behavior is clean, it stays on the object.
This behavior is a big problem for us, as we need to load/unload streaming levels on which physics object from the persistent level is supposed to be standing on. The thing is, when we re-enable the physics simulation, all our objects just clips through the floor and fall into nothingness.
1. Open the attached test project
2. PIE or simulate
Results: The physics actor will fall through the static mesh that is set to Movable but won't fall through the static mesh set to Static
Expected: For the static mesh set to Movable to stop the physics actor regardless of toggled physics
------------------------------------------------------------------------------------------
From blank project:
1. Import the attached SM_BoxTest01 asset
2. Place 2 instances of the static mesh into the level, side by side and a few units off the ground
3. In the Details panel, set 1 of the static meshes to Movable
4. Create an actor class BP & open it
5. Add a static mesh component and a Sphere Collision component
6. Set the static mesh to the BoxTest
7. Set the Sphere Collision larger than the box and center it to the box
(See screenshot #1 for setup, skip steps 8-11)
8. In the Event Graph, Set Simulate Physics Enabled on Sphere Collision Overlap
9. On Event Begin Play, set a 2 second Delay > Set Simulate Physics Enabled > set a 2 second Delay > Set Simulate Physics Disabled
10. Create a float variable (set to Public) with a default value of 2 and use it for both Delays
11. Compile & save
11. Add 4 instances of this bp to the level, 2 over the Static mesh and 2 over the Movable mesh, space them vertically by several units (see screenshot #2)
12. Select the top 2 bps, in the Details panel set the DelayVar to 4
13. PIE or Simulate
Head over to the existing Questions & Answers thread and let us know what's up.
0 |
Component | UE - Gameplay |
---|---|
Affects Versions | 4.12.5, 4.13 |
Target Fix | 4.13 |
Created | Jul 20, 2016 |
---|---|
Resolved | Jul 25, 2016 |
Updated | Apr 27, 2018 |