Qt 3D Render C++ Classes

Qt 3D Render モジュールには、Qt 3D を使用した 2D および 3D レンダリングをサポートする機能が含まれています。詳細...

このモジュールは 6.8 から非推奨です。新しいコードで使用しないことを強くお勧めします。

名前空間

Qt3DRender

2D および 3D レンダリングを可能にするクラスが含まれています。

Qt3DRender::Render

RendererとQRenderPluginクラスにアクセスするための名前空間です。

クラス

Qt3DRender::QAbstractLight

Qt 3D シーン内の QAbstractLight オブジェクトをカプセル化します。

Qt3DRender::QAbstractRayCaster

3Dシーンにおけるレイキャスティングのための抽象ベースクラス

Qt3DRender::QAbstractTexture

テクスチャを提供するための基本クラス

Qt3DRender::QAbstractTextureImage

OpenGLテクスチャイメージを作成するために必要な情報をカプセル化します。

Qt3DRender::QAlphaCoverage

アルファからカバレッジへのマルチサンプリングモードを有効にする

Qt3DRender::QAlphaTest

アルファ参照テストの指定

Qt3DRender::QBlendEquation

RGBブレンド方程式とアルファブレンド方程式の両方に使用される方程式を指定する

Qt3DRender::QBlendEquationArguments

ブレンド情報のカプセル化:入力される値(これから描画されるもの)が既存の値(すでに描画されているもの)にどのような影響を与えるかを指定します。

Qt3DRender::QBlitFramebuffer

レンダーターゲットのある領域から別の領域へピクセル値の矩形を転送するFrameGraphノード

Qt3DRender::QBufferCapture

GPUとCPUの間でバッファデータを交換する

Qt3DRender::QCamera

シーンがレンダリングされるビューポイントを定義する

Qt3DRender::QCameraLens

Qt3DRender::QCameraLensは、3DシーンのCameraを定義するために使用される投影行列を指定します。

Qt3DRender::QCameraSelector

使用するカメラを選択するためのクラス

Qt3DRender::QClearBuffers

バッファをクリアするクラス

Qt3DRender::QClipPlane

gl_ClipDistanceを使用してシェーダ内に追加できるOpenGLクリッピング平面を有効にします。

Qt3DRender::QColorMask

現在バインドされているフレームバッファに書き込むべきカラーコンポーネントを指定できるようにする

Qt3DRender::QComputeCommand

GPU上のコンピュートシェーダーのための作業を発行するQComponent

Qt3DRender::QCullFace

前面カリングと背面カリングのどちらを有効にするかを指定します。

Qt3DRender::QDebugOverlay

シーン詳細のビジュアルオーバーレイを有効にする

Qt3DRender::QDepthRange

深度バッファに書き込まれた深度値の再マッピングを有効にする

Qt3DRender::QDepthTest

フラグメントシェーダの深度値を、書き込まれているサンプルの深度に対してテストする

Qt3DRender::QDirectionalLight

Qt 3D シーンに Directional Light オブジェクトをカプセル化する

Qt3DRender::QDispatchCompute

GPU上のコンピュートシェーダのための作業を発行するFrameGraphノード

Qt3DRender::QDithering

ディザリングを有効にする

Qt3DRender::QEffect

Qt 3D シーンにおけるエフェクトの基本クラス

Qt3DRender::QEnvironmentLight

Qt 3D シーン内の環境光オブジェクトをカプセル化する

Qt3DRender::QFilterKey

フィルターキーとその値のストレージ

Qt3DRender::QFrameGraphNode

すべてのFrameGraph設定ノードの基本クラス

Qt3DRender::QFrontFace

前面ポリゴンと背面ポリゴンの定義

Qt3DRender::QFrustumCulling

FrameGraphのフラストラムカリングを有効にする

Qt3DRender::QGeometryRenderer

ジオメトリレンダリングのカプセル化

Qt3DRender::QGraphicsApiFilter

付属のQTechniqueに必要なAPIを特定する

Qt3DRender::QLayer

レンダリングされるエンティティをフィルタリングする方法

Qt3DRender::QLayerFilter

フレームグラフ分岐に描画されるレイヤーを制御する

Qt3DRender::QLevelOfDetail

画面上のサイズに基づいてレンダリングされるエンティティの複雑さを制御する方法

Qt3DRender::QLevelOfDetailBoundingSphere

中心と半径で定義される単純な球体ボリューム

Qt3DRender::QLevelOfDetailSwitch

距離または画面サイズに基づいて子エンティティを有効にする方法を提供します。

Qt3DRender::QLineWidth

ラスタライズされた線の幅を指定する

Qt3DRender::QMaterial

シーン内のすべてのマテリアル・コンポーネント・クラスのベースとなる抽象クラスを提供します。

Qt3DRender::QMemoryBarrier

メモリバリアを配置するクラス

Qt3DRender::QMesh

カスタムメッシュローダー

Qt3DRender::QMultiSampleAntiAliasing

マルチサンプル・アンチエイリアスを有効にする

Qt3DRender::QNoDepthMask

深度書き込みを無効にする

Qt3DRender::QNoDraw

Qt3DRender::QNoDrawノードがFrameGraphブランチに存在する場合、レンダラーがプリミティブをレンダリングしないようにします。

Qt3DRender::QNoPicking

Qt3DRender::QNoPickingノードがFrameGraphブランチに存在する場合、レンダリングアスペクトが指定されたブランチに対してピッキング選択を行うことを防ぎます。

Qt3DRender::QObjectPicker

ピッキングとして知られているプロセスによってQEntityと対話するために使用できるコンポーネントをインスタンス化します。

Qt3DRender::QPaintedTextureImage

QPainter を通して書き込める QAbstractTextureImage。

Qt3DRender::QParameter

名前と値のペアのストレージを提供します。これはシェーダーのユニフォームにマッピングされます。

Qt3DRender::QPickEvent

オブジェクトがピックされたときの情報を保持します。

Qt3DRender::QPickLineEvent

線のセグメントがピックされたときの情報を保持します。

Qt3DRender::QPickPointEvent

点群のセグメントがピックされたときの情報を保持する

Qt3DRender::QPickTriangleEvent

三角形がピックされたときの情報を保持する

Qt3DRender::QPickingProxy

ピッキングのみに使用される別のQGeometryViewを提供するために使用できる

Qt3DRender::QPickingSettings

エンティティ・ピッキングの処理方法を指定する

Qt3DRender::QPointLight

Qt 3D シーン内の Point Light オブジェクトのカプセル化

Qt3DRender::QPointSize

ラスタライズされたポイントのサイズを指定します。静的に設定するか、シェーダプログラムで設定します。

Qt3DRender::QPolygonOffset

ポリゴンオフセットの深度値を計算するスケールとステップを設定します。

Qt3DRender::QProximityFilter

ターゲットエンティティの距離閾値内にあるエンティティを選択します。

Qt3DRender::QRasterMode

レンダリング状態により、実行するラスタライズのタイプを制御できる

Qt3DRender::QRayCaster

Qt3DRender::QRayCasterは、3dワールド座標でレイキャストテストを実行するために使用されます。

Qt3DRender::QRayCasterHit

モデルを通してレイをキャストする際のヒットの詳細

Qt3DRender::QRenderAspect

クラス

Qt3DRender::QRenderCapabilities

利用可能なレンダリングエンジンに関する設定を保持します。

Qt3DRender::QRenderCapture

レンダーキャプチャ用のフレームグラフノード

Qt3DRender::QRenderCaptureReply

レンダーキャプチャー要求の結果を受け取る

Qt3DRender::QRenderPass

レンダーパスのカプセル化

Qt3DRender::QRenderPassFilter

フィルターキーとパラメーターのベクターのストレージを提供します。

Qt3DRender::QRenderSettings

レンダリングプロセスに関連する設定を保持し、アクティブなFrameGraphをホストする

Qt3DRender::QRenderState

すべてのレンダリング状態の抽象ベースクラス

Qt3DRender::QRenderStateSet

FrameGraph ノードは、フレームグラフ分岐の実行中に適用される QRenderState オブジェクトのセットを指定する方法を提供します。

Qt3DRender::QRenderSurfaceSelector

レンダーサーフェスを指定する方法を提供します。

Qt3DRender::QRenderTarget

レンダラーがレンダリングできるターゲット(通常はフレームバッファオブジェクト)をカプセル化します。

Qt3DRender::QRenderTargetOutput

レンダーターゲットのアタッチメント(カラーテクスチャ、深度テクスチャなど)を指定できます。

Qt3DRender::QRenderTargetSelector

レンダーターゲットを指定する方法を提供します。

Qt3DRender::QSceneLoader

既存のシーンをロードする機能を提供

Qt3DRender::QScissorTest

スクリーンの特定の矩形部分から外れたフラグメントを破棄。

Qt3DRender::QScreenRayCaster

スクリーン座標に基づくレイキャストテストを実行。

Qt3DRender::QSeamlessCubemap

シームレスキューブマップテクスチャフィルタリングを可能にする

Qt3DRender::QSetFence

グラフィックス・コマンド・ストリームにフェンスを挿入するために使用されるFrameGraphNode

Qt3DRender::QShaderData

ユニフォームブロックまたはシェーダ構造の値を指定する方法を提供

Qt3DRender::QShaderImage

シェーダプログラムへのイメージアクセスを提供

Qt3DRender::QShaderProgram

シェーダプログラムのカプセル化

Qt3DRender::QShaderProgramBuilder

ロードされたグラフからシェーダプログラムコンテンツを生成

Qt3DRender::QSharedGLTexture

Qtの3Dシーンで、別のOpenGLコンテキストからtextureIdを使用できるようにする

Qt3DRender::QSortPolicy

使用するソートタイプのストレージを提供する

Qt3DRender::QSpotLight

Qt 3Dシーンでスポットライトオブジェクトをカプセル化する

Qt3DRender::QStencilMask

ステンシル プレーンの個々のビットの前面および背面の書き込みを制御します。

Qt3DRender::QStencilOperation

ステンシル操作の指定

Qt3DRender::QStencilOperationArguments

ステンシルと深度テストが失敗したときに実行されるアクションを設定する

Qt3DRender::QStencilTest

ステンシル・テストの引数を指定する

Qt3DRender::QStencilTestArguments

ステンシル・テストの引数を指定する

Qt3DRender::QSubtreeEnabler

フレームグラフノードのサブツリー全体を有効または無効にする

Qt3DRender::QTechnique

テクニックのカプセル化

Qt3DRender::QTechniqueFilter

使用する QTechnique を選択するために使用される QFrameGraphNode

Qt3DRender::QTexture1D

Target1D ターゲット形式を持つ QAbstractTexture

Qt3DRender::QTexture1DArray

Target1DArray ターゲット形式の QAbstractTexture

Qt3DRender::QTexture2D

Target2D ターゲット形式の QAbstractTexture

Qt3DRender::QTexture2DArray

Target2DArray ターゲット形式の QAbstractTexture

Qt3DRender::QTexture2DMultisample

Target2DMultisample ターゲット形式の QAbstractTexture

Qt3DRender::QTexture2DMultisampleArray

Target2DMultisampleArray ターゲット形式の QAbstractTexture

Qt3DRender::QTexture3D

Target3D ターゲット形式の QAbstractTexture

Qt3DRender::QTextureBuffer

TargetBuffer ターゲット形式を持つ QAbstractTexture

Qt3DRender::QTextureCubeMap

TargetCubeMap ターゲット形式を持つ QAbstractTexture

Qt3DRender::QTextureCubeMapArray

TargetCubeMapArray ターゲット形式を持つ QAbstractTexture

Qt3DRender::QTextureData

ターゲット、高さ、幅、深さ、レイヤー、ラップ、ミップマップが有効かどうかなどのテクスチャ情報を格納します。

Qt3DRender::QTextureDataUpdate

テクスチャコンテンツの部分更新を実行するために必要なコンテンツと情報を保持します。

Qt3DRender::QTextureGenerator

テクスチャのイメージデータを提供します。

Qt3DRender::QTextureImage

イメージソースからOpenGLテクスチャイメージを作成するために必要な情報をカプセル化します。

Qt3DRender::QTextureImageData

テクスチャを表すデータを格納

Qt3DRender::QTextureImageDataGenerator

QAbstractTextureImageにテクスチャ画像データを提供する

Qt3DRender::QTextureLoader

テクスチャの読み込みとテクスチャのプロパティの設定を処理する

Qt3DRender::QTextureRectangle

TargetRectangleターゲットフォーマットを持つQAbstractTexture

Qt3DRender::QTextureWrapMode

Qt3DRender::QAbstractTextureがテクスチャに適用するラップモードを定義する

Qt3DRender::QViewport

Qt3D Scene上のビューポート

Qt3DRender::QWaitFence

グラフィックスコマンドストリームでフェンスがシグナルされるのを待つためのFrameGraphNode

詳しい説明

Qt 3D Render モジュールは、Qt 3D フレームワークの一部として 2D および 3D レンダリングを実装するために必要なアスペクト、コンポーネント、その他のサポートタイプを提供します。

このモジュールのクラスを使用するには、C++ファイルにこのディレクティブを追加します:

#include <Qt3DRender>

対応する C++ ライブラリにリンクするには、qmake プロジェクトファイルに以下を追加してください:

QT += 3drender

クラス、型、関数は、Qt3DRender 名前空間の下で宣言されます。

概要

Qt 3D Renderのアスペクトは、Qt 3D Render Framegraphで説明されているように、データ駆動型の設定をサポートしています。

レンダリングバックエンドの選択

Renderアスペクトには2つのレンダリングバックエンドがあります。

  • OpenGL バックエンド (ES 2、ES 3.2、GL 2、GL 3、GL 3.2、GL 4.3)
  • RHIバックエンド(ES 2、GL、DirectX、Vulkan、Metal)

OpenGLのみをターゲットとし、特定のOpenGL機能を使用する場合は、OpenGLバックエンドを使用する方がよいでしょう。これはQt 5シリーズでQt 3Dが独占的に使用したOpenGLバックエンドです。

特定のOpenGL機能を使用せず、OpenGLが廃止されたかもしれない異なるプラットフォームをターゲットにしたい場合は、RHIバックエンドを使用する方がよいでしょう。

レンダリングバックエンドを選択するには、環境変数QT3D_RENDERERに "opengl "か "rhi "のどちらかを設定します。デフォルトはOpenGLバックエンドです。

RHIバックエンドを使用する場合、QSG_RHI_BACKENDを以下の値のいずれかに設定することで、内部RHIバックエンドをさらに強制することができます:

  • opengl -> RHI OpenGLバックエンド
  • gl -> RHI OpenGLバックエンド
  • gles2 -> RHI OpenGLバックエンド
  • metal -> RHI Metalバックエンド
  • vulkan -> RHI Vulkanバックエンド
  • d3d11 -> RHI DirectX 11バックエンド

指定がない場合、RHIはそのプラットフォームに最適と推測されるバックエンドをデフォルトとします。

参考

©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。