Qt-contributors-summit-2014-Qt3D: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
m (Categorize)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}
[[Category:QtCS2014]]
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?

Latest revision as of 17:41, 6 January 2017

This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine.
Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean.

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
  • 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
  • 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?