Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
I find it very strange that qmlscene without an input file would produce the same apitrace as a qmlscene with a file. The apitrace is a reflection what we try to draw after all and that is highly dependent on what the input is. What does the trace look like? It is a long-shot, but you could try https://codereview.qt-project.org/#change,69666 cheers, Gunnar Fra: interest-bounces+gunnar.sletta=digia@qt-project.org [interest-bounces+gunnar.sletta=digia@qt-project.org] på vegne av Narayanarao Rao [nar...@gmail.com] Sendt: 6. november 2013 00:05 To: Interest@qt-project.org Emne: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform I am able to build qtbase and qtdeclarative from git with a few changes for our MIPS 74kf -mdspr2 platform. I use eglfs plugin. If I don't pass any qml file to qmlscene, eglfs does gltexsubimage2d of a qimage (file selection dialog). That works fine. I can see the file selection dialog, though with very small text. eglfs with Qt 5.0 works fine - I can see output on screen for all qmls. We use Qt 4.8 simplegl for our production releases and that works fine too. However, with Qt 5.2 new scenegraph changes, if I pass a qml file to qmlscene, I just see the screen cleared to white and nothing gets drawn after that. When I enable render_timing etc. environment veriables, I see everything printed normally - I see that it takes some time for render, sync, animations etc. It also takes expected CPU when doing QML animations. I tried both qmls with an image as well as rect. I suspect our GPU does not like the new shader code. I ported apitrace to our platform and compared traces for case where I see output on screen (qmlscene without qml file input) and where I don't see output on screen (qmlscene with any qml file). Both look similar except for differences in vertex and fragment shaders. Anything I should try? ___ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest
Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
Thanks for the reply. I only said they look similar, not the same. Of course, I do not understand OpenGL very well. I am now trying to read and understand what each line of the apitrace means and write a standalone opengl c app that only makes those calls. I am relatively new to opengl, so bear with me.. One difference I found in the traces is the following sequence of calls: 194 glEnableVertexAttribArray(index = 0) 195 glEnableVertexAttribArray(index = 1) 196 glEnableVertexAttribArray(index = 2) 197 glUseProgram(program = 1) 198 glBindTexture(target = GL_TEXTURE_2D, texture = 1) 199 glUniformMatrix4fv(location = 0, count = 1, transpose = GL_FALSE, value = {0.0015625, 0, 0, 0, 0, -0.00278, 0, 0, 0, 0, 1, 0, -1, 1, 0, 1}) 200 glVertexAttribPointer(index = 0, size = 2, type = GL_FLOAT, normalized = GL_FALSE, stride = 16, pointer = NULL) 202 glFlush() 201 glDrawElements(mode = GL_TRIANGLE_STRIP, count = 6, type = GL_UNSIGNED_SHORT, indices = 0x50) 203 glEnable(cap = GL_BLEND) 204 glDepthMask(flag = GL_FALSE) 205 glBlendFunc(sfactor = GL_ONE, dfactor = GL_ONE_MINUS_SRC_ALPHA) 206 glDisableVertexAttribArray(index = 0) 207 glDisableVertexAttribArray(index = 1) 208 glDisableVertexAttribArray(index = 2) The above trace is for the non-working case. glVertexAttribPointer is NULL. Is this expected? I am still trying to workout where in Qt this call is being made from. The corresponding trace for the working case (qmlscene without qml) 309 glEnableVertexAttribArray(index = 1) 310 glEnableVertexAttribArray(index = 0) 311 glBindTexture(target = GL_TEXTURE_2D, texture = 1) 312 glUniform1i(location = 1, v0 = 1) 313 glVertexAttribPointer(index = 0, size = 2, type = GL_FLOAT, normalized = GL_FALSE, stride = 8, pointer = blob(32)) 314 glDrawArrays(mode = GL_TRIANGLE_FAN, first = 0, count = 4) 315 glBindTexture(target = GL_TEXTURE_2D, texture = 0) 316 glDisableVertexAttribArray(index = 1) 317 glDisableVertexAttribArray(index = 0) ___ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest
Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
Here is the full apitrace for the non working case.. 0 eglBindAPI(api = EGL_OPENGL_ES_API) = EGL_TRUE 1 eglGetDisplay(display_id = NULL) = 0x432ff0 2 eglInitialize(dpy = 0x432ff0, major = 1, minor = 4) = EGL_TRUE 3 eglChooseConfig(dpy = 0x432ff0, attrib_list = {EGL_RED_SIZE, 0, EGL_GREEN_SIZE, 0, EGL_BLUE_SIZE, 0, EGL_ALPHA_SIZE, 0, EGL_DEPTH_SIZE, 24, EGL_STENCIL_SIZE, 8, EGL_SAMPLES, 0, EGL_SAMPLE_BUFFERS, 0, EGL_SURFACE_TYPE, EGL_WINDOW_BIT, EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, EGL_NONE}, configs = NULL, config_size = 0, num_config = 21) = EGL_TRUE 4 eglChooseConfig(dpy = 0x432ff0, attrib_list = {EGL_RED_SIZE, 0, EGL_GREEN_SIZE, 0, EGL_BLUE_SIZE, 0, EGL_ALPHA_SIZE, 0, EGL_DEPTH_SIZE, 24, EGL_STENCIL_SIZE, 8, EGL_SAMPLES, 0, EGL_SAMPLE_BUFFERS, 0, EGL_SURFACE_TYPE, EGL_WINDOW_BIT, EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, EGL_NONE}, configs = {NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL}, config_size = 21, num_config = 21) = EGL_TRUE 5 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BUFFER_SIZE, value = 32) = EGL_TRUE 6 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_ALPHA_SIZE, value = 8) = EGL_TRUE 7 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BLUE_SIZE, value = 8) = EGL_TRUE 8 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_GREEN_SIZE, value = 8) = EGL_TRUE 9 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_RED_SIZE, value = 8) = EGL_TRUE 10 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_DEPTH_SIZE, value = 24) = EGL_TRUE 11 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_STENCIL_SIZE, value = 8) = EGL_TRUE 12 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_CONFIG_CAVEAT, value = 12344) = EGL_TRUE 13 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_CONFIG_ID, value = 61) = EGL_TRUE 14 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_LEVEL, value = 0) = EGL_TRUE 15 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_PBUFFER_HEIGHT, value = 2048) = EGL_TRUE 16 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_PBUFFER_PIXELS, value = 4194304) = EGL_TRUE 17 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_PBUFFER_WIDTH, value = 2048) = EGL_TRUE 18 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_NATIVE_RENDERABLE, value = 1) = EGL_TRUE 19 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_NATIVE_VISUAL_ID, value = 0) = EGL_TRUE 20 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_NATIVE_VISUAL_TYPE, value = 32) = EGL_TRUE 21 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_SAMPLES, value = 0) = EGL_TRUE 22 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_SAMPLE_BUFFERS, value = 0) = EGL_TRUE 23 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_SURFACE_TYPE, value = 391) = EGL_TRUE 24 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_TYPE, value = 12344) = EGL_TRUE 25 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_BLUE_VALUE, value = -1) = EGL_TRUE 26 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_GREEN_VALUE, value = -1) = EGL_TRUE 27 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_RED_VALUE, value = -1) = EGL_TRUE 28 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BIND_TO_TEXTURE_RGB, value = 0) = EGL_TRUE 29 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BIND_TO_TEXTURE_RGBA, value = 1) = EGL_TRUE 30 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MIN_SWAP_INTERVAL, value = 1) = EGL_TRUE 31 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_SWAP_INTERVAL, value = 1) = EGL_TRUE 32 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_CONFIG_ID, value = 61) = EGL_TRUE 33 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_RED_SIZE, value = 8) = EGL_TRUE 34 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_GREEN_SIZE, value = 8) = EGL_TRUE 35 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BLUE_SIZE, value = 8) = EGL_TRUE 36 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_ALPHA_SIZE, value = 8) = EGL_TRUE 37 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_DEPTH_SIZE, value = 24) = EGL_TRUE 38 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_STENCIL_SIZE, value = 8) = EGL_TRUE 39 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_SAMPLES, value = 0) = EGL_TRUE 40 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute =
Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
I tried with 2 QMLS.. one qml having only opaque image and another qml with opacity as 0.8. Both do not work. The first trace snippet was with opaque image. The second full trace was with opacity as 0.8. Just explaining the difference between the two traces, in case it is confusing. On Wed, Nov 6, 2013 at 3:46 PM, Narayanarao Rao nar...@gmail.com wrote: Here is the full apitrace for the non working case.. 0 eglBindAPI(api = EGL_OPENGL_ES_API) = EGL_TRUE 1 eglGetDisplay(display_id = NULL) = 0x432ff0 2 eglInitialize(dpy = 0x432ff0, major = 1, minor = 4) = EGL_TRUE 3 eglChooseConfig(dpy = 0x432ff0, attrib_list = {EGL_RED_SIZE, 0, EGL_GREEN_SIZE, 0, EGL_BLUE_SIZE, 0, EGL_ALPHA_SIZE, 0, EGL_DEPTH_SIZE, 24, EGL_STENCIL_SIZE, 8, EGL_SAMPLES, 0, EGL_SAMPLE_BUFFERS, 0, EGL_SURFACE_TYPE, EGL_WINDOW_BIT, EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, EGL_NONE}, configs = NULL, config_size = 0, num_config = 21) = EGL_TRUE 4 eglChooseConfig(dpy = 0x432ff0, attrib_list = {EGL_RED_SIZE, 0, EGL_GREEN_SIZE, 0, EGL_BLUE_SIZE, 0, EGL_ALPHA_SIZE, 0, EGL_DEPTH_SIZE, 24, EGL_STENCIL_SIZE, 8, EGL_SAMPLES, 0, EGL_SAMPLE_BUFFERS, 0, EGL_SURFACE_TYPE, EGL_WINDOW_BIT, EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, EGL_NONE}, configs = {NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL}, config_size = 21, num_config = 21) = EGL_TRUE 5 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BUFFER_SIZE, value = 32) = EGL_TRUE 6 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_ALPHA_SIZE, value = 8) = EGL_TRUE 7 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BLUE_SIZE, value = 8) = EGL_TRUE 8 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_GREEN_SIZE, value = 8) = EGL_TRUE 9 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_RED_SIZE, value = 8) = EGL_TRUE 10 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_DEPTH_SIZE, value = 24) = EGL_TRUE 11 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_STENCIL_SIZE, value = 8) = EGL_TRUE 12 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_CONFIG_CAVEAT, value = 12344) = EGL_TRUE 13 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_CONFIG_ID, value = 61) = EGL_TRUE 14 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_LEVEL, value = 0) = EGL_TRUE 15 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_PBUFFER_HEIGHT, value = 2048) = EGL_TRUE 16 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_PBUFFER_PIXELS, value = 4194304) = EGL_TRUE 17 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_PBUFFER_WIDTH, value = 2048) = EGL_TRUE 18 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_NATIVE_RENDERABLE, value = 1) = EGL_TRUE 19 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_NATIVE_VISUAL_ID, value = 0) = EGL_TRUE 20 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_NATIVE_VISUAL_TYPE, value = 32) = EGL_TRUE 21 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_SAMPLES, value = 0) = EGL_TRUE 22 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_SAMPLE_BUFFERS, value = 0) = EGL_TRUE 23 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_SURFACE_TYPE, value = 391) = EGL_TRUE 24 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_TYPE, value = 12344) = EGL_TRUE 25 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_BLUE_VALUE, value = -1) = EGL_TRUE 26 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_GREEN_VALUE, value = -1) = EGL_TRUE 27 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_TRANSPARENT_RED_VALUE, value = -1) = EGL_TRUE 28 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BIND_TO_TEXTURE_RGB, value = 0) = EGL_TRUE 29 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BIND_TO_TEXTURE_RGBA, value = 1) = EGL_TRUE 30 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MIN_SWAP_INTERVAL, value = 1) = EGL_TRUE 31 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_MAX_SWAP_INTERVAL, value = 1) = EGL_TRUE 32 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_CONFIG_ID, value = 61) = EGL_TRUE 33 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_RED_SIZE, value = 8) = EGL_TRUE 34 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_GREEN_SIZE, value = 8) = EGL_TRUE 35 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute = EGL_BLUE_SIZE, value = 8) = EGL_TRUE 36 eglGetConfigAttrib(dpy = 0x432ff0, config = 0x432e88, attribute =
Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
I tried the patch you suggested and it works. What does this mean? Are there any performance implications to this? ___ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest
Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
A buffer offset of 0 is correct since it is relative to VBO's memory which is bound just above the lines you pasted down below. Fra: Narayanarao Rao [nar...@gmail.com] Sendt: 6. november 2013 11:02 To: Sletta Gunnar Cc: Interest@qt-project.org Emne: Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform Thanks for the reply. I only said they look similar, not the same. Of course, I do not understand OpenGL very well. I am now trying to read and understand what each line of the apitrace means and write a standalone opengl c app that only makes those calls. I am relatively new to opengl, so bear with me.. One difference I found in the traces is the following sequence of calls: 194 glEnableVertexAttribArray(index = 0) 195 glEnableVertexAttribArray(index = 1) 196 glEnableVertexAttribArray(index = 2) 197 glUseProgram(program = 1) 198 glBindTexture(target = GL_TEXTURE_2D, texture = 1) 199 glUniformMatrix4fv(location = 0, count = 1, transpose = GL_FALSE, value = {0.0015625, 0, 0, 0, 0, -0.00278, 0, 0, 0, 0, 1, 0, -1, 1, 0, 1}) 200 glVertexAttribPointer(index = 0, size = 2, type = GL_FLOAT, normalized = GL_FALSE, stride = 16, pointer = NULL) 202 glFlush() 201 glDrawElements(mode = GL_TRIANGLE_STRIP, count = 6, type = GL_UNSIGNED_SHORT, indices = 0x50) 203 glEnable(cap = GL_BLEND) 204 glDepthMask(flag = GL_FALSE) 205 glBlendFunc(sfactor = GL_ONE, dfactor = GL_ONE_MINUS_SRC_ALPHA) 206 glDisableVertexAttribArray(index = 0) 207 glDisableVertexAttribArray(index = 1) 208 glDisableVertexAttribArray(index = 2) The above trace is for the non-working case. glVertexAttribPointer is NULL. Is this expected? I am still trying to workout where in Qt this call is being made from. The corresponding trace for the working case (qmlscene without qml) 309 glEnableVertexAttribArray(index = 1) 310 glEnableVertexAttribArray(index = 0) 311 glBindTexture(target = GL_TEXTURE_2D, texture = 1) 312 glUniform1i(location = 1, v0 = 1) 313 glVertexAttribPointer(index = 0, size = 2, type = GL_FLOAT, normalized = GL_FALSE, stride = 8, pointer = blob(32)) 314 glDrawArrays(mode = GL_TRIANGLE_FAN, first = 0, count = 4) 315 glBindTexture(target = GL_TEXTURE_2D, texture = 0) 316 glDisableVertexAttribArray(index = 1) 317 glDisableVertexAttribArray(index = 0) ___ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest
Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
The scene graph renderer uses the same buffer object for both indices and vertices. This is within spec, but I worried that some drivers might like it less than others. This setup is the first one where it doesn't work. The patch doubles the amount of uploads we do, but the total memory is unchanged. It will be a small overall additional cost, and if it is needed, it is needed. cheers, Gunnar Fra: Narayanarao Rao [nar...@gmail.com] Sendt: 6. november 2013 13:10 To: Sletta Gunnar Cc: Interest@qt-project.org Emne: Re: [Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform I tried the patch you suggested and it works. What does this mean? Are there any performance implications to this? ___ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest
[Interest] Qt 5.2 scenegraph does not draw anything for our MIPS cpu/VIVANTE GPU platform
I am able to build qtbase and qtdeclarative from git with a few changes for our MIPS 74kf -mdspr2 platform. I use eglfs plugin. If I don't pass any qml file to qmlscene, eglfs does gltexsubimage2d of a qimage (file selection dialog). That works fine. I can see the file selection dialog, though with very small text. eglfs with Qt 5.0 works fine - I can see output on screen for all qmls. We use Qt 4.8 simplegl for our production releases and that works fine too. However, with Qt 5.2 new scenegraph changes, if I pass a qml file to qmlscene, I just see the screen cleared to white and nothing gets drawn after that. When I enable render_timing etc. environment veriables, I see everything printed normally - I see that it takes some time for render, sync, animations etc. It also takes expected CPU when doing QML animations. I tried both qmls with an image as well as rect. I suspect our GPU does not like the new shader code. I ported apitrace to our platform and compared traces for case where I see output on screen (qmlscene without qml file input) and where I don't see output on screen (qmlscene with any qml file). Both look similar except for differences in vertex and fragment shaders. Anything I should try? ___ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest