|
ToyMaker Game Engine 0.0.2
ToyMaker is a game engine developed and maintained by Zoheb Shujauddin.
|
The velocity constraint responsible for applying a velocity-dependent damping force on all dynamic objects in order to eventually bring them to a stop. More...
#include <types.hpp>
Public Member Functions | |
| void | applyConstraintVelocity (const ParticipantTable &states, float substepSeconds) override |
| Slow down dynamic objects moving at a constant speed so that they eventually come to a stop. | |
| Public Member Functions inherited from ToyMaker::ConstraintParametrized< float, PhysicsState, 1 > | |
| ConstraintParametrized (const float &config, const std::vector< PhysicsState > &constraintParameters, float compliance) | |
| Initializes this constraint with some initial compliance value and constraint parameters. | |
| void | setConfig (const float &config) |
| Sets configuration for this constraint. | |
| float | getConfig () const |
| Gets the current configuration of this constraint. | |
| void | setParameter (BaseConstraint::ParticipantID participant, const PhysicsState ¶meter) |
| Adds a parameter for this constraint. | |
| PhysicsState | getParameter (BaseConstraint::ParticipantID participant) const |
| Gets parameter belonging to a particular constraint participant. | |
| void | removeParameter (BaseConstraint::ParticipantID participant) |
| Removes a parameter belonging to a particular constraint participant. | |
| const std::unordered_map< BaseConstraint::ParticipantID, PhysicsState > & | getParameters () const |
| Returns all parameters known to this constraint. | |
| Public Member Functions inherited from ToyMaker::Constraint< LagrangeCount > | |
| void | applyLagrangeDelta (float delta, uint8_t index) |
| Adds a delta to a lagrange value located at index. | |
| const std::array< float, LagrangeCount > & | getLagrange () const |
| Gets the current Lagrange multiplier values for this constraint. | |
| const std::array< float, LagrangeCount > & | getLagrangeDelta () const |
| Gets the latest lagrange delta applied to a constraint. | |
| void | resetLagrange () override |
| Sets all lagrange multipliers to 0 in preparation for the next physics update. | |
| template<uint8_t ... indices> | |
| void | resetLagrange (std::integer_sequence< uint8_t, indices... > sequence) |
| Public Member Functions inherited from ToyMaker::BaseConstraint | |
| float | getCompliance () const |
| Gets the current compliance value for this constraint. | |
| virtual void | applyConstraintPosition (const ParticipantTable &states, float substepSeconds) |
| Applies positional constraint to current set of bounds and physics states. | |
| void | setCompliance (float newCompliance) |
| Sets the compliance value for this constraint. | |
| template<typename TConstraint, std::enable_if_t< std::is_base_of< ConstraintParametrized< typename TConstraint::Config, typename TConstraint::Parameter, TConstraint::NLagrange >, TConstraint >::value, bool > = true> | |
| void | setParameter (ParticipantID participant, const typename TConstraint::Parameter ¶meter) |
| Sets a parameter belonging to a particular constraint participant. | |
| template<typename TConstraint, std::enable_if_t< std::is_base_of< ConstraintParametrized< typename TConstraint::Config, typename TConstraint::Parameter, TConstraint::NLagrange >, TConstraint >::value, bool > = true> | |
| TConstraint::Parameter | getParameter (ParticipantID participant) const |
| Gets a parameter associated with a particular constraint participant. | |
| template<typename TConstraint, std::enable_if_t< std::is_base_of< ConstraintParametrized< typename TConstraint::Config, typename TConstraint::Parameter, TConstraint::NLagrange >, TConstraint >::value, bool > = true> | |
| void | setConfig (const typename TConstraint::Config &config) |
| Sets the configuration of a constraint. | |
| template<typename TConstraint, std::enable_if_t< std::is_base_of< ConstraintParametrized< typename TConstraint::Config, typename TConstraint::Parameter, TConstraint::NLagrange >, TConstraint >::value, bool > = true> | |
| TConstraint::Config | getConfig () const |
| Gets the configuration of a constraint. | |
Additional Inherited Members | |
| Public Types inherited from ToyMaker::ConstraintParametrized< float, PhysicsState, 1 > | |
| using | Config |
| using | Parameter |
| Public Types inherited from ToyMaker::BaseConstraint | |
| using | ParticipantID = std::size_t |
| using | ParticipantTable |
| Static Public Attributes inherited from ToyMaker::ConstraintParametrized< float, PhysicsState, 1 > | |
| static const uint8_t | NLagrange |
| Protected Member Functions inherited from ToyMaker::Constraint< LagrangeCount > | |
| Constraint (float compliance) | |
| Initializes this constraint with some initial compliance value. | |
| Protected Member Functions inherited from ToyMaker::BaseConstraint | |
| BaseConstraint (float compliance) | |
| Initializes this constraint. | |
The velocity constraint responsible for applying a velocity-dependent damping force on all dynamic objects in order to eventually bring them to a stop.
The parameter here is the physics state of this object in the previous substep. This is filled automatically each substep by the physics system.
|
overridevirtual |
Slow down dynamic objects moving at a constant speed so that they eventually come to a stop.
Reimplemented from ToyMaker::BaseConstraint.