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. Draw 3D points
Forum Updated to NodeBB v4.3 + New Features

Draw 3D points

Scheduled Pinned Locked Moved Unsolved General and Desktop
6 Posts 2 Posters 3.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.
  • M Offline
    M Offline
    metRo_
    wrote on last edited by metRo_
    #1

    Hello,

    I have a small matrix of 3d points from a RGBD camera and I want to do something like this in Qt

    https://www.youtube.com/watch?v=aSVprdtz2bo

    What should be the way to do this? I don't have any experience on OpenGL so I'm looking if Qt3D is an option.

    Thank you

    PS: I saw some information on Game Development, move my topic there if you think I'll get more help there.

    ? 1 Reply Last reply
    0
    • M metRo_

      Hello,

      I have a small matrix of 3d points from a RGBD camera and I want to do something like this in Qt

      https://www.youtube.com/watch?v=aSVprdtz2bo

      What should be the way to do this? I don't have any experience on OpenGL so I'm looking if Qt3D is an option.

      Thank you

      PS: I saw some information on Game Development, move my topic there if you think I'll get more help there.

      ? Offline
      ? Offline
      A Former User
      wrote on last edited by
      #2

      @metRo_ Hi! If you want to do anything serious with Qt3D then this means you'll have to implement your own scene objects (with C++ and OpenGL) and implement a custom render pipeline (with QML and the various different OpenGL shader types). So, you'll have to learn modern OpenGL. Don't think of Qt3D as a replacement for OpenGL but more of a QML scene graph that nicely integrates into QtQuick.

      M 1 Reply Last reply
      0
      • ? A Former User

        @metRo_ Hi! If you want to do anything serious with Qt3D then this means you'll have to implement your own scene objects (with C++ and OpenGL) and implement a custom render pipeline (with QML and the various different OpenGL shader types). So, you'll have to learn modern OpenGL. Don't think of Qt3D as a replacement for OpenGL but more of a QML scene graph that nicely integrates into QtQuick.

        M Offline
        M Offline
        metRo_
        wrote on last edited by metRo_
        #3

        @Wieland so isn't there an easy way? :p
        Any guide/tutorial on how to start?

        1 Reply Last reply
        0
        • ? Offline
          ? Offline
          A Former User
          wrote on last edited by A Former User
          #4

          Well, there are two kinds of OpenGL: Modern OpenGL with shaders and legacy OpenGL. Legacy OpenGL is easy to learn and easy to use in Qt. Basically you only need to know how to use QOpenGLWidget and drawing some points with legacy OpenGL isn't very much more than...

          // here "p" is a QList<QVector3D>, just for the example
          glBegin(GL_POINTS);
          for (int i=0; i<p.size(); i++) {
              const QVector3D point = p.at(i);
              glVertex3f( point.x(), point.y(), point.z() );
          }
          glEnd();
          

          I'd say learning some legacy OpenGL will be less work then learning the use of Qt3D or any other sceen graph (e.g. OSG).

          M 1 Reply Last reply
          1
          • ? A Former User

            Well, there are two kinds of OpenGL: Modern OpenGL with shaders and legacy OpenGL. Legacy OpenGL is easy to learn and easy to use in Qt. Basically you only need to know how to use QOpenGLWidget and drawing some points with legacy OpenGL isn't very much more than...

            // here "p" is a QList<QVector3D>, just for the example
            glBegin(GL_POINTS);
            for (int i=0; i<p.size(); i++) {
                const QVector3D point = p.at(i);
                glVertex3f( point.x(), point.y(), point.z() );
            }
            glEnd();
            

            I'd say learning some legacy OpenGL will be less work then learning the use of Qt3D or any other sceen graph (e.g. OSG).

            M Offline
            M Offline
            metRo_
            wrote on last edited by
            #5

            @Wieland thank you, I'll start there. What I'll learn using legacy OpenGL will be important when change to Modern OpenGL?

            ? 1 Reply Last reply
            0
            • M metRo_

              @Wieland thank you, I'll start there. What I'll learn using legacy OpenGL will be important when change to Modern OpenGL?

              ? Offline
              ? Offline
              A Former User
              wrote on last edited by
              #6

              @metRo_ Yes, the basic concepts apply to both.

              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