<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 22 Sep 2017, at 20:55, Kamil Zaripov <<a href="mailto:kamil@zaripov.net" class="">kamil@zaripov.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;">I don’t sure that using QQuickWindow::beforeRendering() or QQuickWindow::afterRendering() signal will help since it also uses same OpenGL context as Qt Quick Scene Graph, but I will try it.</div></div></blockquote><div><br class=""></div><div>Is that a problem? Keep in mind you can set any QSurfaceFormat as the default (before creating the first QQuickWindow, if you want to work on Mac) and hence request an arbitrary frame-buffer format or context profile, with the Qt API, and QtQuick can still use it.</div><div><br class=""></div><div>(And there is QQuickView::resetOpenGLState to avoid any state pollution)</div><div><br class=""></div><div>Of course the QQFBOItem approach is nice if you want to keep the contexts separate for some reason.</div><div><br class=""></div><br class=""><blockquote type="cite" class=""><div class=""><div class="" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><br class=""></div><div class="" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;">Solution that uses QQuickRender sound good, I will lock at FlightGear sources.</div></div></blockquote></div><br class=""><div class="">The QQuickRenderControl part isn’t pushed to FlightGear yet, I have it on a local branch since right now it’s not threadsafe, until I find a safe way to run QQuickRenderControl::sync from the OSG graphics thread, but with the main thread guaranteed to be locked. I can guess a few solutions to that but I’m hoping some people more familiar with the threading in osgViewer[base] will have some definitive answers.</div><div class=""><br class=""></div><div class="">BTW both of my solutions above rely on using my GraphicsWindowQt5 which is a port+evolution of the old GraphicsWindowQt5 to QWIndow+QOpenGLContext; that part /is/ in FlightGear already but I’m still debugging some issues, especially mouse-pointer-warping, which FlightGear uses, is not working reliably compared to the ‘native’ GraphicsWindows (Cocoa, Win32, X11, etc)</div><div class=""><br class=""></div><div class="">Kind regards,</div><div class="">James</div></body></html>