hwMesh - create a 2-dimensional mesh of vertices, to be drawn as a sequence of triangle strips
GraphN | 1I | Number of rows in the data mesh |
GraphM | 1I | Number of columns in the data mesh |
OptFlags | 1I | Optimization flags; see hw for details |
Data | *F | The data mesh |
Resolution | 1F | Tessellation multiplier |
GraphN | 0 |
GraphM | 0 |
OptFlags | hwDefaultOptFlags |
Data | NULL |
Resolution | 1.0 |
The hwMesh class takes a mesh of vertices and displays them as a series of triangle strips. The GraphN parameter describes the number of rows in the mesh. The GraphM parameter describes the number of columns in the mesh. The Data pointer is an array of hwFloat values; the number of values should be equal to GraphN*GraphM*FPV, where FPV is the number of hwFloats present per vertex as described by hwVertex.3.
/* Draw a two-sided square using the hwMesh primitive */ hwObject mesh; hwFloat data[] = { 0,0,0, 1,0,0, 0,1,0, 1,1,0 }; mesh = hwMesh->create( hwMesh ); mesh->modify( mesh, hwStrData, HW_MAKE_TYPE(HW_TYPE_FLOAT,3*2*2), data ); HW_MODIFY_1I( mesh, hwStrGraphN, 2 ); HW_MODIFY_1I( mesh, hwStrGraphM, 2 ); HW_MODIFY_1B( mesh, hwStrTwoSided, HW_TRUE ); mesh->draw( mesh ); mesh->destroy( mesh );
# A two-sided square using an hwMesh hwMesh mesh { GraphN = 2; GraphM = 2 TwoSided = True Data = {0,0,0, 1,0,0, 0,1,0, 1,1,0} }