PbdConstraintFunctors should be constructed in PbdModelConfig and used for parameters
One of the issues with the PbdModelConfig is how it stores parameters. Each Functor could have any set of parameters. Generally:
- "Regular Constraints": Have one double stiffness value
- FEMConstraints: Have either possions ratio+youngs modulus OR lame parameters
- BendConstraint: Has an extra parameter for strides
Really there's no telling (literally unable to tell) what parameters a user would want to use with a functor. While we should still maintain the pretty simple PbdModelConfig::enableConstraint function. It should immediately create and store the functor otherwise PbdModelConfig has to worry about how to store all these parameters and then later use them to setup functors which causes nasty code.
This should eliminate complexities in PbdModelConfig for FEM and Bend constraints. Specialized functions such as enableBendConstraint(stiffness, stride) and enableFEMConstraint(type, material) should still be present.
Edited by Andrew Wilson