Hello,
I am tringing to make a 2D sprite engine that uses a dynamic Vertex Buffer, but I can't tell if the way I'm adding vertex data to is is working. So I was wondering if there is any way I can use the Visual Studio 2010 debugger to find the value of each vetex in the Vertex buffer (to see if its being stored correctly)?
Just in case here is how I'm creating it:
//Called once during initialization
if(FAILED( g_pd3dDevice->CreateVertexBuffer( s_nBatchSize * 4 * sizeof( SpriteVertex ), D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY,
D3DFVF_SPRITEVERTEX, D3DPOOL_DEFAULT, &m_pVB, NULL ) ) )
SpriteVertex* pVertex;
m_pVB->Lock(nRenderOffset, nSpritesToLock*4, (void**)&pVertex, 0);
//Use these variables to set the 4 verticies for each sprite (quad)
//Set vertex 1
pVertex->vPos = D3DXVECTOR3(vPos.x - 0.5f, vPos.y - 0.5f, fDepth);
pVertex->Colour = tColour;
pVertex->u1 = pTexture->GetTextureUMin();
pVertex->v1 = pTexture->GetTextureVMin();
pVertex++;
//Set vertex 2
pVertex->vPos = D3DXVECTOR3(vPos.x+vSize.x - 0.5f, vPos.y - 0.5f, fDepth);
pVertex->Colour = tColour;
pVertex->u1 = pTexture->GetTextureUMax();
pVertex->v1 = pTexture->GetTextureVMin();
pVertex++;
//Set vertex 3
pVertex->vPos = D3DXVECTOR3(vPos.x - 0.5f, vPos.y+vSize.y - 0.5f, fDepth);
pVertex->Colour = tColour;
pVertex->u1 = pTexture->GetTextureUMin();
pVertex->v1 = pTexture->GetTextureVMax();
pVertex++;
//Set vertex
pVertex->vPos = D3DXVECTOR3(vPos.x+vSize.x - 0.5f, vPos.y+vSize.y - 0.5f, fDepth);
pVertex->Colour = tColour;
pVertex->u1 = pTexture->GetTextureUMax();
pVertex->v1 = pTexture->GetTextureVMax();
pVertex++;
}
m_pVB->Unlock();
This is using something Evil Steve posted here