|
3D-программирование Вопросы, касающиеся программирования 3D мира |
31.07.2007, 18:36
|
#1
|
AnyKey`щик
Регистрация: 26.10.2006
Сообщений: 2
Написано 0 полезных сообщений (для 0 пользователей)
|
DeltaYaw#() или слежение за целью?
Существует стационарная "пушка" которая следит за целью. Когда она повернулась к цели начинает дрожать.Как это можно убрать?
Я использовал TurnEntity gun,0,Sgn(DeltaYaw#(gun,enemy)),0.
Может еще какими командами можно это реализовать, так чтобы плавно поварачивалась?
|
(Offline)
|
|
31.07.2007, 18:39
|
#2
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: DeltaYaw#() или слежение за целью?
Можно свою написать
Вопрос, как DeltaYaw относиться если углол пушки 300 а повернуть нада на 30, то она сделает большой поворот или же маленький?
Ещё есть способ через PointEntity используя свою функцию смешивания углов и отдельного доп. пивота.
|
(Offline)
|
|
31.07.2007, 18:43
|
#3
|
Blitz's Shame !!
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений (для 2,013 пользователей)
|
Re: DeltaYaw#() или слежение за целью?
можна зделать так:
отключить TurnEntity gun,0,Sgn(DeltaYaw#(gun,enemy)),0 когда "пушка" повернётся куда надо !!
|
(Offline)
|
|
31.07.2007, 19:07
|
#4
|
.
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений (для 6,863 пользователей)
|
Re: DeltaYaw#() или слежение за целью?
Function MergeAngles#(Angle1#,Angle2#,Morph#=.5)
If Abs(Angle1-Angle2)>180
If Angle1<Angle2
Return Angle1-((360-Angle2)+Angle1)*(.5-(Morph-.5))
Else
Return Angle2-((360-Angle1)+Angle2)*(.5+(Morph-.5))
EndIf
Else
Return Angle1*(Morph)+Angle2*(1.0-Morph)
EndIf
End Function
Вот функцию накидал, смешивает процентно 2 угла.
|
(Offline)
|
|
31.07.2007, 19:42
|
#5
|
Гигант индустрии
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений (для 4,437 пользователей)
|
Re: DeltaYaw#() или слежение за целью?
Блин такой чуши понаписали
Проблема то в Sgn
возращаемое этой функцией значение может быть только целым, вот и трясется твой ствол
сделай ограничение по другому:
yaw#=DeltaYaw#(gun,enemy)
if yaw>1 yaw=1
If yaw<-1 yaw=-1
TurnEntity gun,0,yaw,0.
__________________
|
(Offline)
|
|
31.07.2007, 20:25
|
#6
|
AnyKey`щик
Регистрация: 26.10.2006
Сообщений: 2
Написано 0 полезных сообщений (для 0 пользователей)
|
Re: DeltaYaw#() или слежение за целью?
Спосибо Всем! tormoz только это и помогло от всяких клюков избавило.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:53.
|