public sealed class DefaultChainSolverThe shipped solver: analytic for two bones, a swing for one, the last two for longer.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
Two bones is the case that matters and it has a closed form, so TwoBoneIk does the work and nothing here iterates. An arm and a leg are two bones; so is almost everything an author puts a contact on.
⚠ A chain longer than two bones is solved over its last two, and that is a documented limitation rather than a hidden one. Distributing error up a spine towards the root is a different and much larger solver, and it is what the seam exists for. What this does instead is produce something reasonable and report the shortfall as a residual, so an author sees a number rather than a limb that quietly did not reach.
Fields and properties (1)
public static DefaultChainSolver SharedThe one every stack uses unless it is given another.
Methods (1)
public bool Solve(Skeleton skeleton, in ChainSolveRequest request, Span<BoneTransform> local, Span<BoneTransform> model)Moves a chain.
Used by (1)
- ConstraintStackVixen.Animation