summaryrefslogtreecommitdiffstats
path: root/src/plugins
Commit message (Collapse)AuthorAgeFilesLines
* [AssimpParser] Optimize aiString to QString conversionKonstantin Ritt2015-05-201-8/+16
| | | | | | | Respect aiString::length to avoid strlen(). Change-Id: I284d061da1dd62de0dda4b72da417cfbc1e99d85 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* AssimpParser: create most appropriate texture materialPaul Lemire2015-05-102-39/+95
| | | | | | | | | | Also fixed material loading issue (was using wrong material index) Note: the flag aiProcess_FlipUVs was required to have textures displayed correctly. Change-Id: I3f5b436fad20d6bf50c8e5ddca56f78948b44fec Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Doc: Fix multiple C++ documentation issuesTopi Reinio2015-04-142-29/+30
| | | | | | | | | | | | | | | | | | | - Remove multiple \namespace commands for namespace Qt3D. QDoc in 5.5 is now able to collate namespace members from multiple modules. - Mark 'Q...Private' classes and functions taking private arguments as \internal - Use correct \qtvariable for Qt 3D Core and Render - Add src/plugins directory to Qt 3D Core documentation build to correctly generate Assimp-related documentation. - Ensure documentation for C++ properties is visible by using the \property command instead of documenting the setter/getter functions. - Add export and logging macros to qdoc ignore directives - Remove unnecessary use of \fn command - Language and styling fixes Change-Id: I2481fa30ad2f6869b85c038c20ff1730b8522d46 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* [Assimp scene loader] Fix loaded camera orientationKonstantin Ritt2015-03-161-12/+8
| | | | | | | | | | | There were several bugs in a single place: - aiCamera::GetCameraMatrix() produces a viewing matrix flipped around Y - additional QMatrix4x4::lookAt() transformation has been applied - and moreover, QMatrix4x4::lookAt(.., .., QVector3D(0, 0, 0)) produces an invalid matrix at all. Change-Id: Ie2a80810d76df0f0c39c3ae53adfdf52b06aafc1 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* [.*SceneParser] Minor clean-upKonstantin Ritt2015-03-162-21/+13
| | | | | Change-Id: I171a3e44383f2f5160b24113de6d92725ed19fe9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Make scene parsers operate on URLs instead of raw filenamesLaszlo Agocs2015-02-132-4/+7
| | | | | | | | 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>
* Avoid polluting the filesystem with AssimpLog.txt filesLaszlo Agocs2015-02-101-2/+0
| | | | | | | | | | Every time the assimp plugin is loaded, that file gets created. Avoid the create and kill calls since all that achieves is to install a null logger. According to the assimp docs a null logger is the default anyhow, so simply remove the two lines. Change-Id: I12dd50827218dcb07d7d5889398e9daf31789953 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Copyright header change.Mika Salmela2015-02-094-76/+56
| | | | | | | | 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>
* Assimparser updated to use new Texture APIPaul Lemire2015-02-081-21/+75
| | | | | Change-Id: I4c030458ecf15d9620d071573f911052fb5a6973 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Texture API refactoringPaul Lemire2015-02-081-1/+1
| | | | | | | | | | * Added LoadTextureDataJob * QAbstractTextureProvider: maximum layers property * Automatic QAbstractTextureProvider::TextureFormat added * material-qml should work perfectly with that patch. Change-Id: I3f92f13b783155798772086304a30126a4fc687d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Make ctor of QAbstractTextureProvider protectedPaul Lemire2015-02-081-2/+2
| | | | | | | That enforces to use one of the subclasses. Change-Id: Idba7300ed322954ba6866c4a262ad4ee74c024e5 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QTexture renamed to QAbstractTextureProviderPaul Lemire2015-02-082-5/+5
| | | | | | | | | | This is done prior to the whole texture API refactoring. Doc was also added, might need improvement later on but a base is present at least. Change-Id: I75589f14dfbfba7bc4250b2e0960670e020ed38a Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Minor improvements to Qt-Assimp briging codeKonstantin Ritt2015-01-282-25/+25
| | | | | Change-Id: I3301a3615443bfd361de97de79b587e22517cf66 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* AssimpParser: use QPhongMaterial to provode default coloringPaul Lemire2014-12-311-6/+7
| | | | | | | | | | The following examples now have coloring: cpp-example multiviewport assimp Change-Id: Ib068ea1f169e5eb924f3b363edd9c4f7f4ef854e Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Stop qmake thinking a plugin is a module tooSean Harmer2014-12-211-1/+0
| | | | | Change-Id: I7cf85692cf86bc0c5a4aceaa3af01f9e0ef3f5ce Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* renderlogging.h -> renderlogging_p.hSean Harmer2014-11-191-1/+1
| | | | | Change-Id: I985366c47d2a1f721761c64b1870850071ace885 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* QTransform refactoredPaul Lemire2014-10-301-3/+2
| | | | | | Change-Id: I9c05c37b7f9576b81169c30686de96c9267e4854 Task-number: QTBUG-41542 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QTexture refactoringPaul Lemire2014-10-301-2/+2
| | | | | | | | | | | | | | Target is now set in the ctor from C++. On the QML side, there's a QTexture subclass for each target. WrapMode on s, t, r for texture, accessible as a grouped property in QML. Note: I left out the static fromImage as I didn't really understand their purpose. Please let me know what I'm missing. Change-Id: I16f75283ae459cbd8ab2d1ec53584b3022bc965b Task-number: QTBUG-41537 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QMeshData: enum for primitivesPaul Lemire2014-10-221-1/+1
| | | | | | | | | | Each value in the enums maps directly to the correct GLint for a given primitive patch. This allows to still return an int to be used directly by the renderer. This should also fix compilation error of ES2. Change-Id: I7ec54dcb2cbb02b67fa6225bb80fb7e691687e2c Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QAbstractMeshData merged with QMeshData and moved to RendererPaul Lemire2014-10-222-9/+9
| | | | | | | That implied moving QAbstractMesh to Renderer as well. Change-Id: I9013bf0458b849f7805d214a70580a80e86d8c84 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QAbstractMesh: setDirty -> updatePaul Lemire2014-10-201-1/+1
| | | | | | Change-Id: I8e4094d69446ec8290fa34e4875f5e1cf822054c Task-number: QTBUG-41522 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Hide doClone implementations behind a macroKevin Ottens2014-10-151-8/+1
| | | | | | | | | This way we will avoid inconsistencies. It also means making some of the copy() implementations more clever. Change-Id: Ic79c9ec7c9c32f8951d5d9f5184592880bf8d5fd Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QNode refactoringPaul Lemire2014-10-031-7/+7
| | | | | | | | | | | | | | | | Move almost everything to private classes. Assimp loading restored. All examples working. QNode hierachy is now handled through QObject::setParent, addChild, removeChild are part of the private api. Note: commented QChangeArbiter unit tests as they can no longer work with this patch and will restore them when QChangeArbiter will have been made private. Task-number: QTBUG-41470 Task-number: QTBUG-41523 Change-Id: I4430974b3aa7f3744c38714b451b122e0cb4d0c9 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* AssimParser slightly refactoredPaul Lemire2014-09-302-90/+105
| | | | | | | | | | | | | | It turns out that Assimp doesn't export the dtor of aiScene. We used Importer::GetOrphanedScene to manage ourselved the lifetime of aiScene. However as the dtor is not exported, changes had to be made to let Assimp manage the lifetime of aiScene. It was probably working before because I had a local build of Assimp but, the issue appears with distro packages. Change-Id: I14f2b5c7bae1555961bc47fa335d54c2f0bc969a Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Improved/Refactored cloning and doClone off all subclassesPaul Lemire2014-09-301-17/+21
| | | | | | | | Note: As we are using QScene during cloning, it is important that node hierarchy be created and added in the proper order (parent then child). Change-Id: I8fd53f7ca696ec9aca19cc70dc116ccba4154911 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Comparison operator for QAbstractMeshFunctor subclassesPaul Lemire2014-09-301-0/+6
| | | | | Change-Id: I18f0c46631615787a5505f7591514bfd33ac6bd0 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QParameter new overloaded ctorsPaul Lemire2014-09-291-15/+15
| | | | | Change-Id: Ia6e3c3285884265b303485176109a4d2c80ccabe Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Assimp external dependencyPaul Lemire2014-08-197-0/+1365
| | | | | | | | The AssimpParser is now a SceneParser plugin that is build if config tests for assimp succeed. Change-Id: I0e3f6a6ce2a43298b71b0261084f6c79521f214d Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Deprecate the plugin architecture for asset loading.Sergey Dubitskiy2012-05-0337-3795/+0
| | | | | | | Task-number: QTBUG-25478 Task-number: QTBUG-24409 Change-Id: If781dc949e3cd7f9b1f83fd7f9e778833d6fe595 Reviewed-by: Sergey Dubitskiy <sergey.dubitskiy@nokia.com>
* qMalloc, qFree, qRealloc, qMemCopy, qMemSet are deprecated.Debao Zhang2012-04-271-1/+1
| | | | | | | Use the stdlib version directly instead Change-Id: Icbcab5281ae601d3a44f048b969dc0f9c283e643 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Network loading of textures and models.dpope2012-04-0410-9/+208
| | | | | | | Task-number: QTBUG-20054 Change-Id: I0624a815ad182bae7d812125e835426fb76f6b44 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Set correct effect for all geometry nodes.Sergey Dubitskiy2012-03-142-0/+24
| | | | | | | | | Before this fix objects were rendered flat white if only a subset of model's QGLSceneNode tree was rendered. Change-Id: Id008f16e00b2b26d0f5f984c72ba2073e4e734f2 Reviewed-by: Danny Pope <daniel.pope@nokia.com> Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Port to new Plugin Loader.Sergey Dubitskiy2012-03-0914-97/+299
| | | | | | | | | AiScene, Bezier and Obj plugins were ported. Task-number: QTBUG-24467 Change-Id: Ic0b31272cd9c13171da10857261eb296f0a0cd77 Reviewed-by: Alex Wilson <alex.wilson@nokia.com> Reviewed-by: Danny Pope <daniel.pope@nokia.com>
* Lib3DS was removed.Sergey Dubitskiy2012-02-2912-1968/+1
| | | | | | | | This code was a dead weight. The loading of 3DS files is covered by Asset Importer library anyway. Change-Id: I6ce254a42d2d21795d65019f0f670d1b60034222 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Fix misleading header guards.Sarah Smith2012-02-295-13/+10
| | | | | | | | | Ooops - cut 'n paste error here. These header guards still referred to the old lib3ds files that they were copied from. Change-Id: I0f84fd3c117c5fc1b004675fd0b6369325ab7c12 Reviewed-by: Sergey Dubitskiy <sergey.dubitskiy@nokia.com> Reviewed-by: Danny Pope <daniel.pope@nokia.com>
* Add examples doc & fix doc a bit.Sarah Smith2012-02-162-0/+2
| | | | | | | | | | | | | | | | | Create new qdoc examples doc to reference our four showcase examples: cube, lander, monkeygod and shaders. There was an issue with the shaders tutorial because even tho' this is under a seperate directory qdoc pulls them all into the same namespace with the \example tag so this had to be changed to shadertut. Also began fixing qdoc errors but there is a huge pile and this fix needs to go in. Task-number: QTBUG-24135 Change-Id: Iddedc5cee8f6e255ccbb234f1458986a6f834b40 Reviewed-by: Julian de Bhal <julian.debhal@nokia.com> Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Buid fix if use '-no-stl' configure optionYuchen Deng2012-02-154-11/+11
| | | | | | | error C2039: 'toStdString' : is not a member of 'QString' Change-Id: If56f3e3dc2424c4fd96883f3b211bedc4b495781 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Suppress debug output on model load.Sarah Smith2012-02-141-7/+4
| | | | | | | | | | | | | | | Switch to using an environment variable for displaying model debug output. The _DEBUG macro is not a guarantee that the debug output will only be produced in debug builds, since its not respected by some compilers. In any case, even in debug mode lots of spurious output is not desired. Let's remove the _DEBUG macro, in favour of a documented environment variable. Change-Id: Icfb2d0bb22ad311e204ddd3cbddb5cb74a2f6b46 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Integrate Qt3D into Qt5 and fix some qdoc errors.Peter Yard2012-02-144-8/+8
| | | | | | | | | | | | | | | | This doc change by 'integrating into Qt5' also made some changes to the build system, so that now you need QT+=3d everywhere (instead of QT+=qt3d as it was previously). We have been asked to make this change, and it seems it is required for this doc system to work, so lets get it done. Note that the original change had a docsnippets target but that did not work at all and will have be done in a later commit. Change-Id: Icf4bc6b4be9494f1752e18ca1f5198c8fe8ecf53 Reviewed-by: Peter Yard <peter.yard@nokia.com> Reviewed-by: Julian de Bhal <julian.debhal@nokia.com>
* Task: Resource handling needs refactoring.Sergey Dubitskiy2012-02-123-5/+2
| | | | | | | | | | | | | Phase One: 1. fixed lots of memory leaks related to Texture2D's not being deleted. 2. Texture2D now prints warning in destructor, if cleanupResources() was not properly called before. Task-number: QTBUG-24043 Change-Id: Ia6a8bbe38ad66778a38705e0a4464f24373d8846 Reviewed-by: Danny Pope <daniel.pope@nokia.com>
* Added a declarative animation property; and example application.Sergey Dubitskiy2012-02-065-0/+29
| | | | | | Task-number: QTBUG-22194 Change-Id: I3a16c3220decd6328ad85504cab5fa259feda982 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Remove tga support from Qt3d.Toby Tomkins2012-01-318-723/+1
| | | | | | | Task-number: QTBUG-21955 Change-Id: I5165520450a320967bf501c5ec3b0e7d724d8b51 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-3037-37/+37
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: Iaddf1e489f97d2b08894827c90e9e58cd02d2ef2 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Upgrade to AssImp library v2.0.863.Sergey Dubitskiy2012-01-291-3/+75
| | | | | | | | Also includes a new example. Task-number: QTBUG-22194. Change-Id: I9b8cb61f805b9011b6478532be83aa6d9a45111e Reviewed-by: Danny Pope <daniel.pope@nokia.com>
* Update obsolete contact address.Jason McDonald2012-01-2037-37/+37
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I36e7a01dc458ad25afef2de46a5807f2983fac43 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-1237-37/+37
| | | | | | Change-Id: I6e681df7e4fac972a604531cecd9850cd9710935 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Update copyright year in Nokia copyright headers.Jason McDonald2012-01-121-1/+1
| | | | | | | Update copyright headers from before 2011. Change-Id: Id5a16806e69c595b12cc761acfa0a0eaf0b99d72 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Make Qt3D buildable without widgets or opengl.Sarah Smith2011-12-211-1/+1
| | | | | | | | | | | | | | | | Pull out all references to QGLContext, and QGLWidget and so on; and replace with the equivalent from the gui library. Where there is no equivalent, eg the BindOptions enum, then reimplement. Also get rid of the harmattan and symbian packaging goop. This had become completely unmaintainable, and was making it very hard to see what dependencies were being pull in by the various parts of the build system. In order to have any confidence that conditional compilation would not add in some problematic dependency, clean all this up. Task-number: QTBUG-23299 Change-Id: Ied92ca1397076986e455674b064d8540bb13c0df Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* Fix failing unit tests (TGA formats/qimagreader).Sarah Smith2011-12-212-0/+34
| | | | | | | | | | | | | | | | | | | | | | | | | The test that was failing was the readFromDevice one - where the extension is not known. Looks as though image detection is required in a positive way, that is it is not enough to say I think I can read this file, and then fail if the format is "corrupt", you must be certain that the file was intended to be that format. In the case of TGA the original format has no magic byte header, and no consistent way to check if it really is a TGA file. With 2.0 the footer was added at the end, so that can be checked for confirming the file is TGA. However rejecting files which do not have this means that old TGA files will not be read. On a quick survey TGA files that have been used in applications so far all seem to be 2.0 TrueVision, so for now, lets just reject earlier files and see how it goes. (patched and cherry-picked from original) Change-Id: Iae99dc457c269362c1dbd77e7bec588373ee94f2 Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
* New Repo: Updating all non-code references (comments and such) to Qt3D.Patrick Burke2011-12-1237-37/+37
| | | | | Change-Id: Icd7709d4fd91fc972d503f8e3f9de0e47f56ff96 Reviewed-by: Patrick Burke <patrick.burke@nokia.com>