Navigation
API > API/Plugins > API/Plugins/SpatialReadiness > API/Plugins/SpatialReadiness/FSpatialReadinessSimCallback
Lists of particle handles which represent particles that interacted with unready volumes, along with a counter representing how many more ticks the particle should remain frozen.
The counter strategy is to accommodate the following oddities about particle creation, deletion, and midphase creation.
- A particle can exist for one entire sim tick after it is created without appearing in the mid phase. Therefore particles which are registered on top of unready volumes must be unreadied with a count of 2.
- For the same reason as the item above, when an unready volume is deleted on the same frame that another particle is created (perhaps a streaming object with which the unready volume was meant to prevent overlap), there's an additional frame during which the new particle has no collision. We lose nothing by keeping objects frozen for one more frame. The counter is used to accommadate this case.
This freeze frame counter is packed into a small struct which also contains the SyncTimeStamp for the particle's proxy, because if we're going to track the particle for more than one frame (and we are), then we also need to track the validity of the SyncTimeStamp before ever accessing methods or properties on the particle handle ptr.
| Name | FUnreadyRigidParticleData |
| Type | struct |
| Header File | /Engine/Plugins/Experimental/SpatialReadiness/Source/SpatialReadiness/Public/SpatialReadinessSimCallback.h |
| Include Path | #include "SpatialReadinessSimCallback.h" |
Syntax
struct FUnreadyRigidParticleData
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| FreezeFrames | int | SpatialReadinessSimCallback.h | ||
| SyncTimeStamp | TWeakPtr< FProxyTimestampBase, ESPMode::ThreadSafe > | SpatialReadinessSimCallback.h |