Data Structures | |
| struct | edgeface_s |
Macros | |
| #define | EDGEFACE_CHUNK 4096 |
| #define | NUM_HASH 4096 |
| #define | POINT_EPSILON 0.01 |
Typedefs | |
| typedef struct edgeface_s | edgeface_t |
| typedef struct hashvert_s | hashvert_t |
Functions | |
| face_t * | AllocFace (void) |
| Allocate a new face. More... | |
| surface_t * | AllocSurface (void) |
| Allocate a new surface. More... | |
| void | FreeFace (face_t *f) |
| Free a face. More... | |
| void | FreeSurface (surface_t *s) |
| Free a surface. More... | |
| struct surface_s * | GatherNodeFaces (struct node_s *headnode) |
| Free the current node tree and return a new chain of the surfaces that have inside faces. More... | |
| void | MakeFaceEdges (struct node_s *headnode) |
| Give edges to all the faces in the bsp tree. More... | |
| void | SubdivideFace (struct visfacet_s *f, struct visfacet_s **prevptr) |
| Split any faces that are too big. More... | |
| #define EDGEFACE_CHUNK 4096 |
| #define NUM_HASH 4096 |
| #define POINT_EPSILON 0.01 |
| typedef struct edgeface_s edgeface_t |
| typedef struct hashvert_s hashvert_t |
| face_t * AllocFace | ( | void | ) |
Allocate a new face.
Increases c_activefaces by one.
| surface_t * AllocSurface | ( | void | ) |
Allocate a new surface.
Increases c_activesurfaces by one.
| void FreeFace | ( | face_t * | f | ) |
Free a face.
Only the first face will be freed. If the face is linked to another face, that face will have to be freed seperately.
Reduces c_activefaces by one.
| f | The face to free. |
| void FreeSurface | ( | surface_t * | s | ) |
Free a surface.
Only the first surface will be freed. If the surface is linked to another surface, that surface will have to be freed seperately.
Reduces c_activefaces by one.
| s | The face to free. |
Free the current node tree and return a new chain of the surfaces that have inside faces.
| void MakeFaceEdges | ( | struct node_s * | headnode | ) |
Give edges to all the faces in the bsp tree.
| headnode | The root of the bsp tree. |
| void SubdivideFace | ( | struct visfacet_s * | f, |
| struct visfacet_s ** | prevptr | ||
| ) |
Split any faces that are too big.
If the face is > options.subdivide_size in either texture direction, carve off a valid sized piece and insert the remainder in the next link.
| f | The face to subdivide. |
| prevptr | The address of the pointer to this face. For nice linked list manipulation. |
| int c_activefaces |
| int c_activesurfaces |
| int c_cornerverts |
| int c_cornerverts |
| int c_peakfaces |
| int c_peaksurfaces |
| int c_tryedges |
| int c_tryedges |
| edgeface_t* edgefaces |
| edgeface_t* edgefaces = 0 |
| int firstmodeledge |
| int firstmodeledge = 1 |
| int firstmodelface |
| int firstmodelface |
| hashvert_t* hashverts[NUM_HASH] |
| hashvert_t* hvert_p |
| hashvert_t hvertex[MAX_MAP_VERTS] |
| surface_t newcopy_t |
| int numedgefaces = 0 |
| int subdivides |