Clear()

功能:将一些可用的Buffer清理干净。

函数原型:

HRESULT Clear(      

    DWORD Count,
    const D3DRECT *pRects,
    DWORD Flags,
    D3DCOLOR Color,
    float Z,
    DWORD Stencil
);
例: pd3dDevce->clear(0,NULL,D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER ,D3DCOLOR_ARGB(0,45,50,170),1.0F.0);

第一个参数:告诉系统有多少个矩形区域要被clear。

 

第二个参数:说明这些要被clear的矩形数组的指针。

          注:如果clear的范围是整个buffer,那么第一个参数值只要填0,第二个参数填NULL即可。

 

第三个参数:用来指定要被clear的是哪些buffer(可以是三个Buffer 的组合)。

         注:D3D里相对于窗口画面用到的buffer有三种:color buffer 、depth buffer 、stencil buffer ;color buffer 用来呈现窗口上每个pixel的颜色值,

               也就是实际见到的彩色画面,color buffer 又称Render Target;Depth Buffer又称Z Buffer;Stencil Buffer 是模板 、铸板的意思。

 

第四个参数:指定给Color Buffer的背景色;

 

第五个参数:给Depth Buffer 用的,只要pixel的Z值介于0~1,就会填入Depth Buffer;

 

第六个参数:指定给Stencil Buffer,上例中没用到Stencil buffer ,所以指定为0;

 

 

 

 

 

 

你可能感兴趣的:(Direct3D,API)