| This directory contains the Qt3D project for Qt5: |
| * Qt3D QML bindings and |
| * Qt3D C++ APIs |
| |
| |
| Building Qt3D |
| ================== |
| |
| Qt5 is a rapidly changing bleeding edge environment. This branch is our initial |
| support for it and thus is also rapidly changing and bleeding edge. |
| |
| This branch is experimental, and unsupported. This information is provided for |
| advanced use only. |
| |
| No guarantees about API stability or even if this works at all are supplied, use |
| at your own risk. |
| |
| First fetch the Qt5 source tree and Qt3D master branch: |
| |
| cd ~/depot |
| git clone ssh://codereview.qt-project.org:29418/qt/qt5.git |
| cd qt5 |
| ./init-repository --codereview-username <username> \ |
| --module-subset=qtbase,qtsvg,qtdeclarative,qttools,qtxmlpatterns,qtdoc,qlalr,qtrepotools,qtqa,qtlocation,qt3d |
| git submodule foreach "git fetch gerrit && git reset --hard gerrit/master" |
| cd qt3d |
| scp -p -P 29418 codereview.qt-project.org:hooks/commit-msg .git/hooks/ |
| git fetch gerrit |
| git checkout --track -b master gerrit/master |
| |
| If you are reading this file then somehow you probably already got this far anyway. |
| |
| Now build Qt5, which will also build Qt3D as a module: |
| |
| cd ~/build |
| mkdir qt5 |
| cd qt5 |
| ~/depot/qt5/configure -developer-build -opensource -confirm-license -no-webkit -no-phonon -nomake tests \ |
| -nomake examples -declarative -opengl -svg && make -j 4 |
| |
| |
| What's in Qt3D |
| ================== |
| |
| Directory structure: |
| |
| src/threed/ |
| This is the main library of the Qt3D project, containing abstractions |
| for cross-platform GL, shaders, lighting models, and so on. |
| src/plugins/ |
| Scene format loading plugins. |
| src/imports/ |
| QML import plugins. |
| util/ |
| Various utilities that are useful when working with Qt3D. |
| examples/ |
| Some examples of using Qt3D QML bindings and Qt3D C++ API. |
| demos/ |
| Some more complex demos of using Qt3D QML bindings and Qt3D C++ API. |
| tests/auto/qml3d/ |
| Unit tests for the QML bindings. |
| tests/auto/threed/ |
| Unit tests for the C++ API |
| doc/ |
| Documentation. |
| devices/symbian/ |
| Symbian deployment file |
| |
| |
| Documentation |
| ============= |
| |
| The documentation can be generated with "make docs". It will be placed |
| into "doc/html" in the build directory. |
| |
| |
| Packages |
| ======== |
| |
| This section is only for those developing Qt3D. Read on to discover how |
| the building of packages works. This section is also important if you want to |
| change how the structure of the Qt3D pro files work. |
| |
| To build Qt3D, run: |
| |
| qmake && make |
| |
| The .pro files will cause the toolchain to place the libraries, QML files and |
| meshes of Qt3D directly into place, as part of the compile process. The files |
| go into the bin/ directory, and the executables can be run directly from there. |
| If you are doing a developer build, plugins will be installed in such a way |
| that Qt will find them. |
| |
| After building the tree the install step is invoked using the INSTALL_ROOT environment |
| export to cause the installation rules to place all the files into a sandboxed |
| install tree, ready for packaging: |
| |
| INSTALL_ROOT=tmp make install |
| |
| |
| Examples |
| ======== |
| |
| Some examples require assimp library to parse the content. Go to http://assimp.sourceforge.net/ |
| and build and install the assimp library. Then configure Qt3D to include assimp and |
| run qmake && make. |