void IConvertGameObjectToEntity.Convert(Entity entity, EntityManager dstManager, GameObjectConversionSystem conversionSystem) { var componentData = new PhysicsDebugDisplayData { DrawColliders = DrawColliders ? 1 : 0, DrawMeshEdges = DrawMeshEdges ? 1 : 0, DrawColliderAabbs = DrawColliderAabbs ? 1 : 0, DrawBroadphase = DrawBroadphase ? 1 : 0, DrawMassProperties = DrawMassProperties ? 1 : 0, DrawContacts = DrawContacts ? 1 : 0, DrawCollisionEvents = DrawCollisionEvents ? 1 : 0, DrawTriggerEvents = DrawTriggerEvents ? 1 : 0, DrawJoints = DrawJoints ? 1 : 0 }; dstManager.AddComponentData <PhysicsDebugDisplayData>(entity, componentData); convertedEntity = entity; }
public static void SetupPool() { { Pool mMeshGOPool; var mIFCObjectParent = new GameObject("IFCVoxelRepresentations"); Globals.Instance.data.MeshParent = mIFCObjectParent; var tmp = new GameObject("VoxelRep"); tmp.transform.parent = mIFCObjectParent.transform; var filter = tmp.AddComponent <MeshFilter>(); filter.mesh.MarkDynamic(); var renderer = tmp.AddComponent <MeshRenderer>(); renderer.material = Globals.Instance.data.OpaqueMaterial; renderer.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off; renderer.receiveShadows = false; mMeshGOPool = new Pool(tmp, 4096); GameObject.Destroy(tmp); var parent = new GameObject("StaticGFXParent"); Globals.Instance.data.StaticParent = parent; World.Active.GetOrCreateSystem <VoxelRemovalSystem>().MeshGoPool = mMeshGOPool; World.Active.GetOrCreateSystem <MeshStreamerSystem>().MeshGoPool = mMeshGOPool; } Debug.Log($"Refresh Rate: {UnityEngine.XR.XRDevice.refreshRate}"); var debugDisplayData = World.Active.EntityManager.CreateEntity(ComponentType.ReadOnly <Unity.Physics.Authoring.PhysicsDebugDisplayData>()); var debugDisplayConfig = new Unity.Physics.Authoring.PhysicsDebugDisplayData { DrawColliders = 1, //1, DrawBroadphase = 0, DrawColliderAabbs = 0, DrawColliderEdges = 1, DrawCollisionEvents = 0, DrawContacts = 0, DrawJoints = 0, DrawMassProperties = 0, DrawTriggerEvents = 0, }; //World.Active.GetOrCreateSystem<Unity.Physics.Authoring.DisplayBodyColliders>().SetSingleton(debugDisplayConfig); }
// // Helper methods // protected void SetDebugDisplay(Unity.Physics.Authoring.PhysicsDebugDisplayData debugDisplay) { EntityManager.SetComponentData <Unity.Physics.Authoring.PhysicsDebugDisplayData>(stepper, debugDisplay); }