Skip to content
Snippets Groups Projects
qt3d-widgets-scene3d-example.html 4.18 KiB
Newer Older
  • Learn to ignore specific revisions
  • <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="utf-8">
    <!-- widgets-scene3d.qdoc -->
      <title>Qt 3D: Scene3D QML with Widgets Example | Qt 3D 5.15.0</title>
      <link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
      <script type="text/javascript">
        document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
        // loading style sheet breaks anchors that were jumped to before
        // so force jumping to anchor again
        setTimeout(function() {
            var anchor = location.hash;
            // need to jump to different anchor first (e.g. none)
            location.hash = "#";
            setTimeout(function() {
                location.hash = anchor;
            }, 0);
        }, 0);
      </script>
    </head>
    <body>
    <div class="header" id="qtdocheader">
        <div class="main">
        <div class="main-rounded">
            <div class="navigationbar">
            <ul>
    <li><a href="../qtdoc/index.html">Qt 5.15</a></li>
    <li><a href="qt3d-index.html">Qt 3D</a></li>
    <li>Qt 3D: Scene3D QML with Widgets Example</li>
    <li id="buildversion"><a href="qt3d-index.html">Qt 5.15.0 Reference Documentation</a></li>
        </ul>
        </div>
    </div>
    <div class="content">
    <div class="line">
    <div class="content mainContent">
    <div class="sidebar">
    <div class="toc">
    <h3><a name="toc">Contents</a></h3>
    <ul>
    <li class="level1"><a href="#running-the-example">Running the Example</a></li>
    </ul>
    </div>
    <div class="sidebar-content" id="sidebar-content"></div></div>
    <h1 class="title">Qt 3D: Scene3D QML with Widgets Example</h1>
    <span class="subtitle"></span>
    <!-- $$$widgets-scene3d-brief -->
    <p>A QWidget-based application with a QML scene containing a 3D scene.</p>
    <!-- @@@widgets-scene3d -->
    <!-- $$$widgets-scene3d-description -->
    <div class="descr"> <a name="details"></a>
    <p class="centerAlign"><img src="images/widgets-scene3d.png" alt="" /></p><p><i>widgets-scene3D</i> demonstrates visualizing a 3D scene from a QWidget-based application using <a href="../qtquick/qquickwidget.html">QQuickWidget</a>.</p>
    <p>The actual 3D scene is the same as in the <i>scene3d</i> example.</p>
    <p>This approach is different from the one based on QWidget::createWindowContainer() demonstrated in <i>basicshapes-cpp</i> because it does not create a native window for the Qt 3D content. Rather, it uses <a href="../qtquick/qquickwidget.html">QQuickWidget</a>, a genuine QWidget subclass to compose the Qt Quick and Qt 3D content together with the traditional widgets.</p>
    <p><b>Note: </b>Be aware of the performance implications. While this approach is very flexible in the sense that it allows mixing QML and Qt 3D with widgets without clipping or stacking issues, using <a href="qml-qtquick-scene3d-scene3d.html">Scene3D</a> in a <a href="../qtquick/qquickwidget.html">QQuickWidget</a> involves rendering to offscreen render targets (via framebuffer objects) twice. This is not always desirable for more complex scenes. For those the native window based approach shown in <i>basicshapes-cpp</i> will likely be a better choice.</p>
    <a name="running-the-example"></a>
    <h4 id="running-the-example">Running the Example</h4>
    <p>To run the example from <a href="http://doc.qt.io/qtcreator/index.html">Qt Creator</a>, open the <b>Welcome</b> mode and select the example from <b>Examples</b>. For more information, visit <a href="http://doc.qt.io/qtcreator/creator-build-example-application.html">Building and Running an Example</a>.</p>
    <p><a href="https://code.qt.io/cgit/qt/qt3d.git/tree/examples/qt3d/widgets-scene3d?h=5.15">Example project @ code.qt.io</a></p>
    </div>
    <!-- @@@widgets-scene3d -->
            </div>
           </div>
       </div>
       </div>
    </div>
    <div class="footer">
       <p>
       <acronym title="Copyright">&copy;</acronym> 2020 The Qt Company Ltd.
       Documentation contributions included herein are the copyrights of
       their respective owners.<br/>    The documentation provided herein is licensed under the terms of the    <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation    License version 1.3</a> as published by the Free Software Foundation.<br/>    Qt and respective logos are trademarks of The Qt Company Ltd.     in Finland and/or other countries worldwide. All other trademarks are property
       of their respective owners. </p>
    </div>
    </body>
    </html>