diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/qt3d/audio-visualizer-qml/main.cpp | 5 | ||||
-rw-r--r-- | examples/qt3d/qt3d.pro | 52 | ||||
-rw-r--r-- | examples/qt3d/scene3d/AnimatedEntity.qml | 7 | ||||
-rw-r--r-- | examples/qt3d/scene3d/main.cpp | 16 | ||||
-rw-r--r-- | examples/qt3d/scene3d/main.qml | 50 | ||||
-rw-r--r-- | examples/qt3d/simple-qml/main.qml | 3 |
6 files changed, 104 insertions, 29 deletions
diff --git a/examples/qt3d/audio-visualizer-qml/main.cpp b/examples/qt3d/audio-visualizer-qml/main.cpp index c3fe2c009..2a6fdfa69 100644 --- a/examples/qt3d/audio-visualizer-qml/main.cpp +++ b/examples/qt3d/audio-visualizer-qml/main.cpp @@ -50,13 +50,16 @@ #include "touchsettings.h" #include <QtGui/QGuiApplication> -#include <QtGui/QOpenGLContext> +#include <QOpenGLContext> #include <QtQuick/QQuickView> #include <QtQuick/QQuickItem> #include <QtQml/QQmlContext> int main(int argc, char* argv[]) { +#ifdef Q_OS_ANDROID + QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling); +#endif QGuiApplication app(argc, argv); QSurfaceFormat format; diff --git a/examples/qt3d/qt3d.pro b/examples/qt3d/qt3d.pro index 91163a0d1..52ae5389c 100644 --- a/examples/qt3d/qt3d.pro +++ b/examples/qt3d/qt3d.pro @@ -1,30 +1,8 @@ TEMPLATE = subdirs SUBDIRS += \ - simple-qml \ simple-cpp \ - multiviewport \ - wireframe \ - shadow-map-qml \ - wave \ - scene3d \ - controls \ - anaglyph-rendering \ - planets-qml \ - instanced-arrays-qml \ - lights \ - compute-particles \ - 3d-text \ - qardboard \ - advancedcustommaterial \ - simplecustommaterial \ - scene2d \ - phong-cubes \ - pbr-materials \ - controlsunderlay \ - scene3dview - -qtHaveModule(multimedia): SUBDIRS += audio-visualizer-qml + 3d-text # qmake seems to break in some CI configurations, disable this for now #SUBDIRS += qgltf @@ -37,5 +15,33 @@ qtHaveModule(widgets) { qtHaveModule(quickwidgets): SUBDIRS += widgets-scene3d } +qtHaveModule(quick) { + qtHaveModule(multimedia) { + SUBDIRS += audio-visualizer-qml + } + + SUBDIRS += \ + simple-qml \ + shadow-map-qml \ + instanced-arrays-qml \ + planets-qml \ + advancedcustommaterial \ + anaglyph-rendering \ + compute-particles \ + phong-cubes \ + lights \ + scene3dview \ + controlsunderlay \ + simplecustommaterial \ + qardboard \ + pbr-materials \ + scene2d \ + multiviewport \ + wireframe \ + wave \ + scene3d \ + controls +} + EXAMPLE_FILES += \ exampleresources diff --git a/examples/qt3d/scene3d/AnimatedEntity.qml b/examples/qt3d/scene3d/AnimatedEntity.qml index d1975cb47..77cc15aa3 100644 --- a/examples/qt3d/scene3d/AnimatedEntity.qml +++ b/examples/qt3d/scene3d/AnimatedEntity.qml @@ -49,15 +49,16 @@ ****************************************************************************/ import Qt3D.Core 2.0 -import Qt3D.Render 2.0 +import Qt3D.Render 2.15 import Qt3D.Input 2.0 -import Qt3D.Extras 2.0 +import Qt3D.Extras 2.15 import QtQuick 2.0 as QQ2 Entity { id: sceneRoot + property RenderCapabilities capabilities : renderSettings.renderCapabilities Camera { id: camera @@ -74,9 +75,11 @@ Entity { components: [ RenderSettings { + id: renderSettings activeFrameGraph: ForwardRenderer { camera: camera clearColor: "transparent" + showDebugOverlay: true } }, InputSettings { } diff --git a/examples/qt3d/scene3d/main.cpp b/examples/qt3d/scene3d/main.cpp index 8886263f4..2a988a271 100644 --- a/examples/qt3d/scene3d/main.cpp +++ b/examples/qt3d/scene3d/main.cpp @@ -53,11 +53,25 @@ int main(int argc, char **argv) { + { + // Set OpenGL requirements + QSurfaceFormat format = QSurfaceFormat::defaultFormat(); +#ifndef QT_OPENGL_ES_2 + format.setVersion(4, 1); + format.setProfile(QSurfaceFormat::CoreProfile); + format.setSamples(4); +#else + format.setVersion(3, 0); + format.setProfile(QSurfaceFormat::NoProfile); + format.setRenderableType(QSurfaceFormat::OpenGLES); +#endif + QSurfaceFormat::setDefaultFormat(format); + } QGuiApplication app(argc, argv); QQuickView view; - view.resize(500, 500); + view.resize(1024, 768); view.setResizeMode(QQuickView::SizeRootObjectToView); view.setSource(QUrl("qrc:/main.qml")); view.show(); diff --git a/examples/qt3d/scene3d/main.qml b/examples/qt3d/scene3d/main.qml index f50528a13..6d5617ca3 100644 --- a/examples/qt3d/scene3d/main.qml +++ b/examples/qt3d/scene3d/main.qml @@ -50,6 +50,7 @@ import QtQuick 2.0 import QtQuick.Scene3D 2.0 +import Qt3D.Render 2.15 Item { Text { @@ -99,7 +100,54 @@ Item { aspects: ["input", "logic"] cameraAspectRatioMode: Scene3D.AutomaticAspectRatio - AnimatedEntity {} + AnimatedEntity { + id: rootEntity + } + } + } + + Rectangle { + radius: 10 + color: "#aaffffff" + border.width: 1 + border.color: "black" + width: childrenRect.width + anchors.margins + height: childrenRect.height + anchors.margins + anchors.bottom: parent.bottom + anchors.right: parent.right + anchors.margins: 20 + + Column { + x: parent.anchors.margins / 2 + y: x + + Text { text: "Vendor: " + rootEntity.capabilities.vendor } + Text { text: "Renderer: " + rootEntity.capabilities.renderer } + Text { text: "Driver Version: " + rootEntity.capabilities.driverVersion } + Text { text: "GL Version: " + rootEntity.capabilities.majorVersion + "." + rootEntity.capabilities.minorVersion } + Text { text: "Profile: " + (rootEntity.capabilities.profile === RenderCapabilities.CoreProfile ? "Core" : (rootEntity.capabilities.profile === RenderCapabilities.CompatibilityProfile ? "Compatibility" : "Unknown")) } + Text { text: "GLSL Version: " + rootEntity.capabilities.glslVersion } + Text { text: "Extensions: " + (rootEntity.capabilities.extensions.length ? "" : "None") } + ListView { + model: rootEntity.capabilities.extensions + delegate: Text { text: " " + model.modelData } + width: parent.width + height: 100 + visible: rootEntity.capabilities.extensions.length > 0 + clip: true + } + Text { text: "Max Texture Size: " + rootEntity.capabilities.maxTextureSize + "\nMax Texture Units: " + rootEntity.capabilities.maxTextureUnits + "\nMax Texture Layers: " + rootEntity.capabilities.maxTextureLayers } + Text { text: "Supports UBO: " + rootEntity.capabilities.supportsUBO } + Text { text: " Max UBO Size: " + rootEntity.capabilities.maxUBOSize + "\n Max UBO Bindings: " + rootEntity.capabilities.maxUBOBindings; visible: rootEntity.capabilities.supportsUBO } + Text { text: "Supports SSBO: " + rootEntity.capabilities.supportsSSBO } + Text { text: " Max SSBO Size: " + rootEntity.capabilities.maxSSBOSize + "\n Max SSBO Bindings: " + rootEntity.capabilities.maxSSBOBindings; visible: rootEntity.capabilities.supportsSSBO } + Text { text: "Supports Image Store: " + rootEntity.capabilities.supportsImageStore } + Text { text: " Max Image Units: " + rootEntity.capabilities.maxImageUnits; visible: rootEntity.capabilities.supportsImageStore } + Text { text: "Supports Compute Shaders: " + rootEntity.capabilities.supportsCompute } + Text { text: " Max Work Group Size: " + rootEntity.capabilities.maxWorkGroupSizeX + ", " + rootEntity.capabilities.maxWorkGroupSizeY + ", " + rootEntity.capabilities.maxWorkGroupSizeZ; visible: rootEntity.capabilities.supportsCompute } + Text { text: " Max Work Group Count: " + rootEntity.capabilities.maxWorkGroupCountX + ", " + rootEntity.capabilities.maxWorkGroupCountY + ", " + rootEntity.capabilities.maxWorkGroupCountZ; visible: rootEntity.capabilities.supportsCompute } + Text { text: " Max Invocations: " + rootEntity.capabilities.maxComputeInvocations; visible: rootEntity.capabilities.supportsCompute } + Text { text: " Max Shared Memory: " + rootEntity.capabilities.maxComputeSharedMemorySize; visible: rootEntity.capabilities.supportsCompute } } } diff --git a/examples/qt3d/simple-qml/main.qml b/examples/qt3d/simple-qml/main.qml index 5eed965ca..9f4149202 100644 --- a/examples/qt3d/simple-qml/main.qml +++ b/examples/qt3d/simple-qml/main.qml @@ -52,7 +52,7 @@ import QtQuick 2.2 as QQ2 import Qt3D.Core 2.0 import Qt3D.Render 2.0 import Qt3D.Input 2.0 -import Qt3D.Extras 2.0 +import Qt3D.Extras 2.15 Entity { id: sceneRoot @@ -78,6 +78,7 @@ Entity { activeFrameGraph: ForwardRenderer { clearColor: Qt.rgba(0, 0.5, 1, 1) camera: camera + showDebugOverlay: true } }, // Event Source will be set by the Qt3DQuickWindow |