如何使用directX 10绘制字符串?

如何使用directX 10绘制字符串?,directx,Directx,我是directX的新手,对此我有问题。 我想在屏幕上画一条线,但它不起作用。我在互联网上搜索了一下,我得到了一些这方面的教程。代码如下: //Create font void RealGame::CreateMyFont(LPDIRECT3DDEVICE9 d3ddv) { D3DXCreateFont(d3ddv, // the D3D Device 20, // font height 0, // default

我是directX的新手,对此我有问题。 我想在屏幕上画一条线,但它不起作用。我在互联网上搜索了一下,我得到了一些这方面的教程。代码如下:

//Create font
void RealGame::CreateMyFont(LPDIRECT3DDEVICE9 d3ddv)
{
D3DXCreateFont(d3ddv,    // the D3D Device
               20,    // font height
               0,    // default font width
               FW_NORMAL,    // font weight
               1,    // not using MipLevels
               false,    // italic font
               DEFAULT_CHARSET,    // default character set
               OUT_DEFAULT_PRECIS,    // default OutputPrecision,
               DEFAULT_QUALITY,    // default Quality
               DEFAULT_PITCH | FF_DONTCARE,    // default pitch and family
               L"Arial",    // use Facename Arial
               &font);


}
//Draw text on screen
void RealGame::DrawGameInfo(LPD3DXSPRITE sp,LPDIRECT3DDEVICE9 d3ddv,LPCWSTR text)
{
RECT textbox;
SetRect(&textbox, 100, 100, 800, 20);
D3DCOLOR fontColor = D3DCOLOR_ARGB(255,0,0,255);  
if(font!=NULL)
    font->DrawText(sp, text, -1, &textbox, 0, fontColor );

}
结果是:屏幕上没有显示任何文本。 请告诉我为什么,如果我有错误,请改正。 多谢各位

更新: 将标志更改为DT|U NOCLIP | DT|U TOP | DT|U LEFT后 =>字体->绘图文本(sp,text,-1,&textbox,DT|NOCLIP | DT|u TOP | DT|u LEFT,,fontColor); 它起作用了。
谢谢Gnietschow的帮助。

您是在给sprit打电话。开始和结束之前和之后?签出这个是的,我签了,SpriteHandler->Begin(D3DXSPRITE\u ALPHABLEND);DrawGameInfo(SpriteHandler,d3ddv,L“测试文本”);SpriteHandler->End();你有没有试过用旗帜
DT|u NOCLIP | DT|u TOP | DT|u LEFT
?也许它被剪掉了,不管是什么原因。而且你可以让sp为空,只用于测试。天哪,你是我的救星。它可以工作(使用标志DT|u NOCLIP | DT|u TOP | DT|u LEFT)。非常感谢你。