Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. OpenGL Requirements?

OpenGL Requirements?

Scheduled Pinned Locked Moved QML and Qt Quick
3 Posts 1 Posters 3.3k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • G Offline
    G Offline
    Gary_
    wrote on last edited by
    #1

    I'm trying to run a Qt Quick Project with OpenGL. I can not get it to work. Please point me in the right direction.

    Hardware

    The hardware is an OmniChrome which supports OpenGL 1.2 (No FBOs, No Shaders, Only BackBuffer Flips). glxgears is running correctly. glxinfo is posted below.

    Does Qt Support Back Buffer?

    What I'm Trying

    I created an application that uses QGLWidget as the view. The application loads a single QML file (Mainmenu.qml) that draws a single rectangle. The outcome is that it crashes (assertion) with Direct Rending Off and just shows a black screen with Direct Rendering On.

    Output: Direct Render OFF
    The rectangle is drawn, but the application quickly crashes. I assume it is crashing when trying to render the 2nd frame.
    @# main

    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv failed for BOM: Bad file descriptor
    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
    QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
    QDeclarativeImportDatabase::addImportPath: "/usr/local/Trolltech/Qt-4.7.1/imports"
    QDeclarativeImportDatabase::addImportPath: "/usr/qtengine/imports"
    QDeclarativeImportDatabase::addImportPath: "/mnt/remote/test/engine3dtest-build"
    libGL warning: 3D driver claims to not support visual 0x23
    libGL warning: 3D driver claims to not support visual 0x24
    libGL warning: 3D driver claims to not support visual 0x25
    QDeclarativeImports(file:///mnt/remote/test/engine3dtest-build/Menutest/Mainmenu.qml)::addImport: "." -1.-1 File as ""
    QDeclarativeImports(file:///mnt/remote/test/engine3dtest-build/Menutest/Mainmenu.qml)::addImport: "Qt" 4.7 Library as ""
    QDeclarativeImports(file:///mnt/remote/test/engine3dtest-build/Menutest/Mainmenu.qml)::resolveType: "Rectangle" => "QDeclarativeRectangle"
    SAREA: fbvid=500000 fbgl=51eae0 fbtex=0 agptex=7000000
    nGL = 1
    engine3dtest: indirect_vertex_array.c:1359: __indirect_glTexCoordPointer: Assertion `a != ((void *)0)' failed.
    Aborted
    @

    Output: Direct Rendering ON
    Does not crash, but blank (Black) screen.
    @# main direct_rendering

    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv failed for BOM: Bad file descriptor
    QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
    QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
    Direct Rendering Enabled.
    QDeclarativeImportDatabase::addImportPath: "/usr/local/Trolltech/Qt-4.7.1/imports"
    QDeclarativeImportDatabase::addImportPath: "/usr/qtengine/imports"
    QDeclarativeImportDatabase::addImportPath: "/mnt/remote/test/engine3dtest-build"
    libGL warning: 3D driver claims to not support visual 0x23
    libGL warning: 3D driver claims to not support visual 0x24
    libGL warning: 3D driver claims to not support visual 0x25
    SAREA: fbvid=500000 fbgl=51eae0 fbtex=0 agptex=7000000
    nGL = 1
    QDeclarativeImports(file:///mnt/remote/test/engine3dtest-build/Menutest/Mainmenu.qml)::addImport: "." -1.-1 File as ""
    QDeclarativeImports(file:///mnt/remote/test/engine3dtest-build/Menutest/Mainmenu.qml)::addImport: "Qt" 4.7 Library as ""
    QDeclarativeImports(file:///mnt/remote/test/engine3dtest-build/Menutest/Mainmenu.qml)::resolveType: "Rectangle" => "QDeclarativeRectangle"
    SAREA: fbvid=500000 fbgl=51eae0 fbtex=0 agptex=7000000
    nGL = 1
    @

    main.cpp
    @#include <QApplication>
    #include <QDeclarativeEngine>
    #include <QDeclarativeView>
    #include <QDebug>
    #include <QGLFormat>

    int main(int argc, char **argv) {

    QApplication app(argc, argv);
    
    QStringList args = app.arguments();
    
    QGLFormat format;
    
    format.setDepth(false);
    format.setStencil(false);
    format.setSampleBuffers(false);
    format.setDoubleBuffer(false);
    format.setAlpha(false);
    format.setDirectRendering(false);
    
    for (int i = 1; i < args.count(); i++) {
        if (args.at(i) == "depth") {
            qDebug() << "Depth Enabled.";
            format.setDepth(true);
        } else if (args.at(i) == "stencil") {
            qDebug() << "Stencil Enabled.";
            format.setStencil(true);
        } else if (args.at(i) == "sample_buffers") {
            qDebug() << "Sample Buffers Enabled.";
            format.setSampleBuffers(true);
        } else if (args.at(i) == "double_buffers") {
            qDebug() << "Double Buffers Enabled.";
            format.setDoubleBuffer(true);
        } else if (args.at(i) == "alpha") {
            qDebug() << "Alpha Enabled.";
            format.setAlpha(true);
        } else if (args.at(i) == "direct_rendering") {
            qDebug() << "Direct Rendering Enabled.";
            format.setDirectRendering(true);
        }
    }
    
    QGLFormat::setDefaultFormat(format);
    
    QDeclarativeView *view = new QDeclarativeView;
    
    view->setAttribute(Qt::WA_OpaquePaintEvent);
    view->setAttribute(Qt::WA_NoSystemBackground);
    view->setAttribute(Qt::WA_DeleteOnClose);
    
    view->setViewport(new QGLWidget());
    view->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    view->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
    view->setViewportUpdateMode(QGraphicsView::FullViewportUpdate);
    view->setFrameStyle(0);
    view->setViewportUpdateMode(QGraphicsView::FullViewportUpdate);
    
    view->setFocus();
    
    view->setSource(QUrl::fromLocalFile&#40;"Mainmenu.qml"&#41;&#41;;
    
    view->show(&#41;;
    
    return app.exec(&#41;;
    

    }
    @

    Mainmenu.qml
    @import Qt 4.7

    Rectangle {
    width: 100
    height: 100
    }
    @

    1 Reply Last reply
    0
    • G Offline
      G Offline
      Gary_
      wrote on last edited by
      #2

      glxinfo
      @name of display: :0.0
      libGL warning: 3D driver claims to not support visual 0x23
      libGL warning: 3D driver claims to not support visual 0x24
      libGL warning: 3D driver claims to not support visual 0x25
      SAREA: fbvid=500000 fbgl=51eae0 fbtex=0 agptex=7000000
      nGL = 1
      display: :0 screen: 0
      direct rendering: Yes
      server glx vendor string: SGI
      server glx version string: 1.2
      server glx extensions:
      GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
      GLX_EXT_import_context, GLX_OML_swap_method, GLX_SGI_make_current_read,
      GLX_SGIS_multisample, GLX_SGIX_hyperpipe, GLX_SGIX_swap_barrier,
      GLX_SGIX_fbconfig
      client glx vendor string: SGI
      client glx version string: 1.4
      client glx extensions:
      GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
      GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory,
      GLX_MESA_swap_control, GLX_MESA_swap_frame_usage, GLX_OML_swap_method,
      GLX_OML_sync_control, GLX_SGI_make_current_read, GLX_SGI_swap_control,
      GLX_SGI_video_sync, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
      GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group
      GLX extensions:
      GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
      GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_swap_control,
      GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_SGI_video_sync,
      GLX_SGIS_multisample, GLX_SGIX_fbconfig
      OpenGL vendor string: GUE Tech
      OpenGL renderer string: TDX [CN400]
      OpenGL version string: 1.2 Mesa 6.4.1
      OpenGL extensions:
      GL_ARB_imaging, GL_ARB_multisample, GL_ARB_multitexture,
      GL_ARB_point_parameters, GL_ARB_texture_env_add,
      GL_ARB_texture_env_combine, GL_ARB_texture_mirrored_repeat,
      GL_ARB_texture_rectangle, GL_ARB_transpose_matrix, GL_ARB_window_pos,
      GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_minmax,
      GL_EXT_blend_subtract, GL_EXT_clip_volume_hint,
      GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_copy_texture,
      GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_histogram,
      GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_point_parameters,
      GL_EXT_polygon_offset, GL_EXT_rescale_normal, GL_EXT_secondary_color,
      GL_EXT_separate_specular_color, GL_EXT_shared_texture_palette,
      GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D,
      GL_EXT_texture_compression_s3tc, GL_EXT_texture_edge_clamp,
      GL_EXT_texture_env_add, GL_EXT_texture_env_combine,
      GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_texture_rectangle,
      GL_EXT_vertex_array, GL_APPLE_packed_pixels, GL_IBM_rasterpos_clip,
      GL_IBM_texture_mirrored_repeat, GL_MESA_window_pos, GL_NV_blend_square,
      GL_NV_light_max_exponent, GL_NV_texture_rectangle,
      GL_NV_texgen_reflection, GL_OES_read_format, GL_SGI_color_matrix,
      GL_SGI_color_table, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod,
      GL_S3_s3tc
      glu version: 1.3
      glu extensions:
      GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess

      visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
      id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat

      0x22 16 tc 0 16 0 r y . 5 6 5 0 0 16 0 0 0 0 0 0 0 None
      0x23 16 tc 0 16 0 r y . 5 6 5 0 0 16 8 16 16 16 0 0 0 None
      0x24 16 tc 0 24 0 r y . 5 6 5 8 0 16 8 16 16 16 16 0 0 None
      0x25 16 tc 0 24 0 r . . 5 6 5 8 0 16 8 16 16 16 16 0 0 None
      @

      1 Reply Last reply
      0
      • G Offline
        G Offline
        Gary_
        wrote on last edited by
        #3

        Bump.

        Still having this issue. Does QML support Back Buffer OpenGL?

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved