Inexor
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
skelmodel::skelmesh Struct Reference

#include <skelmodel.hpp>

Inheritance diagram for skelmodel::skelmesh:
md5::md5mesh smd::smdmesh

Public Member Functions

 skelmesh ()
 
 ~skelmesh () override
 
int addblendcombo (const blendcombo &c)
 
void smoothnorms (float limit=0, bool areaweight=true)
 
void buildnorms (bool areaweight=true)
 
void calctangents (bool areaweight=true)
 
void calcbb (vec &bbmin, vec &bbmax, const matrix4x3 &m) override
 
void genBIH (BIH::mesh &m) override
 
void assignvert (vvertbump &vv, int j, vert &v, blendcombo &c)
 
void assignvert (vvertbumpw &vv, int j, vert &v, blendcombo &c)
 
template<class T >
int genvbo (vector< ushort > &idxs, int offset, vector< T > &vverts)
 
template<class T >
int genvbo (vector< ushort > &idxs, int offset, vector< T > &vverts, int *htdata, int htlen)
 
int genvbo (vector< ushort > &idxs, int offset)
 
template<class T >
void fillverts (T *vdata)
 
void interpverts (const dualquat *RESTRICT bdata1, const dualquat *RESTRICT bdata2, bool tangents, void *RESTRICT vdata, skin &s)
 
void setshader (Shader *s) override
 
void render (const animstate *as, skin &s, vbocacheentry &vc)
 

Static Public Member Functions

static void assignvert (vvertn &vv, int j, vert &v, blendcombo &c)
 
static void assignvert (vvertnw &vv, int j, vert &v, blendcombo &c)
 
template<class T >
static void fillvert (T &vv, int j, vert &v)
 

Public Attributes

vertverts
 
bumpvertbumpverts
 
tritris
 
int numverts
 
int numtris
 
int maxweights
 
int voffset
 
int eoffset
 
int elen
 
ushort minvert
 
ushort maxvert
 

Constructor & Destructor Documentation

skelmodel::skelmesh::skelmesh ( )
inline
skelmodel::skelmesh::~skelmesh ( )
inlineoverride

References bumpverts, DELETEA, tris, and verts.

Member Function Documentation

int skelmodel::skelmesh::addblendcombo ( const blendcombo c)
inline
static void skelmodel::skelmesh::assignvert ( vvertn vv,
int  j,
vert v,
blendcombo c 
)
inlinestatic
void skelmodel::skelmesh::assignvert ( vvertbump vv,
int  j,
vert v,
blendcombo c 
)
inline
static void skelmodel::skelmesh::assignvert ( vvertnw vv,
int  j,
vert v,
blendcombo c 
)
inlinestatic
void skelmodel::skelmesh::assignvert ( vvertbumpw vv,
int  j,
vert v,
blendcombo c 
)
inline
void skelmodel::skelmesh::buildnorms ( bool  areaweight = true)
inline
void skelmodel::skelmesh::calcbb ( vec bbmin,
vec bbmax,
const matrix4x3 m 
)
inlineoverride
void skelmodel::skelmesh::calctangents ( bool  areaweight = true)
inline
template<class T >
static void skelmodel::skelmesh::fillvert ( T &  vv,
int  j,
vert v 
)
inlinestatic

References skelmodel::vert::tc.

Referenced by fillverts().

template<class T >
void skelmodel::skelmesh::fillverts ( T *  vdata)
inline

References fillvert(), loopi(), numverts, verts, and voffset.

void skelmodel::skelmesh::genBIH ( BIH::mesh m)
inlineoverride
template<class T >
int skelmodel::skelmesh::genvbo ( vector< ushort > &  idxs,
int  offset,
vector< T > &  vverts 
)
inline
template<class T >
int skelmodel::skelmesh::genvbo ( vector< ushort > &  idxs,
int  offset,
vector< T > &  vverts,
int *  htdata,
int  htlen 
)
inline
int skelmodel::skelmesh::genvbo ( vector< ushort > &  idxs,
int  offset 
)
inline
void skelmodel::skelmesh::interpverts ( const dualquat *RESTRICT  bdata1,
const dualquat *RESTRICT  bdata2,
bool  tangents,
void *RESTRICT  vdata,
skin s 
)
inline
void skelmodel::skelmesh::render ( const animstate as,
skin s,
vbocacheentry vc 
)
inline
void skelmodel::skelmesh::setshader ( Shader s)
inlineoverride
void skelmodel::skelmesh::smoothnorms ( float  limit = 0,
bool  areaweight = true 
)
inline

Member Data Documentation

bumpvert* skelmodel::skelmesh::bumpverts
int skelmodel::skelmesh::elen

Referenced by genvbo(), and render().

int skelmodel::skelmesh::eoffset

Referenced by genvbo(), and render().

ushort skelmodel::skelmesh::maxvert

Referenced by genvbo(), and render().

int skelmodel::skelmesh::maxweights

Referenced by addblendcombo(), and setshader().

ushort skelmodel::skelmesh::minvert

Referenced by genvbo(), and render().

int skelmodel::skelmesh::numtris
int skelmodel::skelmesh::numverts
tri* skelmodel::skelmesh::tris
vert* skelmodel::skelmesh::verts
int skelmodel::skelmesh::voffset

The documentation for this struct was generated from the following file: