博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DX9纹理映射
阅读量:6672 次
发布时间:2019-06-25

本文共 470 字,大约阅读时间需要 1 分钟。

hot3.png

可恶的纹理偏移,一直困惑的事情。最后还是得要试验靠实践出真知:

问题:
当把1024×1024大小的贴图,通过纹理矩阵变换,取出来其中的一部分区域。
然后通过标准QUAD将其绘制到到800×600的表面(backbuffer)。
这里的纹理偏移值该是何值才能保证结果绝对正确毫无偏移。
以StretchRect的结果为准,经过反复试验。得到uv坐标的偏移值应该是:
 0.5 / Size(backbuffer) * Size(经过纹理矩阵转换后的纹理坐标范围)
总结如下:
通过D3D9文档知,偏差是0.5个像素(而不是纹素)。
所以关键在于,这0.5个像素对应的纹理的尺寸是多少。
总的纹理尺寸(即变换后的纹理坐标范围)/ 绘制表面的尺寸:是每一个像素对应的纹理尺寸。
再乘以0.5即为所求。
目标缓冲区的尺寸如果和纹理尺寸相同,纹理偏移量=0.5/宽或高;
顶点也必须偏移0.5的值,不能出现(0,0)的坐标,否则正交投影的计算会出错。

转载于:https://my.oschina.net/u/3773235/blog/1612645

你可能感兴趣的文章
Vitalik Buterin:我们正处于 ICO 泡沫,很多人会亏钱
查看>>
放眼业界看得见的未来 十谈大数据时代
查看>>
WCF技术剖析之十八:消息契约(Message Contract)和基于消息契约的序列化
查看>>
零售ERP系统方案选型―IT只是一个工具
查看>>
GraphQL提供数据接口新思路之数据聚合解决方案
查看>>
CentOS7 安装Firefly及测试
查看>>
术有专攻 | 如何在公私混用的设备上保障企业信息安全
查看>>
安全自动化在于信任,而非技术
查看>>
揭密巴西Banrisul银行网站遭遇5小时劫持的原因
查看>>
安装Linux流量监控工具 - iftop
查看>>
如何令移动下载飞起来 结合LTE与Wi-Fi
查看>>
亚信安全与成都市政府达成战略合作
查看>>
如果你喜欢上了一个程序员小伙
查看>>
大数据时代:统计学是数据分析的灵魂
查看>>
为什么我的物联网创业失败?看看这五个原因
查看>>
Intel融合Altera做大做强FPGA
查看>>
英特尔X520万兆网卡构建高效云中心
查看>>
AI“入侵”数据中心
查看>>
家用医疗仪器市场规模首破千亿大关 行业并购势头强劲
查看>>
SSH::Batch,在公有云中使用 ssh 工具箱
查看>>