Space Engineers
|
Classes | |
struct | CollisionLayers |
Collision layers that can be used to filter what collision should be found for casting methods. More... | |
struct | FractureImpactDetails |
struct | HitInfo |
struct | MyContactPointEvent |
Public Member Functions | |
override void | LoadData () |
override void | Simulate () |
bool | GetEntityReplicableExistsById (long entityId) |
Public Member Functions inherited from VRage.Game.Components.MySessionComponentBase | |
virtual bool | UpdatedBeforeInit () |
MySessionComponentBase () | |
void | SetUpdateOrder (MyUpdateOrder order) |
virtual void | InitFromDefinition (MySessionComponentDefinition definition) |
virtual void | Init (MyObjectBuilder_SessionComponent sessionComponent) |
virtual MyObjectBuilder_SessionComponent | GetObjectBuilder () |
void | AfterLoadData () |
void | UnloadDataConditional () |
virtual void | SaveData () |
virtual void | BeforeStart () |
virtual void | UpdateBeforeSimulation () |
virtual void | UpdateAfterSimulation () |
virtual void | UpdatingStopped () |
virtual void | Draw () |
virtual void | HandleInput () |
override string | ToString () |
Static Public Member Functions | |
static void | AssertThread () |
static HkWorld | CreateHkWorld (float broadphaseSize=100000) |
static void | ActivateInBox (ref BoundingBoxD box) |
static void | EnqueueDestruction (FractureImpactDetails details) |
static void | RemoveDestructions (MyEntity entity) |
static void | RemoveDestructions (HkRigidBody body) |
static void | DebugDrawClusters () |
static void | CastRay (Vector3D from, Vector3D to, List< HitInfo > toList, int raycastFilterLayer=0) |
static HitInfo | CastRay (Vector3D from, Vector3D to, int raycastFilterLayer=0) |
static bool | CastRay (Vector3D from, Vector3D to, out HitInfo hitInfo, uint raycastCollisionFilter, bool ignoreConvexShape) |
static HitInfo | CastLongRay (Vector3D from, Vector3D to, bool any=false) |
Finds closest or any object on the path of the ray from->to. Uses Storage for voxels for faster search but only good for long rays (more or less more than 50m). Use it only in such cases. More... | |
static void | GetPenetrationsShape (HkShape shape, ref Vector3D translation, ref Quaternion rotation, List< HkBodyCollision > results, int filter) |
static float | CastShape (Vector3D to, HkShape shape, ref MatrixD transform, int filterLayer, float extraPenetration=0) |
static float | CastShapeInAllWorlds (Vector3D to, HkShape shape, ref MatrixD transform, int filterLayer, float extraPenetration=0) |
static void | GetPenetrationsBox (ref Vector3 halfExtents, ref Vector3D translation, ref Quaternion rotation, List< HkBodyCollision > results, int filter) |
static Vector3D | CastShapeReturnPoint (Vector3D to, HkShape shape, ref MatrixD transform, int filterLayer, float extraPenetration) |
static HkContactPoint | CastShapeReturnContact (Vector3D to, HkShape shape, ref MatrixD transform, int filterLayer, float extraPenetration, out Vector3 worldTranslation) |
static HkContactPointData | CastShapeReturnContactData (Vector3D to, HkShape shape, ref MatrixD transform, uint collisionFilter, float extraPenetration, bool ignoreConvexShape=true) |
static HitInfo | CastShapeReturnContactBodyData (Vector3D to, HkShape shape, ref MatrixD transform, uint collisionFilter, float extraPenetration, bool ignoreConvexShape=true) |
static bool | CastShapeReturnContactBodyDatas (Vector3D to, HkShape shape, ref MatrixD transform, uint collisionFilter, float extraPenetration, List< HitInfo > result, bool ignoreConvexShape=true) |
static bool | IsPenetratingShapeShape (HkShape shape1, ref Vector3D translation1, ref Quaternion rotation1, HkShape shape2, ref Vector3D translation2, ref Quaternion rotation2) |
static bool | IsPenetratingShapeShape (HkShape shape1, ref Matrix transform1, HkShape shape2, ref Matrix transform2) |
static int | GetCollisionLayer (string strLayer) |
static void | EnsurePhysicsSpace (BoundingBoxD aabb) |
Ensure aabb is inside only one subspace. If no, reorder. More... | |
static void | MoveObject (ulong id, BoundingBoxD aabb, Vector3 velocity) |
Change position of object in world. Move object between subspaces if necessary. More... | |
static void | RemoveObject (ulong id) |
Remove object from world, remove also subspace if empty. More... | |
static Vector3D | GetObjectOffset (ulong id) |
Return offset of objects subspace center. More... | |
static ulong | AddObject (BoundingBoxD bbox, MyPhysicsBody activationHandler, ulong?customId, string tag, long entityId) |
Try add object to some subspace. Create new subspace if allowed (!SingleCluster.HasValue) and needed (object is outside of existing subspaces). If not allowed, mark object as left the world. More... | |
static VRage.Collections.ListReader< object > | GetClusterList () |
static void | GetAll (List< VRageMath.Spatial.MyClusterTree.MyClusterQueryResult > results) |
static void | SerializeClusters (List< BoundingBoxD > list) |
static void | DeserializeClusters (List< BoundingBoxD > list) |
Static Public Attributes | |
static int | ThreadId |
static MyHavokCluster | Clusters |
static bool | DebugDrawClustersEnable = false |
static MatrixD | DebugDrawClustersMatrix = MatrixD.Identity |
Protected Member Functions | |
override void | UnloadData () |
Properties | |
static int | StepsLastSecond [get] |
Number of physics steps done in last second More... | |
static float | SimulationRatio [get] |
Simulation ratio, when physics cannot keep up, this is smaller than 1 More... | |
static float | RestingVelocity [get] |
static HkWorld | SingleWorld [get] |
static bool | InsideSimulation [get] |
Properties inherited from VRage.Game.Components.MySessionComponentBase | |
MyUpdateOrder | UpdateOrder [get] |
MyObjectBuilderType | ObjectBuilderType [get] |
bool | Loaded [get] |
bool | Initialized [get] |
MyDefinitionId | Definition [get, set] |
virtual Type[] | Dependencies [get] |
virtual bool | IsRequiredByGame [get] |
Indicates whether a session component should be used in current configuration. Example: MyDestructionData component returns true only when game uses Havok Destruction More... | |
Additional Inherited Members | |
Public Attributes inherited from VRage.Game.Components.MySessionComponentBase | |
readonly string | DebugName |
readonly int | Priority |
readonly Type | ComponentType |
IMySession | Session |
Definition at line 47 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 749 of file MyPhysics.cs.
|
inlinestatic |
Try add object to some subspace. Create new subspace if allowed (!SingleCluster.HasValue) and needed (object is outside of existing subspaces). If not allowed, mark object as left the world.
bbox | |
velocity | |
activationHandler | |
customId |
Definition at line 1531 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 384 of file MyPhysics.cs.
|
inlinestatic |
Finds closest or any object on the path of the ray from->to. Uses Storage for voxels for faster search but only good for long rays (more or less more than 50m). Use it only in such cases.
from | Start of the ray. |
to | End of the ray. |
any | Indicates if method should return any object found (May not be closest) |
Definition at line 1076 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 952 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 990 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1035 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1189 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1207 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1267 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1319 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1347 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1294 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1244 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 454 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 820 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1582 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 766 of file MyPhysics.cs.
|
inlinestatic |
Ensure aabb is inside only one subspace. If no, reorder.
aabb |
Definition at line 1485 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1551 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1544 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1428 of file MyPhysics.cs.
|
inline |
Definition at line 1607 of file MyPhysics.cs.
|
inlinestatic |
Return offset of objects subspace center.
id |
Definition at line 1516 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1232 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1177 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1385 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1410 of file MyPhysics.cs.
|
inlinevirtual |
Reimplemented from VRage.Game.Components.MySessionComponentBase.
Definition at line 389 of file MyPhysics.cs.
|
inlinestatic |
Change position of object in world. Move object between subspaces if necessary.
id | |
oldAabb | |
aabb | |
velocity |
Definition at line 1497 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 773 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 793 of file MyPhysics.cs.
|
inlinestatic |
Remove object from world, remove also subspace if empty.
id |
Definition at line 1506 of file MyPhysics.cs.
|
inlinestatic |
Definition at line 1577 of file MyPhysics.cs.
|
inlinevirtual |
Reimplemented from VRage.Game.Components.MySessionComponentBase.
Definition at line 566 of file MyPhysics.cs.
|
inlineprotectedvirtual |
Reimplemented from VRage.Game.Components.MySessionComponentBase.
Definition at line 529 of file MyPhysics.cs.
|
static |
Definition at line 150 of file MyPhysics.cs.
|
static |
Definition at line 816 of file MyPhysics.cs.
|
static |
Definition at line 817 of file MyPhysics.cs.
|
static |
Definition at line 148 of file MyPhysics.cs.
|
staticget |
Definition at line 1426 of file MyPhysics.cs.
|
staticget |
Definition at line 184 of file MyPhysics.cs.
|
staticget |
Simulation ratio, when physics cannot keep up, this is smaller than 1
Definition at line 171 of file MyPhysics.cs.
|
staticget |
Definition at line 1416 of file MyPhysics.cs.
|
staticget |
Number of physics steps done in last second
Definition at line 165 of file MyPhysics.cs.