DirectX Z-buffer

5 отговора 162 прегледа
#1

DirectX Z-buffer

imam problem s Z-buffer-a na DX8 ne6to neiska da se wkliu4wa a neznam za6to puskam direktno tutoriala ot SDK-a i pak ne se e wkliu4il skapaniq Z-buffer i helpa 4etoh kato glamaw i tutoriali i na wsqkyde e edno i sy6to SetRenderState(D3DRS_ZENABLE, TRUE); i oswen towa pri syszdawaneto na Device se ukazwa EnableAutoDepthStencil = TRUE; kyde byrkam ili propuskam ne6to

Отговор
в отговор на Spyder #2

Re: DirectX Z-buffer

Виж съобщението за грешка което ти връща, пробвай с 16 битов Z-buffer и без stencil, може да не ти стига видео паметта, особенно ако си издънил резолюцията...

Отговор
в отговор на Spyder #3

Re: DirectX Z-buffer

abe siguren li si che vaobste se poddarja Z-buffera 8-)

Отговор
в отговор на Spyder #4

Re: DirectX Caps Viewer

виж с DirectX Caps Viewer валиден Depth/Stencil Format при мен за HAL са D3DFMT_D24S8 , D3DFMT_D16.

Отговор
в отговор на Spyder #5

Mi az polzwam tova

Mi az polzwam tova, no ne sam siguren dali e po temata - pisah go predi edna godina.. maj ot tut. na SDK to

Vprochem , pokrai tija formati ima interesni stranichni efekti,
iskam da kazga poluchavaha se njakakwi nezatworeni poligoni.. taka de :)) no i zatowa si imashe lek..njakyde

EI DAI DA WIDIM DEMO :))))

//

if (Mode==1)
{
if( FAILED( g_pD3D->GetAdapterDisplayMode( D3DADAPTER_DEFAULT, &d3ddm ) ) )
return E_FAIL;

ZeroMemory( &d3dpp, sizeof(d3dpp) );
d3dpp.Windowed = true;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = d3ddm.Format; //*/VooDo ->D3DFMT_R5G6B5;//
d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;

if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp, &g_pd3dDevice ) ) )
{
return E_FAIL;
}

}
else
{

//----------------------------------------------------------------------------------
//----------------------------------------------------------------------------------
// F U L L S C R E E N M O D E

if( FAILED( g_pD3D->GetAdapterDisplayMode( D3DADAPTER_DEFAULT, &d3ddm ) ) )
return E_FAIL;

ZeroMemory( &d3dpp, sizeof(d3dpp) );
d3dpp.Windowed = FALSE;
d3dpp.BackBufferWidth = 640;
d3dpp.BackBufferHeight = 480;
d3dpp.BackBufferFormat = d3ddm.Format;//D3DFMT_R5G6B5;
d3dpp.BackBufferCount = 1;//???

d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;

d3dpp.EnableAutoDepthStencil = TRUE;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
d3dpp.FullScreen_RefreshRateInHz = 0;

if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp, &g_pd3dDevice ) ) )
return E_FAIL;
}

Отговор
в отговор на Draka #6

Re: Mi az polzwam tova

pusnah go kakto winagi be6e drebna gre6ka edno sywsem newolno propuskane na nuliraneto na z-buffer i efkta be6e porazitelen mersi wse pak za koda az prawq sy6totot oswen towa 4e ne go puskam na fullscreen a w prozorec

Отговор