Comparison of Qt 3D and Qt 3D Studio

From Qt Wiki
Revision as of 04:55, 14 June 2018 by Pasikeranen (talk | contribs) (Added row on effect/material combination and wanted to highlight that with Qt 3D you're expected to do more coding work.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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