buffer-objects

    0热度

    1回答

    从gpu获取数据似乎是一个非常缓慢的任务,如果你想读取它与你的应用程序同步。一种可能是在像素缓冲区对象的帮助下异步读取。不幸的是,我无法看到这是如何完成的。 首先我创建了一个像素缓冲区对象: glGenBuffers(1, &pbo); glBindBuffer(GL_PIXEL_PACK_BUFFER, pbo); glBufferData(GL_PIXEL_PACK_BUFFER, pbo

    0热度

    1回答

    用于我用一个均匀的块这样的: uniform matrices { mat4 pv_matrix; mat4 screen_matrix; }; 与由 UniformBlockBinding明确定义相同的结合点不同着色器 。 以均匀的缓冲区对象的工作需要查询偏移是这样的: int offsets = new int[Length]; GL.GetActiveUnifo

    1热度

    1回答

    我想呈现与IBO的两个不同的三角形。我将这六个顶点存储在一个VBO中,并试图通过两个独立的IBO访问它们。问题是第一个IBO呈现,但第二个没有呈现。 createVertices和createIndices在初始化时被调用。 void createVertices() { //Vertex Data GLfloat v[] = { 0.95f, 0.75f, 0.0

    1热度

    1回答

    我想将一个非常大的内存块的内容传输到一个足够大的GPU缓冲区,然后立即改变CPU上内存的内容。事情是这样的伪代码: glBindBuffer(/*very_large_buffer*/); glBufferSubData(/*very_large_memory_chunk*/); memset(/*zeros*/, /*very_large_memory_chunk*/); 在这段代码,什