如何在opengl中制作360视频输出
答
这取决于您预计使用的确切投影。对于一个简单的球形投影您呈现一个四到你的目的地纹理以下片段着色器:
uniform samplerCube tex;
in vec2 texcoord;
out vec4 OUT;
void main() {
vec3 d = vec3(
cos(texcoord[0])*cos(texcoord[1]),
sin(texcoord[0])*cos(texcoord[1]),
sin(texcoord[1])
);
OUT = texture(tex, d);
}
texcoord
应在右上角(-tau/2,-tau/4)
在左下角和(tau/2, tau/4)
之间变化。
感谢@ybungalobill,你的解决方案真的很有帮助,但那不完全是我想要的,我终于在这里找到了它:[ShaderToy](https://www.shadertoy.com/view/XsBSDR),无论如何谢谢你你有用的答案。 –
这是一回事。 – ybungalobill