D3DXCreateTextureFromFileEx创建纹理的悲催

如果美术图片的长宽使用的是是非2的N次方的大小,那么当我们使用D3DXCreateTextureFromFileEx创建纹理时,宽高都设置的是D3DX_DEFAULT,D3D会默认把纹理创建为2的N次方,这会导致纹理被放大或者被缩小,总之是被拉伸了。但是使用时又会按原始大小使用,相当于又把创建的纹理缩小或者放大。这会导致比如说图片模糊啊,坐标偏移啊。各种诡异事情发生。

此问题有两种解决方案:
1.让美工把图片修改为2的n次方大小;
2.宽高传参为D3DX_DEFAULT_NONPOW2。

其中,解决方案2可行性不高,因为这需要显卡的支持,我们不可能强迫客户去更换显卡,只能我们去兼容各种显卡。因此剩下的就只有自己改图了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值