Показать сообщение отдельно
Старый 24.06.2012, 22:04   #2
Hartmann1
AnyKey`щик
 
Регистрация: 24.06.2012
Сообщений: 16
Написано 5 полезных сообщений
(для 6 пользователей)
Ответ: Правильное ограничение угла поворота камеры

Зачем привязывать камеру к телу?

Const MaxPlayerPitch# = 85.0
Const MinPlayerPitch# = -75.0

...

Global ScreenCenterX% = GraphicsWidth() / 2
Global ScreenCenterY% = GraphicsHeight() / 2

Global MouseDeltaRatio# = 0.25

...

Local PlayerPitch# = 0
Local PlayerYaw# = 0

...

Local MouseDeltaX# = MouseXSpeed() * MouseDeltaRatio
Local MouseDeltaY# = MouseYSpeed() * MouseDeltaRatio

MoveMouse( ScreenCenterX, ScreenCenterY )

PlayerPitch = PlayerPitch + MouseDeltaY
If ( PlayerPitch > MaxPlayerPitch ) Then
    PlayerPitch = MaxPlayerPitch
Else If ( PlayerPitch < MinPlayerPitch ) Then
    PlayerPitch = MinPlayerPitch
End If

PlayerYaw = PlayerYaw - MouseDeltaX

RotateEntity( PlayerCamera, PlayerPitch, PlayerYaw, 0 )
(Offline)
 
Ответить с цитированием