X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=tools%2Fquake2%2Fq2map%2Fglfile.c;h=731ca685aa9f288c704e34ca6649ba658a636c49;hb=830125fad042fad35dc029b6eb57c8156ad7e176;hp=b08053bd12ac2d752e6d5145272ae29075c9ac40;hpb=99980506540d9546dad31223a6eadf126ba68121;p=xonotic%2Fnetradiant.git diff --git a/tools/quake2/q2map/glfile.c b/tools/quake2/q2map/glfile.c index b08053bd..731ca685 100644 --- a/tools/quake2/q2map/glfile.c +++ b/tools/quake2/q2map/glfile.c @@ -1,148 +1,149 @@ /* -Copyright (C) 1999-2007 id Software, Inc. and contributors. -For a list of contributors, see the accompanying CONTRIBUTORS file. + Copyright (C) 1999-2007 id Software, Inc. and contributors. + For a list of contributors, see the accompanying CONTRIBUTORS file. -This file is part of GtkRadiant. + 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 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. + 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 -*/ + 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 + */ #include "qbsp.h" -int c_glfaces; +int c_glfaces; -int PortalVisibleSides (portal_t *p) -{ - int fcon, bcon; +int PortalVisibleSides( portal_t *p ){ + int fcon, bcon; - if (!p->onnode) - return 0; // outside + if ( !p->onnode ) { + return 0; // outside + } fcon = p->nodes[0]->contents; bcon = p->nodes[1]->contents; // same contents never create a face - if (fcon == bcon) + if ( fcon == bcon ) { return 0; + } // FIXME: is this correct now? - if (!fcon) + if ( !fcon ) { return 1; - if (!bcon) + } + if ( !bcon ) { return 2; + } return 0; } -void OutputWinding (winding_t *w, FILE *glview) -{ - static int level = 128; - vec_t light; - int i; +void OutputWinding( winding_t *w, FILE *glview ){ + static int level = 128; + vec_t light; + int i; - fprintf (glview, "%i\n", w->numpoints); - level+=28; - light = (level&255)/255.0; - for (i=0 ; inumpoints ; i++) + fprintf( glview, "%i\n", w->numpoints ); + level += 28; + light = ( level & 255 ) / 255.0; + for ( i = 0 ; i < w->numpoints ; i++ ) { - fprintf (glview, "%6.3f %6.3f %6.3f %6.3f %6.3f %6.3f\n", - w->p[i][0], - w->p[i][1], - w->p[i][2], - light, - light, - light); + fprintf( glview, "%6.3f %6.3f %6.3f %6.3f %6.3f %6.3f\n", + w->p[i][0], + w->p[i][1], + w->p[i][2], + light, + light, + light ); } - fprintf (glview, "\n"); + fprintf( glview, "\n" ); } /* -============= -OutputPortal -============= -*/ -void OutputPortal (portal_t *p, FILE *glview) -{ - winding_t *w; - int sides; - - sides = PortalVisibleSides (p); - if (!sides) + ============= + OutputPortal + ============= + */ +void OutputPortal( portal_t *p, FILE *glview ){ + winding_t *w; + int sides; + + sides = PortalVisibleSides( p ); + if ( !sides ) { return; + } c_glfaces++; w = p->winding; - if (sides == 2) // back side - w = ReverseWinding (w); + if ( sides == 2 ) { // back side + w = ReverseWinding( w ); + } - OutputWinding (w, glview); + OutputWinding( w, glview ); - if (sides == 2) - FreeWinding(w); + if ( sides == 2 ) { + FreeWinding( w ); + } } /* -============= -WriteGLView_r -============= -*/ -void WriteGLView_r (node_t *node, FILE *glview) -{ - portal_t *p, *nextp; - - if (node->planenum != PLANENUM_LEAF) - { - WriteGLView_r (node->children[0], glview); - WriteGLView_r (node->children[1], glview); + ============= + WriteGLView_r + ============= + */ +void WriteGLView_r( node_t *node, FILE *glview ){ + portal_t *p, *nextp; + + if ( node->planenum != PLANENUM_LEAF ) { + WriteGLView_r( node->children[0], glview ); + WriteGLView_r( node->children[1], glview ); return; } // write all the portals - for (p=node->portals ; p ; p=nextp) + for ( p = node->portals ; p ; p = nextp ) { - if (p->nodes[0] == node) - { - OutputPortal (p, glview); + if ( p->nodes[0] == node ) { + OutputPortal( p, glview ); nextp = p->next[0]; } - else + else{ nextp = p->next[1]; + } } } /* -============= -WriteGLView -============= -*/ -void WriteGLView (tree_t *tree, char *source) -{ - char name[1024]; - FILE *glview; + ============= + WriteGLView + ============= + */ +void WriteGLView( tree_t *tree, char *source ){ + char name[1024]; + FILE *glview; c_glfaces = 0; - sprintf (name, "%s%s.gl",outbase, source); - Sys_Printf ("Writing %s\n", name); + sprintf( name, "%s%s.gl",outbase, source ); + Sys_Printf( "Writing %s\n", name ); - glview = fopen (name, "w"); - if (!glview) - Error ("Couldn't open %s", name); - WriteGLView_r (tree->headnode, glview); - fclose (glview); + glview = fopen( name, "w" ); + if ( !glview ) { + Error( "Couldn't open %s", name ); + } + WriteGLView_r( tree->headnode, glview ); + fclose( glview ); - Sys_Printf ("%5i c_glfaces\n", c_glfaces); + Sys_Printf( "%5i c_glfaces\n", c_glfaces ); } -