0
|
1 #pragma once
|
|
2 #include "VectorTypes.h"
|
|
3
|
186
|
4
|
|
5 #define INDOOR_CAMERA_DRAW_SW_OUTLINES 1
|
|
6 #define INDOOR_CAMERA_DRAW_D3D_OUTLINES 2
|
791
|
7 #define INDOOR_CAMERA_DRAW_TERRAIN_OUTLINES 4
|
0
|
8 /* 157 */
|
|
9 #pragma pack(push, 1)
|
|
10 struct IndoorCamera
|
|
11 {
|
|
12 //----- (0042391F) --------------------------------------------------------
|
|
13 IndoorCamera()
|
|
14 {
|
|
15 sRotationX = 0;
|
|
16 sRotationY = 0;
|
|
17 flt_1C_fov = 2000.0f;
|
|
18 flt_20_inv_1C = 32.768002f;
|
|
19
|
186
|
20 flags = 0;
|
0
|
21 }
|
|
22 void Initialize(int degFov, unsigned int uViewportWidth, unsigned int uViewportHeight);
|
|
23 void Initialize2();
|
|
24 float ViewTransform(struct RenderVertexSoft *a1);
|
|
25
|
|
26
|
|
27 Vec3_int_ pos;
|
|
28 unsigned int uMapGridCellX;
|
|
29 unsigned int uMapGridCellZ;
|
|
30 int sRotationX;
|
|
31 int sRotationY;
|
|
32 float flt_1C_fov;
|
|
33 float flt_20_inv_1C;
|
|
34 int field_24;
|
|
35 int field_28;
|
|
36 float fRotationYSine;
|
|
37 float fRotationYCosine;
|
|
38 float fRotationXSine;
|
|
39 float fRotationXCosine;
|
|
40 int _int_sine;
|
|
41 int _int_cosine;
|
|
42 int _int_sine_2;
|
|
43 int _int_cosine_2;
|
186
|
44 int flags; // & INDOOR_CAMERA_DRAW_D3D_OUTLINES: render terrain outlines in d3d
|
0
|
45 };
|
|
46 #pragma pack(pop)
|
|
47
|
|
48
|
|
49
|
|
50 extern IndoorCamera *pIndoorCamera; // idb |