牵着老婆满街逛

严以律己,宽以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

D3DXCreateTextureFromFileEx创建纹理的悲催

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

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


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

posted on 2012-02-10 15:27 杨粼波 阅读(1276) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理