Skip to content

@orillusion/core


Class: CCDIK ​

Defined in: src/components/anim/ik/CCDIK.ts:110

Cyclic Coordinate Descent IK (CCDIK).

Iteratively rotates each bone in the chain (end-effector toward root) so the chain tip approaches the target. Unlike TwoBoneIK, CCDIK handles arbitrary chain lengths — useful for spines, tails, hair tentacles, or any "look-at" animation that needs to bend through multiple joints.

Textbook CCD: for each iteration, walk the chain from tip-1 toward root and at each joint rotate to align the (joint→tip) vector with (joint→target). Convergence is fast for short chains (≤8 bones).

Constructors ​

Constructor ​

new CCDIK(cfg): CCDIK

Defined in: src/components/anim/ik/CCDIK.ts:149

Parameters ​

cfg ​

CCDIKConfig

Returns ​

CCDIK

Properties ​

name ​

name: string

Defined in: src/components/anim/ik/CCDIK.ts:111


effector ​

effector: string

Defined in: src/components/anim/ik/CCDIK.ts:112


links: CCDIKLink[]

Defined in: src/components/anim/ik/CCDIK.ts:113


target ​

target: Object3D | Vector3

Defined in: src/components/anim/ik/CCDIK.ts:114


iterations ​

iterations: number

Defined in: src/components/anim/ik/CCDIK.ts:115


damping ​

damping: number

Defined in: src/components/anim/ik/CCDIK.ts:116


threshold ​

threshold: number

Defined in: src/components/anim/ik/CCDIK.ts:117


weight ​

weight: number

Defined in: src/components/anim/ik/CCDIK.ts:118

Accessors ​

chain ​

Get Signature ​

get chain(): string[]

Defined in: src/components/anim/ik/CCDIK.ts:142

Convenience accessor — full bone name list root→tip (links reversed + effector last).

Returns ​

string[]

Methods ​

solve() ​

solve(animator): void

Defined in: src/components/anim/ik/CCDIK.ts:166

Parameters ​

animator ​

AnimatorComponent

Returns ​

void