与iOS相比,Open GL ES坐标在y轴上翻转。通过glreadpixels将数据保存出来(到视频中)可以得到正确的转换,但是在UIView中显示时y轴发生了翻转。将其翻转回来进行演示的最好方法是什么?
到目前为止,我看到了三种方法:
1)在opengl中渲染两次,将未翻转的版本发送给glreadpixels,将翻转的版本发送到CAEAGLLayer (presentRenderbuffer)。
2)翻转opengl中的像素,使其正确显示;一旦我通过glreadpixels读取它们,移位这些位,然后将其保存到文件中。
3)在opengl中翻转像素,使其正确显示;对视频本身应用某种类型的变换(使其在播放时翻转)。
我不确定这些是不是正确的道路。寻找性能最好的路径。
发布于 2011-03-10 03:21:14
看起来最好的方法是在opengl中使用翻转顶点。
发布于 2011-02-13 02:48:25
只需对UIView应用转换即可将其翻转。例如:
view.transform = CGAffineTransformMakeScale(1.0, -1.0);https://stackoverflow.com/questions/4974007
复制相似问题