]> de.git.xonotic.org Git - xonotic/netradiant.git/blob - tools/quake3/q3data/oldstuff.c
eol style
[xonotic/netradiant.git] / tools / quake3 / q3data / oldstuff.c
1 #if 0
2
3 /*
4 ** ReindexTriangle
5 **
6 ** Given a triangle_t, find which indices match into the associated
7 ** surface's base triangles.
8 */
9 static void ReindexTriangle( int surfno, triangle_t *pTri, int indices[3] )
10 {
11         int t, i;
12         md3SurfaceData_t *pSurfData = &g_data.surfData[surfno];
13         int matches[3][3];
14         int numMatches = 0;
15                 
16
17         indices[0] = -1;
18         indices[1] = -1;
19         indices[2] = -1;
20
21         for ( i = 0; i < 3; i++ )
22         {
23                 numMatches = 0;
24
25                 matches[i][0] = -1;
26                 matches[i][1] = -1;
27                 matches[i][2] = -1;
28
29                 for ( t = 0; t < pSurfData->header.numVerts; t++ )
30                 {
31                         if ( !VectorCompare( pTri->verts[i], pSurfData->baseVertexes[t].xyz ) )
32                                 continue;
33
34 /*                               
35                         if ( !VectorCompare( pTri->normals[i], pSurfData->baseVertexes[t].normal ) )
36                                 continue;
37                         if ( pTri->texcoords[i][0] != pSurfData->baseVertexes[t].st[0] )
38                                 continue;
39                         if ( pTri->texcoords[i][1] != pSurfData->baseVertexes[t].st[1] ) 
40                                 continue;
41 */
42
43                         matches[i][numMatches++] = t;
44                 }
45
46                 if ( indices[i] == -1 )
47                 {
48 //                      Error( "Could not ReindexTriangle, vertex not found" );
49                 }
50         }
51
52 #if 0
53                 for ( t = 0; t < psets[i].numtriangles; t++ )
54                 {
55                         int b;
56
57                         bTri = &g_data.surfData[i].baseTriangles[t];
58
59                         for (j=0 ; j<3 ; j++)
60                         {
61                                 bVert = &bTri->v[j];
62
63                                 // get the xyz index
64                                 for ( k = 0; k < g_data.surfData[i].header.numVerts; k++ )
65                                 {
66                                         if ( ( g_data.surfData[i].baseVertexes[k].st[0] == bVert->st[0] ) &&
67                                                  ( g_data.surfData[i].baseVertexes[k].st[1] == bVert->st[1] ) &&
68                                                  ( VectorCompare (bVert->xyz, g_data.surfData[i].baseVertexes[k].xyz) ) &&
69                                                  ( VectorCompare (bVert->normal, g_data.surfData[i].baseVertexes[k].normal) ) )
70                                         {
71                                                 break;  // this vertex is already in the base vertex list
72                                         }
73                                 }
74
75                                 if (k == g_data.surfData[i].header.numVerts)    { // new index
76                                         g_data.surfData[i].baseVertexes[g_data.surfData[i].header.numVerts] = *bVert;
77                                         g_data.surfData[i].header.numVerts++;
78                                 }
79
80                                 bVert->index = k;
81                         }
82                 }
83 #endif
84 }
85
86 const char      *FindFrameFile (const char *frame)
87 {
88         int                     time1;
89         char    file1[1024];
90         static char     retname[1024];
91         char    base[32];
92         char    suffix[32];
93         const char      *s;
94
95         if (strstr (frame, "."))
96                 return frame;           // allready in dot format
97
98         // split 'run1' into 'run' and '1'
99         s = frame + strlen(frame)-1;
100
101         while (s != frame && *s >= '0' && *s <= '9')
102                 s--;
103
104         strcpy (suffix, s+1);
105         strcpy (base, frame);
106         base[s-frame+1] = 0;
107
108         // check for 'run1.tri'
109         sprintf (file1, "%s/%s%s.tri", g_cddir, base, suffix);
110         time1 = FileTime (file1);
111         if (time1 != -1)
112         {
113                 sprintf (retname, "%s%s.tri", base, suffix);
114                 return retname;
115         }
116
117         // check for 'run.1'
118         sprintf (file1, "%s/%s.%s",g_cddir, base, suffix);
119         time1 = FileTime (file1);
120         if (time1 != -1)
121         {
122                 sprintf (retname, "%s.%s", base, suffix);
123                 return retname;
124         }
125
126         Error ("frame %s could not be found",frame);
127         return NULL;
128 }
129
130 #endif