簡體   English   中英

將OpenGL FBO紋理渲染為GLXPixmap

[英]Rendering OpenGL FBO Texture to GLXPixmap

我正在編寫一些旨在執行以下操作的代碼:1.使用FBO渲染為OpenGL紋理。 2.從FBO紋理繪制到GLXPixmap,該地圖已附加到X Pixmap。 3.將X Pixmap繪制到屏幕上的窗口。

如果我用正常的OpenGL繪圖替換FBO紋理,則第3步效果很好,第2步效果很好。

但是,如果我做上面的事情,至少用我擁有的代碼,那是行不通的。 如果我給GLXPixmap提供彩色背景,並執行1-3,則屏幕上的窗口將變為白色,但是我繪制的其他內容均未顯示。

因此,我希望有人可以提供提示,或為我提供一些簡單的示例代碼。 我為此獲得的代碼相當復雜,但是如果需要,我可以嘗試編寫一個簡單的示例版本以在此處發布以進行審查。

如果最后兩個步驟有效,但未使用在第一步中創建的FBO,則可能是錯誤地初始化了FBO。 要檢查的一些事情:

  • FBO是否“幀緩沖完成”? 將所有紋理和/或渲染緩沖區附加到它之后,使用glCheckFramebufferStatus( GL_FRAMEBUFFER_COMPLETE )檢查。
  • 渲染到FBO之后,您是否有任何檢查方法(例如,使用glGetTexImage )來確定問題是寫入FBO還是從FBO讀取?
  • 您可能已經檢查過了,但是值得一問: glGetError()返回任何錯誤?

如果一切都正確地進行了檢查,則發布一些骨架設置和渲染代碼...盡管復雜程度越低越好,當然=)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM