void UpdateSphereColliders(NativeArray <Entity> entities, [ReadOnly] ArchetypeChunkComponentObjects <SphereCollider> sphereColliders) { for (int i = 0, length = sphereColliders.Length; i < length; ++i) { SphereCollider sphere = sphereColliders[i]; if (sphere != null) { SphereColliderComponentData sphereInfo = new SphereColliderComponentData(); sphereInfo.Center = sphere.center; sphereInfo.Radius = sphere.radius; sphereInfo.IsTrigger = sphere.isTrigger ? (byte)1 : (byte)0; Utils.Utils.AddOrSetComponent(entities[i], sphereInfo, GetComponentDataFromEntity <SphereColliderComponentData>(true), EntityManager); } } }
void UpdateBoxColliders(NativeArray <Entity> entities, [ReadOnly] ArchetypeChunkComponentObjects <BoxCollider> boxColliders) { for (int i = 0, length = boxColliders.Length; i < length; ++i) { BoxCollider box = boxColliders[i]; if (box != null) { BoxColliderComponentData boxInfo = new BoxColliderComponentData(); boxInfo.Center = box.center; boxInfo.Size = box.size; boxInfo.IsTrigger = box.isTrigger ? (byte)1 : (byte)0; Utils.Utils.AddOrSetComponent(entities[i], boxInfo, GetComponentDataFromEntity <BoxColliderComponentData>(true), EntityManager); } } }
void UpdateCapsuleColliders(NativeArray <Entity> entities, [ReadOnly] ArchetypeChunkComponentObjects <CapsuleCollider> capsuleColliders) { for (int i = 0, length = capsuleColliders.Length; i < length; ++i) { CapsuleCollider capsule = capsuleColliders[i]; if (capsule != null) { CapsuleColliderComponentData capsuleInfo = new CapsuleColliderComponentData(); capsuleInfo.Center = capsule.center; capsuleInfo.Direction = capsule.direction; capsuleInfo.Height = capsule.height; capsuleInfo.Radius = capsule.radius; capsuleInfo.IsTrigger = capsule.isTrigger ? (byte)1 : (byte)0; Utils.Utils.AddOrSetComponent(entities[i], capsuleInfo, GetComponentDataFromEntity <CapsuleColliderComponentData>(true), EntityManager); } } }