Эй, ребята, кто-нибудь может мне помочь с отображением текстур в Direct3D C ++.Я создал основную игру и хочу текстурировать окружающую среду.Я просмотрел многочисленные онлайн-уроки, но пока мне не повезло
Я создаю собственную вершину для своего кода рисования:
struct CUSTOMVERTEX
{
FLOAT x, y, z; // The position for the vertex
DWORD color; // The vertex color
};
Вот так я бы нарисовал квадрат:
CUSTOMVERTEX g_Vertices[] =
{
{-1.0f,-1.0f,-1.0f,0xFF0000FF},{-1.0f, 1.0f,-1.0f,0xFF0000FF},
{ 1.0f, 1.0f,-1.0f,0xFF0000FF}, { 1.0f, 1.0f,-1.0f,0xFF0000FF},
{ 1.0f,-1.0f,-1.0f,0xFF0000FF},{-1.0f,-1.0f,-1.0f,0xFF0000FF},
};
Вот буфер:
//*************************** Vertex Buffer ****************************
if( FAILED( g_pd3dDevice->CreateVertexBuffer( numberOfVertecies*sizeof(CUSTOMVERTEX),
0 /* Usage */, D3DFVF_CUSTOMVERTEX,D3DPOOL_MANAGED, &g_pVB, NULL ) ) )
MessageBox(hwnd,"Vertex Buffer problem",NULL,NULL);
VOID* pVertices;
if( FAILED( g_pVB->Lock( 0, sizeof(g_Vertices), (void**)&pVertices, 0 ) ) )
MessageBox(hwnd,"Vertex Lock Problem",NULL,NULL);
memcpy( pVertices, g_Vertices, sizeof(g_Vertices) );
g_pVB->Unlock();
, а вот квадрат:
g_pd3dDevice->SetTransform( D3DTS_WORLD, &g_matWorld );
g_pd3dDevice->SetStreamSource( 0, g_pVB, 0, sizeof(CUSTOMVERTEX) );
g_pd3dDevice->SetFVF( D3DFVF_CUSTOMVERTEX );
g_pd3dDevice->DrawPrimitive( D3DPT_TRIANGLELIST, 0, 20);
Я просто хочу посмотреть, как текстурировать квадрат, чтобы я могперейти к текстурированию всей моей среды?