GLSL 用于全分辨率图像处理?
我目前正在使用 GLSL 着色器在 iOS 设备上渲染实时视频效果。视频分辨率为 640x480。当您拍摄照片时,图像可以以最高 5mp 的任何分辨率出现。我想知道是否有任何方法可以将相同的 GLSL 着色器应用于例如 5mp 纹理。
I am currently using GLSL shaders to render effects to live video on iOS devices. The video resolution is 640x480. When you capture a picture, the image can come in at any resolution up to 5mp. I am wondering if there is any way to apply the same GLSL shader to, for example, a 5mp texture.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这仅取决于您的图形驱动程序/设备是否支持大型纹理和渲染目标。如果是,那绝对没问题,GLSL 不关心纹理或渲染目标大小。
It just depends if your graphics driver/device supports that large textures and render targets. If yes, it's absolutely no problem, GLSL doesn't care about the texture or render target size.
您可以做的就是分块处理图像。
就像一次只处理图像的 512x512 像素部分。
这样你就不必关心最终的图像分辨率(如果你有足够的内存,它甚至可以是 100mp 大)。
正如 Christian Rau 已经指出的那样:GLSL 不关心纹理/渲染目标的大小。
What you could do is process the image in chunks.
Like only process a 512x512 pixel part of the image at a time.
That way you wouldn't have to care about the final image resolution (it could even be 100mp big if you have enough memory).
And as Christian Rau already pointed out: GLSL doesn't care about the size of the texture/render target.