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/