44 lines
1.6 KiB
C
44 lines
1.6 KiB
C
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//
|
|
//=============================================================================//
|
|
//-----------------------------------------------------------------------------
|
|
// FILE: TRISTRIP.H
|
|
//
|
|
// Desc: tristrip header file
|
|
//
|
|
// Copyright (c) 1999-2000 Microsoft Corporation. All rights reserved.
|
|
//-----------------------------------------------------------------------------
|
|
|
|
typedef unsigned short WORD;
|
|
|
|
//
|
|
// Main Stripify routine. Returns number of strip indices contained
|
|
// in ppstripindices. Caller must delete [] ppstripindices.
|
|
//
|
|
int Stripify(
|
|
int numtris, // Number of triangles
|
|
WORD *ptriangles, // triangle indices pointer
|
|
int *pnumindices, // number of indices in ppstripindices (out)
|
|
WORD **ppstripindices // triangle strip indices
|
|
);
|
|
|
|
//
|
|
// Re-arrange vertices so that they occur in the order that they are first
|
|
// used. This function doesn't actually move vertex data around, it returns
|
|
// an array that specifies where in the new vertex array each old vertex
|
|
// should go. It also re-maps the strip indices to use the new vertex
|
|
// locations. Caller must delete [] pVertexPermutation.
|
|
//
|
|
void ComputeVertexPermutation
|
|
(
|
|
int numstripindices, // Number of strip indices
|
|
WORD *pstripindices, // Strip indices
|
|
int *pnumverts, // Number of verts (in and out)
|
|
WORD **ppvertexpermutation // Map from orignal index to remapped index
|
|
);
|
|
|