我正在使用 Directx 9 在 C++ 中制作小游戏。我阅读了一些教程,我可以绘制我的精灵对象并移动它等。但我想旋转它。我尝试:
void D3DGraphics::DrawSprite(LPDIRECT3DTEXTURE9 &texture,ID3DXSprite* pSprite, D3DXVECTOR3* pos, D3DXVECTOR3* dim ){
pDevice->Clear( 0,NULL,D3DCLEAR_STENCIL,D3DCOLOR_XRGB(0,0,0),0.0f,0 );
D3DXMATRIX matrix;
D3DXMatrixRotationX(&matrix, 0.05f);
pSprite->Begin(D3DXSPRITE_ALPHABLEND);
hresult= pSprite->SetTransform(&matrix);
hresult= pSprite->Draw(texture, NULL, dim, pos, 0xFFFFFFFF);
pSprite->End();
}
当我删除 settransform 部分时,它工作得很好。我检查了 hresult 他们返回了 S_OK。知道吗?