关于opengl的绑定和解绑的时机
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于opengl的绑定和解绑的时机相关的知识,希望对你有一定的参考价值。
参考技术A opengl应该在启动着色器以后绑定,设定完顶点的属性以后就可以解绑定了。// ..:: 初始化代码(只运行一次 (除非你的物体频繁改变)) :: ..
// 1. 绑定VAO glBindVertexArray(VAO);
// 2. 把顶点数组复制到缓冲中供OpenGL使用 glBindBuffer(GL_ARRAY_BUFFER, VBO); glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW);
// 3. 设置顶点属性指针 glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(GLfloat), (GLvoid*)0); glEnableVertexAttribArray(0);
//4. 解绑VAO glBindVertexArray(0);
然后在主游戏循环当中可以重复利用VAO。
glUseProgram(shaderProgram); //启动着色器程序
glBindVertexArray(VAO); //绑定目标VAO
someOpenGLFunctionThatDrawsOurTriangle();
glBindVertexArray(0); // 解绑
js事件 event.target
我们购物车里,会时不时增加和删除产品时,就会绑定事件和解绑的动作。
<ul>
<li></li>
<li></li>
</ul>
例子:在li上未来绑定事件,
$(‘ul‘).on(‘click‘,‘li‘,function(){
$(this).remove();
});
例子:在ul上绑定事件
$(‘ul‘).on(‘click‘,function(event){
var This=event.target;
$(This).remove();
})
以上是关于关于opengl的绑定和解绑的时机的主要内容,如果未能解决你的问题,请参考以下文章
VBO/FBO/DisplayLists 如何在 Haskell 的 OpenGL 绑定中工作?
关于opengl的ActiveTexture以及bindXxx函数的分析