Qt3D Core

From Qt Wiki
Revision as of 17:08, 14 January 2015 by Maintenance script (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Qt3D Core

Core elements

The Core exposes a few default elements that make up all Qt3D scenes.

Node

A base Qt3D element.

Entity

An Entity is a Node which has a list of Component properties. This is the type of elements that are actually rendered.

Component

Components are elements that are used to further specify an Entity.

Transformations

==

  • Transform
    A Component that contains a list of transformation

==

  • LookAtTransform
    Performs a LookAtTransform.

==

  • MatrixTransform
    Performs a transformation based on the Matrix provided.

==

  • TranslateTransform
    Performs a translation.

==

  • RotateTransform
    Performs a rotation around an axis.

==

  • ScaleTransform
    Performs a scaling.

File:2poe3bn.png

Others Components

==

  • CameraLens
    Contains the lens properties of a Camera.
    • Projection Type
    • Far plane
    • Near plane
    • Field of view
    • Aspect ratio

Custom elements

Custom elements can be created by subclassing an Entity and predefining a set of properties.

==

  • Camera
    The Camera elements is an Entity that contains a Transform and a CameraLens.

Resources Management

To achieve high rendering performances, the memory access to the resources has to be properly managed and structured. Therefore, a set of templated resources management oriented classes have been developed in the core of Qt3D.

  • QHandle
  • QArrayResourcesManager
  • QListResourcesManager

The use of a Handle systems allows for resources to be easily accessed and managed while allowing for memory structure to be realigned so as to maintain a contiguous memory alignment and reduce fragmentation.
This should lower the amount of cache misses and speed up rendering.

Other Resources management oriented classes include :

  • QCircularBuffer
  • QBoundedCircularBuffer

Categories: