WebGL renders only white canvas in 5.11



  • I have successfully compiled Qt including QtWebEngine (branch 5.11, checked out yesterday) from git sources. The most simple and trivial browser example using QtWebEngine works well, except WebGL does not render anything - the HTML canvas remains white. (CSS 3D transforms work though). There are no errors or warnings in the Chromium development console. Setting QWebEngineSettings::WebGLEnabled was not effective (it's on by default anyway).

    Running the same example program with a system-installed Qt 5.7.1 (Debian 9 "Stretch") works. Also, running WebGL with a recent QtWebKit (from git) on Qt 5.11 works.

    Any ideas how to make WebGL rendering in 5.11 work? Is this perhaps a bug? Any hints appreciated.

    My system:

    CPU: Intel Core i5-4570
    GPU: Cape Verde XT [Radeon HD 7770/8760 / R7 250X]
    OS: Debian 9 ("Stretch")

    Built with:

    git clone https://github.com/qt/qt5.git
    cd qt5
    (commit was 3ba940924de24c90ec1)
    ./init-repository -f --branch
    ./configure --prefix=$PREFIX -opensource -confirm-license -nomake examples -nomake tests --compile-examples=no -webengine-ffmpeg -skip qtquick1
    make -j4
    make install
    

    The ./configure script reported "yes" for all OpenGL related features.

    The trivial example program used:

    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent)
    {
        qputenv("QTWEBENGINE_REMOTE_DEBUGGING", "9000");
    
        QWebEngineView *view = new QWebEngineView(this);
        this->setCentralWidget(view);
    
        view->setUrl(QUrl("https://www.w3schools.com/Css/css3_3dtransforms.asp")); // works
        view->setUrl(QUrl("https://developer.mozilla.org/en-US/docs/Web/API/WebGL_API/Basic_2D_animation_example")); // does not work
    

    Thanks.



  • Additional info:

    I'm using KDE on X (no Wayland).

    The output of ./configure :

    + cd qtbase
    + /mnt/files/Public/programs/qt5/qtbase/configure -top-level --prefix=/home/michael/progs/qt -opensource -confirm-license -nomake examples -nomake tests --compile-examples=no -webengine-ffmpeg -skip qtquick1
    <srcbase> = /mnt/files/Public/programs/qt5/qtbase 
    <bldbase> = /mnt/files/Public/programs/qt5/qtbase 
    <outbase> = /mnt/files/Public/programs/qt5/qtbase 
    Creating qmake...
    .Done.
    Info: creating stash file /mnt/files/Public/programs/qt5/.qmake.stash
    
    This is the Qt Open Source Edition.
    
    You have already accepted the terms of the Open Source license.
    
    Running configuration tests...
    Checking for gold linker... yes
    Checking for machine tuple... yes
    Checking for valid makespec... yes
    Checking for target architecture... x86_64
    Checking for SSE2 instructions... yes
    Checking for AES new instructions... yes
    Checking for alloca() in alloca.h... yes
    Checking for SSE3 instructions... yes
    Checking for SSSE3 instructions... yes
    Checking for SSE4.1 instructions... yes
    Checking for SSE4.2 instructions... yes
    Checking for AVX instructions... yes
    Checking for AVX2 instructions... yes
    Checking for AVX512 F instructions... yes
    Checking for AVX512 BW instructions... yes
    Checking for AVX512 CD instructions... yes
    Checking for AVX512 DQ instructions... yes
    Checking for AVX512 ER instructions... yes
    Checking for AVX512 IFMA instructions... yes
    Checking for AVX512 PF instructions... yes
    Checking for AVX512 VBMI instructions... yes
    Checking for AVX512 VL instructions... yes
    Checking for C++14 support... yes
    Checking for C++1z support... yes
    Checking for pkg-config... yes
    Checking for D-Bus >= 1.2... yes
    Checking for new dtags support... yes
    Checking for F16C instructions... yes
    Checking for D-Bus >= 1.2 (host)... yes
    Checking for udev... yes
    Checking for POSIX fallocate()... yes
    Checking for precompiled header support... yes
    Checking for RDRAND instruction... yes
    Checking for symbol visibility support... yes
    Checking for -Bsymbolic-functions support... yes
    Checking for SHA new instructions... yes
    Checking for STL compatibility... yes
    Checking for zlib... yes
    Checking for Intrinsics without -mXXX argument... yes
    Checking for clock_gettime()... yes
    Checking for POSIX monotonic clock... yes
    Checking for C++11 <future>... yes
    Checking for dlopen()... yes
    Checking for eventfd... yes
    Checking for futimens()... yes
    Checking for getauxval()... yes
    Checking for getentropy()... no
    Checking for GLib... yes
    Checking for POSIX iconv... yes
    Checking for ICU... yes
    Checking for inotify... yes
    Checking for SysV IPC... yes
    Checking for linkat()... yes
    Checking for ppoll()... yes
    Checking for renameat2()... no
    Checking for slog2... no
    Checking for statx() in libc... no
    Checking for 64 bit atomics... yes
    Checking for DoubleConversion... yes
    Checking for PCRE2... no
    Checking for O_CLOEXEC... yes
    Checking for C++11 <random>... yes
    Checking for working std::atomic for function pointers... yes
    Checking for getifaddrs()... yes
    Checking for IPv6 ifname... yes
    Checking for Linux AF_NETLINK sockets... yes
    Checking for OpenSSL Headers... yes
    Checking for OpenSSL 1.1 support... yes
    Checking for XCB >= 1.5 (core)... yes
    Checking for atspi... yes
    Checking for Desktop OpenGL... yes
    Checking for EGL... yes
    Checking for XCB Xlib... yes
    Checking for EGL on X11... yes
    Checking for Broadcom EGL (Raspberry Pi)... no
    Checking for EGLDevice... yes
    Checking for KMS... yes
    Checking for GBM... yes
    Checking for Mali EGL... no
    Checking for Mali 2 EGL... no
    Checking for i.Mx6 EGL... no
    Checking for evdev... yes
    Checking for FreeType... yes
    Checking for Fontconfig... yes
    Checking for libinput... yes
    Checking for axis API in libinput... yes
    Checking for LinuxFB... yes
    Checking for mtdev... yes
    Checking for OpenVG... no
    Checking for default QPA platform... xcb
    Checking for HarfBuzz... no
    Checking for libjpeg... yes
    Checking for libpng... yes
    Checking for XCB (extensions)... yes
    Checking for tslib... no
    Checking for Vulkan... no
    Checking for X11 prefix... /usr
    Checking for XCB GLX... yes
    Checking for XLib... yes
    Checking for XRender for native painting... yes
    Checking for XCB XRender... yes
    Checking for X11 session management... yes
    Checking for Xinput2... yes
    Checking for XCB XKB >= 1.10... yes
    Checking for xkbcommon-x11 >= 0.4.1... yes
    Checking for xkbcommon... yes
    Checking for GTK+ >= 3.6... yes
    Checking for CUPS... yes
    Checking for DB2 (IBM)... no
    Checking for InterBase... no
    Checking for MySQL... yes
    Checking for OCI (Oracle)... no
    Checking for ODBC... yes
    Checking for PostgreSQL... yes
    Checking for SQLite (version 2)... yes
    Checking for TDS (Sybase)... yes
    Checking for Socket CAN... yes
    Checking for Socket CAN FD... yes
    Checking for Direct3D 12... no
    Checking for SDL2... no
    Checking for Assimp... no
    Checking for Autodesk FBX... no
    Checking for Wayland client library... yes
    Checking for Wayland cursor library... yes
    Checking for wayland-scanner... yes
    Checking for DRM EGL Server... yes
    Checking for libhybris EGL Server... no
    Checking for Wayland EGL library... yes
    Checking for XComposite... yes
    Checking for GLX... yes
    Checking for wayland-server... yes
    Checking for BlueZ... no
    Checking for sensorfw... no
    Checking for Gypsy... no
    Checking for WinRT Geolocation API... no
    Checking for ALSA... yes
    Checking for GStreamer 1.0... yes
    Checking for GStreamer App 1.0... yes
    Checking for GStreamer encoding-profile.h... yes
    Checking for GStreamer Photography 1.0... yes
    Checking for Video for Linux... yes
    Checking for OpenAL... no
    Checking for PulseAudio >= 0.9.10... yes
    Checking for libresourceqt5... no
    Checking for alsa... yes
    Checking for bison... yes
    Checking for embedded... no
    Checking for flex... yes
    Checking for gperf... yes
    Checking for host pkg-config... /usr/bin/pkg-config
    Checking for pulseaudio >= 0.9.10... yes
    Checking for python2... /usr/bin/python2
    Checking for d-bus... yes
    Checking for libavcodec libavformat libavutil... yes
    Checking for opus... yes
    Checking for libwebp, libwebpmux and libwebpdemux... yes
    Checking for fontconfig... yes
    Checking for glib-2.0 >= 2.32.0... yes
    Checking for glibc > 2.16... yes
    Checking for jsoncpp... yes
    Checking for khr... yes
    Checking for lcms2... yes
    Checking for libdrm... yes
    Checking for libevent... yes
    Checking for srtp... no
    Checking for libvpx... no
    Checking for libxml2 and libxslt... yes
    Checking for libxml2 configured with icuuc... yes
    Checking for minizip... yes
    Checking for system ninja... yes
    Checking for nss... yes
    Checking for libpng >= 1.6.0... yes
    Checking for protobuf... no
    Checking for re2... no
    Checking for snappy... no
    Checking for xcomposite... yes
    Checking for xcursor... yes
    Checking for xi... yes
    Checking for xrandr... yes
    Checking for xtst... yes
    Checking for zlib... yes
    Done running configuration tests.
    
    Configure summary:
    
    Build type: linux-g++ (x86_64, CPU features: mmx sse sse2)
    Configuration: use_gold_linker sse2 aesni sse3 ssse3 sse4_1 sse4_2 avx avx2 avx512f avx512bw avx512cd avx512dq avx512er avx512ifma avx512pf avx512vbmi avx512vl enable_new_dtags f16c largefile precompile_header rdrnd shani x86SimdAlways shared rpath release c++11 c++14 c++1z concurrent dbus reduce_exports reduce_relocations stl
    Build options:
      Mode ................................... release
      Optimize release build for size ........ no
      Building shared libraries .............. yes
      Using C++ standard ..................... C++1z
      Using ccache ........................... no
      Using gold linker ...................... yes
      Using new DTAGS ........................ yes
      Using precompiled headers .............. yes
      Using LTCG ............................. no
      Target compiler supports:
        SSE .................................. SSE2 SSE3 SSSE3 SSE4.1 SSE4.2
        AVX .................................. AVX AVX2
        AVX512 ............................... F ER CD PF DQ BW VL IFMA VBMI
        Other x86 ............................ AES F16C RDRAND SHA
        Intrinsics without -mXXX option ...... yes
      Build parts ............................ libs tools
    Qt modules and options:
      Qt Concurrent .......................... yes
      Qt D-Bus ............................... yes
      Qt D-Bus directly linked to libdbus .... yes
      Qt Gui ................................. yes
      Qt Network ............................. yes
      Qt Sql ................................. yes
      Qt Testlib ............................. yes
      Qt Widgets ............................. yes
      Qt Xml ................................. yes
    Support enabled for:
      Using pkg-config ....................... yes
      udev ................................... yes
      Using system zlib ...................... yes
    Qt Core:
      DoubleConversion ....................... yes
        Using system DoubleConversion ........ yes
      GLib ................................... yes
      iconv .................................. no
      ICU .................................... yes
      Tracing backend ........................ <none>
      Logging backends:
        journald ............................. no
        syslog ............................... no
        slog2 ................................ no
      Using system PCRE2 ..................... no
    Qt Network:
      getifaddrs() ........................... yes
      IPv6 ifname ............................ yes
      libproxy ............................... no
      Linux AF_NETLINK ....................... yes
      OpenSSL ................................ yes
        Qt directly linked to OpenSSL ........ no
      OpenSSL 1.1 ............................ yes
      SCTP ................................... no
      Use system proxies ..................... yes
    Qt Gui:
      Accessibility .......................... yes
      FreeType ............................... yes
        Using system FreeType ................ yes
      HarfBuzz ............................... yes
        Using system HarfBuzz ................ no
      Fontconfig ............................. yes
      Image formats:
        GIF .................................. yes
        ICO .................................. yes
        JPEG ................................. yes
          Using system libjpeg ............... yes
        PNG .................................. yes
          Using system libpng ................ yes
      EGL .................................... yes
      OpenVG ................................. no
      OpenGL:
        Desktop OpenGL ....................... yes
        OpenGL ES 2.0 ........................ no
        OpenGL ES 3.0 ........................ no
        OpenGL ES 3.1 ........................ no
        OpenGL ES 3.2 ........................ no
      Vulkan ................................. no
      Session Management ..................... yes
    Features used by QPA backends:
      evdev .................................. yes
      libinput ............................... yes
      INTEGRITY HID .......................... no
      mtdev .................................. yes
      tslib .................................. no
      xkbcommon-evdev ........................ yes
    QPA backends:
      DirectFB ............................... no
      EGLFS .................................. yes
      EGLFS details:
        EGLFS OpenWFD ........................ no
        EGLFS i.Mx6 .......................... no
        EGLFS i.Mx6 Wayland .................. no
        EGLFS RCAR ........................... no
        EGLFS EGLDevice ...................... yes
        EGLFS GBM ............................ yes
        EGLFS VSP2 ........................... no
        EGLFS Mali ........................... no
        EGLFS Raspberry Pi ................... no
        EGL on X11 ........................... yes
      LinuxFB ................................ yes
      VNC .................................... yes
      Mir client ............................. no
      X11:
        Using system-provided XCB libraries .. yes
        EGL on X11 ........................... yes
        Xinput2 .............................. yes
        XCB XKB .............................. yes
        XLib ................................. yes
        XCB render ........................... yes
        XCB GLX .............................. yes
        XCB Xlib ............................. yes
        Using system-provided xkbcommon ...... yes
        Native painting (experimental) ....... yes
    Qt Widgets:
      GTK+ ................................... yes
      Styles ................................. Fusion Windows
    Qt PrintSupport:
      CUPS ................................... yes
    Qt Sql:
      DB2 (IBM) .............................. no
      InterBase .............................. no
      MySql .................................. yes
      OCI (Oracle) ........................... no
      ODBC ................................... yes
      PostgreSQL ............................. yes
      SQLite2 ................................ yes
      SQLite ................................. yes
        Using system provided SQLite ......... no
      TDS (Sybase) ........................... yes
    Qt SerialBus:
      Socket CAN ............................. yes
      Socket CAN FD .......................... yes
    QtXmlPatterns:
      XML schema support ..................... yes
    Qt QML:
      QML network support .................... yes
      QML debugging and profiling support .... yes
    Qt Quick:
      Direct3D 12 ............................ no
      AnimatedImage item ..................... yes
      Canvas item ............................ yes
      Support for Qt Quick Designer .......... yes
      Flipable item .......................... yes
      GridView item .......................... yes
      ListView item .......................... yes
      Path support ........................... yes
      PathView item .......................... yes
      Positioner items ....................... yes
      Repeater item .......................... yes
      ShaderEffect item ...................... yes
      Sprite item ............................ yes
    Qt Gamepad:
      SDL2 ................................... no
    Qt 3D:
      Assimp ................................. yes
      System Assimp .......................... no
      Output Qt3D Job traces ................. no
      Output Qt3D GL traces .................. no
      Use SSE2 instructions .................. yes
      Use AVX2 instructions .................. no
      Aspects:
        Render aspect ........................ yes
        Input aspect ......................... yes
        Logic aspect ......................... yes
        Animation aspect ..................... yes
        Extras aspect ........................ yes
    Qt 3D GeometryLoaders:
      Autodesk FBX ........................... no
    Qt Wayland Drivers:
      EGL .................................... yes
      Raspberry Pi ........................... no
      XComposite EGL ......................... yes
      XComposite GLX ......................... yes
      DRM EGL ................................ yes
      libhybris EGL .......................... no
    Qt Wayland Client ........................ yes
    Qt Wayland Compositor .................... yes
    Qt Wayland Compositor Layer Plugins:
      VSP2 hardware layer integration ........ no
    Qt Bluetooth:
      BlueZ .................................. no
      BlueZ Low Energy ....................... no
      Linux Crypto API ....................... no
      WinRT Bluetooth API (desktop & UWP) .... no
    Qt Sensors:
      sensorfw ............................... no
    Qt Quick Controls 2:
      Styles ................................. Default Fusion Imagine Material Universal
    Qt Quick Templates 2:
      Hover support .......................... yes
      Multi-touch support .................... yes
    Qt Positioning:
      Gypsy GPS Daemon ....................... no
      WinRT Geolocation API .................. no
    Qt Location:
      Qt.labs.location experimental QML plugin . yes
      Geoservice plugins:
        OpenStreetMap ........................ yes
        HERE ................................. yes
        Esri ................................. yes
        Mapbox ............................... yes
        MapboxGL ............................. yes
        Itemsoverlay ......................... yes
    Qt Multimedia:
      ALSA ................................... yes
      GStreamer 1.0 .......................... yes
      GStreamer 0.10 ......................... no
      Video for Linux ........................ yes
      OpenAL ................................. no
      PulseAudio ............................. yes
      Resource Policy (libresourceqt5) ....... no
      Windows Audio Services ................. no
      DirectShow ............................. no
      Windows Media Foundation ............... no
    Qt WebEngine:
      Embedded build ......................... no
      Pepper Plugins ......................... yes
      Printing and PDF ....................... yes
      Proprietary Codecs ..................... no
      Spellchecker ........................... yes
      Native Spellchecker .................... no
      WebRTC ................................. yes
      Use System Ninja ....................... yes
      Geolocation ............................ yes
      Use v8 snapshot ........................ yes
      Use ALSA ............................... yes
      Use PulseAudio ......................... yes
      Optional system libraries used:
        re2 .................................. no
        icu .................................. no
        libwebp, libwebpmux and libwebpdemux . yes
        opus ................................. yes
        ffmpeg ............................... yes
        libvpx ............................... no
        snappy ............................... no
        libsrtp .............................. no
        glib ................................. yes
        zlib ................................. yes
        minizip .............................. yes
        libevent ............................. yes
        jsoncpp .............................. yes
        protobuf ............................. no
        libxml2 and libxslt .................. yes
        lcms2 ................................ yes
        png .................................. yes
        harfbuzz ............................. no
      Required system libraries:
        fontconfig ........................... yes
        dbus ................................. yes
        nss .................................. yes
        khr .................................. yes
        glibc ................................ yes
      Required system libraries for qpa-xcb:
        libdrm ............................... yes
        xcomposite ........................... yes
        xcursor .............................. yes
        xi ................................... yes
        xrandr ............................... yes
        xtst ................................. yes
    
    Note: Also available for Linux: linux-clang linux-icc
    
    Note: Dropped compiler flags '-pthread' when detecting library 'glib'.
    
    Note: Dropped compiler flags '-pthread' when detecting library 'gtk3'.
    
    Note: Dropped compiler flags '-pthread' when detecting library 'gstreamer'.
    
    Note: Dropped compiler flags '-pthread' when detecting library 'gstreamer_app'.
    
    Qt is now configured for building. Just run 'make'.
    Once everything is built, you must run 'make install'.
    Qt will be installed into '/home/michael/progs/qt'.
    
    Prior to reconfiguration, make sure you remove any leftovers from
    the previous build.
    


  • Hello, I have the same problem as you, how did you solve it?0_1525232765499_微信图片_20180502114541.png


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.