Qt-contributors-summit-2014-Qt3D: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
Slides from presentation can be found at http://www.kdab.com/~sean/Qt3D/Qt3D_CS.pdf | |||
* Wiki page with some more details at [[Qt3D-wip-newapi-Overview|http://wiki.qt.io/Qt3D-wip-newapi-Overview]] | |||
* Why the subsystem architecture | |||
** Allow users/developers to enrich the scene | |||
** Allow Qt3D to be extensible with Aspects: audio, physics, … | |||
* Why the components based architecture | |||
** Cf. Game Engine book [http://www.amazon.co.uk/Game-Engine-Architecture-Jason-Gregory/dp/1568814135/ref=sr_1_1?ie=UTF8&qid=1402413619&sr=8-1&keywords=game+engine+architecture http://www.amazon.co.uk/Game-Engine-Architecture-Jason-Gregory/dp/1568814135/ref=sr_1_1?ie=UTF8&qid=1402413619&sr=8-1&keywords=game+engine+architecture] | |||
** Avoid combinatorial explosion | |||
** Avoid multiple inheritance | |||
** Just attach data to an entity | |||
*** Data = component provided by an aspect | |||
* Why configuring the FrameGraph | |||
** QQ2: hardcoded framegraph — render opaque pass + transparent pass | |||
** In Qt3D: allow users to configure the passes, etc. | |||
* The <span class="caps">QML</span> <span class="caps">API</span> maps 1:1 the C++ <span class="caps">API</span> | |||
** QtQuick3DFoo <-> Qt3DFoo | |||
** qmlRegisterExtendedType | |||
* <span class="caps">TODO</span>s for 5.x: | |||
** remove certain type providers from QtQuick | |||
*** f.i. Qt.vector3d(…) should be provided by a common library QtQuick2 and Qt3D link to | |||
*** Animations | |||
** QQmlCustomParser, QQmlParserStatus public? | |||
** qmlRegisterExtendedUncreatableType and qmlRegisterExtendedCustomType | |||
** Integration with QQ2 | |||
* <span class="caps">TODO</span> before release: | |||
** Un-namespace the <span class="caps">API</span> | |||
** Shape: use a class per each builtin shape type | |||
** Provide a set of materials / effects | |||
** Figure out how to deal with ThreadWeaver licensing | |||
*** Compile time flags for disabling / choosgin between TW / <span class="caps">IBB</span> … | |||
*** For 5.4 just disable it | |||
* <span class="caps">SIGGRAPH</span> | |||
** Khronos, etc. | |||
* Technical preview out soon? |
Revision as of 14:11, 25 February 2015
Slides from presentation can be found at http://www.kdab.com/~sean/Qt3D/Qt3D_CS.pdf
- Wiki page with some more details at http://wiki.qt.io/Qt3D-wip-newapi-Overview
- Why the subsystem architecture
- Allow users/developers to enrich the scene
- Allow Qt3D to be extensible with Aspects: audio, physics, …
- Why the components based architecture
- Cf. Game Engine book http://www.amazon.co.uk/Game-Engine-Architecture-Jason-Gregory/dp/1568814135/ref=sr_1_1?ie=UTF8&qid=1402413619&sr=8-1&keywords=game+engine+architecture
- Avoid combinatorial explosion
- Avoid multiple inheritance
- Just attach data to an entity
- Data = component provided by an aspect
- Why configuring the FrameGraph
- QQ2: hardcoded framegraph — render opaque pass + transparent pass
- In Qt3D: allow users to configure the passes, etc.
- The QML API maps 1:1 the C++ API
- QtQuick3DFoo <-> Qt3DFoo
- qmlRegisterExtendedType
- TODOs for 5.x:
- remove certain type providers from QtQuick
- f.i. Qt.vector3d(…) should be provided by a common library QtQuick2 and Qt3D link to
- Animations
- QQmlCustomParser, QQmlParserStatus public?
- qmlRegisterExtendedUncreatableType and qmlRegisterExtendedCustomType
- Integration with QQ2
- remove certain type providers from QtQuick
- TODO before release:
- Un-namespace the API
- Shape: use a class per each builtin shape type
- Provide a set of materials / effects
- Figure out how to deal with ThreadWeaver licensing
- Compile time flags for disabling / choosgin between TW / IBB …
- For 5.4 just disable it
- SIGGRAPH
- Khronos, etc.
- Technical preview out soon?