Добавлен Некрон71
Кто-нибудь знает как устанавливается координата Z цели камеры по неровностям ландшафта?
Принятый ответ
я так понял если двигать камеру через функцию SetCameraPosition, то должно пройти 0.04 сек, прежде чем камера установится на новое место.
Попробуй использовать функцию SetCameraQuickPosition (я правда не использовал её и даже не знаю что она делает, но, возможно, это то что я думаю)
:D
Попробуй использовать функцию SetCameraQuickPosition (я правда не использовал её и даже не знаю что она делает, но, возможно, это то что я думаю)
:D
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
l это переменная типа точка(глобальная)
Z1 и Z2 переменные типа реальная(локальные)
Angle1 реальная переменная(локальная)
udg_Geroi переменная типа юнит с твоим героем(глобальная)
offset Реальная переменная (локальная)
call MoveLocation(l,GetUnitX(udg_Geroi),GetUnitY(udg_Geroi))
Устанавливаем переменную Z1 высотой точки l
set Z1 = GetLocationZ(l)
Перемещаем точку l на 200 за спину юнита
call MoveLocation(l,GetUnitX(udg_Geroi)-200*Cos(GetUnitFacing(udg_Geroi)*bj_DEGTORAD),GetUnitY(udg_Geroi)-400*Sin(GetUnitFacing(udg_Geroi)*bj_DEGTORAD))
Устанавливаем переменную Z2 высотой точки l
set Z2 = GetLocationZ(l)
если высота точки под юнитом+100 больше или равно высоте точки за спиной юнита
if(Z1+100>=Z2)then
устанавливаем оффсет равный высоте камеры+ высота полета героя+130+ высота точки под героем- позиция глаза камеры (хз что это)
set offset=GetCameraField(CAMERA_FIELD_ZOFFSET)+GetUnitFlyHeight(udg_Geroi)+130+Z1-GetCameraEyePositionZ()
Устанавливаем перменную Angle1 = -10
set Angle1 = -10
else
далее аналогично только другие значения
set offset=R2I(GetCameraField(CAMERA_FIELD_ZOFFSET))+100+GetUnitFlyHeight(udg_Geroi)+Z2-R2I(GetCameraEyePositionZ())
set Angle1 = -30
endif
устанавливаем высоту камеры равной переменной оффсет
call SetCameraField(CAMERA_FIELD_ZOFFSET,offset,0.20)
устанавливаем угол атаки равный переменной Angle1
call SetCameraField(CAMERA_FIELD_ANGLE_OF_ATTACK,Angle1,0.60)
Мне это нужно для того, чтобы высчитывать Z цели камеры без задержки. Может кто-нибудь подскажет другой способ. Короче, вот примерный код:
Попробуй использовать функцию SetCameraQuickPosition (я правда не использовал её и даже не знаю что она делает, но, возможно, это то что я думаю)
:D