| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
| |
Change-Id: Ibc8ac6d59f8ed85b588cae1f2f92e8d37a342954
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Point Sizes may be specified 2 ways: either statically via
glPointSize() (OpenGL 2.0+) or by enabling GL_PROGRAM_POINT_SIZE.
Task-number: QTBUG-49997
Change-Id: I98887484cf31df01b98801e1f324487ee7bf7492
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ic5e89455c97ce69f7bfca970f4e4884d09010ecb
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I79e0b0d62e07a269ebfce99edff56d30da28494c
Reviewed-by: Sean Harmer <sean.harmer@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: If63b35a24b05a8279edfff48c893fce5a37d63de
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: I6f0a1740696b19198a36a889582c1d857189196c
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
| |
Change-Id: I8cc83b725c9ce8abca542da2e2ee2aac662ea56b
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
|
| |
Change-Id: Ifd7823af9ffe5761b4863d559c9321207fb62998
Task-number: QTBUG-49138
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This API change is part of an effort to remove anything specific to one
graphics API (in this case OpenGL) from the public APIs. In addition to
the name of the class being changed, the QGraphicsApiFilter::Api has
been refactored to reference the Graphics API, rather than an OpenGL
API. Now this list includes OpenGL, and OpenGLES, but could also include
Vulkan, DirectX, or any other graphics rendering API we wish to support
in the future. Right now the properties in this class are still
reflective of the OpenGL APIs, and may need to be extended with other
properties in the future for other rendering technologies.
The QGraphicsApiFilter::Profile enum has also been changed to be more
more clear. So for now there are enums NoProfile, CoreProfile, and
CompatibilityProfile.
Task-number:QTBUG-49078
Change-Id: Ib5f9c3b7adee5badec6bce8a12b23683eb43b4cb
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: I9bcaa70df8d79ad32abd22941eb03f282ef87175
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: Ie999762329cc2ff104619916c1ae02f0458ccdca
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ib8c4f39f36e61c1ee16c03ebb1e4a43b7b2a1230
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
This is for consistency between the C++ namespaces and QML imports and
with the other aspects.
Change-Id: I73392f138b4e519b12888f52530123e3d0ba445e
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This should make the documentation and code terminology consistent
throughout. We can rename the source directories at a later date if
needed.
Task-number: QTBUG-46622
Change-Id: I2737e54192341808f4a0270ad19ba70f6c4af589
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
|
|
|
|
|
| |
Change-Id: I68d16f2f0c5b967f75c3d150a5bd0ff5758896cd
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
|
|
|
|
|
|
|
| |
Cpp classes to follow
Change-Id: If2479917aa516cf5da37111ae6a5886a8e24e9e7
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ib5a6ea27610dfad3352adacd57c8f0f02c97f31f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I63ea3ddcd16034b4fb2d75cb8d5a90e7f557fd5e
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
| |
Change-Id: Ifd7254c9a60df3043029229a568de72c0dd4e9fb
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I264f5ced16207f0a3539a4a03cebdc4e7bb2de18
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
QStateSet,Quick3DStateSet registered as an extended object under the StateSet
name.
Change-Id: I4334958ab55e403c532f3c200eb273925403dcb5
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
The new QPerVertexColorMaterial class provides color per vertex rendering.
Change-Id: Idc87c21a07c2c8cd1ebfd5bed54c300c55e307ba
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The QJSValue -> QVariantList converter will not be registered because there
is such a conversion provided by qtdeclarative since Qt 5.4.
This avoids a warning on startup.
Change-Id: I69572f36f655315d4c91000a26625f44690dcd6f
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
|
|
|
|
|
|
|
|
| |
As for preparation for Qt5.5 release the copyright header is
updated to correspond the current license requirements.
Change-Id: I36632918b66f455539453b42c369689fb11298ec
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ibe21febfee752e7708b909b5411e35f75ebfb9e5
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
| |
Breaks Texture Rendering until all following patches are merged
Change-Id: Id8663d54ec39697b6c59f626b8b1aa7d5b8d8ebf
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
| |
Texture2D, TextureCubeMap still using their old extensions to not break
examples for now.
Change-Id: I1ad8b37acb3cb15582136be7368c94d8c7c77a4b
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
| |
the Quick3D textures were removed to use the providers directly instead.
Change-Id: Ifa5f28aa1ce8b6e5cc921ac76e6fbd80c5ea3112
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
| |
This is done prior to the whole texture API refactoring.
Doc was also added, might need improvement later on but a base is present at
least.
Change-Id: I75589f14dfbfba7bc4250b2e0960670e020ed38a
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I55dbb0dd52e8be84aa65d787daaec2a943bd071d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I22d2450c3ec9e2b9d1e6c9a9dc1bbd62b1370170
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: I65bc04c2ba950541e8e72cc06b4368fc915651d0
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- UBO created for each Shader/ShaderData
- We deal with nested QShaderData by looking for QNodeId only instead of looking
for QShaderData*
- We update only the values that have changed into the UBO
- A CleanupFrameJob was added to properly clear all RenderShaderData set for
updates after a frame
- RenderShaderData is cleared of all UBO rendering logic
- BlockToUBO contains all the updated properties for a given UBO in a
RenderView, that solves the issue of properties being updated in the
RenderShaderData while performing a draw call
Note: the QShaderData transformed properties were commented for now
deferred-examples and playground qml updates to follow
Change-Id: I8ecf155288c154f41b505cf465d31f5eb8a71b5d
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Ia1705727b362945a26015763ef9e8c749437d9b6
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Use them in material-qml example. Chest, Barrel and HousePlant
simplified.
Change-Id: I4161c79869d79a7bcacadd1d82e5b282deac7df0
Task-number: QTBUG-41548
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
Also registers types contained in the generated qrc file. This
allows us to provide types defined by QML files into the plugin
that mix seemlessly with the exported C++ types.
Change-Id: I19b4afc52130d6edf5aa67a9bce4eeeae9d8b1e5
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
The renderer only cares about QVariantList to detect arrays, the property
reader takes care of converting the values of the Quick3DShaderDataArray to
that.
Change-Id: I53fe2cf46febe7a1fec9be584c50ca505490d672
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QML allows property var array: [] of simple types only.
We can't use a var property to store an array of ShaderDataObject so
Quick3DShaderDataArray was introduce to overcome that issue.
It contains a QQmlListProperty<Quick3DShaderData>.
This is only needed for QML, in C++ providing a QVariantList of QShaderData is
enough.
Change-Id: I768f5189252c219c5a1718b4c4da128bbaff008e
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Quick3DShaderData subclasses QShaderData. QShaderData now provides a
PropertyReaderInterface that returns a correct QVariant from the QVariant
return when reading a QProperty. That way Quick3DShaderData properties (var)
can be transformed to a QVariantList that the Renderer can use without
introducing a QtQml dependency in core.
RenderShaderData was updated to use propertyReader as well on creation and
NodeUpdated events.
A QJSValue -> QVariantList QMetatype converter was introduced to ease that
process.
Change-Id: Ifde5e7b85a1a84342846cd0ac0f047bd2c6ec4ef
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: If867e35b0ab874bb15989e96228d582b98bede2b
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Target is now set in the ctor from C++. On the QML side, there's a QTexture
subclass for each target.
WrapMode on s, t, r for texture, accessible as a grouped property in QML.
Note: I left out the static fromImage as I didn't really understand their
purpose. Please let me know what I'm missing.
Change-Id: I16f75283ae459cbd8ab2d1ec53584b3022bc965b
Task-number: QTBUG-41537
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I2137a22bdf35979ef300820a613db7d7bdc647e0
Task-number: QTBUG-41535
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
| |
That implied moving QAbstractMesh to Renderer as well.
Change-Id: I9013bf0458b849f7805d214a70580a80e86d8c84
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I4024d13acd019752544ec20a71e8a00440085846
Task-number: QTBUG-41539
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
| |
Change-Id: I4b40120807a60873b38687ba8ce0b6c2dfd77127
Task-number: QTBUG-41534
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
| |
Change-Id: Ibc2cb1231ccb2d7a6f986978bd030997be0c2090
Task-number:QTBUG-41528
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
| |
Change-Id: Id800257a337250a04a0bebe0e9a72537439d6cda
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|
|
|
|
|
|
|
|
|
| |
The Quick3DParameterPrivate reimplement a setValue method that takes care of
converting a QVariant containing a QJSValue array to a QVariantList that can
be handled by the backend.
Change-Id: I768d1d863c853d4f81c70f098d8689e3c0149baa
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
|