annotate LightmapBuilder.h @ 364:3abebb74fd09

Merge
author Gloval
date Fri, 22 Feb 2013 00:52:35 +0400
parents 9c0607679772
children 61343380715b
rev   line source
0
Ritor1
parents:
diff changeset
1 #pragma once
Ritor1
parents:
diff changeset
2 #include <vector>
Ritor1
parents:
diff changeset
3 #include "Render.h"
Ritor1
parents:
diff changeset
4 #include "Lights.h"
Ritor1
parents:
diff changeset
5
Ritor1
parents:
diff changeset
6
Ritor1
parents:
diff changeset
7 /* 115 */
Ritor1
parents:
diff changeset
8 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
9 struct Lightmap
Ritor1
parents:
diff changeset
10 {
Ritor1
parents:
diff changeset
11 Lightmap();
Ritor1
parents:
diff changeset
12
Ritor1
parents:
diff changeset
13 void (__thiscall ***vdestructor_ptr)(Lightmap *, bool);
Ritor1
parents:
diff changeset
14 unsigned int uNumVertices;
Ritor1
parents:
diff changeset
15 RenderVertexSoft pVertices[64];
Ritor1
parents:
diff changeset
16 __int16 field_C08;
Ritor1
parents:
diff changeset
17 __int16 field_C0A;
Ritor1
parents:
diff changeset
18 __int16 field_C0C;
Ritor1
parents:
diff changeset
19 __int16 field_C0E;
Ritor1
parents:
diff changeset
20 unsigned int uColorMask;
Ritor1
parents:
diff changeset
21 float fBrightness;
Ritor1
parents:
diff changeset
22 int field_C18;
Ritor1
parents:
diff changeset
23 };
Ritor1
parents:
diff changeset
24 #pragma pack(pop)
Ritor1
parents:
diff changeset
25
Ritor1
parents:
diff changeset
26
Ritor1
parents:
diff changeset
27 /* 114 */
Ritor1
parents:
diff changeset
28 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
29 struct LightmapBuilder
Ritor1
parents:
diff changeset
30 {
Ritor1
parents:
diff changeset
31 LightmapBuilder();
Ritor1
parents:
diff changeset
32 inline ~LightmapBuilder() //----- (0045BBAA)
Ritor1
parents:
diff changeset
33 {}
Ritor1
parents:
diff changeset
34
Ritor1
parents:
diff changeset
35 void DoDrawLightmaps();
Ritor1
parents:
diff changeset
36 bool DrawLightmap(Lightmap *a1, Vec3_float_ *pColorMult, float z_bias);
Ritor1
parents:
diff changeset
37 bool DrawLightmaps2(float a2);
Ritor1
parents:
diff changeset
38 char _45D74F_MessWithLight(int a2, int *a3);
Ritor1
parents:
diff changeset
39 void DrawLightmaps(int a2);
Ritor1
parents:
diff changeset
40 bool DrawDebugOutlines(char bit_one_for_list1__bit_two_for_list2);
Ritor1
parents:
diff changeset
41 double _45D643(struct Edge *a1, float a2);
Ritor1
parents:
diff changeset
42 int _45D426(struct Span *a1, struct Edge **a2, unsigned int a3, struct Edge *a4, int a5);
Ritor1
parents:
diff changeset
43 bool _45D3C7(struct stru148 *a1);
Ritor1
parents:
diff changeset
44 bool StackLight_TerrainFace(struct StationaryLight *pLight, struct Vec3_float_ *pNormal, float *a3, struct RenderVertexSoft *a1, unsigned int uStripType, int X, unsigned int *pSlot);
Ritor1
parents:
diff changeset
45 bool StackLights_TerrainFace(struct Vec3_float_ *pNormal, float *a3, struct RenderVertexSoft *a1, unsigned int uStripType, bool bLightBackfaces);
Ritor1
parents:
diff changeset
46 bool ApplyLight_ODM(struct StationaryLight *pLight, struct ODMFace *pFace, unsigned int *pSlot, char a4);
Ritor1
parents:
diff changeset
47 bool ApplyLights_OutdoorFace(struct ODMFace *pFace);
Ritor1
parents:
diff changeset
48 double _45CC0C_light(struct Vec3_float_ a1, float a2, float a3, struct Vec3_float_ *pNormal, float a5, int uLightType);
Ritor1
parents:
diff changeset
49 int _45CBD4(struct RenderVertexSoft *a2, int a3, int *a4, int *a5);
Ritor1
parents:
diff changeset
50 int _45CB89(struct RenderVertexSoft *a1, int a2);
Ritor1
parents:
diff changeset
51 int _45CA88(struct stru320 *a2, struct RenderVertexSoft *a3, int a4, struct Vec3_float_ *pNormal);
Ritor1
parents:
diff changeset
52 bool ApplyLight_BLV(struct StationaryLight *pLight, struct BLVFace *a2, unsigned int *pSlot, bool bLightBackfaces, char *a5);
Ritor1
parents:
diff changeset
53 bool ApplyLights_IndoorFace(unsigned int uFaceID);
Ritor1
parents:
diff changeset
54 int _45C6D6(int a2, struct RenderVertexSoft *a3, Lightmap *pLightmap);
Ritor1
parents:
diff changeset
55 int _45C4B9(int a2, struct RenderVertexSoft *a3, Lightmap *pLightmap);
Ritor1
parents:
diff changeset
56 bool _45BE86_build_light_polygon(Vec3_int_ *pos, float radius, unsigned int uColorMask, float dot_dist, int uLightType, struct stru314 *a7, unsigned int uNumVertices, RenderVertexSoft *a9, char uClipFlag);
Ritor1
parents:
diff changeset
57 bool ApplyLights(struct stru320 *a2, struct stru154 *a3, unsigned int uNumVertices, struct RenderVertexSoft *a5, struct IndoorCameraD3D_Vec4 *, char uClipFlag);
Ritor1
parents:
diff changeset
58
Ritor1
parents:
diff changeset
59
Ritor1
parents:
diff changeset
60 void (__thiscall ***vdestructor_ptr)(LightmapBuilder *, bool);
Ritor1
parents:
diff changeset
61 //std::vector<Lightmap> std__vector_000004;
Ritor1
parents:
diff changeset
62 //std::vector<Lightmap> std__vector_183808;
Ritor1
parents:
diff changeset
63 Lightmap std__vector_000004[512];
Ritor1
parents:
diff changeset
64 unsigned int std__vector_000004_size;
Ritor1
parents:
diff changeset
65 Lightmap std__vector_183808[768];
Ritor1
parents:
diff changeset
66 unsigned int std__vector_183808_size;
Ritor1
parents:
diff changeset
67 float flt_3C8C0C;
Ritor1
parents:
diff changeset
68 float flt_3C8C10;
Ritor1
parents:
diff changeset
69 float flt_3C8C14;
Ritor1
parents:
diff changeset
70 float flt_3C8C18;
Ritor1
parents:
diff changeset
71 float flt_3C8C1C;
Ritor1
parents:
diff changeset
72 float flt_3C8C20;
Ritor1
parents:
diff changeset
73 float flt_3C8C24;
Ritor1
parents:
diff changeset
74 float flt_3C8C28;
Ritor1
parents:
diff changeset
75 float flt_3C8C2C_lightmaps_brightness;
Ritor1
parents:
diff changeset
76 float flt_3C8C30;
Ritor1
parents:
diff changeset
77 RenderVertexSoft field_3C8C34[256];
Ritor1
parents:
diff changeset
78 int uFlags;
Ritor1
parents:
diff changeset
79 };
Ritor1
parents:
diff changeset
80 #pragma pack(pop)
Ritor1
parents:
diff changeset
81
Ritor1
parents:
diff changeset
82
Ritor1
parents:
diff changeset
83
Ritor1
parents:
diff changeset
84
Ritor1
parents:
diff changeset
85 extern LightsStack_StationaryLight_ *pStationaryLightsStack;
Ritor1
parents:
diff changeset
86 //extern StationaryLight pStationaryLights[400];
Ritor1
parents:
diff changeset
87 //extern int uNumStationaryLightsApplied; // weak
Ritor1
parents:
diff changeset
88 extern LightsStack_MobileLight_ *pMobileLightsStack;
Ritor1
parents:
diff changeset
89 //extern MobileLight pMobileLights[400];
Ritor1
parents:
diff changeset
90 //extern int uNumMobileLightsApplied;