【C++】 DirectX初心者質問スレ Part7 【C++】
■ このスレッドは過去ログ倉庫に格納されています
0478デフォルトの名無しさん
2006/01/20(金) 02:37:47> d3dvp.MinZ = 0.9f;
> d3dvp.MaxZ = 0.1f;
MinZ < MaxZ じゃないとダメよ。
デバッグランタイムなら一応エラーメッセージが出るわ。
リリースランタイムだと多分、MaxZ が MinZ と同じ値になるんじゃないかしら。
ピクセルのZ値が常に同じだから、D3DCMP_GREATEREQUAL なら常に上書き、
D3DCMP_GREATER なら常に上書き不可になるわ。
Z値で余計なことしてるけど、手前を0.0f, 奥を1.0fにした方が無難よ。
下みたいに直せばおわり。
// コメントアウト
// IDirect3DDevice9_GetViewport( pdev, &d3dvp );
// d3dvp.MinZ = 0.9f;
// d3dvp.MaxZ = 0.1f;
// IDirect3DDevice9_SetViewport( pdev, &d3dvp );
// IDirect3DDevice9_SetRenderState( pdev, D3DRS_ZFUNC, D3DCMP_GREATEREQUAL );
IDirect3DDevice9_SetRenderState( pdev, D3DRS_ZFUNC, D3DCMP_LESSEQUAL );
// IDirect3DDevice9_Clear( pdev, 0, NULL, D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER, D3DCOLOR_XRGB(0,0,0), 0.0f, 0 );
IDirect3DDevice9_Clear( pdev, 0, NULL, D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER, D3DCOLOR_XRGB(0,0,0), 1.0f, 0 );
■ このスレッドは過去ログ倉庫に格納されています