Итак, встал передо мной такой вопрос - надо смешать ТРИ анимации, хоть и не все сразу. Собственно, вот код (пуряк + SDK)

Procedure InterpolateHumanBones(mesh1,mesh2,mesh3,delta.f)
Protected dl.f
Restore HumanAlignBones
Read.b count
For i=1 To count
Read.s name.s
If delta>=0.5
ch1 = bbFindChild(mesh1,name)
ch2 = bbFindChild(mesh2,name)
dl = (delta - 0.5) * 2
x1.f = bbEntityPitch(ch1,0)
y1.f = bbEntityYaw(ch1,0)
z1.f = bbEntityRoll(ch1,0)
x2.f = bbEntityPitch(ch2,0)
y2.f = bbEntityYaw(ch2,0)
z2.f = bbEntityRoll(ch2,0)
x.f = (x2-x1)*dl + x1
y.f = (y2-y1)*dl + y1
z.f = (z2-z1)*dl + z1
bbRotateEntity(ch1,x,y,z,0)
Else
ch1 = bbFindChild(mesh1,name)
ch2 = bbFindChild(mesh3,name)
dl = 1-(delta*2)
x1.f = bbEntityPitch(ch1,0)
y1.f = bbEntityYaw(ch1,0)
z1.f = bbEntityRoll(ch1,0)
x2.f = bbEntityPitch(ch2,0)
y2.f = bbEntityYaw(ch2,0)
z2.f = bbEntityRoll(ch2,0)
x.f = (x2-x1)*dl + x1
y.f = (y2-y1)*dl + y1
z.f = (z2-z1)*dl + z1
bbRotateEntity(ch1,x,y,z,0)
EndIf
Next
EndProcedure
DataSection
HumanAlignBones:
Data.b 25
Data.s "Bip01 Spine1"
Data.s "Bip01 Spine2"
Data.s "Bip01 Spine3"
Data.s "Bip01 Neck"
Data.s "Bip01 L Arm"
Data.s "Bip01 L Arm1"
Data.s "Bip01 L Arm2"
Data.s "Bip01 R Arm"
Data.s "Bip01 R Arm1"
Data.s "Bip01 R Arm2"
Data.s "Bip01 Head"
Data.s "Bip01 L Hand"
Data.s "Bip01 L Finger0"
Data.s "Bip01 L Finger01"
Data.s "Bip01 L Finger02"
Data.s "Bip01 L Finger1"
Data.s "Bip01 L Finger11"
Data.s "Bip01 L Finger12"
Data.s "Bip01 R Hand"
Data.s "Bip01 R Finger0"
Data.s "Bip01 R Finger01"
Data.s "Bip01 R Finger02"
Data.s "Bip01 R Finger1"
Data.s "Bip01 R Finger11"
Data.s "Bip01 R Finger12"
EndDataSection
В итоге при delta некратном 0.5 начинается сраная мешанина и всё адово дёргается. Помогите, срочняк надо...
Насилую модельки из Day of Defeat с GoldSrc