このページでは

Scene3D QML Type

Scene3D タイプは、Qt3D シーンをQtQuick 2 シーンに統合するために使用されます。詳細...

Import Statement: import QtQuick.Scene3D 2.12
Inherits:

Item

Status: Technology preview

この型はテクノロジープレビュー段階にあり、仕様が変更される可能性があります。

プロパティ

方法

詳細な説明

Scene3D 型は、Entity によって提供される Qt3D シーンを、マルチサンプリングされたフレームバッファオブジェクトにレンダリングします。このオブジェクトは、その後、マルチサンプリングされていないフレームバッファオブジェクトにブリットされ、そこでプリマルチプライドアルファを使用してレンダリングされます。 マルチサンプリングが不要な場合は、multisample プロパティをfalse に設定することで、マルチサンプリングを回避できます。この場合、Scene3DはマルチサンプリングされていないFramebufferオブジェクトに直接レンダリングします。

レンダリング対象のシーンに不透明ではないマテリアルが含まれている場合、それらを正しくレンダリングするために、カスタムブレンド引数を用いてマテリアルを修正する必要があるかもしれません。たとえば、PhongAlphaMaterial を使用し、不透明なクリアカラーを持つシーンを扱う場合、そのマテリアルに以下を追加することをお勧めします:

sourceAlphaArg: BlendEquationArguments.Zero
destinationAlphaArg: BlendEquationArguments.One

そのマテリアルに追加することをお勧めします。

アプリケーションごとに Scene3D インスタンスを 1 つ以上インスタンス化することは推奨されません。その理由は、Scene3D インスタンスが、シーンの下でQt 3D エンジン全体(例えば、メモリマネージャ、スレッドプール、レンダリングなど)をインスタンス化するためです。

注: Scene3D要素の可視性をfalseに設定すると 、Qt 3D のシミュレーションループが停止します。つまり、visibleプロパティを、Qt 3D のシミュレーションループ(FrameAction)によって駆動されるプロパティ更新に依存する式にバインドした場合、その式は再評価されなくなります。

プロパティのドキュメント

aspects : list<string>

3Dシーンに対して登録すべきアスペクトの一覧。

たとえば、シーンで FrameAction を使用している場合は、"logic" アスペクトをリストに含める必要があります。

"render" アスペクトは固定されており、明示的にリストに含める必要はありません。

cameraAspectRatioMode : enumeration

シーン内に存在するカメラのアスペクト比の計算方法を定義します。

定数説明
Scene3D.AutomaticAspectRatioアスペクト比を自動で設定します。
Scene3D.UserAspectRatioユーザー定義のアスペクト比。

compositingMode : enumeration

定数説明
FBOシーンはフレームバッファオブジェクト(FBO)にレンダリングされます。これは一部のプラットフォームやハードウェアでは処理負荷が高くなる場合がありますが、より高い柔軟性を実現します。 アスペクト比の自動調整。Scene3D 要素が画面全体を占める必要がなく、必要に応じてサイズ変更やアニメーションを行う予定がある場合は、この合成モードを選択してください。このモードでは、QMLファイル内のScene3D の位置によって、他のQt Quick 要素に対する重ね合わせ順序が制御されます。
UnderlayFBOの使用がリソースを過度に消費する恐れがあるフルスクリーンの3Dシーンに適しています。Scene3D は、QtQuick のアンダーレイとして動作します。このモードを使用する場合、Scene3D のサイズとその変形は無視され、レンダリングは画面全体を占めることになる点に注意してください。また、QMLファイル内のScene3D の位置も一切影響しません。Qt 3D のコンテンツは、Qt Quick のコンテンツよりも先に描画されます。Qt Quick のコンテンツと重なることで、Qt 3D のコンテンツが上書きされて隠れてしまうことがないように注意する必要があります。また、このモードを使用する場合、ウィンドウの`clearBeforeRendering`は自動的に`false`に設定されます。

デフォルト値はFBO です。

entity : Entity [default]

表示する3Dシーンのルートエンティティ。

hoverEnabled : bool

true ホバーイベントが有効な場合。

multisample : bool

true マルチサンプル・レンダリングバッファが要求された場合。

デフォルトでは、マルチサンプリングが有効になっています。OpenGL実装がマルチサンプル・レンダリングバッファやフレームバッファ・ブリットをサポートしていない場合、マルチサンプリングの使用要求は無視されます。

注: フレームバッファやその他の OpenGL リソースの初期化には負荷が高く、処理が遅くなる可能性があるため、この値を頻繁に変更することは避けてください 。

メソッドのドキュメント

void setItemAreaAndDevicePixelRatio(size area, real devicePixelRatio)

アイテム領域をarea に、ピクセル比をdevicePixelRatio に設定します。

© 2026 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.