-
Pasi Keranen authored
Moved typed array code to new subdirectory to make it more clear what parts are going to be removed in final release. Documented the temporary renaming of some of the methods to work around issues in overloaded function calls from JavaScript. Change-Id: I5a22741a3b4025149724df9d6b25abc4de3ff5bc Reviewed-by:
Pasi Keränen <pasi.keranen@digia.com>
484040fd
To learn more about this project, read the wiki.
--------------------------------------- Qt Canvas 3D 1.0.0 Technology Preview 1 --------------------------------------- Qt Canvas 3D 1.0 module provides a QtQuick canvas component that can be used to render with WebGL-like API from QtQuick JavaScript environment System Requirements =================== - Qt 5.3 or newer - OpenGL 2.1 (or newer) or OpenGL ES2 Building ======== Configure the project with qmake: qmake After running qmake, build the project with make: (Linux) make (Windows with MinGw) mingw32-make (Windows with Visual Studio) nmake (OSX) make The above generates the default makefiles for your configuration, which is typically the release build if you are using precompiled binary Qt distribution. To build both debug and release, or one specifically, use one of the following qmake lines instead. For debug builds: qmake CONFIG+=debug make or qmake CONFIG+=debug_and_release make debug For release builds: qmake CONFIG+=release make or qmake CONFIG+=debug_and_release make release For both builds (Windows/Mac only): qmake CONFIG+="debug_and_release build_all" make After building, install the module to your Qt directory: make install If you want to uninstall the module: make uninstall Building as a statically linked library ======================================= The same as above applies, you will just have to add static to the CONFIG: qmake CONFIG+=static Documentation ============= The documentation can be generated with: make docs The documentation is generated into the doc folder under the build folder. Both Qt Assistant (qtcanvas3d.qch) and in HTML format (qtcanvas3d subfolder) documentation is generated. Please refer to the generated documentation for more information: doc/qtcanvas3d/index.html Known Issues ============ - QObject based TypedArray implementation is a temporary stop gap solution and will be removed from QtCanvas3D later on. - Texturing does not work perfectly in all of the examples. - Using Qt Quick Enterprise Controls buttons cause a crash on application exit on Windows in certain circumstances (try JSON Models Example for reference). - Resizing window works incorrectly if viewport is updated during rendering to match the window size (try Framebuffer Example for reference). - These methods are named for Tech Preview with “a” postfix to denote “array” versions taking a JavaScript array instead of TypedArray. This is to resolve method overloading problems with the current QObject based TypedArray implementation and will be rectified before final release: void uniform1fva(CanvasUniformLocation *location, QVariantList array) void uniform2fva(CanvasUniformLocation *location, QVariantList array) void uniform3fva(CanvasUniformLocation *location, QVariantList array) void uniform4fva(CanvasUniformLocation *location, QVariantList array) void uniform1iva(CanvasUniformLocation *location, QVariantList array) void uniform2iva(CanvasUniformLocation *location, QVariantList array) void uniform3iva(CanvasUniformLocation *location, QVariantList array) void uniform4iva(CanvasUniformLocation *location, QVariantList array) void vertexAttrib1fva(uint indx, QVariantList values) void vertexAttrib2fva(uint indx, QVariantList values) void vertexAttrib3fva(uint indx, QVariantList values) void vertexAttrib4fva(uint indx, QVariantList values)