natiny_entity_set_parent
void natiny_entity_set_parent(NatinyEntity child, NatinyEntity parent);
Sets the parent of a node, creating a parent-child hierarchy. The child node's transform becomes relative to its parent.
Parameters
| Name | Type | Description |
|---|---|---|
child |
NatinyEntity |
Child Entity handle |
parent |
NatinyEntity |
Parent entity handle, or 0 to detach |
Example
natiny_entity_set_parent(hand, arm);
Notes
- Reparenting preserves the child's local position, rotation and scale; its world transform therefore changes immediately relative to the new parent.
- Pass
0asparentto detach the child. Its local transform is preserved and becomes its world transform. - Detaching is also what spares a child from its parent's
destroy: everydestroythat owns an entity takes the whole subtree under it with it. - When the parent should be a point rather than a thing - an axle, a mount, a muzzle - make it a pivot: a node with a transform and nothing else.
natiny_entity_get_parentreads the parent back, and answers0for a node at the root.