Ids and names
ay2d_parameter_id, ay2d_part_id, ay2d_mesh_id
const char *ay2d_parameter_id(const ay2d_model *m, uint32_t i);
const char *ay2d_part_id(const ay2d_model *m, uint32_t i);
const char *ay2d_mesh_id(const ay2d_model *m, uint32_t i);
The id the rig uses, such as ParamAngleX. These are what motion and
expression files refer to. NULL past the count. Thread: any.
ay2d_parameter_name, ay2d_part_name, ay2d_mesh_name
const char *ay2d_parameter_name(const ay2d_model *m, uint32_t i);
const char *ay2d_part_name(const ay2d_model *m, uint32_t i);
const char *ay2d_mesh_name(const ay2d_model *m, uint32_t i);
The name to show a person, such as "Angle X". Falls back to the id when the file has none. Use these in a UI, never for lookups. Thread: any.
ay2d_parameter_index
int32_t ay2d_parameter_index(const ay2d_model *m, const char *id);
The index of the parameter with this id, or -1. Look ids up once at load
and drive by index. Thread: any.