Здравствуйте, Все!!! Собственно сабж. Вроде все делаю как в SDK, но чета он совсем не хочет создаваться вчем загвоздка? Код | D3DDISPLAYMODE d3ddm;
if( FAILED( g_pD3D->GetAdapterDisplayMode( D3DADAPTER_DEFAULT, &d3ddm ) ) ) { // TO DO: Respond to failure of GetAdapterDisplayMode return; }
HRESULT hr; D3DCAPS9 d3dCaps;
if( FAILED( g_pD3D->GetDeviceCaps( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, &d3dCaps ) ) ) { // TO DO: Respond to failure of GetDeviceCaps return; }
DWORD dwBehaviorFlags = D3DCREATE_ADAPTERGROUP_DEVICE|D3DCREATE_MULTITHREADED;
if( d3dCaps.VertexProcessingCaps != 0 ) dwBehaviorFlags |= D3DCREATE_HARDWARE_VERTEXPROCESSING; else dwBehaviorFlags |= D3DCREATE_SOFTWARE_VERTEXPROCESSING;
// // Everything checks out - create a simple, windowed device. //
D3DPRESENT_PARAMETERS* d3dpp = new D3DPRESENT_PARAMETERS[d3dCaps.NumberOfAdaptersInGroup]; memset(d3dpp, 0, d3dCaps.NumberOfAdaptersInGroup*sizeof(D3DPRESENT_PARAMETERS)); for (int i=0;i<d3dCaps.NumberOfAdaptersInGroup;i++) { d3dpp[i].BackBufferFormat = d3ddm.Format; d3dpp[i].BackBufferWidth = 800; d3dpp[i].BackBufferHeight = 600; d3dpp[i].SwapEffect = D3DSWAPEFFECT_DISCARD; d3dpp[i].Windowed = FALSE; d3dpp[i].EnableAutoDepthStencil = TRUE; d3dpp[i].AutoDepthStencilFormat = D3DFMT_D16; d3dpp[i].PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE; d3dpp[i].FullScreen_RefreshRateInHz = d3ddm.RefreshRate; } hr = g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, g_hWnd, dwBehaviorFlags, (D3DPRESENT_PARAMETERS*)d3dpp, &g_pd3dDevice );
|
|