Directx创建纹理映射步骤

以创建一个纹理四边形为例,记录一下如何对一个四边形进行纹理映射以及如何设置纹理过滤器的一般步骤,如果我们的硬件支持多级渐进纹理映射方式,程序中便可使用D3DXCreateTextureFromFile函数自动创建一个多级渐进纹理链。

大致的步骤就是下面四点:

               (1)构造组成物体的顶点,并为其指定纹理坐标。

               (2)用函数D3DXCreateTextureFromFile为IDirect3DTexture9接口加载一种纹理。

               (3)设置缩小过滤器、放大过滤器和多级渐进纹理过滤器。

               (4)绘制物体前,用函数IDirect3DDevice9::SetTexture来设定与该物体关联的纹理。

 

 

 

首先需要初始化几个全局变量,一个用于存储四边形顶点的顶点缓存,另一个是将要映射到该四边形的纹理。

在Setup函数中我们像之前一样定义了顶点纹理坐标的两个三角形构造了一个四边形。然后,为IDirect3DTexture9接口加载位图文件,最好是用相对地址,其加载模式我觉得和VB的LoadPicture差不多的,只是多了两个其他的参数。接下来在调用SetTexture方法启用纹理。最后我们将缩小过滤器和放大过滤器设为线性过滤模式,并将渐进纹理过滤器设为D3DTEXF_POINT。当然,过滤器的模式选择可以自由,这里主要是为了效率。

现在我们就可以在Display函数中像往常一样绘制该四边形了,并且我们可以将当前纹理映射到该四边形表面上。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值