Docs CHOPs & sensing
KinectSinglePlayer
Picks one player out of a Kinect skeleton stream: whoever stands inside the bounds you set becomes the active player, and their joints ride out as clean channels until they leave.
∿ CHOPs & sensing ◆ Patreon:Base
This tool unlocks with Patreon. It installs through the same picker as everything else and unlocks with the Patreon Base tier or higher, connected from inside TouchDesigner. Everything else in the toolkit stays free and MIT, and the membership is what keeps that work moving.
What it is
A Kinect CHOP reports every body it sees, and an installation usually wants exactly one. KinectSinglePlayer watches a chosen joint of every tracked player, keeps the players whose joint sits inside a box you define, and promotes one of them to the active player. That player's channels come out under a stable name, so the rest of the network never has to know which of the six Kinect slots they occupy. When they walk out of the box the next one in range takes over.
It is a member of the FNS operator family: pick it from the FNS tab of the OP Create dialog and it lands as one node.
Outputs
- OUT_ACTIVE (CHOP): whether a player is active right now.
- OUT_SINGLE_PLAYER (CHOP): the active player's joints.
Parameters
Custom
| Control | Type / default | What it does |
|---|---|---|
Kinect DataKinectdata |
operatorempty | Kinect CHOP (or any CHOP with Kinect-style channels such as p1/spine:tx, p1/id) to pick the single player from. Output channels follow the locked template in null1 (TouchDesigner Kinect v2 names with world, depth-space, bone rotation and length channels); input channels outside that set are not passed through. |
JointJoint |
textspine | Kinect joint tested against the bounds, matched as the whole joint name (p |
X BoundsBoundx |
number-0.5 | X range (min, max) in metres, Kinect camera space (0 = straight in front of the sensor). The joint must sit inside it for the player to count as in range. |
Y BoundsBoundy |
number-1 | Y range (min, max) in metres, Kinect camera space (0 = sensor height, + = up). The joint must sit inside it for the player to count as in range. |
Z BoundsBoundz |
number1 | Z range (min, max) in metres: distance in front of the sensor (Kinect reports 0.5 to about 4.5). The joint must sit inside it for the player to count as in range. |