Scene3D QML Type

The Scene3D type is used to integrate a Qt3D scene into a QtQuick 2 scene. More...

Import Statement: import QtQuick.Scene3D 2.12




Detailed Description

The Scene3D type renders a Qt3D scene, provided by an Entity, into a multisampled Framebuffer object. This object is later blitted into a non-multisampled Framebuffer object, which is then rendered with premultiplied alpha. If multisampling is not required, it can be avoided by setting the multisample property to false. In this case Scene3D will render directly into the non-multisampled Framebuffer object.

If the scene to be rendered includes non-opaque materials, you may need to modify those materials with custom blend arguments in order for them to be rendered correctly. For example, if working with a PhongAlphaMaterial and a scene with an opaque clear color, you will likely want to add:

sourceAlphaArg: BlendEquationArguments.Zero
destinationAlphaArg: BlendEquationArguments.One

to that material.

Property Documentation

aspects : list<string>

The list of aspects that should be registered for the 3D scene.

For example, if the scene makes use of FrameAction, the "logic" aspect should be included in the list.

The "render" aspect is hardwired and does not need to be explicitly listed.

cameraAspectRatioMode : enumeration

Scene3D.AutomaticAspectRatioAutomatic aspect ratio.
Scene3D.UserAspectRatioUser defined aspect ratio.

[default] entity : Entity

The root entity of the 3D scene to be displayed.

hoverEnabled : bool

true if hover events are accepted.

multisample : bool

true if a multisample render buffer is requested.

By default multisampling is enabled. If the OpenGL implementation has no support for multisample renderbuffers or framebuffer blits, the request to use multisampling is ignored.

Note: Refrain from changing the value frequently as it involves expensive and potentially slow initialization of framebuffers and other OpenGL resources.

Method Documentation

void setItemAreaAndDevicePixelRatio(size area, real devicePixelRatio)

© 2021 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. 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.