2011-04-28 67 views
0

我想共享創建四個具有相同GL3上下文的QGLWidgets,所以我可以共享他們之間的VBO。我只用一個小部件就已經做了一段時間了,但它並沒有與其他人共享。 QGLWidget有一個sharewith paremeter,從我理解的自動共享他們之間的上下文,但我不知道與JOGL是多麼兼容。JOGL中的多個QWidgets共享一個VBO

我也對上下文實際創建的時間感到困惑。在一些示例中,它表示在​​中創建上下文。我不確定這是否意味着我必須先更新第一個小部件,然後才能創建輔助小部件(將sharewith粗糙表以第一個創建的小部件與當前上下文一起傳遞)。

任何人都可以提供一個簡單的例子,讓這個功能?我只需要創建四個上下文共享的GLWidgets,它們都運行GL3配置文件。

回答

0

儘管我沒有使用JOGL,但我正在做類似的事情herehere。基本的想法是,你創建一個隱藏的QGLWidget,使其當前並編譯所有的着色器,然後將它作爲shareWidget傳遞給你的子視口。無論何時您想上傳幾何圖形 使隱藏的QGLWidget處於當前狀態,並執行您的glBufferData調用 - 數據可用於其他視口上下文。