Тема: Smooth turn entity
Показать сообщение отдельно
Старый 30.03.2009, 00:23   #19
CRASHER
Разработчик
 
Регистрация: 08.03.2007
Сообщений: 530
Написано 31 полезных сообщений
(для 36 пользователей)
Ответ: Smooth turn entity

Я наверно поздновато, но может поможет. Мне кажется этот вариант отличается от других, предложенных выше.

Function track_YR_Smooth(e1,e2,smothness#=1.0)
PositionEntity gPivot1,EntityX(e1),EntityY(e1),EntityZ(e1)
PointEntity gPivot1,e2
RotateEntity e1, 0,curveAngle#(EntityYaw(gPivot1),EntityYaw(e1),smo thness#),0
End Function

Function curveangle#( newangle#,oldangle#,increments#)
If increments>1
If (oldangle+360)-newangle<newangle-oldangle
oldangle=360+oldangle
End If
If (newangle+360)-oldangle<oldangle-newangle
newangle=360+newangle
End If
oldangle=oldangle-(oldangle-newangle)/increments
End If
If increments<=1
Return newangle
End If
Return oldangle

End Function
(Offline)
 
Ответить с цитированием