summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Merge remote-tracking branch 'origin/5.9.3' into 5.10.0" into ↵v5.10.0-rc3v5.10.0-rc2v5.10.0-rc1v5.10.0Antti Kokko2017-11-211-0/+28
|\ | | | | | | refs/staging/5.10.0
| * Merge remote-tracking branch 'origin/5.9.3' into 5.10.0Liang Qi2017-11-211-0/+28
| |\ | | | | | | | | | Change-Id: Ibd6b6b261cac963722577f25451db23fbb72944d
| | * Add changes file for Qt 5.9.3v5.9.3Antti Kokko2017-11-101-0/+28
| | | | | | | | | | | | | | | Change-Id: Ie5a771e346e6c5559804847aa6633722c10eb04a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Add changes file for Qt 5.10.0Antti Kokko2017-11-211-0/+87
|/ / | | | | | | | | Change-Id: Ibfa0d8578c1d838d6f24004eb6ded1bca91706c9 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge 5.10 into 5.10.0Oswald Buddenhagen2017-11-2066-538/+2162
|\ \ | | | | | | | | | Change-Id: I1d59f6d4f69c5ab33efe1a00a983a2af880ef79a
| * \ Merge "Merge remote-tracking branch 'origin/5.9' into 5.10" into ↵Laszlo Agocs2017-11-189-1/+32
| |\ \ | | | | | | | | | | | | refs/staging/5.10
| | * \ Merge remote-tracking branch 'origin/5.9' into 5.10Andy Nichols2017-11-179-1/+32
| | |\ \ | | | | | | | | | | | | | | | Change-Id: I22fe31282c8673a3f5b097d35af568663f9c8c02
| | | * | Fix for uniform arrays on some driversPaul Lemire2017-11-175-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some drivers reports names of uniform arrays without the terminating [0]. Therefore if for a given uniform name, with uniform size > 1, [0] is missing, we append it. Fix provided by Donald Marotzke Change-Id: I53f9826c092e2aa1e7756dafb494b32caca8b3bc Task-number: QTBUG-63537 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| | | * | Material dirty only on param name/enabled changeSvenn-Arne Dragly2017-11-151-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I11e5ce86b318386b8458743b63f57824d3732271 Reviewed-by: Christian Stromme <christian.stromme@qt.io> Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| | | * | Fix AnimationClip crash when removing clipsAndy Nichols2017-11-153-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to ClipAnimators, it is important to take care when using these handles by checking if the frontend components have been destroyed already. Change-Id: I0dc3be94a6f0a7d5b064b864eed6cb2961b36ad9 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | | Fix controls example to look betterSean Harmer2017-11-171-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Phong lighting now takes alpha into account to set this to 1. Also add an explicit point light and properly use ambient and diffuse components. Change-Id: I252004c1a22bc3f43a527f79feef310b23279863 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | | | Use texture() GLSL function rather than texture2D() in core profileSean Harmer2017-11-171-1/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The texture2D() function doesn't exist in the core profile although some drivers allow it. Follow the standard to be safe. Task-number: QTBUG-64428 Change-Id: I69b3f300928c93663add35bebcfce99e0ee4c340 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | | Split animation callback handling into its own frontend classSean Harmer2017-11-1612-74/+586
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This keeps things consistent between the 3 mapping types: * Regular properties * Callbacks * Skeletons The ChannelMapping backend node handles all 3 frontend types. Change-Id: I824aeb25aa69d96f20d844e7d953c68567829321 Reviewed-by: Mike Krus <mike.krus@kdab.com> Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | | Fix layer filter manual testPaul Lemire2017-11-161-2/+2
| | | | | | | | | | | | | | | | | | | | Change-Id: I88eb9b0a88291a5152d5eded3c16d01c84a459fe Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | Fix: run filterlayerjob when enabled changes on EntitiesPaul Lemire2017-11-161-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Force caches to be rebuilt when layers have changes or enabled flag on Entities Change-Id: I23e9312ffcf8875ba18d4c8cd22aef706f5de24d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | Fix rendering following LayersDirtyPaul Lemire2017-11-167-215/+432
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The LayersDirty flag on the renderer was being checked within a running QAspectJob, which resulted in broken rendering (since the flag is cleared before running the jobs). Also in the case of Scene3D we could end up resetting the LayersDirty flag even though we hadn't really rebuilt the caches. Overhaul this part to make it more robust. The render views now always look into the caches and we schedule job to rebuilt the caches instead of doing both at the same time. Updated unit tests accordining and removed the access of the renderer's dirty bits within jobs. Change-Id: Id6b415ba86c91754a960aec3fd88af1ddc21ebe0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | Merge "Merge remote-tracking branch 'origin/5.9' into 5.10" into ↵Lars Knoll2017-11-1521-246/+331
| |\ \ \ | | | | | | | | | | | | | | | refs/staging/5.10
| | * | | Merge remote-tracking branch 'origin/5.9' into 5.10Svenn-Arne Dragly2017-11-1521-246/+331
| | |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/render/backend/abstractrenderer_p.h src/render/backend/layer.cpp src/render/backend/layer_p.h src/render/backend/render-backend.pri src/render/backend/renderer_p.h src/render/backend/renderviewbuilder.cpp tests/auto/render/renderer/tst_renderer.cpp tests/auto/render/renderviewbuilder/tst_renderviewbuilder.cpp Change-Id: I5c1b649052992e1b3483d549ddc188c8450e927f
| | | * | Add layer entity filter cachingSvenn-Arne Dragly2017-11-1410-13/+149
| | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add all dirty flag enums found in dev. Change-Id: Ib364773002a3170aef66e7b365a0a41d8e60bd92 Reviewed-by: Svenn-Arne Dragly <svenn-arne.dragly@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| | | * Rework resource handlingLars Knoll2017-11-076-234/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rework the way the QResourceManager allocates and manages it's resources. Get rid of the huge pre-allocated freelist, and instead merge it with the counter field (that is now always a quintptr large). Give QHandle a direct pointer to it's data in addition to the counter. This makes QHandle 8 or 16 bytes large, but speeds up access to it's data and gives more safety on the counter as that one now always has at least 31 bits. Counter and the linked freelist use the same memory location. To avoid potential conflicts, make sure the counter is always an odd number, so it can't be a valid pointer. Do not use INDEXBITS anymore, the resource manager can now always allocate as many resources as we have RAM available and will grow with the required use (and not allocate fixed memory upfront). This change reduces the memory consumption of the qardboard example from a bit above 40 to 10MB. Change-Id: I514f2d3f957f8635098fb88342e42e3361456340 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| | | * Deal with trailing spaces and crlfKevin Ottens2017-11-074-1/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We ended up having corrupted meshes if the application which exported the OBJ was adding trailing white spaces. Also make sure we got a test case using crlf for end of lines. Change-Id: Iace9dbc3d0d124fefe9e3350d396fdf26555cd17 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | Set the mapping type in tst_findrunningclipanimatorjobsSvenn-Arne Dragly2017-11-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should be initialized to the same value, but it is better to be explicit. Change-Id: I71b7f561b8c7ceaa27f1107ba079d34012454e6c Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | Test if m_mappingType is properly initialized in tst_channelmappingSvenn-Arne Dragly2017-11-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I125462c2ca8abfd4a563c8128dce9b9efcae02f8 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | Make sure m_mappingType is initialized in ChannelMappingSvenn-Arne Dragly2017-11-151-0/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I5e1e56703dc6897e009accd5c8214b2472224046 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | | Replace all phong variants with QDiffuseSpecularMaterialKevin Ottens2017-11-1513-10/+759
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | This one reconfigures its graph layers and render states properly based on it properties. As such it covers all the features coming from the various phong materials we had in the past. That's why they are all marked as deprecated. Change-Id: I9a74639d4cff5170b496d475c8a74b1e4e163b03 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | Remove unnecessary list searchesChristian Strømme2017-11-141-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | Several times we would check if a job was inserted into the job list even though we already knew if it was inserted or not. Change-Id: I3501ffce2e1493401d83ccebec47e3eeaa0b7f9b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | Reserve vector size ahead of time in the AttachmentPack classChristian Strømme2017-11-141-0/+2
| | | | | | | | | | | | | | | Change-Id: Iaed11a9bc23da076dff7006d7aa34f17c6c2aac8 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | Use std::move when returning the dirty buffers listChristian Strømme2017-11-141-3/+1
| | | | | | | | | | | | | | | Change-Id: I40c79ed33242ff8f856b6c0a0ef084cc78148ba7 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | Fix warnings caused by QClipAnimator calling QNode::sceneChangeEventAndy Nichols2017-11-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling the base implementation of sceneChangeEvent unnecessarily can cause lots of warnings to be printed: "sceneChangeEvent should have been subclassed" To prevent this (and still work around the bug this line intended to fix) a conditional has been added to make sure that we do not hit the warning condition. Change-Id: Ibaa771b4b58d6f4e38ba815bde1b635ed83867d2 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | Blacklist filtercompatiblerechniquejob autotestMäättä Antti2017-11-081-3/+4
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-64271 Change-Id: I43dbd3c8a757c00bf1e5002344f51bce2377664c Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* | | Fix resource init namespace issuesLaszlo Agocs2017-11-143-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow the pattern from other modules and put Q_INIT_RESOURCES in a static function outside all namespaces. INTEGRITY reportedly has linking issues without this. Task-number: QTBUG-64468 Change-Id: Iccdd03f5384765251a94502766a445a6c6d732b0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Kimmo Ollila <kimmo.ollila@qt.io> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* | | Fix BC with QRenderCaptureMäättä Antti2017-11-132-7/+28
| | | | | | | | | | | | | | | | | | | | | Add overload for the new function and set revision. Change-Id: I235ebf0be575467a882735f1fc87844a8b40889f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Fix material system qrc in static buildsLaszlo Agocs2017-11-083-0/+11
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | The Qt3DRender part is clear and we have a good global place to do the Q_INIT_RESOURCE call. Extras is debatable since there is no good place. Quick is already handled via the import plugins, but pure C++ applications also need this in static builds. For now add it to QForwardRenderer and Qt3DWindow. This should cover the common use cases for the materials in extras. Task-number: QTBUG-64279 Change-Id: I276e8d4265f4527736d415b07dbf03e9d8904adf Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Add missing layer to the baseColorMap nodeKevin Ottens2017-11-071-0/+1
| | | | | | | | | | Change-Id: Id540dae6e52e027d7c5b18441575c05361d6e269 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Update to new QRandomGenerator APIv5.10.0-beta4Thiago Macieira2017-11-031-1/+1
| | | | | | | | | | Change-Id: I69f37f9304f24709a823fffd14e676c097712329 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-10-3120-29/+482
|\| | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/render/backend/renderview.cpp src/render/backend/renderview_p.h Change-Id: I6c1122632f2c481da31a63e3abd42b760d1ff211
| * Fix SortPolicy sorting key generationLaszlo Agocs2017-10-203-4/+29
| | | | | | | | | | | | Change-Id: Ib06d84088d93e00ffdcaa6baa9d34e03358943cb Reviewed-by: Svenn-Arne Dragly <svenn-arne.dragly@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| * Doc: Add doc for undocumented methodsNico Vertriest2017-10-201-0/+6
| | | | | | | | | | | | | | | | qanimationclip.h:56: warning: No documentation for Qt3DAnimation::QAnimationClip::clipData Change-Id: Ic44c96d47d3dff095b6b299f5280f21345dba452 Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * Doc: add doc to undocumented methods/propertiesNico Vertriest2017-10-205-4/+346
| | | | | | | | | | | | | | | | | | | | | | | | | | | | qtexturewrapmode.h:60: warning: No documentation for 'Qt3DRender::QTextureWrapMode::WrapMode' qtexturewrapmode.h:55: warning: No documentation for 'Qt3DRender::QTextureWrapMode::x' qtexturewrapmode.h:56: warning: No documentation for 'Qt3DRender::QTextureWrapMode::y' qtexturewrapmode.h:57: warning: No documentation for 'Qt3DRender::QTextureWrapMode::z' qtexturegenerator.h:59: warning: No documentation for 'Qt3DRender::QTextureGenerator::operator()() qtexturegenerator.h:60: warning: No documentation for 'Qt3DRender::QTextureGenerator::operator==(const QTextureGenerator &other) qtexturewrapmode.h:60: warning: No documentation for 'Qt3DRender::QTextureWrapMode::WrapMode' Change-Id: I6a77f43dfb153de142d12ef1c3cdb1850669d49f Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * Doc: add doc to undocumented classesNico Vertriest2017-10-205-1/+21
| | | | | | | | | | | | Change-Id: I342a74f6605d7e6a9ac6f07af21dc8f7fd80c3ce Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * Blacklist checkRunRendererRunning in WindowsTony Sarajärvi2017-10-201-0/+2
| | | | | | | | | | | | | | | | | | After a fix for a crash, this test now FAILs, which requires blacklisting until it is fixed Task-number: QTBUG-63639 Change-Id: I918600f36053a5a3e1adb31da4f1d4ec3303b8b0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Blacklist tst_FilterCompatibleTechniqueJob in WindowsTony Sarajärvi2017-10-191-0/+2
| | | | | | | | | | | | | | | | | | | | After a fix for a crash, this test now FAILs, which requires blacklisting until it is fixed Task-number: QTBUG-63639 Change-Id: I10ce9b6b80aa5adf83f2113be7c6b2007463b73e Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * tst_FilterCompatibleTechniqueJob: Fix crash on Open GL context creation failureFriedemann Kleint2017-10-181-3/+12
| | | | | | | | | | | | | | | | | | | | Add a few pointer checks. This allows for the test to be blacklisted instead of marked as insignificant. Task-number: QTBUG-63639 Change-Id: Ide9216226d880909a600c3becc0d6ca7259e5a69 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * Examples: Fix outdated BSD license headerKai Koehne2017-10-131-2/+12
| | | | | | | | | | | | | | Use new version with commercial exception. Change-Id: I09809579db277135edce1c6c1938ac3915600e11 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| * Render next frame if texture data is not availableHarald Vistnes2017-10-093-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Texture data from generators may not be available in the current frame and the next frame should be rendered immediately, even in OnDemand rendering. The problem was that this information was not propagated back to the renderer, it was just silently ignored inside GraphicsContext::setParameters. Added a bool return type to GraphicsContext::setParameters so that the renderer could check for errors. Task-number: QTBUG-63561 Task-number: QTBUG-59752 Change-Id: I18fb6f8236bf47d3eeab07d879dffaa599665e6b Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Merge remote-tracking branch 'origin/5.9.2' into 5.9Liang Qi2017-10-063-2/+41
| |\ | | | | | | | | | Change-Id: I8d6bb938f7ad06fa97898f4242af76cb48efbfc5
| | * Add changes file for Qt 5.9.2v5.9.2Antti Kokko2017-09-281-0/+39
| | | | | | | | | | | | | | | Change-Id: I87e8292ee606af33f729e2b492a616325a49c89a Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| | * Make m_pressAndHoldTimer into a raw pointer to avoid deleting it twiceSvenn-Arne Dragly2017-09-282-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The timer is parented to the QMouseHandler (introduced in 595b4add0ce6f32bb8ffc56b3a59e6e5bf0b000a) and was therefore deleted both by the parent and by the QScopedPointer, leading to crash on exit. This commit removes the QScopedPointer and uses a raw pointer instead. Task-number: QTBUG-63462 Change-Id: I6b031caf7cb69ccbde74995661f4ce8c73f21d88 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | Bump versionOswald Buddenhagen2017-10-061-1/+1
| | | | | | | | | | | | Change-Id: Ib54e714e9152ac669441d0067ceb27f5b29ca436
| * | Fix race in rendererPaul Lemire2017-10-061-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All buffers are uploaded to GPU before the frame submission takes place. If during frame submission we check for a CPU buffer whether it's dirty, we end up (rightfully) with a race condition as we are preparing for frame n+1 already. There must have been a left over when the above changes were made as the UBO/SSBO code paths would, during rendering, check whether a CPU buffer was dirty, and if so try to upload, causing a race. Removed these code paths which aren't needed. Change-Id: I713a92b881335ecfb30f24bd7485a7bac29be4b7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>