Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Opengl多个GLDrawArray调用_Java_Opengl_Graphics_3d - Fatal编程技术网

Java Opengl多个GLDrawArray调用

Java Opengl多个GLDrawArray调用,java,opengl,graphics,3d,Java,Opengl,Graphics,3d,我对opengl(java,lwjgl)中的顶点数组对象有问题。 程序本身工作,我有一个对象,可以在它周围移动。 draw调用很简单: Gl11.glDrawArrays(drawmode, 0, 4); 在着色器中,我有一个统一的模型(称为model^^)。 现在我尝试了以下方法:(伪代码) 这不管用。为什么?我知道有实例,但这不是我的目标。我只想用两次抽签来抽签。但是我只看到了第一个。。有人有主意吗 **编辑** 我讨厌它。我讨厌这个原则。。。在opengl中使用缓冲区之前,我一次又一次地

我对
opengl
java
lwjgl
)中的顶点数组对象有问题。 程序本身工作,我有一个对象,可以在它周围移动。 draw调用很简单:

Gl11.glDrawArrays(drawmode, 0, 4);
在着色器中,我有一个统一的模型(称为model^^)。 现在我尝试了以下方法:(伪代码)

这不管用。为什么?我知道有实例,但这不是我的目标。我只想用两次抽签来抽签。但是我只看到了第一个。。有人有主意吗

**编辑**


我讨厌它。我讨厌这个原则。。。在opengl中使用缓冲区之前,我一次又一次地忘记翻转缓冲区。现在再说一遍。这就是重点。。。我第一次翻动它第二次不是。。。我无法让它进入我的大脑来翻转这个缓冲区-。-

显示相关代码。到目前为止,你在问题中描述的方法在原则上应该是可行的。。thx无论如何..更新模型?这正是为什么首先创建顶点着色器,这样就不会更新模型,然后发出另一个绘制调用。更新一些制服,让顶点着色器完成繁重的工作。。。在任何情况下,您所谈论的很多内容都非常模糊-翻转缓冲区可能指的是交换前/后缓冲区(尽管现在我看到了语言标签,我假设您指的是翻转Java IO缓冲区),而“更新模型”可能指的是很多事情。如果你想在这方面得到帮助,你需要添加一些代码。嗯,是的,你是对的,它非常不精确。。。我指的是IO缓冲区,是的,随着模型的更新,我指的是glUniformMatrix4(缓冲区)^^^但它现在可以工作了,所以thx:)
update the model  
draw  
update the model  
draw again