我在OS X上使用JOGL,并试图创建一个双缓冲的GLJPanel,但它只是不起作用。这就是我正在做的事情:
GLCapabilities glCapabilities = new GLCapabilities(GLProfile.get(GLProfile.GL4));
glCapabilities.setDoubleBuffered(true);
System.out.println(glCapabilities.getDoubleBuffered());
GLJPanel glPanel = new GLJPanel(glCapabilities);
System.out.println(glPanel.getRequestedGLCapabilities().getDoubleBuffered());
这是输出:
true
false
我正在记录所请求的功能,甚至没有选择的功能...所以它应该与我传递给构造函数的那个相同,对吧? BTW当然在初始化后进一步下线,所选择的功能也将关闭双缓冲,然后整个渲染进入垃圾箱。
为什么小组会忽略明确将doubleBuffered
设置为true
的传入功能?