Final physics OnCollision flow
Final dependency tree of phases (meaning (6) calls (5) etc.
(1 ST) -> (2 MT) -> (4 ST) -> (5 MT in batches) -> (6 MT) -> (3 sys)
- JointCreationJob
- jointsQuery
- CollisionJob
- ConvertNativeQueueToListJob
- GatherContactsJob
- Physics simulation
Produces the following logging. Numbers at the start are the frame number followed by the thread number:
UpdateBefore StepPhysicsWorld
26:1: UGS.StickyCollisionEarlySystem OnUpdate() 26:1: UGS.StickyCollisionSystem scheduleCallbacks() 26:1: UGS.StickyCollisionSystem allocate(0)
During StepPhysicsWorld in the PostCreateContacts phase
26:1: UGS.StickyCollisionSystem onPostCreateContacts()
UpdateAfter StepPhysicsWorld
26:1: UGS.StickyCollisionSystem OnUpdate()
EndFramePhysicsSystem calls Complete() on HandlesToWaitFor so jobs run in other threads:
26:260: UGS.StickyCollisionSystem+GatherContactsJob Execute() 26:260: Contact(A:Entity(115:1), B:Entity(1:1), at:float3(0.464232f, -0.4572195f, 4.335997f) dist:0.3038583 along float3(0.10108f, 2.235174E-08f, -0.9948784f) 26:260: UGS.StickyCollisionSystem+GatherContactsJob Execute() ... (all other contacts without a StickCause) ... 26:260: UGS.StickyCollisionSystem+GatherContactsJob Execute() 26:260: UGS.StickyCollisionSystem+ConvertNativeQueueToListJob`1[UGS.StickyCollisionSystem+ContactData].Execute() 26:254: UGS.StickyCollisionSystem+CollisionJob Execute() 26:254: Entity(115:1) (A) is a StickCause and hit something 26:254: connecting Entity(115:1) at float3(0.5f, -0.4572195f, 3.983951f) to Entity(1:1) at float3(0.494946f, -0.4572195f, 4.033695f) which is float3(-0.005053997f, -0.001145959f, 0.04973054f) on sticky and float3(-7.505054f, -6.45722f, 4.033695f) on other 26:254: UGS.StickyCollisionSystem+JointCreationJob Execute() 26:254: connecting Entity(115:1) to Entity(1:1) at float3(-0.005053997f, -0.001145959f, 0.04973054f) and float3(-7.505054f, -6.45722f, 4.033695f) respectively 26:254: Entity(115:1) has no joint either: already [] or queued [] 26:254: Creating new joint connecting Entity(115:1) to Entity(1:1) at float3(-0.005053997f, -0.001145959f, 0.04973054f) and float3(-7.505054f, -6.45722f, 4.033695f) respectively
UpdateAfter EndFramePhysicsSystem
26:1: UGS.StickyCollisionLateSystem OnUpdate() 26:1: UGS.StickyCollisionSystem tidyUpActual(0)
<-PREV | NEXT->
Connect the Unity (ECS) DOTS (for ExtraCredits Jam 2019)
An Extra Credits Jam 2019 entry focusing on learning Unity DOTS
Status | Prototype |
Author | Arakade |
Tags | 3D, connecttheunitydots, extragamejam, Unity |
More posts
- ECS & Unity.Physics order diagramJun 08, 2019
- ECS Unity.Physics: Contacts, The Right Way (full OnCollisionEnter(Collision) ana...Jun 06, 2019
- Post-jam next stepsJun 05, 2019
- Post Jam: An empty EntityQuery in OnCreate() disables your systemJun 04, 2019
- Monday night: Joint add or setJun 04, 2019
- Sunday afternoonJun 04, 2019
- Saturday night: Implementing DOTS Unity.Physics OnCollisionEnter() only for cert...Jun 02, 2019
- Saturday afternoon Unity.Physics and DOTS samples strife (after late start)Jun 01, 2019
- Friday nightJun 01, 2019
Leave a comment
Log in with itch.io to leave a comment.