Untitled
unknown
c_cpp
4 months ago
1.7 kB
20
Indexable
Never
#define GR_VERTEX_X_OFFSET 0 #define GR_VERTEX_Y_OFFSET 1 #define GR_VERTEX_OOZ_OFFSET 2 #define GR_VERTEX_OOW_OFFSET 3 #define GR_VERTEX_R_OFFSET 4 #define GR_VERTEX_G_OFFSET 5 #define GR_VERTEX_B_OFFSET 6 #define GR_VERTEX_A_OFFSET 7 #define GR_VERTEX_Z_OFFSET 8 #define GR_VERTEX_SOW_TMU0_OFFSET 9 #define GR_VERTEX_TOW_TMU0_OFFSET 10 #define GR_VERTEX_OOW_TMU0_OFFSET 11 #define GR_VERTEX_SOW_TMU1_OFFSET 12 #define GR_VERTEX_TOW_TMU1_OFFSET 13 #define GR_VERTEX_OOW_TMU1_OFFSET 14 #if (GLIDE_NUM_TMU > 2) #define GR_VERTEX_SOW_TMU2_OFFSET 15 #define GR_VERTEX_TOW_TMU2_OFFSET 16 #define GR_VERTEX_OOW_TMU2_OFFSET 17 #endif typedef struct { float U; /* s texture ordinate (s over w) */ float V; /* t texture ordinate (t over w) */ } GrTmuVertex; typedef struct { float X, Y; /* X and Y in screen space */ float Z; /* 65535/Z (used for Z-buffering) */ float Q; /* 1/W (used for W-buffering, texturing) */ float r, g, b, a; /* R, G, B, A [0..255.0] */ GrTmuVertex tmuvtx[GLIDE_NUM_TMU]; } Vertex; grVertexLayout(GR_PARAM_XY, GR_VERTEX_X_OFFSET << 2, GR_PARAM_ENABLE); grVertexLayout(GR_PARAM_RGB, GR_VERTEX_R_OFFSET << 2, GR_PARAM_ENABLE); grVertexLayout(GR_PARAM_A, GR_VERTEX_A_OFFSET << 2, GR_PARAM_ENABLE); grVertexLayout(GR_PARAM_Z, GR_VERTEX_OOZ_OFFSET << 2, GR_PARAM_ENABLE); grVertexLayout(GR_PARAM_Q, GR_VERTEX_OOW_OFFSET << 2, GR_PARAM_ENABLE); grVertexLayout(GR_PARAM_ST0, GR_VERTEX_SOW_TMU0_OFFSET << 2, GR_PARAM_ENABLE);
Leave a Comment