Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[54.224.52.210] |
|
Сообщ.
#1
,
|
|
|
Приветствую
отрисовываю поле, состоящее из квадратов разного цвета для этого использую такой вершинный буфер #define D3DFVF_CAGEVERTEX ( D3DFVF_XYZ | D3DFVF_DIFFUSE ) struct CAGEVERTEX { D3DXVECTOR3 f3Pos; DWORD color; }; #define EMPTY_COLOR D3DCOLOR_XRGB(0, 0, 0) #define RED_COUNTER_COLOR D3DCOLOR_XRGB(192, 0, 0) #define BLUE_COUNTER_COLOR D3DCOLOR_XRGB(0, 0, 192) #define MARGIN_COUNTER_COLOR D3DCOLOR_XRGB(192, 0, 192) #define LMARGIN_COUNTER_COLOR D3DCOLOR_XRGB(255, 192, 255) CAGEVERTEX g_pCageVertices[] = { { D3DXVECTOR3(-0.5f, -0.5f, 1.0f), EMPTY_COLOR, }, { D3DXVECTOR3( 0.5f, -0.5f, 1.0f), EMPTY_COLOR, }, { D3DXVECTOR3( 0.5f, 0.5f, 1.0f), EMPTY_COLOR, }, { D3DXVECTOR3(-0.5f, 0.5f, 1.0f), EMPTY_COLOR, }, { D3DXVECTOR3(-0.5f, -0.5f, 1.0f), RED_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, -0.5f, 1.0f), RED_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, 0.5f, 1.0f), RED_COUNTER_COLOR, }, { D3DXVECTOR3(-0.5f, 0.5f, 1.0f), RED_COUNTER_COLOR, }, { D3DXVECTOR3(-0.5f, -0.5f, 1.0f), BLUE_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, -0.5f, 1.0f), BLUE_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, 0.5f, 1.0f), BLUE_COUNTER_COLOR, }, { D3DXVECTOR3(-0.5f, 0.5f, 1.0f), BLUE_COUNTER_COLOR, }, { D3DXVECTOR3(-0.5f, -0.5f, 1.0f), MARGIN_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, -0.5f, 1.0f), MARGIN_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, 0.5f, 1.0f), MARGIN_COUNTER_COLOR, }, { D3DXVECTOR3(-0.5f, 0.5f, 1.0f), MARGIN_COUNTER_COLOR, }, { D3DXVECTOR3(-0.5f, -0.5f, 1.0f), LMARGIN_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, -0.5f, 1.0f), LMARGIN_COUNTER_COLOR, }, { D3DXVECTOR3( 0.5f, 0.5f, 1.0f), LMARGIN_COUNTER_COLOR, }, { D3DXVECTOR3(-0.5f, 0.5f, 1.0f), LMARGIN_COUNTER_COLOR, }, }; мне кажется это как-то уж очень топорно можно ли упростить? свести все к 4 вершинам, а цвет задавать как-то отдельно если да, то не скажется ли это на скорости |