Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Using Qt to render world space UI in a 3D application
Forum Updated to NodeBB v4.3 + New Features

Using Qt to render world space UI in a 3D application

Scheduled Pinned Locked Moved Unsolved General and Desktop
5 Posts 2 Posters 1.9k Views 2 Watching
  • 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.
  • D Offline
    D Offline
    DrummerB
    wrote on 5 Jan 2018, 14:57 last edited by
    #1

    Hi!

    We are working on a VR application using a custom OpenGL renderer. Currently, we are using our own UI system to display an interface to the user in VR. We are considering upgrading this UI to use Qt if we can get it running. The UI is a flat plane in 3D that the user can interact with using the motion tracked controller as a laser pointer). Similar to the menu in SteamVR:

    alt text

    Basically, what we need is a way to render a Qt UI into an OpenGL framebuffer, so that we can display it on a world space quad. And we need to be able to simulate mouse events manually by raycasting from the motion controllers through the UI.

    Searching for this topic, I mostly found guides on how to embed OpenGL rendering inside a 2D Qt GUI. Unfortunately, we need the exact opposite of that, i.e. embedding a 2D Qt GUI in a 3D OpenGL rendering.

    Is this advisable (or even possible) to achieve or should we look for a different solution? Thank you!

    1 Reply Last reply
    1
    • S Offline
      S Offline
      SGaist
      Lifetime Qt Champion
      wrote on 5 Jan 2018, 21:06 last edited by
      #2

      Hi and welcome to devnet,

      Here's the Qt WS 2017 talk about using Qt with VR.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • D Offline
        D Offline
        DrummerB
        wrote on 9 Jan 2018, 10:12 last edited by DrummerB 1 Sept 2018, 10:13
        #3

        @SGaist Thanks. The example they show uses the QtQuickRenderControl class to render the UI into a texture. Is it possible to do the same for QtWidget based UI?

        1 Reply Last reply
        0
        • S Offline
          S Offline
          SGaist
          Lifetime Qt Champion
          wrote on 9 Jan 2018, 11:03 last edited by
          #4

          I can't tell for sure however I doubt it. Widgets are not rendered through OpenGL. However, you can create a widget like UI using QtQuick.Controls 2 which is likely a better option if you want to have a nicely animated UI in your virtual world.

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          D 1 Reply Last reply 9 Jan 2018, 14:23
          0
          • S SGaist
            9 Jan 2018, 11:03

            I can't tell for sure however I doubt it. Widgets are not rendered through OpenGL. However, you can create a widget like UI using QtQuick.Controls 2 which is likely a better option if you want to have a nicely animated UI in your virtual world.

            D Offline
            D Offline
            DrummerB
            wrote on 9 Jan 2018, 14:23 last edited by
            #5

            @SGaist Okay, I will check it out. Thank you.

            1 Reply Last reply
            0

            1/5

            5 Jan 2018, 14:57

            • Login

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