COLLADA 101 Everything you ever wanted to know about COLLADA Bruno Patatas Chairman & CEO PixelBox Academy Inc. © Copyright Khronos Group, 2007 -

Download Report

Transcript COLLADA 101 Everything you ever wanted to know about COLLADA Bruno Patatas Chairman & CEO PixelBox Academy Inc. © Copyright Khronos Group, 2007 -

COLLADA 101
Everything you ever wanted to know about COLLADA
Bruno Patatas
Chairman & CEO PixelBox Academy Inc.
© Copyright Khronos Group, 2007 - Page 1






Founded in 2004 in Japan.
Offices in Japan and Portugal.
Provides training on COLLADA, Cg,
RenderMan, Gelato and Mental Ray.
First training institution to offer a course on
COLLADA: “COLLADA 101”.
COLLADA on XNA is part of the upcoming
course “XNA Foundation”.
New COLLADA online course to start on May:
“COLLADA Physics”.
COLLADA In Production – DVD
This two hours DVD will cover all the ins and outs of
COLLADA in a production environment.
More information will be available at March 15th at
PixelBox Academy website.
The DVD will be available on May at PixelBox online
store and at our offices in Japan and Portugal.
COLLADA is an industry standard
• Intermediate Digital Asset Exchange format (.dae)
• XML schema technology
• Adopted as industry standard by The Khronos Group (Home of OpenGL and
OpenGL ES) since January 2006
• COLLADA 1.4.0 is the first standard specification
© Copyright Khronos Group, 2007 - Page 4
COLLADA - Goals
Ease content development and
prototyping, by
- Freeing your data from your 3D
modeling program
- Getting collaboration from all 3D tool
manufacturers
- Making import/export simple
© Copyright Khronos Group, 2007 - Page 5
COLLADA status and roadmap
• • Thousands of active users
- 10-15% game developers currently using COLLADA
• • Adopted by Google Earth for the 3D models
- COLLADA gets mainstream?
• • Many more tools support
- Houdini, SketchUp, DAZ
• • 3D models available to COLLADA users
- http://www.daz3d.com
- http://sketchup.google.com/3dwarehouse/
• • Official conformance test in development.
• - Early access available to Khronos members
• - Free reference viewer
© Copyright Khronos Group, 2007 - Page 6
Who is using COLLADA?
© Copyright Khronos Group, 2007 - Page 7
1.4.x – the stable standard
• 1.4.0 Released by Khronos on Jan 2006
- 1.4.1 Released on June 30th, 2006
- Primarily fixes issues with FX and material bindings
- backward compatible service release
- 1.4.0 documents validate against the 1.4.1 schema
- 1.4.0 applications can import 1.4.1 documents
- 1.4.2 Scheduled 1Q 2007
- Addtion of profiles to FX: Syndication, OpenGL ES 2.0
• Thousands of active users
-
10-15% profesional game developers currently using COLLADA
THQ, EA, Konami, NCsoft, DoubleFine, Rockstar …
Unreal Engine, C4 engine, Ogre, Irrlicht Engine, …
Thousands of downloads every months
© Copyright Khronos Group, 2007 - Page 8
Tools
DCC Support
• Providing support since COLLADA 1.0:
- 3dsMax, Maya, XSI
• Professional grade import/export COLLADA 1.4.x
- 3dsMax and Maya
- Feeling Software maintain open source
- Softimage
- Part of the tool (no plug-in) since XSI 5.1
• Beta Available for COLLADA 1.4.x:
- SketchUp (Export), Blender (Import/Export), Houdini (Import)
• Work in progress:
- DAZ, Modo, Lightwave …
© Copyright Khronos Group, 2007 - Page 9
Tools
Game Engines
• Unreal 3D – Epic games famous engine
Used for PS3, XBOX 360 by Microsoft, Midway, EA, Ubisoft …
• Ogre – Open source, free
• C4 Engine (cheap)
• Irrlicht Engine – Open source, free
• PS3 SDK – COLLADA DOM & RT included
• … Most game engines have COLLADA support
© Copyright Khronos Group, 2007 - Page 10
Google Earth
• Adopted by Google Earth for 3D models
- Drag and drop dae assets on the earth
- COLLADA content for mainstream users
- A LOT OF USERS !!
- Many tools targeting Google Earth, now adding support for COLLADA
-
SketchUp
RealViz
Autocad
Photomodeler
…
- 3D models available to COLLADA users
- http://sketchup.google.com/3dwarehouse/
© Copyright Khronos Group, 2007 - Page 11
AgentFX
© Copyright Khronos Group, 2007 - Page 12
Mods
• Many games will provide players ability to change the content, and
exchange with other players
• COLLADA is perfect for this task
- Major games coming out with COLLADA Mod support
- Already some early adoption
© Copyright Khronos Group, 2007 - Page 13
Penumbra
Image courtesy of Frictional Games (www.frictionalgames.com)
© Copyright Khronos Group, 2007 - Page 14
COLLADA and Open Source
For the development of PS3 PSGL Sony decided to go with industry open
standards.
The list of open standards integrated in PS3 are the following:
• COLLADA.
• OpenGL ES, a modified version of OpenGL ES 1.0 with extensions
specifically aimed at the PS3.
• OpenMax, a collection of fast, cross-platform tools for general "media
acceleration“, such as matrix calculations.
• OpenVG, for hardware-accelerated 2D vector graphics.
© Copyright Khronos Group, 2007 - Page 15
COLLADA and Open Source
By going in this route Sony had at their disposal technologies with well
defined behaviors and the support of several companies.
COLLADA is designed through community involvement.
© Copyright Khronos Group, 2007 - Page 16
COLLADA Model
DCC tools
Import/Export
Fast Path
Viewer
3rd party tools
Assets
App. data
COLLADA
Refinery
script
Schema
Validation
Conversion
Final asset
Grey parts provided by COLLADA
© Copyright Khronos Group, 2007 - Page 17
Application
Documentation
• COLLADA Schema is the master document
- Tools can help humans to read it – XMLspy
- Schema is XML, no need to learn another language
- Auto-generate the COLLADA-DOM front end API and documentation
- Leverage Schema language as much as we can
• COLLADA Specification
-
pdf format, available in English and Japanese
298 pages
Tools requirements
Additional rules not encoded in the Schema
- Count element has to be equal to the number of values in an array
© Copyright Khronos Group, 2007 - Page 18
COLLADA Book
Hardcover ~250 pages
Guide to 1.4.x specification
Idea came from Eurographics’05
Provides insight to why this is
designed this way
Gives hints to how it may evolve
Provides a bit of history
Publisher: AK Peters
© Copyright Khronos Group, 2007 - Page 19
COLLADA API –
© Copyright Khronos Group, 2007 - Page 20
High Level Architecture
COLLADA API –
© Copyright Khronos Group, 2007 - Page 21
Expanded Architecture
Design Considerations
The COLLADA DOM takes into account the following design considerations, which provide some of the
desirable features of the DOM.
Simple Data Transformation
The COLLADA DOM provides a means for users to write translation code to transform data loaded into
the COLLADA runtime database into data structures native to their own tools or engines. The API
provides plugin points to eliminate the need to understand the underlying framework in order to write
this translation.
Replaceable Backend
The DOM has implemented a repository-neutral strategy to allow for future uses of the COLLADA DOM
with database systems based on XML or binary data representations. In this way, the COLLADA DOM
eliminates any dependence on a particular underlying specification format.
Schema Driven
The runtime database uses structures derived directly from the COLLADA schema.
The C++ definitions of these structures are generated automatically and are therefore always consistent
and accurate. This correspondence means that the DOM can be kept in sync with the COLLADA schema
as it is further developed.
© Copyright Khronos Group, 2007 - Page 22
FCOLLADA – Free Open Source
• Open-source C++ library for COLLADA interoperability.
• Used by ColladaMaya, ColladaMax
• Higher level than COLLADA-DOM
- Easier to use
- Hides some of the complexity (can be positive or negative)
• Used by the Feeling Software Viewer
© Copyright Khronos Group, 2007 - Page 23
ASSET INTERCHANGE – MAYA AND
3DS MAX
© Copyright Khronos Group, 2007 - Page 24
COLLADA FX
• COLLADA FX enables authors to describe how to apply color to a visual
scene. It is a flexible abstraction for describing material properties across
many platforms and application programming interfaces (APIs).
© Copyright Khronos Group, 2007 - Page 25
FX Elements –
•
•
•
•
•
•
Allow the Description of:
Abstract material definitions (for example, plastic)
Effect parameterizations (using <newparam>)
Effect metadata
Binding to the scene graph
Multiple techniques
Inline and external source code or binary
© Copyright Khronos Group, 2007 - Page 26
Profiles Overview
COLLADA 1.4 includes 4 standard profiles:
•
•
•
•
profile_common for basic interchange between DCC tools
profile_CG for OpenGL and NVIDIA’s Cg Shading Language
profile_GLSL for OpenGL and the OpenGL Shading Language
profile_GLES for OpenGL ES 1.0 and 1.1
© Copyright Khronos Group, 2007 - Page 27
Effects data-driven model
© Copyright Khronos Group, 2007 - Page 28
Vertex Streams
Index Streams
Vertex Assembler
Samplers
Textures
Vertex Shader
Constants
Primitive Assembler
Primitive Clipper
Rasterizer
Samplers
Fragment Shader
Output Merger
© Copyright Khronos Group, 2007 - Page 29
Textures
Constants
Effects
FX COMPOSER 2
© Copyright Khronos Group, 2007 - Page 30
Refinery – Content Pipeline Tool
Free, Open Source
•
•
•
•
Prototype tool chain
Java based user interface
C++ (dll) conditioners
Can run as a batch (command line), once conditioning pipeline established
•
•
•
•
•
•
•
Triangulate
Optimize (T-mesh)
File cleaning (kmz files)
Conversion (1.4.0 -> 1.4.1)
Axis conversion (X_UP -> Y_UP)
Coherency tests are conditioners
…
Expect more conditioners in the future, or create your own
© Copyright Khronos Group, 2007 - Page 31
COLLADA Contest –
Golden Pineapple Award
Participants must write one or more conditioners for the COLLADA
Refinery. Example entries are:
• An importer conditioner (load .3ds, .obj, .x3d, .vrml, cad, terrain )
• An exporter conditioner (to a game engine, or other formats .3ds, .obj, .x3d)
• Data processing for content pipeline (processing of geometry, optimization,
conversion)
• Debugging and monitoring tools (statistics, diff tool)
• Automatic LOD generation - takes a geometry and creates a specified
number of LOD geometries with names like (GeometryID)_LOD_1
© Copyright Khronos Group, 2007 - Page 32
REFINERY
© Copyright Khronos Group, 2007 - Page 33
Online Resources
PixelBox Academy
http://www.pixelboxacademy.net
COLLADA
http://www.collada.org
Khronos Group
http://www.khronos.org
COLLADA Contest
http://www.colladacontest.com
© Copyright Khronos Group, 2007 - Page 34
Thank You!
© Copyright Khronos Group, 2007 - Page 35