Enumerations | |
| enum | NVTypes { NONE = 0 , NV_GOGGLES , NV_GOGGLES_2D , NV_GOGGLES_OFF , NV_OPTICS_ON , NV_OPTICS_OFF , NV_PUMPKIN , NV_OPTICS_KAZUAR_DAY , NV_OPTICS_KAZUAR_NIGHT , NV_OPTICS_STARLIGHT_DAY , NV_OPTICS_STARLIGHT_NIGHT , MAX } |
Functions | |
| float | Limit (float pV, float pMin, float pMax) |
| limit function | |
| float | fixAngle_PI_PI (float pAngle) |
| float | fixAngle_180_180 (float pAngle) |
| void | DayZPlayerCameraBase (DayZPlayer pPlayer, HumanInputController pInput) |
| constructor must be same | |
| void | HandleShoulderCameraOverride (HumanInputController pInput) |
| void | ProcessCameraShake (float delta, out float leftRight, out float upDown) |
| void | Init () |
| Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside of a non-static system) | |
| float | UpdateUDAngleUnlocked (out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt) |
| float | UpdateLRAngleUnlocked (out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt) |
| float | UpdateUDAngle (out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt) |
| float | UpdateLRAngle (float pAngle, float pMin, float pMax, float pDt) |
| void | StdFovUpdate (float pDt, out DayZPlayerCameraResult pOutResult) |
| override void | SpawnCameraShakeProper (float strength, float radius, float smoothness, float radius_decay_speed) |
| override void | OnUpdate (float pDt, out DayZPlayerCameraResult pOutResult) |
| override void | OnActivate (DayZPlayerCamera pPrevCamera, DayZPlayerCameraResult pPrevCameraResult) |
| float | GetWeaponSwayModifier () |
| override string | GetCameraName () |
| void | SetCameraPPDelay (DayZPlayerCamera pPrevCamera) |
| void | SetCameraNV (bool nightvision) |
| bool | IsCameraNV () |
| void | SetCameraNVType (int type) |
| int | GetCameraNVType () |
| void | UpdateCameraNV (PlayerBase player) |
| void | SetCameraPP (bool state, DayZPlayerCamera launchedFrom) |
| by default sets camera PP to zero, regardless of parameter. Override if needed. | |
| override float | GetCurrentYaw () |
| override float | GetCurrentPitch () |
| override float | GetCurrentRoll () |
| void | ForceFreelook (bool state) |
| void | SetNVPostprocess (int NVtype) |
| DayZPlayerCameraOptics handles this separately, otherwise it takes active NVType from PlayerBase::GetCameraNVType. | |
| void | InitCameraOnPlayer (bool force=false) |
Variables | |
| enum NVTypes | CONST_NEARPLANE_OPTICS_MIN = 0.04 |
| protected Weapon_Base | m_weaponUsed |
| protected ItemOptics | m_opticsUsed |
| protected ref CameraShake | m_CameraShake |
| protected float | m_fLRAngleVel [1] |
| protected float | m_fUDAngleVel [1] |
| protected float | m_fFovAbsVel [1] |
| protected float | m_fFovAbsolute |
| protected bool | m_bForceFreeLook |
| protected float | m_WeaponSwayModifier |
| protected float | m_CameraPPDelay |
| protected float | m_CurrentCameraYaw |
| protected float | m_CurrentCameraPitch |
| protected float | m_CurrentCameraRoll |
| protected HumanCommandWeapons | m_CommandWeapons |
| protected bool | m_IsNightvision |
| protected int | m_NightvisionType |
| enum NVTypes |
| void DayZPlayerCameraBase | ( | DayZPlayer | pPlayer, |
| HumanInputController | pInput | ||
| ) |
constructor must be same
References GetDayZGame(), DayZPlayer::GetEyeZoomLevel(), HandleShoulderCameraOverride(), Init(), m_CameraPPDelay, m_CommandWeapons, m_fFovAbsolute, m_fFovAbsVel, m_fLRAngleVel, m_fUDAngleVel, m_pPlayer, and m_WeaponSwayModifier.
Referenced by UIScriptedMenu::SetCameraData().
| void ForceFreelook | ( | bool | state | ) |
References m_bForceFreeLook.
| override string GetCameraName | ( | ) |
| int GetCameraNVType | ( | ) |
References m_NightvisionType.
Referenced by SetCameraPP(), DayZPlayerCameraBase::SetCameraPP(), and UpdateCameraNV().
| override float GetCurrentPitch | ( | ) |
References m_CurrentCameraPitch.
| override float GetCurrentRoll | ( | ) |
References m_CurrentCameraRoll.
| override float GetCurrentYaw | ( | ) |
References m_CurrentCameraYaw.
| float GetWeaponSwayModifier | ( | ) |
References m_WeaponSwayModifier.
| void HandleShoulderCameraOverride | ( | HumanInputController | pInput | ) |
disable override
References m_pInput, and HumanInputController::Override3rdIsRightShoulder().
Referenced by DayZPlayerCameraBase().
| void Init | ( | ) |
Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside of a non-static system)
whole body slots
upper body part slots
bottom body part slots
lower body part slots
heat comfort related slots
pre-init arrays
References IsCameraNV(), m_pPlayer, SetCameraNV(), and SetCameraNVType().
| void InitCameraOnPlayer | ( | bool | force = false | ) |
References m_pPlayer.
Referenced by OnActivate(), DayZPlayerCameraBase::OnUpdate(), and OnUpdate().
| bool IsCameraNV | ( | ) |
References m_IsNightvision.
Referenced by Init(), OnActivate(), SetCameraPP(), DayZPlayerCameraBase::SetCameraPP(), and UpdateCameraNV().
| override void OnActivate | ( | DayZPlayerCamera | pPrevCamera, |
| DayZPlayerCameraResult | pPrevCameraResult | ||
| ) |
References ScriptCallQueue::Call(), CALL_CATEGORY_GUI, ScriptCallQueue::CallLater(), DayZPlayerCamera(), DayZPlayerCameraOptics(), CGame::GetCallQueue(), GetGame(), InitCameraOnPlayer(), IsCameraNV(), m_CameraPPDelay, m_pPlayer, DayZPlayerCameraBase::SetCameraPP(), and DayZPlayerCameraBase::SetCameraPPDelay().
| override void OnUpdate | ( | float | pDt, |
| out DayZPlayerCameraResult | pOutResult | ||
| ) |
References InitCameraOnPlayer(), Debug::Log(), m_pPlayer, StdFovUpdate(), and UpdateCameraNV().
References m_CameraShake, CameraShake::Update(), x, and y.
Referenced by DayZPlayerCameraBase::OnUpdate().
| void SetCameraNV | ( | bool | nightvision | ) |
References m_IsNightvision.
Referenced by Init(), SetCameraPP(), and UpdateCameraNV().
| void SetCameraNVType | ( | int | type | ) |
References m_NightvisionType.
Referenced by Init(), and UpdateCameraNV().
| void SetCameraPP | ( | bool | state, |
| DayZPlayerCamera | launchedFrom | ||
| ) |
by default sets camera PP to zero, regardless of parameter. Override if needed.
References GetCameraNVType(), IsCameraNV(), m_pPlayer, m_weaponUsed, and SetNVPostprocess().
| void SetCameraPPDelay | ( | DayZPlayerCamera | pPrevCamera | ) |
| void SetNVPostprocess | ( | int | NVtype | ) |
DayZPlayerCameraOptics handles this separately, otherwise it takes active NVType from PlayerBase::GetCameraNVType.
References GameplayEffectWidgets_base::AddActiveEffects(), Mission::GetEffectWidgets(), GetGame(), CGame::GetMission(), m_pPlayer, and GameplayEffectWidgets_base::RemoveActiveEffects().
Referenced by SetCameraPP(), and DayZPlayerCameraBase::SetCameraPP().
| override void SpawnCameraShakeProper | ( | float | strength, |
| float | radius, | ||
| float | smoothness, | ||
| float | radius_decay_speed | ||
| ) |
References m_CameraShake.
Referenced by SpawnCameraShake(), and SpawnDiagCameraShake().
| void StdFovUpdate | ( | float | pDt, |
| out DayZPlayerCameraResult | pOutResult | ||
| ) |
change abs FOV for naked eye zoom
switch shooting from camera to weapon (firearms)
References GetDayZGame(), DayZPlayer::GetEyeZoomLevel(), DayZPlayer::IsShootingFromCamera(), m_fFovAbsolute, m_fFovAbsVel, m_pPlayer, and Math::SmoothCD().
Referenced by DayZPlayerCameraBase::OnUpdate(), and OnUpdate().
| void UpdateCameraNV | ( | PlayerBase | player | ) |
References GetCameraNVType(), IsCameraNV(), SetCameraNV(), SetCameraNVType(), and DayZPlayerCameraBase::SetCameraPP().
Referenced by DayZPlayerCameraBase::OnUpdate(), and OnUpdate().
| float UpdateLRAngleUnlocked | ( | out float | pAngle, |
| out float | pAngleAdd, | ||
| float | pMin, | ||
| float | pMax, | ||
| float | pDt | ||
| ) |
References Math::AbsFloat(), HumanInputController::CameraIsFreeLook(), HumanInputController::CameraIsTracking(), HumanInputController::GetAimDelta(), HumanInputController::GetTracking(), Limit, m_bForceFreeLook, m_fLRAngleVel, m_fUDAngleVel, m_pInput, Math::RAD2DEG, and Math::SmoothCD().
Referenced by DayZPlayerCameraBase::OnUpdate(), and OnUpdate().
pAngle + pAngleAdd == aimingUDAngle + aimingUDAdd now we set pAngleAdd to be the differenc from aimingAngle and we change camera angle to be the aiming angle
lr angle
update it in degrees
References Math::AbsFloat(), HumanInputController::CameraIsFreeLook(), HumanInputController::CameraIsTracking(), HumanInputController::GetAimChange(), HumanCommandWeapons::GetBaseAimingAngleUD(), HumanInputController::GetTracking(), Limit, m_CommandWeapons, m_fUDAngleVel, m_pInput, Math::RAD2DEG, and Math::SmoothCD().
| float UpdateUDAngleUnlocked | ( | out float | pAngle, |
| out float | pAngleAdd, | ||
| float | pMin, | ||
| float | pMax, | ||
| float | pDt | ||
| ) |
References Math::AbsFloat(), HumanInputController::CameraIsFreeLook(), HumanInputController::CameraIsTracking(), HumanInputController::GetAimDelta(), HumanCommandWeapons::GetBaseAimingAngleUD(), HumanInputController::GetTracking(), Limit, m_CommandWeapons, m_fUDAngleVel, m_pInput, m_pPlayer, Math::RAD2DEG, and Math::SmoothCD().
Referenced by DayZPlayerCameraBase::OnUpdate(), and OnUpdate().
| enum NVTypes CONST_NEARPLANE_OPTICS_MIN = 0.04 |
| protected bool m_bForceFreeLook |
Referenced by ForceFreelook(), UpdateLRAngle(), UpdateLRAngleLookAt(), and UpdateLRAngleUnlocked().
| protected float m_CameraPPDelay |
Referenced by DayZPlayerCameraBase(), OnActivate(), DayZPlayerCameraBase::SetCameraPPDelay(), and SetCameraPPDelay().
| protected ref CameraShake m_CameraShake |
Referenced by DayZPlayerCameraBase::OnUpdate(), ProcessCameraShake(), and SpawnCameraShakeProper().
| protected HumanCommandWeapons m_CommandWeapons |
Referenced by DayZPlayerCameraBase(), UpdateUDAngle(), and UpdateUDAngleUnlocked().
| protected float m_CurrentCameraPitch |
Referenced by GetCurrentPitch(), DayZPlayerCameraBase::OnUpdate(), and OnUpdate().
| protected float m_CurrentCameraRoll |
Referenced by DayZPlayerCameraBase::DayZPlayerCamera3rdPerson(), GetCurrentRoll(), and OnUpdate().
| protected float m_CurrentCameraYaw |
Referenced by GetCurrentYaw(), DayZPlayerCameraBase::OnUpdate(), and OnUpdate().
| protected float m_fFovAbsolute |
| protected float m_fFovAbsVel[1] |
Referenced by DayZPlayerCameraBase(), DayZPlayerCameraBase::HoldBreathFOVEffect(), HoldBreathFOVEffect(), and StdFovUpdate().
| protected float m_fLRAngleVel[1] |
Referenced by DayZPlayerCameraBase(), UpdateLRAngle(), UpdateLRAngleLookAt(), and UpdateLRAngleUnlocked().
| protected float m_fUDAngleVel[1] |
Referenced by DayZPlayerCameraBase(), UpdateLRAngleUnlocked(), UpdateUDAngle(), and UpdateUDAngleUnlocked().
| protected bool m_IsNightvision |
Referenced by IsCameraNV(), and SetCameraNV().
| protected int m_NightvisionType |
Referenced by GetCameraNVType(), and SetCameraNVType().
| protected ItemOptics m_opticsUsed |
Referenced by AdjustCameraParameters(), DayZPlayerCameraBase::GetCurrentSightEntity(), GetCurrentSightEntity(), DayZPlayerCameraBase::GetCurrentSightInfo(), GetCurrentSightInfo(), Init(), OnActivate(), DayZPlayerCameraBase::SetCameraPP(), SetCameraPP(), and DayZPlayerCameraBase::SetupSightEntities().
| protected float m_WeaponSwayModifier |
| protected Weapon_Base m_weaponUsed |