SetRenderState( D3DRS_POINTSCALEENABLE, TRUE ); //打开缩放功能
SetRenderState( D3DRS_POINTSCALE_A , FtoDW( 1.00f ));//设置因子,下同
SetRenderState( D3DRS_POINTSCALE_B , FtoDW( 1.00F ));
SetRenderState( D3DRS_POINTSCALE_C , FtoDW( 1.00f ));
SetRenderState( D3DRS_POINTSIZE_MAX, FtoDW( 5.00f ));//设置点大小上限,下类似
SetRenderState( D3DRS_POINTSIZE_MAX, FtoDW( 5.00f ));
SetRenderState( D3DRS_POINTSPRITEENABLE , TRUE ) ; //打开点精灵效果
SetRenderState( D3DRS_AMBIENT, 0xffffffff ); //设置环境光颜色
开启ALPHA混合效果
SetRenderState( D3DRS_ALPHABLENDABLE,TRUE)//开启。默认是关闭的FALSE
设置混合因子:
源:SetRenderState( D3DRS_SRCBLEND , D3DBLEND_SRCALPHA );
目的:SetRenderState( D3DRS_DESTBLEND , D3DBLEND_INVSRCALPHA);
第二个参数是 D3DBLEND的枚举结构。
|
typedef enum D3DCMPFUNC { D3DCMP_NEVER = 1, //表示永远测试失败 D3DCMP_LESS = 2, //表示小与D3DRS_ALPHAREF设置的值,则测试成功。 D3DCMP_EQUAL = 3, //表示等于则成功 D3DCMP_LESSEQUAL = 4, //表示小于等于则成功 D3DCMP_GREATER = 5, //表示大于成功 D3DCMP_NOTEQUAL = 6, //表示不等于成功 D3DCMP_GREATEREQUAL = 7, //表示大于等于成功 D3DCMP_ALWAYS = 8, //表示总是成功 D3DCMP_FORCE_DWORD = 0x7fffffff, } D3DCMPFUNC, *LPD3DCMPFUNC;
|
参考资料:http://163xiaofan.blog.163.com/blog/static/17135780200722910172810/
|