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紋理增加了透明度,只是因爲繪製的最後一個原