(Disney Meets Darwin)
Appendix B
The Motor Control Scheme for the 3D Articulated Figures
Attributes of motions within the whole collection of joints are created by one number
series generating function, as a way to coordinate them. This function takes five
control parameters (determined by five genes) as input, and generates a periodic
series as output (with each number of the series corresponding to one joint angle
in the figure). The pseudo code example below illustrates the function.
INPUT: parameters from genes: (size, start, step low, high)
number_of_joints
integers: size, start, step, number_of_joints
real numbers: low, high
BEGIN
number = start
LOOP from index=1 to index=number_of_joints:
(
number = number + step
output_parameter[index] = low + (number MOD size)/size * (high - low)
)
END
OUTPUT: a periodic series of real-number parameter values
The purpose of this
scheme is essentially to allow a small number of parameters to determine an indefinitely
long series of values to control actions in multiple limbs, where the number of limbs is
arbitrarily large. The series is periodic to encourage regularity, yet with a large
number of possible polyrhythms in the total figure's motions. Thus, a figure can move
all its limbs either in total synchrony, with various wave motions, in alternating
fashions, or in irregular ways. The periodic series generator is used six times
(with six associated five genes as inputs) to determine settings for the following
six motion attributes, along the whole series of joints:
amplitude of sine wave displacement in the pitch angle of the joint
amplitude of sine wave displacement in the veer angle of the joint
phase offset of the pitch angle sine wave
phase offset of the veer angle sine wave
on-off switch to enable or disable the joint's pitch angle motion
on-off switch to enable or disable the joint's veer angle motion
In addition, there is one global rate gene which controls the overall frequency of
sine motions in all the joints.
(go to beginning of document)