首页>
技术资讯>
详情

网络游戏客户端编程:多重纹理的使用

2016-05-25 来源:CloudBest 阅读量: 0
关键词:

    1.载入纹理
    需要把多重纹理分别载入内存,并设置它的纹理序号,默认的纹理序号为0,因此需要设置其多重纹理的序号:
    D3DXCreateTextureFromFile(g_pd3dDevice, "light.bmp", & g_pTexture2);
    g_pd3dDevice->SetTexture(1, g_pTexture2); 软件开发网
    2.设置纹理混合状态
    g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP,D3DTOP_MODULATE );
    g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1,D3DTA_TEXTURE );
    g_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2,D3DTA_CURRENT );
    纹理状态D3DTSS_COLORARG1和D3DTSS_COLORARG2用来指定当前纹理层与上一层纹理层混合的第一个和第二个参数,D3DTSS_COLOROP指定混合方式。Direct3D使用下面的方法混合纹理:
    纹理混合参数D3DTSS_COLORARG1和D3DTSS_COLORARG2的取值如表6-3所示。
    表6-3 纹理混合参数
    纹理状态D3DTSS_COLOROP和D3DTSS_ALPHAOP用来指定纹理RGB混合和Alpha混合的混合方式,它们可以用来指定属于枚举类型D3DTEXTUREOP的常量。纹理混合方式如表6-4所示。
    3.设置纹理坐标索引
    由于有了多层纹理,因此顶点信息也应该包含每一层纹理坐标的信息。首先需要在顶点格式中加入其他层的纹理坐标,接着要在程序中设定纹理坐标的索引。

热门推荐 查看更多