29 #ifndef __SURFACE_PATCH_H__
30 #define __SURFACE_PATCH_H__
48 void SetSize(
int patchWidth,
int patchHeight );
53 void Subdivide(
float maxHorizontalError,
float maxVerticalError,
float maxLength,
bool genNormals =
false );
55 void SubdivideExplicit(
int horzSubdivisions,
int vertSubdivisions,
bool genNormals,
bool removeLinear =
false );
idList< idDrawVert > verts
void ResizeExpanded(int height, int width)
void SetNum(int newnum, bool resize=true)
void LerpVert(const idDrawVert &a, const idDrawVert &b, idDrawVert &out) const
void SubdivideExplicit(int horzSubdivisions, int vertSubdivisions, bool genNormals, bool removeLinear=false)
int GetHeight(void) const
void Subdivide(float maxHorizontalError, float maxVerticalError, float maxLength, bool genNormals=false)
void GenerateIndexes(void)
void GenerateNormals(void)
void RemoveLinearColumnsRows(void)
GLubyte GLubyte GLubyte a
GLenum GLsizei GLsizei height
void ProjectPointOntoVector(const idVec3 &point, const idVec3 &vStart, const idVec3 &vEnd, idVec3 &vProj)
void SampleSinglePatchPoint(const idDrawVert ctrl[3][3], float u, float v, idDrawVert *out) const
void SetSize(int patchWidth, int patchHeight)
void SampleSinglePatch(const idDrawVert ctrl[3][3], int baseCol, int baseRow, int width, int horzSub, int vertSub, idDrawVert *outVerts) const