summaryrefslogtreecommitdiffstats
path: root/src/render/backend/render-backend.pri
Commit message (Collapse)AuthorAgeFilesLines
* Refactor picking to use one thread per entityMike Krus2016-01-251-0/+2
| | | | | | | | | | | | | | Added triangle visitor by refactor the triangle volume extractor Added ability to do a ray intersection with a single volume without using a thread Added entity collector Use one thread for each entity Ignore entities that don’t have a pick object Removed list of triangle volumes stored on each entity Use triangle visitor to test each triangle by creating a single volume on the stack Added triangle and 3 vertex index to the pick event Change-Id: Id3fd53549bf3ea07805426ef868df174f30e176b Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Port FrameGraphManager away from QResourceManagerTobias Koenig2016-01-201-0/+1
| | | | | Change-Id: I7399008adb0f612c78738f58f168fa38cf6ae845 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Add backend for renderer settingsSean Harmer2016-01-171-2/+4
| | | | | Change-Id: I7e87cb106681c384a1b431a362fa904afafb877a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* ComputeJob: backend for QComputeJobPaul Lemire2016-01-131-2/+4
| | | | | Change-Id: I13fb35d0e6d31275463034c3e4bdd92c3f528a4e Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Add AbstractRenderer interfacePaul Lemire2015-11-241-1/+2
| | | | | | | | | | | | The goal is to make the Renderer a subclass of this interface. That way the QRenderAspect can abstract all the rendering part, which will allow us to not be tied down to the rendering technology. We can imagine in a later step that we could add support for DirectX/Vulkan or any other rendering API by just creating a new IRenderer implementation. Change-Id: Ie3bd59f5d06c579da81b6e3553f26f1da765101f Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* TriangleExtractor addedPaul Lemire2015-11-241-2/+4
| | | | | | | | Will allow to retrive a vector of TriangleBoundingVolumes given a GeometryRenderer/Geometry/Attributes and Buffers Change-Id: Ieb1040b2c190ef2a8c03b92e2ecb8739832d7b43 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Track whether the vao has had attributes specified or notSean Harmer2015-11-231-1/+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>
* TriangleBoundingVolume addedPaul Lemire2015-11-201-2/+4
| | | | | Change-Id: I82ed00b73595330df9a6b7b870433e5c919a99a0 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* NodeManagers class addedPaul Lemire2015-11-161-2/+4
| | | | | | | | | The Renderer will have an instance of it so that the managing nodes part can be removed from the Renderer class (should make it easier to test in the long run). Change-Id: Ia85833adff5d0bb383b6cb7bc44869141e1d4985 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* BoundingVolumeDebug backend node addedPaul Lemire2015-11-161-2/+4
| | | | | | Change-Id: Ifd869107ce102ed4b962d2be35f793e9c72a60d6 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* Move picking into its own directorySean Harmer2015-10-251-6/+2
| | | | | Change-Id: I4982f08d18c855a57f621af28b13cc876f20eb16 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* PickEventFilterPaul Lemire2015-10-241-2/+4
| | | | | | | | Will take care of storing MouseEvents that will then be used by the renderer for picking Change-Id: I4d87f8a14975b7fb58484b8847bf07759b1262e0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* ObjectPicker backend class addedPaul Lemire2015-10-241-2/+4
| | | | | Change-Id: Id3213c48f5e7a61de0bebdc0419d7a1007ed3673 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Final batch of file moves for nowSean Harmer2015-10-131-7/+0
| | | | | Change-Id: I0c9e83e3142e6b083feb2cbcabcc4279de64b95b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move render servies to their own directorySean Harmer2015-10-131-5/+0
| | | | | Change-Id: I0efb45750c9a487f2d013ce0ed028ae5f5b05fce Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move texture classes to their own directorySean Harmer2015-10-131-6/+0
| | | | | Change-Id: I026cad678b06d8d785f7652f42d1dccc2fede88a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move material system into own directorySean Harmer2015-10-131-19/+0
| | | | | Change-Id: Iddc3a5d41dc0aff858d8bc3c5b2f7982bd693d00 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move geometry related classes to their own directorySean Harmer2015-10-131-13/+0
| | | | | Change-Id: I74fdfceeeca4801c51fba3586404d5b5dab771b4 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move render state classes into own dir and tidy upSean Harmer2015-10-131-5/+0
| | | | | Change-Id: I0829c42283d6a25e9b3ec623f45739ea266718cf Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move graphicshelpers into their own directorySean Harmer2015-10-131-13/+0
| | | | | | | | This is a move towards grouping files by function rather than frontend vs backend. Change-Id: I7d0536cb3875618a4b7acd841dde6eaaf65cddf1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move QRenderAspect to frontend directorySean Harmer2015-10-131-3/+0
| | | | | Change-Id: Icedb10a8ad0046c5e091c364c4537549c6d53b9f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTransform -> TransformSean Harmer2015-10-131-4/+4
| | | | | Change-Id: Ide8d0d0831755b0eb5f8f724c2e7c0ed838e4b9d Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTextureImage -> TextureImageSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I12c00abc1a539b8ec8a2cbac00283b55216884ac Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTexture -> TextureSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I083461d12e3398c10c6a41de54c3b588ecaf07fa Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderTechnique -> TechniqueSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I619637b27ae2c261b5f86193757ba45b971fed93 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderShader -> ShaderSean Harmer2015-10-131-4/+4
| | | | | Change-Id: Iafdfc44bdc97c53974a2d47834a61914be06ac25 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderShaderData -> ShaderDataSean Harmer2015-10-131-4/+5
| | | | | Change-Id: I254f2205cd1587bb599d26a087c515d526bf289b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderScene -> SceneSean Harmer2015-10-131-4/+4
| | | | | Change-Id: Ic92937db2abbe2b943173249eef120e9f34958a2 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderrenderPass -> RenderPassSean Harmer2015-10-131-4/+4
| | | | | Change-Id: Ia7eeddb8a114eef1ba3c0d2bfae7ecc8d2fcf8d1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderParameterMapping -> ParameterMappingSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I8b9c1498bf10b75a86e9829898abd96476dbd64b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderParameter -> ParameterSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I77367f67c522d5a5bb55423501406a5f7e108b95 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderNodeFunctor -> NodeFunctorSean Harmer2015-10-131-2/+2
| | | | | Change-Id: Ic9d874b8fafdd3a16d725341a3cfecc0bfcb934b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderMaterial -> MaterialSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I4fed4482fe3620caed638f36a054db374a8e8942 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderLayer -> LayerSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I3da5588470de57b5ed144f60b9e28a74f96d164f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderGeometryRenderer to GeometryRendererSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I6e6352de622a7b18eaa5f1f89d15a1d90dd68329 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderGeometry -> GeometrySean Harmer2015-10-131-4/+4
| | | | | Change-Id: I3e7750c2f2388cd14ece6a339beafd13f31e018f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderEntity -> EntitySean Harmer2015-10-131-4/+4
| | | | | Change-Id: Ifb5f3882e9bd584536321dde97eac2c471528f27 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderEffect -> EffectSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I0c30308a609c3530119c99fe99c47782bde0c444 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderCameraLens -> CameraLensSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I58e4422c265ddf7a32c0615b378c8017fe0a3461 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Rename RenderBuffer -> BufferSean Harmer2015-10-131-4/+5
| | | | | Change-Id: I4e230c2d2e0cf12a26a0c869554ec9bcb7a1ccf0 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* RenderAttribute -> AttributeSean Harmer2015-10-131-4/+4
| | | | | Change-Id: I459cd73f92931002c69d5f8fa8c19880e9149d25 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>
* Implement glVertexAttribDivisor helperSean Harmer2015-08-311-0/+2
| | | | | Change-Id: I76f626e8ba5b77d2d54ed7016f5958139167c1ba Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* QGraphicsHelperGL4: dedicated helper for OpenGL 4.3+Paul Lemire2015-08-111-0/+2
| | | | | | | Will allow the introduction of indirect draw calls Change-Id: Ia830c0f6638382a4884097dd96de61e0fbb4c015 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Cleanup: remove QAbstractMesh/QMeshData/MeshDataManagerPaul Lemire2015-08-111-2/+0
| | | | | Change-Id: I1f13cea4cf864dcf985d1f487e195509de9006e7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QRayCastingService implementation using bounding volumesRémi Benoit2015-08-091-3/+6
| | | | | | | | Bounding volumes are used to compute the collisions. Returns all hits or only first bounding volume hit. Change-Id: Ie40ffde56d126a63b1bdd498cdb7afae6eff1a9c Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* RenderMesh removed, replaced by RenderGeometryRendererPaul Lemire2015-08-071-2/+0
| | | | | Change-Id: If049768730a0f3aad3ea2b4f5cda2808f4035726 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Move GeometryRenderManager to its own filePaul Lemire2015-08-071-2/+4
| | | | | | | This is needed to add logic for geometry functors that needs to be loaded. Change-Id: I06e59447c41ea8e08cfdb77fc94084837afebeac Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Rework Renderer to use BufferFunctorPaul Lemire2015-08-071-2/+2
| | | | | | | | | | | | | | | 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>
* Move GeometryRenderManager to its own filePaul Lemire2015-08-071-2/+4
| | | | | | | | This will make it easier to add new properties such as a list of dirty GeometryRenderer to be updated... Change-Id: I30b07d72d373e70c0e2a96a4a47aff9cf63545a4 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>