![]()  | 
  
    Jolt Physics
    
   A multi core friendly Game Physics Engine 
   | 
 
Contains the creation settings of a set of bodies. More...
#include <PhysicsScene.h>
  
Classes | |
| class | ConnectedConstraint | 
| A constraint and how it is connected to the bodies in the scene.  More... | |
Public Types | |
| using | PhysicsSceneResult = Result<Ref<PhysicsScene>> | 
Public Member Functions | |
| void | AddBody (const BodyCreationSettings &inBody) | 
| Add a body to the scene.   | |
| void | AddConstraint (const TwoBodyConstraintSettings *inConstraint, uint32 inBody1, uint32 inBody2) | 
| void | AddSoftBody (const SoftBodyCreationSettings &inSoftBody) | 
| Add a soft body to the scene.   | |
| size_t | GetNumBodies () const | 
| Get number of bodies in this scene.   | |
| const Array< BodyCreationSettings > & | GetBodies () const | 
| Access to the body settings for this scene.   | |
| Array< BodyCreationSettings > & | GetBodies () | 
| size_t | GetNumConstraints () const | 
| Get number of constraints in this scene.   | |
| const Array< ConnectedConstraint > & | GetConstraints () const | 
| Access to the constraints for this scene.   | |
| Array< ConnectedConstraint > & | GetConstraints () | 
| size_t | GetNumSoftBodies () const | 
| Get number of bodies in this scene.   | |
| const Array< SoftBodyCreationSettings > & | GetSoftBodies () const | 
| Access to the soft body settings for this scene.   | |
| Array< SoftBodyCreationSettings > & | GetSoftBodies () | 
| bool | CreateBodies (PhysicsSystem *inSystem) const | 
| Instantiate all bodies, returns false if not all bodies could be created.   | |
| bool | FixInvalidScales () | 
| void | SaveBinaryState (StreamOut &inStream, bool inSaveShapes, bool inSaveGroupFilter) const | 
| void | FromPhysicsSystem (const PhysicsSystem *inSystem) | 
| For debugging purposes: Construct a scene from the current state of the physics system.   | |
  Public Member Functions inherited from RefTarget< PhysicsScene > | |
| RefTarget ()=default | |
| Constructor.   | |
| RefTarget (const RefTarget &) | |
| ~RefTarget () | |
| assert no one is referencing us   | |
| void | SetEmbedded () const | 
| RefTarget & | operator= (const RefTarget &) | 
| Assignment operator.   | |
| uint32 | GetRefCount () const | 
| Get current refcount of this object.   | |
| void | AddRef () const | 
| Add or release a reference to this object.   | |
| void | Release () const | 
Static Public Member Functions | |
| static PhysicsSceneResult | sRestoreFromBinaryState (StreamIn &inStream) | 
| Restore a saved scene from inStream.   | |
  Static Public Member Functions inherited from RefTarget< PhysicsScene > | |
| static int | sInternalGetRefCountOffset () | 
| INTERNAL HELPER FUNCTION USED BY SERIALIZATION.   | |
Static Public Attributes | |
| static constexpr uint32 | cFixedToWorld = 0xffffffff | 
| Body constant to use to indicate that the constraint is attached to the fixed world.   | |
Additional Inherited Members | |
  Protected Attributes inherited from RefTarget< PhysicsScene > | |
| atomic< uint32 > | mRefCount | 
| Current reference count.   | |
  Static Protected Attributes inherited from RefTarget< PhysicsScene > | |
| static constexpr uint32 | cEmbedded | 
| A large value that gets added to the refcount to mark the object as embedded.   | |
Contains the creation settings of a set of bodies.
| void PhysicsScene::AddBody | ( | const BodyCreationSettings & | inBody | ) | 
Add a body to the scene.
| void PhysicsScene::AddConstraint | ( | const TwoBodyConstraintSettings * | inConstraint, | 
| uint32 | inBody1, | ||
| uint32 | inBody2 ) | 
Add a constraint to the scene
| inConstraint | Constraint settings | 
| inBody1 | Index in the bodies list of first body to attach constraint to | 
| inBody2 | Index in the bodies list of the second body to attach constraint to | 
| void PhysicsScene::AddSoftBody | ( | const SoftBodyCreationSettings & | inSoftBody | ) | 
Add a soft body to the scene.
| bool PhysicsScene::CreateBodies | ( | PhysicsSystem * | inSystem | ) | const | 
Instantiate all bodies, returns false if not all bodies could be created.
| bool PhysicsScene::FixInvalidScales | ( | ) | 
Go through all body creation settings and fix shapes that are scaled incorrectly (note this will change the scene a bit).
| void PhysicsScene::FromPhysicsSystem | ( | const PhysicsSystem * | inSystem | ) | 
For debugging purposes: Construct a scene from the current state of the physics system.
      
  | 
  inline | 
      
  | 
  inline | 
Access to the body settings for this scene.
      
  | 
  inline | 
      
  | 
  inline | 
Access to the constraints for this scene.
      
  | 
  inline | 
Get number of bodies in this scene.
      
  | 
  inline | 
Get number of constraints in this scene.
      
  | 
  inline | 
Get number of bodies in this scene.
      
  | 
  inline | 
      
  | 
  inline | 
Access to the soft body settings for this scene.
| void PhysicsScene::SaveBinaryState | ( | StreamOut & | inStream, | 
| bool | inSaveShapes, | ||
| bool | inSaveGroupFilter ) const | 
Saves the state of this object in binary form to inStream.
| inStream | The stream to save the state to | 
| inSaveShapes | If the shapes should be saved as well (these could be shared between physics scenes, in which case the calling application may want to write custom code to restore them) | 
| inSaveGroupFilter | If the group filter should be saved as well (these could be shared) | 
      
  | 
  static | 
Restore a saved scene from inStream.
      
  | 
  staticconstexpr | 
Body constant to use to indicate that the constraint is attached to the fixed world.