在我的情况下,
glutInitWindowSize(w_walker*8, h_walker);
glutCreateWindow("walker");
loadTexture("./fighter512.png");有效,但是
loadTexture("./fighter512.png");
glutInitWindowSize(w_walker*8, h_walker);
glutCreateWindow("walker");没有。为什么?
发布于 2011-02-19 21:12:58
通常,在一些驱动程序/OpenGL实现中,创建窗口的行为会产生副作用,即决定纹理、屏幕外缓冲区和窗口本身的内存实际存在的位置,以及因此它将有多大。
如果不创建窗口(或者更准确地说是渲染上下文),很难(即不可能)确定在加载后将纹理放在哪里。
发布于 2011-02-20 05:40:34
OpenGL命令在OpenGL上下文中运行。GLUT仅在创建窗口后创建OpenGL上下文。使用PBuffers可以有一个没有窗口的OpenGL上下文。在X11/GLX中,创建PBuffers很简单;在Windows上,用户必须首先创建一个虚拟窗口才能访问用于创建PBuffer的OpenGL扩展,这需要事先有一个活动的OpenGL上下文。但是一旦创建了PBuffer和其上的OpenGL上下文,就不再需要伪窗口。
https://stackoverflow.com/questions/5050936
复制相似问题