D3D做二维游戏的一个问题(只显示一部分图片)
rbird 2004-09-28 11:13:11 我用D3D9做一个二维游戏。图片已经显示出来了。但是我并不想全部显示出来(因为要做动画,就像DDraw那样,一幅图很多动作,一桢桢放,因为DDraw中Blt可以设原图和目标位置的大小)。
我是这样写的:
在初始化函数中:
CUSTOMVERTEX g_Vertices[] ={
{ -1.0f,-1.0f, 0.0f, 0xfffffffff, 0.0f,1.0f},
{ -1.0f, 1.0f, 0.0f, 0xffffffff, 0.0f,0.0f},
{ 1.0f,-1.0f, 0.0f, 0xffffffff, 1.0f,1.0f},
{ 1.0f,1.0f,0.0f,0xffffffff,1.0f,0.0f}, };
if( FAILED( hr = D3DUtil_CreateTexture( m_pd3dDevice, _T("09B.JPG"),&m_pTextures ) ) ) return hr;
在渲染函数中:
m_pd3dDevice->SetStreamSource( 0, m_pMyVB, 0, sizeof(CUSTOMVERTEX) );
m_pd3dDevice->SetFVF( D3DFVF_CUSTOMVERTEX );
m_pd3dDevice->SetTexture( 0, m_pTextures );
m_pd3dDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, 0, 2 );
图片已经显示出来了。只是怎么只显示一部部分图片?没有blt,不习惯啊.55555
我知道是修改纹理坐标,但是具体怎么整?能写些具体代码吗?