Bläddra i källkod

Removed PSKModel and UTPackage

Thomas Buck 11 år sedan
förälder
incheckning
76d2460cd2
7 ändrade filer med 2 tillägg och 4690 borttagningar
  1. 1
    0
      ChangeLog
  2. 0
    31
      Makefile
  3. 1
    1
      README.md
  4. 0
    2594
      src/PSKModel.cpp
  5. 0
    589
      src/PSKModel.h
  6. 0
    1253
      src/UTPackage.cpp
  7. 0
    222
      src/UTPackage.h

+ 1
- 0
ChangeLog Visa fil

@@ -6,6 +6,7 @@
6 6
  OpenRaider (0.1.2) xythobuz <xythobuz@xythobuz.de>
7 7
 
8 8
 	[ 20140103 ]
9
+	* Removed more (unused?) code, PSKModel & UTPackage
9 10
 	* Removed unused MD3, mtk3d, MtkImage stuff!
10 11
 
11 12
 	[ 20140102 ]

+ 0
- 31
Makefile Visa fil

@@ -337,20 +337,6 @@ tarball:
337 337
 		--exclude bin --exclude CVS --exclude *~ 
338 338
 	@-echo "[DONE]"
339 339
 
340
-PSKModel.zip:
341
-	@-echo "Making PSKModel pak                             " 
342
-	@-zip ../pskmodel-$(BUILD_ID)-src.zip \
343
-		Makefile deps.sh README.PSKModel \
344
-		src/PSKModel.h src/PSKModel.cpp \
345
-		src/UTPackage.h src/UTPackage.cpp \
346
-		src/Texture.h src/Texture.cpp \
347
-		src/mtk_tga.cpp src/mtk_tga.h
348
-	@-echo "[DONE]"
349
-	@-echo "Making test data pak                            " 
350
-	@-zip -r ../pskmodel-$(BUILD_ID)-data.zip \
351
-		data/models/test/ 
352
-	@-echo "[DONE]"
353
-
354 340
 backup:
355 341
 	$(MAKE) tarball
356 342
 	@-cd .. && cp $(NAME)-$(VERSION)-$(BUILD_ID).tar.gz ~/Backup
@@ -498,20 +484,3 @@ endif
498 484
 
499 485
 #################################################################
500 486
 
501
-PSKModel.test:
502
-	mkdir -p $(BUILD_TEST_DIR)
503
-	$(MAKE) targets NAME=PSKModel.test BUILDDIR=$(BUILD_TEST_DIR) \
504
-	OBJS="$(BUILD_TEST_DIR)/PSKModel.o $(BUILD_TEST_DIR)/UTPackage.o $(BUILD_TEST_DIR)/mtk_tga.o $(BUILD_TEST_DIR)/Texture.o" \
505
-	CFLAGS="-Wall -O0 -g -Isrc -DUNIT_TEST_PSKMODEL -DUSING_OPENGL $(shell sdl-config --cflags) -DUSING_MTK_TGA -DHAVE_SDL_TTF" \
506
-	LD_FLAGS="-lm -lstdc++ -lGL -lGLU $(shell sdl-config --libs) -lSDL_ttf"
507
-
508
-#################################################################
509
-
510
-UTPackage.test:
511
-	mkdir -p $(BUILD_TEST_DIR)
512
-	$(MAKE) targets NAME=UTPackage.test BUILDDIR=$(BUILD_TEST_DIR) \
513
-	OBJS="$(BUILD_TEST_DIR)/UTPackage.o $(BUILD_TEST_DIR)/mtk_tga.o" \
514
-	CFLAGS="-Wall -O0 -g -Isrc -DUNIT_TEST_UTPACKAGE -DUSING_MTK_TGA" \
515
-	LD_FLAGS="-lm -lstdc++"
516
-
517
-#################################################################

+ 1
- 1
README.md Visa fil

@@ -2,7 +2,7 @@
2 2
 
3 3
 [OpenRaider](http://openraider.sourceforge.net) is an Open Source implementation of the classic Tomb Raider Game Engine. It was abandoned in 2003.
4 4
 
5
-This project aims to get OpenRaider in a more usable state.
5
+This project aims to get OpenRaider in a more usable state, maybe one day even being able to play the old Tomb Raider games flawlessly...
6 6
 
7 7
 If you just want to see OpenRaider doing something, without installing any of the dependencies needed to build OpenRaider, install [XQuartz](http://xquartz.macosforge.org/trac) (if you don't have it already) and grab the Mac App Bundle from the [most recent release](https://github.com/xythobuz/OpenRaider/releases).
8 8
 

+ 0
- 2594
src/PSKModel.cpp
Filskillnaden har hållits tillbaka eftersom den är för stor
Visa fil


+ 0
- 589
src/PSKModel.h Visa fil

@@ -1,589 +0,0 @@
1
-/* -*- Mode: C++; tab-width: 3; indent-tabs-mode: t; c-basic-offset: 3 -*- */
2
-/*================================================================
3
- * 
4
- * Project : Freyja
5
- * Author  : Terry 'Mongoose' Hendrix II
6
- * Website : http://www.westga.edu/~stu7440/
7
- * Email   : stu7440@westga.edu
8
- * Object  : PSKModel
9
- * License : No use w/o permission (C) 2003 Mongoose
10
- * Comments: Unreal Tournament skeletal model
11
- *
12
- *
13
- *           This file was generated using Mongoose's C++ 
14
- *           template generator script.  <stu7440@westga.edu>
15
- * 
16
- *-- Test Defines -----------------------------------------------
17
- *           
18
- * UNIT_TEST_PSKMODEL - Builds PSKModel class as a console unit test 
19
- *
20
- *-- History ------------------------------------------------ 
21
- *
22
- * 2003.07.12:
23
- * Mongoose - UT Package prototype code moved into 'UTPackage'
24
- *            API changes to structs to clearify meaning
25
- *
26
- * 2003.06.12:
27
- * Mongoose - PSA keyframes fixed, special thanks to:
28
- *            Steven Fuller and Forest Hale for help picking
29
- *            apart those tough little 8 bytes   =)
30
- *
31
- * 2003.06.11:
32
- * Mongoose - Broke up rendering and model loading into seperate
33
- *            classes ( Closely coupled )
34
- *
35
- *            PSA experimental loader
36
- *
37
- * 2003.06.10:
38
- * Mongoose - Skeletal format fixed, should load perfectly
39
- *
40
- * 2003.01.20:
41
- * Mongoose - Fixed triangle rendering thanks to debugging by
42
- *            Steven Fuller, who found the tris -> UV -> vert 
43
- *            connection
44
- *
45
- *            Finished up basic rendering, lots of 
46
- *            small fixes/features
47
- *
48
- * 2003.01.06:
49
- * Mongoose - Created
50
- ================================================================*/
51
-
52
-
53
-#ifndef GUARD__FREYJA_MONGOOSE_PSKMODEL_H_
54
-#define GUARD__FREYJA_MONGOOSE_PSKMODEL_H_
55
-
56
-
57
-typedef struct /* 13 bytes */
58
-{
59
-	unsigned short x, y, z;
60
-	unsigned char material;
61
-	unsigned int flags;
62
-	unsigned short unknown;
63
-
64
-} psk_face_t;
65
-
66
-
67
-typedef struct /* 16 bytes */
68
-{
69
-	unsigned short vertex;
70
-	unsigned short unknown1;
71
-	float uv[2];
72
-	unsigned int unknown2;
73
-
74
-} psk_vtxw_t;
75
-
76
-
77
-typedef struct  /* 88 bytes */
78
-{
79
-	char name[64];
80
-
81
-	unsigned int unknown1;
82
-	unsigned int unknown2;
83
-	unsigned int unknown3;
84
-	unsigned int unknown4;
85
-	unsigned int unknown5;
86
-	unsigned int unknown6;
87
-
88
-} psk_material_t;
89
-
90
-typedef struct /* 120 bytes */
91
-{
92
-	char name[64];
93
-	unsigned int flags;         /* Option flags? */
94
-	unsigned int numChildren;
95
-	unsigned int parentIndex;
96
-	float restDir[4];           /* Quaternion x,y,z,w */
97
-	float restLoc[3];
98
-	int unknown[4];             /* Scale? */
99
-
100
-} psk_bone_t;
101
-
102
-
103
-typedef struct  /* 12 bytes */
104
-{
105
-	float weight;
106
-	unsigned int vertexIndex;
107
-	unsigned int boneIndex;
108
-
109
-} psk_weight_t;
110
-
111
-
112
-typedef struct /* 168 bytes */
113
-{
114
-	char name[64];
115
-	char name2[64];
116
-	unsigned int numBones;
117
-	unsigned int rootId; // ?
118
-	unsigned int key[2];
119
-	float keyf;
120
-	float time[2];
121
-	float unknown[3];
122
-
123
-} psa_anim_info_t;
124
-
125
-
126
-typedef struct /* 32 bytes */
127
-{
128
-	float trans[3];	// xyz
129
-	float dir[4];		// xyzw
130
-	float scale;		// ?
131
-
132
-} psa_key_frame_t;
133
-
134
-
135
-class PSKModel
136
-{
137
- public:
138
-
139
-	enum PSKModelFlag
140
-	{
141
-		fDebugWeightLoad		= 1,
142
-		fDebugPointLoad		= 2,
143
-		fDebugFaceLoad			= 4,
144
-		fDebugUVLoad			= 8,
145
-		fDebugMattLoad			= 16,
146
-		fDebugBoneLoad			= 32
147
-	};
148
-
149
-
150
-	////////////////////////////////////////////////////////////
151
-	// Constructors
152
-	////////////////////////////////////////////////////////////
153
-
154
-	PSKModel();
155
-	/*------------------------------------------------------
156
-	 * Pre  : 
157
-	 * Post : Constructs an object of PSKModel
158
-	 *
159
-	 *-- History ------------------------------------------
160
-	 *
161
-	 * 2003.01.06: 
162
-	 * Mongoose - Created
163
-	 ------------------------------------------------------*/
164
-
165
-	~PSKModel();
166
-	/*------------------------------------------------------
167
-	 * Pre  : PSKModel object is allocated
168
-	 * Post : Deconstructs an object of PSKModel
169
-	 *
170
-	 *-- History ------------------------------------------
171
-	 *
172
-	 * 2003.01.06: 
173
-	 * Mongoose - Created
174
-	 ------------------------------------------------------*/
175
-
176
-
177
-	////////////////////////////////////////////////////////////
178
-	// Public Accessors
179
-	////////////////////////////////////////////////////////////
180
-
181
-	void printSkeletion(bool printNames);
182
-	/*------------------------------------------------------
183
-	 * Pre  : <PrintNames> if true use names instead of Ids
184
-	 *
185
-	 * Post : Prints skeletion bone trace one bone per line
186
-	 *
187
-	 *-- History ------------------------------------------
188
-	 *
189
-	 * 2003.06.10:
190
-	 * Mongoose - Created
191
-	 ------------------------------------------------------*/
192
-
193
-
194
-	////////////////////////////////////////////////////////////
195
-	// Public Mutators
196
-	////////////////////////////////////////////////////////////
197
-
198
-	int load(char *filename);
199
-	/*------------------------------------------------------
200
-	 * Pre  : 
201
-	 * Post : Loads PSK model from disk
202
-	 *
203
-	 *-- History ------------------------------------------
204
-	 *
205
-	 * 2003.01.06:
206
-	 * Mongoose - Created
207
-	 ------------------------------------------------------*/
208
-
209
-	unsigned int mFlags;
210
-
211
-	unsigned int mNumFrames;
212
-
213
-	unsigned int mNumVertices;
214
-
215
-	unsigned int mNumFaces;
216
-
217
-	unsigned int mNumVTXWs;
218
-
219
-	unsigned int mNumMaterials;
220
-
221
-	unsigned int mNumBones;
222
-
223
-	unsigned int mNumWeights;
224
-
225
-	float *mVertices;							/* Vertices of the model */
226
-
227
-	psk_vtxw_t *mVTXWs;						/* UV Wedges */
228
-
229
-	psk_face_t *mFaces;						/* The triangle mesh */
230
-
231
-	psk_material_t *mMaterials;			/* Materials/textures */
232
-
233
-	psk_bone_t *mBones;						/* The bones of the model */
234
-
235
-	psk_weight_t *mWeights;					/* The weights of the bones */
236
-
237
-
238
- private:
239
-
240
-	////////////////////////////////////////////////////////////
241
-	// Private Accessors
242
-	////////////////////////////////////////////////////////////
243
-
244
-
245
-	////////////////////////////////////////////////////////////
246
-	// Private Mutators
247
-	////////////////////////////////////////////////////////////
248
-};
249
-
250
-
251
-//////////////////////////////////////////////////////////////////////
252
-// PSAAnimation Class
253
-//////////////////////////////////////////////////////////////////////
254
-
255
-class PSAAnimation
256
-{
257
-public:
258
-
259
-	enum PSKModelRendererFlag
260
-	{
261
-		fReserved1			= 1,
262
-		fReserved2			= 2,
263
-		fDebugBones			= 4,
264
-		fDebugAnimInfos	= 8,
265
-		fDebugKeyFrames	= 16
266
-	};
267
-
268
-	////////////////////////////////////////////////////////////
269
-	// Constructors
270
-	////////////////////////////////////////////////////////////
271
-
272
-	PSAAnimation();
273
-	/*------------------------------------------------------
274
-	 * Pre  : 
275
-	 * Post : Constructs an object of PSAAnimation
276
-	 *
277
-	 *-- History ------------------------------------------
278
-	 *
279
-	 * 2003.06.11: 
280
-	 * Mongoose - Created
281
-	 ------------------------------------------------------*/
282
-
283
-	~PSAAnimation();
284
-	/*------------------------------------------------------
285
-	 * Pre  : PSAAnimation object is allocated
286
-	 * Post : Deconstructs an object of PSAAnimation
287
-	 *
288
-	 *-- History ------------------------------------------
289
-	 *
290
-	 * 2003.06.11: 
291
-	 * Mongoose - Created
292
-	 ------------------------------------------------------*/
293
-
294
-
295
-	////////////////////////////////////////////////////////////
296
-	// Public Accessors
297
-	////////////////////////////////////////////////////////////
298
-
299
-	int load(char *filename);
300
-	/*------------------------------------------------------
301
-	 * Pre  : 
302
-	 * Post : Loads PSA animation from disk
303
-	 *
304
-	 *        Returns < 0 on error
305
-	 *
306
-	 *-- History ------------------------------------------
307
-	 *
308
-	 * 2003.01.06:
309
-	 * Mongoose - Created
310
-	 ------------------------------------------------------*/
311
-
312
-
313
-	////////////////////////////////////////////////////////////
314
-	// Public Mutators
315
-	////////////////////////////////////////////////////////////
316
-
317
-	unsigned int mFlags;
318
-
319
-	unsigned int mNumFrames;
320
-
321
-	unsigned int mNumBones;
322
-
323
-	unsigned int mNumAnimInfos;
324
-
325
-	unsigned int mNumKeyFrames;
326
-
327
-	psk_bone_t *mBones;
328
-
329
-	psa_anim_info_t *mAnimInfos;
330
-
331
-	psa_key_frame_t *mKeyFrames;
332
-
333
-
334
-private:
335
-
336
-	////////////////////////////////////////////////////////////
337
-	// Private Accessors
338
-	////////////////////////////////////////////////////////////
339
-
340
-
341
-	////////////////////////////////////////////////////////////
342
-	// Private Mutators
343
-	////////////////////////////////////////////////////////////
344
-
345
-};
346
-
347
-
348
-//////////////////////////////////////////////////////////////////////
349
-// PSKModelRenderer Class
350
-//////////////////////////////////////////////////////////////////////
351
-
352
-class PSKModelRenderer
353
-{
354
- public:
355
-
356
-	enum PSKModelRendererFlag
357
-	{
358
-		fRenderFaces		= 1,
359
-		fRenderTexture		= 2,
360
-		fRenderPoints		= 4,
361
-		fRenderBones 		= 8,
362
-		fConvertEuler 		= 16,
363
-		fDebugFaceRender 	= 32
364
-	};
365
-
366
-
367
-	////////////////////////////////////////////////////////////
368
-	// Constructors
369
-	////////////////////////////////////////////////////////////
370
-
371
-	PSKModelRenderer();
372
-	/*------------------------------------------------------
373
-	 * Pre  : 
374
-	 * Post : Constructs an object of PSKModelRenderer
375
-	 *
376
-	 *-- History ------------------------------------------
377
-	 *
378
-	 * 2003.01.06: 
379
-	 * Mongoose - Created
380
-	 ------------------------------------------------------*/
381
-
382
-	~PSKModelRenderer();
383
-	/*------------------------------------------------------
384
-	 * Pre  : PSKModelRenderer object is allocated
385
-	 * Post : Deconstructs an object of PSKModelRenderer
386
-	 *
387
-	 *-- History ------------------------------------------
388
-	 *
389
-	 * 2003.01.06: 
390
-	 * Mongoose - Created
391
-	 ------------------------------------------------------*/
392
-
393
-
394
-	////////////////////////////////////////////////////////////
395
-	// Public Accessors
396
-	////////////////////////////////////////////////////////////
397
-
398
-	void render();
399
-	/*------------------------------------------------------
400
-	 * Pre  : 
401
-	 * Post : Renders PSK model in OpenGL
402
-	 *
403
-	 *-- History ------------------------------------------
404
-	 *
405
-	 * 2003.01.06:
406
-	 * Mongoose - Created
407
-	 ------------------------------------------------------*/
408
-
409
-	void renderBone(unsigned int id);
410
-	/*------------------------------------------------------
411
-	 * Pre  : 
412
-	 * Post : Renders PSK model's bone in OpenGL, 
413
-	 *        ( Recursive calling )
414
-	 *
415
-	 *-- History ------------------------------------------
416
-	 *
417
-	 * 2003.01.06:
418
-	 * Mongoose - Created, from nonpublic render()
419
-	 ------------------------------------------------------*/
420
-
421
-
422
-	////////////////////////////////////////////////////////////
423
-	// Public Mutators
424
-	////////////////////////////////////////////////////////////
425
-
426
-	void convertBoneAngles();
427
-	/*------------------------------------------------------
428
-	 * Pre  : 
429
-	 * Post : Converts bone angles for rendering use
430
-	 *
431
-	 *-- History ------------------------------------------
432
-	 *
433
-	 * 2003.06.10:
434
-	 * Mongoose - Created
435
-	 ------------------------------------------------------*/
436
-
437
-	void convertBoneAnglesPSA(unsigned int frame);
438
-	/*------------------------------------------------------
439
-	 * Pre  : 
440
-	 * Post : Converts PSA bone angles for rendering use
441
-	 *
442
-	 *-- History ------------------------------------------
443
-	 *
444
-	 * 2003.06.10:
445
-	 * Mongoose - Created
446
-	 ------------------------------------------------------*/
447
-
448
-	void copyVertices();
449
-	/*------------------------------------------------------
450
-	 * Pre  : 
451
-	 * Post : Resets vertices to match PSKModel's default
452
-	 *
453
-	 *-- History ------------------------------------------
454
-	 *
455
-	 * 2003.06.10:
456
-	 * Mongoose - Created
457
-	 ------------------------------------------------------*/
458
-
459
-	void setAnimation(PSAAnimation *anim);
460
-	/*------------------------------------------------------
461
-	 * Pre  : 
462
-	 * Post : Sets PSA animation to render, and sets up cache
463
-	 *
464
-	 *-- History ------------------------------------------
465
-	 *
466
-	 * 2003.06.11:
467
-	 * Mongoose - Created
468
-	 ------------------------------------------------------*/
469
-
470
-	void setModel(PSKModel *model);
471
-	/*------------------------------------------------------
472
-	 * Pre  : 
473
-	 * Post : Sets PSK model to render, and sets up cache
474
-	 *
475
-	 *-- History ------------------------------------------
476
-	 *
477
-	 * 2003.06.10:
478
-	 * Mongoose - Created
479
-	 ------------------------------------------------------*/
480
-
481
-	void setupRestMatrices(unsigned int id);
482
-	/*------------------------------------------------------
483
-	 * Pre  : <Id> the bone to setup matching invert matrix 
484
-	 *
485
-	 * Post : Generates inverted matrices to render deformed
486
-	 *        mesh by recursive call from root bone
487
-	 *
488
-	 *        OpenGL accelerated where avalibable
489
-	 *
490
-	 *-- History ------------------------------------------
491
-	 *
492
-	 * 2003.07.07:
493
-	 * Mongoose - Created, was boneTransforms
494
-	 ------------------------------------------------------*/
495
-
496
-	void setupWorldMatrices(unsigned int id);
497
-	/*------------------------------------------------------
498
-	 * Pre  : <Id> the bone to setup matching transform matrix 
499
-	 *
500
-	 * Post : Generates transform matrices to render deformed
501
-	 *        mesh by recursive call from root bone
502
-	 *
503
-	 *-- History ------------------------------------------
504
-	 *
505
-	 * 2003.06.10:
506
-	 * Mongoose - Created, was boneTransforms
507
-	 ------------------------------------------------------*/
508
-
509
-	void transformVertices();
510
-	/*------------------------------------------------------
511
-	 * Pre  : 
512
-	 * Post : Transforms vertices to deformed mesh for 
513
-	 *        current bone frame
514
-	 *
515
-	 *-- History ------------------------------------------
516
-	 *
517
-	 * 2003.06.10:
518
-	 * Mongoose - Created
519
-	 ------------------------------------------------------*/
520
-
521
-	unsigned int mFlags;
522
-
523
-	int mTextures[8];							/* Texture Ids of loaded materials */
524
-
525
-	unsigned int mAnimationFrame;			/* Used to keep up with animation 
526
-														frame externally, 
527
-													
528
-														And updated	internally
529
-
530
-														Should be moved to 
531
-														private+acessor method
532
-													*/
533
-
534
- private:
535
-
536
-	////////////////////////////////////////////////////////////
537
-	// Private Accessors
538
-	////////////////////////////////////////////////////////////
539
-
540
-
541
-	////////////////////////////////////////////////////////////
542
-	// Private Mutators
543
-	////////////////////////////////////////////////////////////
544
-
545
-	float *mBoneRotationCache;				/* Cache of the computed axis angles */
546
-
547
-	float *mVertexTransformCache;			/* Cache of vertex transforms */
548
-
549
-	float **mInvertedMatrices;          /* Cache of computed inverted 
550
-														bone transform matrices for the
551
-														vertices at rest position */
552
-
553
-	float **mWorldMatrices;
554
-
555
-	unsigned int mNumMatrices;
556
-
557
-
558
-	/* Simulate inheritence here, cheesy waste */
559
-
560
-	unsigned int mNumFrames;
561
-
562
-	unsigned int mNumVertices;
563
-
564
-	unsigned int mNumFaces;
565
-
566
-	unsigned int mNumVTXWs;
567
-
568
-	unsigned int mNumMaterials;
569
-
570
-	unsigned int mNumBones;
571
-
572
-	unsigned int mNumWeights;
573
-
574
-	PSKModel *mModel;							/* Current PSK model to render */
575
-
576
-	PSAAnimation *mAnimation;				/* Current PSA anim to render */
577
-
578
-	psk_vtxw_t *mVTXWs;						/* UV Wedges */
579
-
580
-	psk_face_t *mFaces;						/* The triangle mesh */
581
-
582
-	psk_material_t *mMaterials;			/* Materials/textures */
583
-
584
-	psk_bone_t *mBones;						/* The bones of the model */
585
-
586
-	psk_weight_t *mWeights;					/* The weights of the bones */
587
-};
588
-
589
-#endif

+ 0
- 1253
src/UTPackage.cpp
Filskillnaden har hållits tillbaka eftersom den är för stor
Visa fil


+ 0
- 222
src/UTPackage.h Visa fil

@@ -1,222 +0,0 @@
1
-/* -*- Mode: C++; tab-width: 3; indent-tabs-mode: t; c-basic-offset: 3 -*- */
2
-/*================================================================
3
- * 
4
- * Project : OpenRaider, PSKModel viewer, libhel_modelloader
5
- * Author  : Terry 'Mongoose' Hendrix II
6
- * Website : http://www.westga.edu/~stu7440/
7
- * Email   : stu7440@westga.edu
8
- * Object  : UTPackage
9
- * License : No use w/o permission (C) 2003 Mongoose
10
- * Comments: This class handles UT packages
11
- *
12
- *
13
- *           This file was generated using Mongoose's C++ 
14
- *           template generator script.  <stu7440@westga.edu>
15
- * 
16
- *-- Test Defines -----------------------------------------------
17
- *           
18
- * UNIT_TEST_UTPACKAGE - Builds UTPackage class as a console unit test 
19
- *
20
- *-- History ------------------------------------------------ 
21
- *
22
- * 2003.07.11:
23
- * Mongoose - Created, form old PSKModel prototype
24
- ================================================================*/
25
-
26
-
27
-#ifndef GUARD__OPENRAIDER_MONGOOSE_UTPACKAGE_H_
28
-#define GUARD__OPENRAIDER_MONGOOSE_UTPACKAGE_H_
29
-
30
-typedef struct {
31
-
32
-	unsigned int exportCount;
33
-	unsigned int nameCount;
34
-
35
-} utx_generation_t;
36
-
37
-typedef struct {
38
-
39
-	char *objName;;
40
-	unsigned int objFlags;
41
-
42
-} utx_name_table_t;
43
-
44
-typedef struct {
45
-
46
-	int objClass;
47
-	int objSuper;
48
-	unsigned int package;
49
-	int objName;
50
-	unsigned int objFlags;
51
-	int serialSize;
52
-	int serialOffset;
53
-
54
-} utx_export_table_t;
55
-
56
-typedef struct {
57
-
58
-	int objClass;
59
-	int objSuper;
60
-	unsigned int package;
61
-	int objName;
62
-
63
-} utx_import_table_t;
64
-
65
-typedef struct {
66
-
67
-	unsigned int signature;
68
-	unsigned short version;
69
-	unsigned short version2; // aka mod
70
-	unsigned int flags;
71
-	unsigned int nameCount;
72
-	unsigned int nameOffset;
73
-	unsigned int exportCount;
74
-	unsigned int exportOffset;
75
-	unsigned int importCount;
76
-	unsigned int importOffset;
77
-
78
-	unsigned int heritageCount; // if version < 68
79
-	unsigned int heritageOffset; // if version < 68
80
-
81
-	unsigned int guid[4]; // else if version > 67
82
-	unsigned int generationCount; // else if version > 67
83
-	utx_generation_t *generations; // else if version > 67
84
-
85
-	utx_name_table_t *nameTable;
86
-	utx_export_table_t *exportTable;
87
-	utx_import_table_t *importTable;
88
-	unsigned int *heritageTable; // 16byte IDs stored as 4 u32s
89
-
90
-} utx_header_t;
91
-
92
-
93
-/* Index parser algorithm and defines from 'Unreal file reader' source */
94
-#define INDEX_SIGN_BIT  0x80        // Sign bit on first byte
95
-#define INDEX_CONT1_BIT 0x40        // Continuation bit on first byte
96
-#define INDEX_BYT1_MASK 0x3f        // Data mast on first byte
97
-#define INDEX_CONT_BIT  0x80        // Continuation bit on other bytes
98
-#define INDEX_BYTE_MASK 0x7f        // Data mask on other bytes
99
-
100
-#define UNP_ByteProperty        1
101
-#define UNP_IntProperty         2
102
-#define UNP_BoolProperty        3
103
-#define UNP_FloatProperty       4
104
-#define UNP_ObjectProperty      5
105
-#define UNP_NameProperty        6
106
-#define UNP_StringProperty      7
107
-#define UNP_ClassProperty       8
108
-#define UNP_ArrayProperty       9
109
-#define UNP_StructProperty      10
110
-#define UNP_VectorProperty      11
111
-#define UNP_RotatorProperty     12
112
-#define UNP_StrProperty         13
113
-#define UNP_MapProperty         14
114
-#define UNP_FixedArrayProperty  15
115
-
116
-#define PROPERTY_TYPE_MASK  0x0f
117
-#define PROPERTY_SIZE_MASK  0x70
118
-#define PROPERTY_ARRAY_MASK 0x80
119
-
120
-//////////////////////////////////////////////////////////////////////
121
-// UTPackageProperty Class
122
-//////////////////////////////////////////////////////////////////////
123
-
124
-class UTPackageProperty
125
-{
126
-public:
127
-
128
-	UTPackageProperty();
129
-
130
-	~UTPackageProperty();
131
-
132
-	void clear();
133
-
134
-	int load(utx_header_t *header, FILE *f);
135
-	
136
-
137
-	int index;
138
-
139
-	unsigned int nameIndex;
140
-	
141
-	unsigned int size;
142
-
143
-	unsigned int type;
144
-
145
-	unsigned int flags;
146
-
147
-	unsigned char *data;
148
-};
149
-
150
-
151
-//////////////////////////////////////////////////////////////////////
152
-// UTPackage Class
153
-//////////////////////////////////////////////////////////////////////
154
-
155
-class UTPackage
156
-{
157
- public:
158
-
159
-	enum
160
-	{
161
-		UT_NULL,
162
-		UT_IMPORT,
163
-		UT_EXPORT
164
-		
165
-	} UT_INDEX;
166
-
167
-
168
-	////////////////////////////////////////////////////////////
169
-	// Constructors
170
-	////////////////////////////////////////////////////////////
171
-
172
-	UTPackage();
173
-	/*------------------------------------------------------
174
-	 * Pre  : 
175
-	 * Post : Constructs an object of UTPackage
176
-	 *
177
-	 *-- History ------------------------------------------
178
-	 *
179
-	 * 2003.07.11: 
180
-	 * Mongoose - Created
181
-	 ------------------------------------------------------*/
182
-
183
-	~UTPackage();
184
-	/*------------------------------------------------------
185
-	 * Pre  : UTPackage object is allocated
186
-	 * Post : Deconstructs an object of UTPackage
187
-	 *
188
-	 *-- History ------------------------------------------
189
-	 *
190
-	 * 2003.07.11: 
191
-	 * Mongoose - Created
192
-	 ------------------------------------------------------*/
193
-
194
-
195
-	////////////////////////////////////////////////////////////
196
-	// Public Accessors
197
-	////////////////////////////////////////////////////////////
198
-
199
-
200
-
201
-	////////////////////////////////////////////////////////////
202
-	// Public Mutators
203
-	////////////////////////////////////////////////////////////
204
-
205
-
206
- private:
207
-
208
-	////////////////////////////////////////////////////////////
209
-	// Private Accessors
210
-	////////////////////////////////////////////////////////////
211
-
212
-
213
-	////////////////////////////////////////////////////////////
214
-	// Private Mutators
215
-	////////////////////////////////////////////////////////////
216
-
217
-
218
-	/* */
219
-};
220
-
221
-int load_utx(char *filename, bool hexDump, bool diskDump);
222
-#endif

Laddar…
Avbryt
Spara