2013-07-30 77 views
1

我正在研究Qt 5.1中的Qt Quick 2。很酷。但是,我沒有了解Scene Graph功能。如果我只是創建Flickable,將一堆圖像放在它上面,並在嵌入式設備的QQuickView中用EGLFS後端顯示 - 我是否使用場景圖?Qt Quick 2場景圖與EGLFS上的vsync同步嗎?

如果是,爲什麼我看到撕裂 - 場景圖應該是VSynced?

如果不是 - 我應該怎麼做才能將它與Flickable一起使用?或者是否意味着我應該從頭開始實施?

我的應用程序基本上允許瀏覽無限生成的圖像。

回答

2

QtQuick2已作爲其只有後端的場景圖。所以是的,你正在使用它。這是否會變得異常複雜,這是另一回事 - 主要取決於場景圖是否使用渲染線程,以及驅動程序的質量(即,如果交換緩衝區將等待vsync)。您可以嘗試

  1. 運行與環境變量QML_RENDER_TIMING設置爲非零值,您的應用程序;這將爲您的應用程序打印幀統計信息。如果你的框架的長度不是垂直同步間隔的整數倍,那麼你就不必VSYNC

  2. 運行與環境變量QT_QPA_EGLFS_FORCEVSYNC,這將嘗試使用FBIO_WAITFORVSYNC IOCTL您的應用程序嘗試與同步垂直同步。