summaryrefslogtreecommitdiffstats
path: root/src/quick3d/quick3drender/items
Commit message (Collapse)AuthorAgeFilesLines
* Remove qmake build filesMike Krus2023-03-171-44/+0
| | | | | | | | Except in examples Pick-to: 6.5 Change-Id: I31b06ddfc79f14dde3369518a76d57606daf939f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* quick3drender plugin: Disambiguate meta type id constantsFriedemann Kleint2023-02-102-6/+4
| | | | | | | | | | | Make them function-local to prevent clashes in CMake Unity (Jumbo) builds, Pick-to: 6.5 Task-number: QTBUG-109394 Change-Id: I3c42d2b2f45f5aef5f63ced4f68911d6d34a2884 Reviewed-by: Inho Lee <inho.lee@qt.io> Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Remove Qt6 QT_VERSION checks from the code basePaul Lemire2023-02-1013-98/+0
| | | | | | | | | | Those are left overs from the Qt 5.15 to Qt 6 port. Now that both code based have diverged, there's no much point in keeping those checks. Pick-to: 6.5 Change-Id: I4e83876b6b4cb18b181af32e376f4411054a1183 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Port from container::count() and length() to size() - V4Marc Mutz2022-10-2011-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8, but extended to handle typedefs and accesses through pointers, too: const std::string o = "object"; auto hasTypeIgnoringPointer = [](auto type) { return anyOf(hasType(type), hasType(pointsTo(type))); }; auto derivedFromAnyOfClasses = [&](ArrayRef<StringRef> classes) { auto exprOfDeclaredType = [&](auto decl) { return expr(hasTypeIgnoringPointer(hasUnqualifiedDesugaredType(recordType(hasDeclaration(decl))))).bind(o); }; return exprOfDeclaredType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes)))); }; auto renameMethod = [&] (ArrayRef<StringRef> classes, StringRef from, StringRef to) { return makeRule(cxxMemberCallExpr(on(derivedFromAnyOfClasses(classes)), callee(cxxMethodDecl(hasName(from), parameterCountIs(0)))), changeTo(cat(access(o, cat(to)), "()")), cat("use '", to, "' instead of '", from, "'")); }; renameMethod(<classes>, "count", "size"); renameMethod(<classes>, "length", "size"); a.k.a qt-port-to-std-compatible-api V4 with config Scope: 'Container'. Change-Id: I3b040fa72968753048fd669c073ae80c3ba1bdad Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Qt3DQuickRender: includemocsMike Krus2022-06-2318-0/+36
| | | | | | | Task-number: QTBUG-103286 Pick-to: 6.3 6.2 5.15 Change-Id: Ie491bf6d3f492854e4a979650185c73eaaadf04c Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Use SPDX license identifiersLucie Gérard2022-06-2239-1484/+80
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I8105424281eed871037fa6c463871ca8829876b5 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Update QQMLPropertyList APIMike Krus2021-01-0825-787/+633
| | | | | | | Use lambdas with local typedefs for index type Change-Id: I2876c71d619815e7e777f936e8bb0835b8269336 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Follow up on change of QQmlListProperty to qsizetypeMike Krus2020-11-2024-76/+76
| | | | | | | | | Also update dependencies and fix non-gui builds. Disabled (for now) gltf unit test since JSON parser seems to crash. Change-Id: Ie7fdd9626653e89ad43e8bdb22b0e764618b1e9e Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Mike Krus <mike.krus@kdab.com>
* QRenderTargetSelector: remove outputs/drawBuffers propertyPaul Lemire2020-08-133-179/+0
| | | | | | | | | | This cannot be handled with RHI and in practice nobody ever used that feature. [ChangeLog] QRenderTargetSelector remove outputs/drawBuffers property Change-Id: I6b02718733e5c05cee9074b0078ba2a544de95d6 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* Add support for synchronous pickingMike Krus2020-07-306-120/+5
| | | | | | | | World space and screen space raycasters gain method to do a pick query synchronously, returning the list of hits. Change-Id: I41cc3940b8d97c3619456d76127841907a9170cb Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Use QList instead of QVector in implementation and docsJarek Kobus2020-07-093-4/+4
| | | | | | | | | Fix some const correctness. Use list-initialization. Task-number: QTBUG-84469 Change-Id: I9c56742581f48f89a3b02e4121fae414117c7a25 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Geometry refactoringMike Krus2020-02-275-440/+0
| | | | | | | Move QBuffer, QAttribute, QGeometry to Qt3DCore. Change-Id: I59dfd091eefadcada93350b3aba955f40b304385 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Replace QLatin1Literal with QLatin1StringGiuseppe D'Angelo2019-06-111-19/+19
| | | | | | | | | QLatin1Literal is an undocumented and deprecated typedef for QLatin1String, just use the original. Change-Id: Id6a813ed5c0a457f003dbd118b64f77d9d82cb13 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* quick3dparameter_p.h use nullptr instead of 0Paul Lemire2019-06-051-2/+2
| | | | | | Change-Id: I7efd499085c7953a855fdd0fb971180cef804130 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Michael Brasser <michael.brasser@live.com>
* Switch export macros to standard formKai Koehne2019-04-0223-23/+23
| | | | | | | | | | | | Qt expects the export macros to have Q_ prefixes, otherwise the symbol versioning script won't find them and mark them. Also remove non-exising QT3DLOGIC_PRIVATE_EXPORT macro from src/doc/qt3d.qdocconf Task-number: QTBUG-74752 Change-Id: I71b9e85ff09c002fb283824aa51a5a8f50e937f4 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Add support for layers to control ray castingMike Krus2018-02-055-0/+59
| | | | | | | | | | RayCaster and ScreenRayCaster can have a number of layers which are used to control how entities with the matching layers are handled for ray casting. Similar rules apply as for LayerFilter in the frame graph. Change-Id: I9f666563a686ac99d7f178da33a539ba9edef51b Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QtQuick API for ray castingMike Krus2018-02-017-2/+587
| | | | | | | | Overrides hits property with QJSValue that can be interpreted from Javascript Change-Id: I8795b1fc9fdf4f36357c4bb5c8c5d0b7c5fd6c75 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Merge remote-tracking branch 'origin/5.10' into devLiang Qi2017-10-051-1/+1
|\ | | | | | | | | | | | | Conflicts: src/animation/backend/channelmapper_p.h Change-Id: I4e0f59c6648925ba45d30ccc2405524a9e901a0e
| * Port away from QBuffer::typeKevin Ottens2017-09-221-1/+1
| | | | | | | | | | Change-Id: I910d1fa7099dc726e022cbf35702b0b58fbac64e Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Replace Q_DECL_OVERRIDE with overrideKevin Funk2017-09-252-2/+2
|/ | | | | Change-Id: I92c955068e233c50043ad7d06a32300dd386c24d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Silence ICC warning about unused local variableThiago Macieira2017-04-071-1/+1
| | | | | | | | | | quick3dshaderdata.cpp(56): error #2415: variable "Qt3DRender::Render::Quick::<unnamed>::quick3DShaderDataTypeId" of static storage duration was declared but never referenced Since the initialization has side effects, we need to keep the variable, so just mark it unuse. Change-Id: I27b55fdf514247549455fffd14b1c9712ac05281 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Merge branch '5.8' into 5.9Sean Harmer2017-04-0237-67/+87
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/core/jobs/qthreadpooler.cpp src/core/nodes/qcomponent.cpp src/core/qpostman.cpp src/core/qscene_p.h src/core/services/qservicelocator_p.h src/input/frontend/qinputaspect.cpp src/plugins/sceneparsers/assimp/assimpimporter.cpp src/plugins/sceneparsers/assimp/assimpimporter.h src/plugins/sceneparsers/gltf/gltfimporter.h src/plugins/sceneparsers/gltf/gltfio.cpp src/quick3d/imports/core/qt3dquick3dcoreplugin.cpp src/quick3d/imports/extras/qt3dquick3dextrasplugin.cpp src/quick3d/imports/render/qt3dquick3drenderplugin.cpp src/quick3d/quick3dextras/qt3dquickwindow.cpp Change-Id: I3566708c6f74a34959e7bb64b64e93647ca3f699
| * Coding convention fix for Src/Quick3DRobert Brock2017-04-0137-67/+87
| | | | | | | | | | | | | | | | Reordering the header includes to comply with Qt coding conventions Task-number: QTBUG-56185 Change-Id: I60008858a4975621b9159d909908b6bba2f98f14 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QShaderData: fix texture support in propertiesKevin Ottens2017-02-241-5/+3
| | | | | | | | | | | | | | | | There was only code dealing with sub-shader data but nothing allowing to check if a property was a texture, this is now properly handled. Change-Id: I48984727eff975e9f3e2c21c5185b336efc963fd Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QMemoryBarrier cleanupPaul Lemire2017-02-162-8/+8
| | | | | | | | | | | | | | | | | | | | | | -rename barriertypes to waitOperation -in QML introduce a waitFor property -remove the Barrier suffix for the enum values -rename BarrierType to Operation Task-number: QTBUG-58878 Change-Id: Idc65f44b09e632509cd74286de26fea02e6b6dee Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Add Quick3DMemoryBarrierPaul Lemire2017-01-253-2/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Needed to work around the fact that QFlags aren't supported as a QML property type. And modify QMemoryBarrier to work with it -> remove the Q_PROPERTY from QMemoryBarrier (it's in QUick3DMemoryBarrier) -> properly send the notification change (since there's no Q_PROPERTY) -> adjust AllBarriers values so that we can use QFlags &= to set it (|= not available with ints) Change-Id: Ide5b1c774fbbb1df745857b78ca353038b3cc052 Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
* | Quick3DBuffer: add helper method to read binary filePaul Lemire2017-01-132-0/+23
|/ | | | | Change-Id: Ib96806720171cddc990f4b0df59a8690d56bc605 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* LCOV exclusion comments squashedPaul Lemire2016-11-232-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a combination of 60 commits. qlockableobserverinterface_p.h: add LCOV exclusion comments qobserverinterface_p.h: add LCOV exclusion comments qpostman_p.h: add LCOV exclusion comments qsceneobserverinterface_p.h: add LCOV exclusion comments qscene_p.h: add LCOV exclusion comments qnodeid.h: add LCOV exclusion comments quick3dshaderdataarray_p.h: add LCOV exclusion comments quick3dshaderdata_p.h: add LCOV exclusion comments qquaternionanimation_p.h: add LCOV exclusion comments qabstractphysicaldeviceproxy_p.h: add LCOV exclusion comments qmouseevent.h: add LCOV exclusion comments qmousedevice.h: add LCOV exclusion comments qaxisaccumulator.h: add LCOV exclusion comments qtextureimagedatagenerator.h: add LCOV exclusion comments qtexturewrapmode.h: add LCOV exclusion comments qabstracttexture.h: add LCOV exclusion comments qtextureimage.h: add LCOV exclusion comments texture_p.h: add LCOV exclusion comments qtexturegenerator.h: add LCOV exclusion comments qsortpolicy.h: add LCOV exclusion comments qrendertargetselector.h: add LCOV exclusion comments qsortcriterion.h: add LCOV exclusion comments qclearbuffers.h: add LCOV exclusion comments qrendercapture_p.h: add LCOV exclusion comments uniform_p.h: add LCOV exclusion comments triangleboundingvolume_p.h: add LCOV exclusion comments qgeometryfactory.h: add LCOV exclusion comments qbuffer_p.h: add LCOV exclusion comments qbuffer.h: add LCOV exclusion comments qgeometryrenderer.h: add LCOV exclusion comments qbufferdatagenerator.h: add LCOV exclusion comments qattribute.h: add LCOV exclusion comments qsceneiohandler_p.h: add LCOV exclusion comments qsceneloader.h: add LCOV exclusion comments qrendersettings.h: add LCOV exclusion comments qcamera.h: add LCOV exclusion comments qcameralens.h: add LCOV exclusion comments sphere_p.h: add LCOV exclusion comments shaderdata_p.h: add LCOV exclusion comments qshaderdata.h: add LCOV exclusion comments qgraphicsapifilter.h: add LCOV exclusion comments qshaderprogram.h: add LCOV exclusion comments qpointsize.h: add LCOV exclusion comments qblendequation.h: add LCOV exclusion comments qstenciltestarguments.h: add LCOV exclusion comments qalphatest.h: add LCOV exclusion comments qstenciloperationarguments.h: add LCOV exclusion comments qdepthtest.h: add LCOV exclusion comments qblendequationarguments.h: add LCOV exclusion comments qfrontface.h: add LCOV exclusion comments qcullface.h: add LCOV exclusion comments qray3d_p.h: add LCOV exclusion comments qboundingvolume_p.h: add LCOV exclusion comments qabstractcollisionqueryservice_p.h: add LCOV exclusion comments qpickevent.h: add LCOV exclusion comments qabstractlight.h: add LCOV exclusion comments light_p.h: add LCOV exclusion comments qt3dquickwindow.h: add LCOV exclusion comments scene3ditem_p.h: add LCOV exclusion comments qgraphicsapifilter_p.h: add LCOV exclusion comments Change-Id: I3af0e2a4d85685c919dbfaa8b3f384777f026542 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
* MSVC2015_64 "internal compiler error" fixesv5.8.0-alpha1Tomi Korpipää2016-08-313-7/+8
| | | | | | Change-Id: I8b67b6932eca7ada6ac44521b8a1a526eb0553e5 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: Antti Määttä <antti.maatta@qt.io>
* Add partial data update support for QBufferOleg Evseev2016-08-132-9/+21
| | | | | | | | | | | Perform upadateData through queue of replacements specified by QBufferUpdate: start position (offset) and QByteArray (replacing data) Add example based on custom-mesh-cpp to show how updating data works. Task-number: QTBUG-50720 Change-Id: I2eceb514af21209deb278d73c94773e39f300fb3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Quick3DBuffer: do not always convert from QJSValuePaul Lemire2016-07-171-2/+10
| | | | | | | | | | | | In most cases when Quick3DBuffer::setBufferData is called, the QVariant parameter contains a QJSValue. In some cases though, such as when the data property of a Quick3DBuffer is set from a C++ data model, the QVariant may contain a QByteArray directly. Doing the QJSValue conversion in that case would result in a failure as the data set would be 0. Perform the proper QVariant conversion based on the contained type. Change-Id: I263d275fd780f57a67f11c9ca47c5d6f8ddf7a23 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Merge branch '5.6' into 5.7Sean Harmer2016-05-191-1/+1
|\ | | | | | | Change-Id: Ie0fc178d3c0f818ea32aac0e98c97861d4c0f671
| * Eliminate references to dead memoryWieland Hagen2016-05-041-1/+1
| | | | | | | | | | | | | | | | | | | | Buffer data upload from QML would not copy the buffer data from the JS buffer class, but just store a pointer to it. JS Garbage collection may free that memory while it is still used by QBuffer Task-number: QTBUG-51667 Change-Id: I366e4e8ad601f058ae022ec4b4978e18eed0e395 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | quick3d: eradicate Q_FOREACH loops [low-risk]Marc Mutz2016-05-1413-27/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | ... by replacing them with C++11 range-for loops. This is the batch with low-risk changes. They operate on local containers or the loop body clearly does not cause the container to change. Sprinkled in a reserve() or two. Change-Id: I5a3da485213791ae58c82f4a81829cfba558a3d6 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Get rid of QLayer::namesKevin Ottens2016-05-043-0/+199
| | | | | | | | | | | | | | | | | | | | | | | | | | Don't reinvent a variable naming system (string based global variables even) and instead use pointer to QLayer instance everywhere, even with QLayerFilter. The wave and deferred-renderer-cpp examples have been ported to the new API. Change-Id: I82a858770954a8743a5c3d2ce0c463e62844871f Task-number: QTBUG-51440 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Q_NULLPTR -> nullptrSean Harmer2016-05-015-7/+7
| | | | | | | | | | | | Task-number: QTBUG-52736 Change-Id: I58f9cbcdf018e7b672d33dd865067485412b79fe Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Strip out cloning subsystemSean Harmer2016-04-294-15/+8
| | | | | | | | | | Change-Id: I4def54a11de0f9c676ef6b2d7bd8e723ded25ab9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Rename QTechniqueFilter::criteria() to matchAll()Sean Harmer2016-04-271-3/+3
| | | | | | | | | | | | | | As per API review. Change-Id: Icaf9d489b760f5df101141f2662e44658575e850 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Moves QSortCriterion flag to QSortPolicy and remove itFranck Arrecot2016-04-263-189/+0
| | | | | | | | | | | | Change-Id: I44f71671ead23256d5fdc621545492885ff940a5 Task-id: QTBUG-51486 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | QNode: make cleanup a private slotPaul Lemire2016-04-232-6/+0
| | | | | | | | | | | | | | | | | | | | QT3D_CLONEABLE now implements a default dtor that calls _q_ cleanup QT3D_CLONEABLE_CUSTOM_DTOR is used for classes that really need to implement their own dtor but they need to invoke _q_cleanup manually Change-Id: I2937a3b9edeb5a763749f0044360d78ab4461a5e Task-number: QTBUG-51464 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QVectorize Quick3DShaderDataArrayRobert Brock2016-04-212-3/+3
| | | | | | | | | | Change-Id: I68f7ce1995534a6775d26ecaa936c47f3a18e35a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | QVectorize QRenderTargetSelectorWieland Hagen2016-04-201-1/+1
| | | | | | | | | | Change-Id: Icae15aef51a623ea543edad9d04513d59e94273b Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QAbstractTextureProvider renamed to QAbstractTexturePaul Lemire2016-04-061-1/+1
| | | | | | | | | | | | Change-Id: If8ea2c9806e28f6d97eb3fb852686647c0c04d8f Task-number: QTBUG-51504 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Complete the QRenderPassFilter property renaming.Volker Krause2016-03-271-1/+1
| | | | | | | | | | Change-Id: I246853f9ddbff3880cdcd734d24c580a1eacd3d0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Class QRenderPassFilter renamingRobert Brock2016-03-231-5/+5
| | | | | | | | | | | | | | | | | | | | includes -> matchAny addInclude -> addMatch removeInclude -> removeMatch Change-Id: Ib9288ab79b3e76ae8a8aa2f7e3f20c5386438a25 Task-number: QTBUG-51456 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge QAbstractSceneLoader down into QSceneLoaderMike Krus2016-03-171-2/+2
| | | | | | | | | | | | Task-number: QTBUG-51484 Change-Id: I8eebe105331cb94306d27739996e34862fbd1a0a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | QAnnotation changesFranck Arrecot2016-03-178-70/+70
| | | | | | | | | | | | Task-number: QTBUG-51454 Change-Id: Iee08f6b1be39894c40926afb20e003d46bc735f4 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | QTechnique renamingRobert Brock2016-03-081-5/+5
| | | | | | | | | | | | | | | | | | | | annotations -> filterKeys addPass -> addRenderPass removePass -> removeRenderPass Change-Id: Ica1731ee3100b249e4fef04f45c0e6326732d644 Task-number: QTBUG-51458 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QRenderTargetSelector renamed drawBuffers to outputsRobert Brock2016-03-081-2/+2
| | | | | | | | | | | | | | As per API review Change-Id: Ifaf926705d51fa17ceb3c187f6cf2d10db81dbda Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | QRenderTarget rename attachment to outputsRobert Brock2016-03-081-6/+6
| | | | | | | | | | | | | | As per API review Change-Id: I85cb9b405e79d9062a80b6f0b0cbb1968c1c0664 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>