| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
In the documentation configuration, exclude all '_p.h' files
from the documentation build.
This prevents QDoc from generating documentation for private
classes, and also allows removal of documentation that
explicitly set the private classes \internal.
Change-Id: I8fcf5c99a2a0b75e9ee5dcd928fa4a2b4b8cf34f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ied910d38c400b34a38f6eaea9683107b079513ec
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When Qt3D applications are left running for extended periods a gradual
slow down was noticed. This turned out to be caused by spending a long
time sorting the job dependencies in the thread pooler caused by an
ever increasing number of dependencies.
This in turn is caused by the render aspect not properly clearing out
old dependencies between one frame and the next.
This change fixes this kind of mistake in two places. Qt3D applications
now no longer slow down over time.
Change-Id: I32c258009c98120b38c8c8fa47641dcf336e9588
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
| |
This way the only thing Renderer knows about QRenderAspect is the enum
controlling the render more (threaded or synchronous). We properly
decoupled both now.
Change-Id: I0023efec541d40f7b499da4355d5cd8b796d2194
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I60adff0ece408bb4ee21b9cbd329e21da2c1f95c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
| |
This helps to reduce the dependencies from the Renderer to the QRenderAspect.
Change-Id: Id54e38642061f787649ba3794cafb8b8bbbde3f1
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Otherwise it was creating a weird confusion of responsibility. The
aspect asked for the creation of the allocators while the renderer
itself was asking for their destruction.
Change-Id: Ib06a315b39dc654d5a9bb97d4d2153884c457443
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
| |
This way we avoid leaking private types through public API.
Change-Id: Ifb30d7e57d8b995bba8cf9a95ae77f8d7818d79a
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
| |
We switch to a more resilient private virtual instead.
Change-Id: I90710c7873571ca0a40f7cc939282344b20a59f0
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I0b19646de41014274674c75650028980076b8349
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
The "clearNull" method is kind of surprising so make QAspectJob API more
usual. Also the "clearNull" method was only used twice so change the
idiom to go through removeDependency if that one receives a null
pointer.
Change-Id: Ib74e1054ba52754b1a19d6c3e9268fa9ff14edaf
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
Hiding them in QAspectEnginePrivate and calling them when needed from
setRootEntity.
Change-Id: I4c3dfb19d84ae90cc15bbff29a4abd0705bb61dc
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I9da605c77c5489b9bef4f07079e05f8babb9559f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I871cbc57166493f30ea307305d8664e2f8a8873f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
| |
Change-Id: Icec2f9f207221e35ffdeeb594bb9b4dc6ef890f1
Task-number: QTBUG-49797
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I1e84bc9dd02ae2c0b4f7c180f0043b4a734d78fd
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
There was code involving the node visitor duplicated in several aspect,
move that logic back into their common base class: QAbstractAspect.
Change-Id: I47320e93691edb43e3cccdd81753423816ad955d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I79e0b0d62e07a269ebfce99edff56d30da28494c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ida4d78d7ccd3c64eeedd38a3cba40ca099a2ecab
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
| |
First step toward turning QAspectFactory into a private class.
Change-Id: Ia62aae820fde1ab3cee0c5852d10981c6b9f4970
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
| |
Empty for now.
Change-Id: I4edcdae58230e53c266c214052522d3ab54b1c6c
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QAbstractLight becomes QLight and gets its own backend node. This way we can
easily gather all lights for the scene and filter them when building render
commands.
Both the frontend and backend remain a subclass of (Q)ShaderData
but will not be part of the ordinary ShaderData component list. This
prevents mixing up ShaderDatas and Lights but allows reusing the same
underlying infrastructure so that properties can automatically be
transformed for example. It is worth noting that the position property for
lights is now removed: the position is determined by the entity's (to which
the light component belongs) position.
A number of changes are made to ShaderData itself as backend subclassing
with different managers is not straightforward.
For now the distance between the rendered entity and the entity with
the light component is calculated and lights will be chosen based on
this distance. A framegraph node for controlling this will be added
in future patches.
No uniform setting or shader changes are included here.
Task-number: QTBUG-48834
Change-Id: I43a6c5f9420d4254d798c558bd58680b2b09eceb
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I375e808da644525f2943bee68d75f7d932d8dd5b
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: I662577e6dd337b1f056f73b4a11262e902d4dde2
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: Ifedd202820c9420d166b3f5a75f5c5358207a8bc
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
This will allow to keep the triangle volumes on the GeometryRenderer and have
them updated only when the attributes or buffer change
Change-Id: Ia616189f7f1e68bd25a850f5b12198eac3a030ec
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: I0585281d2ba3e109b8ab8e45762e5101f7ea2163
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Fix the documentation issues that still remained broken after
renaming the namespaces/QML modules. Do further cleanup and
minor doc editing.
Change-Id: Iff38c8c1b99e7f712dc3f9ad07ecd37a747b3a26
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
|
|
|
|
|
|
| |
Change-Id: I5cd1c2ddb54d32a7d650e2a44f48d9f67f9821a2
Task-Id: QTBUG-49001
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I398f327d7767a13dd8fe37c92b13a2a874b92708
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: I2115d69de3ac0480be08b4e4bb6d39a37bc1f6d7
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
Compound transformations are now built up using QMatrix4x4 in both QML
and C++. Updating examples accordingly.
Change-Id: I03c9abf1f6cdd1b56226dc0e16a7ad5ce84516dd
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I82c230fb51f6243b2d37cfd7b353a97adfdeb365
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
|
|
| |
The dependency will allow us to check if a buffer is dirty to know if a
bounding volumes needs to be recomputed
Change-Id: I8cf6d6d501cde1e3b55e020bc53ffeb6e3b67b2d
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: I8d505034b24c3ec00b93ace02e5a4fe450939478
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: I4d9dfa12032429579ae0510329ca06f36851502c
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: Id37ab84a89403c9dc0f3728639e4d85b9db1a1a1
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: Ic77a535c6e6b3ebe67efe59ae925c155a5b27f42
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: Id02b9c0664054bfbdef2a0c52e2d51383c4e5bfc
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: I4925b7f4e3d182cc13d9f06ab6e2835bffe26c81
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
| |
Also remove some unnecessary includes.
Change-Id: I35539566e530f7800bbbe7884be65a93a7ee91eb
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Each of the submodules now have there own namespace
so the following changes are required to adapt:
- Added \namespace docs for the new namespaces.
- Updated all the \class and \instantiates entries to use
the appropriate namespace qualifier.
- Changed the \module and \qmlmodule names for Qt 3D Core
and Qt 3D Render modules.
- Added the missing \module and \qmlmodule pages for the
Qt 3D Collision module.
Change-Id: Ibc5bf30e4f50aecb6a3b24bc8536f17ed19d681d
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
|
|
|
|
|
| |
Change-Id: I4982f08d18c855a57f621af28b13cc876f20eb16
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: Ieb1d985b919b50844a236959250e1a2e80972aa1
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
- Use the framepreparation job to detect if a buffer of the pickAttribute of
an ObjectPicker is dirty, in which case the ObjectPicker is marked as dirty
so that it will be recomputed
- Remove checks for pickAttribute dirtiness in calcboundingvolumejob
Change-Id: Ied21d7af1446c70d3f6e04a3f0690dc4ed4d024e
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I940a8ea898a338f20bb9abbebcc1fcef9830a118
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
Note: also made it so that we set the dependency on jobs once instead of every
frame when they aren't changing
Change-Id: I2b4885ed2fd4c72493e17863c1c9c253ac30ec49
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
The backend notification will trigger the pick signals
and propagation if not accepted
Change-Id: Id234973f559267d0244a92e6b195e6aaf86725c6
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
Contains only an accepted property that will be used to propage events to
parent QObjectPicker instances if set to false
Change-Id: I3a898194c7382e07d9818ddd25e9affd54de2cc6
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
Will be needed to retrive Entity from hits reported by the RayCasting
service.
Change-Id: I91f1f3c2277d468c2ec60509a04095138a5eafcb
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|