summaryrefslogtreecommitdiffstats
path: root/src/render/backend/jobs
Commit message (Collapse)AuthorAgeFilesLines
* Final batch of file moves for nowSean Harmer2015-10-1321-2111/+0
| | | | | Change-Id: I0c9e83e3142e6b083feb2cbcabcc4279de64b95b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move render state classes into own dir and tidy upSean Harmer2015-10-131-1/+1
| | | | | Change-Id: I0829c42283d6a25e9b3ec623f45739ea266718cf Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Remove Q prefix from graphics helpersSean Harmer2015-10-131-1/+1
| | | | | Change-Id: I79066df0df1fbac4f49e47c91c552fca0d4093bf 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-1/+1
| | | | | Change-Id: I12c00abc1a539b8ec8a2cbac00283b55216884ac Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTexture -> TextureSean Harmer2015-10-131-1/+1
| | | | | Change-Id: I083461d12e3398c10c6a41de54c3b588ecaf07fa Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTechnique -> TechniqueSean Harmer2015-10-132-9/+9
| | | | | Change-Id: I619637b27ae2c261b5f86193757ba45b971fed93 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderShaderData -> ShaderDataSean Harmer2015-10-134-15/+15
| | | | | Change-Id: I254f2205cd1587bb599d26a087c515d526bf289b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderScene -> SceneSean Harmer2015-10-131-1/+1
| | | | | Change-Id: Ic92937db2abbe2b943173249eef120e9f34958a2 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderrenderPass -> RenderPassSean Harmer2015-10-132-3/+3
| | | | | Change-Id: Ia7eeddb8a114eef1ba3c0d2bfae7ecc8d2fcf8d1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderParameter -> ParameterSean Harmer2015-10-131-1/+1
| | | | | Change-Id: I77367f67c522d5a5bb55423501406a5f7e108b95 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderMaterial -> MaterialSean Harmer2015-10-132-3/+3
| | | | | Change-Id: I4fed4482fe3620caed638f36a054db374a8e8942 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderGeometryRenderer to GeometryRendererSean Harmer2015-10-132-3/+3
| | | | | Change-Id: I6e6352de622a7b18eaa5f1f89d15a1d90dd68329 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderEntity -> EntitySean Harmer2015-10-1310-30/+30
| | | | | Change-Id: Ifb5f3882e9bd584536321dde97eac2c471528f27 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderEffect -> EffectSean Harmer2015-10-132-6/+6
| | | | | Change-Id: I0c30308a609c3530119c99fe99c47782bde0c444 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderCameraLens -> CameraLensSean Harmer2015-10-131-1/+1
| | | | | 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>
* RenderAnnotation -> AnnotationSean Harmer2015-10-131-4/+4
| | | | | Change-Id: Iccf052b78a74ba03658630e061d2fa335c280dc6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move Render aspect into the Qt3DRender namespaceSean Harmer2015-10-1320-115/+110
| | | | | | | Updated examples and tests accordingly. Change-Id: I8848a88472de2302aa072fa11f21ea934672b7e6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* RenderViewJobUtils: remove unused function prototypePaul Lemire2015-09-131-4/+0
| | | | | Change-Id: If16db77a50c0b1b57eda8be4b4149f2eb4f882a1 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Merge remote-tracking branch 'origin/5.5' into devAndy Nichols2015-08-1712-116/+245
|\ | | | | | | Change-Id: Id0a3559e001631a077bc1c3a17c30a48599eecb9
| * Cleanup: remove QAbstractMesh/QMeshData/MeshDataManagerPaul Lemire2015-08-114-175/+0
| | | | | | | | | | Change-Id: I1f13cea4cf864dcf985d1f487e195509de9006e7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Remove unused member variableSean Harmer2015-08-102-6/+3
| | | | | | | | | | | | | | Silences a warning from clang Change-Id: I6dd2ac84538910d87e23f08499cab16774c4b6a0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * RenderGeometryRenderer/GeometryFunctor: everything is now hooked upPaul Lemire2015-08-071-1/+2
| | | | | | | | | | Change-Id: I70bcd536ef7d4fbeb3b5ad8a9593af7bd984a0af Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * LoadGeometryJob added to load geometriesPaul Lemire2015-08-073-2/+145
| | | | | | | | | | Change-Id: I6149a085197fb317fffe6214d16a4806bd08e58c Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * RenderMesh removed, replaced by RenderGeometryRendererPaul Lemire2015-08-072-13/+13
| | | | | | | | | | Change-Id: If049768730a0f3aad3ea2b4f5cda2808f4035726 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Rework Renderer to use BufferFunctorPaul Lemire2015-08-072-7/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Each buffer when it receives a new functor adds itself with the buffer manager. This then allows to build LoadBufferJob instances for each buffer to be loaded. The buffers can then be loaded before a frame is rendered. The GeometryRendererManager has been moved back with other managers and the BufferManager takes its place to handle the additional management of dirty buffers. Renderer updated accordingly. Change-Id: I5df839b56d18de077e1ff2921cb481ed8f613567 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Add LoadBufferJob classPaul Lemire2015-08-073-2/+152
| | | | | | | | | | | | | | | | One LoadBufferJob will be created per unique dirty buffer so that buffer data loading can be easily parallelized. Change-Id: Icb0e4fcb2f0262d9a5eb349a01d30788f5138c0b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * New Buffer API Frontend ClassesGiuseppe D'Angelo2015-08-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Switch QAbstractAttribute and QAbstractBuffer to QNode subclasses - Get rid of all shared pointer when dealing with these (needed to expose to QML and use the QObject ownership) - Introduce QGeometryRender, QGeometry, QAttributeProvider, QAttributeAggregator. A QMesh component now is: a QGeometryRenderer which specifies its QGeometry. The QGeometry refererences n attributes. Each attribute references a QAbstractBuffer. Change-Id: I49a10c11a605e5fe7c180af86a404f622e763f48 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * StateSet: handle multiple nested StateSetPaul Lemire2015-07-251-2/+12
| | | | | | | | | | Change-Id: Id50551822c1085fb4420bc881bddb55da473ff9b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * TextureDataManager/TextureImageData improvedPaul Lemire2015-07-242-18/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | * Removed RenderTextureProvider which was never used * Add cleanup method in TextureImageData to reduced memory consumption when waiting for the object to be recycled by the resources manager * Improved the TextureDataManager to keep track for each functor of all the associated TextureImages which allows to release TextureImageData that we don't need to keep Change-Id: Id805fc0e7ef8d7c586eb77382bc66cd5e4cc8107 Task-number: QTBUG-47223 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Properly shutdown the rendererPaul Lemire2015-07-061-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Now all pure Qt3D examples have a 0 exit code. Still need some work for QtQuick/Scene3D examples. The problem being that we hit the QOpenGLDebugger issue since we are unable to shutdown properly the Qt3D renderer because Scene3D being a QQuickItem is destroyed before the QQuickWindow and we never have a chance to receive the sceneGraphInvalidated signal. Change-Id: I1d30e0d883057630a55cd3f99eaa6bdb65a8df26 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Renderer refactored to only process jobs for the current framePaul Lemire2015-06-292-10/+2
| | | | | | | | | | | | | | | | | | - get rid of the RenderQueues - properly synchronize the RenderQueue/Allocators - unit tests updated Change-Id: I71c0321c888765c674cbe5fda5ececfa11b06995 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Merge branch '5.5' into devSean Harmer2015-06-053-23/+53
|\| | | | | | | Change-Id: I8b3235703b7ceeb23de0b07753bed5f29436da31
| * QCameraLens: allow specify projection with frustrumPaul Lemire2015-05-121-1/+1
| | | | | | | | | | | | | | Also added doc Change-Id: I45d077910dc8ac3d8cd06cf6835eb41be2ae5fe3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Fix: Allow StateSet to not contain any Qt3D::QRenderStatePaul Lemire2015-05-101-3/+0
| | | | | | | | | | | | | | | | | | This offers a way to explicitly request every render states to be disabled. Also updated the doc to be clear about how render states are defined. Change-Id: I91af58dd3ede7ffd7fc9cc022c5e007104791151 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Renderer: glDrawBuffers using QRenderTargetSelector drawBufferPaul Lemire2015-05-101-1/+8
| | | | | | | | | | Change-Id: I760401c7749ca97801e2254cda6b306b1748e10d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * RenderView: lookup RenderPassFilter/TechniqueFilter ParametersPaul Lemire2015-05-092-18/+17
| | | | | | | | | | | | | | | | | | These will override the Parameters defined in Material/Effect/Technique/RenderPass with RenderPassFilter having a higher priority than TechniqueFilter. Change-Id: I39e31b989ea2a752d4bab7b4023c6e0a0167e75d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * RenderViewJobs: process local Parameters per RenderPassPaul Lemire2015-05-092-4/+16
| | | | | | | | | | Change-Id: I78a3625a9f195150e224a1f03ef35999af572300 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * RenderView handle NoDraw casePaul Lemire2015-04-272-1/+7
| | | | | | | | | | | | | | | | | | If a NoDraw was defined in the FrameGraph tree, the RenderView noDraw boolean is set to true. In the RenderViewJob, RenderCommand are build only if noDraw is false. Change-Id: I507da45835022421a75c4539cf39b1f626a9521b Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Renderer: apply per RenderView global RenderStatePaul Lemire2015-04-252-4/+13
| | | | | | | | | | | | | | | | | | | | | | Each RenderView now has a RenderStateSet. If the FrameGraph tree contains a StateSet node, the RenderStateSet will be created and filled correctly in the RenderView. Otherwise the RenderView's RenderStateSet will remain null. When comes render time, foreach RenderView, if the RenderStateSet is not null, it will be applied before processing the rest of the RenderView. Change-Id: Id0aecce1f77950665e17ff759336d7fc29a0afcf Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-03-172-3/+96
|\| | | | | | | | | | | | | Conflicts: src/core/doc/qt3dcore.qdocconf Change-Id: I3e0b4288daf6be5cd0d274ab34223e7a9ea2ec18
| * Do not update eye position if there's no cameraKonstantin Ritt2015-03-161-3/+1
| | | | | | | | | | | | | | Sorting by depth wouldn't make sense in this case. Change-Id: I02ceef82970ead2a84170ffe4e559f2281408915 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Fix MSVC warnings.Friedemann Kleint2015-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | aspects\qabstractaspect.cpp(50) : warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data resources\qframeallocator.cpp(276) : warning C4267: 'argument' : conversion from 'size_t' to 'uint', possible loss of data resources\qframeallocator.cpp(284) : warning C4267: 'argument' : conversion from 'size_t' to 'uint', possible loss of data qchangearbiter.cpp(108) : warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data qt3d/src/render/backend/jobs/renderviewjobutils_p.h(64) : warning C4099: 'Qt3D::Render::ShaderUniform' : type name first seen using 'struct' now seen using 'class' Change-Id: I055f2021cbecf0765a811aedd87eb2cee97e6431 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * RenderShader: Fix for absence of instance names in UBOPaul Lemire2015-02-281-2/+7
| | | | | | | | | | | | | | | | | | | | - Also added debug logging in RenderShader for the Shaders logging category - This restores the deferred-example rendering which was broken since 3abbf9227ada8f68821a5ad473bba4f52e625fb5 Change-Id: Ie1b39c903f8c33f7d9b859317ae185c42043a9e2 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * RenderView: moved the ShaderData name/value map building outPaul Lemire2015-02-282-0/+90
| | | | | | | | | | | | | | | | | | It is now contained in RenderViewJobUtils inside an helper struct called UniformBlockValueBuilder. This allow to simplify the code and will make unit testing easier. Change-Id: Ibbeeda8d913bfa1adc7c93c1fecb9cafda15deb3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Doc: link and qdoc errors Qt3DNico Vertriest2015-03-111-2/+2
|/ | | | | | | Task-number: QTBUG-44180 Change-Id: Ic798dee5d33dbf18dbc9d978a0f07217895a30ee Reviewed-by: Topi Reiniƶ <topi.reinio@digia.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* Do not build render jobs without a surfaceLaszlo Agocs2015-02-162-1/+6
| | | | | | | | | | | | | Examples like wireframe tend to crash on exit. This is because the platform surface filter sets the renderer's surface back to null, while we are trying to build some jobs still. Even though everything gets shutdown soon after that, we have to somehow prevent any operations relying on the surface in the meantime. This is also an opportunity to avoid exposing the surface pointer from Renderer. Instead, communicate the surface size to the render views. Change-Id: Ifc739ec50e3f6a67d20bfd0dc1913a12b906a8ab Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Make scene parsers operate on URLs instead of raw filenamesLaszlo Agocs2015-02-132-5/+6
| | | | | | | | This way they are compatible with how mesh and texture source URLs are handled. Change-Id: Ifeee504fd3f5957d23f5cade92a73663488bdaf9 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Copyright header change.Mika Salmela2015-02-0918-342/+252
| | | | | | | | 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>