Dayz 1.25
Dayz Code Explorer by KGB
Загрузка...
Поиск...
Не найдено
Файл DayZPlayerCamera1stPerson.c

См. исходные тексты.

Структуры данных

class  DayZPlayerCameraBase
 this is main camera class Подробнее...
 

Функции

class DayZPlayerCamera1stPerson extends DayZPlayerCameraBase DayZPlayerCamera1stPersonUnconscious (DayZPlayer pPlayer, HumanInputController pInput)
 
void DayZPlayerCamera1stPerson (DayZPlayer pPlayer, HumanInputController pInput)
 
override void OnActivate (DayZPlayerCamera pPrevCamera, DayZPlayerCameraResult pPrevCameraResult)
 
override void OnUpdate (float pDt, out DayZPlayerCameraResult pOutResult)
 
override vector GetBaseAngles ()
 
override vector GetAdditiveAngles ()
 
override string GetCameraName ()
 

Переменные

static const float CONST_UD_MIN = -85.0
 down limit
 
static const float CONST_UD_MAX = 85.0
 up limit
 
static const float CONST_LR_MIN = -160.0
 down limit
 
static const float CONST_LR_MAX = 160.0
 up limit
 
int m_iBoneIndex
 main bone
 
vector m_OffsetLS
 position offset
 
float m_fUpDownAngle
 up down angle in rad
 
float m_fUpDownAngleAdd
 up down angle in rad
 
float m_fLeftRightAngle
 left right angle in rad (in freelook only)
 
float m_fLeftRightAngleAdd
 left right angle in rad (in freelook only)
 

Функции

◆ DayZPlayerCamera1stPerson()

void DayZPlayerCamera1stPerson ( DayZPlayer pPlayer,
HumanInputController pInput )

◆ DayZPlayerCamera1stPersonUnconscious()

class DayZPlayerCamera1stPerson extends DayZPlayerCameraBase DayZPlayerCamera1stPersonUnconscious ( DayZPlayer pPlayer,
HumanInputController pInput )
105 {
106 m_iBoneIndex = pPlayer.GetBoneIndexByName ("Head");
107 }
int m_iBoneIndex
main bone
Definition DayZPlayerCamera1stPerson.c:189
Definition EntityAI.c:95

Используется в DayZPlayerCameras::RegisterCameras().

◆ GetAdditiveAngles()

override vector GetAdditiveAngles ( )
179{
180 static const float CONST_UD_MIN = -85.0;
181 static const float CONST_UD_MAX = 85.0;
182
183 static const float CONST_LR_MIN = -160.0;
184 static const float CONST_LR_MAX = 160.0;
185
186
188 {
189 m_iBoneIndex = pPlayer.GetBoneIndexByName("Head");
190 if (m_iBoneIndex == -1)
191 {
192 Print("DayZPlayerCamera1stPerson: main bone not found");
193 }
194
195 m_OffsetLS = "0.04 0.04 0"; //x - up, y - forward
196 }
197
198
199 //
201 {
203
204 if (pPrevCamera)
205 {
206 vector baseAngles = pPrevCamera.GetBaseAngles();
209
210 vector addAngles = pPrevCamera.GetAdditiveAngles();
213 }
214 }
215
216 //
217 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
218 {
222
225 pOutResult.m_CameraTM[3] = m_OffsetLS;
226
227 pOutResult.m_iDirectBone = m_iBoneIndex;
228 pOutResult.m_iDirectBoneMode = 1;
229 pOutResult.m_fUseHeading = 1.0;
230 pOutResult.m_fInsideCamera = 1.0;
231
232 pOutResult.m_fNearPlane = 0.04; //0.07 default
233
235
239 }
240
241 override vector GetBaseAngles()
242 {
243 vector a;
244 a[0] = m_fUpDownAngle;
245 a[1] = m_fLeftRightAngle;
246 a[2] = 0;
247 return a;
248 }
249
250 override vector GetAdditiveAngles()
251 {
252 vector a;
253 a[0] = m_fUpDownAngleAdd;
255 a[2] = 0;
256 return a;
257 }
258
259 override string GetCameraName()
260 {
261 return "DayZPlayerCamera1stPerson";
262 }
263
264 protected int m_iBoneIndex;
265 protected vector m_OffsetLS;
266
267 protected float m_fUpDownAngle;
268 protected float m_fUpDownAngleAdd;
269 protected float m_fLeftRightAngle;
270 protected float m_fLeftRightAngleAdd;
271}
272
273// *************************************************************************************
274// ! DayZPlayerCamera1stPersonUnconscious - first person only unconscious
275// *************************************************************************************
277{
279 {
280 m_iBoneIndex = pPlayer.GetBoneIndexByName ("Head");
281 }
282
283 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
284 {
285 super.OnUpdate(pDt, pOutResult);
286
287 pOutResult.m_iDirectBone = m_iBoneIndex;
288 pOutResult.m_iDirectBoneMode = 4;
289 pOutResult.m_fUseHeading = 0.0;
290
291 vector rot;
292 rot[0] = 0;
293 rot[1] = 90;
294 rot[2] = 0;
295
297 }
298}
override vector GetAdditiveAngles()
Definition DayZPlayerCamera1stPerson.c:175
override string GetCameraName()
Definition DayZPlayerCamera1stPerson.c:184
float m_fLeftRightAngle
left right angle in rad (in freelook only)
Definition DayZPlayerCamera1stPerson.c:194
float m_fUpDownAngle
up down angle in rad
Definition DayZPlayerCamera1stPerson.c:192
static const float CONST_UD_MAX
up limit
Definition DayZPlayerCamera1stPerson.c:106
float m_fLeftRightAngleAdd
left right angle in rad (in freelook only)
Definition DayZPlayerCamera1stPerson.c:195
float m_fUpDownAngleAdd
up down angle in rad
Definition DayZPlayerCamera1stPerson.c:193
static const float CONST_LR_MIN
down limit
Definition DayZPlayerCamera1stPerson.c:108
static const float CONST_LR_MAX
up limit
Definition DayZPlayerCamera1stPerson.c:109
void DayZPlayerCamera1stPerson(DayZPlayer pPlayer, HumanInputController pInput)
Definition DayZPlayerCamera1stPerson.c:112
static const float CONST_UD_MIN
down limit
Definition DayZPlayerCamera1stPerson.c:105
class DayZPlayerCamera1stPerson extends DayZPlayerCameraBase DayZPlayerCamera1stPersonUnconscious(DayZPlayer pPlayer, HumanInputController pInput)
Definition DayZPlayerCamera1stPerson.c:104
override vector GetBaseAngles()
Definition DayZPlayerCamera1stPerson.c:166
vector m_OffsetLS
position offset
Definition DayZPlayerCamera1stPerson.c:190
float UpdateLRAngleUnlocked(out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt)
Definition DayZPlayerCamera_Base.c:170
float m_CurrentCameraYaw
Definition DayZPlayerCamera_Base.c:558
float m_CurrentCameraPitch
Definition DayZPlayerCamera_Base.c:559
float UpdateUDAngleUnlocked(out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt)
Definition DayZPlayerCamera_Base.c:129
void StdFovUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
Definition DayZPlayerCamera_Base.c:295
void InitCameraOnPlayer(bool force=false)
Definition DayZPlayerCamera_Base.c:541
void UpdateCameraNV(PlayerBase player)
Definition DayZPlayerCamera_Base.c:401
void ProcessCameraShake(float delta, out float leftRight, out float upDown)
Definition DayZPlayerCamera_Base.c:108
void OnActivate()
Definition Trap_LandMine.c:67
Definition DayZPlayerCameraVehicles.c:5
Definition dayzplayer.c:12
Definition DayZPlayerImplement.c:111
Definition human.c:18
Definition EnMath3D.c:28
Definition PlayerBaseClient.c:2
Definition EnConvert.c:106
DayZPlayer m_pPlayer
data
Definition dayzplayer.c:135
class DayZPlayerCameraResult DayZPlayerCamera(DayZPlayer pPlayer, HumanInputController pInput)
Definition dayzplayer.c:56
vector GetCurrentOrientation()
Definition dayzplayer.c:112
proto void Print(void var)
Prints content of variable to console/log.
static proto void YawPitchRollMatrix(vector ang, out vector mat[3])
Creates rotation matrix from angles.
proto native void OnUpdate()
Definition tools.c:349

◆ GetBaseAngles()

override vector GetBaseAngles ( )
170{
171 static const float CONST_UD_MIN = -85.0;
172 static const float CONST_UD_MAX = 85.0;
173
174 static const float CONST_LR_MIN = -160.0;
175 static const float CONST_LR_MAX = 160.0;
176
177
179 {
180 m_iBoneIndex = pPlayer.GetBoneIndexByName("Head");
181 if (m_iBoneIndex == -1)
182 {
183 Print("DayZPlayerCamera1stPerson: main bone not found");
184 }
185
186 m_OffsetLS = "0.04 0.04 0"; //x - up, y - forward
187 }
188
189
190 //
192 {
194
195 if (pPrevCamera)
196 {
197 vector baseAngles = pPrevCamera.GetBaseAngles();
200
201 vector addAngles = pPrevCamera.GetAdditiveAngles();
204 }
205 }
206
207 //
208 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
209 {
213
216 pOutResult.m_CameraTM[3] = m_OffsetLS;
217
218 pOutResult.m_iDirectBone = m_iBoneIndex;
219 pOutResult.m_iDirectBoneMode = 1;
220 pOutResult.m_fUseHeading = 1.0;
221 pOutResult.m_fInsideCamera = 1.0;
222
223 pOutResult.m_fNearPlane = 0.04; //0.07 default
224
226
230 }
231
232 override vector GetBaseAngles()
233 {
234 vector a;
235 a[0] = m_fUpDownAngle;
236 a[1] = m_fLeftRightAngle;
237 a[2] = 0;
238 return a;
239 }
240
241 override vector GetAdditiveAngles()
242 {
243 vector a;
244 a[0] = m_fUpDownAngleAdd;
246 a[2] = 0;
247 return a;
248 }
249
250 override string GetCameraName()
251 {
252 return "DayZPlayerCamera1stPerson";
253 }
254
255 protected int m_iBoneIndex;
256 protected vector m_OffsetLS;
257
258 protected float m_fUpDownAngle;
259 protected float m_fUpDownAngleAdd;
260 protected float m_fLeftRightAngle;
261 protected float m_fLeftRightAngleAdd;
262}
263
264// *************************************************************************************
265// ! DayZPlayerCamera1stPersonUnconscious - first person only unconscious
266// *************************************************************************************
268{
270 {
271 m_iBoneIndex = pPlayer.GetBoneIndexByName ("Head");
272 }
273
274 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
275 {
276 super.OnUpdate(pDt, pOutResult);
277
278 pOutResult.m_iDirectBone = m_iBoneIndex;
279 pOutResult.m_iDirectBoneMode = 4;
280 pOutResult.m_fUseHeading = 0.0;
281
282 vector rot;
283 rot[0] = 0;
284 rot[1] = 90;
285 rot[2] = 0;
286
288 }
289}

◆ GetCameraName()

override string GetCameraName ( )
188{
189 static const float CONST_UD_MIN = -85.0;
190 static const float CONST_UD_MAX = 85.0;
191
192 static const float CONST_LR_MIN = -160.0;
193 static const float CONST_LR_MAX = 160.0;
194
195
197 {
198 m_iBoneIndex = pPlayer.GetBoneIndexByName("Head");
199 if (m_iBoneIndex == -1)
200 {
201 Print("DayZPlayerCamera1stPerson: main bone not found");
202 }
203
204 m_OffsetLS = "0.04 0.04 0"; //x - up, y - forward
205 }
206
207
208 //
210 {
212
213 if (pPrevCamera)
214 {
215 vector baseAngles = pPrevCamera.GetBaseAngles();
218
219 vector addAngles = pPrevCamera.GetAdditiveAngles();
222 }
223 }
224
225 //
226 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
227 {
231
234 pOutResult.m_CameraTM[3] = m_OffsetLS;
235
236 pOutResult.m_iDirectBone = m_iBoneIndex;
237 pOutResult.m_iDirectBoneMode = 1;
238 pOutResult.m_fUseHeading = 1.0;
239 pOutResult.m_fInsideCamera = 1.0;
240
241 pOutResult.m_fNearPlane = 0.04; //0.07 default
242
244
248 }
249
250 override vector GetBaseAngles()
251 {
252 vector a;
253 a[0] = m_fUpDownAngle;
254 a[1] = m_fLeftRightAngle;
255 a[2] = 0;
256 return a;
257 }
258
259 override vector GetAdditiveAngles()
260 {
261 vector a;
262 a[0] = m_fUpDownAngleAdd;
264 a[2] = 0;
265 return a;
266 }
267
268 override string GetCameraName()
269 {
270 return "DayZPlayerCamera1stPerson";
271 }
272
273 protected int m_iBoneIndex;
274 protected vector m_OffsetLS;
275
276 protected float m_fUpDownAngle;
277 protected float m_fUpDownAngleAdd;
278 protected float m_fLeftRightAngle;
279 protected float m_fLeftRightAngleAdd;
280}
281
282// *************************************************************************************
283// ! DayZPlayerCamera1stPersonUnconscious - first person only unconscious
284// *************************************************************************************
286{
288 {
289 m_iBoneIndex = pPlayer.GetBoneIndexByName ("Head");
290 }
291
292 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
293 {
294 super.OnUpdate(pDt, pOutResult);
295
296 pOutResult.m_iDirectBone = m_iBoneIndex;
297 pOutResult.m_iDirectBoneMode = 4;
298 pOutResult.m_fUseHeading = 0.0;
299
300 vector rot;
301 rot[0] = 0;
302 rot[1] = 90;
303 rot[2] = 0;
304
306 }
307}

◆ OnActivate()

override void OnActivate ( DayZPlayerCamera pPrevCamera,
DayZPlayerCameraResult pPrevCameraResult )
129{
130 static const float CONST_UD_MIN = -85.0;
131 static const float CONST_UD_MAX = 85.0;
132
133 static const float CONST_LR_MIN = -160.0;
134 static const float CONST_LR_MAX = 160.0;
135
136
138 {
139 m_iBoneIndex = pPlayer.GetBoneIndexByName("Head");
140 if (m_iBoneIndex == -1)
141 {
142 Print("DayZPlayerCamera1stPerson: main bone not found");
143 }
144
145 m_OffsetLS = "0.04 0.04 0"; //x - up, y - forward
146 }
147
148
149 //
151 {
153
154 if (pPrevCamera)
155 {
156 vector baseAngles = pPrevCamera.GetBaseAngles();
159
160 vector addAngles = pPrevCamera.GetAdditiveAngles();
163 }
164 }
165
166 //
167 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
168 {
172
175 pOutResult.m_CameraTM[3] = m_OffsetLS;
176
177 pOutResult.m_iDirectBone = m_iBoneIndex;
178 pOutResult.m_iDirectBoneMode = 1;
179 pOutResult.m_fUseHeading = 1.0;
180 pOutResult.m_fInsideCamera = 1.0;
181
182 pOutResult.m_fNearPlane = 0.04; //0.07 default
183
185
189 }
190
191 override vector GetBaseAngles()
192 {
193 vector a;
194 a[0] = m_fUpDownAngle;
195 a[1] = m_fLeftRightAngle;
196 a[2] = 0;
197 return a;
198 }
199
200 override vector GetAdditiveAngles()
201 {
202 vector a;
203 a[0] = m_fUpDownAngleAdd;
205 a[2] = 0;
206 return a;
207 }
208
209 override string GetCameraName()
210 {
211 return "DayZPlayerCamera1stPerson";
212 }
213
214 protected int m_iBoneIndex;
215 protected vector m_OffsetLS;
216
217 protected float m_fUpDownAngle;
218 protected float m_fUpDownAngleAdd;
219 protected float m_fLeftRightAngle;
220 protected float m_fLeftRightAngleAdd;
221}
222
223// *************************************************************************************
224// ! DayZPlayerCamera1stPersonUnconscious - first person only unconscious
225// *************************************************************************************
227{
229 {
230 m_iBoneIndex = pPlayer.GetBoneIndexByName ("Head");
231 }
232
233 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
234 {
235 super.OnUpdate(pDt, pOutResult);
236
237 pOutResult.m_iDirectBone = m_iBoneIndex;
238 pOutResult.m_iDirectBoneMode = 4;
239 pOutResult.m_fUseHeading = 0.0;
240
241 vector rot;
242 rot[0] = 0;
243 rot[1] = 90;
244 rot[2] = 0;
245
247 }
248}

◆ OnUpdate()

override void OnUpdate ( float pDt,
out DayZPlayerCameraResult pOutResult )

update angles from input

146{
147 static const float CONST_UD_MIN = -85.0;
148 static const float CONST_UD_MAX = 85.0;
149
150 static const float CONST_LR_MIN = -160.0;
151 static const float CONST_LR_MAX = 160.0;
152
153
155 {
156 m_iBoneIndex = pPlayer.GetBoneIndexByName("Head");
157 if (m_iBoneIndex == -1)
158 {
159 Print("DayZPlayerCamera1stPerson: main bone not found");
160 }
161
162 m_OffsetLS = "0.04 0.04 0"; //x - up, y - forward
163 }
164
165
166 //
168 {
170
171 if (pPrevCamera)
172 {
173 vector baseAngles = pPrevCamera.GetBaseAngles();
176
177 vector addAngles = pPrevCamera.GetAdditiveAngles();
180 }
181 }
182
183 //
184 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
185 {
189
192 pOutResult.m_CameraTM[3] = m_OffsetLS;
193
194 pOutResult.m_iDirectBone = m_iBoneIndex;
195 pOutResult.m_iDirectBoneMode = 1;
196 pOutResult.m_fUseHeading = 1.0;
197 pOutResult.m_fInsideCamera = 1.0;
198
199 pOutResult.m_fNearPlane = 0.04; //0.07 default
200
202
206 }
207
208 override vector GetBaseAngles()
209 {
210 vector a;
211 a[0] = m_fUpDownAngle;
212 a[1] = m_fLeftRightAngle;
213 a[2] = 0;
214 return a;
215 }
216
217 override vector GetAdditiveAngles()
218 {
219 vector a;
220 a[0] = m_fUpDownAngleAdd;
222 a[2] = 0;
223 return a;
224 }
225
226 override string GetCameraName()
227 {
228 return "DayZPlayerCamera1stPerson";
229 }
230
231 protected int m_iBoneIndex;
232 protected vector m_OffsetLS;
233
234 protected float m_fUpDownAngle;
235 protected float m_fUpDownAngleAdd;
236 protected float m_fLeftRightAngle;
237 protected float m_fLeftRightAngleAdd;
238}
239
240// *************************************************************************************
241// ! DayZPlayerCamera1stPersonUnconscious - first person only unconscious
242// *************************************************************************************
244{
246 {
247 m_iBoneIndex = pPlayer.GetBoneIndexByName ("Head");
248 }
249
250 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
251 {
252 super.OnUpdate(pDt, pOutResult);
253
254 pOutResult.m_iDirectBone = m_iBoneIndex;
255 pOutResult.m_iDirectBoneMode = 4;
256 pOutResult.m_fUseHeading = 0.0;
257
258 vector rot;
259 rot[0] = 0;
260 rot[1] = 90;
261 rot[2] = 0;
262
264 }
265}

Переменные

◆ CONST_LR_MAX

const float CONST_LR_MAX = 160.0
static

◆ CONST_LR_MIN

const float CONST_LR_MIN = -160.0
static

down limit

Используется в DayZPlayerCamera3rdPersonErc(), DayZPlayerCameraBase::OnUpdate() и OnUpdate().

◆ CONST_UD_MAX

const float CONST_UD_MAX = 85.0
static

◆ CONST_UD_MIN

const float CONST_UD_MIN = -85.0
static

down limit

Используется в DayZPlayerCamera3rdPersonErc(), DayZPlayerCameraBase::OnUpdate() и OnUpdate().

◆ m_fLeftRightAngle

float m_fLeftRightAngle
protected

left right angle in rad (in freelook only)

Используется в DayZPlayerCameraBase::OnActivate(), OnActivate(), DayZPlayerCameraBase::OnUpdate() и OnUpdate().

◆ m_fLeftRightAngleAdd

float m_fLeftRightAngleAdd
protected

left right angle in rad (in freelook only)

Используется в DayZPlayerCameraBase::OnActivate(), OnActivate(), DayZPlayerCameraBase::OnUpdate() и OnUpdate().

◆ m_fUpDownAngle

float m_fUpDownAngle
protected

up down angle in rad

Используется в DayZPlayerCameraBase::OnActivate(), OnActivate(), DayZPlayerCameraBase::OnUpdate() и OnUpdate().

◆ m_fUpDownAngleAdd

float m_fUpDownAngleAdd
protected

up down angle in rad

Используется в DayZPlayerCameraBase::OnActivate(), OnActivate(), DayZPlayerCameraBase::OnUpdate() и OnUpdate().

◆ m_iBoneIndex

◆ m_OffsetLS

vector m_OffsetLS
protected