|
HRESULT MyGame::InitD3dDevice()
{
ISNULL(m_pD3d = Direct3DCreate9(D3D_SDK_VERSION));
D3DPRESENT_PARAMETERS d3dParam;
ZeroMemory(&d3dParam,sizeof(d3dParam));
d3dParam.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dParam.Windowed = true;
d3dParam.BackBufferFormat = D3DFMT_UNKNOWN;
d3dParam.EnableAutoDepthStencil = true;
d3dParam.AutoDepthStencilFormat = D3DFMT_D16;
ISFAILED(m_pD3d->CreateDevice(D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
m_hWnd,
D3DCREATE_HARDWARE_VERTEXPROCESSING,
&d3dParam,
&m_pD3dd))
D3DXVECTOR2 m_v2[2];
m_v2[0] = D3DXVECTOR2(400.0f, 400.0f);
m_v2[1] = D3DXVECTOR2(700.0f, 400.0f);
return S_OK;
}
HRESULT MyGame::Render()
{
m_pD3dd->Clear(0, 0, D3DCLEAR_TARGET, 0xffffffff, 1.0f, 0);
m_pD3dd->BeginScene();
m_ps->Begin(D3DXSPRITE_ALPHABLEND);
for(int i=0; i<7; i++)
{
m_ps->Draw(g_Menu.Texture, NULL, NULL, &(D3DXVECTOR3(g_Menu.x, g_Menu.y, 0.0f)), g_Menu.d);
}
m_ps->End();
m_pl->Begin();
m_pl->Draw(m_v2, 2, RGB(255, 0, 0));
m_pl->End();
m_pD3dd->EndScene();
m_pD3dd-> resent(NULL,NULL,NULL,NULL);
return S_OK;
}
我用以上代码先画了7张图,然后准备再画上一条直线,但怎么也画不出线来.我找了很多网站,上面都是这样写的.
而且MSDN也看了无数次,都是按照上面来写的.结果还是画不出来.....
请各位高手看看有什么地方没写对的.是不是还有什么地方需要注意的,还是之前有些什么地方要设置的? |
|