siggraph 2010 - collada bof - 2 - extensions process

Upload: collada

Post on 29-May-2018

225 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    1/23

    Extensions Pr

    Rmi Arnaud

    Chief Software Architect, Screampoint Intl.

    Mark Barnes

    Sr Software Architect, Biodroid Productions Lda.

    COLLADA Work Group Chairman, The Khronos Group

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    2/23

    Agenda

    COLLADA usage model

    COLLADA extension mechanism

    Extensions by example

    NEW- Khronos WG COLLADA extension process

    Questions?

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    3/23

    COLLADA extensions usage model

    COLLADA users required extensions

    o project/user specific meta data carried from DCC to ApplicationExport user defined properties of Max nodes into an extra element of the corresponding COLLADA nod

    Max/Maya plug-ins.

    COLLADA tool vendors required extensions

    o tool can refine COLLADA definition with additional parametersCamera XSI extension extends the COLLADA common representation

    https://collada.org/mediawiki/index.php/Camera_XSI_extension

    o tool want to provide an alternative representation Alternative shader languages (Cg, GLSL, HLSL)Renderman shader code as alternative http://www.cs.utexas.edu/ftp/pub/techreports/honor

    whiteford.pdf

    o using COLLADA as a tool native format extensions replacing proprietary format

    COLLADA is the basis format of LightWave CORE , with extensions added by the NewTek engineerinhttp://www.newtek.com/lightwave/core/

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    4/23

    COLLADA extensibility model

    COLLADA is a declarative data model

    Schema includes extensions mechanisms

    Adding

    Declarations represent new features

    Replacing

    Declarations represent alternative techniques (descriptions)

    Combining

    Adding and Replacing recursively

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    5/23

    Extension Mechanisms

    profiles

    Replace one description with another

    Choose the best profile

    types

    Add declarations to most everything

    A bag of techniques

    Adding choices can be recursive

    semantics

    Add new streams to data flows

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    6/23

    COLLADA extension mechanis

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    7/23

    COLLADA extension mechanis

    or or primitive choice

    0 0 0 1 1 0 .

    Standard semantics defined in COLLADA spec. 5-40

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    8/23

    Extension rules COLLADA spec. 3-6

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    9/23

    Example Extension - bump

    11

    000

    00

    11..

    0.11

    ...

    0 0 0 10 0 0 1

    8.0

    0 0 0 10

    0 0 0 110

    11

    00

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    10/23

    Example Extension - bump

    ...

    0 0 0 10 0 0 1

    8.0

    0 0 0 10

    0 0 0 110

    11

    00

    11

    000

    00

    11..

    0.11

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    11/23

    .

    .

    true0 0 0

    10.000000

    Example Extension - LOD

    Ignoring resultin flickering (z-fighting)

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    12/23

    Example improved LOD extension

    true

    0 0 0

    .

    10.000000

    Ignoring

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    13/23

    Need for multi-vendor extensions

    http://www.okino.com/conv/exp_collada_extensions.htm

    1

    1

    1

    !!!

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    14/23

    COLLADA Extension Process Summary

    Visit https://collada.org/mediawiki/index.php/Portal:Extension

    Determine if you need to create an extension

    Create your extension by following the guidelines

    Submit draft to COLLADA work group for review

    Get feedback from the COLLADA specification working group

    Receive Published stamp of approval

    V

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    15/23

    Visit

    C

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    16/23

    Create

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    17/23

    Is there already an extension that does what I wa

    Can it be used instead of writing a new one?

    reuse of an existing specification

    or promoting single-vendor COLLADA extensions to multi-vendor or Khronos-appr

    ask the COLLADA Working Group chair whether anyone has already defined related

    [email protected]

    Sh ld th t i b Kh d

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    18/23

    Should the extension be Khronos-approved, muor single vendor?

    If the functionality being designed is going to be used by multiple applications - as most

    idea to agree on a single extension with other developers - this makes it easier for vendor

    development of the extensions, and better interoperability for end-users.

    If the functionality is well-understood, it may be appropriate to define a Khronos-approvis the most "blessed" category of extension; it goes through the entire standards process,

    the working group, but remains optional functionality.

    Khronos-approved extensions are IP-safe, royalty-free licence. Khronos contributing meKhronos-approved extensions. Vendor or multi-vendor extensions may not be. Khronos-

    extensions are as good as features added to the specification, it is a fast path for adding fespecifications.

    Some extensions may have to remain proprietary and would therefore not be published.

    useful to designers of proprietary extensions however.

    D

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    19/23

    Determ

    ine

    D

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    20/23

    Determ

    ine

    D

  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    21/23

    Determ

    ine

    E

    https://collada.org/mediawiki/index.php/Morph_weights_EXT_extension
  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    22/23

    Examp

    le

    https://collada.org/mediawiki/index.php/Morph_weights_EXT_extension
  • 8/9/2019 SigGraph 2010 - Collada BOF - 2 - Extensions Process

    23/23

    Questions?