COLLADA Schema Version 1.5.0 (August 6, 2008) Copyright (C) 2008 The Khronos Group Inc., Sony Computer Entertainment Inc. All Rights Reserved. Khronos is a trademark of The Khronos Group Inc. COLLADA is a trademark of Sony Computer Entertainment Inc. used by permission by Khronos. Note that this software document is distributed on an "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. An enumuerated type specifying the acceptable morph methods. An enumerated type specifying the acceptable node types. An enumerated type specifying the acceptable sampler pre and post behavior attribute types. This urifragment_type element is used for URI reference which can only reference a resource declared within it's same document. An enumerated type specifying the acceptable up-axis values. An enumerated type specifying the acceptable document versions. The input_global_type element is used to represent inputs that can reference external resources. The semantic attribute is the user-defined meaning of the input connection. Required attribute. The source attribute indicates the location of the data source. Required attribute. The input_local_type element is used to represent inputs that can only reference resources declared in the same document. The semantic attribute is the user-defined meaning of the input connection. Required attribute. The source attribute indicates the location of the data source. Required attribute. The input_local_offset_type element is used to represent indexed inputs that can only reference resources declared in the same document. The offset attribute represents the offset into the list of indices. If two input elements share the same offset, they will be indexed the same. This works as a simple form of compression for the list of indices as well as defining the order the inputs should be used in. Required attribute. The semantic attribute is the user-defined meaning of the input connection. Required attribute. The source attribute indicates the location of the data source. Required attribute. The set attribute indicates which inputs should be grouped together as a single set. This is helpful when multiple inputs share the same semantics. The targetable_float_type element is used to represent elements which contain a single float value which can be targeted for animation. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The targetable_float3_type element is used to represent elements which contain a float3 value which can be targeted for animation. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The token_array_type element declares the storage for a homogenous array of xs:token string values. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of values in the array. Required attribute. The IDREF_array element declares the storage for a homogenous array of ID reference values. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of values in the array. Required attribute. The Name_array element declares the storage for a homogenous array of Name string values. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of values in the array. Required attribute. The bool_array element declares the storage for a homogenous array of boolean values. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of values in the array. Required attribute. The float_array element declares the storage for a homogenous array of floating point values. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of values in the array. Required attribute. The digits attribute indicates the number of significant decimal digits of the float values that can be contained in the array. The default value is 6. Optional attribute. The magnitude attribute indicates the largest exponent of the float values that can be contained in the array. The default value is 38. Optional attribute. The int_array element declares the storage for a homogenous array of integer values. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of values in the array. Required attribute. The minInclusive attribute indicates the smallest integer value that can be contained in the array. The default value is -2147483648. Optional attribute. The maxInclusive attribute indicates the largest integer value that can be contained in the array. The default value is 2147483647. Optional attribute. The param element declares parametric information regarding its parent element. The name attribute is the text string name of this element. Optional attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The semantic attribute is the user-defined meaning of the parameter. Optional attribute. The type attribute indicates the type of the value data. This text string must be understood by the application. Required attribute. The accessor element declares an access pattern to one of the array elements: float_array, int_array, Name_array, bool_array, token_array, and IDREF_array. The accessor element describes access to arrays that are organized in either an interleaved or non-interleaved manner, depending on the offset and stride attributes. The accessor element may have any number of param elements. The count attribute indicates the number of times the array is accessed. Required attribute. The offset attribute indicates the index of the first value to be read from the array. The default value is 0. Optional attribute. The source attribute indicates the location of the array to access using a URL expression. Required attribute. The stride attribute indicates number of values to be considered a unit during each access to the array. The default value is 1, indicating that a single value is accessed. Optional attribute. The p element represents primitive data for the primitive types (lines, linestrips, polygons, polylist, triangles, trifans, tristrips). The p element contains indices that reference into the parent's source elements referenced by the input elements. The lookat element contains a position and orientation transformation suitable for aiming a camera. The lookat element contains three mathematical vectors within it that describe: 1. The position of the object; 2. The position of the interest point; 3. The direction that points up. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. Matrix transformations embody mathematical changes to points within a coordinate systems or the coordinate system itself. The matrix element contains a 4-by-4 matrix of floating-point values. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The scale element contains a mathematical vector that represents the relative proportions of the X, Y and Z axes of a coordinated system. The skew element contains an angle and two mathematical vectors that represent the axis of rotation and the axis of translation. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The translate element contains a mathematical vector that represents the distance along the X, Y and Z-axes. Initialize purely from a file. Assume the characteristics of the file. If it is a complex format like DDS this may include cube maps, volumes, mips, etc. The data element contains a sequence of hexadecimal encoded binary octets representing the embedded image data. The format attribute is use the determine which codec decodes the image's descriptions and data. The format attribute is a text string value that indicates the image format. Examples include "DDS", "EXR", "BMP", "JPG", and "PNG". Note that all of these formats have internal descriptors of size, bpp, etc. Zero is max levels = 1 + floor(log2(max(w, h, d))) in both OpenGL and DirectX. One is no mips. regenerate the mipmaps based on information loaded into mip0 The per-texel layout of the format. The length of the string indicate how many channels there are and the letter respresents the name of the channel. There are typically 0 to 4 channels. RGB color map RGB color + Alpha map often used for color + transparency or other things packed into channel A like specular power RGB color + shared exponent for HDR Luminance map often used for light mapping Luminance+Alpha map often used for light mapping Depth map often used for displacement, parellax, relief, or shadow mapping. Depth is depth seperate from Luminace to make special hardware considerations Each channel of the texel has a precision. Typically these are all linked together. An exact format lay lower the precision of an individual channel but applying a higher precision by linking the channels together may still convey the same information. Designer does not care as long as it provides "reasonable" percision and performance For integers this typically represents 8 bits. For floats typically 16 bits. For integers this typically represents 8 to 24 bits. For floats typically 16 to 32 bits. For integers this typically represents 16 to 32 bits. For floats typically 24 to 32 bits. Typically 32 bits or 64 bits if available. 64 bit has been seperated into it's own catagory beyond HIGH because it typically has significant performance impact and is beyond what non CAD software considers high percision. Each channel represents a range of values. Some example ranges are signed or unsigned integers, or between between a clamped range such as 0.0f to 1.0f, or high dynamic range via floating point Format is representing a decimal value that remains within the -1 to 1 range. Implimentation could be integer-fixedpoint or floats. Format is representing a decimal value that remains within the 0 to 1 range. Implimentation could be integer-fixedpoint or floats. Format is representing signed integer numbers. (ex. 8bits = -128 to 127) Format is representing unsigned integer numbers. (ex. 8bits = 0 to 255) Format should support full floating point ranges. High precision is expected to be 32bit. Mid precision may be 16 to 32 bit. Low precision is expected to be 16 bit. The channel element declares an output channel of an animation. The source attribute indicates the location of the sampler using a URL expression. The sampler must be declared within the same document. Required attribute. The target attribute indicates the location of the element bound to the output of the sampler. This text string is a path-name following a simple syntax described in Address Syntax. Required attribute. The sampler element declares an N-dimensional function used for animation. Animation function curves are represented by 1-D sampler elements in COLLADA. The sampler defines sampling points and how to interpolate between them. The input element must occur at least one time. These inputs are local inputs. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. Indicates what the sampled value should be before the first key. Indicates what the sampled value should be after the last key. The legal values for the mode attribute on the altitute element in a geographic_location element. enable-xmlns The technique element declares the information used to process some portion of the content. Each technique conforms to an associated profile. Techniques generally act as a "switch". If more than one is present for a particular portion of content, on import, one or the other is picked, but usually not both. Selection should be based on which profile the importing application can support. Techniques contain application data and programs, making them assets that can be managed as a unit. The profile attribute indicates the type of profile. This is a vendor defined character string that indicates the platform or capability target for the technique. Required attribute. The extra element declares additional information regarding its parent element. The extra element may contain an asset element. This element must contain at least one non-common profile technique. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The type attribute indicates the type of the value data. This text string must be understood by the application. Optional attribute. The polylist element provides the information needed to bind vertex attributes together and then organize those vertices into individual polygons. The polygons described in polylist can contain arbitrary numbers of vertices. Unlike the polygons element, the polylist element cannot contain polygons with holes. The input element may occur any number of times. This input is a local input with the offset and set attributes. The vcount element contains a list of integers describing the number of sides for each polygon described by the polylist element. The vcount element may occur once. The polylist element may have zero or one p element. The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of polygon primitives. Required attribute. The material attribute declares a symbol for a material. This symbol is bound to a material at the time of instantiation. If the material attribute is not specified then the lighting and shading results are application defined. Optional attribute. The polygons element provides the information needed to bind vertex attributes together and then organize those vertices into individual polygons. The polygons described can contain arbitrary numbers of vertices. These polygons may be self intersecting and may also contain holes. The input element may occur any number of times. This input is a local input with the offset and set attributes. The p element may occur any number of times. The ph element may occur any number of times. It describes a polygon with holes. There may only be one p element. The h element represents a hole in the polygon specified. There must be at least one h element. The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of polygon primitives. Required attribute. The material attribute declares a symbol for a material. This symbol is bound to a material at the time of instantiation. If the material attribute is not specified then the lighting and shading results are application defined. Optional attribute. The linestrips element provides the information needed to bind vertex attributes together and then organize those vertices into connected line-strips. Each line-strip described by the mesh has an arbitrary number of vertices. Each line segment within the line-strip is formed from the current vertex and the preceding vertex. The input element may occur any number of times. This input is a local input with the offset and set attributes. The linestrips element may have any number of p elements. The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of linestrip primitives. Required attribute. The material attribute declares a symbol for a material. This symbol is bound to a material at the time of instantiation. If the material attribute is not specified then the lighting and shading results are application defined. Optional attribute. The tristrips element provides the information needed to bind vertex attributes together and then organize those vertices into connected triangles. Each triangle described by the mesh has three vertices. The first triangle is formed from first, second, and third vertices. Each subsequent triangle is formed from the current vertex, reusing the previous two vertices. The input element may occur any number of times. This input is a local input with the offset and set attributes. The tristrips element may have any number of p elements. The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of triangle strip primitives. Required attribute. The material attribute declares a symbol for a material. This symbol is bound to a material at the time of instantiation. If the material attribute is not specified then the lighting and shading results are application defined. Optional attribute. The lines element provides the information needed to bind vertex attributes together and then organize those vertices into individual lines. Each line described by the mesh has two vertices. The first line is formed from first and second vertices. The second line is formed from the third and fourth vertices and so on. The input element may occur any number of times. This input is a local input with the offset and set attributes. The lines element may have zero or one p element. The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of line primitives. Required attribute. The material attribute declares a symbol for a material. This symbol is bound to a material at the time of instantiation. If the material attribute is not specified then the lighting and shading results are application defined. Optional attribute. The triangles element provides the information needed to bind vertex attributes together and then organize those vertices into individual triangles. Each triangle described by the mesh has three vertices. The first triangle is formed from the first, second, and third vertices. The second triangle is formed from the fourth, fifth, and sixth vertices, and so on. The input element may occur any number of times. This input is a local input with the offset and set attributes. The triangles element may have zero or one p element. The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of triangle primitives. Required attribute. The material attribute declares a symbol for a material. This symbol is bound to a material at the time of instantiation. Optional attribute. If the material attribute is not specified then the lighting and shading results are application defined. The trifans element provides the information needed to bind vertex attributes together and then organize those vertices into connected triangles. Each triangle described by the mesh has three vertices. The first triangle is formed from first, second, and third vertices. Each subsequent triangle is formed from the current vertex, reusing the first and the previous vertices. The input element may occur any number of times. This input is a local input with the offset and set attributes. The trifans element may have any number of p elements. The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of triangle fan primitives. Required attribute. The material attribute declares a symbol for a material. This symbol is bound to a material at the time of instantiation. If the material attribute is not specified then the lighting and shading results are application defined. Optional attribute. The vertices element declares the attributes and identity of mesh-vertices. The vertices element describes mesh-vertices in a mesh geometry. The mesh-vertices represent the position (identity) of the vertices comprising the mesh and other vertex attributes that are invariant to tessellation. The input element must occur at least one time. These inputs are local inputs. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Required attribute. The name attribute is the text string name of this element. Optional attribute. The asset element defines asset management information regarding its parent element. The contributor element defines authoring information for asset management The author element contains a string with the author's name. There may be only one author element. Contains a string with author's email address. String that compliant with RFC 2822 section 3.4. This element has no attributes. There may be only one author email address. Contains a URI reference (xs:anyURI) to author's website. This element has no attributes. There may be only one author website. The authoring_tool element contains a string with the authoring tool's name. There may be only one authoring_tool element. The comments element contains a string with comments from this contributor. There may be only one comments element. The copyright element contains a string with copyright information. There may be only one copyright element. The source_data element contains a URI reference to the source data used for this asset. There may be only one source_data element. Specifies the location of the asset using the WGS84 coordinate system. Altitude is always given in meters. If the mode is "absolute", then the value is interpreted as meters from mean sea level. If the mode is "relativeToGround" then the value is interpreted as meters above the actual ground elevation at that particular location. The created element contains the date and time that the parent element was created and is represented in an ISO 8601 format. The created element may appear zero or one time. The keywords element contains a list of words used as search criteria for the parent element. There may be only one keywords element. The modified element contains the date and time that the parent element was last modified and represented in an ISO 8601 format. The modified element may appear zero or one time. The revision element contains the revision information for the parent element. The revision element may appear zero or one time. The subject element contains a description of the topical subject of the parent element. The subject element may appear zero or one time. The title element contains the title information for the parent element. The title element may appear zero or one time. The unit element contains descriptive information about unit of measure. It has attributes for the name of the unit and the measurement with respect to the meter. The unit element may appear zero or one time. The meter attribute specifies the measurement with respect to the meter. The default value for the meter attribute is "1.0". The name attribute specifies the name of the unit. The default value for the name attribute is "meter". The up_axis element contains descriptive information about coordinate system of the geometric data. All coordinates are right-handed by definition. This element specifies which axis is considered up. The default is the Y-axis. The up_axis element may appear zero or one time. The image element may contain an asset element. This image is renderable if this element is used As a render target, true = shared across all users, false = unique per instance initialize the whole image structure and data from formats like DDS If true, unless mips already exist in data, generate the mipmaps based on information loaded into mip0, Initialize a custom 2d image sizing The surface should be sized to these exact dimensions Image size should be relative to the size of the viewport. Ex 1,1 is the same size as the viewport. 0.5,0.5 is 1/2 the size of the viewport mips and texel addressing Unnormalized addressing of texels. (0-W, 0-H). This cannot be used with mips since the addressing is not uniform per level. This is equivilant to OpenGL textureRECT extension. If not present it is assumed to be R8G8B8A8 linear. if this element or a higher precidence element is not present then use a common format R8G8B8A8 with linear color gradient, not sRGB. The per-texel layout of the format. The length of the string indicate how many channels there are and the letter respresents the name of the channel. There are typically 0 to 4 channels. Each channel represents a range of values. Some example ranges are signed or unsigned integers, or between between a clamped range such as 0.0f to 1.0f, or high dynamic range via floating point Each channel of the texel has a precision. Typically these are all linked together. An exact format lay lower the precision of an individual channel but applying a higher precision by linking the channels together may still convey the same information. linear(default), sRGB Contains a string representing the profile and platform specific texel format that the author would like this surface to use. If this element is not specified then the application will fall back to the hint init the image data from one or more partial pieces of data. The load attribute indicates what portion of the image will be loaded based on the ''address" specified. mip_generate may be used to complete the image. Initialize a custom 3d image The surface should be sized to these exact dimensions Zero is not an array If not present it is assumed to be R8G8B8A8 linear. if this element or a higher precidence element is not present then use a common format R8G8B8A8 with linear color gradient, not sRGB. The per-texel layout of the format. The length of the string indicate how many channels there are and the letter respresents the name of the channel. There are typically 0 to 4 channels. Each channel represents a range of values. Some example ranges are signed or unsigned integers, or between between a clamped range such as 0.0f to 1.0f, or high dynamic range via floating point Each channel of the texel has a precision. Typically these are all linked together. An exact format lay lower the precision of an individual channel but applying a higher precision by linking the channels together may still convey the same information. linear(default), sRGB Contains a string representing the profile and platform specific texel format that the author would like this surface to use. If this element is not specified then the application will fall back to the hint init the image data from one or more partial pieces of data. The load attribute indicates what portion of the image will be loaded based on the ''address" specified. mip_generate may be used to complete the image. Initialize a custom cube image The surface should be sized to these exact dimensions Zero is not an array If not present it is assumed to be R8G8B8A8 linear. if this element or a higher precidence element is not present then use a common format R8G8B8A8 with linear color gradient, not sRGB. The per-texel layout of the format. The length of the string indicate how many channels there are and the letter respresents the name of the channel. There are typically 0 to 4 channels. Each channel represents a range of values. Some example ranges are signed or unsigned integers, or between between a clamped range such as 0.0f to 1.0f, or high dynamic range via floating point Each channel of the texel has a precision. Typically these are all linked together. An exact format lay lower the precision of an individual channel but applying a higher precision by linking the channels together may still convey the same information. linear(default), sRGB Contains a string representing the profile and platform specific texel format that the author would like this surface to use. If this element is not specified then the application will fall back to the hint init the image data from one or more partial pieces of data. The load attribute indicates what portion of the image will be loaded based on the ''address" specified. mip_generate may be used to complete the image. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. sub identifier The name attribute is the text string name of this element. Optional attribute. The camera element declares a view into the scene hierarchy or scene graph. The camera contains elements that describe the camera's optics and imager. The camera element may contain an asset element. Optics represents the apparatus on a camera that projects the image onto the image sensor. The technique_common element specifies the optics information for the common profile which all COLLADA implementations need to support. The orthographic element describes the field of view of an orthographic camera. The xmag element contains a floating point number describing the horizontal magnification of the view. The ymag element contains a floating point number describing the vertical magnification of the view. It can also have a sid. The aspect_ratio element contains a floating point number describing the aspect ratio of the field of view. If the aspect_ratio element is not present the aspect ratio is to be calculated from the xmag or ymag elements and the current viewport. The znear element contains a floating point number that describes the distance to the near clipping plane. The znear element must occur exactly once. The zfar element contains a floating point number that describes the distance to the far clipping plane. The zfar element must occur exactly once. The perspective element describes the optics of a perspective camera. The xfov element contains a floating point number describing the horizontal field of view in degrees. The yfov element contains a floating point number describing the verticle field of view in degrees. The aspect_ratio element contains a floating point number describing the aspect ratio of the field of view. If the aspect_ratio element is not present the aspect ratio is to be calculated from the xfov or yfov elements and the current viewport. The znear element contains a floating point number that describes the distance to the near clipping plane. The znear element must occur exactly once. The zfar element contains a floating point number that describes the distance to the far clipping plane. The zfar element must occur exactly once. This element may contain any number of non-common profile techniques. The extra element may appear any number of times. Imagers represent the image sensor of a camera (for example film or CCD). This element may contain any number of non-common profile techniques. There is no common technique for imager. The extra element may appear any number of times. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The light element declares a light source that illuminates the scene. Light sources have many different properties and radiate light in many different patterns and frequencies. The light element may contain an asset element. The technique_common element specifies the light information for the common profile which all COLLADA implementations need to support. The ambient element declares the parameters required to describe an ambient light source. An ambient light is one that lights everything evenly, regardless of location or orientation. The color element contains three floating point numbers specifying the color of the light. The color element must occur exactly once. The directional element declares the parameters required to describe a directional light source. A directional light is one that lights everything from the same direction, regardless of location. The light's default direction vector in local coordinates is [0,0,-1], pointing down the -Z axis. The actual direction of the light is defined by the transform of the node where the light is instantiated. The color element contains three floating point numbers specifying the color of the light. The color element must occur exactly once. The point element declares the parameters required to describe a point light source. A point light source radiates light in all directions from a known location in space. The intensity of a point light source is attenuated as the distance to the light source increases. The position of the light is defined by the transform of the node in which it is instantiated. The color element contains three floating point numbers specifying the color of the light. The color element must occur exactly once. The constant_attenuation is used to calculate the total attenuation of this light given a distance. The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation. The linear_attenuation is used to calculate the total attenuation of this light given a distance. The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation. The quadratic_attenuation is used to calculate the total attenuation of this light given a distance. The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation. The spot element declares the parameters required to describe a spot light source. A spot light source radiates light in one direction from a known location in space. The light radiates from the spot light source in a cone shape. The intensity of the light is attenuated as the radiation angle increases away from the direction of the light source. The intensity of a spot light source is also attenuated as the distance to the light source increases. The position of the light is defined by the transform of the node in which it is instantiated. The light's default direction vector in local coordinates is [0,0,-1], pointing down the -Z axis. The actual direction of the light is defined by the transform of the node where the light is instantiated. The color element contains three floating point numbers specifying the color of the light. The color element must occur exactly once. The constant_attenuation is used to calculate the total attenuation of this light given a distance. The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation. The linear_attenuation is used to calculate the total attenuation of this light given a distance. The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation. The quadratic_attenuation is used to calculate the total attenuation of this light given a distance. The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation. The falloff_angle is used to specify the amount of attenuation based on the direction of the light. The falloff_exponent is used to specify the amount of attenuation based on the direction of the light. This element may contain any number of non-common profile techniques. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The instance_with_extra_type element is used for all generic instance elements. A generic instance element is one which does not have any specific child elements declared. The extra element may occur any number of times. The url attribute refers to resource to instantiate. This may refer to a local resource using a relative URL fragment identifier that begins with the "#" character. The url attribute may refer to an external resource using an absolute or relative URL. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The instance_camera element declares the instantiation of a COLLADA camera resource. The instance_force_field element declares the instantiation of a COLLADA force_field resource. The instance_light element declares the instantiation of a COLLADA light resource. The instance_material element declares the instantiation of a COLLADA material resource. The bind element binds values to effect parameters upon instantiation. The semantic attribute specifies which effect parameter to bind. The target attribute specifies the location of the value to bind to the specified semantic. This text string is a path-name following a simple syntax described in the "Addressing Syntax" section. The bind_vertex_input element binds vertex inputs to effect parameters upon instantiation. The semantic attribute specifies which effect parameter to bind. The input_semantic attribute specifies which input semantic to bind. The input_set attribute specifies which input set to bind. The extra element may appear any number of times. The symbol attribute specifies which symbol defined from within the geometry this material binds to. The target attribute specifies the URL of the location of the object to instantiate. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. Bind a specific material to a piece of geometry, binding varying and uniform parameters at the same time. The bind_material element may contain any number of param elements. The technique_common element specifies the bind_material information for the common profile which all COLLADA implementations need to support. The instance_material element specifies the information needed to bind a geometry to a material. This element must appear at least once. This element may contain any number of non-common profile techniques. The extra element may appear any number of times. The instance_controller element declares the instantiation of a COLLADA controller resource. The skeleton element is used to indicate where a skin controller is to start to search for the joint nodes it needs. This element is meaningless for morph controllers. Bind a specific material to a piece of geometry, binding varying and uniform parameters at the same time. The extra element may appear any number of times. The url attribute refers to resource. This may refer to a local resource using a relative URL fragment identifier that begins with the "#" character. The url attribute may refer to an external resource using an absolute or relative URL. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The instance_geometry element declares the instantiation of a COLLADA geometry resource. Bind a specific material to a piece of geometry, binding varying and uniform parameters at the same time. The extra element may appear any number of times. The url attribute refers to resource. This may refer to a local resource using a relative URL fragment identifier that begins with the "#" character. The url attribute may refer to an external resource using an absolute or relative URL. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The instance_node element declares the instantiation of a COLLADA node resource. The instance_physics_material element declares the instantiation of a COLLADA physics_material resource. This element allows instancing a rigid_constraint within an instance_physics_model. The extra element may appear any number of times. The constraint attribute indicates which rigid_constraing to instantiate. Required attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_cameras element declares a module of camera elements. The library_cameras element may contain an asset element. There must be at least one camera element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_images element declares a module of image elements. The library_images element may contain an asset element. There must be at least one image element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_lights element declares a module of light elements. The library_lights element may contain an asset element. There must be at least one light element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. When a transparent opaque attribute is set to A_ONE, it means the transparency information will be taken from the alpha channel of the color, texture, or parameter supplying the value. The value of 1.0 is opaque in this mode. When a transparent opaque attribute is set to A_ZERO, it means the transparency information will be taken from the alpha channel of the color, texture, or parameter supplying the value. The value of 0.0 is opaque in this mode. When a transparent opaque attribute is set to RGB_ONE, it means the transparency information will be taken from the red, green, and blue channels of the color, texture, or parameter supplying the value. Each channel is modulated independently. The value of 1.0 is opaque in this mode. When a transparent opaque attribute is set to RGB_ZERO, it means the transparency information will be taken from the red, green, and blue channels of the color, texture, or parameter supplying the value. Each channel is modulated independently. The value of 0.0 is opaque in this mode. Tile the texture at every integer junction. For example, for u values between 0 and 3, the texture is repeated three times; no mirroring is performed Same as CLAMP_TO_EDGE. Texture coordinates reaching or exceeding the range [0.0, 1.0] are set just within 0.0 or 1.0 so that the boarder is not sampled Much like clamp except texture coordinates outside the range [0.0, 1.0] are set to the border color texture is flipped at every integer junction. For u values between 0 and 1, for example, the texture is addressed normally; between 1 and 2, the texture is flipped (mirrored); between 2 and 3, the texture is normal again; and so on. Takes the absolute value of the texture coordinate (thus, mirroring around 0), and then clamps to the maximum value minification magnification filtering across mips. NONE = no minification NEAREST = bilinear LINEAR = trilinear ANISOTROPIC = Compensates for distortion caused by the difference in angle between the polygon and the plane of the screen. Relies on max_anisotropy level-of-detail index of largest map to use. Values range from 0 to (n - 1) where 0 is the largest. The default value is zero level-of-detail index of smallest map to use. Values range from 0 to (n - 1) where 0 is the smallest. The default value is zero Mipmap level-of-detail bias. The default value is zero number of samples that may be used durring anisotropic filtering A group that specifies the allowable types for effect scoped parameters. The instance_effect element declares the instantiation of a COLLADA effect resource. Add a hint for a platform of which technique to use in this effect. A platform defines a string that specifies which platform this is hint is aimed for. A profile defines a string that specifies which API profile this is hint is aimed for. A reference to the technique to use for the specified platform. Assigns a new value to a previously defined parameter The extra element may appear any number of times. The url attribute refers to resource. This may refer to a local resource using a relative URL fragment identifier that begins with the "#" character. The url attribute may refer to an external resource using an absolute or relative URL. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. Materials describe the visual appearance of a geometric object. The material element may contain an asset element. The material must instance an effect. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_materials element declares a module of material elements. The library_materials element may contain an asset element. There must be at least one material element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. Sampling state that can be sharable between samplers because there is often heavy re-use A one-dimensional texture sampler. A two-dimensional texture sampler. A three-dimensional texture sampler. A texture sampler for cube maps. A two-dimensional texture sampler. A texture sampler for depth maps. A group that specifies the allowable types for effect scoped parameters. A group that specifies the allowable types for an annotation. array index mip level cube face volume depth ? GEOMETRY: [default] The geometry associated with this instance_geometry or nstance_material. ? SCENE_GEOMETRY: Draw the entire scene's geometry but with this effect, not the effects or materials already associated with the geometry. This is for techniques such as shadow-buffer generation, where you might be interested only in extracting the Z value from the light. This is without regard to ordering on the assumption that ZBuffer handles order. ? SCENE_IMAGE: Draw the entire scene naturally into the render targets. Hense producing an image of the scene. When used more then once, the later uses must include what has been rendered so far to the backbuffer since the first render. This is for effects that need an accurate image of the scene to work on for effects such as postprocessing blurs. ? FULL_SCREEN_QUAD: Positions are 0,0 to 1,1 and the UVs match. This element creates a new, named param object in the FX Runtime, assigns it a type, an initial value, and additional attributes at declaration time. The annotate element allows you to specify an annotation for this new param. The semantic element allows you to specify a semantic for this new param. The modifier element allows you to specify a modifier for this new param. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The include element is used to import source code or precompiled binary shaders into the FX Runtime by referencing an external resource. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The url attribute refers to resource. This may refer to a local resource using a relative URL fragment identifier that begins with the "#" character. The url attribute may refer to an external resource using an absolute or relative URL. The fx_code_common type allows you to specify an inline block of source code. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. this is allows you to include some code right here....like a #define for an uber shader that is imported Ref attribute identifies the sid of a code or include element identify the platform_sku and compiler options to build a binary contains a sequence of hexadecimal encoded binary binary format which may include target device identificatrion Name of sub-platform. May be identical to the platform_series compiler or linker results symbol. Ex arbvp1, arbfp1, glslv, glslf, hlslv, hlslf, vs_3_0, ps_3_0 compiler or linker options The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. Opens a block of COMMON platform-specific data types and technique declarations. Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method. The technique element may contain an asset element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. Bridge COLLADA FX to an external FX framework such as NVIDIA's CgFX or Microsoft's Direct3D FX The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional The url to the file which we are bridging too value=0x0 value=0x1 value=0x0300 value=0x0301 value=0x0306 value=0x0307 value=0x0302 value=0x0303 value=0x0304 value=0x0305 value=0x8001 value=0x8002 value=0x8003 value=0x8004 value=0x0308 value=0x0404 value=0x0405 value=0x0408 value=0x8006 value=0x800A value=0x800B value=0x8007 value=0x8008 value=0x0200 value=0x0201 value=0x0203 value=0x0202 value=0x0204 value=0x0205 value=0x0206 value=0x0207 value=0x1E00 value=0x0 value=0x1E01 value=0x1E02 value=0x1E03 value=0x150A value=0x8507 value=0x8508 value=0x1600 value=0x1200 value=0x1201 value=0x1202 value=0x1602 value=0x2601 value=0x0800 value=0x0801 value=0x8451 value=0x8452 value=0x0900 value=0x0901 value=0x81F9 value=0x81FA value=0x1500 value=0x1501 value=0x1502 value=0x1503 value=0x1504 value=0x1505 value=0x1506 value=0x1507 value=0x1508 value=0x1509 value=0x150A value=0x150B value=0x150C value=0x150E value=0x150F value=0x1B00 value=0x1B01 value=0x1B02 value=0x1D00 value=0x1D01 A group that defines all of the renderstates used for the CG and GLSL profiles. All of the pass state settings for OpenGL ES 2 API New parameters may choose to type themselves by value, providing a default. not in baseline spec but probably available in extensions not in baseline spec but probably available in extensions Use a series of these to set the members by name. The ref attribute will be relative to the struct you are in right now. Symbol name of the member Symbol for type or structure in shader code. This aids in type-checking, resolution of bindings, and support interfaces Enable applications to validate element count without shader having been compiled Declare a new parameter in the profile to be bound to the pipeline state or shaders The semantic element allows you to specify a semantic for this new param. Identify code fragments and bind their parameters to effect parameters to identify how their values will be filled in sid of the code or include element which provides the source for this shader. Code may come from local or library_code. Not used by GLSL. Some languages require functional entry points. GLSL always uses "main". CG requires an entry point Not used by GLSL. This identifies a very specific binary target format for such things as a specific generation of GPU. Ex. NV4x GPU Pipeline stage for this programmable shader. Current standards are VERTEX (vertex shader), FRAGMENT (pixel or fragment shader). These are recognized by both GLSL and CG a program is one or more shaders linked together compile shader stages link shaders into program Bind attributes. If not bound then it is assumed to be the same semantic as the variable name. If the variable name is prefixed with "gl_" or "sv_" then the prefix may be ignored. Bind attributes to semantics to enable semantic association to attributes that are not redeclared as parameters. Without this, the semantic is the same as the attribute's name. shader variable name Bind uniforms and samplers Bind uniforms to parameters SID of parameter shader variable name Set up pipeline state and shaders for rendering Add metadata to this pass that may be used by games or tools to make decisions API state A vertex_shader and fragment_shader are linked together to produce a OpenGL ES 2 program. runtime execution helpers Identify that this pass is intended to render it's colors into a surface parameter Identify that this pass is intended to render it's depthinto a surface parameter Identify that this pass is intended to render it's stencil bits into a surface parameter The indexed color render target is supposed to be cleared to this color The indexed stencil bits render target is supposed to be cleared to this color The indexed depth render target is supposed to be cleared to this color Identify what type of goemetry should be drawn durring this pass. See comments in fx_draw_common for a list of common strings. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. FX for OpenGL ES 2.0 Include shader code from a remote URI. If binary, assume raw. The fx_code_profile type allows you to specify an inline block of source code. It is HIGHLY recommended to use a CDATA block inside to avoid issues with Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method. Add metadata to this pass that may be used by games or tools to make decisions A static declaration of all the render states, shaders, and settings for one rendering pipeline. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. Unique identifier for referencing Shading language that will be used. This is not an enum to support future languages. Current known languages at this time are GLSL-ES, CG Support for multiple OpenGL ES 2.0 platforms A group that specifies the allowable types for GLSL profile parameters. The glsl_newarray_type element is used to creates a parameter of a one-dimensional array type. First element types the array. If more than one then init entire array and must match length attribute. If only one then repeat based on length attribute. The length attribute specifies the length of the array. Identify code fragments and bind their parameters to effect parameters to identify how their values will be filled in sid of the code or include element which provides the source for this shader. Code may come from local or library_code. GPU Pipeline stage for this programmable shader. Current standards are VERTEX (vertex shader), FRAGMENT (pixel or fragment shader). These are recognized by both GLSL and CG a program is one or more shaders linked together compile shader stages Bind attributes. If not bound then it is assumed to be the same semantic as the variable name. If the variable name is prefixed with "gl_" or "sv_" then the prefix may be ignored. Bind attributes to semantics to enable semantic association to attributes that are not redeclared as parameters. Without this, the semantic is the same as the attribute's name. shader variable name Bind uniforms and samplers Bind uniforms to parameters SID of parameter shader variable name Opens a block of GLSL platform-specific data types and technique declarations. Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method. A static declaration of all the render states, shaders, and settings for one rendering pipeline. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional Creates a parameter of a one-dimensional array type. First element types the array. If more than one then init entire array and must match length attribute. If only one then repeat based on length attribute. The length attribute specifies the length of the array. The array may be resized when changed because it is connected to a Cg unsized array. Assigns a new value to a previously defined parameter. A group that specifies the allowable types for CG profile parameters. Creates an instance of a structured class. Some usertypes do not have data. They may be used only to implement interface functions. Use a series of these to set the members by name. The ref attribute will be relative to the usertype you are in right now. Reference a code or include element which defines the usertype Create a new, named param object in the CG Runtime, assign it a type, an initial value, and additional attributes at declaration time. The annotate element allows you to specify an annotation for this new param. The semantic element allows you to specify a semantic for this new param. The modifier element allows you to specify a modifier for this new param. Declare and prepare a shader for execution in the rendering pipeline of a pass. collect the sources together for the shader. Use concat to make the final string. entry function name for this shader Binds values to uniform inputs of a shader. References a predefined parameter in shader binding declarations. The identifier for a uniform input parameter to the shader (a formal function parameter or in-scope global) that will be bound to an external resource. In which pipeline stage this programmable shader is designed to execute, for example, VERTEX, FRAGMENT, etc. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. Opens a block of CG platform-specific data types and technique declarations. Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method. The technique element may contain an asset element. A static declaration of all the render states, shaders, and settings for one rendering pipeline. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional value=0x1E01 value=0x2100 value=0x2101 value=0x0BE2 value=0x0104 value=0x1E01 value=0x2100 value=0x0104 value=0x8574 value=0x8575 value=0x84E7 value=0x86AE value=0x86AF value=0x1E01 value=0x2100 value=0x0104 value=0x8574 value=0x8575 value=0x84E7 value=0x1702 value=0x8576 value=0x8577 value=0x8578 value=0x0300 value=0x0301 value=0x0302 value=0x0303 value=0x0302 value=0x0303 Defines the RGB portion of a texture_pipeline command. This is a combiner-mode texturing operation. Defines a set of texturing commands that will be converted into multitexturing operations using glTexEnv in regular and combiner mode. Defines a texture_pipeline command. This is a combiner-mode texturing operation. Defines a texture_pipeline command. It is a simple noncombiner mode of texturing operations. The extra element may appear any number of times. OpenGL ES extensions may be used here. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. supported by GLES 1.1 only The extra element may appear any number of times. OpenGL ES extensions may be used here. Sampling state that can be sharable between samplers because there is often heavy re-use value=0x1E00 value=0x0 value=0x1E01 value=0x1E02 value=0x1E03 value=0x150A A group that contains the renderstates available for the GLES profile. A group that defines the available variable types for GLES parameters. Create a new, named param object in the GLES Runtime, assign it a type, an initial value, and additional attributes at declaration time. The annotate element allows you to specify an annotation for this new param. The semantic element allows you to specify a semantic for this new param. The modifier element allows you to specify a modifier for this new param. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Opens a block of GLES platform-specific data types and technique declarations. Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method. A static declaration of all the render states, shaders, and settings for one rendering pipeline. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional A group that specifies the allowable COLLADA FX profiles. A self contained description of a shader effect. The effect element may contain an asset element. The annotate element allows you to specify an annotation on this effect. The newparam element allows you to create new effect parameters which can be shared by multipe profiles. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_effects element declares a module of effect elements. The library_effects element may contain an asset element. There must be at least one effect element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. An axis-aligned, centered box primitive. 3 float values that represent the extents of the box The extra element may appear any number of times. An infinite plane primitive. 4 float values that represent the coefficients for the plane's equation: Ax + By + Cz + D = 0 The extra element may appear any number of times. A centered sphere primitive. A float value that represents the radius of the sphere The extra element may appear any number of times. A cylinder primitive that is centered on, and aligned with. the local Y axis. A float value that represents the length of the cylinder along the Y axis. float2 values that represent the radii of the cylinder. The extra element may appear any number of times. A capsule primitive that is centered on and aligned with the local Y axis. A float value that represents the length of the line segment connecting the centers of the capping hemispheres. Three float values that represent the radii of the capsule (it may be elliptical). The extra element may appear any number of times. A general container for force-fields. At the moment, it only has techniques and extra elements. The force_field element may contain an asset element. This element must contain at least one non-common profile technique. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_force_fields element declares a module of force_field elements. The library_force_fields element may contain an asset element. There must be at least one force_field element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. This element defines the physical properties of an object. It contains a technique/profile with parameters. The COMMON profile defines the built-in names, such as static_friction. The physics_material element may contain an asset element. The technique_common element specifies the physics_material information for the common profile which all COLLADA implementations need to support. Dynamic friction coefficient The proportion of the kinetic energy preserved in the impact (typically ranges from 0.0 to 1.0) Static friction coefficient This element may contain any number of non-common profile techniques. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_physics_materials element declares a module of physics_material elements. The library_physics_materials element may contain an asset element. There must be at least one physics_material element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. constant-strings constant-strings This element defines all the edges used in the brep structure. Five input elements are needed to define an edge, one for referencing the curve, two for referencing the two vertices, one for the orientation of the first vertex (the second is the opposite of the first) and one for the parametric values of the curve. The indices for refrencing curves and vertices. This element defines all the wires used in the brep structure. One input elements is needed to define a wire by its edges. The second is needed for orientation of the edges The indices of the edges for each wire. This element defines all the faces used in the brep structure. Two input elements are needed to define a face, one for referencing the surface and one for referencing the wires themselfs. The third is needed for the orientation of each wires. The indices for referencing the surface and wires for each face. This element defines all the shells used in the brep structure. One input elements is needed to define a shell by its faces. The second is need for the orientation of the faces The indices of the faces for each shell. This element defines all the solids used in the brep structure. One input elements is needed to define a solid by its shells. The second is need fo the orientation of the shells. The indices of the shells for each solid. Describes an infinite line. A line is defined and positioned in space with an axis which gives it an origin and a unit vector. The Geom_Line line is parameterized: P (U) = O + U*Dir, where: - P is the point of parameter U, - O is the origin and Dir the unit vector of its positioning axis. The parameter range is ] -infinite, +infinite [. The orientation of the line is given by the unit vector of its positioning axis. Describes a circle. A circle is defined by its radius and, as with any conic curve, is positioned in space with a right-handed coordinate system where: - the origin is the center of the circle, and - the origin, "X Direction" and "Y Direction" define the plane of the circle. This coordinate system is the local coordinate system of the circle. The "main Direction" of this coordinate system is the vector normal to the plane of the circle. The axis, of which the origin and unit vector are respectively the origin and "main Direction" of the local coordinate system, is termed the "Axis" or "main Axis" of the circle. The "main Direction" of the local coordinate system gives an explicit orientation to the circle (definition of the trigonometric sense), determining the direction in which the parameter increases along the circle. The Geom_Circle circle is parameterized by an angle: P(U) = O + R*Cos(U)*XDir + R*Sin(U)*YDir, where: - P is the point of parameter U, - O, XDir and YDir are respectively the origin, "X Direction" and "Y Direction" of its local coordinate system, - R is the radius of the circle. The "X Axis" of the local coordinate system therefore defines the origin of the parameter of the circle. The parameter is the angle with this "X Direction". A circle is a closed and periodic curve. The period is 2.*Pi and the parameter range is [ 0, 2.*Pi [. Describes an ellipse in 3D space. An ellipse is defined by its major and minor radii and, as with any conic curve, is positioned in space with a right-handed coordinate system where: - the origin is the center of the ellipse, - the "X Direction" defines the major axis, and - the "Y Direction" defines the minor axis. The origin, "X Direction" and "Y Direction" of this coordinate system define the plane of the ellipse. The coordinate system is the local coordinate system of the ellipse. The "main Direction" of this coordinate system is the vector normal to the plane of the ellipse. The axis, of which the origin and unit vector are respectively the origin and "main Direction" of the local coordinate system, is termed the "Axis" or "main Axis" of the ellipse. The "main Direction" of the local coordinate system gives an explicit orientation to the ellipse (definition of the trigonometric sense), determining the direction in which the parameter increases along the ellipse. The Geom_Ellipse ellipse is parameterized by an angle: P(U) = O + MajorRad*Cos(U)*XDir + MinorRad*Sin(U)*YDir where: - P is the point of parameter U, - O, XDir and YDir are respectively the origin, "X <br> Direction" and "Y Direction" of its local coordinate system, - MajorRad and MinorRad are the major and minor radii of the ellipse. The "X Axis" of the local coordinate system therefore defines the origin of the parameter of the ellipse. An ellipse is a closed and periodic curve. The period is 2.*Pi and the parameter range is [ 0, 2.*Pi [. Describes a parabola in 3D space. A parabola is defined by its focal length (i.e. the distance between its focus and its apex) and is positioned in space with a coordinate system where: - the origin is the apex of the parabola, - the "X Axis" defines the axis of symmetry; the parabola is on the positive side of this axis, - the origin, "X Direction" and "Y Direction" define the plane of the parabola. This coordinate system is the local coordinate system of the parabola. The "main Direction" of this coordinate system is a vector normal to the plane of the parabola. The axis, of which the origin and unit vector are respectively the origin and "main Direction" of the local coordinate system, is termed the "Axis" or "main Axis" of the parabola. The "main Direction" of the local coordinate system gives an explicit orientation to the parabola, determining the direction in which the parameter increases along the parabola. The Geom_Parabola parabola is parameterized as follows: P(U) = O + U*U/(4.*F)*XDir + U*YDir where: - P is the point of parameter U, - O, XDir and YDir are respectively the origin, "X <br> Direction" and "Y Direction" of its local coordinate system, - F is the focal length of the parabola. The parameter of the parabola is therefore its Y coordinate in the local coordinate system, with the "X <br> Axis" of the local coordinate system defining the origin of the parameter. The parameter range is ] -infinite, +infinite [. Describes a branch of a hyperbola in 3D space. A hyperbola is defined by its major and minor radii and, as with any conic curve, is positioned in space with a right-handed coordinate system where: - the origin is the center of the hyperbola, - the "X Direction" defines the major axis, and - the "Y Direction" defines the minor axis. The origin, "X Direction" and "Y Direction" of this coordinate system define the plane of the hyperbola. The coordinate system is the local coordinate system of the hyperbola. The branch of the hyperbola described is the one located on the positive side of the major axis. The "main Direction" of the local coordinate system is a vector normal to the plane of the hyperbola. The axis, of which the origin and unit vector are respectively the origin and "main Direction" of the local coordinate system, is termed the "Axis" or "main Axis" of the hyperbola. The "main Direction" of the local coordinate system gives an explicit orientation to the hyperbola, determining the direction in which the parameter increases along the hyperbola. The Geom_Hyperbola hyperbola is parameterized as follows: P(U) = O + MajRad*Cosh(U)*XDir + MinRad*Sinh(U)*YDir, where: - P is the point of parameter U, - O, XDir and YDir are respectively the origin, "X Direction" and "Y Direction" of its local coordinate system, - MajRad and MinRad are the major and minor radii of the hyperbola. The "X Axis" of the local coordinate system therefore defines the origin of the parameter of the hyperbola. The parameter range is ] -infinite, +infinite [. The first two inputs are needed to reference the edge-face-connection. The third input references the pcurve. The SIDREF_array element declares the storage for a homogenous array of SID reference values. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The count attribute indicates the number of values in the array. Required attribute. The source element declares a data repository that provides values according to the semantics of an input element that refers to it. The source element may contain an asset element. The source element may contain a token_array. The source element may contain an IDREF_array. The source element may contain a Name_array. The source element may contain a bool_array. The source element may contain a float_array. The source element may contain an int_array. The technique common specifies the common method for accessing this source element's data. The source's technique_common must have one and only one accessor. This element may contain any number of non-common profile techniques. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Required attribute. The name attribute is the text string name of this element. Optional attribute. The animation element categorizes the declaration of animation information. The animation hierarchy contains elements that describe the animation's key-frame data and sampler functions, ordered in such a way to group together animations that should be executed together. The animation element may contain an asset element. The animation element may contain any number of source elements. The animation element may contain any number of sampler elements. The animation element may contain any number of channel elements. The animation may be hierarchical and may contain any number of other animation elements. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_animations element declares a module of animation elements. The library_animations element may contain an asset element. There must be at least one animation element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The skin element contains vertex and primitive information sufficient to describe blend-weight skinning. This provides extra information about the position and orientation of the base mesh before binding. If bind_shape_matrix is not specified then an identity matrix may be used as the bind_shape_matrix. The bind_shape_matrix element may occur zero or one times. The skin element must contain at least three source elements. The joints element associates joint, or skeleton, nodes with attribute data. In COLLADA, this is specified by the inverse bind matrix of each joint (influence) in the skeleton. The input element must occur at least twice. These inputs are local inputs. The extra element may appear any number of times. The vertex_weights element associates a set of joint-weight pairs with each vertex in the base mesh. The input element must occur at least twice. The vcount element contains a list of integers describing the number of influences for each vertex. The vcount element may occur once. The v element describes which bones and attributes are associated with each vertex. An index of -1 into the array of joints refers to the bind shape. Weights should be normalized before use. The v element must occur zero or one times. The extra element may appear any number of times. The count attribute describes the number of vertices in the base mesh. Required element. The extra element may appear any number of times. The source attribute contains a URI reference to the base mesh, (a static mesh or a morphed mesh). This also provides the bind-shape of the skinned mesh. Required attribute. The definition of the convex_mesh element is identical to the mesh element with the exception that instead of a complete description (source, vertices, polygons etc.), it may simply point to another geometry to derive its shape. The latter case means that the convex hull of that geometry should be computed and is indicated by the optional "convex_hull_of" attribute. The extra element may appear any number of times. The convex_hull_of attribute is a URI string of geometry to compute the convex hull of. Optional attribute. The mesh element contains vertex and primitive information sufficient to describe basic geometric meshes. The mesh element must contain one or more source elements. The mesh element must contain one vertices element. The mesh element may contain any number of lines elements. The mesh element may contain any number of linestrips elements. The mesh element may contain any number of polygons elements. The mesh element may contain any number of polylist elements. The mesh element may contain any number of triangles elements. The mesh element may contain any number of trifans elements. The mesh element may contain any number of tristrips elements. The extra element may appear any number of times. The spline element contains control vertex information sufficient to describe basic splines. The mesh element must contain one or more source elements. The control vertices element must occur exactly one time. It is used to describe the CVs of the spline. The input element must occur at least one time. These inputs are local inputs. The extra element may appear any number of times. The extra element may appear any number of times. The control vertices element must occur exactly one time. It is used to describe the CVs of the spline. The input element must occur at least one time. These inputs are local inputs. The extra element may appear any number of times. The control vertices element must occur exactly one time. It is used to describe the CVs of the spline. The input element must occur at least one time. These inputs are local inputs. The extra element may appear any number of times. The morph element describes the data required to blend between sets of static meshes. Each possible mesh that can be blended (a morph target) must be specified. The morph element must contain at least two source elements. The targets element declares the morph targets, their weights and any user defined attributes associated with them. The input element must occur at least twice. These inputs are local inputs. The extra element may appear any number of times. The extra element may appear any number of times. The method attribute specifies the which blending technique to use. The accepted values are NORMALIZED, and RELATIVE. The default value if not specified is NORMALIZED. Optional attribute. The source attribute indicates the base mesh. Required attribute. The controller element categorizes the declaration of generic control information. A controller is a device or mechanism that manages and directs the operations of another object. The controller element may contain an asset element. The controller element may contain either a skin element or a morph element. The controller element may contain either a skin element or a morph element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_controllers element declares a module of controller elements. The library_controllers element may contain an asset element. There must be at least one controller element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. A curveType defines the attributes of a curve element. With rotate and translate the surface can be positioned to its right location. The id of a curve. The name of a curve. This element holds all the pcurves that are needed for the geometrical description of the topological entities edges on the surfaces they lie on. This element holds all the curves that are needed for the geometrical description of the topological entities edges. Describes a surface of linear extrusion ("extruded surface"), e.g. a generalized cylinder. Such a surface is obtained by sweeping a curve (called the "extruded curve" or "basis") in a given direction (referred to as the "direction of extrusion" and defined by a unit vector). The u parameter is along the extruded curve. The v parameter is along the direction of extrusion. The parameter range for the u parameter is defined by the reference curve. The parameter range for the v parameter is ] - infinity, + infinity [. The position of the curve gives the origin of the v parameter. The form of a surface of linear extrusion is generally a ruled surface. It can be: - a cylindrical surface, if the extruded curve is a circle, or a trimmed circle, with an axis parallel to the direction of extrusion, or - a planar surface, if the extruded curve is a line. A surfaceType defines the attributes of a surface element. With rotate and translate the surface can be positioned to its right location. The id of the surface. The name of the surface. The brep element contains the complete topological description of a static structure. There are also the corresponding geometrical descriptions of the vertices, edges and faces. The curves element holds all the curves that are needed for the brep structure. Here are the curves that describes the kind of an edge, but here are also the curves that are needed to create a extrusion for a surface. This element is needed, if the edges element is present. The surfaces element holds all the surfaces that are needed for the brep structure. Here are the surfaces that describes the kind of a face. This element is needed, if the faces element is present. The source elements define the access of the elements vertices, edges and faces to their geometric entities. At least one source element is needed for the vertices. If there are edges a second source element is needed for accessing the curves in the curve element by an IDREF_array. If there are faces the third source element is needed for accessing the surfaces in the surface element by an IDREF_array. This element defines all the vertices of an brep structure. Vertices are the base topological entity for all brep structures, so this element is ever needed. This element defines all the edges of the brep structure. This element defines all the wires of the brep structure. This element defines all the faces of the brep structure. This element defines all the shells of the brep structure. This element defines all the solids of the brep structure. Geometry describes the visual shape and appearance of an object in the scene. The geometry element categorizes the declaration of geometric information. Geometry is a branch of mathematics that deals with the measurement, properties, and relationships of points, lines, angles, surfaces, and solids. The geometry element may contain an asset element. The geometry element may contain only one mesh or convex_mesh. The geometry element may contain only one mesh or convex_mesh. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_geometries element declares a module of geometry elements. The library_geometries element may contain an asset element. There must be at least one geometry element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The rotate element contains an angle and a mathematical vector that represents the axis of rotation. This element allows for connecting components, such as rigid_body into complex physics models with moveable parts. Defines the attachment (to a rigid_body or a node) to be used as the reference-frame. Allows you to "position" the attachment point. Allows you to "position" the attachment point. The extra element may appear any number of times. The "rigid_body" attribute is a relative reference to a rigid-body within the same physics_model. Defines an attachment to a rigid-body or a node. Allows you to "position" the attachment point. Allows you to "position" the attachment point. The extra element may appear any number of times. The "rigid_body" attribute is a relative reference to a rigid-body within the same physics_model. The technique_common element specifies the rigid_constraint information for the common profile which all COLLADA implementations need to support. If false, the constraint doesn't exert any force or influence on the rigid bodies. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. Indicates whether the attached rigid bodies may inter-penetrate. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The limits element provides a flexible way to specify the constraint limits (degrees of freedom and ranges). The swing_cone_and_twist element describes the angular limits along each rotation axis in degrees. The the X and Y limits describe a "swing cone" and the Z limits describe the "twist angle" range The minimum values for the limit. The maximum values for the limit. The linear element describes linear (translational) limits along each axis. The minimum values for the limit. The maximum values for the limit. Spring, based on distance ("LINEAR") or angle ("ANGULAR"). The angular spring properties. The stiffness (also called spring coefficient) has units of force/angle in degrees. The spring damping coefficient. The spring's target or resting distance. The linear spring properties. The stiffness (also called spring coefficient) has units of force/distance. The spring damping coefficient. The spring's target or resting distance. This element may contain any number of non-common profile techniques. The extra element may appear any number of times. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. Nodes embody the hierarchical relationship of elements in the scene. The node element may contain an asset element. The node element may contain any number of lookat elements. The node element may contain any number of matrix elements. The node element may contain any number of rotate elements. The node element may contain any number of scale elements. The node element may contain any number of skew elements. The node element may contain any number of translate elements. The node element may instance any number of camera objects. The node element may instance any number of controller objects. The node element may instance any number of geometry objects. The node element may instance any number of light objects. The node element may instance any number of node elements or hierarchies objects. The node element may be hierarchical and be the parent of any number of other node elements. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The type attribute indicates the type of the node element. The default value is "NODE". Optional attribute. The layer attribute indicates the names of the layers to which this node belongs. For example, a value of "foreground glowing" indicates that this node belongs to both the 'foreground' layer and the 'glowing' layer. The default value is empty, indicating that the node doesn't belong to any layer. Optional attribute. The library_nodes element declares a module of node elements. The library_nodes element may contain an asset element. There must be at least one node element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The visual_scene element declares the base of the visual_scene hierarchy or scene graph. The scene contains elements that comprise much of the visual and transformational information content as created by the authoring tools. The visual_scene element may contain an asset element. The visual_scene element must have at least one node element. The evaluate_scene element declares information specifying how to evaluate this visual_scene. There may be any number of evaluate_scene elements. They are evaluated in order and particular one may be disabled via setting enabled=false. The render element describes one effect pass to evaluate the scene. There must be at least one render element. The layer element specifies which layer to render in this compositing step while evaluating the scene. You may specify any number of layers. No layers mans that the entire scene will be used. The instance_material element specifies which effect to render in this compositing step while evaluating the scene. technique Explicitly select one pass. If empty then use all passes of the technique. The bind element binds values to effect parameters upon instantiation. The semantic attribute specifies which effect parameter to bind. The target attribute specifies the location of the value to bind to the specified semantic. This text string is a path-name following a simple syntax described in the ?Addressing Syntax? section. The extra element may appear any number of times. URL to a material The extra element may appear any number of times. The name attribute is the text string name of this element. Optional attribute. The camera_node attribute refers to a node that contains a camera describing the viewpoint to render this compositing step from. The extra element may appear any number of times. allow this to be disabled and hense skipped durring evaluation. This is useful for debug. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_visual_scenes element declares a module of visual_scene elements. The library_visual_scenes element may contain an asset element. There must be at least one visual_scene element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. This element allows for describing simulated bodies that do not deform. These bodies may or may not be connected by constraints (hinge, ball-joint etc.). Rigid-bodies, constraints etc. are encapsulated in physics_model elements to allow for instantiating complex models. The technique_common element specifies the rigid_body information for the common profile which all COLLADA implementations need to support. If false, the rigid_body is not moveable The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The total mass of the rigid-body Defines the center and orientation of mass of the rigid-body relative to the local origin of the "root" shape.This makes the off-diagonal elements of the inertia tensor (products of inertia) all 0 and allows us to just store the diagonal elements (moments of inertia). float3 - The diagonal elements of the inertia tensor (moments of inertia), which is represented in the local frame of the center of mass. See above. References a physics_material for the rigid_body. Defines a physics_material for the rigid_body. This element allows for describing components of a rigid_body. If true, the mass is distributed along the surface of the shape The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The mass of the shape. The density of the shape. References a physics_material for the shape. Defines a physics_material for the shape. Instances a geometry to use to define this shape. Defines a plane to use for this shape. Defines a box to use for this shape. Defines a sphere to use for this shape. Defines a cyliner to use for this shape. Defines a capsule to use for this shape. Allows a tranformation for the shape. Allows a tranformation for the shape. The extra element may appear any number of times. This element may contain any number of non-common profile techniques. The extra element may appear any number of times. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. This element allows instancing a rigid_body within an instance_physics_model. The technique_common element specifies the instance_rigid_body information for the common profile which all COLLADA implementations need to support. Specifies the initial angular velocity of the rigid_body instance in degrees per second around each axis, in the form of an X-Y-Z Euler rotation. Specifies the initial linear velocity of the rigid_body instance. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The extra element may appear any number of times. This element may contain any number of non-common profile techniques. The extra element may appear any number of times. The body attribute indicates which rigid_body to instantiate. Required attribute. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The target attribute indicates which node is influenced by this rigid_body instance. Required attribute This element allows instancing physics model within another physics model, or in a physics scene. The instance_physics_model element may instance any number of force_field elements. The instance_physics_model element may instance any number of rigid_body elements. The instance_physics_model element may instance any number of rigid_constraint elements. The extra element may appear any number of times. The url attribute refers to resource. This may refer to a local resource using a relative URL fragment identifier that begins with the "#" character. The url attribute may refer to an external resource using an absolute or relative URL. The sid attribute is a text string value containing the sub-identifier of this element. This value must be unique within the scope of the parent element. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The parent attribute points to the id of a node in the visual scene. This allows a physics model to be instantiated under a specific transform node, which will dictate the initial position and orientation, and could be animated to influence kinematic rigid bodies. This element allows for building complex combinations of rigid-bodies and constraints that may be instantiated multiple times. The physics_model element may contain an asset element. The physics_model may define any number of rigid_body elements. The physics_model may define any number of rigid_constraint elements. The physics_model may instance any number of other physics_model elements. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_physics_models element declares a module of physics_model elements. The library_physics_models element may contain an asset element. There must be at least one physics_model element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The physics_scene element may contain an asset element. There may be any number of instance_force_field elements. There may be any number of instance_physics_model elements. The technique_common element specifies the physics_scene information for the common profile which all COLLADA implementations need to support. The gravity vector to use for the physics_scene. The time_step for the physics_scene. This element may contain any number of non-common profile techniques. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The library_physics_scenes element declares a module of physics_scene elements. The library_physics_scenes element may contain an asset element. There must be at least one physics_scene element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The animation_clip element defines a section of the animation curves to be used together as an animation clip. The animation_clip element may contain an asset element. The animation_clip must instance at least one animation element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. The start attribute is the time in seconds of the beginning of the clip. This time is the same as that used in the key-frame data and is used to determine which set of key-frames will be included in the clip. The start time does not specify when the clip will be played. If the time falls between two keyframes of a referenced animation, an interpolated value should be used. The default value is 0.0. Optional attribute. The end attribute is the time in seconds of the end of the clip. This is used in the same way as the start time. If end is not specified, the value is taken to be the end time of the longest animation. Optional attribute. The library_animation_clips element declares a module of animation_clip elements. The library_animation_clips element may contain an asset element. There must be at least one animation_clip element. The extra element may appear any number of times. The id attribute is a text string containing the unique identifier of this element. This value must be unique within the instance document. Optional attribute. The name attribute is the text string name of this element. Optional attribute. enable-xmlns The COLLADA element declares the root of the document that comprises some of the content in the COLLADA schema. The COLLADA element must contain an asset element. The COLLADA element may contain any number of library_animations elements. The COLLADA element may contain any number of library_animation_clips elements. The COLLADA element may contain any number of library_cameras elements. The COLLADA element may contain any number of library_controllerss elements. The COLLADA element may contain any number of library_geometriess elements. The COLLADA element may contain any number of library_effects elements. The COLLADA element may contain any number of library_force_fields elements. The COLLADA element may contain any number of library_images elements. The COLLADA element may contain any number of library_lights elements. The COLLADA element may contain any number of library_materials elements. The COLLADA element may contain any number of library_nodes elements. The COLLADA element may contain any number of library_materials elements. The COLLADA element may contain any number of library_physics_models elements. The COLLADA element may contain any number of library_physics_scenes elements. The COLLADA element may contain any number of library_visual_scenes elements. The scene embodies the entire set of information that can be visualized from the contents of a COLLADA resource. The scene element declares the base of the scene hierarchy or scene graph. The scene contains elements that comprise much of the visual and transformational information content as created by the authoring tools. The instance_physics_scene element declares the instantiation of a COLLADA physics_scene resource. The instance_physics_scene element may appear any number of times. The instance_visual_scene element declares the instantiation of a COLLADA visual_scene resource. The instance_visual_scene element may only appear once. The extra element may appear any number of times. The extra element may appear any number of times. The version attribute is the COLLADA schema revision with which the instance document conforms. Required Attribute. The xml:base attribute allows you to define the base URI for this COLLADA document. See http://www.w3.org/TR/xmlbase/ for more information.