gpt4 book ai didi

ios - iPhone OpenGL ES 2.0 - 像素完美纹理

转载 作者:可可西里 更新时间:2023-11-01 04:23:03 25 4
gpt4 key购买 nike

在 OpenGL ES 2.0 中如何让我的纹理与屏幕像素对齐以获得像素完美的图形?这对于我正在处理的使用像素艺术图形的项目至关重要。在这方面的任何帮助都会很棒!

最佳答案

在这里查看我的回答:OpenGL Texture Coordinates in Pixel Space


这已被问过几次,但我手头没有链接,所以快速粗略地解释一下。假设纹理是 8 像素宽:

 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
^ ^ ^ ^ ^ ^ ^ ^ ^
0.0 | | | | | | | 1.0
| | | | | | | | |
0/8 1/8 2/8 3/8 4/8 5/8 6/8 7/8 8/8

数字表示纹理的像素,条形表示纹理的边缘,在最近过滤的情况下表示像素之间的边界。然而,你想要击中像素的中心。所以你对纹理坐标感兴趣

(0/8 + 1/8)/2 = 1/(2 * 8)

(1/8 + 2/8)/2 = 3/(2 * 8)

...

(7/8 + 8/8)/2 = 15/(2 * 8)

或者更一般地,对于 N 宽纹理中的像素 i,适当的纹理坐标是

(2i + 1)/(2N)

但是,如果您希望纹理与屏幕像素完美对齐,请记住您指定的坐标不是四边形的像素,而是边缘,根据投影的不同,边缘可能与屏幕像素边缘而不是中心对齐,因此可能需要其他纹理坐标。

关于ios - iPhone OpenGL ES 2.0 - 像素完美纹理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7272579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com