.
instance_rigid_body
body xs:NCName
sid xs:NCName
target xs:anyURI
technique_common
angular_velocity ‡ [0..1] float3
velocity ‡ [0..1] float3
dynamic [0..1] -
mass [0..1] TargetableFloat
mass_frame [0..1] +
inertia [0..1] TargetableFloat3
instance_physics_material +InstanceWithExtra
physics_material +
shape [0..*] +
technique (core) [0..*] +
extra [0..*] +
Parent:� instance_physics_model
‡ angular_velocity, velocity: Default = 0 0 0
Scene Elements Continued >
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_ _
=
[0..1]
COLLADA 1.4 Quick Reference Card - Page 2
©2010 Khronos Group - Rev. 1110 www.collada.org
Geometry Elements [5]Describes visual shape and appearance of object in scene.
geometry
id xs:ID
name xs:NCName
asset [0..1] +
convex_mesh +
mesh +
spline -
extra [0..*] +
Parent:� library_geometries
Describes basic geometric meshes using vertex and
primitive information.
mesh
source (core) [1..*] +
vertices +
lines [0..*] +
linestrips [0..*] +
polygons [0..*] +
polylist [0..*] +
triangles [0..*] +
trifans [0..*] +
tristrips [0..*] +
extra [0..*] +
Parent:� geometry
Declares the attributes and identity of mesh vertices.
vertices
id xs:ID
name xs:NCName
input (unshared) [1..*] InputLocal
semantic ‡ xs:NMTOKEN
source xs:URIFragmentType
extra [0..*] +
Parents:� mesh, convex_mesh
‡ semantic: see note for input (shared) on page 3
Declares the binding of geometric primitives and vertex
attributes for a mesh element to produce individual triangles.
triangles
name xs:NCName
count uint
material xs:NCName
input (shared) [0..*] + InputLocalOffset
p [0..1] ListOfUInts
extra [0..*] +
Parents:� mesh, convex_mesh
Declares the binding of geometric primitives and vertex
attributes for a mesh element to produce polylists.
polylist
name xs:NCName
count uint
material xs:NCName
input (shared) [0..*] + InputLocalOffset
vcount [0..1] ListOfUInts
p [0..1] ListOfUInts
extra [0..*] +
Parent:� mesh
Declares the binding of geometric primitives and vertex
attributes for a mesh element to produce polygons.
polygons
name xs:NCName
count uint
material xs:NCName
input (shared) [0..*] +
p [0..*] ListOfUInts
ph [0..*]
p ListOfUInts
h [1..*] ListOfUInts
extra [0..*] +
Parents:� mesh, convex_mesh
Declares the binding of geometric primitives and vertex
attributes for a mesh element to produce lines.
lines
name xs:NCName
count uint
material xs:NCName
input (shared) [0..*] + InputLocalOffset
p [0..1] ListOfUInts
extra [0..*] +
Parents:� mesh, convex_mesh
Declares the binding of geometric primitives and vertex
attributes for a mesh element to produce connected
triangles.
trifans, tristrips
name xs:NCName
count uint
material xs:NCName
input (shared) [0..*] + InputLocalOffset
p [0..*] ListOfUInts
extra [0..*] +
Parents:� mesh, convex_mesh
Declares the binding of geometric primitives and vertex
attributes for a mesh element to produce linestrips.
linestrips
name xs:NCName
count uint
material xs:NCName
input (shared) [0..*] + InputLocalOffset
p [0..*] ListOfUInts
extra [0..*] +
Parents:� mesh, convex_mesh
Using to represent assembly of mesh primitive
The first index in a
element refers to all inputs with
an offset attribute value of 0. The second index refers to
all inputs with an offset of 1. There is an index value for
each unique input offset attribute value. Each vertex of
the primitive is assembled using the value(s) read from
indexed inputs. After each input is sampled, producing a
primitive vertex, the next index in the
element again
refers to the inputs with offset of 0.
Controller Elements [5]
Declares generic control information.
controller
id xs:ID
name xs:NCName
asset [0..1] +
skin +
morph +
extra [0..*] +
Parent:� library_controllers
Controller Elements Continued >
_ =
Animation Elements [5]
Declares interpolation sampling function for an animation.
sampler
id xs:ID
input (unshared) [1..*] InputLocal
semantic ‡ xs:NMTOKEN
source xs:URIFragmentType
Parent:� animation
‡ semantic: see note for input (shared) on page 3
Declares an output channel of an animation.
channel
source xs:URIFragmentType
target xs:token
Parent:� animation
Declares animation information.
animation
id xs:ID
name xs:NCName
asset [0..1] +
source (core) [1..*] +
sampler [1..*]
id xs:ID
input [1..*] - InputLocal
channel [1..*] +
animation [0..*] +
animation [1..*] +
sampler [1..*] +
channel [1..*] +
animation [0..*] +
animation [1..*] +
extra [0..*] +
Parent:� library_animation, animation
Describes a section of the animation curves to be
used together as an animation clip.
animation_clip
id xs:ID
name xs:NCName
start ‡ xs:double
end xs:double
asset [0..1] +
instance_animation [1..*] + InstanceWithExtra
url xs:anyURI
extra [0..*] +
extra [0..*] +
Parent:� library_animation_clips ‡ start: Default = 0.0
_
_
_ _
==
_
_
_
_
_
_ =
_
[0..*]
=
_
_
_
_
_
[0..*]
=
_
_
Scene Elements (continued)
Declares instantiation of a COLLADA resource.
instance_geometry
bind_material [0..1] +
extra [0..*] +
Parents:� node, shape
Binds a specific material to a piece of geometry, binding
varying and uniform parameters at the same time.
bind_material
param (core) [0..*]
name xs:NCName
sid xs:NCName
semantic xs:NMTOKEN
type xs:NMTOKEN
technique_common
instance_material [1..*]
symbol xs:NCName
target xs:anyURI
sid xs:NCName
name xs:NCName
bind (material) [0..*] -
bind_vertex_input [0..*] -
extra [0..*] +
technique (core) [0..*] +
extra [0..*] +
Parents:� instance_geometry, instance_controller
Declares instantiation of a COLLADA resource.
instance_controller
skeleton [0..*] xs:anyURI
bind_material [0..1] +
extra [0..*] +
Parent:� node
Describes an alternative way to evaluate a .
evaluate_scene
name xs:NCName
render [1..*]
camera_node xs:anyURI
layer [0..*] xs:NCName
instance_effect [0..1] +
Parent:� visual_scene
Describes hierarchical relationship of elements in a scene.
node
id xs:ID
name xs:NCName
sid xs:NCName
type ‡ NodeType
layer ListOfNames
asset [0..1] +
lookat [0..*] +
matrix [0..*] +
rotate [0..*] +
scale [0..*] +
skew [0..*] -
translate [0..*] +
instance_camera [0..*] + InstanceWithExtra
instance_controller [0..*] +
instance_geometry [0..*] +
instance_light [0..*] + InstanceWithExtra
instance_node [0..*] + InstanceWithExtra
node [0..*] +
extra [0..*] +
Parents:� library_nodes, node, visual_scene
‡ type: JOINT, NODE. Default = NODE
_
[0..*]
=
_
_
_
_
_
_
COLLADA 1.4 Quick Reference Card - Page 3
©2010 Khronos Group - Rev. 1110 www.collada.org
Data Flow Elements [5]
Declares a data repository that provides values according
to the semantics of an element that refers to it.
source (core)
id xs:ID
name xs:NCName
asset [0..1] +
IDREF_array [0..1] +
Name_array [0..1] +
bool_array [0..1] +
float_array [0..1] +
int_array [0..1] +
technique_common [0..1]
accessor +
technique (core) [0..*] +
Parents:� morph, animation, mesh, convex_mesh, skin, spline
Declares an access pattern to one of the array elements:
, , , ,
and .
accessor
count uint
offset ‡ uint
source xs:anyURI
stride ‡ uint
param (core) [0..*]
name xs:NCName
sid xs:NCName
semantic xs:NMTOKEN
type xs:NMTOKEN
Parent:� source/technique_common
‡ Defaults: offset = 0, stride = 1
Declares storage for a homogenous array. uses
type ListOfBools, an xs:list of type xs:boolean.
uses type ListOfNames, an xs:list of type xs:Name.
bool_array, Name_array
id xs:ID
name xs:NCName
count uint
Parent:� source (core)
Declares the storage for a homogenous array of ID
reference values of type xs:IDREFS.
IDREF_array
id xs:ID
name xs:NCName
count uint
Parent:� source (core)
Declares the storage for a homogenous array of type
ListOfInts, which is an xs:list of type xs:long.
int_array
id xs:ID
name xs:NCName
count uint
minInclusive ‡ xs:integer
maxInclusive ‡ xs:integer
Parent:� source (core)
‡ Defaults: minInclusive = -2147483648,
maxInclusive = 2147483647
Declares the storage for a homogenous array of type
ListOfFloats, which is an xs:list of type xs:double.
float_array
id xs:ID
name xs:NCName
count uint
digits ‡ xs:short
magnitude ‡ xs:short
Parent:� source (core)
‡ Defaults: digits = 6, magnitude = 38
Declares the input semantics of a data source and
connects a consumer to that source.
input (shared) InputLocalOffset
offset uint
semantic ‡ xs:NMTOKEN
source xs:URIFragmentType
set uint
Parents:� lines, linestrips, polygons, polylist, triangles,
trifans, tristrips, vertex_weights
‡ semantic: The common semantic attribute values are:
{TEX}BINORMAL, CONTINUITY, IMAGE, INPUT, WEIGHT,
INTERPOLATION, INV_BIND_MATRIX, UV, VERTEX, JOINT,
LINEAR_STEPS, NORMAL, OUTPUT, TEXCOORD, POSITION,
MORPH_{TARGET, WEIGHT}, {TEX}TANGENT,
{IN, OUT}_TANGENT
_
_
[0..1]
_ =
Controller Elements (continued)
Describes the data required to blend between sets of
static meshes.
morph
method ‡ MorphMethodType
source xs:anyURI
source (core) [2..*] +
targets
input (unshared) [2..*] InputLocal
semantic ‡ xs:NMTOKEN
source xs:URIFragmentType
extra [0..*] +
extra [0..*] +
Parent:� controller
‡ method: NORMALIZED, RELATIVE. Default = NORMALIZED
semantic: see note for input (shared)
Declares vertex and primitive information sufficient to
describe blend-weight skinning.
skin
source xs:anyURI
bind_shape_matrix [0..1] float4x4
source (core) [3..*] +
joints
input (unshared) [2..*] InputLocal
semantic ‡ xs:NMTOKEN
source xs:URIFragmentType
extra [0..*] +
vertex_weights (shared)
count uint
input (shared) [2..*] + InputLocalOffset
vcount [0..1] ListOfUInts
v [0..1] ListOfInts
extra [0..*] +
extra [0..*] +
Parent:� controller
‡ semantic: see note for input (shared)
_
_
_
_
_
Camera Elements [5]
Declares a view into scene hierarchy or graph. Contains
elements that describe the camera’s optics and imager.
camera
id xs:ID
name xs:NCName
asset [0..1] +
optics +
imager [0..1]
technique (core) [1..*]
profile xs:NMTOKEN
any [0..*] xs:any
extra [0..*] +
extra [0..*] +
Parent:� library_cameras
Describes the apparatus on a camera that projects the
image onto the image sensor.
optics
technique_common
orthographic +
perspective +
technique (core) [0..*] +
profile xs:NMTOKEN
any [0..*] xs:any
extra [0..*] +
Parent:� camera
Describes the field of view of an orthographic camera.
orthographic
xmag TargetableFloat
ymag TargetableFloat
aspect_ratio TargetableFloat
ymag TargetableFloat
aspect_ratio [0..1] TargetableFloat
znear TargetableFloat
zfar TargetableFloat
Parents:� optics / technique_common
Describes the field of view of a perspective camera.
and values are in Euler degrees.
perspective
xfov TargetableFloat
yfov TargetableFloat
aspect_ratio TargetableFloat
yfov TargetableFloat
aspect_ratio [0..1] TargetableFloat
znear TargetableFloat
zfar TargetableFloat
Parents:� optics / technique_common
_
_ _
_
_
=
=
_
_
_
= [0..1]
=
_
_
_
= [0..1]
Extensibility Element [5]
Declares information used to describe some portion of the
content. Each technique applies to an associated profile.
technique (core)
profile xs:NMTOKEN
any [0..*] xs:any
Parents:� extra, source (core), light, optics, imager,
force_field, physics_material, physics_scene, rigid_body,
rigid_constraint, instance_rigid_body, bind_material
Describes information about/related to its parent element.
extra
id xs:ID
name xs:NCName
type xs:NMTOKEN
asset [0..1] +
technique (core) [1..*]
profile xs:NMTOKEN
any [0..*] xs:any
Parents:� animation, animation_clip, attachment, box,
camera, bind_material, capsule, COLLADA, controller,
cylinder, control_vertices, convex_mesh, effect,
force_field, format_hint, geometry, image, imager,
instance_*, joints, library_*, light, lines, linestrips,
material, mesh, morph, node, optics, pass, plane,
physics_material, physics_model, physics_scene,
polygons, polylist, profile_CG, profile_COMMON,
profile_GLES, profile_GLSL, ref_attachment, rigid_body,
rigid_constraint, sampler_*, scene, shape, skin,
sphere, spline, surface, targets, tapered_capsule,
tapered_cylinder, triangles, trifans, tristrips,
texture_pipeline, texture_unit, vertex_weights, vertices,
visual_scene, and technique (FX) (in profile_CG,
profile_COMMON, profile_GLES, and profile_GLSL)
_
_ Lighting Elements [5]
Declares a light source that illuminates a scene.
light
id xs:ID
name xs:NCName
asset [0..1] +
technique_common
ambient (core) +
directional +
point +
spot +
technique (core) [0..*] +
extra [0..*] +
Parent:� library_lights
Lighting Elements Continued >
_ =
Transform Elements [5]
Declare local coordinate system transformations.
specifies an axis (XYZ) and rotation (Euler angle)
about it as a float4.
specifies a translation (XYZ) as a float3.
rotate, translate
sid xs:NCName
Parents:� node, instance_rigid_body, {ref_}attachment,
shape, technique_common/mass_frame in rigid_body
specifies a change in proportions (XYZ) of the axes
as a float3.
describes a position/orientation transformation
as a float3x3, organized as three vectors in order: eye
position, interest point, up-axis direction.
describes a homogeneous transformation as a
float4x4, organized in column-major order.
scale, lookat, matrix
sid xs:NCName
Parent:� node
_
COLLADA 1.4 Quick Reference Card - Page 4
©2010 Khronos Group - Rev. 1110 www.collada.org
Describes color attributes of fixed-function shader
elements inside effects.
emission, reflective,
ambient (FX), diffuse,
specular, transparent
common_color_
or_ texture_type
color -
param (FX)
ref
[1..*]
xs:NCName
texture [0..*]
texture xs:NCName
texcoord xs:NCName
extra [0..1] +
Parents:� constant, lambert, phong, blinn
creates a new, named param object in the
FX Runtime, and assigns it a type, an initial value, and
additional attributes at declaration time.
newpar