
public static final AnimationDefinition WALK = AnimationDefinition.Builder.withLength(1f).looping()
.addAnimation("body",
	new AnimationChannel(AnimationChannel.Targets.ROTATION,
		new Keyframe(0f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.25f, KeyframeAnimations.degreeVec(0f, 0f, -2.5f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.5f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.75f, KeyframeAnimations.degreeVec(0f, 0f, 2.5f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(1f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM)))
.addAnimation("right_leg2",
	new AnimationChannel(AnimationChannel.Targets.ROTATION,
		new Keyframe(0f, KeyframeAnimations.degreeVec(0f, 40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.25f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.5f, KeyframeAnimations.degreeVec(0f, -30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.75f, KeyframeAnimations.degreeVec(0f, 0f, 45f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(1f, KeyframeAnimations.degreeVec(0f, 40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM)))
.addAnimation("right_leg1",
	new AnimationChannel(AnimationChannel.Targets.ROTATION,
		new Keyframe(0f, KeyframeAnimations.degreeVec(0f, -30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.25f, KeyframeAnimations.degreeVec(0f, 0f, 45f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.5f, KeyframeAnimations.degreeVec(0f, 40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.75f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(1f, KeyframeAnimations.degreeVec(0f, -30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM)))
.addAnimation("right_leg0",
	new AnimationChannel(AnimationChannel.Targets.ROTATION,
		new Keyframe(0f, KeyframeAnimations.degreeVec(0f, 40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.25f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.5f, KeyframeAnimations.degreeVec(0f, -30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.75f, KeyframeAnimations.degreeVec(0f, 0f, 45f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(1f, KeyframeAnimations.degreeVec(0f, 40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM)))
.addAnimation("left_leg2",
	new AnimationChannel(AnimationChannel.Targets.ROTATION,
		new Keyframe(0f, KeyframeAnimations.degreeVec(0f, 30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.25f, KeyframeAnimations.degreeVec(0f, 0f, -45f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.5f, KeyframeAnimations.degreeVec(0f, -40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.75f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(1f, KeyframeAnimations.degreeVec(0f, 30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM)))
.addAnimation("left_leg1",
	new AnimationChannel(AnimationChannel.Targets.ROTATION,
		new Keyframe(0f, KeyframeAnimations.degreeVec(0f, -40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.25f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.5f, KeyframeAnimations.degreeVec(0f, 30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.75f, KeyframeAnimations.degreeVec(0f, 0f, -45f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(1f, KeyframeAnimations.degreeVec(0f, -40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM)))
.addAnimation("left_leg0",
	new AnimationChannel(AnimationChannel.Targets.ROTATION,
		new Keyframe(0f, KeyframeAnimations.degreeVec(0f, 30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.25f, KeyframeAnimations.degreeVec(0f, 0f, -45f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.5f, KeyframeAnimations.degreeVec(0f, -40f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(0.75f, KeyframeAnimations.degreeVec(0f, 0f, 0f),
			AnimationChannel.Interpolations.CATMULLROM),
		new Keyframe(1f, KeyframeAnimations.degreeVec(0f, 30f, 0f),
			AnimationChannel.Interpolations.CATMULLROM))).build();