summaryrefslogtreecommitdiffstats
path: root/src/render/backend/handle_types_p.h
Commit message (Collapse)AuthorAgeFilesLines
* Lights phase 1: infrastructureLaszlo Agocs2015-11-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Track whether the vao has had attributes specified or notSean Harmer2015-11-231-2/+2
| | | | | | | | | | | | | | | | In some cases the VAO was being created but there wasn't any input attributes specified on the shader at that time which skipped the specification of the attributes in updateBuffersAndAttributes(). We now track whether the VAO has been specified as part of the VAO object itself. This way, the first time the VAO is actually used to draw something we can ensure the attributes have been specified. Also skip the draw calls if the primitive count is zero. Change-Id: Iad0a1cff4677ab33369057a6000f0f4a18dc5c58 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Handle type for BoundingVolumeDebugPaul Lemire2015-11-161-0/+2
| | | | | | Change-Id: I52d1e770855d402f0403baf159ef824204d2d947 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* d-pointer classes, private/public changesTomi Korpipää2015-10-301-3/+3
| | | | | | Change-Id: I4ca133aebad0c088296ab293f95f0a6d76d18395 Task-number: QTBUG-39946 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Add handle typedef for ObjectPickerPaul Lemire2015-10-241-0/+2
| | | | | Change-Id: Ib69207a64c3f9e38eed9f36800669a602656622a Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Rename Renderer -> Render throughoutSean Harmer2015-10-191-1/+1
| | | | | | | | 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>
* Handle Types: remove duplicate HShader entryPaul Lemire2015-10-151-1/+0
| | | | | Change-Id: I5ab8173786b1e0c4b6c94a5e9a3ec6b27d447768 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Move Qt3DCore into Qt3DCore namespaceSean Harmer2015-10-131-26/+26
| | | | | | | Update other aspects, tests and examples accordingly. Change-Id: Ib1bcf0bdf4f5aec4422dc0c80bfc32b27fb1a317 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Add "We mean it" warnings to private headersSean Harmer2015-10-131-0/+11
| | | | | Change-Id: Ic4a69123255c33990765ea3601e01914c2d8cb70 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTransform -> TransformSean Harmer2015-10-131-2/+2
| | | | | Change-Id: Ide8d0d0831755b0eb5f8f724c2e7c0ed838e4b9d Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTextureImage -> TextureImageSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I12c00abc1a539b8ec8a2cbac00283b55216884ac Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTexture -> TextureSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I083461d12e3398c10c6a41de54c3b588ecaf07fa Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTechnique -> TechniqueSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I619637b27ae2c261b5f86193757ba45b971fed93 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderShader -> ShaderSean Harmer2015-10-131-3/+3
| | | | | Change-Id: Iafdfc44bdc97c53974a2d47834a61914be06ac25 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderShaderData -> ShaderDataSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I254f2205cd1587bb599d26a087c515d526bf289b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderrenderPass -> RenderPassSean Harmer2015-10-131-2/+2
| | | | | Change-Id: Ia7eeddb8a114eef1ba3c0d2bfae7ecc8d2fcf8d1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderParameter -> ParameterSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I77367f67c522d5a5bb55423501406a5f7e108b95 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderMaterial -> MaterialSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I4fed4482fe3620caed638f36a054db374a8e8942 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderLayer -> LayerSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I3da5588470de57b5ed144f60b9e28a74f96d164f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderGeometryRenderer to GeometryRendererSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I6e6352de622a7b18eaa5f1f89d15a1d90dd68329 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderGeometry -> GeometrySean Harmer2015-10-131-2/+2
| | | | | Change-Id: I3e7750c2f2388cd14ece6a339beafd13f31e018f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderEntity -> EntitySean Harmer2015-10-131-2/+2
| | | | | Change-Id: Ifb5f3882e9bd584536321dde97eac2c471528f27 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderEffect -> EffectSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I0c30308a609c3530119c99fe99c47782bde0c444 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderCameraLens -> CameraLensSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I58e4422c265ddf7a32c0615b378c8017fe0a3461 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderBuffer -> BufferSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I4e230c2d2e0cf12a26a0c869554ec9bcb7a1ccf0 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* RenderAttribute -> AttributeSean Harmer2015-10-131-2/+2
| | | | | Change-Id: I459cd73f92931002c69d5f8fa8c19880e9149d25 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* RenderAnnotation -> AnnotationSean Harmer2015-10-131-2/+2
| | | | | Change-Id: Iccf052b78a74ba03658630e061d2fa335c280dc6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move Render aspect into the Qt3DRender namespaceSean Harmer2015-10-131-32/+32
| | | | | | | Updated examples and tests accordingly. Change-Id: I8848a88472de2302aa072fa11f21ea934672b7e6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Cleanup: remove QAbstractMesh/QMeshData/MeshDataManagerPaul Lemire2015-08-111-2/+0
| | | | | Change-Id: I1f13cea4cf864dcf985d1f487e195509de9006e7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* RenderMesh removed, replaced by RenderGeometryRendererPaul Lemire2015-08-071-2/+0
| | | | | Change-Id: If049768730a0f3aad3ea2b4f5cda2808f4035726 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* QResourceManager for RenderGeometryRenderer objectsPaul Lemire2015-08-071-0/+2
| | | | | Change-Id: I9d56ca143cc772fe8e4627c872453b38e0c6fce2 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QResourceManager for RenderGeometry objectsPaul Lemire2015-08-071-0/+2
| | | | | Change-Id: I848cb20d20e59d3fa18c6336d3649e7ad810494d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QResourceManager for RenderAttribute objectsPaul Lemire2015-08-071-0/+2
| | | | | Change-Id: I65a2dbd1491356ef9b5f33024b973031cd5be4d1 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QResourceManager for RenderBuffer objectsPaul Lemire2015-08-071-0/+2
| | | | | Change-Id: Id8f2f2c5a155ac8f1d59751a8fc19f363de9c4f0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Copyright header change.Mika Salmela2015-02-091-19/+14
| | | | | | | | 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>
* TextureImageManager for RenderTextureImagePaul Lemire2015-02-081-0/+2
| | | | | Change-Id: I3a751d3357606951cc90176b6c48c4684e4f560f Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Removed RenderLight as QAbstractLight is now a QShaderDataPaul Lemire2014-12-121-2/+0
| | | | | Change-Id: I6d07ef4545f4312d6a9526a6dfd0617e9d371a5d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Manager for RenderShaderDataPaul Lemire2014-12-101-0/+2
| | | | | Change-Id: I6063567362e8d29a4a48560e625bcae6a5e89190 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Added ParameterManager in the backendPaul Lemire2014-10-181-0/+2
| | | | | | | Also changed the CameraManager to use the ArrayAllocatingPolicy Change-Id: Icb00e29e47c29be02cc45c2d200b8c7611a29632 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Renamed RenderCriterion to RenderAnnotationPaul Lemire2014-10-171-2/+2
| | | | | Change-Id: If19e15d2ee6a663607ba13b8ddf6dac3193948d2 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Separate handle definition from Manager declarationPaul Lemire2014-10-171-0/+107
All handles typedefs are defined in a dedicated small header file that can easily be included. Those typedefs must be used when referencing a certain type of handles to avoid errors. All raw QHandle uses or redefinitions of typedefs have been removed. Change-Id: Ia6c006ede0db3be22e58dad9b3cc104029023056 Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>