2015-12-15 59 views
2

我在使用XCB後端嵌入Qt 5時遇到了一些問題。我剛剛意識到,也許這會導致它默認爲GLX,我聽說使用EGL消除撕裂的機會更大。我也知道Qt有一個用於XCB的EGL後端,但我不知道如何在兩者之間切換。我可以使用什麼配置或運行時標誌來強制它使用一個而不是另一個?Qt 5爲XCB使用EGL後端

回答

3

QT_XCB_GL_INTEGRATION env變量設置爲xcb_egl

我不明白爲什麼這會消除撕裂,這是典型的,而不是由於缺乏VSYNC的創建,但有這麼...

+0

確定這沒有任何效果。我認爲,因爲eglfs顯然可以解決x11上的許多egl問題,可能會有所幫助。你認爲帶有X11後端的eglfs會有所作爲嗎?另外,我如何確認egl支持甚至被編譯到XCB中,並且它實際上正在使用它? – Gerharddc

+0

EGLFS是完全不同的東西,根本不使用X11(Qt打開'/ dev/fb0'或類似的東西,並使用EGL創建OpenGL環境)。爲了確保發生了什麼,爲'qt.xcb.glintegration'類別啓用一些調試日誌記錄(又稱爲「QT_LOGGING_RULES =」qt.xcb。* = true「'並運行您的應用程序)。 – peppe

+0

嗨,是的,我知道EGLFS是非常不同的,但我知道有一個X11後端,而不是標準的KMS一個它,即使它主要是爲了開發,但我不能得到那個工作。我沒有看到任何日誌記錄輸出,它是否正在寫入文件,或者我是否需要設置其他內容才能看到它? – Gerharddc