-typedef struct\r
-{\r
- float x, y, z;\r
-} _3DSPoint_t;\r
-\r
-typedef struct\r
-{\r
- short a, b, c;\r
- short flags;\r
-} _3DSFace_t;\r
-\r
-typedef struct\r
-{\r
- float s, t;\r
-} _3DSTexVert_t;\r
-\r
-typedef struct\r
-{\r
- char name[100];\r
- short numFaces;\r
- short *pFaces;\r
-} _3DSMeshMaterialGroup_t;\r
-\r
-typedef struct\r
-{\r
- char name[80];\r
-\r
- char texture[100];\r
- char specular[100];\r
- char reflection[100];\r
- char bump[100];\r
- char opacity[100];\r
-} _3DSMaterial_t;\r
-\r
-typedef struct\r
-{\r
- short numFaces, numPoints, numTexVerts;\r
- int numMeshMaterialGroups;\r
-\r
- _3DSPoint_t *pPoints;\r
- _3DSFace_t *pFaces;\r
- _3DSTexVert_t *pTexVerts;\r
-\r
- _3DSMeshMaterialGroup_t *pMeshMaterialGroups;\r
-} _3DSTriObject_t;\r
-\r
-typedef struct\r
-{\r
- char name[100];\r
-\r
- int numTriObjects;\r
- _3DSTriObject_t *pTriObjects;\r
-} _3DSNamedObject_t;\r
-\r
-typedef struct\r
-{\r
- int numNamedObjects;\r
- int numMaterials;\r
-\r
- _3DSNamedObject_t *pNamedObjects;\r
- _3DSMaterial_t *pMaterials;\r
-\r
-} _3DSEditChunk_t;\r
-\r
-typedef struct\r
-{\r
- _3DSEditChunk_t editChunk;\r
-} _3DS_t;\r
-\r
-#define _3DS_CHUNK_NULL 0x0000\r
-#define _3DS_CHUNK_UNKNOWN0 0x0001\r
-#define _3DS_CHUNK_M3D_VERSION 0x0002\r
-#define _3DS_CHUNK_M3D_KFVERSION 0x0005\r
-#define _3DS_CHUNK_COLOR_F 0x0010\r
-#define _3DS_CHUNK_COLOR_24 0x0011\r
-#define _3DS_CHUNK_LIN_COLOR_24 0x0012\r
-#define _3DS_CHUNK_LIN_COLOR_F 0x0013\r
-#define _3DS_CHUNK_INT_PERCENTAGE 0x0030\r
-#define _3DS_CHUNK_FLOAT_PERCENT 0x0031\r
-#define _3DS_CHUNK_MASTER_SCALE 0x0100\r
-#define _3DS_CHUNK_CHUNK_TYPE 0x0995\r
-#define _3DS_CHUNK_CHUNK_UNIQUE 0x0996\r
-#define _3DS_CHUNK_NOT_CHUNK 0x0997\r
-#define _3DS_CHUNK_CONTAINER 0x0998\r
-#define _3DS_CHUNK_IS_CHUNK 0x0999\r
-#define _3DS_CHUNK_C_SXP_SELFI_MASKDATA 0x0c3c\r
-\r
-#define _3DS_CHUNK_BITMAP 0x1100\r
-#define _3DS_CHUNK_USE_BITMAP 0x1101\r
-#define _3DS_CHUNK_SOLID_BGND 0x1200\r
-#define _3DS_CHUNK_USE_SOLID_BGND 0x1201\r
-\r
-#define _3DS_CHUNK_EDIT 0x3d3d\r
-#define _3DS_CHUNK_MESH_VERSION 0x3d3e\r
-\r
-#define _3DS_CHUNK_NAMED_OBJECT 0x4000\r
-#define _3DS_CHUNK_NAMED_TRI_OBJECT 0x4100\r
-#define _3DS_CHUNK_POINT_ARRAY 0x4110\r
-#define _3DS_CHUNK_POINT_FLAG_ARRAY 0x4111\r
-#define _3DS_CHUNK_FACE_ARRAY 0x4120\r
-#define _3DS_CHUNK_MSH_MAT_GROUP 0x4130\r
-#define _3DS_CHUNK_TEX_VERTS 0x4140\r
-#define _3DS_CHUNK_SMOOTH_GROUP 0x4150\r
-#define _3DS_CHUNK_MESH_MATRIX 0x4160\r
-#define _3DS_CHUNK_MAGIC 0x4d4d\r
-\r
-#define _3DS_CHUNK_MAT_NAME 0xa000\r
-#define _3DS_CHUNK_TEXMAP 0xa200\r
-#define _3DS_CHUNK_SPECMAP 0xa204\r
-#define _3DS_CHUNK_OPACMAP 0xa210\r
-#define _3DS_CHUNK_REFLMAP 0xa220\r
-#define _3DS_CHUNK_BUMPMAP 0xa230\r
-#define _3DS_CHUNK_MAT_MAPNAME 0xa300\r
-#define _3DS_CHUNK_MAT_LIST 0xafff\r
-\r
-#define _3DS_CHUNK_KEYFRAME_DATA 0xb000\r
-\r
-void _3DS_LoadPolysets( const char *filename, polyset_t **ppPSET, int *numpsets, qboolean verbose );\r
+/*
+ Copyright (C) 1999-2006 Id Software, Inc. and contributors.
+ For a list of contributors, see the accompanying CONTRIBUTORS file.
+
+ This file is part of GtkRadiant.
+
+ GtkRadiant is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ GtkRadiant is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GtkRadiant; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+typedef struct
+{
+ float x, y, z;
+} _3DSPoint_t;
+
+typedef struct
+{
+ short a, b, c;
+ short flags;
+} _3DSFace_t;
+
+typedef struct
+{
+ float s, t;
+} _3DSTexVert_t;
+
+typedef struct
+{
+ char name[100];
+ short numFaces;
+ short *pFaces;
+} _3DSMeshMaterialGroup_t;
+
+typedef struct
+{
+ char name[80];
+
+ char texture[100];
+ char specular[100];
+ char reflection[100];
+ char bump[100];
+ char opacity[100];
+} _3DSMaterial_t;
+
+typedef struct
+{
+ short numFaces, numPoints, numTexVerts;
+ int numMeshMaterialGroups;
+
+ _3DSPoint_t *pPoints;
+ _3DSFace_t *pFaces;
+ _3DSTexVert_t *pTexVerts;
+
+ _3DSMeshMaterialGroup_t *pMeshMaterialGroups;
+} _3DSTriObject_t;
+
+typedef struct
+{
+ char name[100];
+
+ int numTriObjects;
+ _3DSTriObject_t *pTriObjects;
+} _3DSNamedObject_t;
+
+typedef struct
+{
+ int numNamedObjects;
+ int numMaterials;
+
+ _3DSNamedObject_t *pNamedObjects;
+ _3DSMaterial_t *pMaterials;
+
+} _3DSEditChunk_t;
+
+typedef struct
+{
+ _3DSEditChunk_t editChunk;
+} _3DS_t;
+
+#define _3DS_CHUNK_NULL 0x0000
+#define _3DS_CHUNK_UNKNOWN0 0x0001
+#define _3DS_CHUNK_M3D_VERSION 0x0002
+#define _3DS_CHUNK_M3D_KFVERSION 0x0005
+#define _3DS_CHUNK_COLOR_F 0x0010
+#define _3DS_CHUNK_COLOR_24 0x0011
+#define _3DS_CHUNK_LIN_COLOR_24 0x0012
+#define _3DS_CHUNK_LIN_COLOR_F 0x0013
+#define _3DS_CHUNK_INT_PERCENTAGE 0x0030
+#define _3DS_CHUNK_FLOAT_PERCENT 0x0031
+#define _3DS_CHUNK_MASTER_SCALE 0x0100
+#define _3DS_CHUNK_CHUNK_TYPE 0x0995
+#define _3DS_CHUNK_CHUNK_UNIQUE 0x0996
+#define _3DS_CHUNK_NOT_CHUNK 0x0997
+#define _3DS_CHUNK_CONTAINER 0x0998
+#define _3DS_CHUNK_IS_CHUNK 0x0999
+#define _3DS_CHUNK_C_SXP_SELFI_MASKDATA 0x0c3c
+
+#define _3DS_CHUNK_BITMAP 0x1100
+#define _3DS_CHUNK_USE_BITMAP 0x1101
+#define _3DS_CHUNK_SOLID_BGND 0x1200
+#define _3DS_CHUNK_USE_SOLID_BGND 0x1201
+
+#define _3DS_CHUNK_EDIT 0x3d3d
+#define _3DS_CHUNK_MESH_VERSION 0x3d3e
+
+#define _3DS_CHUNK_NAMED_OBJECT 0x4000
+#define _3DS_CHUNK_NAMED_TRI_OBJECT 0x4100
+#define _3DS_CHUNK_POINT_ARRAY 0x4110
+#define _3DS_CHUNK_POINT_FLAG_ARRAY 0x4111
+#define _3DS_CHUNK_FACE_ARRAY 0x4120
+#define _3DS_CHUNK_MSH_MAT_GROUP 0x4130
+#define _3DS_CHUNK_TEX_VERTS 0x4140
+#define _3DS_CHUNK_SMOOTH_GROUP 0x4150
+#define _3DS_CHUNK_MESH_MATRIX 0x4160
+#define _3DS_CHUNK_MAGIC 0x4d4d
+
+#define _3DS_CHUNK_MAT_NAME 0xa000
+#define _3DS_CHUNK_TEXMAP 0xa200
+#define _3DS_CHUNK_SPECMAP 0xa204
+#define _3DS_CHUNK_OPACMAP 0xa210
+#define _3DS_CHUNK_REFLMAP 0xa220
+#define _3DS_CHUNK_BUMPMAP 0xa230
+#define _3DS_CHUNK_MAT_MAPNAME 0xa300
+#define _3DS_CHUNK_MAT_LIST 0xafff
+
+#define _3DS_CHUNK_KEYFRAME_DATA 0xb000
+
+void _3DS_LoadPolysets( const char *filename, polyset_t **ppPSET, int *numpsets, qboolean verbose );