Public Member Functions | Public Attributes

TriStrip Class Reference

Search for all occurrences

#include <ihardwareshader.h>

Inheritance diagram for TriStrip:
Inheritance graph
[legend]

List of all members.

Public Member Functions

void  AddVertN (DWORD vtx, DWORD nor)
void  AddVertNC1 (DWORD vtx, DWORD nor, DWORD col)
void  AddVertNT1 (DWORD vtx, DWORD nor, DWORD tvtx)
void  AddVertNC1T1 (DWORD vtx, DWORD nor, DWORD col, DWORD tvtx)
void  AddVertNT2 (DWORD vtx, DWORD nor, DWORD tvtx1, DWORD tvtx2)
void  AddVertNC1T2 (DWORD vtx, DWORD nor, DWORD col, DWORD tvtx1, DWORD tvtx2)
void  AddVertNT3 (DWORD vtx, DWORD nor, DWORD tvtx1, DWORD tvtx2, DWORD tvtx3)
void  AddVertNC1T3 (DWORD vtx, DWORD nor, DWORD col, DWORD tvtx1, DWORD tvtx2, DWORD tvtx3)
void  AddVertNT4 (DWORD vtx, DWORD nor, DWORD tvtx1, DWORD tvtx2, DWORD tvtx3, DWORD tvtx4)
void  AddVertNC1T4 (DWORD vtx, DWORD nor, DWORD col, DWORD tvtx1, DWORD tvtx2, DWORD tvtx3, DWORD tvtx4)
void  AddVertexCol (int i, DWORD col)
void  AddVertexUV (int i, DWORD tx)

Public Attributes

DWORD  rndMode
MtlID  mID
MtlID  maxID
DWORD  smGrp
int  clrMode
int  texMode
DWTab  v
DWTab  n
DWTab  c [GFX_MAX_COLORS]
DWTab  tv [GFX_MAX_TEXTURES]

Member Function Documentation

void AddVertN ( DWORD  vtx,
DWORD  nor 
) [inline]
{ v.Append(1, &vtx, (v.Count()>>1)); n.Append(1, &nor, n.Count()/2); }
void AddVertNC1 ( DWORD  vtx,
DWORD  nor,
DWORD  col 
) [inline]
{ v.Append(1, &vtx, (v.Count()>>1)); n.Append(1, &nor, n.Count()/2); c[0].Append(1, &col, c[0].Count()/2); }
void AddVertNT1 ( DWORD  vtx,
DWORD  nor,
DWORD  tvtx 
) [inline]
                                                      {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc);
        tv[0].Append(1, &tvtx, alloc);
    }
void AddVertNC1T1 ( DWORD  vtx,
DWORD  nor,
DWORD  col,
DWORD  tvtx 
) [inline]
                                                                   {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc); c[0].Append(1, &col, alloc);
        tv[0].Append(1, &tvtx, alloc);
    }
void AddVertNT2 ( DWORD  vtx,
DWORD  nor,
DWORD  tvtx1,
DWORD  tvtx2 
) [inline]
                                                                    {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc);
        tv[0].Append(1, &tvtx1, alloc); tv[1].Append(1, &tvtx2, alloc);
    }
void AddVertNC1T2 ( DWORD  vtx,
DWORD  nor,
DWORD  col,
DWORD  tvtx1,
DWORD  tvtx2 
) [inline]
                                                                                 {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc); c[0].Append(1, &col, alloc);
        tv[0].Append(1, &tvtx1, alloc); tv[1].Append(1, &tvtx2, alloc);
    }
void AddVertNT3 ( DWORD  vtx,
DWORD  nor,
DWORD  tvtx1,
DWORD  tvtx2,
DWORD  tvtx3 
) [inline]
                                                                                 {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc);
        tv[0].Append(1, &tvtx1, alloc); tv[1].Append(1, &tvtx2, alloc); tv[2].Append(1, &tvtx3, alloc);
    }
void AddVertNC1T3 ( DWORD  vtx,
DWORD  nor,
DWORD  col,
DWORD  tvtx1,
DWORD  tvtx2,
DWORD  tvtx3 
) [inline]
                                                                                              {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc); c[0].Append(1, &col, alloc);
        tv[0].Append(1, &tvtx1, alloc); tv[1].Append(1, &tvtx2, alloc); tv[2].Append(1, &tvtx3, alloc);
    }
void AddVertNT4 ( DWORD  vtx,
DWORD  nor,
DWORD  tvtx1,
DWORD  tvtx2,
DWORD  tvtx3,
DWORD  tvtx4 
) [inline]
                                                                                              {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc);
        tv[0].Append(1, &tvtx1, alloc); tv[1].Append(1, &tvtx2, alloc);
        tv[2].Append(1, &tvtx3, alloc); tv[3].Append(1, &tvtx4, alloc);
    }
void AddVertNC1T4 ( DWORD  vtx,
DWORD  nor,
DWORD  col,
DWORD  tvtx1,
DWORD  tvtx2,
DWORD  tvtx3,
DWORD  tvtx4 
) [inline]
                                                                                                           {
        int alloc = (v.Count()>>1)+1;
        v.Append(1, &vtx, alloc); n.Append(1, &nor, alloc); c[0].Append(1, &col, alloc);
        tv[0].Append(1, &tvtx1, alloc); tv[1].Append(1, &tvtx2, alloc);
        tv[2].Append(1, &tvtx3, alloc); tv[3].Append(1, &tvtx4, alloc);
    }
void AddVertexCol ( int  i,
DWORD  col 
) [inline]
Remarks:
This method adds vertex color data to a vertex. This method is usually used together with AddVertN and AddVertexUV methods to set each vertex's data flexibly.
Parameters:
i The color channel index must be less than GFX_MAX_COLORS.\
col The vertex color data.
    {
        DbgAssert(i >= 0 && i < GFX_MAX_COLORS);
        c[i].Append(1, &col, (v.Count()>>1)+1);
    }
void AddVertexUV ( int  i,
DWORD  tx 
) [inline]
Remarks:
This method adds a set of 2d texture coordinate to a vertex. This method is usually used together with AddVertN and AddVertexCol methods to set each vertex's data flexibly.
Parameters:
i The texture coordinate index must be less than GFX_MAX_TEXTURES.\
tx The texture coordinate data.
    {
        DbgAssert(i >= 0 && i < GFX_MAX_TEXTURES);
        tv[i].Append(1, &tx, (v.Count()>>1)+1);
    }

Member Data Documentation

DWORD rndMode
MtlID mID
MtlID maxID
DWORD smGrp
int clrMode
int texMode
DWTab c[GFX_MAX_COLORS]
DWTab tv[GFX_MAX_TEXTURES]

TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip
TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip TriStrip