fbo

    2热度

    1回答

    我有2种方案 - 无论是OpenGL的3.x的: 一个是Win32程序(修改讷河教程),它通过创建一个wglCreateContext窗口和GL上下文( )和wlgMakeCurrent() 一个是SDL2编程' 两个程序调用该函数: int DrawGLScene(GLvoid) { static int nFirstTime = 1; if(nFirstT

    0热度

    1回答

    我想创建FBO,但这将在所有上下文之间“共享”。 因为一个FBO是容器,不能“共享”,但只有其缓冲区,我认为做如下: 创建一个对象FBODescriptor是所需的FBO的描述符,它也包含了OpenGL的共享的缓冲区。 在每个帧,并且在处于活动状态的任何情况下,我创建FBO(因此它是可用于目前的上下文中),附连到它的缓冲器,和渲染后删除FBO容器。 以这种方式,我有一个所需的FBO可用于任何上下文

    -1热度

    1回答

    为什么“glRenderbufferStorageMultisample”给我一个无效的操作错误(1282)? 我试图渲染场景到一个多重采样FBO颜色/深度缓冲区只(这里没有纹理)&然后解决多重采样FBO到一个简单的FBO有颜色/深度纹理,但OpenGL的只是不会让我... glEnable(GL_MULTISAMPLE); glGenFramebuffers(1, &m_Id);

    1热度

    1回答

    我创建了一个FBO并将纹理绑定为其颜色附件,并且我有多个着色器程序对纹理进行一些后期处理,所有内容效果很好,但对我来说纹理可以用作输入(sampler2D)以及着色器同时输出是没有意义的。 以下是我所采取的步骤: 创建FBO fboA。 创建纹理textureA,并将其绑定为fboA的颜色附件。 调用glBindFrameBuffer将fboA绑定到帧缓冲区目标。使用着色器程序shaderA。 致

    -1热度

    1回答

    我有一个非常特定的OpenGL设置,场景中的3D几何体未呈现。在OpenGL上下文中有一些与深度相关的状态可以解释我。 这是在工作中的生产引擎中,我们添加了具有多个窗口上下文的共享上下文支持。我们正在对共享上下文拥有的帧缓冲区对象进行渲染,然后使用不同的上下文将颜色附件渲染缓冲区blitting到窗口。 清除颜色显示在窗口的结果blit中,但不是3D场景几何本身,所以我们知道帧缓冲区和渲染缓冲区对

    -1热度

    1回答

    我注意到一些奇怪的事情,当我使用帧缓冲区做屏外渲染。我将一个立方体渲染成纹理,然后将纹理渲染到飞机上。这一切都奏效了,我决定跳过深度缓冲区,所以我将block 1 & block 2(参见下面的代码)注释掉了,但它也起作用,但是,如果我保持block 1完好无损,并且只是注释掉block 2,那么飞机会变黑。 我会假设通过注释block2渲染缓冲区将只是一个渲染缓冲区,与帧缓冲区没有关联。 在每个

    0热度

    1回答

    我想使用glDrawArraysInstanced函数来加三角形。 两者的区别在于MVP矩阵。 然后我应用一个FBO 2 GL_COLOR_ATTACHMENT,并激活glDrawBuffers(2,...)。 我的顶点着色器: #version 430 core layout (location = 0) in vec3 position; uniform mat4 uModel; u

    0热度

    1回答

    我尝试实现像绘画工具一样的东西,并与刷子的问题阿尔法通道卡住。我的画笔是具有透明背景的.PNG纹理。我绘制在RGBA缓冲区中。我的代码: initFBO(...) ... glEnable(GL_BLEND); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glClearColor(1.0f, 0.0f, 0.0f, 1.0f);

    0热度

    2回答

    我正在使用OpenGL,我需要在顶点的UV坐标处将3D模型的顶点渲染为FBO。为此,我首先必须将UV坐标空间转换为屏幕空间。 我得出的结论是: uv.x * 2 - 1 uv.y * 2 - 1 ...应该做的伎俩。 我在我的顶点着色器中使用该顶点放置在这些新位置。结果是这样的: ...而应该应该是这样的: 好像它的推广。我不知道问题在哪里。

    2热度

    1回答

    我一直在opengl工作一段时间比较顺利,但最近我已经注意到,当我使用透明纹理渲染基本到我的fbo纹理(自定义帧缓冲区)时,它使得fbo纹理在像素处透明,图元的纹理是透明的。问题是这个原始背后有一些东西(纯色)已经在透明之前渲染过了。所以fbo纹理在这些像素处不应该是透明的 - 混合透明色的纯色应该会产生纯色,不是吗? 所以基本上,opengl为我的fbo纹理增加了透明度,只是因为绘制的最后一个原