渲染时不能看见渲染物体?请帮忙!
在笔记本,显卡是7500,能看见物体
但在IBM的集成显卡945GM上看不见物体,查找原因如下:f
1,分析渲染返回值
{
HRESULT hr = E_FAIL;
m_pd3dDevice->SetRenderState( D3DRS_FILLMODE ,D3DFILL_SOLID );// 显示线框
hr = m_pd3dDevice->SetTexture( 0, m_pTexture ) ;
hr = m_pd3dDevice->SetVertexDeclaration( m_pVertexDeclaration );
hr = m_pd3dDevice->SetVertexShader( m_pVertexShader );
hr = m_pd3dDevice->SetStreamSource( 0, m_pSourceVB, 0, sizeof( D3DMORPHVERTEX ));
hr = m_pd3dDevice->SetStreamSource( 1, m_pDestinationVB, 0, sizeof( D3DMORPHVERTEX ));
hr = m_pd3dDevice->SetIndices( m_pIB );
hr = m_pd3dDevice->DrawIndexedPrimitive( D3DPT_TRIANGLELIST, 0,
0, m_dwNumVertices, 0, m_dwNumFaces );
return S_OK;
}
在最后一行,返回错误代码:-2005530516
错误分析:用Direct Error Lookup分析返回值如下:
HRESULT: 0x8876086c (2289436780)
Name: D3DERR_INVALIDCALL
Description: Invalid call
Severity code: Failed
Facility Code: FACILITY_D3D (2166)
Error Code: 0x086c (2156)
说无效调用,在7500上能看见渲染物体,在这块卡上看不到,确报错,到底错在什么地方?