vertex-buffer

    0热度

    1回答

    我正在编写一个应用程序,将两个网格(用作关键帧)的顶点加载到两个单独的OpenGL浮点数据缓冲区中。这两个网格具有相同数量的顶点。 我想通过使用这两个缓冲区之间的线性插值计算中间帧(我可以指定插值权重为0和1之间的值)。我目前正在CPU上执行插值,但我想将计算卸载到GPU,以便更快地计算中间帧。 有没有办法做到这一点只使用OpenGL(即不是OpenCL)?如果是这样,怎么样?

    0热度

    1回答

    我正在开发一个程序,它可以计算GPU上的直方图。我正在使用OpenGL编写代码。在第一步骤中,我加载像素(RGB)的值到一个数组(arr_image)并将其上传到顶点缓冲器(vbo): GLuint vbo; glGenBuffers(1, &vbo); glBindBuffer(GL_ARRAY_BUFFER, vbo); GLuint num_input_data = width *

    -1热度

    1回答

    我试图在几何着色器中实现billboarded四边形来渲染粒子效果。几何着色器输入是点(vec3),其输出是具有位置和UV坐标(vec3,vec2)的三角形条。我已经尝试过两种顶点输入绑定的变体,但都不起作用。 如果我设置的顶点像这样结合: VkVertexInputBindingDescription binding_desc[2] = {}; binding_desc[0].binding

    0热度

    1回答

    我想用OpenGL编程一些游戏并阅读大量教程。不幸的是,我遇到了一个小问题,只是打断了我的进步。 我创建了一个“网格”类,我移交了一个数组GLfloats。这些浮标包含在VAO和VBO中。 只要我在构造函数中创建数组(使用整个初始化函数)就可以正常工作。但是如果我想将数组作为参数切换,OpenGL就不会画出来。我忘了什么吗? 这里是我的主要代码: Mesh.cpp Mesh::Mesh(GLflo

    0热度

    1回答

    我已经环顾四周,并没有发现一个答案的所有呼叫转移到设备上下文导致访问冲突(DX 11),这是问题的代码行:d3d-> GetImmediateContext() - > IASetVertexBuffers(0,1,& vertexBuffer,& stride,0); 无在参数传递的是NULL(00000000)(设备上下文也是不为空),但我仍然可以对设备上下文每个函数调用访问冲突错误。异常消息

    1热度

    1回答

    假设金属顶点着色器A更新缓冲区buf。另外假设我有第二个顶点着色器B,它在A之后编码。 B可以使用buf中的结果吗?B可能会在A结束之前开始执行,这意味着缓冲区的内容尚未准备好?

    0热度

    1回答

    我试图渲染一个像素对齐的2D使用金属四元组,但似乎无法得到它的权利。 我的顶点缓冲区的内容(如CPU端登录,在创作)是: Vertex(position: float4(0.0, 0.0, 0.5, 1.0), textureCoordinate: float2(0.0, 0.0)) Vertex(position: float4(0.0, 64.0, 0.5, 1.0), textureCoo

    5热度

    1回答

    我不明白在OpenGL中绑定点的目的是什么(例如GL_ARRAY_BUFFER)。据我所知,glGenBuffers()创建了一种指向GPU内存中某处的顶点缓冲对象的指针。 所以: glGenBuffers(1, &bufferID) 意味着我现在有一个手柄,bufferID,到显卡上1个顶点对象。现在我知道下一个步骤将是bufferID绑定到绑定点 glBindBuffer(GL_ARRAY

    0热度

    1回答

    这个问题是特定于WebGL,并假定VAOs不可用。 我试图通过限制低层次的状态变化的数量做出了3D引擎的一些小的改进。但事实证明,我是一个有点困惑使用bindBuffer和vertexAttribPointer的正确方法。 比方说,我要画两个对象: 的第一个对象使用两个缓冲区一个和ç与元素缓冲è; 第二对象使用缓冲器乙和Ç用相同的要素缓冲器ë。 缓冲器甲和乙使用相同的布局,并且两者都通过引用的位置

    1热度

    1回答

    在VB.Net中使用OpenTK。 我的渲​​染方法: ' clear the screen GL.ClearColor(Color4.Purple) GL.Clear(ClearBufferMask.ColorBufferBit Or ClearBufferMask.DepthBufferBit) ' activate shader program and set