Comparison of Qt 3D and Qt 3D Studio: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Created page with "In short, Qt 3D Studio is built on top of Qt 3D. The flexible architecture of Qt 3D makes it suitable to build 3D runtimes, or engines, such as Qt 3D Studio. == Qt 3D == Qt 3...")
 
(Added row on effect/material combination and wanted to highlight that with Qt 3D you're expected to do more coding work.)
 
(One intermediate revision by one other user not shown)
Line 2: Line 2:


== Qt 3D ==
== Qt 3D ==
Qt 3D is programmer-oriented and great for both simple and complex scenes. Qt 3D simplifies the implementation of advanced rendering techniques.
Qt 3D is programmer-oriented engine building toolkit and great for both simple and complex scenes. Qt 3D simplifies the implementation of advanced rendering techniques.  


== Qt 3D Studio ==
== Qt 3D Studio ==
Qt 3D Studio consists of both a 3D editor and a 3D runtime. Qt 3D Studio is designer-oriented and makes it easy to build complex 3D scenes that can be used in Qt applications.  
Qt 3D Studio consists of both a 3D editor and a 3D runtime. Qt 3D Studio is designer-oriented and makes it easy to build complex 3D scenes with states and transitions that can be used in and controlled by Qt applications.  


== Use case comparison ==
== Use case comparison ==
Whether you should use Qt 3D or Qt 3D Studio for your project depends on your use case. Below, we list some common use cases and how they apply to the two:
Whether you should use Qt 3D or Qt 3D Studio for your project depends on your use case. Below, we list some common use cases and how they apply to the two:
=== Creating 3D scenes ===
{| class="wikitable"
{| class="wikitable"
!Use case
!Use case
Line 14: Line 16:
!Qt 3D Studio
!Qt 3D Studio
|-
|-
|Drag-and-drop editing of a 3D scene for use in a Qt application
|Graphically editing a 3D scene for use in a Qt application
|No built-in tool. Can import common 3D formats from external editors.
|No built-in editor. Support for importing common 3D formats.
|Yes, use the Qt 3D Studio Editor
|Yes, use the Qt 3D Studio Editor
|-
|Creating a 3D scene programmatically
|Suitable
|Not possible.
|-
|Using existing materials and effects
|Some available in Qt3D.Extras
|Many available in the Qt 3D Studio Editor
|-
|Combine existing materials and effects
|May require rewriting some of the shaders from Qt3D.Extras to form custom combinations.
|Suitable
|}
=== Effects ===
{| class="wikitable"
!Use case
!Qt 3D
!Qt 3D Studio
|-
|-
|Creating a simple multi-pass rendering pipeline
|Creating a simple multi-pass rendering pipeline
Line 30: Line 51:
|Suitable
|Suitable
|-
|-
|Creating a graphical 3D editor
|Implementing custom rendering techniques such as volumetric rendering
|Suitable
|Suitable
|Not possible
|Not suitable
|}
 
=== Formats ===
{| class="wikitable"
!Use case
!Qt 3D
!Qt 3D Studio
|-
|Importing external formats
|All formats supported by plugins such as Assimp. See [https://doc.qt.io/qt-5.10/qml-qt3d-render-sceneloader.html SceneLoader] for a full list.
|A number of formats are supported.
TODO: List all formats.
|}
 
=== Creating 3D engines and editors ===
{| class="wikitable"
!Use case
!Qt 3D
!Qt 3D Studio
|-
|-
|Creating an advanced rendering pipeline with custom rendering techniques such as volumetric rendering
|Creating a custom graphical 3D editor
|Suitable
|Suitable
|Not suitable
|Not possible
|-
|-
|Creating a custom 3D engine
|Creating a custom 3D engine

Latest revision as of 04:55, 14 June 2018

In short, Qt 3D Studio is built on top of Qt 3D. The flexible architecture of Qt 3D makes it suitable to build 3D runtimes, or engines, such as Qt 3D Studio.

Qt 3D

Qt 3D is programmer-oriented engine building toolkit and great for both simple and complex scenes. Qt 3D simplifies the implementation of advanced rendering techniques.

Qt 3D Studio

Qt 3D Studio consists of both a 3D editor and a 3D runtime. Qt 3D Studio is designer-oriented and makes it easy to build complex 3D scenes with states and transitions that can be used in and controlled by Qt applications.

Use case comparison

Whether you should use Qt 3D or Qt 3D Studio for your project depends on your use case. Below, we list some common use cases and how they apply to the two:

Creating 3D scenes

Use case Qt 3D Qt 3D Studio
Graphically editing a 3D scene for use in a Qt application No built-in editor. Support for importing common 3D formats. Yes, use the Qt 3D Studio Editor
Creating a 3D scene programmatically Suitable Not possible.
Using existing materials and effects Some available in Qt3D.Extras Many available in the Qt 3D Studio Editor
Combine existing materials and effects May require rewriting some of the shaders from Qt3D.Extras to form custom combinations. Suitable

Effects

Use case Qt 3D Qt 3D Studio
Creating a simple multi-pass rendering pipeline Suitable Suitable
Using custom shaders Suitable Suitable
Layer-based compositing Suitable Suitable
Implementing custom rendering techniques such as volumetric rendering Suitable Not suitable

Formats

Use case Qt 3D Qt 3D Studio
Importing external formats All formats supported by plugins such as Assimp. See SceneLoader for a full list. A number of formats are supported.

TODO: List all formats.

Creating 3D engines and editors

Use case Qt 3D Qt 3D Studio
Creating a custom graphical 3D editor Suitable Not possible
Creating a custom 3D engine Suitable Not possible