1
<?xml version="1.0" encoding="utf-8"?>
2
<xs:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.collada.org/2008/03/COLLADASchema" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.collada.org/2008/03/COLLADASchema" elementFormDefault="qualified" version="1.5.0" xml:lang="EN" xsi:schemaLocation="http://www.w3.org/2001/XMLSchema http://www.w3.org/2001/XMLSchema.xsd">
3
<!--<xs:import namespace="http://www.w3.org/1998/Math/MathML" schemaLocation="http://www.w3.org/Math/XMLSchema/mathml2/mathml2.xsd"/>-->
4
<xs:import namespace="http://www.w3.org/1998/Math/MathML" schemaLocation="mathml2/mathml2.xsd"/>
5
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
9
Version 1.5.0 (August 6, 2008)
11
Copyright (C) 2008 The Khronos Group Inc., Sony Computer Entertainment Inc.
14
Khronos is a trademark of The Khronos Group Inc.
15
COLLADA is a trademark of Sony Computer Entertainment Inc. used by permission by Khronos.
17
Note that this software document is distributed on an "AS IS" basis, with ALL EXPRESS AND
18
IMPLIED WARRANTIES AND CONDITIONS DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED
19
WARRANTIES AND CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR
20
PURPOSE, AND NON-INFRINGEMENT.
23
<xs:simpleType name="float_type">
24
<xs:restriction base="xs:double"/>
26
<xs:simpleType name="int_type">
27
<xs:restriction base="xs:long"/>
29
<xs:simpleType name="uint_type">
30
<xs:restriction base="xs:unsignedLong"/>
32
<xs:simpleType name="sidref_type">
33
<xs:restriction base="xs:string">
34
<xs:pattern value="(([\i-[:]][\c-[:]]*)|.)(/[\i-[:\.]][\c-[:]]*)+((\.[\i-[:]][\c-[:]]*)|(\([0-9]+\)){1,2})?"/>
37
<xs:simpleType name="sid_type">
38
<xs:restriction base="xs:NCName"/>
40
<xs:simpleType name="list_of_bools_type">
41
<xs:list itemType="xs:boolean"/>
43
<xs:simpleType name="list_of_floats_type">
44
<xs:list itemType="float_type"/>
46
<xs:simpleType name="list_of_hex_binary_type">
47
<xs:list itemType="xs:hexBinary"/>
49
<xs:simpleType name="list_of_ints_type">
50
<xs:list itemType="int_type"/>
52
<xs:simpleType name="list_of_names_type">
53
<xs:list itemType="xs:Name"/>
55
<xs:simpleType name="list_of_idrefs_type">
56
<xs:list itemType="xs:Name"/>
58
<xs:simpleType name="list_of_sidrefs_type">
59
<xs:list itemType="sidref_type"/>
61
<xs:simpleType name="list_of_tokens_type">
62
<xs:list itemType="xs:token"/>
64
<xs:simpleType name="list_of_uints_type">
65
<xs:list itemType="uint_type"/>
67
<xs:simpleType name="bool2_type">
68
<xs:restriction base="list_of_bools_type">
69
<xs:minLength value="2"/>
70
<xs:maxLength value="2"/>
73
<xs:simpleType name="bool3_type">
74
<xs:restriction base="list_of_bools_type">
75
<xs:minLength value="3"/>
76
<xs:maxLength value="3"/>
79
<xs:simpleType name="bool4_type">
80
<xs:restriction base="list_of_bools_type">
81
<xs:minLength value="4"/>
82
<xs:maxLength value="4"/>
85
<xs:simpleType name="bool2x2_type">
86
<xs:restriction base="list_of_bools_type">
87
<xs:minLength value="4"/>
88
<xs:maxLength value="4"/>
91
<xs:simpleType name="bool2x3_type">
92
<xs:restriction base="list_of_bools_type">
93
<xs:minLength value="6"/>
94
<xs:maxLength value="6"/>
97
<xs:simpleType name="bool2x4_type">
98
<xs:restriction base="list_of_bools_type">
99
<xs:minLength value="8"/>
100
<xs:maxLength value="8"/>
103
<xs:simpleType name="bool3x2_type">
104
<xs:restriction base="list_of_bools_type">
105
<xs:minLength value="6"/>
106
<xs:maxLength value="6"/>
109
<xs:simpleType name="bool3x3_type">
110
<xs:restriction base="list_of_bools_type">
111
<xs:minLength value="9"/>
112
<xs:maxLength value="9"/>
115
<xs:simpleType name="bool3x4_type">
116
<xs:restriction base="list_of_bools_type">
117
<xs:minLength value="12"/>
118
<xs:maxLength value="12"/>
121
<xs:simpleType name="bool4x2_type">
122
<xs:restriction base="list_of_bools_type">
123
<xs:minLength value="8"/>
124
<xs:maxLength value="8"/>
127
<xs:simpleType name="bool4x3_type">
128
<xs:restriction base="list_of_bools_type">
129
<xs:minLength value="12"/>
130
<xs:maxLength value="12"/>
133
<xs:simpleType name="bool4x4_type">
134
<xs:restriction base="list_of_bools_type">
135
<xs:minLength value="16"/>
136
<xs:maxLength value="16"/>
139
<xs:simpleType name="float2_type">
140
<xs:restriction base="list_of_floats_type">
141
<xs:minLength value="2"/>
142
<xs:maxLength value="2"/>
145
<xs:simpleType name="float3_type">
146
<xs:restriction base="list_of_floats_type">
147
<xs:minLength value="3"/>
148
<xs:maxLength value="3"/>
151
<xs:simpleType name="float4_type">
152
<xs:restriction base="list_of_floats_type">
153
<xs:minLength value="4"/>
154
<xs:maxLength value="4"/>
157
<xs:simpleType name="float7_type">
158
<xs:restriction base="list_of_floats_type">
159
<xs:minLength value="7"/>
160
<xs:maxLength value="7"/>
163
<xs:simpleType name="float2x2_type">
164
<xs:restriction base="list_of_floats_type">
165
<xs:minLength value="4"/>
166
<xs:maxLength value="4"/>
169
<xs:simpleType name="float2x3_type">
170
<xs:restriction base="list_of_floats_type">
171
<xs:minLength value="6"/>
172
<xs:maxLength value="6"/>
175
<xs:simpleType name="float2x4_type">
176
<xs:restriction base="list_of_floats_type">
177
<xs:minLength value="8"/>
178
<xs:maxLength value="8"/>
181
<xs:simpleType name="float3x2_type">
182
<xs:restriction base="list_of_floats_type">
183
<xs:minLength value="6"/>
184
<xs:maxLength value="6"/>
187
<xs:simpleType name="float3x3_type">
188
<xs:restriction base="list_of_floats_type">
189
<xs:minLength value="9"/>
190
<xs:maxLength value="9"/>
193
<xs:simpleType name="float3x4_type">
194
<xs:restriction base="list_of_floats_type">
195
<xs:minLength value="12"/>
196
<xs:maxLength value="12"/>
199
<xs:simpleType name="float4x2_type">
200
<xs:restriction base="list_of_floats_type">
201
<xs:minLength value="8"/>
202
<xs:maxLength value="8"/>
205
<xs:simpleType name="float4x3_type">
206
<xs:restriction base="list_of_floats_type">
207
<xs:minLength value="12"/>
208
<xs:maxLength value="12"/>
211
<xs:simpleType name="float4x4_type">
212
<xs:restriction base="list_of_floats_type">
213
<xs:minLength value="16"/>
214
<xs:maxLength value="16"/>
217
<xs:simpleType name="int2_type">
218
<xs:restriction base="list_of_ints_type">
219
<xs:minLength value="2"/>
220
<xs:maxLength value="2"/>
223
<xs:simpleType name="int3_type">
224
<xs:restriction base="list_of_ints_type">
225
<xs:minLength value="3"/>
226
<xs:maxLength value="3"/>
229
<xs:simpleType name="int4_type">
230
<xs:restriction base="list_of_ints_type">
231
<xs:minLength value="4"/>
232
<xs:maxLength value="4"/>
235
<xs:simpleType name="int2x2_type">
236
<xs:restriction base="list_of_ints_type">
237
<xs:minLength value="4"/>
238
<xs:maxLength value="4"/>
241
<xs:simpleType name="int2x3_type">
242
<xs:restriction base="list_of_ints_type">
243
<xs:minLength value="6"/>
244
<xs:maxLength value="6"/>
247
<xs:simpleType name="int2x4_type">
248
<xs:restriction base="list_of_ints_type">
249
<xs:minLength value="8"/>
250
<xs:maxLength value="8"/>
253
<xs:simpleType name="int3x2_type">
254
<xs:restriction base="list_of_ints_type">
255
<xs:minLength value="6"/>
256
<xs:maxLength value="6"/>
259
<xs:simpleType name="int3x3_type">
260
<xs:restriction base="list_of_ints_type">
261
<xs:minLength value="9"/>
262
<xs:maxLength value="9"/>
265
<xs:simpleType name="int3x4_type">
266
<xs:restriction base="list_of_ints_type">
267
<xs:minLength value="12"/>
268
<xs:maxLength value="12"/>
271
<xs:simpleType name="int4x2_type">
272
<xs:restriction base="list_of_ints_type">
273
<xs:minLength value="8"/>
274
<xs:maxLength value="8"/>
277
<xs:simpleType name="int4x3_type">
278
<xs:restriction base="list_of_ints_type">
279
<xs:minLength value="12"/>
280
<xs:maxLength value="12"/>
283
<xs:simpleType name="int4x4_type">
284
<xs:restriction base="list_of_ints_type">
285
<xs:minLength value="16"/>
286
<xs:maxLength value="16"/>
289
<xs:simpleType name="digits_type">
290
<xs:restriction base="xs:unsignedByte">
291
<xs:minInclusive value="1"/>
292
<xs:maxInclusive value="17"/>
295
<xs:simpleType name="magnitude_type">
296
<xs:restriction base="xs:short">
297
<xs:minInclusive value="-324"/>
298
<xs:maxInclusive value="308"/>
301
<xs:simpleType name="morph_method_enum">
304
An enumuerated type specifying the acceptable morph methods.
307
<xs:restriction base="xs:string">
308
<xs:enumeration value="NORMALIZED"/>
309
<xs:enumeration value="RELATIVE"/>
312
<xs:simpleType name="node_enum">
315
An enumerated type specifying the acceptable node types.
318
<xs:restriction base="xs:string">
319
<xs:enumeration value="JOINT"/>
320
<xs:enumeration value="NODE"/>
323
<xs:simpleType name="sampler_behavior_enum">
326
An enumerated type specifying the acceptable sampler pre and post behavior attribute types.
329
<xs:restriction base="xs:string">
330
<xs:enumeration value="CONSTANT"/>
331
<xs:enumeration value="CYCLE"/>
332
<xs:enumeration value="CYCLE_RELATIVE"/>
333
<xs:enumeration value="GRADIENT"/>
334
<xs:enumeration value="OSCILLATE"/>
335
<xs:enumeration value="UNDEFINED"/>
338
<xs:simpleType name="urifragment_type">
341
This urifragment_type element is used for URI reference which can only reference a resource declared within it's same document.
344
<xs:restriction base="xs:string">
345
<xs:pattern value="(#(.*))"/>
348
<xs:simpleType name="up_axis_enum">
351
An enumerated type specifying the acceptable up-axis values.
354
<xs:restriction base="xs:string">
355
<xs:enumeration value="X_UP"/>
356
<xs:enumeration value="Y_UP"/>
357
<xs:enumeration value="Z_UP"/>
360
<xs:simpleType name="version_enum">
363
An enumerated type specifying the acceptable document versions.
366
<xs:restriction base="xs:string">
367
<xs:enumeration value="1.5.0"/>
370
<xs:complexType name="input_global_type">
373
The input_global_type element is used to represent inputs that can reference external resources.
376
<xs:attribute name="semantic" type="xs:NMTOKEN" use="required">
379
The semantic attribute is the user-defined meaning of the input connection. Required attribute.
383
<xs:attribute name="source" type="xs:anyURI" use="required">
386
The source attribute indicates the location of the data source. Required attribute.
391
<xs:complexType name="input_local_type">
394
The input_local_type element is used to represent inputs that can only reference resources declared in the same document.
397
<xs:attribute name="semantic" type="xs:NMTOKEN" use="required">
400
The semantic attribute is the user-defined meaning of the input connection. Required attribute.
404
<xs:attribute name="source" type="urifragment_type" use="required">
407
The source attribute indicates the location of the data source. Required attribute.
412
<xs:complexType name="input_local_offset_type">
415
The input_local_offset_type element is used to represent indexed inputs that can only reference resources declared in the same document.
418
<xs:attribute name="offset" type="uint_type" use="required">
421
The offset attribute represents the offset into the list of indices. If two input elements share
422
the same offset, they will be indexed the same. This works as a simple form of compression for the
423
list of indices as well as defining the order the inputs should be used in. Required attribute.
427
<xs:attribute name="semantic" type="xs:NMTOKEN" use="required">
430
The semantic attribute is the user-defined meaning of the input connection. Required attribute.
434
<xs:attribute name="source" type="urifragment_type" use="required">
437
The source attribute indicates the location of the data source. Required attribute.
441
<xs:attribute name="set" type="uint_type">
444
The set attribute indicates which inputs should be grouped together as a single set. This is helpful
445
when multiple inputs share the same semantics.
450
<xs:complexType name="targetable_float_type">
453
The targetable_float_type element is used to represent elements which contain a single float value which can
454
be targeted for animation.
458
<xs:extension base="float_type">
459
<xs:attribute name="sid" type="sid_type">
462
The sid attribute is a text string value containing the sub-identifier of this element. This
463
value must be unique within the scope of the parent element. Optional attribute.
470
<xs:complexType name="targetable_float3_type">
473
The targetable_float3_type element is used to represent elements which contain a float3 value which can
474
be targeted for animation.
478
<xs:extension base="float3_type">
479
<xs:attribute name="sid" type="sid_type">
482
The sid attribute is a text string value containing the sub-identifier of this element.
483
This value must be unique within the scope of the parent element. Optional attribute.
490
<xs:complexType name="token_array_type">
493
The token_array_type element declares the storage for a homogenous array of xs:token string values.
497
<xs:extension base="list_of_tokens_type">
498
<xs:attribute name="id" type="xs:ID">
501
The id attribute is a text string containing the unique identifier of this element.
502
This value must be unique within the instance document. Optional attribute.
506
<xs:attribute name="name" type="xs:token">
509
The name attribute is the text string name of this element. Optional attribute.
513
<xs:attribute name="count" type="uint_type" use="required">
516
The count attribute indicates the number of values in the array. Required attribute.
523
<xs:complexType name="idref_array_type">
526
The IDREF_array element declares the storage for a homogenous array of ID reference values.
530
<xs:extension base="xs:IDREFS">
531
<xs:attribute name="id" type="xs:ID">
534
The id attribute is a text string containing the unique identifier of this element. This value
535
must be unique within the instance document. Optional attribute.
539
<xs:attribute name="name" type="xs:token">
542
The name attribute is the text string name of this element. Optional attribute.
546
<xs:attribute name="count" type="uint_type" use="required">
549
The count attribute indicates the number of values in the array. Required attribute.
556
<xs:complexType name="name_array_type">
559
The Name_array element declares the storage for a homogenous array of Name string values.
563
<xs:extension base="list_of_names_type">
564
<xs:attribute name="id" type="xs:ID">
567
The id attribute is a text string containing the unique identifier of this element.
568
This value must be unique within the instance document. Optional attribute.
572
<xs:attribute name="name" type="xs:token">
575
The name attribute is the text string name of this element. Optional attribute.
579
<xs:attribute name="count" type="uint_type" use="required">
582
The count attribute indicates the number of values in the array. Required attribute.
589
<xs:complexType name="bool_array_type">
592
The bool_array element declares the storage for a homogenous array of boolean values.
596
<xs:extension base="list_of_bools_type">
597
<xs:attribute name="id" type="xs:ID">
600
The id attribute is a text string containing the unique identifier of this element.
601
This value must be unique within the instance document. Optional attribute.
605
<xs:attribute name="name" type="xs:token">
608
The name attribute is the text string name of this element. Optional attribute.
612
<xs:attribute name="count" type="uint_type" use="required">
615
The count attribute indicates the number of values in the array. Required attribute.
622
<xs:complexType name="float_array_type">
625
The float_array element declares the storage for a homogenous array of floating point values.
629
<xs:extension base="list_of_floats_type">
630
<xs:attribute name="id" type="xs:ID">
633
The id attribute is a text string containing the unique identifier of this element. This value
634
must be unique within the instance document. Optional attribute.
638
<xs:attribute name="name" type="xs:token">
641
The name attribute is the text string name of this element. Optional attribute.
645
<xs:attribute name="count" type="uint_type" use="required">
648
The count attribute indicates the number of values in the array. Required attribute.
652
<xs:attribute name="digits" type="digits_type" default="6">
655
The digits attribute indicates the number of significant decimal digits of the float values that
656
can be contained in the array. The default value is 6. Optional attribute.
660
<xs:attribute name="magnitude" type="magnitude_type" default="38">
663
The magnitude attribute indicates the largest exponent of the float values that can be contained
664
in the array. The default value is 38. Optional attribute.
671
<xs:complexType name="int_array_type">
674
The int_array element declares the storage for a homogenous array of integer values.
678
<xs:extension base="list_of_ints_type">
679
<xs:attribute name="id" type="xs:ID">
682
The id attribute is a text string containing the unique identifier of this element.
683
This value must be unique within the instance document. Optional attribute.
687
<xs:attribute name="name" type="xs:token">
690
The name attribute is the text string name of this element. Optional attribute.
694
<xs:attribute name="count" type="uint_type" use="required">
697
The count attribute indicates the number of values in the array. Required attribute.
701
<xs:attribute name="minInclusive" type="xs:integer" default="-2147483648">
704
The minInclusive attribute indicates the smallest integer value that can be contained in
705
the array. The default value is -2147483648. Optional attribute.
709
<xs:attribute name="maxInclusive" type="xs:integer" default="2147483647">
712
The maxInclusive attribute indicates the largest integer value that can be contained in
713
the array. The default value is 2147483647. Optional attribute.
720
<xs:complexType name="param_type">
723
The param element declares parametric information regarding its parent element.
727
<xs:extension base="xs:string">
728
<xs:attribute name="name" type="xs:token">
731
The name attribute is the text string name of this element. Optional attribute.
735
<xs:attribute name="sid" type="sid_type">
738
The sid attribute is a text string value containing the sub-identifier of this element.
739
This value must be unique within the scope of the parent element. Optional attribute.
743
<xs:attribute name="semantic" type="xs:NMTOKEN">
746
The semantic attribute is the user-defined meaning of the parameter. Optional attribute.
750
<xs:attribute name="type" type="xs:NMTOKEN" use="required">
753
The type attribute indicates the type of the value data. This text string must be understood
754
by the application. Required attribute.
761
<xs:complexType name="accessor_type">
764
The accessor element declares an access pattern to one of the array elements: float_array,
765
int_array, Name_array, bool_array, token_array, and IDREF_array. The accessor element describes access
766
to arrays that are organized in either an interleaved or non-interleaved manner, depending
767
on the offset and stride attributes.
771
<xs:element name="param" type="param_type" minOccurs="0" maxOccurs="unbounded">
774
The accessor element may have any number of param elements.
779
<xs:attribute name="count" type="uint_type" use="required">
782
The count attribute indicates the number of times the array is accessed. Required attribute.
786
<xs:attribute name="offset" type="uint_type" default="0">
789
The offset attribute indicates the index of the first value to be read from the array.
790
The default value is 0. Optional attribute.
794
<xs:attribute name="source" type="xs:anyURI" use="required">
797
The source attribute indicates the location of the array to access using a URL expression. Required attribute.
801
<xs:attribute name="stride" type="uint_type" default="1">
804
The stride attribute indicates number of values to be considered a unit during each access to
805
the array. The default value is 1, indicating that a single value is accessed. Optional attribute.
810
<xs:complexType name="p_type">
813
The p element represents primitive data for the primitive types (lines, linestrips, polygons,
814
polylist, triangles, trifans, tristrips). The p element contains indices that reference into
815
the parent's source elements referenced by the input elements.
819
<xs:extension base="list_of_uints_type"/>
822
<xs:complexType name="lookat_type">
825
The lookat element contains a position and orientation transformation suitable for aiming a camera.
826
The lookat element contains three mathematical vectors within it that describe:
827
1. The position of the object;
828
2. The position of the interest point;
829
3. The direction that points up.
833
<xs:extension base="float3x3_type">
834
<xs:attribute name="sid" type="sid_type">
837
The sid attribute is a text string value containing the sub-identifier of this element.
838
This value must be unique within the scope of the parent element. Optional attribute.
845
<xs:complexType name="matrix_type">
848
Matrix transformations embody mathematical changes to points within a coordinate systems or the
849
coordinate system itself. The matrix element contains a 4-by-4 matrix of floating-point values.
853
<xs:extension base="float4x4_type">
854
<xs:attribute name="sid" type="sid_type">
857
The sid attribute is a text string value containing the sub-identifier of this element.
858
This value must be unique within the scope of the parent element. Optional attribute.
865
<xs:complexType name="scale_type">
868
The scale element contains a mathematical vector that represents the relative proportions of the
869
X, Y and Z axes of a coordinated system.
873
<xs:restriction base="targetable_float3_type"/>
876
<xs:complexType name="skew_type">
879
The skew element contains an angle and two mathematical vectors that represent the axis of
880
rotation and the axis of translation.
884
<xs:extension base="float7_type">
885
<xs:attribute name="sid" type="sid_type">
888
The sid attribute is a text string value containing the sub-identifier of this element.
889
This value must be unique within the scope of the parent element. Optional attribute.
896
<xs:complexType name="translate_type">
899
The translate element contains a mathematical vector that represents the distance along the
904
<xs:restriction base="targetable_float3_type"/>
907
<xs:complexType name="image_source_type">
909
<xs:element name="ref" type="xs:anyURI">
911
<xs:documentation>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.</xs:documentation>
914
<xs:element name="hex">
916
<xs:documentation>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.</xs:documentation>
920
<xs:extension base="list_of_hex_binary_type">
921
<xs:attribute name="format" type="xs:token" use="required">
923
<xs:documentation>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.</xs:documentation>
932
<xs:complexType name="image_mips_type">
933
<xs:attribute name="levels" type="xs:unsignedInt" use="required">
935
<xs:documentation>Zero is max levels = 1 + floor(log2(max(w, h, d)))
936
in both OpenGL and DirectX. One is no mips.</xs:documentation>
939
<xs:attribute name="auto_generate" type="xs:boolean" use="required">
941
<xs:documentation>regenerate the mipmaps based on information loaded into mip0</xs:documentation>
945
<xs:simpleType name="image_face_enum">
946
<xs:restriction base="xs:string">
947
<xs:enumeration value="POSITIVE_X"/>
948
<xs:enumeration value="NEGATIVE_X"/>
949
<xs:enumeration value="POSITIVE_Y"/>
950
<xs:enumeration value="NEGATIVE_Y"/>
951
<xs:enumeration value="POSITIVE_Z"/>
952
<xs:enumeration value="NEGATIVE_Z"/>
955
<xs:simpleType name="image_format_hint_channels_enum">
957
<xs:documentation>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.</xs:documentation>
959
<xs:restriction base="xs:string">
960
<xs:enumeration value="RGB">
962
<xs:documentation>RGB color map</xs:documentation>
965
<xs:enumeration value="RGBA">
967
<xs:documentation>RGB color + Alpha map often used for color + transparency or other things packed into channel A like specular power </xs:documentation>
970
<xs:enumeration value="RGBE">
972
<xs:documentation>RGB color + shared exponent for HDR </xs:documentation>
975
<xs:enumeration value="L">
977
<xs:documentation>Luminance map often used for light mapping </xs:documentation>
980
<xs:enumeration value="LA">
982
<xs:documentation>Luminance+Alpha map often used for light mapping </xs:documentation>
985
<xs:enumeration value="D">
987
<xs:documentation>Depth map often used for displacement, parellax, relief, or shadow mapping. Depth is depth seperate from Luminace to make special hardware considerations </xs:documentation>
992
<xs:simpleType name="image_format_hint_precision_enum">
994
<xs:documentation>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.</xs:documentation>
996
<xs:restriction base="xs:string">
997
<xs:enumeration value="DEFAULT">
999
<xs:documentation>Designer does not care as long as it provides "reasonable" percision and performance</xs:documentation>
1002
<xs:enumeration value="LOW">
1004
<xs:documentation>For integers this typically represents 8 bits. For floats typically 16 bits.</xs:documentation>
1007
<xs:enumeration value="MID">
1009
<xs:documentation>For integers this typically represents 8 to 24 bits. For floats typically 16 to 32 bits.</xs:documentation>
1012
<xs:enumeration value="HIGH">
1014
<xs:documentation>For integers this typically represents 16 to 32 bits. For floats typically 24 to 32 bits.</xs:documentation>
1017
<xs:enumeration value="MAX">
1019
<xs:documentation>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.</xs:documentation>
1024
<xs:simpleType name="image_format_hint_range_enum">
1026
<xs:documentation>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</xs:documentation>
1028
<xs:restriction base="xs:string">
1029
<xs:enumeration value="SNORM">
1031
<xs:documentation>Format is representing a decimal value that remains within the -1 to 1 range. Implimentation could be integer-fixedpoint or floats.</xs:documentation>
1034
<xs:enumeration value="UNORM">
1036
<xs:documentation>Format is representing a decimal value that remains within the 0 to 1 range. Implimentation could be integer-fixedpoint or floats.</xs:documentation>
1039
<xs:enumeration value="SINT">
1041
<xs:documentation>Format is representing signed integer numbers. (ex. 8bits = -128 to 127)</xs:documentation>
1044
<xs:enumeration value="UINT">
1046
<xs:documentation>Format is representing unsigned integer numbers. (ex. 8bits = 0 to 255)</xs:documentation>
1049
<xs:enumeration value="FLOAT">
1051
<xs:documentation>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.</xs:documentation>
1056
<xs:complexType name="channel_type">
1059
The channel element declares an output channel of an animation.
1062
<xs:attribute name="source" type="urifragment_type" use="required">
1065
The source attribute indicates the location of the sampler using a URL expression.
1066
The sampler must be declared within the same document. Required attribute.
1070
<xs:attribute name="target" type="xs:token" use="required">
1073
The target attribute indicates the location of the element bound to the output of the sampler.
1074
This text string is a path-name following a simple syntax described in Address Syntax.
1080
<xs:complexType name="sampler_type">
1083
The sampler element declares an N-dimensional function used for animation. Animation function curves
1084
are represented by 1-D sampler elements in COLLADA. The sampler defines sampling points and how to
1085
interpolate between them.
1089
<xs:element name="input" type="input_local_type" maxOccurs="unbounded">
1092
The input element must occur at least one time. These inputs are local inputs.
1097
<xs:attribute name="id" type="xs:ID">
1100
The id attribute is a text string containing the unique identifier of this element. This value
1101
must be unique within the instance document. Optional attribute.
1105
<xs:attribute name="pre_behavior" type="sampler_behavior_enum">
1108
Indicates what the sampled value should be before the first key.
1112
<xs:attribute name="post_behavior" type="sampler_behavior_enum">
1115
Indicates what the sampled value should be after the last key.
1120
<xs:simpleType name="altitude_mode_enum">
1123
The legal values for the mode attribute on the altitute element in a
1124
geographic_location element.
1127
<xs:restriction base="xs:string">
1128
<xs:enumeration value="absolute"/>
1129
<xs:enumeration value="relativeToGround"/>
1132
<xs:complexType name="technique_type">
1134
<xs:appinfo>enable-xmlns</xs:appinfo>
1136
The technique element declares the information used to process some portion of the content. Each
1137
technique conforms to an associated profile. Techniques generally act as a "switch". If more than
1138
one is present for a particular portion of content, on import, one or the other is picked, but
1139
usually not both. Selection should be based on which profile the importing application can support.
1140
Techniques contain application data and programs, making them assets that can be managed as a unit.
1144
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
1146
<xs:attribute name="profile" type="xs:NMTOKEN" use="required">
1149
The profile attribute indicates the type of profile. This is a vendor defined character
1150
string that indicates the platform or capability target for the technique. Required attribute.
1155
<xs:complexType name="extra_type">
1158
The extra element declares additional information regarding its parent element.
1162
<xs:element name="asset" type="asset_type" minOccurs="0">
1165
The extra element may contain an asset element.
1169
<xs:element name="technique" type="technique_type" maxOccurs="unbounded">
1172
This element must contain at least one non-common profile technique.
1177
<xs:attribute name="id" type="xs:ID">
1180
The id attribute is a text string containing the unique identifier of this element. This value
1181
must be unique within the instance document. Optional attribute.
1185
<xs:attribute name="name" type="xs:token">
1188
The name attribute is the text string name of this element. Optional attribute.
1192
<xs:attribute name="type" type="xs:NMTOKEN">
1195
The type attribute indicates the type of the value data. This text string must be understood by
1196
the application. Optional attribute.
1201
<xs:complexType name="polylist_type">
1204
The polylist element provides the information needed to bind vertex attributes together and
1205
then organize those vertices into individual polygons. The polygons described in polylist can
1206
contain arbitrary numbers of vertices. Unlike the polygons element, the polylist element cannot
1207
contain polygons with holes.
1211
<xs:element name="input" type="input_local_offset_type" minOccurs="0" maxOccurs="unbounded">
1214
The input element may occur any number of times. This input is a local input with the
1215
offset and set attributes.
1219
<xs:element name="vcount" type="list_of_uints_type" minOccurs="0">
1222
The vcount element contains a list of integers describing the number of sides for each polygon
1223
described by the polylist element. The vcount element may occur once.
1227
<xs:element name="p" type="p_type" minOccurs="0">
1230
The polylist element may have zero or one p element.
1234
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1237
The extra element may appear any number of times.
1242
<xs:attribute name="name" type="xs:token">
1245
The name attribute is the text string name of this element. Optional attribute.
1249
<xs:attribute name="count" type="uint_type" use="required">
1252
The count attribute indicates the number of polygon primitives. Required attribute.
1256
<xs:attribute name="material" type="xs:NCName">
1259
The material attribute declares a symbol for a material. This symbol is bound to a material at
1260
the time of instantiation. If the material attribute is not specified then the lighting and
1261
shading results are application defined. Optional attribute.
1266
<xs:complexType name="polygons_type">
1269
The polygons element provides the information needed to bind vertex attributes together and
1270
then organize those vertices into individual polygons. The polygons described can contain
1271
arbitrary numbers of vertices. These polygons may be self intersecting and may also contain holes.
1275
<xs:element name="input" type="input_local_offset_type" minOccurs="0" maxOccurs="unbounded">
1278
The input element may occur any number of times. This input is a local input with the
1279
offset and set attributes.
1283
<xs:choice minOccurs="0" maxOccurs="unbounded">
1284
<xs:element name="p" type="p_type">
1287
The p element may occur any number of times.
1291
<xs:element name="ph">
1294
The ph element may occur any number of times. It describes a polygon with holes.
1299
<xs:element name="p" type="p_type">
1302
There may only be one p element.
1306
<xs:element name="h" type="list_of_uints_type" maxOccurs="unbounded">
1309
The h element represents a hole in the polygon specified. There must be at least one h element.
1317
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1320
The extra element may appear any number of times.
1325
<xs:attribute name="name" type="xs:token">
1328
The name attribute is the text string name of this element. Optional attribute.
1332
<xs:attribute name="count" type="uint_type" use="required">
1335
The count attribute indicates the number of polygon primitives. Required attribute.
1339
<xs:attribute name="material" type="xs:NCName">
1342
The material attribute declares a symbol for a material. This symbol is bound to a material
1343
at the time of instantiation. If the material attribute is not specified then the lighting
1344
and shading results are application defined. Optional attribute.
1349
<xs:complexType name="linestrips_type">
1352
The linestrips element provides the information needed to bind vertex attributes together and
1353
then organize those vertices into connected line-strips. Each line-strip described by the mesh
1354
has an arbitrary number of vertices. Each line segment within the line-strip is formed from the
1355
current vertex and the preceding vertex.
1359
<xs:element name="input" type="input_local_offset_type" minOccurs="0" maxOccurs="unbounded">
1362
The input element may occur any number of times. This input is a local input with the offset
1367
<xs:element name="p" type="p_type" minOccurs="0" maxOccurs="unbounded">
1370
The linestrips element may have any number of p elements.
1374
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1377
The extra element may appear any number of times.
1382
<xs:attribute name="name" type="xs:token">
1385
The name attribute is the text string name of this element. Optional attribute.
1389
<xs:attribute name="count" type="uint_type" use="required">
1392
The count attribute indicates the number of linestrip primitives. Required attribute.
1396
<xs:attribute name="material" type="xs:NCName">
1399
The material attribute declares a symbol for a material. This symbol is bound to a material
1400
at the time of instantiation. If the material attribute is not specified then the lighting
1401
and shading results are application defined. Optional attribute.
1406
<xs:complexType name="tristrips_type">
1409
The tristrips element provides the information needed to bind vertex attributes together and then
1410
organize those vertices into connected triangles. Each triangle described by the mesh has three
1411
vertices. The first triangle is formed from first, second, and third vertices. Each subsequent
1412
triangle is formed from the current vertex, reusing the previous two vertices.
1416
<xs:element name="input" type="input_local_offset_type" minOccurs="0" maxOccurs="unbounded">
1419
The input element may occur any number of times. This input is a local input with the offset
1424
<xs:element name="p" type="p_type" minOccurs="0" maxOccurs="unbounded">
1427
The tristrips element may have any number of p elements.
1431
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1434
The extra element may appear any number of times.
1439
<xs:attribute name="name" type="xs:token">
1442
The name attribute is the text string name of this element. Optional attribute.
1446
<xs:attribute name="count" type="uint_type" use="required">
1449
The count attribute indicates the number of triangle strip primitives. Required attribute.
1453
<xs:attribute name="material" type="xs:NCName">
1456
The material attribute declares a symbol for a material. This symbol is bound to a material
1457
at the time of instantiation. If the material attribute is not specified then the lighting
1458
and shading results are application defined. Optional attribute.
1463
<xs:complexType name="lines_type">
1466
The lines element provides the information needed to bind vertex attributes together and then
1467
organize those vertices into individual lines. Each line described by the mesh has two vertices.
1468
The first line is formed from first and second vertices. The second line is formed from the
1469
third and fourth vertices and so on.
1473
<xs:element name="input" type="input_local_offset_type" minOccurs="0" maxOccurs="unbounded">
1476
The input element may occur any number of times. This input is a local input with the offset
1481
<xs:element name="p" type="p_type" minOccurs="0">
1484
The lines element may have zero or one p element.
1488
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1491
The extra element may appear any number of times.
1496
<xs:attribute name="name" type="xs:token">
1499
The name attribute is the text string name of this element. Optional attribute.
1503
<xs:attribute name="count" type="uint_type" use="required">
1506
The count attribute indicates the number of line primitives. Required attribute.
1510
<xs:attribute name="material" type="xs:NCName">
1513
The material attribute declares a symbol for a material. This symbol is bound to a material at
1514
the time of instantiation. If the material attribute is not specified then the lighting and
1515
shading results are application defined. Optional attribute.
1520
<xs:complexType name="triangles_type">
1523
The triangles element provides the information needed to bind vertex attributes together and
1524
then organize those vertices into individual triangles. Each triangle described by the mesh has
1525
three vertices. The first triangle is formed from the first, second, and third vertices. The
1526
second triangle is formed from the fourth, fifth, and sixth vertices, and so on.
1530
<xs:element name="input" type="input_local_offset_type" minOccurs="0" maxOccurs="unbounded">
1533
The input element may occur any number of times. This input is a local input with the
1534
offset and set attributes.
1538
<xs:element name="p" type="p_type" minOccurs="0">
1541
The triangles element may have zero or one p element.
1545
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1548
The extra element may appear any number of times.
1553
<xs:attribute name="name" type="xs:token">
1556
The name attribute is the text string name of this element. Optional attribute.
1560
<xs:attribute name="count" type="uint_type" use="required">
1563
The count attribute indicates the number of triangle primitives. Required attribute.
1567
<xs:attribute name="material" type="xs:NCName">
1570
The material attribute declares a symbol for a material. This symbol is bound to a material at
1571
the time of instantiation. Optional attribute. If the material attribute is not specified then
1572
the lighting and shading results are application defined.
1577
<xs:complexType name="trifans_type">
1580
The trifans element provides the information needed to bind vertex attributes together and then
1581
organize those vertices into connected triangles. Each triangle described by the mesh has three
1582
vertices. The first triangle is formed from first, second, and third vertices. Each subsequent
1583
triangle is formed from the current vertex, reusing the first and the previous vertices.
1587
<xs:element name="input" type="input_local_offset_type" minOccurs="0" maxOccurs="unbounded">
1590
The input element may occur any number of times. This input is a local input with the
1591
offset and set attributes.
1595
<xs:element name="p" type="p_type" minOccurs="0" maxOccurs="unbounded">
1598
The trifans element may have any number of p elements.
1602
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1605
The extra element may appear any number of times.
1610
<xs:attribute name="name" type="xs:token">
1613
The name attribute is the text string name of this element. Optional attribute.
1617
<xs:attribute name="count" type="uint_type" use="required">
1620
The count attribute indicates the number of triangle fan primitives. Required attribute.
1624
<xs:attribute name="material" type="xs:NCName">
1627
The material attribute declares a symbol for a material. This symbol is bound to a material
1628
at the time of instantiation. If the material attribute is not specified then the lighting
1629
and shading results are application defined. Optional attribute.
1634
<xs:complexType name="vertices_type">
1637
The vertices element declares the attributes and identity of mesh-vertices. The vertices element
1638
describes mesh-vertices in a mesh geometry. The mesh-vertices represent the position (identity)
1639
of the vertices comprising the mesh and other vertex attributes that are invariant to tessellation.
1643
<xs:element name="input" type="input_local_type" maxOccurs="unbounded">
1646
The input element must occur at least one time. These inputs are local inputs.
1650
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
1653
The extra element may appear any number of times.
1658
<xs:attribute name="id" type="xs:ID" use="required">
1661
The id attribute is a text string containing the unique identifier of this element. This
1662
value must be unique within the instance document. Required attribute.
1666
<xs:attribute name="name" type="xs:token">
1669
The name attribute is the text string name of this element. Optional attribute.
1674
<xs:complexType name="asset_type">
1677
The asset element defines asset management information regarding its parent element.
1681
<xs:element name="contributor" minOccurs="0" maxOccurs="unbounded">
1684
The contributor element defines authoring information for asset management
1689
<xs:element name="author" type="xs:string" minOccurs="0">
1692
The author element contains a string with the author's name.
1693
There may be only one author element.
1697
<xs:element name="author_email" minOccurs="0">
1699
<xs:documentation>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.</xs:documentation>
1702
<xs:restriction base="xs:string">
1703
<xs:pattern value="[A-Za-z0-9!#-'\*\+\-/=\?\^_`\{-~]+(\.[A-Za-z0-9!#-'\*\+\-/=\?\^_`\{-~]+)*@[A-Za-z0-9!#-'\*\+\-/=\?\^_`\{-~]+(\.[A-Za-z0-9!#-'\*\+\-/=\?\^_`\{-~]+)*"/>
1707
<xs:element name="author_website" type="xs:anyURI" minOccurs="0">
1709
<xs:documentation>Contains a URI reference (xs:anyURI) to author's website. This element has no attributes. There may be only one author website.</xs:documentation>
1712
<xs:element name="authoring_tool" type="xs:string" minOccurs="0">
1715
The authoring_tool element contains a string with the authoring tool's name.
1716
There may be only one authoring_tool element.
1720
<xs:element name="comments" type="xs:string" minOccurs="0">
1723
The comments element contains a string with comments from this contributor.
1724
There may be only one comments element.
1728
<xs:element name="copyright" type="xs:string" minOccurs="0">
1731
The copyright element contains a string with copyright information.
1732
There may be only one copyright element.
1736
<xs:element name="source_data" type="xs:anyURI" minOccurs="0">
1739
The source_data element contains a URI reference to the source data used for this asset.
1740
There may be only one source_data element.
1747
<xs:element name="coverage" minOccurs="0">
1750
<xs:element name="geographic_location" minOccurs="0">
1753
Specifies the location of the asset using the WGS84 coordinate system.
1758
<xs:element name="longitude" type="xs:float"/>
1759
<xs:element name="latitude" type="xs:float"/>
1760
<xs:element name="altitude">
1763
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.
1768
<xs:extension base="xs:float">
1769
<xs:attribute name="mode" type="altitude_mode_enum" default="relativeToGround"/>
1780
<xs:element name="created" type="xs:dateTime">
1783
The created element contains the date and time that the parent element was created and is
1784
represented in an ISO 8601 format. The created element may appear zero or one time.
1788
<xs:element name="keywords" type="xs:token" minOccurs="0">
1791
The keywords element contains a list of words used as search criteria for the parent element.
1792
There may be only one keywords element.
1796
<xs:element name="modified" type="xs:dateTime">
1799
The modified element contains the date and time that the parent element was last modified and
1800
represented in an ISO 8601 format. The modified element may appear zero or one time.
1804
<xs:element name="revision" type="xs:string" minOccurs="0">
1807
The revision element contains the revision information for the parent element. The revision
1808
element may appear zero or one time.
1812
<xs:element name="subject" type="xs:string" minOccurs="0">
1815
The subject element contains a description of the topical subject of the parent element. The
1816
subject element may appear zero or one time.
1820
<xs:element name="title" type="xs:string" minOccurs="0">
1823
The title element contains the title information for the parent element. The title element may
1824
appear zero or one time.
1828
<xs:element name="unit" minOccurs="0">
1831
The unit element contains descriptive information about unit of measure. It has attributes for
1832
the name of the unit and the measurement with respect to the meter. The unit element may appear
1837
<xs:attribute name="meter" type="float_type" default="1.0">
1840
The meter attribute specifies the measurement with respect to the meter. The default
1841
value for the meter attribute is "1.0".
1845
<xs:attribute name="name" type="xs:NMTOKEN" default="meter">
1848
The name attribute specifies the name of the unit. The default value for the name
1849
attribute is "meter".
1855
<xs:element name="up_axis" type="up_axis_enum" default="Y_UP" minOccurs="0">
1858
The up_axis element contains descriptive information about coordinate system of the geometric
1859
data. All coordinates are right-handed by definition. This element specifies which axis is
1860
considered up. The default is the Y-axis. The up_axis element may appear zero or one time.
1864
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
1867
<xs:complexType name="image_type">
1869
<xs:element name="asset" type="asset_type" minOccurs="0">
1872
The image element may contain an asset element.
1876
<xs:element name="renderable" minOccurs="0">
1878
<xs:documentation>This image is renderable if this element is used</xs:documentation>
1881
<xs:attribute name="share" type="xs:boolean" use="required">
1883
<xs:documentation>As a render target, true = shared across all users, false = unique per instance</xs:documentation>
1888
<xs:choice minOccurs="0">
1889
<xs:element name="init_from">
1891
<xs:documentation>initialize the whole image structure and data from formats like DDS</xs:documentation>
1895
<xs:extension base="image_source_type">
1896
<xs:attribute name="mips_generate" type="xs:boolean" use="optional" default="true">
1898
<xs:documentation>If true, unless mips already exist in data, generate the mipmaps based on information loaded into mip0, </xs:documentation>
1902
</xs:complexContent>
1905
<xs:element name="create_2d">
1907
<xs:documentation>Initialize a custom 2d image</xs:documentation>
1913
<xs:documentation>sizing</xs:documentation>
1915
<xs:element name="size_exact">
1917
<xs:documentation>The surface should be sized to these exact dimensions</xs:documentation>
1920
<xs:attribute name="width" type="xs:unsignedInt" use="required"/>
1921
<xs:attribute name="height" type="xs:unsignedInt" use="required"/>
1924
<xs:element name="size_ratio">
1926
<xs:documentation>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</xs:documentation>
1929
<xs:attribute name="width" type="xs:float" use="required"/>
1930
<xs:attribute name="height" type="xs:float" use="required"/>
1936
<xs:documentation>mips and texel addressing</xs:documentation>
1938
<xs:element name="mips" type="image_mips_type"/>
1939
<xs:element name="unnormalized">
1941
<xs:documentation>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.</xs:documentation>
1945
<xs:element name="array" minOccurs="0">
1947
<xs:attribute name="length" type="xs:positiveInteger" use="required"/>
1950
<xs:element name="format" minOccurs="0">
1952
<xs:documentation>If not present it is assumed to be R8G8B8A8 linear. </xs:documentation>
1956
<xs:element name="hint">
1958
<xs:documentation>if this element or a higher precidence element is not present then use a common format R8G8B8A8 with linear color gradient, not sRGB.</xs:documentation>
1961
<xs:attribute name="channels" type="image_format_hint_channels_enum" use="required">
1963
<xs:documentation>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.</xs:documentation>
1966
<xs:attribute name="range" type="image_format_hint_range_enum" use="required">
1968
<xs:documentation>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</xs:documentation>
1971
<xs:attribute name="precision" type="image_format_hint_precision_enum" default="DEFAULT">
1973
<xs:documentation>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.</xs:documentation>
1976
<xs:attribute name="space" type="xs:token">
1978
<xs:documentation>linear(default), sRGB </xs:documentation>
1983
<xs:element name="exact" type="xs:token" minOccurs="0">
1985
<xs:documentation>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</xs:documentation>
1991
<xs:element name="init_from" minOccurs="0" maxOccurs="unbounded">
1993
<xs:documentation>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.</xs:documentation>
1997
<xs:extension base="image_source_type">
1998
<xs:attribute name="mip_index" type="xs:unsignedInt" use="required"/>
1999
<xs:attribute name="array_index" type="xs:unsignedInt" use="optional" default="0"/>
2001
</xs:complexContent>
2007
<xs:element name="create_3d">
2009
<xs:documentation>Initialize a custom 3d image</xs:documentation>
2013
<xs:element name="size">
2015
<xs:documentation>The surface should be sized to these exact dimensions</xs:documentation>
2018
<xs:attribute name="width" type="xs:unsignedInt" use="required"/>
2019
<xs:attribute name="height" type="xs:unsignedInt" use="required"/>
2020
<xs:attribute name="depth" type="xs:unsignedInt" use="required"/>
2023
<xs:element name="mips" type="image_mips_type"/>
2024
<xs:element name="array" minOccurs="0">
2026
<xs:attribute name="length" type="xs:unsignedInt" use="required">
2028
<xs:documentation>Zero is not an array</xs:documentation>
2033
<xs:element name="format" minOccurs="0">
2035
<xs:documentation>If not present it is assumed to be R8G8B8A8 linear. </xs:documentation>
2039
<xs:element name="hint">
2041
<xs:documentation>if this element or a higher precidence element is not present then use a common format R8G8B8A8 with linear color gradient, not sRGB.</xs:documentation>
2044
<xs:attribute name="channels" type="image_format_hint_channels_enum" use="required">
2046
<xs:documentation>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.</xs:documentation>
2049
<xs:attribute name="range" type="image_format_hint_range_enum" use="required">
2051
<xs:documentation>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</xs:documentation>
2054
<xs:attribute name="precision" type="image_format_hint_precision_enum" default="DEFAULT">
2056
<xs:documentation>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.</xs:documentation>
2059
<xs:attribute name="space" type="xs:token">
2061
<xs:documentation>linear(default), sRGB </xs:documentation>
2066
<xs:element name="exact" type="xs:token" minOccurs="0">
2068
<xs:documentation>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</xs:documentation>
2074
<xs:element name="init_from" minOccurs="0" maxOccurs="unbounded">
2076
<xs:documentation>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.</xs:documentation>
2080
<xs:extension base="image_source_type">
2081
<xs:attribute name="depth" type="xs:unsignedInt" use="required"/>
2082
<xs:attribute name="mip_index" type="xs:unsignedInt" use="required"/>
2083
<xs:attribute name="array_index" type="xs:unsignedInt" use="optional" default="0"/>
2085
</xs:complexContent>
2091
<xs:element name="create_cube">
2093
<xs:documentation>Initialize a custom cube image</xs:documentation>
2097
<xs:element name="size">
2099
<xs:documentation>The surface should be sized to these exact dimensions</xs:documentation>
2102
<xs:attribute name="width" type="xs:unsignedInt" use="required"/>
2105
<xs:element name="mips" type="image_mips_type"/>
2106
<xs:element name="array" minOccurs="0">
2108
<xs:attribute name="length" type="xs:unsignedInt" use="required">
2110
<xs:documentation>Zero is not an array</xs:documentation>
2115
<xs:element name="format" minOccurs="0">
2117
<xs:documentation>If not present it is assumed to be R8G8B8A8 linear. </xs:documentation>
2121
<xs:element name="hint">
2123
<xs:documentation>if this element or a higher precidence element is not present then use a common format R8G8B8A8 with linear color gradient, not sRGB.</xs:documentation>
2126
<xs:attribute name="channels" type="image_format_hint_channels_enum" use="required">
2128
<xs:documentation>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.</xs:documentation>
2131
<xs:attribute name="range" type="image_format_hint_range_enum" use="required">
2133
<xs:documentation>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</xs:documentation>
2136
<xs:attribute name="precision" type="image_format_hint_precision_enum" default="DEFAULT">
2138
<xs:documentation>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.</xs:documentation>
2141
<xs:attribute name="space" type="xs:token">
2143
<xs:documentation>linear(default), sRGB </xs:documentation>
2148
<xs:element name="exact" type="xs:token" minOccurs="0">
2150
<xs:documentation>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</xs:documentation>
2156
<xs:element name="init_from" minOccurs="0" maxOccurs="unbounded">
2158
<xs:documentation>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.</xs:documentation>
2162
<xs:extension base="image_source_type">
2163
<xs:attribute name="face" type="image_face_enum" use="required"/>
2164
<xs:attribute name="mip_index" type="xs:unsignedInt" use="required"/>
2165
<xs:attribute name="array_index" type="xs:unsignedInt" use="optional" default="0"/>
2167
</xs:complexContent>
2174
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2177
The extra element may appear any number of times.
2182
<xs:attribute name="id" type="xs:ID">
2185
The id attribute is a text string containing the unique identifier of this element. This value
2186
must be unique within the instance document. Optional attribute.
2190
<xs:attribute name="sid" type="sid_type">
2192
<xs:documentation>sub identifier</xs:documentation>
2195
<xs:attribute name="name" type="xs:token">
2198
The name attribute is the text string name of this element. Optional attribute.
2203
<xs:complexType name="camera_type">
2206
The camera element declares a view into the scene hierarchy or scene graph. The camera contains
2207
elements that describe the camera's optics and imager.
2211
<xs:element name="asset" type="asset_type" minOccurs="0">
2214
The camera element may contain an asset element.
2218
<xs:element name="optics">
2221
Optics represents the apparatus on a camera that projects the image onto the image sensor.
2226
<xs:element name="technique_common">
2229
The technique_common element specifies the optics information for the common profile
2230
which all COLLADA implementations need to support.
2235
<xs:element name="orthographic">
2238
The orthographic element describes the field of view of an orthographic camera.
2245
<xs:element name="xmag" type="targetable_float_type">
2248
The xmag element contains a floating point number describing the horizontal
2249
magnification of the view.
2253
<xs:choice minOccurs="0">
2254
<xs:element name="ymag" type="targetable_float_type">
2257
The ymag element contains a floating point number describing the vertical
2258
magnification of the view. It can also have a sid.
2262
<xs:element name="aspect_ratio" type="targetable_float_type">
2265
The aspect_ratio element contains a floating point number describing the aspect ratio of
2266
the field of view. If the aspect_ratio element is not present the aspect ratio is to be
2267
calculated from the xmag or ymag elements and the current viewport.
2274
<xs:element name="ymag" type="targetable_float_type"/>
2275
<xs:element name="aspect_ratio" type="targetable_float_type" minOccurs="0"/>
2278
<xs:element name="znear" type="targetable_float_type">
2281
The znear element contains a floating point number that describes the distance to the near
2282
clipping plane. The znear element must occur exactly once.
2286
<xs:element name="zfar" type="targetable_float_type">
2289
The zfar element contains a floating point number that describes the distance to the far
2290
clipping plane. The zfar element must occur exactly once.
2297
<xs:element name="perspective">
2300
The perspective element describes the optics of a perspective camera.
2307
<xs:element name="xfov" type="targetable_float_type">
2310
The xfov element contains a floating point number describing the horizontal field of view in degrees.
2314
<xs:choice minOccurs="0">
2315
<xs:element name="yfov" type="targetable_float_type">
2318
The yfov element contains a floating point number describing the verticle field of view in degrees.
2322
<xs:element name="aspect_ratio" type="targetable_float_type">
2325
The aspect_ratio element contains a floating point number describing the aspect ratio of the field
2326
of view. If the aspect_ratio element is not present the aspect ratio is to be calculated from the
2327
xfov or yfov elements and the current viewport.
2334
<xs:element name="yfov" type="targetable_float_type"/>
2335
<xs:element name="aspect_ratio" type="targetable_float_type" minOccurs="0"/>
2338
<xs:element name="znear" type="targetable_float_type">
2341
The znear element contains a floating point number that describes the distance to the near
2342
clipping plane. The znear element must occur exactly once.
2346
<xs:element name="zfar" type="targetable_float_type">
2349
The zfar element contains a floating point number that describes the distance to the far
2350
clipping plane. The zfar element must occur exactly once.
2360
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
2363
This element may contain any number of non-common profile techniques.
2367
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2370
The extra element may appear any number of times.
2377
<xs:element name="imager" minOccurs="0">
2380
Imagers represent the image sensor of a camera (for example film or CCD).
2385
<xs:element name="technique" type="technique_type" maxOccurs="unbounded">
2388
This element may contain any number of non-common profile techniques.
2389
There is no common technique for imager.
2393
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2396
The extra element may appear any number of times.
2403
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2406
The extra element may appear any number of times.
2411
<xs:attribute name="id" type="xs:ID">
2414
The id attribute is a text string containing the unique identifier of this element. This value
2415
must be unique within the instance document. Optional attribute.
2419
<xs:attribute name="name" type="xs:token">
2422
The name attribute is the text string name of this element. Optional attribute.
2427
<xs:complexType name="light_type">
2430
The light element declares a light source that illuminates the scene.
2431
Light sources have many different properties and radiate light in many different patterns and
2436
<xs:element name="asset" type="asset_type" minOccurs="0">
2439
The light element may contain an asset element.
2443
<xs:element name="technique_common">
2446
The technique_common element specifies the light information for the common profile which all
2447
COLLADA implementations need to support.
2452
<xs:element name="ambient">
2455
The ambient element declares the parameters required to describe an ambient light source.
2456
An ambient light is one that lights everything evenly, regardless of location or orientation.
2461
<xs:element name="color" type="targetable_float3_type">
2464
The color element contains three floating point numbers specifying the color of the light.
2465
The color element must occur exactly once.
2472
<xs:element name="directional">
2475
The directional element declares the parameters required to describe a directional light source.
2476
A directional light is one that lights everything from the same direction, regardless of location.
2477
The light's default direction vector in local coordinates is [0,0,-1], pointing down the -Z axis.
2478
The actual direction of the light is defined by the transform of the node where the light is
2484
<xs:element name="color" type="targetable_float3_type">
2487
The color element contains three floating point numbers specifying the color of the light.
2488
The color element must occur exactly once.
2495
<xs:element name="point">
2498
The point element declares the parameters required to describe a point light source. A point light
2499
source radiates light in all directions from a known location in space. The intensity of a point
2500
light source is attenuated as the distance to the light source increases. The position of the light
2501
is defined by the transform of the node in which it is instantiated.
2506
<xs:element name="color" type="targetable_float3_type">
2509
The color element contains three floating point numbers specifying the color of the light.
2510
The color element must occur exactly once.
2514
<xs:element name="constant_attenuation" type="targetable_float_type" default="1.0" minOccurs="0">
2517
The constant_attenuation is used to calculate the total attenuation of this light given a distance.
2518
The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation.
2522
<xs:element name="linear_attenuation" type="targetable_float_type" default="0.0" minOccurs="0">
2525
The linear_attenuation is used to calculate the total attenuation of this light given a distance.
2526
The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation.
2530
<xs:element name="quadratic_attenuation" type="targetable_float_type" default="0.0" minOccurs="0">
2533
The quadratic_attenuation is used to calculate the total attenuation of this light given a distance.
2534
The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation.
2541
<xs:element name="spot">
2544
The spot element declares the parameters required to describe a spot light source. A spot light
2545
source radiates light in one direction from a known location in space. The light radiates from
2546
the spot light source in a cone shape. The intensity of the light is attenuated as the radiation
2547
angle increases away from the direction of the light source. The intensity of a spot light source
2548
is also attenuated as the distance to the light source increases. The position of the light is
2549
defined by the transform of the node in which it is instantiated. The light's default direction
2550
vector in local coordinates is [0,0,-1], pointing down the -Z axis. The actual direction of the
2551
light is defined by the transform of the node where the light is instantiated.
2556
<xs:element name="color" type="targetable_float3_type">
2559
The color element contains three floating point numbers specifying the color of the light.
2560
The color element must occur exactly once.
2564
<xs:element name="constant_attenuation" type="targetable_float_type" default="1.0" minOccurs="0">
2567
The constant_attenuation is used to calculate the total attenuation of this light given a distance.
2568
The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation.
2572
<xs:element name="linear_attenuation" type="targetable_float_type" default="0.0" minOccurs="0">
2575
The linear_attenuation is used to calculate the total attenuation of this light given a distance.
2576
The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation.
2580
<xs:element name="quadratic_attenuation" type="targetable_float_type" default="0.0" minOccurs="0">
2583
The quadratic_attenuation is used to calculate the total attenuation of this light given a distance.
2584
The equation used is A = constant_attenuation + Dist*linear_attenuation + Dist^2*quadratic_attenuation.
2588
<xs:element name="falloff_angle" type="targetable_float_type" default="180.0" minOccurs="0">
2591
The falloff_angle is used to specify the amount of attenuation based on the direction of the light.
2595
<xs:element name="falloff_exponent" type="targetable_float_type" default="0.0" minOccurs="0">
2598
The falloff_exponent is used to specify the amount of attenuation based on the direction of the light.
2608
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
2611
This element may contain any number of non-common profile techniques.
2615
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2618
The extra element may appear any number of times.
2623
<xs:attribute name="id" type="xs:ID">
2626
The id attribute is a text string containing the unique identifier of this element.
2627
This value must be unique within the instance document. Optional attribute.
2631
<xs:attribute name="name" type="xs:token">
2634
The name attribute is the text string name of this element. Optional attribute.
2639
<xs:complexType name="instance_with_extra_type">
2642
The instance_with_extra_type element is used for all generic instance elements. A generic instance element
2643
is one which does not have any specific child elements declared.
2647
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2650
The extra element may occur any number of times.
2655
<xs:attribute name="url" type="xs:anyURI" use="required">
2658
The url attribute refers to resource to instantiate. This may refer to a local resource using a
2659
relative URL fragment identifier that begins with the "#" character. The url attribute may refer
2660
to an external resource using an absolute or relative URL.
2664
<xs:attribute name="sid" type="sid_type">
2667
The sid attribute is a text string value containing the sub-identifier of this element. This
2668
value must be unique within the scope of the parent element. Optional attribute.
2672
<xs:attribute name="name" type="xs:token">
2675
The name attribute is the text string name of this element. Optional attribute.
2680
<xs:complexType name="instance_image_type">
2682
<xs:restriction base="instance_with_extra_type"/>
2683
</xs:complexContent>
2685
<xs:complexType name="instance_camera_type">
2688
The instance_camera element declares the instantiation of a COLLADA camera resource.
2692
<xs:restriction base="instance_with_extra_type"/>
2693
</xs:complexContent>
2695
<xs:complexType name="instance_force_field_type">
2698
The instance_force_field element declares the instantiation of a COLLADA force_field resource.
2702
<xs:restriction base="instance_with_extra_type"/>
2703
</xs:complexContent>
2705
<xs:complexType name="instance_light_type">
2708
The instance_light element declares the instantiation of a COLLADA light resource.
2712
<xs:restriction base="instance_with_extra_type"/>
2713
</xs:complexContent>
2715
<xs:complexType name="instance_material_type">
2718
The instance_material element declares the instantiation of a COLLADA material resource.
2722
<xs:element name="bind" minOccurs="0" maxOccurs="unbounded">
2725
The bind element binds values to effect parameters upon instantiation.
2729
<xs:attribute name="semantic" type="xs:NCName" use="required">
2732
The semantic attribute specifies which effect parameter to bind.
2736
<xs:attribute name="target" type="xs:token" use="required">
2739
The target attribute specifies the location of the value to bind to the specified semantic.
2740
This text string is a path-name following a simple syntax described in the "Addressing Syntax"
2747
<xs:element name="bind_vertex_input" minOccurs="0" maxOccurs="unbounded">
2750
The bind_vertex_input element binds vertex inputs to effect parameters upon instantiation.
2754
<xs:attribute name="semantic" type="xs:NCName" use="required">
2757
The semantic attribute specifies which effect parameter to bind.
2761
<xs:attribute name="input_semantic" type="xs:NCName" use="required">
2764
The input_semantic attribute specifies which input semantic to bind.
2768
<xs:attribute name="input_set" type="uint_type">
2771
The input_set attribute specifies which input set to bind.
2777
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2780
The extra element may appear any number of times.
2785
<xs:attribute name="symbol" type="xs:NCName" use="required">
2788
The symbol attribute specifies which symbol defined from within the geometry this material binds to.
2792
<xs:attribute name="target" type="xs:anyURI" use="required">
2795
The target attribute specifies the URL of the location of the object to instantiate.
2799
<xs:attribute name="sid" type="sid_type">
2802
The sid attribute is a text string value containing the sub-identifier of this element. This
2803
value must be unique within the scope of the parent element. Optional attribute.
2807
<xs:attribute name="name" type="xs:token">
2810
The name attribute is the text string name of this element. Optional attribute.
2815
<xs:complexType name="bind_material_type">
2818
Bind a specific material to a piece of geometry, binding varying and uniform parameters at the
2823
<xs:element name="param" type="param_type" minOccurs="0" maxOccurs="unbounded">
2826
The bind_material element may contain any number of param elements.
2830
<xs:element name="technique_common">
2833
The technique_common element specifies the bind_material information for the common
2834
profile which all COLLADA implementations need to support.
2839
<xs:element name="instance_material" type="instance_material_type" maxOccurs="unbounded">
2842
The instance_material element specifies the information needed to bind a geometry
2843
to a material. This element must appear at least once.
2850
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
2853
This element may contain any number of non-common profile techniques.
2857
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2860
The extra element may appear any number of times.
2866
<xs:complexType name="instance_controller_type">
2869
The instance_controller element declares the instantiation of a COLLADA controller resource.
2873
<xs:element name="skeleton" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded">
2876
The skeleton element is used to indicate where a skin controller is to start to search for
2877
the joint nodes it needs. This element is meaningless for morph controllers.
2881
<xs:element name="bind_material" type="bind_material_type" minOccurs="0">
2884
Bind a specific material to a piece of geometry, binding varying and uniform parameters at the
2889
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2892
The extra element may appear any number of times.
2897
<xs:attribute name="url" type="xs:anyURI" use="required">
2900
The url attribute refers to resource. This may refer to a local resource using a relative
2901
URL fragment identifier that begins with the "#" character. The url attribute may refer to an
2902
external resource using an absolute or relative URL.
2906
<xs:attribute name="sid" type="sid_type">
2909
The sid attribute is a text string value containing the sub-identifier of this element. This
2910
value must be unique within the scope of the parent element. Optional attribute.
2914
<xs:attribute name="name" type="xs:token">
2917
The name attribute is the text string name of this element. Optional attribute.
2922
<xs:complexType name="instance_geometry_type">
2925
The instance_geometry element declares the instantiation of a COLLADA geometry resource.
2929
<xs:element name="bind_material" type="bind_material_type" minOccurs="0">
2932
Bind a specific material to a piece of geometry, binding varying and uniform parameters at the
2937
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
2940
The extra element may appear any number of times.
2945
<xs:attribute name="url" type="xs:anyURI" use="required">
2948
The url attribute refers to resource. This may refer to a local resource using a relative URL
2949
fragment identifier that begins with the "#" character. The url attribute may refer to an external
2950
resource using an absolute or relative URL.
2954
<xs:attribute name="sid" type="sid_type">
2957
The sid attribute is a text string value containing the sub-identifier of this element. This
2958
value must be unique within the scope of the parent element. Optional attribute.
2962
<xs:attribute name="name" type="xs:token">
2965
The name attribute is the text string name of this element. Optional attribute.
2970
<xs:complexType name="instance_node_type">
2973
The instance_node element declares the instantiation of a COLLADA node resource.
2977
<xs:extension base="instance_with_extra_type">
2978
<xs:attribute name="proxy" type="xs:anyURI"/>
2980
</xs:complexContent>
2982
<xs:complexType name="instance_physics_material_type">
2985
The instance_physics_material element declares the instantiation of a COLLADA physics_material
2990
<xs:restriction base="instance_with_extra_type"/>
2991
</xs:complexContent>
2993
<xs:complexType name="instance_rigid_constraint_type">
2996
This element allows instancing a rigid_constraint within an instance_physics_model.
3000
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
3003
The extra element may appear any number of times.
3008
<xs:attribute name="constraint" type="xs:NCName" use="required">
3011
The constraint attribute indicates which rigid_constraing to instantiate. Required attribute.
3015
<xs:attribute name="sid" type="sid_type">
3018
The sid attribute is a text string value containing the sub-identifier of this element. This
3019
value must be unique within the scope of the parent element. Optional attribute.
3023
<xs:attribute name="name" type="xs:token">
3026
The name attribute is the text string name of this element. Optional attribute.
3031
<xs:complexType name="library_cameras_type">
3034
The library_cameras element declares a module of camera elements.
3038
<xs:element name="asset" type="asset_type" minOccurs="0">
3041
The library_cameras element may contain an asset element.
3045
<xs:element name="camera" type="camera_type" maxOccurs="unbounded">
3048
There must be at least one camera element.
3052
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
3055
The extra element may appear any number of times.
3060
<xs:attribute name="id" type="xs:ID">
3063
The id attribute is a text string containing the unique identifier of this element.
3064
This value must be unique within the instance document. Optional attribute.
3068
<xs:attribute name="name" type="xs:token">
3071
The name attribute is the text string name of this element. Optional attribute.
3076
<xs:complexType name="library_images_type">
3079
The library_images element declares a module of image elements.
3083
<xs:element name="asset" type="asset_type" minOccurs="0">
3086
The library_images element may contain an asset element.
3090
<xs:element name="image" type="image_type" maxOccurs="unbounded">
3093
There must be at least one image element.
3097
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
3100
The extra element may appear any number of times.
3105
<xs:attribute name="id" type="xs:ID">
3108
The id attribute is a text string containing the unique identifier of this element.
3109
This value must be unique within the instance document. Optional attribute.
3113
<xs:attribute name="name" type="xs:token">
3116
The name attribute is the text string name of this element. Optional attribute.
3121
<xs:complexType name="library_lights_type">
3124
The library_lights element declares a module of light elements.
3128
<xs:element name="asset" type="asset_type" minOccurs="0">
3131
The library_lights element may contain an asset element.
3135
<xs:element name="light" type="light_type" maxOccurs="unbounded">
3138
There must be at least one light element.
3142
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
3145
The extra element may appear any number of times.
3150
<xs:attribute name="id" type="xs:ID">
3153
The id attribute is a text string containing the unique identifier of this element.
3154
This value must be unique within the instance document. Optional attribute.
3158
<xs:attribute name="name" type="xs:token">
3161
The name attribute is the text string name of this element. Optional attribute.
3166
<xs:simpleType name="fx_color_type">
3167
<xs:restriction base="float4_type"/>
3169
<xs:simpleType name="fx_opaque_enum">
3170
<xs:restriction base="xs:string">
3171
<xs:enumeration value="A_ONE">
3174
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.
3178
<xs:enumeration value="A_ZERO">
3181
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.
3185
<xs:enumeration value="RGB_ONE">
3188
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.
3192
<xs:enumeration value="RGB_ZERO">
3195
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.
3201
<xs:simpleType name="fx_sampler_wrap_enum">
3202
<xs:restriction base="xs:NMTOKEN">
3203
<xs:enumeration value="WRAP">
3205
<xs:documentation>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</xs:documentation>
3208
<xs:enumeration value="CLAMP">
3210
<xs:documentation>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</xs:documentation>
3213
<xs:enumeration value="BORDER">
3215
<xs:documentation>Much like clamp except texture coordinates outside the range [0.0, 1.0] are set to the border color</xs:documentation>
3218
<xs:enumeration value="MIRROR">
3220
<xs:documentation>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.
3224
<xs:enumeration value="MIRROR_ONCE">
3226
<xs:documentation>Takes the absolute value of the texture coordinate (thus, mirroring around 0), and then clamps to the maximum value</xs:documentation>
3231
<xs:simpleType name="fx_sampler_min_filter_enum">
3232
<xs:restriction base="xs:NMTOKEN">
3233
<xs:enumeration value="NEAREST"/>
3234
<xs:enumeration value="LINEAR"/>
3235
<xs:enumeration value="ANISOTROPIC"/>
3238
<xs:simpleType name="fx_sampler_mag_filter_enum">
3239
<xs:restriction base="xs:NMTOKEN">
3240
<xs:enumeration value="NEAREST"/>
3241
<xs:enumeration value="LINEAR"/>
3244
<xs:simpleType name="fx_sampler_mip_filter_enum">
3245
<xs:restriction base="xs:NMTOKEN">
3246
<xs:enumeration value="NONE"/>
3247
<xs:enumeration value="NEAREST"/>
3248
<xs:enumeration value="LINEAR"/>
3251
<xs:group name="fx_sampler_states_group">
3253
<xs:element name="wrap_s" type="fx_sampler_wrap_enum" default="WRAP" minOccurs="0"/>
3254
<xs:element name="wrap_t" type="fx_sampler_wrap_enum" default="WRAP" minOccurs="0"/>
3255
<xs:element name="wrap_p" type="fx_sampler_wrap_enum" default="WRAP" minOccurs="0"/>
3256
<xs:element name="minfilter" type="fx_sampler_min_filter_enum" default="LINEAR" minOccurs="0">
3258
<xs:documentation>minification</xs:documentation>
3261
<xs:element name="magfilter" type="fx_sampler_mag_filter_enum" default="LINEAR" minOccurs="0">
3263
<xs:documentation>magnification</xs:documentation>
3266
<xs:element name="mipfilter" type="fx_sampler_mip_filter_enum" default="LINEAR" minOccurs="0">
3268
<xs:documentation>filtering across mips.
3269
NONE = no minification
3272
ANISOTROPIC = Compensates for distortion caused by the difference in angle between the polygon and the plane of the screen. Relies on max_anisotropy</xs:documentation>
3275
<xs:element name="border_color" type="fx_color_type" minOccurs="0"/>
3276
<xs:element name="mip_max_level" type="xs:unsignedByte" default="0" minOccurs="0">
3278
<xs:documentation>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</xs:documentation>
3281
<xs:element name="mip_min_level" type="xs:unsignedByte" default="0" minOccurs="0">
3283
<xs:documentation>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</xs:documentation>
3286
<xs:element name="mip_bias" type="xs:float" default="0.0" minOccurs="0">
3288
<xs:documentation>Mipmap level-of-detail bias. The default value is zero</xs:documentation>
3291
<xs:element name="max_anisotropy" type="xs:unsignedInt" default="1" minOccurs="0">
3293
<xs:documentation>number of samples that may be used durring anisotropic filtering</xs:documentation>
3296
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
3299
<xs:group name="fx_setparam_group">
3302
A group that specifies the allowable types for effect scoped parameters.
3306
<xs:element name="bool" type="xs:boolean"/>
3307
<xs:element name="bool2" type="bool2_type"/>
3308
<xs:element name="bool3" type="bool3_type"/>
3309
<xs:element name="bool4" type="bool4_type"/>
3310
<xs:element name="int" type="int_type"/>
3311
<xs:element name="int2" type="int2_type"/>
3312
<xs:element name="int3" type="int3_type"/>
3313
<xs:element name="int4" type="int4_type"/>
3314
<xs:element name="float" type="float_type"/>
3315
<xs:element name="float2" type="float2_type"/>
3316
<xs:element name="float3" type="float3_type"/>
3317
<xs:element name="float4" type="float4_type"/>
3318
<xs:element name="float2x1" type="float2_type"/>
3319
<xs:element name="float2x2" type="float2x2_type"/>
3320
<xs:element name="float2x3" type="float2x3_type"/>
3321
<xs:element name="float2x4" type="float2x4_type"/>
3322
<xs:element name="float3x1" type="float3_type"/>
3323
<xs:element name="float3x2" type="float3x2_type"/>
3324
<xs:element name="float3x3" type="float3x3_type"/>
3325
<xs:element name="float3x4" type="float3x4_type"/>
3326
<xs:element name="float4x1" type="float4_type"/>
3327
<xs:element name="float4x2" type="float4x2_type"/>
3328
<xs:element name="float4x3" type="float4x3_type"/>
3329
<xs:element name="float4x4" type="float4x4_type"/>
3330
<xs:element name="enum" type="xs:string"/>
3331
<xs:element name="sampler_image" type="instance_image_type"/>
3332
<xs:element name="sampler_states">
3334
<xs:group ref="fx_sampler_states_group"/>
3339
<xs:complexType name="instance_effect_type">
3342
The instance_effect element declares the instantiation of a COLLADA effect resource.
3346
<xs:element name="technique_hint" minOccurs="0" maxOccurs="unbounded">
3349
Add a hint for a platform of which technique to use in this effect.
3353
<xs:attribute name="platform" type="xs:NCName" use="optional">
3356
A platform defines a string that specifies which platform this is hint is aimed for.
3360
<xs:attribute name="profile" type="xs:NCName" use="optional">
3363
A profile defines a string that specifies which API profile this is hint is aimed for.
3367
<xs:attribute name="ref" type="xs:NCName" use="required">
3370
A reference to the technique to use for the specified platform.
3376
<xs:element name="setparam" minOccurs="0" maxOccurs="unbounded">
3379
Assigns a new value to a previously defined parameter
3384
<xs:group ref="fx_setparam_group"/>
3386
<xs:attribute name="ref" type="xs:token" use="required"/>
3389
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
3392
The extra element may appear any number of times.
3397
<xs:attribute name="url" type="xs:anyURI" use="required">
3400
The url attribute refers to resource. This may refer to a local resource using a relative URL
3401
fragment identifier that begins with the "#" character. The url attribute may refer to an external
3402
resource using an absolute or relative URL.
3406
<xs:attribute name="sid" type="sid_type">
3409
The sid attribute is a text string value containing the sub-identifier of this element. This
3410
value must be unique within the scope of the parent element. Optional attribute.
3414
<xs:attribute name="name" type="xs:token">
3417
The name attribute is the text string name of this element. Optional attribute.
3422
<xs:complexType name="material_type">
3425
Materials describe the visual appearance of a geometric object.
3429
<xs:element name="asset" type="asset_type" minOccurs="0">
3432
The material element may contain an asset element.
3436
<xs:element name="instance_effect" type="instance_effect_type">
3439
The material must instance an effect.
3443
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
3446
The extra element may appear any number of times.
3451
<xs:attribute name="id" type="xs:ID">
3454
The id attribute is a text string containing the unique identifier of this element. This value
3455
must be unique within the instance document. Optional attribute.
3459
<xs:attribute name="name" type="xs:token">
3462
The name attribute is the text string name of this element. Optional attribute.
3467
<xs:complexType name="library_materials_type">
3470
The library_materials element declares a module of material elements.
3474
<xs:element name="asset" type="asset_type" minOccurs="0">
3477
The library_materials element may contain an asset element.
3481
<xs:element name="material" type="material_type" maxOccurs="unbounded">
3484
There must be at least one material element.
3488
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
3491
The extra element may appear any number of times.
3496
<xs:attribute name="id" type="xs:ID">
3499
The id attribute is a text string containing the unique identifier of this element.
3500
This value must be unique within the instance document. Optional attribute.
3504
<xs:attribute name="name" type="xs:token">
3507
The name attribute is the text string name of this element. Optional attribute.
3512
<xs:complexType name="fx_sampler_type">
3514
<xs:documentation>Sampling state that can be sharable between samplers because there is often heavy re-use</xs:documentation>
3517
<xs:element name="instance_image" type="instance_image_type" minOccurs="0"/>
3518
<xs:group ref="fx_sampler_states_group"/>
3521
<xs:complexType name="fx_sampler1D_type">
3524
A one-dimensional texture sampler.
3528
<xs:restriction base="fx_sampler_type"/>
3529
</xs:complexContent>
3531
<xs:complexType name="fx_sampler2D_type">
3534
A two-dimensional texture sampler.
3538
<xs:restriction base="fx_sampler_type"/>
3539
</xs:complexContent>
3541
<xs:complexType name="fx_sampler3D_type">
3544
A three-dimensional texture sampler.
3548
<xs:restriction base="fx_sampler_type"/>
3549
</xs:complexContent>
3551
<xs:complexType name="fx_samplerCUBE_type">
3554
A texture sampler for cube maps.
3558
<xs:restriction base="fx_sampler_type"/>
3559
</xs:complexContent>
3561
<xs:complexType name="fx_samplerRECT_type">
3564
A two-dimensional texture sampler.
3568
<xs:restriction base="fx_sampler_type"/>
3569
</xs:complexContent>
3571
<xs:complexType name="fx_samplerDEPTH_type">
3574
A texture sampler for depth maps.
3578
<xs:restriction base="fx_sampler_type"/>
3579
</xs:complexContent>
3581
<xs:group name="fx_newparam_group">
3584
A group that specifies the allowable types for effect scoped parameters.
3588
<xs:element name="bool" type="xs:boolean"/>
3589
<xs:element name="bool2" type="bool2_type"/>
3590
<xs:element name="bool3" type="bool3_type"/>
3591
<xs:element name="bool4" type="bool4_type"/>
3592
<xs:element name="int" type="int_type"/>
3593
<xs:element name="int2" type="int2_type"/>
3594
<xs:element name="int3" type="int3_type"/>
3595
<xs:element name="int4" type="int4_type"/>
3596
<xs:element name="float" type="float_type"/>
3597
<xs:element name="float2" type="float2_type"/>
3598
<xs:element name="float3" type="float3_type"/>
3599
<xs:element name="float4" type="float4_type"/>
3600
<xs:element name="float2x1" type="float2_type"/>
3601
<xs:element name="float2x2" type="float2x2_type"/>
3602
<xs:element name="float2x3" type="float2x3_type"/>
3603
<xs:element name="float2x4" type="float2x4_type"/>
3604
<xs:element name="float3x1" type="float3_type"/>
3605
<xs:element name="float3x2" type="float3x2_type"/>
3606
<xs:element name="float3x3" type="float3x3_type"/>
3607
<xs:element name="float3x4" type="float3x4_type"/>
3608
<xs:element name="float4x1" type="float4_type"/>
3609
<xs:element name="float4x2" type="float4x2_type"/>
3610
<xs:element name="float4x3" type="float4x3_type"/>
3611
<xs:element name="float4x4" type="float4x4_type"/>
3612
<xs:element name="sampler1D" type="fx_sampler1D_type"/>
3613
<xs:element name="sampler2D" type="fx_sampler2D_type"/>
3614
<xs:element name="sampler3D" type="fx_sampler3D_type"/>
3615
<xs:element name="samplerCUBE" type="fx_samplerCUBE_type"/>
3616
<xs:element name="samplerRECT" type="fx_samplerRECT_type"/>
3617
<xs:element name="samplerDEPTH" type="fx_samplerDEPTH_type"/>
3618
<xs:element name="enum" type="xs:string"/>
3621
<xs:group name="fx_annotate_group">
3624
A group that specifies the allowable types for an annotation.
3628
<xs:element name="bool" type="xs:boolean"/>
3629
<xs:element name="bool2" type="bool2_type"/>
3630
<xs:element name="bool3" type="bool3_type"/>
3631
<xs:element name="bool4" type="bool4_type"/>
3632
<xs:element name="int" type="int_type"/>
3633
<xs:element name="int2" type="int2_type"/>
3634
<xs:element name="int3" type="int3_type"/>
3635
<xs:element name="int4" type="int4_type"/>
3636
<xs:element name="float" type="float_type"/>
3637
<xs:element name="float2" type="float2_type"/>
3638
<xs:element name="float3" type="float3_type"/>
3639
<xs:element name="float4" type="float4_type"/>
3640
<xs:element name="float2x2" type="float2x2_type"/>
3641
<xs:element name="float3x3" type="float3x3_type"/>
3642
<xs:element name="float4x4" type="float4x4_type"/>
3643
<xs:element name="string" type="xs:string"/>
3646
<xs:simpleType name="fx_modifier_enum">
3647
<xs:restriction base="xs:NMTOKEN">
3648
<xs:enumeration value="CONST"/>
3649
<xs:enumeration value="UNIFORM"/>
3650
<xs:enumeration value="VARYING"/>
3651
<xs:enumeration value="STATIC"/>
3652
<xs:enumeration value="VOLATILE"/>
3653
<xs:enumeration value="EXTERN"/>
3654
<xs:enumeration value="SHARED"/>
3657
<xs:complexType name="fx_rendertarget_type">
3659
<xs:element name="param">
3661
<xs:attribute name="ref" type="xs:token" use="required"/>
3664
<xs:element name="instance_image" type="instance_image_type"/>
3666
<xs:attribute name="index" type="xs:nonNegativeInteger" use="optional" default="0">
3668
<xs:documentation>array index</xs:documentation>
3671
<xs:attribute name="mip" type="xs:nonNegativeInteger" use="optional" default="0">
3673
<xs:documentation>mip level</xs:documentation>
3676
<xs:attribute name="face" type="image_face_enum" use="optional" default="POSITIVE_X">
3678
<xs:documentation>cube face</xs:documentation>
3681
<xs:attribute name="slice" type="xs:nonNegativeInteger" use="optional" default="0">
3683
<xs:documentation>volume depth</xs:documentation>
3687
<xs:complexType name="fx_colortarget_type">
3689
<xs:extension base="fx_rendertarget_type"/>
3690
</xs:complexContent>
3692
<xs:complexType name="fx_depthtarget_type">
3694
<xs:extension base="fx_rendertarget_type"/>
3695
</xs:complexContent>
3697
<xs:complexType name="fx_stenciltarget_type">
3699
<xs:extension base="fx_rendertarget_type"/>
3700
</xs:complexContent>
3702
<xs:complexType name="fx_clearcolor_type">
3704
<xs:extension base="fx_color_type">
3705
<xs:attribute name="index" type="xs:nonNegativeInteger" use="optional" default="0"/>
3709
<xs:complexType name="fx_cleardepth_type">
3711
<xs:extension base="float_type">
3712
<xs:attribute name="index" type="xs:nonNegativeInteger" use="optional" default="0"/>
3716
<xs:complexType name="fx_clearstencil_type">
3718
<xs:extension base="xs:byte">
3719
<xs:attribute name="index" type="xs:nonNegativeInteger" use="optional" default="0"/>
3723
<xs:simpleType name="fx_draw_type">
3726
? GEOMETRY: [default] The geometry associated with this instance_geometry or nstance_material.
3727
? SCENE_GEOMETRY: Draw the entire scene's geometry but with this effect, not the effects or
3728
materials already associated with the geometry. This is for techniques such as shadow-buffer
3729
generation, where you might be interested only in extracting the Z value from the light. This is
3730
without regard to ordering on the assumption that ZBuffer handles order.
3731
? SCENE_IMAGE: Draw the entire scene naturally into the render targets. Hense producing an image
3732
of the scene. When used more then once, the later uses must include what has been rendered so far
3733
to the backbuffer since the first render. This is for effects that need an accurate image of the scene
3734
to work on for effects such as postprocessing blurs.
3735
? FULL_SCREEN_QUAD: Positions are 0,0 to 1,1 and the UVs match.
3738
<xs:restriction base="xs:string"/>
3740
<xs:simpleType name="fx_pipeline_stage_enum">
3741
<xs:restriction base="xs:string">
3742
<xs:enumeration value="TESSELLATION"/>
3743
<xs:enumeration value="VERTEX"/>
3744
<xs:enumeration value="GEOMETRY"/>
3745
<xs:enumeration value="FRAGMENT"/>
3748
<xs:complexType name="fx_annotate_type">
3750
<xs:group ref="fx_annotate_group"/>
3752
<xs:attribute name="name" type="xs:token" use="required"/>
3754
<xs:complexType name="fx_newparam_type">
3757
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.
3761
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded">
3764
The annotate element allows you to specify an annotation for this new param.
3768
<xs:element name="semantic" type="xs:NCName" minOccurs="0">
3771
The semantic element allows you to specify a semantic for this new param.
3775
<xs:element name="modifier" type="fx_modifier_enum" minOccurs="0">
3778
The modifier element allows you to specify a modifier for this new param.
3782
<xs:group ref="fx_newparam_group"/>
3784
<xs:attribute name="sid" type="sid_type" use="required">
3787
The sid attribute is a text string value containing the sub-identifier of this element.
3788
This value must be unique within the scope of the parent element. Optional attribute.
3793
<xs:complexType name="fx_include_type">
3796
The include element is used to import source code or precompiled binary shaders into the FX Runtime by referencing an external resource.
3799
<xs:attribute name="sid" type="sid_type" use="required">
3802
The sid attribute is a text string value containing the sub-identifier of this element.
3803
This value must be unique within the scope of the parent element. Optional attribute.
3807
<xs:attribute name="url" type="xs:anyURI" use="required">
3810
The url attribute refers to resource. This may refer to a local resource using a relative URL
3811
fragment identifier that begins with the "#" character. The url attribute may refer to an external
3812
resource using an absolute or relative URL.
3817
<xs:complexType name="fx_code_type">
3820
The fx_code_common type allows you to specify an inline block of source code.
3824
<xs:extension base="xs:string">
3825
<xs:attribute name="sid" type="sid_type" use="optional">
3828
The sid attribute is a text string value containing the sub-identifier of this element.
3829
This value must be unique within the scope of the parent element. Optional attribute.
3836
<xs:complexType name="fx_sources_type">
3838
<xs:choice minOccurs="0" maxOccurs="unbounded">
3839
<xs:element name="inline" type="xs:string">
3841
<xs:documentation>this is allows you to include some code right here....like a #define for an uber shader that is imported</xs:documentation>
3844
<xs:element name="import">
3846
<xs:documentation>Ref attribute identifies the sid of a code or include element</xs:documentation>
3849
<xs:attribute name="ref" type="xs:token" use="required"/>
3855
<xs:complexType name="fx_target_type">
3857
<xs:documentation>identify the platform_sku and compiler options to build a binary</xs:documentation>
3860
<xs:element name="binary" minOccurs="0">
3863
<xs:element name="ref" type="xs:anyURI"/>
3864
<xs:element name="hex">
3866
<xs:documentation>contains a sequence of hexadecimal encoded binary</xs:documentation>
3870
<xs:extension base="list_of_hex_binary_type">
3871
<xs:attribute name="format" type="xs:token">
3873
<xs:documentation>binary format which may include target device identificatrion</xs:documentation>
3884
<xs:attribute name="platform" type="xs:string" use="required">
3886
<xs:documentation>Name of sub-platform. May be identical to the platform_series</xs:documentation>
3889
<xs:attribute name="target" type="xs:string" use="optional">
3891
<xs:documentation>compiler or linker results symbol. Ex arbvp1, arbfp1, glslv, glslf, hlslv, hlslf, vs_3_0, ps_3_0</xs:documentation>
3894
<xs:attribute name="options" type="xs:string" use="optional">
3896
<xs:documentation>compiler or linker options</xs:documentation>
3900
<xs:complexType name="fx_common_float_or_param_type">
3902
<xs:element name="float">
3905
<xs:extension base="float_type">
3906
<xs:attribute name="sid" type="sid_type"/>
3911
<xs:element name="param">
3913
<xs:attribute name="ref" type="xs:NCName" use="required"/>
3918
<xs:complexType name="fx_common_color_or_texture_type">
3920
<xs:element name="color">
3923
<xs:extension base="fx_color_type">
3924
<xs:attribute name="sid" type="sid_type"/>
3929
<xs:element name="param">
3931
<xs:attribute name="ref" type="xs:NCName" use="required"/>
3934
<xs:element name="texture">
3937
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
3939
<xs:attribute name="texture" type="xs:NCName" use="required"/>
3940
<xs:attribute name="texcoord" type="xs:NCName" use="required"/>
3945
<xs:complexType name="fx_common_transparent_type">
3947
<xs:extension base="fx_common_color_or_texture_type">
3948
<xs:attribute name="opaque" type="fx_opaque_enum" default="A_ONE"/>
3950
</xs:complexContent>
3952
<xs:complexType name="fx_common_newparam_type">
3954
<xs:element name="semantic" type="xs:NCName" minOccurs="0"/>
3956
<xs:element name="float" type="float_type"/>
3957
<xs:element name="float2" type="float2_type"/>
3958
<xs:element name="float3" type="float3_type"/>
3959
<xs:element name="float4" type="float4_type"/>
3960
<xs:element name="sampler2D" type="fx_sampler2D_type"/>
3963
<xs:attribute name="sid" type="sid_type" use="required">
3966
The sid attribute is a text string value containing the sub-identifier of this element.
3967
This value must be unique within the scope of the parent element. Optional attribute.
3972
<xs:complexType name="profile_common_type">
3975
Opens a block of COMMON platform-specific data types and technique declarations.
3979
<xs:element name="asset" type="asset_type" minOccurs="0"/>
3980
<xs:element name="newparam" type="fx_common_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
3981
<xs:element name="technique">
3984
Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method.
3989
<xs:element name="asset" type="asset_type" minOccurs="0">
3992
The technique element may contain an asset element.
3997
<xs:element name="constant">
4000
<xs:element name="emission" type="fx_common_color_or_texture_type" minOccurs="0"/>
4001
<xs:element name="reflective" type="fx_common_color_or_texture_type" minOccurs="0"/>
4002
<xs:element name="reflectivity" type="fx_common_float_or_param_type" minOccurs="0"/>
4003
<xs:element name="transparent" type="fx_common_transparent_type" minOccurs="0"/>
4004
<xs:element name="transparency" type="fx_common_float_or_param_type" minOccurs="0"/>
4005
<xs:element name="index_of_refraction" type="fx_common_float_or_param_type" minOccurs="0"/>
4009
<xs:element name="lambert">
4012
<xs:element name="emission" type="fx_common_color_or_texture_type" minOccurs="0"/>
4013
<xs:element name="ambient" type="fx_common_color_or_texture_type" minOccurs="0"/>
4014
<xs:element name="diffuse" type="fx_common_color_or_texture_type" minOccurs="0"/>
4015
<xs:element name="reflective" type="fx_common_color_or_texture_type" minOccurs="0"/>
4016
<xs:element name="reflectivity" type="fx_common_float_or_param_type" minOccurs="0"/>
4017
<xs:element name="transparent" type="fx_common_transparent_type" minOccurs="0"/>
4018
<xs:element name="transparency" type="fx_common_float_or_param_type" minOccurs="0"/>
4019
<xs:element name="index_of_refraction" type="fx_common_float_or_param_type" minOccurs="0"/>
4023
<xs:element name="phong">
4026
<xs:element name="emission" type="fx_common_color_or_texture_type" minOccurs="0"/>
4027
<xs:element name="ambient" type="fx_common_color_or_texture_type" minOccurs="0"/>
4028
<xs:element name="diffuse" type="fx_common_color_or_texture_type" minOccurs="0"/>
4029
<xs:element name="specular" type="fx_common_color_or_texture_type" minOccurs="0"/>
4030
<xs:element name="shininess" type="fx_common_float_or_param_type" minOccurs="0"/>
4031
<xs:element name="reflective" type="fx_common_color_or_texture_type" minOccurs="0"/>
4032
<xs:element name="reflectivity" type="fx_common_float_or_param_type" minOccurs="0"/>
4033
<xs:element name="transparent" type="fx_common_transparent_type" minOccurs="0"/>
4034
<xs:element name="transparency" type="fx_common_float_or_param_type" minOccurs="0"/>
4035
<xs:element name="index_of_refraction" type="fx_common_float_or_param_type" minOccurs="0"/>
4039
<xs:element name="blinn">
4042
<xs:element name="emission" type="fx_common_color_or_texture_type" minOccurs="0"/>
4043
<xs:element name="ambient" type="fx_common_color_or_texture_type" minOccurs="0"/>
4044
<xs:element name="diffuse" type="fx_common_color_or_texture_type" minOccurs="0"/>
4045
<xs:element name="specular" type="fx_common_color_or_texture_type" minOccurs="0"/>
4046
<xs:element name="shininess" type="fx_common_float_or_param_type" minOccurs="0"/>
4047
<xs:element name="reflective" type="fx_common_color_or_texture_type" minOccurs="0"/>
4048
<xs:element name="reflectivity" type="fx_common_float_or_param_type" minOccurs="0"/>
4049
<xs:element name="transparent" type="fx_common_transparent_type" minOccurs="0"/>
4050
<xs:element name="transparency" type="fx_common_float_or_param_type" minOccurs="0"/>
4051
<xs:element name="index_of_refraction" type="fx_common_float_or_param_type" minOccurs="0"/>
4056
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
4059
The extra element may appear any number of times.
4064
<xs:attribute name="id" type="xs:ID">
4067
The id attribute is a text string containing the unique identifier of this element.
4068
This value must be unique within the instance document. Optional attribute.
4072
<xs:attribute name="sid" type="sid_type" use="required">
4075
The sid attribute is a text string value containing the sub-identifier of this element.
4076
This value must be unique within the scope of the parent element. Optional attribute.
4082
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
4085
The extra element may appear any number of times.
4090
<xs:attribute name="id" type="xs:ID" use="optional">
4093
The id attribute is a text string containing the unique identifier of this element.
4094
This value must be unique within the instance document. Optional attribute.
4099
<xs:complexType name="profile_bridge_type">
4101
<xs:documentation>Bridge COLLADA FX to an external FX framework such as NVIDIA's CgFX or Microsoft's Direct3D FX</xs:documentation>
4104
<xs:element name="asset" type="asset_type" minOccurs="0"/>
4105
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
4107
<xs:attribute name="id" type="xs:ID"/>
4108
<xs:attribute name="platform" type="xs:NCName" use="optional">
4110
<xs:documentation>The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional</xs:documentation>
4113
<xs:attribute name="url" type="xs:anyURI" use="required">
4115
<xs:documentation>The url to the file which we are bridging too</xs:documentation>
4119
<xs:simpleType name="gl_max_lights_index_type">
4120
<xs:restriction base="xs:nonNegativeInteger">
4121
<xs:minInclusive value="0"/>
4124
<xs:simpleType name="gl_max_clip_planes_index_type">
4125
<xs:restriction base="xs:nonNegativeInteger">
4126
<xs:minInclusive value="0"/>
4129
<xs:simpleType name="gl_max_texture_image_units_index_type">
4130
<xs:restriction base="xs:nonNegativeInteger">
4131
<xs:minInclusive value="0"/>
4134
<xs:simpleType name="gl_blend_enum">
4135
<xs:restriction base="xs:string">
4136
<xs:enumeration value="ZERO">
4138
<xs:appinfo>value=0x0</xs:appinfo>
4141
<xs:enumeration value="ONE">
4143
<xs:appinfo>value=0x1</xs:appinfo>
4146
<xs:enumeration value="SRC_COLOR">
4148
<xs:appinfo>value=0x0300</xs:appinfo>
4151
<xs:enumeration value="ONE_MINUS_SRC_COLOR">
4153
<xs:appinfo>value=0x0301</xs:appinfo>
4156
<xs:enumeration value="DEST_COLOR">
4158
<xs:appinfo>value=0x0306</xs:appinfo>
4161
<xs:enumeration value="ONE_MINUS_DEST_COLOR">
4163
<xs:appinfo>value=0x0307</xs:appinfo>
4166
<xs:enumeration value="SRC_ALPHA">
4168
<xs:appinfo>value=0x0302</xs:appinfo>
4171
<xs:enumeration value="ONE_MINUS_SRC_ALPHA">
4173
<xs:appinfo>value=0x0303</xs:appinfo>
4176
<xs:enumeration value="DST_ALPHA">
4178
<xs:appinfo>value=0x0304</xs:appinfo>
4181
<xs:enumeration value="ONE_MINUS_DST_ALPHA">
4183
<xs:appinfo>value=0x0305</xs:appinfo>
4186
<xs:enumeration value="CONSTANT_COLOR">
4188
<xs:appinfo>value=0x8001</xs:appinfo>
4191
<xs:enumeration value="ONE_MINUS_CONSTANT_COLOR">
4193
<xs:appinfo>value=0x8002</xs:appinfo>
4196
<xs:enumeration value="CONSTANT_ALPHA">
4198
<xs:appinfo>value=0x8003</xs:appinfo>
4201
<xs:enumeration value="ONE_MINUS_CONSTANT_ALPHA">
4203
<xs:appinfo>value=0x8004</xs:appinfo>
4206
<xs:enumeration value="SRC_ALPHA_SATURATE">
4208
<xs:appinfo>value=0x0308</xs:appinfo>
4213
<xs:simpleType name="gl_face_enum">
4214
<xs:restriction base="xs:string">
4215
<xs:enumeration value="FRONT">
4217
<xs:appinfo>value=0x0404</xs:appinfo>
4220
<xs:enumeration value="BACK">
4222
<xs:appinfo>value=0x0405</xs:appinfo>
4225
<xs:enumeration value="FRONT_AND_BACK">
4227
<xs:appinfo>value=0x0408</xs:appinfo>
4232
<xs:simpleType name="gl_blend_equation_enum">
4233
<xs:restriction base="xs:string">
4234
<xs:enumeration value="FUNC_ADD">
4236
<xs:appinfo>value=0x8006</xs:appinfo>
4239
<xs:enumeration value="FUNC_SUBTRACT">
4241
<xs:appinfo>value=0x800A</xs:appinfo>
4244
<xs:enumeration value="FUNC_REVERSE_SUBTRACT">
4246
<xs:appinfo>value=0x800B</xs:appinfo>
4249
<xs:enumeration value="MIN">
4251
<xs:appinfo>value=0x8007</xs:appinfo>
4254
<xs:enumeration value="MAX">
4256
<xs:appinfo>value=0x8008</xs:appinfo>
4261
<xs:simpleType name="gl_func_enum">
4262
<xs:restriction base="xs:string">
4263
<xs:enumeration value="NEVER">
4265
<xs:appinfo>value=0x0200</xs:appinfo>
4268
<xs:enumeration value="LESS">
4270
<xs:appinfo>value=0x0201</xs:appinfo>
4273
<xs:enumeration value="LEQUAL">
4275
<xs:appinfo>value=0x0203</xs:appinfo>
4278
<xs:enumeration value="EQUAL">
4280
<xs:appinfo>value=0x0202</xs:appinfo>
4283
<xs:enumeration value="GREATER">
4285
<xs:appinfo>value=0x0204</xs:appinfo>
4288
<xs:enumeration value="NOTEQUAL">
4290
<xs:appinfo>value=0x0205</xs:appinfo>
4293
<xs:enumeration value="GEQUAL">
4295
<xs:appinfo>value=0x0206</xs:appinfo>
4298
<xs:enumeration value="ALWAYS">
4300
<xs:appinfo>value=0x0207</xs:appinfo>
4305
<xs:simpleType name="gl_stencil_op_enum">
4306
<xs:restriction base="xs:string">
4307
<xs:enumeration value="KEEP">
4309
<xs:appinfo>value=0x1E00</xs:appinfo>
4312
<xs:enumeration value="ZERO">
4314
<xs:appinfo>value=0x0</xs:appinfo>
4317
<xs:enumeration value="REPLACE">
4319
<xs:appinfo>value=0x1E01</xs:appinfo>
4322
<xs:enumeration value="INCR">
4324
<xs:appinfo>value=0x1E02</xs:appinfo>
4327
<xs:enumeration value="DECR">
4329
<xs:appinfo>value=0x1E03</xs:appinfo>
4332
<xs:enumeration value="INVERT">
4334
<xs:appinfo>value=0x150A</xs:appinfo>
4337
<xs:enumeration value="INCR_WRAP">
4339
<xs:appinfo>value=0x8507</xs:appinfo>
4342
<xs:enumeration value="DECR_WRAP">
4344
<xs:appinfo>value=0x8508</xs:appinfo>
4349
<xs:simpleType name="gl_material_enum">
4350
<xs:restriction base="xs:string">
4351
<xs:enumeration value="EMISSION">
4353
<xs:appinfo>value=0x1600</xs:appinfo>
4356
<xs:enumeration value="AMBIENT">
4358
<xs:appinfo>value=0x1200</xs:appinfo>
4361
<xs:enumeration value="DIFFUSE">
4363
<xs:appinfo>value=0x1201</xs:appinfo>
4366
<xs:enumeration value="SPECULAR">
4368
<xs:appinfo>value=0x1202</xs:appinfo>
4371
<xs:enumeration value="AMBIENT_AND_DIFFUSE">
4373
<xs:appinfo>value=0x1602</xs:appinfo>
4378
<xs:simpleType name="gl_fog_enum">
4379
<xs:restriction base="xs:string">
4380
<xs:enumeration value="LINEAR">
4382
<xs:appinfo>value=0x2601</xs:appinfo>
4385
<xs:enumeration value="EXP">
4387
<xs:appinfo>value=0x0800</xs:appinfo>
4390
<xs:enumeration value="EXP2">
4392
<xs:appinfo>value=0x0801</xs:appinfo>
4397
<xs:simpleType name="gl_fog_coord_src_enum">
4398
<xs:restriction base="xs:string">
4399
<xs:enumeration value="FOG_COORDINATE">
4401
<xs:appinfo>value=0x8451</xs:appinfo>
4404
<xs:enumeration value="FRAGMENT_DEPTH">
4406
<xs:appinfo>value=0x8452</xs:appinfo>
4411
<xs:simpleType name="gl_front_face_enum">
4412
<xs:restriction base="xs:string">
4413
<xs:enumeration value="CW">
4415
<xs:appinfo>value=0x0900</xs:appinfo>
4418
<xs:enumeration value="CCW">
4420
<xs:appinfo>value=0x0901</xs:appinfo>
4425
<xs:simpleType name="gl_light_model_color_control_enum">
4426
<xs:restriction base="xs:string">
4427
<xs:enumeration value="SINGLE_COLOR">
4429
<xs:appinfo>value=0x81F9</xs:appinfo>
4432
<xs:enumeration value="SEPARATE_SPECULAR_COLOR">
4434
<xs:appinfo>value=0x81FA</xs:appinfo>
4439
<xs:simpleType name="gl_logic_op_enum">
4440
<xs:restriction base="xs:string">
4441
<xs:enumeration value="CLEAR">
4443
<xs:appinfo>value=0x1500</xs:appinfo>
4446
<xs:enumeration value="AND">
4448
<xs:appinfo>value=0x1501</xs:appinfo>
4451
<xs:enumeration value="AND_REVERSE">
4453
<xs:appinfo>value=0x1502</xs:appinfo>
4456
<xs:enumeration value="COPY">
4458
<xs:appinfo>value=0x1503</xs:appinfo>
4461
<xs:enumeration value="AND_INVERTED">
4463
<xs:appinfo>value=0x1504</xs:appinfo>
4466
<xs:enumeration value="NOOP">
4468
<xs:appinfo>value=0x1505</xs:appinfo>
4471
<xs:enumeration value="XOR">
4473
<xs:appinfo>value=0x1506</xs:appinfo>
4476
<xs:enumeration value="OR">
4478
<xs:appinfo>value=0x1507</xs:appinfo>
4481
<xs:enumeration value="NOR">
4483
<xs:appinfo>value=0x1508</xs:appinfo>
4486
<xs:enumeration value="EQUIV">
4488
<xs:appinfo>value=0x1509</xs:appinfo>
4491
<xs:enumeration value="INVERT">
4493
<xs:appinfo>value=0x150A</xs:appinfo>
4496
<xs:enumeration value="OR_REVERSE">
4498
<xs:appinfo>value=0x150B</xs:appinfo>
4501
<xs:enumeration value="COPY_INVERTED">
4503
<xs:appinfo>value=0x150C</xs:appinfo>
4506
<xs:enumeration value="NAND">
4508
<xs:appinfo>value=0x150E</xs:appinfo>
4511
<xs:enumeration value="SET">
4513
<xs:appinfo>value=0x150F</xs:appinfo>
4518
<xs:simpleType name="gl_polygon_mode_enum">
4519
<xs:restriction base="xs:string">
4520
<xs:enumeration value="POINT">
4522
<xs:appinfo>value=0x1B00</xs:appinfo>
4525
<xs:enumeration value="LINE">
4527
<xs:appinfo>value=0x1B01</xs:appinfo>
4530
<xs:enumeration value="FILL">
4532
<xs:appinfo>value=0x1B02</xs:appinfo>
4537
<xs:simpleType name="gl_shade_model_enum">
4538
<xs:restriction base="xs:string">
4539
<xs:enumeration value="FLAT">
4541
<xs:appinfo>value=0x1D00</xs:appinfo>
4544
<xs:enumeration value="SMOOTH">
4546
<xs:appinfo>value=0x1D01</xs:appinfo>
4551
<xs:simpleType name="gl_alpha_value_type">
4552
<xs:restriction base="xs:float">
4553
<xs:minInclusive value="0.0"/>
4554
<xs:maxInclusive value="1.0"/>
4557
<xs:simpleType name="gl_enumeration_type">
4558
<xs:union memberTypes="gl_blend_enum gl_face_enum gl_blend_equation_enum gl_func_enum gl_stencil_op_enum gl_material_enum gl_fog_enum gl_fog_coord_src_enum gl_front_face_enum gl_light_model_color_control_enum gl_logic_op_enum gl_polygon_mode_enum gl_shade_model_enum"/>
4560
<xs:group name="gl_pipeline_settings_group">
4563
A group that defines all of the renderstates used for the CG and GLSL profiles.
4567
<xs:element name="alpha_func">
4570
<xs:element name="func">
4572
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
4573
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4576
<xs:element name="value">
4578
<xs:attribute name="value" type="gl_alpha_value_type" use="optional" default="0.0"/>
4579
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4585
<xs:element name="blend_func">
4588
<xs:element name="src">
4590
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ONE"/>
4591
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4594
<xs:element name="dest">
4596
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ZERO"/>
4597
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4603
<xs:element name="blend_func_separate">
4606
<xs:element name="src_rgb">
4608
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ONE"/>
4609
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4612
<xs:element name="dest_rgb">
4614
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ZERO"/>
4615
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4618
<xs:element name="src_alpha">
4620
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ONE"/>
4621
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4624
<xs:element name="dest_alpha">
4626
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ZERO"/>
4627
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4633
<xs:element name="blend_equation">
4635
<xs:attribute name="value" type="gl_blend_equation_enum" use="optional" default="FUNC_ADD"/>
4636
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4639
<xs:element name="blend_equation_separate">
4642
<xs:element name="rgb">
4644
<xs:attribute name="value" type="gl_blend_equation_enum" use="optional" default="FUNC_ADD"/>
4645
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4648
<xs:element name="alpha">
4650
<xs:attribute name="value" type="gl_blend_equation_enum" use="optional" default="FUNC_ADD"/>
4651
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4657
<xs:element name="color_material">
4660
<xs:element name="face">
4662
<xs:attribute name="value" type="gl_face_enum" use="optional" default="FRONT_AND_BACK"/>
4663
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4666
<xs:element name="mode">
4668
<xs:attribute name="value" type="gl_material_enum" use="optional" default="AMBIENT_AND_DIFFUSE"/>
4669
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4675
<xs:element name="cull_face">
4677
<xs:attribute name="value" type="gl_face_enum" use="optional" default="BACK"/>
4678
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4681
<xs:element name="depth_func">
4683
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
4684
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4687
<xs:element name="fog_mode">
4689
<xs:attribute name="value" type="gl_fog_enum" use="optional" default="EXP"/>
4690
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4693
<xs:element name="fog_coord_src">
4695
<xs:attribute name="value" type="gl_fog_coord_src_enum" use="optional" default="FOG_COORDINATE"/>
4696
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4699
<xs:element name="front_face">
4701
<xs:attribute name="value" type="gl_front_face_enum" use="optional" default="CCW"/>
4702
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4705
<xs:element name="light_model_color_control">
4707
<xs:attribute name="value" type="gl_light_model_color_control_enum" use="optional" default="SINGLE_COLOR"/>
4708
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4711
<xs:element name="logic_op">
4713
<xs:attribute name="value" type="gl_logic_op_enum" use="optional" default="COPY"/>
4714
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4717
<xs:element name="polygon_mode">
4720
<xs:element name="face">
4722
<xs:attribute name="value" type="gl_face_enum" use="optional" default="FRONT_AND_BACK"/>
4723
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4726
<xs:element name="mode">
4728
<xs:attribute name="value" type="gl_polygon_mode_enum" use="optional" default="FILL"/>
4729
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4735
<xs:element name="shade_model">
4737
<xs:attribute name="value" type="gl_shade_model_enum" use="optional" default="SMOOTH"/>
4738
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4741
<xs:element name="stencil_func">
4744
<xs:element name="func">
4746
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
4747
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4750
<xs:element name="ref">
4752
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="0"/>
4753
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4756
<xs:element name="mask">
4758
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="255"/>
4759
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4765
<xs:element name="stencil_op">
4768
<xs:element name="fail">
4770
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
4771
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4774
<xs:element name="zfail">
4776
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
4777
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4780
<xs:element name="zpass">
4782
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
4783
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4789
<xs:element name="stencil_func_separate">
4792
<xs:element name="front">
4794
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
4795
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4798
<xs:element name="back">
4800
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
4801
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4804
<xs:element name="ref">
4806
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="0"/>
4807
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4810
<xs:element name="mask">
4812
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="255"/>
4813
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4819
<xs:element name="stencil_op_separate">
4822
<xs:element name="face">
4824
<xs:attribute name="value" type="gl_face_enum" use="optional" default="FRONT_AND_BACK"/>
4825
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4828
<xs:element name="fail">
4830
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
4831
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4834
<xs:element name="zfail">
4836
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
4837
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4840
<xs:element name="zpass">
4842
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
4843
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4849
<xs:element name="stencil_mask_separate">
4852
<xs:element name="face">
4854
<xs:attribute name="value" type="gl_face_enum" use="optional" default="FRONT_AND_BACK"/>
4855
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4858
<xs:element name="mask">
4860
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="255"/>
4861
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4867
<xs:element name="light_enable">
4869
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
4870
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4871
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4874
<xs:element name="light_ambient">
4876
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 1"/>
4877
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4878
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4881
<xs:element name="light_diffuse">
4883
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
4884
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4885
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4888
<xs:element name="light_specular">
4890
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
4891
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4892
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4895
<xs:element name="light_position">
4897
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 1 0"/>
4898
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4899
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4902
<xs:element name="light_constant_attenuation">
4904
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
4905
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4906
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4909
<xs:element name="light_linear_attenuation">
4911
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
4912
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4913
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4916
<xs:element name="light_quadratic_attenuation">
4918
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
4919
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4920
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4923
<xs:element name="light_spot_cutoff">
4925
<xs:attribute name="value" type="float_type" use="optional" default="180"/>
4926
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4927
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4930
<xs:element name="light_spot_direction">
4932
<xs:attribute name="value" type="float3_type" use="optional" default="0 0 -1"/>
4933
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4934
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4937
<xs:element name="light_spot_exponent">
4939
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
4940
<xs:attribute name="param" type="xs:NCName" use="optional"/>
4941
<xs:attribute name="index" type="gl_max_lights_index_type" use="required"/>
4944
<xs:element name="texture1D">
4947
<xs:element name="value" type="fx_sampler1D_type"/>
4948
<xs:element name="param" type="xs:NCName"/>
4950
<xs:attribute name="index" type="gl_max_texture_image_units_index_type" use="required"/>
4953
<xs:element name="texture2D">
4956
<xs:element name="value" type="fx_sampler2D_type"/>
4957
<xs:element name="param" type="xs:NCName"/>
4959
<xs:attribute name="index" type="gl_max_texture_image_units_index_type" use="required"/>
4962
<xs:element name="texture3D">
4965
<xs:element name="value" type="fx_sampler3D_type"/>
4966
<xs:element name="param" type="xs:NCName"/>
4968
<xs:attribute name="index" type="gl_max_texture_image_units_index_type" use="required"/>
4971
<xs:element name="textureCUBE">
4974
<xs:element name="value" type="fx_samplerCUBE_type"/>
4975
<xs:element name="param" type="xs:NCName"/>
4977
<xs:attribute name="index" type="gl_max_texture_image_units_index_type" use="required"/>
4980
<xs:element name="textureRECT">
4983
<xs:element name="value" type="fx_samplerRECT_type"/>
4984
<xs:element name="param" type="xs:NCName"/>
4986
<xs:attribute name="index" type="gl_max_texture_image_units_index_type" use="required"/>
4989
<xs:element name="textureDEPTH">
4992
<xs:element name="value" type="fx_samplerDEPTH_type"/>
4993
<xs:element name="param" type="xs:NCName"/>
4995
<xs:attribute name="index" type="gl_max_texture_image_units_index_type" use="required"/>
4998
<xs:element name="texture1D_enable">
5000
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5001
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5002
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5005
<xs:element name="texture2D_enable">
5007
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5008
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5009
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5012
<xs:element name="texture3D_enable">
5014
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5015
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5016
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5019
<xs:element name="textureCUBE_enable">
5021
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5022
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5023
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5026
<xs:element name="textureRECT_enable">
5028
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5029
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5030
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5033
<xs:element name="textureDEPTH_enable">
5035
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5036
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5037
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5040
<xs:element name="texture_env_color">
5042
<xs:attribute name="value" type="float4_type" use="optional"/>
5043
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5044
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5047
<xs:element name="texture_env_mode">
5049
<xs:attribute name="value" type="xs:string" use="optional"/>
5050
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5051
<xs:attribute name="index" type="gl_max_texture_image_units_index_type"/>
5054
<xs:element name="clip_plane">
5056
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
5057
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5058
<xs:attribute name="index" type="gl_max_clip_planes_index_type"/>
5061
<xs:element name="clip_plane_enable">
5063
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5064
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5065
<xs:attribute name="index" type="gl_max_clip_planes_index_type"/>
5068
<xs:element name="blend_color">
5070
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
5071
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5074
<xs:element name="color_mask">
5076
<xs:attribute name="value" type="bool4_type" use="optional" default="true true true true"/>
5077
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5080
<xs:element name="depth_bounds">
5082
<xs:attribute name="value" type="float2_type" use="optional"/>
5083
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5086
<xs:element name="depth_mask">
5088
<xs:attribute name="value" type="xs:boolean" use="optional" default="true"/>
5089
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5092
<xs:element name="depth_range">
5094
<xs:attribute name="value" type="float2_type" use="optional" default="0 1"/>
5095
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5098
<xs:element name="fog_density">
5100
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5101
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5104
<xs:element name="fog_start">
5106
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
5107
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5110
<xs:element name="fog_end">
5112
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5113
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5116
<xs:element name="fog_color">
5118
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
5119
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5122
<xs:element name="light_model_ambient">
5124
<xs:attribute name="value" type="float4_type" use="optional" default="0.2 0.2 0.2 1.0"/>
5125
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5128
<xs:element name="lighting_enable">
5130
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5131
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5134
<xs:element name="line_stipple">
5136
<xs:attribute name="value" type="int2_type" use="optional" default="1 65536"/>
5137
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5140
<xs:element name="line_width">
5142
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5143
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5146
<xs:element name="material_ambient">
5148
<xs:attribute name="value" type="float4_type" use="optional" default="0.2 0.2 0.2 1.0"/>
5149
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5152
<xs:element name="material_diffuse">
5154
<xs:attribute name="value" type="float4_type" use="optional" default="0.8 0.8 0.8 1.0"/>
5155
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5158
<xs:element name="material_emission">
5160
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 1"/>
5161
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5164
<xs:element name="material_shininess">
5166
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
5167
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5170
<xs:element name="material_specular">
5172
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 1"/>
5173
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5176
<xs:element name="model_view_matrix">
5178
<xs:attribute name="value" type="float4x4_type" use="optional" default="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1"/>
5179
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5182
<xs:element name="point_distance_attenuation">
5184
<xs:attribute name="value" type="float3_type" use="optional" default="1 0 0"/>
5185
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5188
<xs:element name="point_fade_threshold_size">
5190
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5191
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5194
<xs:element name="point_size">
5196
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5197
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5200
<xs:element name="point_size_min">
5202
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
5203
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5206
<xs:element name="point_size_max">
5208
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5209
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5212
<xs:element name="polygon_offset">
5214
<xs:attribute name="value" type="float2_type" use="optional" default="0 0"/>
5215
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5218
<xs:element name="projection_matrix">
5220
<xs:attribute name="value" type="float4x4_type" use="optional" default="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1"/>
5221
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5224
<xs:element name="scissor">
5226
<xs:attribute name="value" type="int4_type" use="optional"/>
5227
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5230
<xs:element name="stencil_mask">
5232
<xs:attribute name="value" type="int_type" use="optional" default="4294967295"/>
5233
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5236
<xs:element name="alpha_test_enable">
5238
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5239
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5242
<xs:element name="blend_enable">
5244
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5245
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5248
<xs:element name="color_logic_op_enable">
5250
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5251
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5254
<xs:element name="color_material_enable">
5256
<xs:attribute name="value" type="xs:boolean" use="optional" default="true"/>
5257
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5260
<xs:element name="cull_face_enable">
5262
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5263
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5266
<xs:element name="depth_bounds_enable">
5268
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5269
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5272
<xs:element name="depth_clamp_enable">
5274
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5275
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5278
<xs:element name="depth_test_enable">
5280
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5281
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5284
<xs:element name="dither_enable">
5286
<xs:attribute name="value" type="xs:boolean" use="optional" default="true"/>
5287
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5290
<xs:element name="fog_enable">
5292
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5293
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5296
<xs:element name="light_model_local_viewer_enable">
5298
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5299
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5302
<xs:element name="light_model_two_side_enable">
5304
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5305
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5308
<xs:element name="line_smooth_enable">
5310
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5311
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5314
<xs:element name="line_stipple_enable">
5316
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5317
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5320
<xs:element name="logic_op_enable">
5322
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5323
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5326
<xs:element name="multisample_enable">
5328
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5329
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5332
<xs:element name="normalize_enable">
5334
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5335
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5338
<xs:element name="point_smooth_enable">
5340
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5341
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5344
<xs:element name="polygon_offset_fill_enable">
5346
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5347
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5350
<xs:element name="polygon_offset_line_enable">
5352
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5353
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5356
<xs:element name="polygon_offset_point_enable">
5358
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5359
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5362
<xs:element name="polygon_smooth_enable">
5364
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5365
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5368
<xs:element name="polygon_stipple_enable">
5370
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5371
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5374
<xs:element name="rescale_normal_enable">
5376
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5377
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5380
<xs:element name="sample_alpha_to_coverage_enable">
5382
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5383
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5386
<xs:element name="sample_alpha_to_one_enable">
5388
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5389
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5392
<xs:element name="sample_coverage_enable">
5394
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5395
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5398
<xs:element name="scissor_test_enable">
5400
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5401
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5404
<xs:element name="stencil_test_enable">
5406
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5407
<xs:attribute name="param" type="xs:NCName" use="optional"/>
5412
<xs:group name="gles2_pipeline_settings_group">
5414
<xs:documentation>All of the pass state settings for OpenGL ES 2 API</xs:documentation>
5417
<xs:element name="blend_color">
5419
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
5420
<xs:attribute name="param" type="xs:token" use="optional"/>
5423
<xs:element name="blend_equation">
5425
<xs:attribute name="value" type="gl_blend_equation_enum" use="optional" default="FUNC_ADD"/>
5426
<xs:attribute name="param" type="xs:token" use="optional"/>
5429
<xs:element name="blend_equation_separate">
5432
<xs:element name="rgb">
5434
<xs:attribute name="value" type="gl_blend_equation_enum" use="optional" default="FUNC_ADD"/>
5435
<xs:attribute name="param" type="xs:token" use="optional"/>
5438
<xs:element name="alpha">
5440
<xs:attribute name="value" type="gl_blend_equation_enum" use="optional" default="FUNC_ADD"/>
5441
<xs:attribute name="param" type="xs:token" use="optional"/>
5447
<xs:element name="blend_func">
5450
<xs:element name="src">
5452
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ONE"/>
5453
<xs:attribute name="param" type="xs:token" use="optional"/>
5456
<xs:element name="dest">
5458
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ZERO"/>
5459
<xs:attribute name="param" type="xs:token" use="optional"/>
5465
<xs:element name="blend_func_separate">
5468
<xs:element name="src_rgb">
5470
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ONE"/>
5471
<xs:attribute name="param" type="xs:token" use="optional"/>
5474
<xs:element name="dest_rgb">
5476
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ZERO"/>
5477
<xs:attribute name="param" type="xs:token" use="optional"/>
5480
<xs:element name="src_alpha">
5482
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ONE"/>
5483
<xs:attribute name="param" type="xs:token" use="optional"/>
5486
<xs:element name="dest_alpha">
5488
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ZERO"/>
5489
<xs:attribute name="param" type="xs:token" use="optional"/>
5495
<xs:element name="color_mask">
5497
<xs:attribute name="value" type="bool4_type" use="optional" default="true true true true"/>
5498
<xs:attribute name="param" type="xs:token" use="optional"/>
5501
<xs:element name="cull_face">
5503
<xs:attribute name="value" type="gl_face_enum" use="optional" default="BACK"/>
5504
<xs:attribute name="param" type="xs:token" use="optional"/>
5507
<xs:element name="depth_func">
5509
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
5510
<xs:attribute name="param" type="xs:token" use="optional"/>
5513
<xs:element name="depth_mask">
5515
<xs:attribute name="value" type="xs:boolean" use="optional" default="true"/>
5516
<xs:attribute name="param" type="xs:token" use="optional"/>
5519
<xs:element name="depth_range">
5521
<xs:attribute name="value" type="float2_type" use="optional" default="0 1"/>
5522
<xs:attribute name="param" type="xs:token" use="optional"/>
5525
<xs:element name="front_face">
5527
<xs:attribute name="value" type="gl_front_face_enum" use="optional" default="CCW"/>
5528
<xs:attribute name="param" type="xs:token" use="optional"/>
5531
<xs:element name="line_width">
5533
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5534
<xs:attribute name="param" type="xs:token" use="optional"/>
5537
<xs:element name="polygon_offset">
5539
<xs:attribute name="value" type="float2_type" use="optional" default="0 0"/>
5540
<xs:attribute name="param" type="xs:token" use="optional"/>
5543
<xs:element name="point_size">
5545
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
5546
<xs:attribute name="param" type="xs:token" use="optional"/>
5549
<xs:element name="sample_coverage">
5552
<xs:element name="value">
5554
<xs:attribute name="value" type="xs:float" use="optional"/>
5555
<xs:attribute name="param" type="xs:token" use="optional"/>
5558
<xs:element name="invert">
5560
<xs:attribute name="value" type="xs:boolean" use="optional"/>
5561
<xs:attribute name="param" type="xs:token" use="optional"/>
5567
<xs:element name="scissor">
5569
<xs:attribute name="value" type="int4_type" use="optional"/>
5570
<xs:attribute name="param" type="xs:token" use="optional"/>
5573
<xs:element name="stencil_func">
5576
<xs:element name="func">
5578
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
5579
<xs:attribute name="param" type="xs:token" use="optional"/>
5582
<xs:element name="ref">
5584
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="0"/>
5585
<xs:attribute name="param" type="xs:token" use="optional"/>
5588
<xs:element name="mask">
5590
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="255"/>
5591
<xs:attribute name="param" type="xs:token" use="optional"/>
5597
<xs:element name="stencil_func_separate">
5600
<xs:element name="front">
5602
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
5603
<xs:attribute name="param" type="xs:token" use="optional"/>
5606
<xs:element name="back">
5608
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
5609
<xs:attribute name="param" type="xs:token" use="optional"/>
5612
<xs:element name="ref">
5614
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="0"/>
5615
<xs:attribute name="param" type="xs:token" use="optional"/>
5618
<xs:element name="mask">
5620
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="255"/>
5621
<xs:attribute name="param" type="xs:token" use="optional"/>
5627
<xs:element name="stencil_mask">
5629
<xs:attribute name="value" type="int_type" use="optional" default="4294967295"/>
5630
<xs:attribute name="param" type="xs:token" use="optional"/>
5633
<xs:element name="stencil_mask_separate">
5636
<xs:element name="face">
5638
<xs:attribute name="value" type="gl_face_enum" use="optional" default="FRONT_AND_BACK"/>
5639
<xs:attribute name="param" type="xs:token" use="optional"/>
5642
<xs:element name="mask">
5644
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="255"/>
5645
<xs:attribute name="param" type="xs:token" use="optional"/>
5651
<xs:element name="stencil_op">
5654
<xs:element name="fail">
5656
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
5657
<xs:attribute name="param" type="xs:token" use="optional"/>
5660
<xs:element name="zfail">
5662
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
5663
<xs:attribute name="param" type="xs:token" use="optional"/>
5666
<xs:element name="zpass">
5668
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
5669
<xs:attribute name="param" type="xs:token" use="optional"/>
5675
<xs:element name="stencil_op_separate">
5678
<xs:element name="face">
5680
<xs:attribute name="value" type="gl_face_enum" use="optional" default="FRONT_AND_BACK"/>
5681
<xs:attribute name="param" type="xs:token" use="optional"/>
5684
<xs:element name="fail">
5686
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
5687
<xs:attribute name="param" type="xs:token" use="optional"/>
5690
<xs:element name="zfail">
5692
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
5693
<xs:attribute name="param" type="xs:token" use="optional"/>
5696
<xs:element name="zpass">
5698
<xs:attribute name="value" type="gl_stencil_op_enum" use="optional" default="KEEP"/>
5699
<xs:attribute name="param" type="xs:token" use="optional"/>
5705
<xs:element name="blend_enable">
5707
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5708
<xs:attribute name="param" type="xs:token" use="optional"/>
5711
<xs:element name="cull_face_enable">
5713
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5714
<xs:attribute name="param" type="xs:token" use="optional"/>
5717
<xs:element name="depth_test_enable">
5719
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5720
<xs:attribute name="param" type="xs:token" use="optional"/>
5723
<xs:element name="dither_enable">
5725
<xs:attribute name="value" type="xs:boolean" use="optional" default="true"/>
5726
<xs:attribute name="param" type="xs:token" use="optional"/>
5729
<xs:element name="polygon_offset_fill_enable">
5731
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5732
<xs:attribute name="param" type="xs:token" use="optional"/>
5735
<xs:element name="point_size_enable">
5737
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5738
<xs:attribute name="param" type="xs:token" use="optional"/>
5741
<xs:element name="sample_alpha_to_coverage_enable">
5743
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5744
<xs:attribute name="param" type="xs:token" use="optional"/>
5747
<xs:element name="sample_coverage_enable">
5749
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5750
<xs:attribute name="param" type="xs:token" use="optional"/>
5753
<xs:element name="scissor_test_enable">
5755
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5756
<xs:attribute name="param" type="xs:token" use="optional"/>
5759
<xs:element name="stencil_test_enable">
5761
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
5762
<xs:attribute name="param" type="xs:token" use="optional"/>
5767
<xs:group name="gles2_value_group">
5769
<xs:documentation>New parameters may choose to type themselves by value, providing a default.</xs:documentation>
5772
<xs:element name="bool" type="xs:boolean"/>
5773
<xs:element name="bvec2" type="bool2_type"/>
5774
<xs:element name="bvec3" type="bool3_type"/>
5775
<xs:element name="bvec4" type="bool4_type"/>
5776
<xs:element name="float" type="float_type"/>
5777
<xs:element name="vec2" type="float2_type"/>
5778
<xs:element name="vec3" type="float3_type"/>
5779
<xs:element name="vec4" type="float4_type"/>
5780
<xs:element name="mat2" type="float2x2_type"/>
5781
<xs:element name="mat3" type="float3x3_type"/>
5782
<xs:element name="mat4" type="float4x4_type"/>
5783
<xs:element name="int" type="int_type"/>
5784
<xs:element name="ivec2" type="int2_type"/>
5785
<xs:element name="ivec3" type="int3_type"/>
5786
<xs:element name="ivec4" type="int4_type"/>
5787
<xs:element name="enum" type="gl_enumeration_type"/>
5788
<xs:element name="sampler2D" type="fx_sampler2D_type"/>
5789
<xs:element name="sampler3D" type="fx_sampler3D_type">
5791
<xs:documentation>not in baseline spec but probably available in extensions</xs:documentation>
5794
<xs:element name="samplerCUBE" type="fx_samplerCUBE_type"/>
5795
<xs:element name="samplerDEPTH" type="fx_samplerDEPTH_type">
5797
<xs:documentation>not in baseline spec but probably available in extensions</xs:documentation>
5800
<xs:element name="usertype">
5803
<xs:element name="setparam" minOccurs="0" maxOccurs="unbounded">
5805
<xs:documentation>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.</xs:documentation>
5809
<xs:group ref="gles2_value_group" minOccurs="0" maxOccurs="unbounded"/>
5811
<xs:attribute name="ref" type="xs:token" use="required">
5813
<xs:documentation>Symbol name of the member</xs:documentation>
5819
<xs:attribute name="typename" type="xs:token" use="required">
5821
<xs:documentation>Symbol for type or structure in shader code. This aids in type-checking, resolution of bindings, and support interfaces</xs:documentation>
5826
<xs:element name="array">
5829
<xs:group ref="gles2_value_group" maxOccurs="unbounded"/>
5831
<xs:attribute name="length" type="xs:positiveInteger" use="required">
5833
<xs:documentation>Enable applications to validate element count without shader having been compiled</xs:documentation>
5840
<xs:complexType name="gles2_newparam_type">
5842
<xs:documentation>Declare a new parameter in the profile to be bound to the pipeline state or shaders</xs:documentation>
5845
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
5846
<xs:element name="semantic" type="xs:NCName" minOccurs="0">
5849
The semantic element allows you to specify a semantic for this new param.
5853
<xs:element name="modifier" type="fx_modifier_enum" minOccurs="0"/>
5854
<xs:group ref="gles2_value_group"/>
5856
<xs:attribute name="sid" type="sid_type" use="required"/>
5858
<xs:complexType name="gles2_shader_type">
5860
<xs:documentation>Identify code fragments and bind their parameters to effect parameters to identify how their values will be filled in</xs:documentation>
5863
<xs:element name="sources">
5865
<xs:documentation>sid of the code or include element which provides the source for this shader. Code may come from local or library_code.</xs:documentation>
5869
<xs:extension base="fx_sources_type">
5870
<xs:attribute name="entry" type="xs:token" default="main">
5872
<xs:documentation>Not used by GLSL. Some languages require functional entry points. GLSL always uses "main". CG requires an entry point</xs:documentation>
5876
</xs:complexContent>
5879
<xs:element name="compiler" type="fx_target_type" minOccurs="0" maxOccurs="unbounded">
5881
<xs:documentation>Not used by GLSL. This identifies a very specific binary target format for such things as a specific generation of GPU. Ex. NV4x</xs:documentation>
5884
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
5886
<xs:attribute name="stage" type="fx_pipeline_stage_enum" use="required">
5888
<xs:documentation>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</xs:documentation>
5892
<xs:complexType name="gles2_program_type">
5894
<xs:documentation>a program is one or more shaders linked together</xs:documentation>
5897
<xs:element name="shader" type="gles2_shader_type" minOccurs="0" maxOccurs="unbounded">
5899
<xs:documentation>compile shader stages</xs:documentation>
5902
<xs:element name="linker" type="fx_target_type" minOccurs="0" maxOccurs="unbounded">
5904
<xs:documentation>link shaders into program</xs:documentation>
5907
<xs:element name="bind_attribute" minOccurs="0" maxOccurs="unbounded">
5909
<xs:documentation>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.</xs:documentation>
5913
<xs:element name="semantic" type="xs:token">
5915
<xs:documentation>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.</xs:documentation>
5919
<xs:attribute name="symbol" type="xs:token" use="required">
5921
<xs:documentation>shader variable name</xs:documentation>
5926
<xs:element name="bind_uniform" minOccurs="0" maxOccurs="unbounded">
5928
<xs:documentation>Bind uniforms and samplers</xs:documentation>
5932
<xs:element name="param">
5934
<xs:documentation>Bind uniforms to parameters</xs:documentation>
5937
<xs:attribute name="ref" type="xs:NCName" use="required">
5939
<xs:documentation>SID of parameter</xs:documentation>
5944
<xs:group ref="gles2_value_group"/>
5946
<xs:attribute name="symbol" type="xs:token" use="required">
5948
<xs:documentation>shader variable name</xs:documentation>
5955
<xs:complexType name="gles2_pass_type">
5957
<xs:documentation>Set up pipeline state and shaders for rendering</xs:documentation>
5960
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded">
5962
<xs:documentation>Add metadata to this pass that may be used by games or tools to make decisions</xs:documentation>
5965
<xs:element name="states" minOccurs="0">
5967
<xs:documentation>API state</xs:documentation>
5970
<xs:sequence minOccurs="0" maxOccurs="unbounded">
5971
<xs:group ref="gles2_pipeline_settings_group"/>
5975
<xs:element name="program" type="gles2_program_type" minOccurs="0">
5977
<xs:documentation>A vertex_shader and fragment_shader are linked together to produce a OpenGL ES 2 program.</xs:documentation>
5980
<xs:element name="evaluate" minOccurs="0">
5982
<xs:documentation>runtime execution helpers</xs:documentation>
5986
<xs:element name="color_target" type="fx_colortarget_type" minOccurs="0" maxOccurs="unbounded">
5988
<xs:documentation>Identify that this pass is intended to render it's colors into a surface parameter</xs:documentation>
5991
<xs:element name="depth_target" type="fx_depthtarget_type" minOccurs="0" maxOccurs="unbounded">
5993
<xs:documentation>Identify that this pass is intended to render it's depthinto a surface parameter</xs:documentation>
5996
<xs:element name="stencil_target" type="fx_stenciltarget_type" minOccurs="0" maxOccurs="unbounded">
5998
<xs:documentation>Identify that this pass is intended to render it's stencil bits into a surface parameter</xs:documentation>
6001
<xs:element name="color_clear" type="fx_clearcolor_type" minOccurs="0" maxOccurs="unbounded">
6003
<xs:documentation>The indexed color render target is supposed to be cleared to this color</xs:documentation>
6006
<xs:element name="stencil_clear" type="fx_clearstencil_type" minOccurs="0" maxOccurs="unbounded">
6008
<xs:documentation>The indexed stencil bits render target is supposed to be cleared to this color</xs:documentation>
6011
<xs:element name="depth_clear" type="fx_cleardepth_type" minOccurs="0" maxOccurs="unbounded">
6013
<xs:documentation>The indexed depth render target is supposed to be cleared to this color</xs:documentation>
6016
<xs:element name="draw" type="fx_draw_type" minOccurs="0">
6018
<xs:documentation>Identify what type of goemetry should be drawn durring this pass. See comments in fx_draw_common for a list of common strings.</xs:documentation>
6024
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6026
<xs:attribute name="sid" type="sid_type" use="optional">
6029
The sid attribute is a text string value containing the sub-identifier of this element.
6030
This value must be unique within the scope of the parent element. Optional attribute.
6035
<xs:complexType name="profile_gles2_type">
6037
<xs:documentation>FX for OpenGL ES 2.0</xs:documentation>
6040
<xs:element name="asset" type="asset_type" minOccurs="0"/>
6041
<xs:choice minOccurs="0" maxOccurs="unbounded">
6042
<xs:element name="include" type="fx_include_type">
6044
<xs:documentation>Include shader code from a remote URI. If binary, assume raw.</xs:documentation>
6047
<xs:element name="code" type="fx_code_type">
6049
<xs:documentation>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</xs:documentation>
6053
<xs:element name="newparam" minOccurs="0" maxOccurs="unbounded">
6056
<xs:extension base="gles2_newparam_type"/>
6057
</xs:complexContent>
6060
<xs:element name="technique" maxOccurs="unbounded">
6063
Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method.
6068
<xs:element name="asset" type="asset_type" minOccurs="0"/>
6069
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded">
6071
<xs:documentation>Add metadata to this pass that may be used by games or tools to make decisions</xs:documentation>
6074
<xs:element name="pass" type="gles2_pass_type" maxOccurs="unbounded">
6077
A static declaration of all the render states, shaders, and settings for one rendering pipeline.
6081
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6083
<xs:attribute name="id" type="xs:ID"/>
6084
<xs:attribute name="sid" type="sid_type" use="required">
6087
The sid attribute is a text string value containing the sub-identifier of this element.
6088
This value must be unique within the scope of the parent element. Optional attribute.
6094
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6096
<xs:attribute name="id" type="xs:ID">
6098
<xs:documentation>Unique identifier for referencing</xs:documentation>
6101
<xs:attribute name="language" type="xs:NCName" use="required">
6103
<xs:documentation>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</xs:documentation>
6106
<xs:attribute name="platforms" type="list_of_names_type">
6108
<xs:documentation>Support for multiple OpenGL ES 2.0 platforms</xs:documentation>
6112
<xs:group name="glsl_value_group">
6115
A group that specifies the allowable types for GLSL profile parameters.
6119
<xs:element name="bool" type="xs:boolean"/>
6120
<xs:element name="bool2" type="bool2_type"/>
6121
<xs:element name="bool3" type="bool3_type"/>
6122
<xs:element name="bool4" type="bool4_type"/>
6123
<xs:element name="float" type="float_type"/>
6124
<xs:element name="float2" type="float2_type"/>
6125
<xs:element name="float3" type="float3_type"/>
6126
<xs:element name="float4" type="float4_type"/>
6127
<xs:element name="float2x2" type="float2x2_type"/>
6128
<xs:element name="float3x3" type="float3x3_type"/>
6129
<xs:element name="float4x4" type="float4x4_type"/>
6130
<xs:element name="int" type="int_type"/>
6131
<xs:element name="int2" type="int2_type"/>
6132
<xs:element name="int3" type="int3_type"/>
6133
<xs:element name="int4" type="int4_type"/>
6134
<xs:element name="sampler1D" type="fx_sampler1D_type"/>
6135
<xs:element name="sampler2D" type="fx_sampler2D_type"/>
6136
<xs:element name="sampler3D" type="fx_sampler3D_type"/>
6137
<xs:element name="samplerCUBE" type="fx_samplerCUBE_type"/>
6138
<xs:element name="samplerRECT" type="fx_samplerRECT_type"/>
6139
<xs:element name="samplerDEPTH" type="fx_samplerDEPTH_type"/>
6140
<xs:element name="enum" type="gl_enumeration_type"/>
6141
<xs:element name="array" type="glsl_array_type"/>
6144
<xs:complexType name="glsl_array_type">
6147
The glsl_newarray_type element is used to creates a parameter of a one-dimensional array type.
6152
<xs:documentation>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.</xs:documentation>
6154
<xs:group ref="glsl_value_group" maxOccurs="unbounded"/>
6156
<xs:attribute name="length" type="xs:positiveInteger" use="required">
6159
The length attribute specifies the length of the array.
6164
<xs:complexType name="glsl_newparam_type">
6166
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
6167
<xs:element name="semantic" type="xs:NCName" minOccurs="0"/>
6168
<xs:element name="modifier" type="fx_modifier_enum" minOccurs="0"/>
6169
<xs:group ref="glsl_value_group"/>
6171
<xs:attribute name="sid" type="sid_type" use="required"/>
6173
<xs:complexType name="glsl_shader_type">
6175
<xs:documentation>Identify code fragments and bind their parameters to effect parameters to identify how their values will be filled in</xs:documentation>
6178
<xs:element name="sources" type="fx_sources_type">
6180
<xs:documentation>sid of the code or include element which provides the source for this shader. Code may come from local or library_code.</xs:documentation>
6183
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6185
<xs:attribute name="stage" type="fx_pipeline_stage_enum" use="required">
6187
<xs:documentation>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</xs:documentation>
6191
<xs:complexType name="glsl_program_type">
6193
<xs:documentation>a program is one or more shaders linked together</xs:documentation>
6196
<xs:element name="shader" type="glsl_shader_type" minOccurs="0" maxOccurs="unbounded">
6198
<xs:documentation>compile shader stages</xs:documentation>
6201
<xs:element name="bind_attribute" minOccurs="0" maxOccurs="unbounded">
6203
<xs:documentation>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.</xs:documentation>
6207
<xs:element name="semantic" type="xs:token">
6209
<xs:documentation>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.</xs:documentation>
6213
<xs:attribute name="symbol" type="xs:token" use="required">
6215
<xs:documentation>shader variable name</xs:documentation>
6220
<xs:element name="bind_uniform" minOccurs="0" maxOccurs="unbounded">
6222
<xs:documentation>Bind uniforms and samplers</xs:documentation>
6226
<xs:element name="param">
6228
<xs:documentation>Bind uniforms to parameters</xs:documentation>
6231
<xs:attribute name="ref" type="xs:NCName" use="required">
6233
<xs:documentation>SID of parameter</xs:documentation>
6238
<xs:group ref="glsl_value_group"/>
6240
<xs:attribute name="symbol" type="xs:token" use="required">
6242
<xs:documentation>shader variable name</xs:documentation>
6249
<xs:complexType name="profile_glsl_type">
6252
Opens a block of GLSL platform-specific data types and technique declarations.
6256
<xs:element name="asset" type="asset_type" minOccurs="0"/>
6257
<xs:choice minOccurs="0" maxOccurs="unbounded">
6258
<xs:element name="code" type="fx_code_type"/>
6259
<xs:element name="include" type="fx_include_type"/>
6261
<xs:element name="newparam" type="glsl_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
6262
<xs:element name="technique" maxOccurs="unbounded">
6265
Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method.
6270
<xs:element name="asset" type="asset_type" minOccurs="0"/>
6271
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
6272
<xs:element name="pass" maxOccurs="unbounded">
6275
A static declaration of all the render states, shaders, and settings for one rendering pipeline.
6280
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
6281
<xs:element name="states" minOccurs="0">
6284
<xs:group ref="gl_pipeline_settings_group" minOccurs="0" maxOccurs="unbounded"/>
6288
<xs:element name="program" type="glsl_program_type" minOccurs="0"/>
6289
<xs:element name="evaluate" minOccurs="0">
6292
<xs:element name="color_target" type="fx_colortarget_type" minOccurs="0" maxOccurs="unbounded"/>
6293
<xs:element name="depth_target" type="fx_depthtarget_type" minOccurs="0" maxOccurs="unbounded"/>
6294
<xs:element name="stencil_target" type="fx_stenciltarget_type" minOccurs="0" maxOccurs="unbounded"/>
6295
<xs:element name="color_clear" type="fx_clearcolor_type" minOccurs="0" maxOccurs="unbounded"/>
6296
<xs:element name="depth_clear" type="fx_cleardepth_type" minOccurs="0" maxOccurs="unbounded"/>
6297
<xs:element name="stencil_clear" type="fx_clearstencil_type" minOccurs="0" maxOccurs="unbounded"/>
6298
<xs:element name="draw" type="fx_draw_type" minOccurs="0"/>
6302
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6304
<xs:attribute name="sid" type="sid_type" use="optional">
6307
The sid attribute is a text string value containing the sub-identifier of this element.
6308
This value must be unique within the scope of the parent element. Optional attribute.
6314
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6316
<xs:attribute name="id" type="xs:ID">
6319
The id attribute is a text string containing the unique identifier of this element.
6320
This value must be unique within the instance document. Optional attribute.
6324
<xs:attribute name="sid" type="sid_type" use="required">
6327
The sid attribute is a text string value containing the sub-identifier of this element.
6328
This value must be unique within the scope of the parent element. Optional attribute.
6334
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6336
<xs:attribute name="id" type="xs:ID" use="optional">
6339
The id attribute is a text string containing the unique identifier of this element.
6340
This value must be unique within the instance document. Optional attribute.
6344
<xs:attribute name="platform" type="xs:NCName" use="optional" default="PC">
6347
The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional
6352
<xs:complexType name="cg_array_type">
6355
Creates a parameter of a one-dimensional array type.
6359
<xs:group ref="cg_param_group" maxOccurs="unbounded">
6361
<xs:documentation>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.</xs:documentation>
6365
<xs:attribute name="length" type="xs:positiveInteger" use="required">
6368
The length attribute specifies the length of the array.
6372
<xs:attribute name="resizable" type="xs:boolean" use="optional" default="false">
6374
<xs:documentation>The array may be resized when changed because it is connected to a Cg unsized array.</xs:documentation>
6378
<xs:complexType name="cg_setparam_type">
6381
Assigns a new value to a previously defined parameter.
6385
<xs:group ref="cg_param_group"/>
6387
<xs:attribute name="ref" type="xs:token" use="required"/>
6389
<xs:group name="cg_param_group">
6392
A group that specifies the allowable types for CG profile parameters.
6396
<xs:element name="bool" type="xs:boolean"/>
6397
<xs:element name="bool2" type="bool2_type"/>
6398
<xs:element name="bool3" type="bool3_type"/>
6399
<xs:element name="bool4" type="bool4_type"/>
6400
<xs:element name="bool2x1" type="bool2_type"/>
6401
<xs:element name="bool2x2" type="bool2x2_type"/>
6402
<xs:element name="bool2x3" type="bool2x3_type"/>
6403
<xs:element name="bool2x4" type="bool2x4_type"/>
6404
<xs:element name="bool3x1" type="bool3_type"/>
6405
<xs:element name="bool3x2" type="bool3x2_type"/>
6406
<xs:element name="bool3x3" type="bool3x3_type"/>
6407
<xs:element name="bool3x4" type="bool3x4_type"/>
6408
<xs:element name="bool4x1" type="bool4_type"/>
6409
<xs:element name="bool4x2" type="bool4x2_type"/>
6410
<xs:element name="bool4x3" type="bool4x3_type"/>
6411
<xs:element name="bool4x4" type="bool4x4_type"/>
6412
<xs:element name="float" type="float_type"/>
6413
<xs:element name="float2" type="float2_type"/>
6414
<xs:element name="float3" type="float3_type"/>
6415
<xs:element name="float4" type="float4_type"/>
6416
<xs:element name="float2x1" type="float2_type"/>
6417
<xs:element name="float2x2" type="float2x2_type"/>
6418
<xs:element name="float2x3" type="float2x3_type"/>
6419
<xs:element name="float2x4" type="float2x4_type"/>
6420
<xs:element name="float3x1" type="float3_type"/>
6421
<xs:element name="float3x2" type="float3x2_type"/>
6422
<xs:element name="float3x3" type="float3x3_type"/>
6423
<xs:element name="float3x4" type="float3x4_type"/>
6424
<xs:element name="float4x1" type="float4_type"/>
6425
<xs:element name="float4x2" type="float4x2_type"/>
6426
<xs:element name="float4x3" type="float4x3_type"/>
6427
<xs:element name="float4x4" type="float4x4_type"/>
6428
<xs:element name="int" type="int_type"/>
6429
<xs:element name="int2" type="int2_type"/>
6430
<xs:element name="int3" type="int3_type"/>
6431
<xs:element name="int4" type="int4_type"/>
6432
<xs:element name="int2x1" type="int2_type"/>
6433
<xs:element name="int2x2" type="int2x2_type"/>
6434
<xs:element name="int2x3" type="int2x3_type"/>
6435
<xs:element name="int2x4" type="int2x4_type"/>
6436
<xs:element name="int3x1" type="int3_type"/>
6437
<xs:element name="int3x2" type="int3x2_type"/>
6438
<xs:element name="int3x3" type="int3x3_type"/>
6439
<xs:element name="int3x4" type="int3x4_type"/>
6440
<xs:element name="int4x1" type="int4_type"/>
6441
<xs:element name="int4x2" type="int4x2_type"/>
6442
<xs:element name="int4x3" type="int4x3_type"/>
6443
<xs:element name="int4x4" type="int4x4_type"/>
6444
<xs:element name="half" type="float_type"/>
6445
<xs:element name="half2" type="float2_type"/>
6446
<xs:element name="half3" type="float3_type"/>
6447
<xs:element name="half4" type="float4_type"/>
6448
<xs:element name="half2x1" type="float2_type"/>
6449
<xs:element name="half2x2" type="float2x2_type"/>
6450
<xs:element name="half2x3" type="float2x3_type"/>
6451
<xs:element name="half2x4" type="float2x4_type"/>
6452
<xs:element name="half3x1" type="float3_type"/>
6453
<xs:element name="half3x2" type="float3x2_type"/>
6454
<xs:element name="half3x3" type="float3x3_type"/>
6455
<xs:element name="half3x4" type="float3x4_type"/>
6456
<xs:element name="half4x1" type="float4_type"/>
6457
<xs:element name="half4x2" type="float4x2_type"/>
6458
<xs:element name="half4x3" type="float4x3_type"/>
6459
<xs:element name="half4x4" type="float4x4_type"/>
6460
<xs:element name="fixed" type="float_type"/>
6461
<xs:element name="fixed2" type="float2_type"/>
6462
<xs:element name="fixed3" type="float3_type"/>
6463
<xs:element name="fixed4" type="float4_type"/>
6464
<xs:element name="fixed2x1" type="float2_type"/>
6465
<xs:element name="fixed2x2" type="float2x2_type"/>
6466
<xs:element name="fixed2x3" type="float2x3_type"/>
6467
<xs:element name="fixed2x4" type="float2x4_type"/>
6468
<xs:element name="fixed3x1" type="float3_type"/>
6469
<xs:element name="fixed3x2" type="float3x2_type"/>
6470
<xs:element name="fixed3x3" type="float3x3_type"/>
6471
<xs:element name="fixed3x4" type="float3x4_type"/>
6472
<xs:element name="fixed4x1" type="float4_type"/>
6473
<xs:element name="fixed4x2" type="float4x2_type"/>
6474
<xs:element name="fixed4x3" type="float4x3_type"/>
6475
<xs:element name="fixed4x4" type="float4x4_type"/>
6476
<xs:element name="sampler1D" type="fx_sampler1D_type"/>
6477
<xs:element name="sampler2D" type="fx_sampler2D_type"/>
6478
<xs:element name="sampler3D" type="fx_sampler3D_type"/>
6479
<xs:element name="samplerRECT" type="fx_samplerRECT_type"/>
6480
<xs:element name="samplerCUBE" type="fx_samplerCUBE_type"/>
6481
<xs:element name="samplerDEPTH" type="fx_samplerDEPTH_type"/>
6482
<xs:element name="string" type="xs:string"/>
6483
<xs:element name="enum" type="gl_enumeration_type"/>
6484
<xs:element name="array" type="cg_array_type"/>
6485
<xs:element name="usertype" type="cg_user_type"/>
6488
<xs:complexType name="cg_user_type">
6491
Creates an instance of a structured class.
6494
<xs:sequence minOccurs="0">
6496
<xs:documentation>Some usertypes do not have data. They may be used only to implement interface functions.</xs:documentation>
6498
<xs:element name="setparam" type="cg_setparam_type" minOccurs="0" maxOccurs="unbounded">
6500
<xs:documentation>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.</xs:documentation>
6504
<xs:attribute name="typename" type="xs:token" use="required"/>
6505
<xs:attribute name="source" type="xs:NCName" use="optional">
6507
<xs:documentation>Reference a code or include element which defines the usertype
6512
<xs:complexType name="cg_newparam_type">
6515
Create a new, named param object in the CG Runtime, assign it a type, an initial value, and additional attributes at declaration time.
6519
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded">
6522
The annotate element allows you to specify an annotation for this new param.
6526
<xs:element name="semantic" type="xs:NCName" minOccurs="0">
6529
The semantic element allows you to specify a semantic for this new param.
6533
<xs:element name="modifier" type="fx_modifier_enum" minOccurs="0">
6536
The modifier element allows you to specify a modifier for this new param.
6540
<xs:group ref="cg_param_group"/>
6542
<xs:attribute name="sid" type="sid_type" use="required"/>
6544
<xs:complexType name="cg_pass_type">
6546
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
6547
<xs:element name="states" minOccurs="0">
6550
<xs:group ref="gl_pipeline_settings_group" minOccurs="0" maxOccurs="unbounded"/>
6554
<xs:element name="program" minOccurs="0">
6557
<xs:element name="shader" minOccurs="0" maxOccurs="unbounded">
6560
Declare and prepare a shader for execution in the rendering pipeline of a pass.
6565
<xs:element name="sources">
6567
<xs:documentation>collect the sources together for the shader. Use concat to make the final string. </xs:documentation>
6571
<xs:extension base="fx_sources_type">
6572
<xs:attribute name="entry" type="xs:token" use="required">
6574
<xs:documentation>entry function name for this shader</xs:documentation>
6578
</xs:complexContent>
6581
<xs:element name="compiler" type="fx_target_type" minOccurs="0" maxOccurs="unbounded"/>
6582
<xs:element name="bind_uniform" minOccurs="0" maxOccurs="unbounded">
6585
Binds values to uniform inputs of a shader.
6590
<xs:element name="param">
6593
References a predefined parameter in shader binding declarations.
6597
<xs:attribute name="ref" type="xs:NCName" use="required"/>
6600
<xs:group ref="cg_param_group"/>
6602
<xs:attribute name="symbol" type="xs:NCName" use="required">
6605
The identifier for a uniform input parameter to the shader (a formal function parameter or in-scope
6606
global) that will be bound to an external resource.
6613
<xs:attribute name="stage" type="fx_pipeline_stage_enum" use="required">
6616
In which pipeline stage this programmable shader is designed to execute, for example, VERTEX, FRAGMENT, etc.
6625
<xs:element name="evaluate" minOccurs="0">
6628
<xs:element name="color_target" type="fx_colortarget_type" minOccurs="0" maxOccurs="unbounded"/>
6629
<xs:element name="depth_target" type="fx_depthtarget_type" minOccurs="0" maxOccurs="unbounded"/>
6630
<xs:element name="stencil_target" type="fx_stenciltarget_type" minOccurs="0" maxOccurs="unbounded"/>
6631
<xs:element name="color_clear" type="fx_clearcolor_type" minOccurs="0" maxOccurs="unbounded"/>
6632
<xs:element name="depth_clear" type="fx_cleardepth_type" minOccurs="0" maxOccurs="unbounded"/>
6633
<xs:element name="stencil_clear" type="fx_clearstencil_type" minOccurs="0" maxOccurs="unbounded"/>
6634
<xs:element name="draw" type="fx_draw_type" minOccurs="0"/>
6638
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6640
<xs:attribute name="sid" type="sid_type" use="optional">
6643
The sid attribute is a text string value containing the sub-identifier of this element.
6644
This value must be unique within the scope of the parent element. Optional attribute.
6649
<xs:complexType name="profile_cg_type">
6652
Opens a block of CG platform-specific data types and technique declarations.
6656
<xs:element name="asset" type="asset_type" minOccurs="0"/>
6657
<xs:choice minOccurs="0" maxOccurs="unbounded">
6658
<xs:element name="code" type="fx_code_type"/>
6659
<xs:element name="include" type="fx_include_type"/>
6661
<xs:element name="newparam" type="cg_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
6662
<xs:element name="technique" maxOccurs="unbounded">
6665
Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method.
6670
<xs:element name="asset" type="asset_type" minOccurs="0">
6673
The technique element may contain an asset element.
6677
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
6678
<xs:element name="pass" type="cg_pass_type" maxOccurs="unbounded">
6681
A static declaration of all the render states, shaders, and settings for one rendering pipeline.
6685
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6687
<xs:attribute name="id" type="xs:ID">
6690
The id attribute is a text string containing the unique identifier of this element.
6691
This value must be unique within the instance document. Optional attribute.
6695
<xs:attribute name="sid" type="sid_type" use="required">
6698
The sid attribute is a text string value containing the sub-identifier of this element.
6699
This value must be unique within the scope of the parent element. Optional attribute.
6705
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
6707
<xs:attribute name="id" type="xs:ID" use="optional">
6710
The id attribute is a text string containing the unique identifier of this element.
6711
This value must be unique within the instance document. Optional attribute.
6715
<xs:attribute name="platform" type="xs:NCName" use="optional" default="PC">
6718
The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional
6723
<xs:simpleType name="gles_max_lights_index_type">
6724
<xs:restriction base="xs:nonNegativeInteger">
6725
<xs:minInclusive value="0"/>
6726
<xs:maxExclusive value="7"/>
6729
<xs:simpleType name="gles_max_clip_planes_index_type">
6730
<xs:restriction base="xs:nonNegativeInteger">
6731
<xs:minInclusive value="0"/>
6732
<xs:maxExclusive value="5"/>
6735
<xs:simpleType name="gles_max_texture_coords_index_type">
6736
<xs:restriction base="xs:nonNegativeInteger">
6737
<xs:minInclusive value="0"/>
6738
<xs:maxExclusive value="8"/>
6741
<xs:simpleType name="gles_max_texture_image_units_index_type">
6742
<xs:restriction base="xs:nonNegativeInteger">
6743
<xs:minInclusive value="0"/>
6744
<xs:maxExclusive value="31"/>
6747
<xs:simpleType name="gles_texenv_mode_enum">
6748
<xs:restriction base="xs:token">
6749
<xs:enumeration value="REPLACE">
6751
<xs:appinfo>value=0x1E01</xs:appinfo>
6754
<xs:enumeration value="MODULATE">
6756
<xs:appinfo>value=0x2100</xs:appinfo>
6759
<xs:enumeration value="DECAL">
6761
<xs:appinfo>value=0x2101</xs:appinfo>
6764
<xs:enumeration value="BLEND">
6766
<xs:appinfo>value=0x0BE2</xs:appinfo>
6769
<xs:enumeration value="ADD">
6771
<xs:appinfo>value=0x0104</xs:appinfo>
6776
<xs:complexType name="gles_texture_constant_type">
6777
<xs:attribute name="value" type="float4_type" use="optional"/>
6778
<xs:attribute name="param" type="xs:NCName" use="optional"/>
6780
<xs:complexType name="gles_texenv_command_type">
6782
<xs:element name="constant" type="gles_texture_constant_type" minOccurs="0"/>
6784
<xs:attribute name="operator" type="gles_texenv_mode_enum"/>
6785
<xs:attribute name="sampler" type="xs:NCName"/>
6787
<xs:simpleType name="gles_texcombiner_operator_rgb_enum">
6788
<xs:restriction base="xs:token">
6789
<xs:enumeration value="REPLACE">
6791
<xs:appinfo>value=0x1E01</xs:appinfo>
6794
<xs:enumeration value="MODULATE">
6796
<xs:appinfo>value=0x2100</xs:appinfo>
6799
<xs:enumeration value="ADD">
6801
<xs:appinfo>value=0x0104</xs:appinfo>
6804
<xs:enumeration value="ADD_SIGNED">
6806
<xs:appinfo>value=0x8574</xs:appinfo>
6809
<xs:enumeration value="INTERPOLATE">
6811
<xs:appinfo>value=0x8575</xs:appinfo>
6814
<xs:enumeration value="SUBTRACT">
6816
<xs:appinfo>value=0x84E7</xs:appinfo>
6819
<xs:enumeration value="DOT3_RGB">
6821
<xs:appinfo>value=0x86AE</xs:appinfo>
6824
<xs:enumeration value="DOT3_RGBA">
6826
<xs:appinfo>value=0x86AF</xs:appinfo>
6831
<xs:simpleType name="gles_texcombiner_operator_alpha_enum">
6832
<xs:restriction base="xs:token">
6833
<xs:enumeration value="REPLACE">
6835
<xs:appinfo>value=0x1E01</xs:appinfo>
6838
<xs:enumeration value="MODULATE">
6840
<xs:appinfo>value=0x2100</xs:appinfo>
6843
<xs:enumeration value="ADD">
6845
<xs:appinfo>value=0x0104</xs:appinfo>
6848
<xs:enumeration value="ADD_SIGNED">
6850
<xs:appinfo>value=0x8574</xs:appinfo>
6853
<xs:enumeration value="INTERPOLATE">
6855
<xs:appinfo>value=0x8575</xs:appinfo>
6858
<xs:enumeration value="SUBTRACT">
6860
<xs:appinfo>value=0x84E7</xs:appinfo>
6865
<xs:simpleType name="gles_texcombiner_source_enum">
6866
<xs:restriction base="xs:token">
6867
<xs:enumeration value="TEXTURE">
6869
<xs:appinfo>value=0x1702</xs:appinfo>
6872
<xs:enumeration value="CONSTANT">
6874
<xs:appinfo>value=0x8576</xs:appinfo>
6877
<xs:enumeration value="PRIMARY">
6879
<xs:appinfo>value=0x8577</xs:appinfo>
6882
<xs:enumeration value="PREVIOUS">
6884
<xs:appinfo>value=0x8578</xs:appinfo>
6889
<xs:simpleType name="gles_texcombiner_operand_rgb_enum">
6890
<xs:restriction base="gl_blend_enum">
6891
<xs:enumeration value="SRC_COLOR">
6893
<xs:appinfo>value=0x0300</xs:appinfo>
6896
<xs:enumeration value="ONE_MINUS_SRC_COLOR">
6898
<xs:appinfo>value=0x0301</xs:appinfo>
6901
<xs:enumeration value="SRC_ALPHA">
6903
<xs:appinfo>value=0x0302</xs:appinfo>
6906
<xs:enumeration value="ONE_MINUS_SRC_ALPHA">
6908
<xs:appinfo>value=0x0303</xs:appinfo>
6913
<xs:simpleType name="gles_texcombiner_operand_alpha_enum">
6914
<xs:restriction base="gl_blend_enum">
6915
<xs:enumeration value="SRC_ALPHA">
6917
<xs:appinfo>value=0x0302</xs:appinfo>
6920
<xs:enumeration value="ONE_MINUS_SRC_ALPHA">
6922
<xs:appinfo>value=0x0303</xs:appinfo>
6927
<xs:simpleType name="gles_texcombiner_argument_index_type">
6928
<xs:restriction base="xs:nonNegativeInteger">
6929
<xs:minInclusive value="0"/>
6930
<xs:maxInclusive value="2"/>
6933
<xs:complexType name="gles_texcombiner_argument_rgb_type">
6934
<xs:attribute name="source" type="gles_texcombiner_source_enum"/>
6935
<xs:attribute name="operand" type="gles_texcombiner_operand_rgb_enum" default="SRC_COLOR"/>
6936
<xs:attribute name="sampler" type="xs:NCName" use="optional"/>
6938
<xs:complexType name="gles_texcombiner_argument_alpha_type">
6939
<xs:attribute name="source" type="gles_texcombiner_source_enum"/>
6940
<xs:attribute name="operand" type="gles_texcombiner_operand_alpha_enum" default="SRC_ALPHA"/>
6941
<xs:attribute name="sampler" type="xs:NCName" use="optional"/>
6943
<xs:complexType name="gles_texcombiner_command_rgb_type">
6946
Defines the RGB portion of a texture_pipeline command. This is a combiner-mode texturing operation.
6950
<xs:element name="argument" type="gles_texcombiner_argument_rgb_type" maxOccurs="3"/>
6952
<xs:attribute name="operator" type="gles_texcombiner_operator_rgb_enum"/>
6953
<xs:attribute name="scale" type="xs:float" use="optional"/>
6955
<xs:complexType name="gles_texcombiner_command_alpha_type">
6957
<xs:element name="argument" type="gles_texcombiner_argument_alpha_type" maxOccurs="3"/>
6959
<xs:attribute name="operator" type="gles_texcombiner_operator_alpha_enum"/>
6960
<xs:attribute name="scale" type="xs:float" use="optional"/>
6962
<xs:complexType name="gles_texcombiner_command_type">
6964
<xs:element name="constant" type="gles_texture_constant_type" minOccurs="0"/>
6965
<xs:element name="RGB" type="gles_texcombiner_command_rgb_type" minOccurs="0"/>
6966
<xs:element name="alpha" type="gles_texcombiner_command_alpha_type" minOccurs="0"/>
6969
<xs:complexType name="gles_texture_pipeline_type">
6972
Defines a set of texturing commands that will be converted into multitexturing operations using glTexEnv in regular and combiner mode.
6975
<xs:choice maxOccurs="unbounded">
6976
<xs:element name="texcombiner" type="gles_texcombiner_command_type">
6979
Defines a texture_pipeline command. This is a combiner-mode texturing operation.
6983
<xs:element name="texenv" type="gles_texenv_command_type">
6986
Defines a texture_pipeline command. It is a simple noncombiner mode of texturing operations.
6990
<xs:element name="extra" type="extra_type">
6993
The extra element may appear any number of times.
6994
OpenGL ES extensions may be used here.
6999
<xs:attribute name="sid" type="sid_type">
7002
The sid attribute is a text string value containing the sub-identifier of this element.
7003
This value must be unique within the scope of the parent element. Optional attribute.
7008
<xs:simpleType name="gles_sampler_wrap_enum">
7009
<xs:restriction base="xs:NMTOKEN">
7010
<xs:enumeration value="REPEAT"/>
7011
<xs:enumeration value="CLAMP"/>
7012
<xs:enumeration value="CLAMP_TO_EDGE"/>
7013
<xs:enumeration value="MIRRORED_REPEAT">
7016
supported by GLES 1.1 only
7022
<xs:group name="gles_sampler_states_group">
7024
<xs:element name="wrap_s" type="gles_sampler_wrap_enum" default="REPEAT" minOccurs="0"/>
7025
<xs:element name="wrap_t" type="gles_sampler_wrap_enum" default="REPEAT" minOccurs="0"/>
7026
<xs:element name="minfilter" type="fx_sampler_min_filter_enum" default="LINEAR" minOccurs="0"/>
7027
<xs:element name="magfilter" type="fx_sampler_mag_filter_enum" default="LINEAR" minOccurs="0"/>
7028
<xs:element name="mipfilter" type="fx_sampler_mip_filter_enum" default="NEAREST" minOccurs="0"/>
7029
<xs:element name="mip_max_level" type="xs:unsignedByte" default="255" minOccurs="0"/>
7030
<xs:element name="mip_bias" type="xs:float" default="0.0" minOccurs="0"/>
7031
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
7034
The extra element may appear any number of times.
7035
OpenGL ES extensions may be used here.
7041
<xs:complexType name="gles_sampler_type">
7043
<xs:documentation>Sampling state that can be sharable between samplers because there is often heavy re-use</xs:documentation>
7046
<xs:element name="instance_image" type="instance_image_type" minOccurs="0"/>
7047
<xs:element name="texcoord" minOccurs="0">
7049
<xs:attribute name="semantic" type="xs:NCName"/>
7052
<xs:group ref="gles_sampler_states_group"/>
7055
<xs:simpleType name="gles_stencil_op_enum">
7056
<xs:restriction base="xs:string">
7057
<xs:enumeration value="KEEP">
7059
<xs:appinfo>value=0x1E00</xs:appinfo>
7062
<xs:enumeration value="ZERO">
7064
<xs:appinfo>value=0x0</xs:appinfo>
7067
<xs:enumeration value="REPLACE">
7069
<xs:appinfo>value=0x1E01</xs:appinfo>
7072
<xs:enumeration value="INCR">
7074
<xs:appinfo>value=0x1E02</xs:appinfo>
7077
<xs:enumeration value="DECR">
7079
<xs:appinfo>value=0x1E03</xs:appinfo>
7082
<xs:enumeration value="INVERT">
7084
<xs:appinfo>value=0x150A</xs:appinfo>
7089
<xs:simpleType name="gles_enumeration_type">
7090
<xs:union memberTypes="gl_blend_enum gl_face_enum gl_func_enum gl_stencil_op_enum gl_material_enum gl_fog_enum gl_front_face_enum gl_light_model_color_control_enum gl_logic_op_enum gl_polygon_mode_enum gl_shade_model_enum"/>
7092
<xs:group name="gles_pipeline_settings_group">
7095
A group that contains the renderstates available for the GLES profile.
7099
<xs:element name="alpha_func">
7102
<xs:element name="func">
7104
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
7105
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7108
<xs:element name="value">
7110
<xs:attribute name="value" type="gl_alpha_value_type" use="optional" default="0.0"/>
7111
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7117
<xs:element name="blend_func">
7120
<xs:element name="src">
7122
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ONE"/>
7123
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7126
<xs:element name="dest">
7128
<xs:attribute name="value" type="gl_blend_enum" use="optional" default="ZERO"/>
7129
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7135
<xs:element name="clip_plane">
7137
<xs:attribute name="value" type="bool4_type" use="optional"/>
7138
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7139
<xs:attribute name="index" type="gles_max_clip_planes_index_type" use="required"/>
7142
<xs:element name="color_mask">
7144
<xs:attribute name="value" type="bool4_type" use="optional"/>
7145
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7148
<xs:element name="cull_face">
7150
<xs:attribute name="value" type="gl_face_enum" use="optional" default="BACK"/>
7151
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7154
<xs:element name="depth_func">
7156
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
7157
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7160
<xs:element name="depth_mask">
7162
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7163
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7166
<xs:element name="depth_range">
7168
<xs:attribute name="value" type="float2_type" use="optional" default="0 1"/>
7169
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7172
<xs:element name="fog_color">
7174
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
7175
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7178
<xs:element name="fog_density">
7180
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7181
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7184
<xs:element name="fog_mode">
7186
<xs:attribute name="value" type="gl_fog_enum" use="optional" default="EXP"/>
7187
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7190
<xs:element name="fog_start">
7192
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
7193
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7196
<xs:element name="fog_end">
7198
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7199
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7202
<xs:element name="front_face">
7204
<xs:attribute name="value" type="gl_front_face_enum" use="optional" default="CCW"/>
7205
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7208
<xs:element name="logic_op">
7210
<xs:attribute name="value" type="gl_logic_op_enum" use="optional" default="COPY"/>
7211
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7214
<xs:element name="light_ambient">
7216
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 1"/>
7217
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7218
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7221
<xs:element name="light_diffuse">
7223
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
7224
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7225
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7228
<xs:element name="light_specular">
7230
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 0"/>
7231
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7232
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7235
<xs:element name="light_position">
7237
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 1 0"/>
7238
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7239
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7242
<xs:element name="light_constant_attenuation">
7244
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7245
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7246
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7249
<xs:element name="light_linear_attenuation">
7251
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7252
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7253
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7256
<xs:element name="light_quadratic_attenuation">
7258
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7259
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7260
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7263
<xs:element name="light_spot_cutoff">
7265
<xs:attribute name="value" type="float_type" use="optional" default="180"/>
7266
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7267
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7270
<xs:element name="light_spot_direction">
7272
<xs:attribute name="value" type="float3_type" use="optional" default="0 0 -1"/>
7273
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7274
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7277
<xs:element name="light_spot_exponent">
7279
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
7280
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7281
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7284
<xs:element name="light_model_ambient">
7286
<xs:attribute name="value" type="float4_type" use="optional" default="0.2 0.2 0.2 1.0"/>
7287
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7290
<xs:element name="line_width">
7292
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7293
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7296
<xs:element name="material_ambient">
7298
<xs:attribute name="value" type="float4_type" use="optional" default="0.2 0.2 0.2 1.0"/>
7299
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7302
<xs:element name="material_diffuse">
7304
<xs:attribute name="value" type="float4_type" use="optional" default="0.8 0.8 0.8 1.0"/>
7305
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7308
<xs:element name="material_emission">
7310
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 1"/>
7311
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7314
<xs:element name="material_shininess">
7316
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
7317
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7320
<xs:element name="material_specular">
7322
<xs:attribute name="value" type="float4_type" use="optional" default="0 0 0 1"/>
7323
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7326
<xs:element name="model_view_matrix">
7328
<xs:attribute name="value" type="float4x4_type" use="optional" default="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1"/>
7329
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7332
<xs:element name="point_distance_attenuation">
7334
<xs:attribute name="value" type="float3_type" use="optional" default="1 0 0"/>
7335
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7338
<xs:element name="point_fade_threshold_size">
7340
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7341
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7344
<xs:element name="point_size">
7346
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7347
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7350
<xs:element name="point_size_min">
7352
<xs:attribute name="value" type="float_type" use="optional" default="0"/>
7353
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7356
<xs:element name="point_size_max">
7358
<xs:attribute name="value" type="float_type" use="optional" default="1"/>
7359
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7362
<xs:element name="polygon_offset">
7364
<xs:attribute name="value" type="float2_type" use="optional" default="0 0"/>
7365
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7368
<xs:element name="projection_matrix">
7370
<xs:attribute name="value" type="float4x4_type" use="optional" default="1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1"/>
7371
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7374
<xs:element name="scissor">
7376
<xs:attribute name="value" type="int4_type" use="optional"/>
7377
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7380
<xs:element name="shade_model">
7382
<xs:attribute name="value" type="gl_shade_model_enum" use="optional" default="SMOOTH"/>
7383
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7386
<xs:element name="stencil_func">
7389
<xs:element name="func">
7391
<xs:attribute name="value" type="gl_func_enum" use="optional" default="ALWAYS"/>
7392
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7395
<xs:element name="ref">
7397
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="0"/>
7398
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7401
<xs:element name="mask">
7403
<xs:attribute name="value" type="xs:unsignedByte" use="optional" default="255"/>
7404
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7410
<xs:element name="stencil_mask">
7412
<xs:attribute name="value" type="int_type" use="optional" default="4294967295"/>
7413
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7416
<xs:element name="stencil_op">
7419
<xs:element name="fail">
7421
<xs:attribute name="value" type="gles_stencil_op_enum" use="optional" default="KEEP"/>
7422
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7425
<xs:element name="zfail">
7427
<xs:attribute name="value" type="gles_stencil_op_enum" use="optional" default="KEEP"/>
7428
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7431
<xs:element name="zpass">
7433
<xs:attribute name="value" type="gles_stencil_op_enum" use="optional" default="KEEP"/>
7434
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7440
<xs:element name="texture_pipeline">
7443
<xs:element name="value" type="gles_texture_pipeline_type" minOccurs="0"/>
7447
<xs:element name="alpha_test_enable">
7449
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7450
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7453
<xs:element name="blend_enable">
7455
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7456
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7459
<xs:element name="clip_plane_enable">
7461
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7462
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7463
<xs:attribute name="index" type="gles_max_clip_planes_index_type"/>
7466
<xs:element name="color_logic_op_enable">
7468
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7469
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7472
<xs:element name="color_material_enable">
7474
<xs:attribute name="value" type="xs:boolean" use="optional" default="true"/>
7475
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7478
<xs:element name="cull_face_enable">
7480
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7481
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7484
<xs:element name="depth_test_enable">
7486
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7487
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7490
<xs:element name="dither_enable">
7492
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7493
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7496
<xs:element name="fog_enable">
7498
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7499
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7502
<xs:element name="light_enable">
7504
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7505
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7506
<xs:attribute name="index" type="gles_max_lights_index_type" use="required"/>
7509
<xs:element name="lighting_enable">
7511
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7512
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7515
<xs:element name="light_model_two_side_enable">
7517
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7518
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7521
<xs:element name="line_smooth_enable">
7523
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7524
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7527
<xs:element name="multisample_enable">
7529
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7530
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7533
<xs:element name="normalize_enable">
7535
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7536
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7539
<xs:element name="point_smooth_enable">
7541
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7542
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7545
<xs:element name="polygon_offset_fill_enable">
7547
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7548
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7551
<xs:element name="rescale_normal_enable">
7553
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7554
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7557
<xs:element name="sample_alpha_to_coverage_enable">
7559
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7560
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7563
<xs:element name="sample_alpha_to_one_enable">
7565
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7566
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7569
<xs:element name="sample_coverage_enable">
7571
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7572
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7575
<xs:element name="scissor_test_enable">
7577
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7578
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7581
<xs:element name="stencil_test_enable">
7583
<xs:attribute name="value" type="xs:boolean" use="optional" default="false"/>
7584
<xs:attribute name="param" type="xs:NCName" use="optional"/>
7589
<xs:group name="gles_param_group">
7592
A group that defines the available variable types for GLES parameters.
7596
<xs:element name="bool" type="xs:boolean"/>
7597
<xs:element name="bool2" type="bool2_type"/>
7598
<xs:element name="bool3" type="bool3_type"/>
7599
<xs:element name="bool4" type="bool4_type"/>
7600
<xs:element name="int" type="int_type"/>
7601
<xs:element name="int2" type="int2_type"/>
7602
<xs:element name="int3" type="int3_type"/>
7603
<xs:element name="int4" type="int4_type"/>
7604
<xs:element name="float" type="float_type"/>
7605
<xs:element name="float2" type="float2_type"/>
7606
<xs:element name="float3" type="float3_type"/>
7607
<xs:element name="float4" type="float4_type"/>
7608
<xs:element name="float1x1" type="float_type"/>
7609
<xs:element name="float1x2" type="float2_type"/>
7610
<xs:element name="float1x3" type="float3_type"/>
7611
<xs:element name="float1x4" type="float4_type"/>
7612
<xs:element name="float2x1" type="float2_type"/>
7613
<xs:element name="float2x2" type="float2x2_type"/>
7614
<xs:element name="float2x3" type="float2x3_type"/>
7615
<xs:element name="float2x4" type="float2x4_type"/>
7616
<xs:element name="float3x1" type="float3_type"/>
7617
<xs:element name="float3x2" type="float3x2_type"/>
7618
<xs:element name="float3x3" type="float3x3_type"/>
7619
<xs:element name="float3x4" type="float3x4_type"/>
7620
<xs:element name="float4x1" type="float4_type"/>
7621
<xs:element name="float4x2" type="float4x2_type"/>
7622
<xs:element name="float4x3" type="float4x3_type"/>
7623
<xs:element name="float4x4" type="float4x4_type"/>
7624
<xs:element name="sampler2D" type="gles_sampler_type"/>
7625
<xs:element name="enum" type="gles_enumeration_type"/>
7628
<xs:complexType name="gles_newparam_type">
7631
Create a new, named param object in the GLES Runtime, assign it a type, an initial value, and additional attributes at declaration time.
7635
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded">
7638
The annotate element allows you to specify an annotation for this new param.
7642
<xs:element name="semantic" type="xs:NCName" minOccurs="0">
7645
The semantic element allows you to specify a semantic for this new param.
7649
<xs:element name="modifier" type="fx_modifier_enum" minOccurs="0">
7652
The modifier element allows you to specify a modifier for this new param.
7656
<xs:group ref="gles_param_group"/>
7658
<xs:attribute name="sid" type="sid_type" use="required">
7661
The sid attribute is a text string value containing the sub-identifier of this element.
7662
This value must be unique within the scope of the parent element.
7667
<xs:complexType name="profile_gles_type">
7670
Opens a block of GLES platform-specific data types and technique declarations.
7674
<xs:element name="asset" type="asset_type" minOccurs="0"/>
7675
<xs:element name="newparam" type="gles_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
7676
<xs:element name="technique" maxOccurs="unbounded">
7679
Holds a description of the textures, samplers, shaders, parameters, and passes necessary for rendering this effect using one method.
7684
<xs:element name="asset" type="asset_type" minOccurs="0"/>
7685
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
7686
<xs:element name="pass" maxOccurs="unbounded">
7689
A static declaration of all the render states, shaders, and settings for one rendering pipeline.
7694
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded"/>
7695
<xs:element name="states" minOccurs="0">
7698
<xs:group ref="gles_pipeline_settings_group" minOccurs="0" maxOccurs="unbounded"/>
7702
<xs:element name="evaluate" minOccurs="0">
7705
<xs:element name="color_target" type="fx_colortarget_type" minOccurs="0" maxOccurs="unbounded"/>
7706
<xs:element name="depth_target" type="fx_depthtarget_type" minOccurs="0" maxOccurs="unbounded"/>
7707
<xs:element name="stencil_target" type="fx_stenciltarget_type" minOccurs="0" maxOccurs="unbounded"/>
7708
<xs:element name="color_clear" type="fx_clearcolor_type" minOccurs="0" maxOccurs="unbounded"/>
7709
<xs:element name="depth_clear" type="fx_cleardepth_type" minOccurs="0" maxOccurs="unbounded"/>
7710
<xs:element name="stencil_clear" type="fx_clearstencil_type" minOccurs="0" maxOccurs="unbounded"/>
7711
<xs:element name="draw" type="fx_draw_type" minOccurs="0"/>
7715
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
7717
<xs:attribute name="sid" type="sid_type" use="optional">
7720
The sid attribute is a text string value containing the sub-identifier of this element.
7721
This value must be unique within the scope of the parent element. Optional attribute.
7727
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
7729
<xs:attribute name="id" type="xs:ID"/>
7730
<xs:attribute name="sid" type="sid_type" use="required">
7733
The sid attribute is a text string value containing the sub-identifier of this element.
7734
This value must be unique within the scope of the parent element.
7740
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
7742
<xs:attribute name="id" type="xs:ID" use="optional">
7745
The id attribute is a text string containing the unique identifier of this element.
7746
This value must be unique within the instance document. Optional attribute.
7750
<xs:attribute name="platform" type="xs:NCName" use="optional" default="PC">
7753
The type of platform. This is a vendor-defined character string that indicates the platform or capability target for the technique. Optional
7758
<xs:group name="fx_profile_group">
7761
A group that specifies the allowable COLLADA FX profiles.
7765
<xs:element name="profile_COMMON" type="profile_common_type"/>
7766
<xs:element name="profile_BRIDGE" type="profile_bridge_type"/>
7767
<xs:element name="profile_GLES2" type="profile_gles2_type"/>
7768
<xs:element name="profile_GLSL" type="profile_glsl_type"/>
7769
<xs:element name="profile_CG" type="profile_cg_type"/>
7770
<xs:element name="profile_GLES" type="profile_gles_type"/>
7773
<xs:complexType name="effect_type">
7776
A self contained description of a shader effect.
7780
<xs:element name="asset" type="asset_type" minOccurs="0">
7783
The effect element may contain an asset element.
7787
<xs:element name="annotate" type="fx_annotate_type" minOccurs="0" maxOccurs="unbounded">
7790
The annotate element allows you to specify an annotation on this effect.
7794
<xs:element name="newparam" type="fx_newparam_type" minOccurs="0" maxOccurs="unbounded">
7797
The newparam element allows you to create new effect parameters which can be shared by multipe profiles.
7801
<xs:group ref="fx_profile_group" maxOccurs="unbounded"/>
7802
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
7805
The extra element may appear any number of times.
7810
<xs:attribute name="id" type="xs:ID" use="required">
7813
The id attribute is a text string containing the unique identifier of this element.
7814
This value must be unique within the instance document. Optional attribute.
7818
<xs:attribute name="name" type="xs:token">
7821
The name attribute is the text string name of this element. Optional attribute.
7826
<xs:complexType name="library_effects_type">
7829
The library_effects element declares a module of effect elements.
7833
<xs:element name="asset" type="asset_type" minOccurs="0">
7836
The library_effects element may contain an asset element.
7840
<xs:element name="effect" type="effect_type" maxOccurs="unbounded">
7843
There must be at least one effect element.
7847
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
7850
The extra element may appear any number of times.
7855
<xs:attribute name="id" type="xs:ID">
7858
The id attribute is a text string containing the unique identifier of this element.
7859
This value must be unique within the instance document. Optional attribute.
7863
<xs:attribute name="name" type="xs:token">
7866
The name attribute is the text string name of this element. Optional attribute.
7871
<xs:complexType name="box_type">
7874
An axis-aligned, centered box primitive.
7878
<xs:element name="half_extents" type="float3_type">
7881
3 float values that represent the extents of the box
7885
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
7888
The extra element may appear any number of times.
7894
<xs:complexType name="plane_type">
7897
An infinite plane primitive.
7901
<xs:element name="equation" type="float4_type">
7904
4 float values that represent the coefficients for the plane's equation: Ax + By + Cz + D = 0
7908
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
7911
The extra element may appear any number of times.
7917
<xs:complexType name="sphere_type">
7920
A centered sphere primitive.
7924
<xs:element name="radius" type="float_type">
7927
A float value that represents the radius of the sphere
7931
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
7934
The extra element may appear any number of times.
7940
<xs:complexType name="ellipsoid_type">
7942
<xs:element name="size" type="float3_type"/>
7945
<xs:complexType name="cylinder_type">
7948
A cylinder primitive that is centered on, and aligned with. the local Y axis.
7952
<xs:element name="height" type="float_type">
7955
A float value that represents the length of the cylinder along the Y axis.
7959
<xs:element name="radius" type="float2_type">
7962
float2 values that represent the radii of the cylinder.
7966
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
7969
The extra element may appear any number of times.
7975
<xs:complexType name="capsule_type">
7978
A capsule primitive that is centered on and aligned with the local Y axis.
7982
<xs:element name="height" type="float_type">
7985
A float value that represents the length of the line segment connecting the centers
7986
of the capping hemispheres.
7990
<xs:element name="radius" type="float3_type">
7993
Three float values that represent the radii of the capsule (it may be elliptical).
7997
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8000
The extra element may appear any number of times.
8006
<xs:complexType name="force_field_type">
8009
A general container for force-fields. At the moment, it only has techniques and extra elements.
8013
<xs:element name="asset" type="asset_type" minOccurs="0">
8016
The force_field element may contain an asset element.
8020
<xs:element name="technique" type="technique_type" maxOccurs="unbounded">
8023
This element must contain at least one non-common profile technique.
8027
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8030
The extra element may appear any number of times.
8035
<xs:attribute name="id" type="xs:ID">
8038
The id attribute is a text string containing the unique identifier of this element. This value
8039
must be unique within the instance document. Optional attribute.
8043
<xs:attribute name="name" type="xs:token">
8046
The name attribute is the text string name of this element. Optional attribute.
8051
<xs:complexType name="library_force_fields_type">
8054
The library_force_fields element declares a module of force_field elements.
8058
<xs:element name="asset" type="asset_type" minOccurs="0">
8061
The library_force_fields element may contain an asset element.
8065
<xs:element name="force_field" type="force_field_type" maxOccurs="unbounded">
8068
There must be at least one force_field element.
8072
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8075
The extra element may appear any number of times.
8080
<xs:attribute name="id" type="xs:ID">
8083
The id attribute is a text string containing the unique identifier of this element.
8084
This value must be unique within the instance document. Optional attribute.
8088
<xs:attribute name="name" type="xs:token">
8091
The name attribute is the text string name of this element. Optional attribute.
8096
<xs:complexType name="physics_material_type">
8099
This element defines the physical properties of an object. It contains a technique/profile with
8100
parameters. The COMMON profile defines the built-in names, such as static_friction.
8104
<xs:element name="asset" type="asset_type" minOccurs="0">
8107
The physics_material element may contain an asset element.
8111
<xs:element name="technique_common">
8114
The technique_common element specifies the physics_material information for the common profile
8115
which all COLLADA implementations need to support.
8120
<xs:element name="dynamic_friction" type="targetable_float_type" minOccurs="0">
8123
Dynamic friction coefficient
8127
<xs:element name="restitution" type="targetable_float_type" minOccurs="0">
8130
The proportion of the kinetic energy preserved in the impact (typically ranges from 0.0 to 1.0)
8134
<xs:element name="static_friction" type="targetable_float_type" minOccurs="0">
8137
Static friction coefficient
8144
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
8147
This element may contain any number of non-common profile techniques.
8151
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8154
The extra element may appear any number of times.
8159
<xs:attribute name="id" type="xs:ID">
8162
The id attribute is a text string containing the unique identifier of this element.
8163
This value must be unique within the instance document. Optional attribute.
8167
<xs:attribute name="name" type="xs:token">
8170
The name attribute is the text string name of this element. Optional attribute.
8175
<xs:complexType name="library_physics_materials_type">
8178
The library_physics_materials element declares a module of physics_material elements.
8182
<xs:element name="asset" type="asset_type" minOccurs="0">
8185
The library_physics_materials element may contain an asset element.
8189
<xs:element name="physics_material" type="physics_material_type" maxOccurs="unbounded">
8192
There must be at least one physics_material element.
8196
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8199
The extra element may appear any number of times.
8204
<xs:attribute name="id" type="xs:ID">
8207
The id attribute is a text string containing the unique identifier of this element.
8208
This value must be unique within the instance document. Optional attribute.
8212
<xs:attribute name="name" type="xs:token">
8215
The name attribute is the text string name of this element. Optional attribute.
8220
<xs:simpleType name="spring_enum">
8221
<xs:restriction base="xs:NMTOKEN">
8222
<xs:enumeration value="LINEAR"/>
8223
<xs:enumeration value="ANGULAR"/>
8226
<xs:simpleType name="common_profile_input_enum">
8228
<xs:appinfo>constant-strings</xs:appinfo>
8230
<xs:restriction base="xs:NMTOKEN">
8231
<xs:enumeration value="BINORMAL"/>
8232
<xs:enumeration value="COLOR"/>
8233
<xs:enumeration value="CONTINUITY"/>
8234
<xs:enumeration value="IMAGE"/>
8235
<xs:enumeration value="IN_TANGENT"/>
8236
<xs:enumeration value="INPUT"/>
8237
<xs:enumeration value="INTERPOLATION"/>
8238
<xs:enumeration value="INV_BIND_MATRIX"/>
8239
<xs:enumeration value="JOINT"/>
8240
<xs:enumeration value="LINEAR_STEPS"/>
8241
<xs:enumeration value="MORPH_TARGET"/>
8242
<xs:enumeration value="MORPH_WEIGHT"/>
8243
<xs:enumeration value="NORMAL"/>
8244
<xs:enumeration value="OUTPUT"/>
8245
<xs:enumeration value="OUT_TANGENT"/>
8246
<xs:enumeration value="POSITION"/>
8247
<xs:enumeration value="TANGENT"/>
8248
<xs:enumeration value="TEXBINORMAL"/>
8249
<xs:enumeration value="TEXCOORD"/>
8250
<xs:enumeration value="TEXTANGENT"/>
8251
<xs:enumeration value="UV"/>
8252
<xs:enumeration value="VERTEX"/>
8253
<xs:enumeration value="WEIGHT"/>
8256
<xs:simpleType name="common_profile_param_enum">
8258
<xs:appinfo>constant-strings</xs:appinfo>
8260
<xs:restriction base="xs:NMTOKEN">
8261
<xs:enumeration value="A"/>
8262
<xs:enumeration value="ANGLE"/>
8263
<xs:enumeration value="B"/>
8264
<xs:enumeration value="DOUBLE_SIDED"/>
8265
<xs:enumeration value="G"/>
8266
<xs:enumeration value="P"/>
8267
<xs:enumeration value="Q"/>
8268
<xs:enumeration value="R"/>
8269
<xs:enumeration value="S"/>
8270
<xs:enumeration value="T"/>
8271
<xs:enumeration value="TIME"/>
8272
<xs:enumeration value="U"/>
8273
<xs:enumeration value="V"/>
8274
<xs:enumeration value="W"/>
8275
<xs:enumeration value="X"/>
8276
<xs:enumeration value="Y"/>
8277
<xs:enumeration value="Z"/>
8280
<xs:complexType name="edges_type">
8282
<xs:documentation> This element defines all the edges used in the brep structure. </xs:documentation>
8285
<xs:element name="input" type="input_local_offset_type" minOccurs="4" maxOccurs="unbounded">
8288
Five input elements are needed to define an
8289
edge, one for referencing the curve, two for
8290
referencing the two vertices, one for the
8291
orientation of the first vertex (the second
8292
is the opposite of the first) and one for
8293
the parametric values of the curve.
8297
<xs:element name="p" type="p_type" minOccurs="0">
8299
<xs:documentation> The indices for refrencing curves and vertices. </xs:documentation>
8302
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8304
<xs:attribute name="id" type="xs:ID" use="required"/>
8305
<xs:attribute name="name" type="xs:token"/>
8306
<xs:attribute name="count" type="xs:int" use="required"/>
8308
<xs:complexType name="wires_type">
8310
<xs:documentation> This element defines all the wires used in the brep structure. </xs:documentation>
8313
<xs:element name="input" type="input_local_offset_type" minOccurs="2" maxOccurs="unbounded">
8316
One input elements is needed to define a
8317
wire by its edges. The second is needed for
8318
orientation of the edges
8322
<xs:element name="vcount" type="list_of_uints_type"/>
8323
<xs:element name="p" type="p_type" minOccurs="0">
8326
The indices of the edges for each wire.
8330
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8332
<xs:attribute name="id" type="xs:ID" use="required"/>
8333
<xs:attribute name="name" type="xs:token"/>
8334
<xs:attribute name="count" type="uint_type" use="required"/>
8336
<xs:complexType name="faces_type">
8338
<xs:documentation> This element defines all the faces used in the brep structure. </xs:documentation>
8341
<xs:element name="input" type="input_local_offset_type" minOccurs="3" maxOccurs="unbounded">
8344
Two input elements are needed to define a
8345
face, one for referencing the surface and
8346
one for referencing the wires themselfs. The
8347
third is needed for the orientation of each
8352
<xs:element name="vcount" type="list_of_uints_type"/>
8353
<xs:element name="p" type="p_type" minOccurs="0">
8356
The indices for referencing the surface and
8357
wires for each face.
8361
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8363
<xs:attribute name="id" type="xs:ID" use="required"/>
8364
<xs:attribute name="name" type="xs:token"/>
8365
<xs:attribute name="count" type="uint_type" use="required"/>
8367
<xs:complexType name="shells_type">
8369
<xs:documentation> This element defines all the shells used in the brep structure. </xs:documentation>
8372
<xs:element name="input" type="input_local_offset_type" minOccurs="2" maxOccurs="unbounded">
8375
One input elements is needed to define a
8376
shell by its faces. The second is need for
8377
the orientation of the faces
8381
<xs:element name="vcount" type="list_of_uints_type"/>
8382
<xs:element name="p" type="p_type" minOccurs="0">
8385
The indices of the faces for each shell.
8389
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8391
<xs:attribute name="id" type="xs:ID" use="required"/>
8392
<xs:attribute name="name" type="xs:token"/>
8393
<xs:attribute name="count" type="uint_type" use="required"/>
8395
<xs:complexType name="solids_type">
8397
<xs:documentation> This element defines all the solids used in the brep structure. </xs:documentation>
8400
<xs:element name="input" type="input_local_offset_type" minOccurs="2" maxOccurs="unbounded">
8403
One input elements is needed to define a
8404
solid by its shells. The second is need fo
8405
the orientation of the shells.
8409
<xs:element name="vcount" type="list_of_uints_type"/>
8410
<xs:element name="p" type="p_type" minOccurs="0">
8413
The indices of the shells for each solid.
8417
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8419
<xs:attribute name="id" type="xs:ID" use="required"/>
8420
<xs:attribute name="name" type="xs:token"/>
8421
<xs:attribute name="count" type="uint_type" use="required"/>
8423
<xs:complexType name="line_type">
8425
<xs:documentation> 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. </xs:documentation>
8428
<xs:element name="origin" type="float3_type"/>
8429
<xs:element name="direction" type="float3_type"/>
8430
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8433
<xs:complexType name="circle_type">
8435
<xs:documentation> 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 [. </xs:documentation>
8438
<xs:element name="radius" type="float_type"/>
8439
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8442
<xs:complexType name="ellipse_type">
8444
<xs:documentation> 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 [. </xs:documentation>
8447
<xs:element name="radius" type="float2_type"/>
8448
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8451
<xs:complexType name="parabola_type">
8453
<xs:documentation> 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 [. </xs:documentation>
8456
<xs:element name="focal" type="float_type"/>
8457
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8460
<xs:complexType name="hyperbola_type">
8462
<xs:documentation> 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 [. </xs:documentation>
8465
<xs:element name="radius" type="float2_type"/>
8466
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8469
<xs:complexType name="torus_type">
8471
<xs:element name="radius" type="float2_type"/>
8472
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8475
<xs:complexType name="pcurves_type">
8477
<xs:element name="input" type="input_local_offset_type" minOccurs="3" maxOccurs="unbounded">
8480
The first two inputs are needed to reference
8481
the edge-face-connection. The third input
8482
references the pcurve.
8486
<xs:element name="vcount" type="list_of_uints_type"/>
8487
<xs:element name="p" type="p_type" minOccurs="0"/>
8488
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
8490
<xs:attribute name="id" type="xs:ID" use="required"/>
8491
<xs:attribute name="name" type="xs:token" use="optional"/>
8492
<xs:attribute name="count" type="uint_type" use="required"/>
8494
<xs:complexType name="sidref_array_type">
8497
The SIDREF_array element declares the storage for a homogenous array of SID reference values.
8501
<xs:extension base="list_of_sidrefs_type">
8502
<xs:attribute name="id" type="xs:ID">
8505
The id attribute is a text string
8506
containing the unique identifier of this
8507
element. This value must be unique
8508
within the instance document. Optional
8513
<xs:attribute name="name" type="xs:token">
8516
The name attribute is the text string
8517
name of this element. Optional
8522
<xs:attribute name="count" type="uint_type" use="required">
8526
The count attribute indicates the number
8527
of values in the array. Required
8535
<xs:complexType name="source_type">
8538
The source element declares a data repository that provides values according to the semantics of an
8539
input element that refers to it.
8543
<xs:element name="asset" type="asset_type" minOccurs="0">
8546
The source element may contain an asset element.
8550
<xs:choice minOccurs="0">
8551
<xs:element name="token_array" type="token_array_type">
8554
The source element may contain a token_array.
8558
<xs:element name="IDREF_array" type="idref_array_type">
8561
The source element may contain an
8566
<xs:element name="Name_array" type="name_array_type">
8569
The source element may contain a
8574
<xs:element name="bool_array" type="bool_array_type">
8577
The source element may contain a
8582
<xs:element name="float_array" type="float_array_type">
8585
The source element may contain a
8590
<xs:element name="int_array" type="int_array_type">
8593
The source element may contain an
8598
<xs:element name="SIDREF_array" type="sidref_array_type"/>
8600
<xs:element name="technique_common" minOccurs="0">
8603
The technique common specifies the common method for accessing this source element's data.
8608
<xs:element name="accessor" type="accessor_type">
8611
The source's technique_common must have one and only one accessor.
8618
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
8621
This element may contain any number of non-common profile techniques.
8626
<xs:attribute name="id" type="xs:ID" use="required">
8629
The id attribute is a text string containing the unique identifier of this element.
8630
This value must be unique within the instance document. Required attribute.
8634
<xs:attribute name="name" type="xs:token">
8637
The name attribute is the text string name of this element. Optional attribute.
8642
<xs:complexType name="animation_type">
8645
The animation element categorizes the declaration of animation information. The animation
8646
hierarchy contains elements that describe the animation's key-frame data and sampler functions,
8647
ordered in such a way to group together animations that should be executed together.
8651
<xs:element name="asset" type="asset_type" minOccurs="0">
8654
The animation element may contain an asset element.
8660
<xs:element name="source" type="source_type" maxOccurs="unbounded">
8663
The animation element may contain any number of source elements.
8669
<xs:element name="sampler" type="sampler_type" maxOccurs="unbounded">
8672
The animation element may contain any number of sampler elements.
8676
<xs:element name="channel" type="channel_type" maxOccurs="unbounded">
8679
The animation element may contain any number of channel elements.
8683
<xs:element name="animation" type="animation_type" minOccurs="0" maxOccurs="unbounded">
8686
The animation may be hierarchical and may contain any number of other animation elements.
8691
<xs:element name="animation" type="animation_type" maxOccurs="unbounded"/>
8695
<xs:element name="sampler" type="sampler_type" maxOccurs="unbounded"/>
8696
<xs:element name="channel" type="channel_type" maxOccurs="unbounded"/>
8697
<xs:element name="animation" type="animation_type" minOccurs="0" maxOccurs="unbounded"/>
8699
<xs:element name="animation" type="animation_type" maxOccurs="unbounded"/>
8701
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8704
The extra element may appear any number of times.
8709
<xs:attribute name="id" type="xs:ID">
8712
The id attribute is a text string containing the unique identifier of this element. This value
8713
must be unique within the instance document. Optional attribute.
8717
<xs:attribute name="name" type="xs:token">
8720
The name attribute is the text string name of this element. Optional attribute.
8725
<xs:complexType name="library_animations_type">
8728
The library_animations element declares a module of animation elements.
8732
<xs:element name="asset" type="asset_type" minOccurs="0">
8735
The library_animations element may contain an asset element.
8739
<xs:element name="animation" type="animation_type" maxOccurs="unbounded">
8742
There must be at least one animation element.
8746
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8749
The extra element may appear any number of times.
8754
<xs:attribute name="id" type="xs:ID">
8757
The id attribute is a text string containing the unique identifier of this element.
8758
This value must be unique within the instance document. Optional attribute.
8762
<xs:attribute name="name" type="xs:token">
8765
The name attribute is the text string name of this element. Optional attribute.
8770
<xs:complexType name="skin_type">
8773
The skin element contains vertex and primitive information sufficient to describe blend-weight skinning.
8777
<xs:element name="bind_shape_matrix" type="float4x4_type" minOccurs="0">
8780
This provides extra information about the position and orientation of the base mesh before binding.
8781
If bind_shape_matrix is not specified then an identity matrix may be used as the bind_shape_matrix.
8782
The bind_shape_matrix element may occur zero or one times.
8786
<xs:element name="source" type="source_type" minOccurs="3" maxOccurs="unbounded">
8789
The skin element must contain at least three source elements.
8793
<xs:element name="joints">
8796
The joints element associates joint, or skeleton, nodes with attribute data.
8797
In COLLADA, this is specified by the inverse bind matrix of each joint (influence) in the skeleton.
8802
<xs:element name="input" type="input_local_type" minOccurs="2" maxOccurs="unbounded">
8805
The input element must occur at least twice. These inputs are local inputs.
8809
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8812
The extra element may appear any number of times.
8819
<xs:element name="vertex_weights">
8822
The vertex_weights element associates a set of joint-weight pairs with each vertex in the base mesh.
8827
<xs:element name="input" type="input_local_offset_type" minOccurs="2" maxOccurs="unbounded">
8830
The input element must occur at least twice.
8834
<xs:element name="vcount" type="list_of_uints_type" minOccurs="0">
8837
The vcount element contains a list of integers describing the number of influences for each vertex.
8838
The vcount element may occur once.
8842
<xs:element name="v" type="list_of_ints_type" minOccurs="0">
8845
The v element describes which bones and attributes are associated with each vertex. An index
8846
of -1 into the array of joints refers to the bind shape. Weights should be normalized before use.
8847
The v element must occur zero or one times.
8851
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8854
The extra element may appear any number of times.
8859
<xs:attribute name="count" type="uint_type" use="required">
8862
The count attribute describes the number of vertices in the base mesh. Required element.
8868
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8871
The extra element may appear any number of times.
8876
<xs:attribute name="source" type="xs:anyURI" use="required">
8879
The source attribute contains a URI reference to the base mesh, (a static mesh or a morphed mesh).
8880
This also provides the bind-shape of the skinned mesh. Required attribute.
8885
<xs:complexType name="convex_mesh_type">
8888
The definition of the convex_mesh element is identical to the mesh element with the exception that
8889
instead of a complete description (source, vertices, polygons etc.), it may simply point to another
8890
geometry to derive its shape. The latter case means that the convex hull of that geometry should
8891
be computed and is indicated by the optional "convex_hull_of" attribute.
8894
<xs:sequence minOccurs="0">
8895
<xs:element name="source" type="source_type" maxOccurs="unbounded"/>
8896
<xs:element name="vertices" type="vertices_type"/>
8897
<xs:choice minOccurs="0" maxOccurs="unbounded">
8898
<xs:element name="lines" type="lines_type"/>
8899
<xs:element name="linestrips" type="linestrips_type"/>
8900
<xs:element name="polygons" type="polygons_type"/>
8901
<xs:element name="polylist" type="polylist_type"/>
8902
<xs:element name="triangles" type="triangles_type"/>
8903
<xs:element name="trifans" type="trifans_type"/>
8904
<xs:element name="tristrips" type="tristrips_type"/>
8906
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8909
The extra element may appear any number of times.
8914
<xs:attribute name="convex_hull_of" type="xs:anyURI">
8917
The convex_hull_of attribute is a URI string of geometry to compute the convex hull of.
8923
<xs:complexType name="mesh_type">
8926
The mesh element contains vertex and primitive information sufficient to describe basic geometric meshes.
8930
<xs:element name="source" type="source_type" maxOccurs="unbounded">
8933
The mesh element must contain one or more source elements.
8937
<xs:element name="vertices" type="vertices_type">
8940
The mesh element must contain one vertices element.
8944
<xs:choice minOccurs="0" maxOccurs="unbounded">
8945
<xs:element name="lines" type="lines_type">
8948
The mesh element may contain any number of lines elements.
8952
<xs:element name="linestrips" type="linestrips_type">
8955
The mesh element may contain any number of linestrips elements.
8959
<xs:element name="polygons" type="polygons_type">
8962
The mesh element may contain any number of polygons elements.
8966
<xs:element name="polylist" type="polylist_type">
8969
The mesh element may contain any number of polylist elements.
8973
<xs:element name="triangles" type="triangles_type">
8976
The mesh element may contain any number of triangles elements.
8980
<xs:element name="trifans" type="trifans_type">
8983
The mesh element may contain any number of trifans elements.
8987
<xs:element name="tristrips" type="tristrips_type">
8990
The mesh element may contain any number of tristrips elements.
8995
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
8998
The extra element may appear any number of times.
9004
<xs:complexType name="spline_type">
9007
The spline element contains control vertex information sufficient to describe basic splines.
9011
<xs:element name="source" type="source_type" maxOccurs="unbounded">
9014
The mesh element must contain one or more source elements.
9018
<xs:element name="control_vertices">
9020
<xs:documentation>The control vertices element must occur exactly one time. It is used to describe the CVs of the spline.</xs:documentation>
9024
<xs:element name="input" type="input_local_type" maxOccurs="unbounded">
9027
The input element must occur at least one time. These inputs are local inputs.
9031
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9034
The extra element may appear any number of times.
9041
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9044
The extra element may appear any number of times.
9049
<xs:attribute name="closed" type="xs:boolean" default="false"/>
9051
<xs:complexType name="nurbs_surface_type">
9053
<xs:element name="source" type="source_type" maxOccurs="unbounded"/>
9054
<xs:element name="control_vertices">
9057
The control vertices element must occur
9058
exactly one time. It is used to describe the
9064
<xs:element name="input" type="input_local_type" maxOccurs="unbounded">
9067
The input element must occur at
9068
least one time. These inputs are
9073
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9076
The extra element may appear any
9084
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9086
<xs:attribute name="degree_u" type="uint_type" use="required"/>
9087
<xs:attribute name="closed_u" type="xs:boolean" default="false"/>
9088
<xs:attribute name="degree_v" type="uint_type" use="required"/>
9089
<xs:attribute name="closed_v" type="xs:boolean" default="false"/>
9091
<xs:complexType name="nurbs_type">
9093
<xs:element name="source" type="source_type" maxOccurs="unbounded"/>
9094
<xs:element name="control_vertices">
9096
<xs:documentation>The control vertices element must occur exactly one time. It is used to describe the CVs of the spline.</xs:documentation>
9100
<xs:element name="input" type="input_local_type" maxOccurs="unbounded">
9103
The input element must occur at least one time. These inputs are local inputs.
9107
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9110
The extra element may appear any number of times.
9117
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9119
<xs:attribute name="degree" type="uint_type" use="required"/>
9120
<xs:attribute name="closed" type="xs:boolean" default="false"/>
9122
<xs:complexType name="morph_type">
9125
The morph element describes the data required to blend between sets of static meshes. Each
9126
possible mesh that can be blended (a morph target) must be specified.
9130
<xs:element name="source" type="source_type" minOccurs="2" maxOccurs="unbounded">
9133
The morph element must contain at least two source elements.
9137
<xs:element name="targets">
9140
The targets element declares the morph targets, their weights and any user defined attributes
9141
associated with them.
9146
<xs:element name="input" type="input_local_type" minOccurs="2" maxOccurs="unbounded">
9149
The input element must occur at least twice. These inputs are local inputs.
9153
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9156
The extra element may appear any number of times.
9163
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9166
The extra element may appear any number of times.
9171
<xs:attribute name="method" type="morph_method_enum" default="NORMALIZED">
9174
The method attribute specifies the which blending technique to use. The accepted values are
9175
NORMALIZED, and RELATIVE. The default value if not specified is NORMALIZED. Optional attribute.
9179
<xs:attribute name="source" type="xs:anyURI" use="required">
9182
The source attribute indicates the base mesh. Required attribute.
9187
<xs:complexType name="controller_type">
9190
The controller element categorizes the declaration of generic control information.
9191
A controller is a device or mechanism that manages and directs the operations of another object.
9195
<xs:element name="asset" type="asset_type" minOccurs="0">
9198
The controller element may contain an asset element.
9203
<xs:element name="skin" type="skin_type">
9206
The controller element may contain either a skin element or a morph element.
9210
<xs:element name="morph" type="morph_type">
9213
The controller element may contain either a skin element or a morph element.
9218
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9221
The extra element may appear any number of times.
9226
<xs:attribute name="id" type="xs:ID">
9229
The id attribute is a text string containing the unique identifier of this element. This value
9230
must be unique within the instance document. Optional attribute.
9234
<xs:attribute name="name" type="xs:token">
9237
The name attribute is the text string name of this element. Optional attribute.
9242
<xs:complexType name="library_controllers_type">
9245
The library_controllers element declares a module of controller elements.
9249
<xs:element name="asset" type="asset_type" minOccurs="0">
9252
The library_controllers element may contain an asset element.
9256
<xs:element name="controller" type="controller_type" maxOccurs="unbounded">
9259
There must be at least one controller element.
9263
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9266
The extra element may appear any number of times.
9271
<xs:attribute name="id" type="xs:ID">
9274
The id attribute is a text string containing the unique identifier of this element.
9275
This value must be unique within the instance document. Optional attribute.
9279
<xs:attribute name="name" type="xs:token">
9282
The name attribute is the text string name of this element. Optional attribute.
9287
<xs:complexType name="origin_type">
9289
<xs:extension base="float3_type"/>
9292
<xs:complexType name="orient_type">
9294
<xs:extension base="float4_type"/>
9297
<xs:complexType name="curve_type">
9299
<xs:documentation> A curveType defines the attributes of a curve element. With rotate and translate the surface can be positioned to its right location. </xs:documentation>
9303
<xs:element name="line" type="line_type"/>
9304
<xs:element name="circle" type="circle_type"/>
9305
<xs:element name="ellipse" type="ellipse_type"/>
9306
<xs:element name="parabola" type="parabola_type"/>
9307
<xs:element name="hyperbola" type="hyperbola_type"/>
9308
<xs:element name="nurbs" type="nurbs_type"/>
9310
<xs:element name="orient" type="orient_type" minOccurs="0" maxOccurs="unbounded"/>
9311
<xs:element name="origin" type="origin_type" minOccurs="0"/>
9313
<xs:attribute name="sid" type="sid_type" use="optional">
9315
<xs:documentation>The id of a curve.</xs:documentation>
9318
<xs:attribute name="name" type="xs:token" use="optional">
9320
<xs:documentation> The name of a curve. </xs:documentation>
9324
<xs:complexType name="surface_curves_type">
9327
This element holds all the pcurves that are needed for
9328
the geometrical description of the topological entities
9329
edges on the surfaces they lie on.
9333
<xs:element name="curve" type="curve_type" maxOccurs="unbounded"/>
9334
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9337
<xs:complexType name="curves_type">
9340
This element holds all the curves that are needed for
9341
the geometrical description of the topological entities
9346
<xs:element name="curve" type="curve_type" maxOccurs="unbounded"/>
9347
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9350
<xs:complexType name="swept_surface_type">
9352
<xs:documentation> 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. </xs:documentation>
9355
<xs:element name="curve" type="curve_type"/>
9357
<xs:element name="direction" type="float3_type"/>
9359
<xs:element name="origin" type="float3_type"/>
9360
<xs:element name="axis" type="float3_type"/>
9363
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9366
<xs:complexType name="cone_type">
9368
<xs:element name="radius" type="float_type"/>
9369
<xs:element name="angle" type="xs:float"/>
9370
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9373
<xs:complexType name="surface_type">
9375
<xs:documentation> A surfaceType defines the attributes of a surface element. With rotate and translate the surface can be positioned to its right location. </xs:documentation>
9379
<xs:element name="plane" type="plane_type"/>
9380
<xs:element name="sphere" type="sphere_type"/>
9381
<xs:element name="torus" type="torus_type"/>
9382
<xs:element name="swept_surface" type="swept_surface_type"/>
9383
<xs:element name="nurbs_surface" type="nurbs_surface_type"/>
9384
<xs:element name="cone" type="cone_type"/>
9385
<xs:element name="cylinder">
9388
<xs:element name="radius" type="float_type"/>
9389
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9394
<xs:element name="orient" type="orient_type" minOccurs="0" maxOccurs="unbounded"/>
9395
<xs:element name="origin" type="origin_type" minOccurs="0"/>
9397
<xs:attribute name="sid" type="sid_type" use="optional">
9399
<xs:documentation> The id of the surface. </xs:documentation>
9402
<xs:attribute name="name" type="xs:token">
9404
<xs:documentation> The name of the surface. </xs:documentation>
9408
<xs:complexType name="surfaces_type">
9410
<xs:element name="surface" type="surface_type" maxOccurs="unbounded"/>
9411
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9414
<xs:complexType name="brep_type">
9416
<xs:documentation> 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. </xs:documentation>
9422
<xs:element name="curves" type="curves_type" minOccurs="0">
9425
The curves element holds all the curves that
9426
are needed for the brep structure. Here are
9427
the curves that describes the kind of an
9428
edge, but here are also the curves that are
9429
needed to create a extrusion for a surface.
9430
This element is needed, if the edges element
9435
<xs:element name="surface_curves" type="surface_curves_type" minOccurs="0"/>
9436
<xs:element name="surfaces" type="surfaces_type" minOccurs="0">
9439
The surfaces element holds all the surfaces
9440
that are needed for the brep structure. Here
9441
are the surfaces that describes the kind of
9442
a face. This element is needed, if the faces
9447
<xs:element name="source" type="source_type" maxOccurs="unbounded">
9450
The source elements define the access of the
9451
elements vertices, edges and faces to their
9452
geometric entities. At least one source
9453
element is needed for the vertices. If there
9454
are edges a second source element is needed
9455
for accessing the curves in the curve
9456
element by an IDREF_array. If there are
9457
faces the third source element is needed for
9458
accessing the surfaces in the surface
9459
element by an IDREF_array.
9463
<xs:element name="vertices" type="vertices_type">
9466
This element defines all the vertices of an
9467
brep structure. Vertices are the base
9468
topological entity for all brep structures,
9469
so this element is ever needed.
9473
<xs:element name="edges" type="edges_type" minOccurs="0">
9476
This element defines all the edges of the
9481
<xs:element name="wires" type="wires_type" minOccurs="0">
9484
This element defines all the wires of the
9489
<xs:element name="faces" type="faces_type" minOccurs="0">
9492
This element defines all the faces of the
9497
<xs:element name="pcurves" type="pcurves_type" minOccurs="0"/>
9498
<xs:element name="shells" type="shells_type" minOccurs="0">
9501
This element defines all the shells of the
9506
<xs:element name="solids" type="solids_type" minOccurs="0">
9509
This element defines all the solids of the
9514
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
9517
<xs:complexType name="geometry_type">
9520
Geometry describes the visual shape and appearance of an object in the scene.
9521
The geometry element categorizes the declaration of geometric information. Geometry is a
9522
branch of mathematics that deals with the measurement, properties, and relationships of
9523
points, lines, angles, surfaces, and solids.
9527
<xs:element name="asset" type="asset_type" minOccurs="0">
9530
The geometry element may contain an asset element.
9535
<xs:element name="convex_mesh" type="convex_mesh_type">
9538
The geometry element may contain only
9539
one mesh or convex_mesh.
9543
<xs:element name="mesh" type="mesh_type">
9546
The geometry element may contain only
9547
one mesh or convex_mesh.
9551
<xs:element name="spline" type="spline_type"/>
9552
<xs:element name="brep" type="brep_type"/>
9554
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9557
The extra element may appear any number of times.
9562
<xs:attribute name="id" type="xs:ID">
9565
The id attribute is a text string containing the unique identifier of this element.
9566
This value must be unique within the instance document. Optional attribute.
9570
<xs:attribute name="name" type="xs:token">
9573
The name attribute is the text string name of this element. Optional attribute.
9578
<xs:complexType name="library_geometries_type">
9581
The library_geometries element declares a module of geometry elements.
9585
<xs:element name="asset" type="asset_type" minOccurs="0">
9588
The library_geometries element may contain an asset element.
9592
<xs:element name="geometry" type="geometry_type" maxOccurs="unbounded">
9595
There must be at least one geometry element.
9599
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9602
The extra element may appear any number of times.
9607
<xs:attribute name="id" type="xs:ID">
9610
The id attribute is a text string containing the unique identifier of this element.
9611
This value must be unique within the instance document. Optional attribute.
9615
<xs:attribute name="name" type="xs:token">
9618
The name attribute is the text string name of this element. Optional attribute.
9623
<xs:complexType name="limits_sub_type">
9625
<xs:extension base="float_type">
9626
<xs:attribute name="sid" type="sid_type"/>
9630
<xs:complexType name="instance_joint_type">
9632
<xs:restriction base="instance_with_extra_type"/>
9633
</xs:complexContent>
9635
<xs:simpleType name="dynamic_limit_type">
9636
<xs:restriction base="float2_type"/>
9638
<xs:complexType name="targetable_float4_type">
9640
<xs:extension base="float4_type">
9641
<xs:attribute name="sid" type="sid_type"/>
9645
<xs:complexType name="rotate_type">
9648
The rotate element contains an angle and a mathematical vector that represents the axis of rotation.
9652
<xs:restriction base="targetable_float4_type"/>
9655
<xs:complexType name="link_type">
9657
<xs:choice minOccurs="0" maxOccurs="unbounded">
9658
<xs:element name="rotate" type="rotate_type"/>
9659
<xs:element name="translate" type="translate_type"/>
9661
<xs:choice minOccurs="0" maxOccurs="unbounded">
9662
<xs:element name="attachment_full">
9665
<xs:choice minOccurs="0" maxOccurs="unbounded">
9666
<xs:element name="rotate" type="rotate_type"/>
9667
<xs:element name="translate" type="translate_type"/>
9669
<xs:element name="link" type="link_type"/>
9671
<xs:attribute name="joint" type="xs:token" use="required"/>
9674
<xs:element name="attachment_start">
9676
<xs:choice maxOccurs="unbounded">
9677
<xs:element name="rotate" type="rotate_type"/>
9678
<xs:element name="translate" type="translate_type"/>
9680
<xs:attribute name="joint" type="xs:token" use="required"/>
9683
<xs:element name="attachment_end">
9685
<xs:choice minOccurs="0" maxOccurs="unbounded">
9686
<xs:element name="rotate" type="rotate_type"/>
9687
<xs:element name="translate" type="translate_type"/>
9689
<xs:attribute name="joint" type="xs:token" use="required"/>
9694
<xs:attribute name="sid" type="sid_type"/>
9695
<xs:attribute name="name" type="xs:token"/>
9697
<xs:complexType name="rigid_constraint_type">
9700
This element allows for connecting components, such as rigid_body into complex physics models
9701
with moveable parts.
9705
<xs:element name="ref_attachment">
9708
Defines the attachment (to a rigid_body or a node) to be used as the reference-frame.
9713
<xs:choice minOccurs="0" maxOccurs="unbounded">
9714
<xs:element name="translate" type="translate_type">
9717
Allows you to "position" the attachment point.
9721
<xs:element name="rotate" type="rotate_type">
9724
Allows you to "position" the attachment point.
9729
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9732
The extra element may appear any number of times.
9737
<xs:attribute name="rigid_body" type="xs:anyURI">
9740
The "rigid_body" attribute is a relative reference to a rigid-body within the same
9747
<xs:element name="attachment">
9750
Defines an attachment to a rigid-body or a node.
9755
<xs:choice minOccurs="0" maxOccurs="unbounded">
9756
<xs:element name="translate" type="translate_type">
9759
Allows you to "position" the attachment point.
9763
<xs:element name="rotate" type="rotate_type">
9766
Allows you to "position" the attachment point.
9771
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9774
The extra element may appear any number of times.
9779
<xs:attribute name="rigid_body" type="xs:anyURI">
9782
The "rigid_body" attribute is a relative reference to a rigid-body within the same physics_model.
9788
<xs:element name="technique_common">
9791
The technique_common element specifies the rigid_constraint information for the common profile
9792
which all COLLADA implementations need to support.
9797
<xs:element name="enabled" default="true" minOccurs="0">
9800
If false, the constraint doesn't exert any force or influence on the rigid bodies.
9805
<xs:extension base="xs:boolean">
9806
<xs:attribute name="sid" type="sid_type">
9809
The sid attribute is a text string value containing the sub-identifier of this element.
9810
This value must be unique within the scope of the parent element. Optional attribute.
9818
<xs:element name="interpenetrate" default="false" minOccurs="0">
9821
Indicates whether the attached rigid bodies may inter-penetrate.
9826
<xs:extension base="xs:boolean">
9827
<xs:attribute name="sid" type="sid_type">
9830
The sid attribute is a text string value containing the sub-identifier of this element.
9831
This value must be unique within the scope of the parent element. Optional attribute.
9839
<xs:element name="limits" minOccurs="0">
9842
The limits element provides a flexible way to specify the constraint limits (degrees of freedom
9848
<xs:element name="swing_cone_and_twist" minOccurs="0">
9851
The swing_cone_and_twist element describes the angular limits along each rotation axis in degrees.
9852
The the X and Y limits describe a "swing cone" and the Z limits describe the "twist angle" range
9857
<xs:element name="min" type="targetable_float3_type" default="0.0 0.0 0.0" minOccurs="0">
9860
The minimum values for the limit.
9864
<xs:element name="max" type="targetable_float3_type" default="0.0 0.0 0.0" minOccurs="0">
9867
The maximum values for the limit.
9874
<xs:element name="linear" minOccurs="0">
9877
The linear element describes linear (translational) limits along each axis.
9882
<xs:element name="min" type="targetable_float3_type" default="0.0 0.0 0.0" minOccurs="0">
9885
The minimum values for the limit.
9889
<xs:element name="max" type="targetable_float3_type" default="0.0 0.0 0.0" minOccurs="0">
9892
The maximum values for the limit.
9902
<xs:element name="spring" minOccurs="0">
9905
Spring, based on distance ("LINEAR") or angle ("ANGULAR").
9910
<xs:element name="angular" minOccurs="0">
9913
The angular spring properties.
9918
<xs:element name="stiffness" type="targetable_float_type" default="1.0" minOccurs="0">
9921
The stiffness (also called spring coefficient) has units of force/angle in degrees.
9925
<xs:element name="damping" type="targetable_float_type" default="0.0" minOccurs="0">
9928
The spring damping coefficient.
9932
<xs:element name="target_value" type="targetable_float_type" default="0.0" minOccurs="0">
9935
The spring's target or resting distance.
9942
<xs:element name="linear" minOccurs="0">
9945
The linear spring properties.
9950
<xs:element name="stiffness" type="targetable_float_type" default="1.0" minOccurs="0">
9953
The stiffness (also called spring coefficient) has units of force/distance.
9957
<xs:element name="damping" type="targetable_float_type" default="0.0" minOccurs="0">
9960
The spring damping coefficient.
9964
<xs:element name="target_value" type="targetable_float_type" default="0.0" minOccurs="0">
9967
The spring's target or resting distance.
9980
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
9983
This element may contain any number of non-common profile techniques.
9987
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
9990
The extra element may appear any number of times.
9995
<xs:attribute name="sid" type="sid_type" use="required">
9998
The sid attribute is a text string value containing the sub-identifier of this element.
9999
This value must be unique within the scope of the parent element. Optional attribute.
10000
</xs:documentation>
10003
<xs:attribute name="name" type="xs:token">
10006
The name attribute is the text string name of this element. Optional attribute.
10007
</xs:documentation>
10011
<xs:complexType name="node_type">
10014
Nodes embody the hierarchical relationship of elements in the scene.
10015
</xs:documentation>
10018
<xs:element name="asset" type="asset_type" minOccurs="0">
10021
The node element may contain an asset element.
10022
</xs:documentation>
10025
<xs:choice minOccurs="0" maxOccurs="unbounded">
10026
<xs:element name="lookat" type="lookat_type">
10029
The node element may contain any number of lookat elements.
10030
</xs:documentation>
10033
<xs:element name="matrix" type="matrix_type">
10036
The node element may contain any number of matrix elements.
10037
</xs:documentation>
10040
<xs:element name="rotate" type="rotate_type">
10043
The node element may contain any number of rotate elements.
10044
</xs:documentation>
10047
<xs:element name="scale" type="scale_type">
10050
The node element may contain any number of scale elements.
10051
</xs:documentation>
10054
<xs:element name="skew" type="skew_type">
10057
The node element may contain any number of skew elements.
10058
</xs:documentation>
10061
<xs:element name="translate" type="translate_type">
10064
The node element may contain any number of translate elements.
10065
</xs:documentation>
10069
<xs:element name="instance_camera" type="instance_camera_type" minOccurs="0" maxOccurs="unbounded">
10072
The node element may instance any number of camera objects.
10073
</xs:documentation>
10076
<xs:element name="instance_controller" type="instance_controller_type" minOccurs="0" maxOccurs="unbounded">
10079
The node element may instance any number of controller objects.
10080
</xs:documentation>
10083
<xs:element name="instance_geometry" type="instance_geometry_type" minOccurs="0" maxOccurs="unbounded">
10086
The node element may instance any number of geometry objects.
10087
</xs:documentation>
10090
<xs:element name="instance_light" type="instance_light_type" minOccurs="0" maxOccurs="unbounded">
10093
The node element may instance any number of light objects.
10094
</xs:documentation>
10097
<xs:element name="instance_node" type="instance_node_type" minOccurs="0" maxOccurs="unbounded">
10100
The node element may instance any number of node elements or hierarchies objects.
10101
</xs:documentation>
10104
<xs:element name="node" type="node_type" minOccurs="0" maxOccurs="unbounded">
10107
The node element may be hierarchical and be the parent of any number of other node elements.
10108
</xs:documentation>
10111
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10114
The extra element may appear any number of times.
10115
</xs:documentation>
10119
<xs:attribute name="id" type="xs:ID">
10122
The id attribute is a text string containing the unique identifier of this element.
10123
This value must be unique within the instance document. Optional attribute.
10124
</xs:documentation>
10127
<xs:attribute name="name" type="xs:token">
10130
The name attribute is the text string name of this element. Optional attribute.
10131
</xs:documentation>
10134
<xs:attribute name="sid" type="sid_type">
10137
The sid attribute is a text string value containing the sub-identifier of this element.
10138
This value must be unique within the scope of the parent element. Optional attribute.
10139
</xs:documentation>
10142
<xs:attribute name="type" type="node_enum" default="NODE">
10145
The type attribute indicates the type of the node element. The default value is "NODE".
10146
Optional attribute.
10147
</xs:documentation>
10150
<xs:attribute name="layer" type="list_of_names_type">
10153
The layer attribute indicates the names of the layers to which this node belongs. For example,
10154
a value of "foreground glowing" indicates that this node belongs to both the 'foreground' layer
10155
and the 'glowing' layer. The default value is empty, indicating that the node doesn't belong to
10156
any layer. Optional attribute.
10157
</xs:documentation>
10161
<xs:complexType name="library_nodes_type">
10164
The library_nodes element declares a module of node elements.
10165
</xs:documentation>
10168
<xs:element name="asset" type="asset_type" minOccurs="0">
10171
The library_nodes element may contain an asset element.
10172
</xs:documentation>
10175
<xs:element name="node" type="node_type" maxOccurs="unbounded">
10178
There must be at least one node element.
10179
</xs:documentation>
10182
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10185
The extra element may appear any number of times.
10186
</xs:documentation>
10190
<xs:attribute name="id" type="xs:ID">
10193
The id attribute is a text string containing the unique identifier of this element.
10194
This value must be unique within the instance document. Optional attribute.
10195
</xs:documentation>
10198
<xs:attribute name="name" type="xs:token">
10201
The name attribute is the text string name of this element. Optional attribute.
10202
</xs:documentation>
10206
<xs:complexType name="visual_scene_type">
10209
The visual_scene element declares the base of the visual_scene hierarchy or scene graph. The
10210
scene contains elements that comprise much of the visual and transformational information
10211
content as created by the authoring tools.
10212
</xs:documentation>
10215
<xs:element name="asset" type="asset_type" minOccurs="0">
10218
The visual_scene element may contain an asset element.
10219
</xs:documentation>
10222
<xs:element name="node" type="node_type" maxOccurs="unbounded">
10225
The visual_scene element must have at least one node element.
10226
</xs:documentation>
10229
<xs:element name="evaluate_scene" minOccurs="0" maxOccurs="unbounded">
10231
<xs:documentation>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.
10232
</xs:documentation>
10236
<xs:element name="asset" type="asset_type" minOccurs="0"/>
10237
<xs:element name="render" minOccurs="0" maxOccurs="unbounded">
10240
The render element describes one effect pass to evaluate the scene.
10241
There must be at least one render element.
10242
</xs:documentation>
10246
<xs:element name="layer" type="xs:NCName" minOccurs="0" maxOccurs="unbounded">
10248
<xs:documentation>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. </xs:documentation>
10251
<xs:element name="instance_material" minOccurs="0">
10253
<xs:documentation>The instance_material element specifies which effect to render in this compositing step
10254
while evaluating the scene.
10255
</xs:documentation>
10259
<xs:element name="technique_override" minOccurs="0">
10261
<xs:attribute name="ref" type="xs:NCName" use="required">
10263
<xs:documentation>technique</xs:documentation>
10266
<xs:attribute name="pass" type="xs:NCName">
10268
<xs:documentation>Explicitly select one pass. If empty then use all passes of the technique.</xs:documentation>
10273
<xs:element name="bind" minOccurs="0" maxOccurs="unbounded">
10276
The bind element binds values to effect parameters upon instantiation.
10277
</xs:documentation>
10280
<xs:attribute name="semantic" type="xs:NCName" use="required">
10283
The semantic attribute specifies which effect parameter to bind.
10284
</xs:documentation>
10287
<xs:attribute name="target" type="xs:token" use="required">
10290
The target attribute specifies the location of the value to bind to the specified semantic.
10291
This text string is a path-name following a simple syntax described in the ?Addressing Syntax?
10293
</xs:documentation>
10298
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10301
The extra element may appear any number of times.
10302
</xs:documentation>
10306
<xs:attribute name="url" type="xs:anyURI" use="required">
10308
<xs:documentation>URL to a material </xs:documentation>
10313
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10316
The extra element may appear any number of times.
10317
</xs:documentation>
10321
<xs:attribute name="sid" type="sid_type"/>
10322
<xs:attribute name="name" type="xs:token">
10325
The name attribute is the text string name of this element. Optional attribute.
10326
</xs:documentation>
10329
<xs:attribute name="camera_node" type="xs:anyURI" use="optional">
10331
<xs:documentation>The camera_node attribute refers to a node that contains a camera describing the viewpoint to render this compositing step from. </xs:documentation>
10336
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10339
The extra element may appear any number of times.
10340
</xs:documentation>
10344
<xs:attribute name="id" type="xs:ID"/>
10345
<xs:attribute name="sid" type="sid_type"/>
10346
<xs:attribute name="name" type="xs:token"/>
10347
<xs:attribute name="enable" type="xs:boolean" default="true">
10349
<xs:documentation>allow this to be disabled and hense skipped durring evaluation. This is useful for debug.</xs:documentation>
10354
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10357
The extra element may appear any number of times.
10358
</xs:documentation>
10362
<xs:attribute name="id" type="xs:ID" use="optional">
10365
The id attribute is a text string containing the unique identifier of this element. This
10366
value must be unique within the instance document. Optional attribute.
10367
</xs:documentation>
10370
<xs:attribute name="name" type="xs:token">
10373
The name attribute is the text string name of this element. Optional attribute.
10374
</xs:documentation>
10378
<xs:complexType name="library_visual_scenes_type">
10381
The library_visual_scenes element declares a module of visual_scene elements.
10382
</xs:documentation>
10385
<xs:element name="asset" type="asset_type" minOccurs="0">
10388
The library_visual_scenes element may contain an asset element.
10389
</xs:documentation>
10392
<xs:element name="visual_scene" type="visual_scene_type" maxOccurs="unbounded">
10395
There must be at least one visual_scene element.
10396
</xs:documentation>
10399
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10402
The extra element may appear any number of times.
10403
</xs:documentation>
10407
<xs:attribute name="id" type="xs:ID">
10410
The id attribute is a text string containing the unique identifier of this element.
10411
This value must be unique within the instance document. Optional attribute.
10412
</xs:documentation>
10415
<xs:attribute name="name" type="xs:token">
10418
The name attribute is the text string name of this element. Optional attribute.
10419
</xs:documentation>
10423
<xs:complexType name="rigid_body_type">
10426
This element allows for describing simulated bodies that do not deform. These bodies may or may
10427
not be connected by constraints (hinge, ball-joint etc.). Rigid-bodies, constraints etc. are
10428
encapsulated in physics_model elements to allow for instantiating complex models.
10429
</xs:documentation>
10432
<xs:element name="technique_common">
10435
The technique_common element specifies the rigid_body information for the common profile which all
10436
COLLADA implementations need to support.
10437
</xs:documentation>
10441
<xs:element name="dynamic" minOccurs="0">
10444
If false, the rigid_body is not moveable
10445
</xs:documentation>
10449
<xs:extension base="xs:boolean">
10450
<xs:attribute name="sid" type="sid_type">
10453
The sid attribute is a text string value containing the sub-identifier of this element.
10454
This value must be unique within the scope of the parent element. Optional attribute.
10455
</xs:documentation>
10459
</xs:simpleContent>
10462
<xs:element name="mass" type="targetable_float_type" minOccurs="0">
10465
The total mass of the rigid-body
10466
</xs:documentation>
10469
<xs:element name="mass_frame" minOccurs="0">
10472
Defines the center and orientation of mass of the rigid-body relative to the local origin of the
10473
"root" shape.This makes the off-diagonal elements of the inertia tensor (products of inertia) all
10474
0 and allows us to just store the diagonal elements (moments of inertia).
10475
</xs:documentation>
10478
<xs:choice maxOccurs="unbounded">
10479
<xs:element name="translate" type="translate_type"/>
10480
<xs:element name="rotate" type="rotate_type"/>
10484
<xs:element name="inertia" type="targetable_float3_type" minOccurs="0">
10487
float3 - The diagonal elements of the inertia tensor (moments of inertia), which is represented
10488
in the local frame of the center of mass. See above.
10489
</xs:documentation>
10492
<xs:choice minOccurs="0">
10493
<xs:element name="instance_physics_material" type="instance_physics_material_type">
10496
References a physics_material for the rigid_body.
10497
</xs:documentation>
10500
<xs:element name="physics_material" type="physics_material_type">
10503
Defines a physics_material for the rigid_body.
10504
</xs:documentation>
10508
<xs:element name="shape" maxOccurs="unbounded">
10511
This element allows for describing components of a rigid_body.
10512
</xs:documentation>
10516
<xs:element name="hollow" minOccurs="0">
10519
If true, the mass is distributed along the surface of the shape
10520
</xs:documentation>
10524
<xs:extension base="xs:boolean">
10525
<xs:attribute name="sid" type="sid_type">
10528
The sid attribute is a text string value containing the sub-identifier of this element.
10529
This value must be unique within the scope of the parent element. Optional attribute.
10530
</xs:documentation>
10534
</xs:simpleContent>
10537
<xs:element name="mass" type="targetable_float_type" minOccurs="0">
10540
The mass of the shape.
10541
</xs:documentation>
10544
<xs:element name="density" type="targetable_float_type" minOccurs="0">
10547
The density of the shape.
10548
</xs:documentation>
10551
<xs:choice minOccurs="0">
10552
<xs:element name="instance_physics_material" type="instance_physics_material_type">
10555
References a physics_material for the shape.
10556
</xs:documentation>
10559
<xs:element name="physics_material" type="physics_material_type">
10562
Defines a physics_material for the shape.
10563
</xs:documentation>
10568
<xs:element name="instance_geometry" type="instance_geometry_type">
10571
Instances a geometry to use to define this shape.
10572
</xs:documentation>
10575
<xs:element name="plane" type="plane_type">
10578
Defines a plane to use for this shape.
10579
</xs:documentation>
10582
<xs:element name="box" type="box_type">
10585
Defines a box to use for this shape.
10586
</xs:documentation>
10589
<xs:element name="sphere" type="sphere_type">
10592
Defines a sphere to use for this shape.
10593
</xs:documentation>
10596
<xs:element name="cylinder" type="cylinder_type">
10599
Defines a cyliner to use for this shape.
10600
</xs:documentation>
10603
<xs:element name="capsule" type="capsule_type">
10606
Defines a capsule to use for this shape.
10607
</xs:documentation>
10611
<xs:choice minOccurs="0" maxOccurs="unbounded">
10612
<xs:element name="translate" type="translate_type">
10615
Allows a tranformation for the shape.
10616
</xs:documentation>
10619
<xs:element name="rotate" type="rotate_type">
10622
Allows a tranformation for the shape.
10623
</xs:documentation>
10627
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10630
The extra element may appear any number of times.
10631
</xs:documentation>
10640
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
10643
This element may contain any number of non-common profile techniques.
10644
</xs:documentation>
10647
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10650
The extra element may appear any number of times.
10651
</xs:documentation>
10655
<xs:attribute name="id" type="xs:ID"/>
10656
<xs:attribute name="sid" type="sid_type" use="required">
10659
The sid attribute is a text string value containing the sub-identifier of this element. This
10660
value must be unique within the scope of the parent element. Optional attribute.
10661
</xs:documentation>
10664
<xs:attribute name="name" type="xs:token">
10667
The name attribute is the text string name of this element. Optional attribute.
10668
</xs:documentation>
10672
<xs:complexType name="instance_rigid_body_type">
10675
This element allows instancing a rigid_body within an instance_physics_model.
10676
</xs:documentation>
10679
<xs:element name="technique_common">
10682
The technique_common element specifies the instance_rigid_body information for the common
10683
profile which all COLLADA implementations need to support.
10684
</xs:documentation>
10688
<xs:element name="angular_velocity" type="float3_type" default="0.0 0.0 0.0" minOccurs="0">
10691
Specifies the initial angular velocity of the rigid_body instance in degrees per second
10692
around each axis, in the form of an X-Y-Z Euler rotation.
10693
</xs:documentation>
10696
<xs:element name="velocity" type="float3_type" default="0.0 0.0 0.0" minOccurs="0">
10699
Specifies the initial linear velocity of the rigid_body instance.
10700
</xs:documentation>
10703
<xs:element name="dynamic" default="true" minOccurs="0">
10706
<xs:extension base="xs:boolean">
10707
<xs:attribute name="sid" type="sid_type">
10710
The sid attribute is a text string value containing the sub-identifier of this element.
10711
This value must be unique within the scope of the parent element. Optional attribute.
10712
</xs:documentation>
10716
</xs:simpleContent>
10719
<xs:element name="mass" type="targetable_float_type" minOccurs="0"/>
10720
<xs:element name="mass_frame" minOccurs="0">
10722
<xs:choice maxOccurs="unbounded">
10723
<xs:element name="translate" type="translate_type"/>
10724
<xs:element name="rotate" type="rotate_type"/>
10728
<xs:element name="inertia" type="targetable_float3_type" minOccurs="0"/>
10729
<xs:choice minOccurs="0">
10730
<xs:element name="instance_physics_material" type="instance_physics_material_type"/>
10731
<xs:element name="physics_material" type="physics_material_type"/>
10733
<xs:element name="shape" minOccurs="0" maxOccurs="unbounded">
10736
<xs:element name="hollow" minOccurs="0">
10739
<xs:extension base="xs:boolean">
10740
<xs:attribute name="sid" type="sid_type">
10743
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.
10744
</xs:documentation>
10748
</xs:simpleContent>
10751
<xs:element name="mass" type="targetable_float_type" minOccurs="0"/>
10752
<xs:element name="density" type="targetable_float_type" minOccurs="0"/>
10753
<xs:choice minOccurs="0">
10754
<xs:element name="instance_physics_material" type="instance_physics_material_type"/>
10755
<xs:element name="physics_material" type="physics_material_type"/>
10758
<xs:element name="instance_geometry" type="instance_geometry_type"/>
10759
<xs:element name="plane" type="plane_type"/>
10760
<xs:element name="box" type="box_type"/>
10761
<xs:element name="sphere" type="sphere_type"/>
10762
<xs:element name="cylinder" type="cylinder_type"/>
10763
<xs:element name="capsule" type="capsule_type"/>
10765
<xs:choice minOccurs="0" maxOccurs="unbounded">
10766
<xs:element name="translate" type="translate_type"/>
10767
<xs:element name="rotate" type="rotate_type"/>
10769
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10772
The extra element may appear any number of times.
10773
</xs:documentation>
10782
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
10785
This element may contain any number of non-common profile techniques.
10786
</xs:documentation>
10789
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10792
The extra element may appear any number of times.
10793
</xs:documentation>
10797
<xs:attribute name="body" type="xs:NCName" use="required">
10800
The body attribute indicates which rigid_body to instantiate. Required attribute.
10801
</xs:documentation>
10804
<xs:attribute name="sid" type="sid_type">
10807
The sid attribute is a text string value containing the sub-identifier of this element. This
10808
value must be unique within the scope of the parent element. Optional attribute.
10809
</xs:documentation>
10812
<xs:attribute name="name" type="xs:token">
10815
The name attribute is the text string name of this element. Optional attribute.
10816
</xs:documentation>
10819
<xs:attribute name="target" type="xs:anyURI" use="required">
10822
The target attribute indicates which node is influenced by this rigid_body instance.
10824
</xs:documentation>
10828
<xs:complexType name="instance_physics_model_type">
10831
This element allows instancing physics model within another physics model, or in a physics scene.
10832
</xs:documentation>
10835
<xs:element name="instance_force_field" type="instance_force_field_type" minOccurs="0" maxOccurs="unbounded">
10838
The instance_physics_model element may instance any number of force_field elements.
10839
</xs:documentation>
10842
<xs:element name="instance_rigid_body" type="instance_rigid_body_type" minOccurs="0" maxOccurs="unbounded">
10845
The instance_physics_model element may instance any number of rigid_body elements.
10846
</xs:documentation>
10849
<xs:element name="instance_rigid_constraint" type="instance_rigid_constraint_type" minOccurs="0" maxOccurs="unbounded">
10852
The instance_physics_model element may instance any number of rigid_constraint elements.
10853
</xs:documentation>
10856
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10859
The extra element may appear any number of times.
10860
</xs:documentation>
10864
<xs:attribute name="url" type="xs:anyURI" use="required">
10867
The url attribute refers to resource. This may refer to a local resource using a relative URL
10868
fragment identifier that begins with the "#" character. The url attribute may refer to an external
10869
resource using an absolute or relative URL.
10870
</xs:documentation>
10873
<xs:attribute name="sid" type="sid_type">
10876
The sid attribute is a text string value containing the sub-identifier of this element. This
10877
value must be unique within the scope of the parent element. Optional attribute.
10878
</xs:documentation>
10881
<xs:attribute name="name" type="xs:token">
10884
The name attribute is the text string name of this element. Optional attribute.
10885
</xs:documentation>
10888
<xs:attribute name="parent" type="xs:anyURI">
10891
The parent attribute points to the id of a node in the visual scene. This allows a physics model
10892
to be instantiated under a specific transform node, which will dictate the initial position and
10893
orientation, and could be animated to influence kinematic rigid bodies.
10894
</xs:documentation>
10898
<xs:complexType name="physics_model_type">
10901
This element allows for building complex combinations of rigid-bodies and constraints that
10902
may be instantiated multiple times.
10903
</xs:documentation>
10906
<xs:element name="asset" type="asset_type" minOccurs="0">
10909
The physics_model element may contain an asset element.
10910
</xs:documentation>
10913
<xs:element name="rigid_body" type="rigid_body_type" minOccurs="0" maxOccurs="unbounded">
10916
The physics_model may define any number of rigid_body elements.
10917
</xs:documentation>
10920
<xs:element name="rigid_constraint" type="rigid_constraint_type" minOccurs="0" maxOccurs="unbounded">
10923
The physics_model may define any number of rigid_constraint elements.
10924
</xs:documentation>
10927
<xs:element name="instance_physics_model" type="instance_physics_model_type" minOccurs="0" maxOccurs="unbounded">
10930
The physics_model may instance any number of other physics_model elements.
10931
</xs:documentation>
10934
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10937
The extra element may appear any number of times.
10938
</xs:documentation>
10942
<xs:attribute name="id" type="xs:ID">
10945
The id attribute is a text string containing the unique identifier of this element.
10946
This value must be unique within the instance document. Optional attribute.
10947
</xs:documentation>
10950
<xs:attribute name="name" type="xs:token">
10953
The name attribute is the text string name of this element. Optional attribute.
10954
</xs:documentation>
10958
<xs:complexType name="library_physics_models_type">
10961
The library_physics_models element declares a module of physics_model elements.
10962
</xs:documentation>
10965
<xs:element name="asset" type="asset_type" minOccurs="0">
10968
The library_physics_models element may contain an asset element.
10969
</xs:documentation>
10972
<xs:element name="physics_model" type="physics_model_type" maxOccurs="unbounded">
10975
There must be at least one physics_model element.
10976
</xs:documentation>
10979
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
10982
The extra element may appear any number of times.
10983
</xs:documentation>
10987
<xs:attribute name="id" type="xs:ID">
10990
The id attribute is a text string containing the unique identifier of this element.
10991
This value must be unique within the instance document. Optional attribute.
10992
</xs:documentation>
10995
<xs:attribute name="name" type="xs:token">
10998
The name attribute is the text string name of this element. Optional attribute.
10999
</xs:documentation>
11003
<xs:complexType name="physics_scene_type">
11005
<xs:element name="asset" type="asset_type" minOccurs="0">
11008
The physics_scene element may contain an asset element.
11009
</xs:documentation>
11012
<xs:element name="instance_force_field" type="instance_force_field_type" minOccurs="0" maxOccurs="unbounded">
11015
There may be any number of instance_force_field elements.
11016
</xs:documentation>
11019
<xs:element name="instance_physics_model" type="instance_physics_model_type" minOccurs="0" maxOccurs="unbounded">
11022
There may be any number of instance_physics_model elements.
11023
</xs:documentation>
11026
<xs:element name="technique_common">
11029
The technique_common element specifies the physics_scene information for the common profile
11030
which all COLLADA implementations need to support.
11031
</xs:documentation>
11035
<xs:element name="gravity" type="targetable_float3_type" minOccurs="0">
11038
The gravity vector to use for the physics_scene.
11039
</xs:documentation>
11042
<xs:element name="time_step" type="targetable_float_type" minOccurs="0">
11045
The time_step for the physics_scene.
11046
</xs:documentation>
11052
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded">
11055
This element may contain any number of non-common profile techniques.
11056
</xs:documentation>
11059
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
11062
The extra element may appear any number of times.
11063
</xs:documentation>
11067
<xs:attribute name="id" type="xs:ID">
11070
The id attribute is a text string containing the unique identifier of this element.
11071
This value must be unique within the instance document. Optional attribute.
11072
</xs:documentation>
11075
<xs:attribute name="name" type="xs:token">
11078
The name attribute is the text string name of this element. Optional attribute.
11079
</xs:documentation>
11083
<xs:complexType name="library_physics_scenes_type">
11086
The library_physics_scenes element declares a module of physics_scene elements.
11087
</xs:documentation>
11090
<xs:element name="asset" type="asset_type" minOccurs="0">
11093
The library_physics_scenes element may contain an asset element.
11094
</xs:documentation>
11097
<xs:element name="physics_scene" type="physics_scene_type" maxOccurs="unbounded">
11100
There must be at least one physics_scene element.
11101
</xs:documentation>
11104
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
11107
The extra element may appear any number of times.
11108
</xs:documentation>
11112
<xs:attribute name="id" type="xs:ID">
11115
The id attribute is a text string containing the unique identifier of this element.
11116
This value must be unique within the instance document. Optional attribute.
11117
</xs:documentation>
11120
<xs:attribute name="name" type="xs:token">
11123
The name attribute is the text string name of this element. Optional attribute.
11124
</xs:documentation>
11128
<xs:complexType name="kinematics_newparam_type">
11130
<xs:element name="float" type="float_type"/>
11131
<xs:element name="int" type="int_type"/>
11132
<xs:element name="SIDREF" type="sidref_type"/>
11133
<xs:element name="bool" type="xs:boolean"/>
11135
<xs:attribute name="sid" type="sid_type"/>
11137
<xs:complexType name="kinematics_frame_type">
11138
<xs:choice minOccurs="0" maxOccurs="unbounded">
11139
<xs:element name="translate" type="translate_type"/>
11140
<xs:element name="rotate" type="rotate_type"/>
11142
<xs:attribute name="link" type="xs:token"/>
11144
<xs:complexType name="common_param_type">
11146
<xs:extension base="xs:token"/>
11147
</xs:simpleContent>
11149
<xs:complexType name="common_int_or_param_type">
11151
<xs:element name="int" type="int_type"/>
11152
<xs:element name="param" type="common_param_type"/>
11155
<xs:complexType name="common_bool_or_param_type">
11157
<xs:element name="bool" type="xs:boolean"/>
11158
<xs:element name="param" type="common_param_type"/>
11161
<xs:complexType name="common_float_or_param_type">
11163
<xs:element name="float" type="float_type"/>
11164
<xs:element name="param" type="common_param_type"/>
11167
<xs:complexType name="kinematics_limits_type">
11169
<xs:element name="min" type="common_float_or_param_type"/>
11170
<xs:element name="max" type="common_float_or_param_type"/>
11173
<xs:complexType name="common_sidref_or_param_type">
11175
<xs:element name="SIDREF" type="sidref_type"/>
11176
<xs:element name="param" type="common_param_type"/>
11179
<xs:complexType name="bind_joint_axis_type">
11181
<xs:element name="axis" type="common_sidref_or_param_type"/>
11182
<xs:element name="value" type="common_float_or_param_type"/>
11184
<xs:attribute name="target" type="xs:token"/>
11186
<xs:complexType name="bind_kinematics_model_type">
11187
<xs:complexContent>
11188
<xs:extension base="common_sidref_or_param_type">
11189
<xs:attribute name="node" type="xs:token"/>
11191
</xs:complexContent>
11193
<xs:complexType name="kinematics_connect_param_type">
11194
<xs:attribute name="ref" type="xs:token" use="required"/>
11196
<xs:complexType name="kinematics_setparam_type">
11198
<xs:element name="float" type="float_type"/>
11199
<xs:element name="int" type="int_type"/>
11200
<xs:element name="SIDREF" type="sidref_type"/>
11201
<xs:element name="bool" type="xs:boolean"/>
11202
<xs:element name="connect_param" type="kinematics_connect_param_type"/>
11204
<xs:attribute name="ref" type="xs:token" use="required"/>
11206
<xs:complexType name="instance_kinematics_scene_type">
11208
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11209
<xs:element name="newparam" type="kinematics_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11210
<xs:element name="setparam" type="kinematics_setparam_type" minOccurs="0" maxOccurs="unbounded"/>
11211
<xs:element name="bind_kinematics_model" type="bind_kinematics_model_type" minOccurs="0" maxOccurs="unbounded"/>
11212
<xs:element name="bind_joint_axis" type="bind_joint_axis_type" minOccurs="0" maxOccurs="unbounded"/>
11213
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11215
<xs:attribute name="url" type="xs:anyURI" use="required"/>
11216
<xs:attribute name="sid" type="sid_type"/>
11217
<xs:attribute name="name" type="xs:token"/>
11219
<xs:complexType name="kinematics_index_type">
11220
<xs:complexContent>
11221
<xs:extension base="common_int_or_param_type">
11222
<xs:attribute name="semantic" type="xs:NMTOKEN"/>
11224
</xs:complexContent>
11226
<xs:complexType name="kinematics_param_type">
11227
<xs:attribute name="ref" type="xs:token" use="required"/>
11229
<xs:complexType name="kinematics_bind_type">
11231
<xs:element name="param" type="kinematics_param_type"/>
11232
<xs:element name="bool" type="xs:boolean"/>
11233
<xs:element name="float" type="float_type"/>
11234
<xs:element name="int" type="int_type"/>
11235
<xs:element name="SIDREF" type="sidref_type"/>
11237
<xs:attribute name="symbol" type="xs:NCName" use="required"/>
11239
<xs:complexType name="motion_axis_info_type">
11241
<xs:element name="bind" type="kinematics_bind_type" minOccurs="0" maxOccurs="unbounded"/>
11242
<xs:element name="newparam" type="kinematics_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11243
<xs:element name="setparam" type="kinematics_setparam_type" minOccurs="0" maxOccurs="unbounded"/>
11244
<xs:element name="speed" type="common_float_or_param_type" minOccurs="0"/>
11245
<xs:element name="acceleration" type="common_float_or_param_type" minOccurs="0"/>
11246
<xs:element name="deceleration" type="common_float_or_param_type" minOccurs="0"/>
11247
<xs:element name="jerk" type="common_float_or_param_type" minOccurs="0"/>
11249
<xs:attribute name="sid" type="sid_type"/>
11250
<xs:attribute name="axis" type="xs:token" use="required"/>
11251
<xs:attribute name="name" type="xs:token"/>
11253
<xs:complexType name="instance_kinematics_model_type">
11255
<xs:element name="bind" type="kinematics_bind_type" minOccurs="0" maxOccurs="unbounded"/>
11256
<xs:element name="newparam" type="kinematics_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11257
<xs:element name="setparam" type="kinematics_setparam_type" minOccurs="0" maxOccurs="unbounded"/>
11258
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11260
<xs:attribute name="url" type="xs:anyURI" use="required"/>
11261
<xs:attribute name="sid" type="sid_type"/>
11262
<xs:attribute name="name" type="xs:token"/>
11264
<xs:complexType name="instance_articulated_system_type">
11266
<xs:element name="bind" type="kinematics_bind_type" minOccurs="0" maxOccurs="unbounded"/>
11267
<xs:element name="setparam" type="kinematics_setparam_type" minOccurs="0" maxOccurs="unbounded"/>
11268
<xs:element name="newparam" type="kinematics_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11269
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11271
<xs:attribute name="sid" type="sid_type"/>
11272
<xs:attribute name="url" type="xs:anyURI" use="required"/>
11273
<xs:attribute name="name" type="xs:token"/>
11275
<xs:complexType name="kinematics_scene_type">
11277
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11278
<xs:element name="instance_kinematics_model" type="instance_kinematics_model_type" minOccurs="0" maxOccurs="unbounded"/>
11279
<xs:element name="instance_articulated_system" type="instance_articulated_system_type" minOccurs="0" maxOccurs="unbounded"/>
11280
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11282
<xs:attribute name="id" type="xs:ID"/>
11283
<xs:attribute name="name" type="xs:token"/>
11285
<xs:complexType name="library_kinematics_scenes_type">
11287
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11288
<xs:element name="kinematics_scene" type="kinematics_scene_type" maxOccurs="unbounded"/>
11289
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11291
<xs:attribute name="id" type="xs:ID"/>
11292
<xs:attribute name="name" type="xs:token"/>
11294
<xs:complexType name="common_float2_or_param_type">
11296
<xs:element name="float2" type="float2_type"/>
11297
<xs:element name="param" type="common_param_type"/>
11300
<xs:complexType name="motion_effector_info_type">
11302
<xs:element name="bind" type="kinematics_bind_type" minOccurs="0" maxOccurs="unbounded"/>
11303
<xs:element name="newparam" type="kinematics_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11304
<xs:element name="setparam" type="kinematics_setparam_type" minOccurs="0" maxOccurs="unbounded"/>
11305
<xs:element name="speed" type="common_float2_or_param_type" minOccurs="0"/>
11306
<xs:element name="acceleration" type="common_float2_or_param_type" minOccurs="0"/>
11307
<xs:element name="deceleration" type="common_float2_or_param_type" minOccurs="0"/>
11308
<xs:element name="jerk" type="common_float2_or_param_type" minOccurs="0"/>
11310
<xs:attribute name="sid" type="sid_type"/>
11311
<xs:attribute name="name" type="xs:token"/>
11313
<xs:complexType name="motion_technique_type">
11315
<xs:element name="axis_info" type="motion_axis_info_type" minOccurs="0" maxOccurs="unbounded"/>
11316
<xs:element name="effector_info" type="motion_effector_info_type" minOccurs="0"/>
11319
<xs:complexType name="motion_type">
11321
<xs:element name="instance_articulated_system" type="instance_articulated_system_type"/>
11322
<xs:element name="technique_common" type="motion_technique_type"/>
11323
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded"/>
11324
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11327
<xs:complexType name="minmax_type">
11329
<xs:extension base="float_type">
11330
<xs:attribute name="name" type="xs:token"/>
11331
<xs:attribute name="sid" type="sid_type"/>
11333
</xs:simpleContent>
11335
<xs:complexType name="joint_limits_type">
11337
<xs:element name="min" type="minmax_type" minOccurs="0"/>
11338
<xs:element name="max" type="minmax_type" minOccurs="0"/>
11341
<xs:complexType name="axis_type">
11343
<xs:extension base="float3_type">
11344
<xs:attribute name="sid" type="sid_type"/>
11345
<xs:attribute name="name" type="xs:token"/>
11347
</xs:simpleContent>
11349
<xs:complexType name="axis_constraint_type">
11351
<xs:element name="axis" type="axis_type"/>
11352
<xs:element name="limits" type="joint_limits_type" minOccurs="0"/>
11354
<xs:attribute name="sid" type="sid_type"/>
11356
<xs:complexType name="joint_type">
11358
<xs:choice maxOccurs="unbounded">
11359
<xs:element name="prismatic" type="axis_constraint_type"/>
11360
<xs:element name="revolute" type="axis_constraint_type"/>
11362
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11364
<xs:attribute name="id" type="xs:ID"/>
11365
<xs:attribute name="name" type="xs:token"/>
11366
<xs:attribute name="sid" type="sid_type"/>
11368
<xs:complexType name="library_joints_type">
11370
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11371
<xs:element name="joint" type="joint_type" maxOccurs="unbounded"/>
11372
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11374
<xs:attribute name="id" type="xs:ID" use="optional"/>
11375
<xs:attribute name="name" type="xs:token" use="optional"/>
11377
<xs:complexType name="formula_technique_type">
11379
<xs:element ref="math:math"/>
11382
<xs:complexType name="formula_newparam_type">
11384
<xs:element name="float" type="float_type"/>
11385
<xs:element name="int" type="int_type"/>
11386
<xs:element name="SIDREF" type="sidref_type"/>
11387
<xs:element name="bool" type="xs:boolean"/>
11389
<xs:attribute name="sid" type="sid_type"/>
11391
<xs:complexType name="formula_setparam_type">
11393
<xs:element name="float" type="float_type"/>
11394
<xs:element name="int" type="int_type"/>
11395
<xs:element name="SIDREF" type="sidref_type"/>
11396
<xs:element name="bool" type="xs:boolean"/>
11397
<xs:element name="connect_param" type="kinematics_connect_param_type"/>
11399
<xs:attribute name="ref" type="xs:token" use="required"/>
11401
<xs:complexType name="instance_formula_type">
11403
<xs:element name="setparam" type="formula_setparam_type" minOccurs="0" maxOccurs="unbounded"/>
11405
<xs:attribute name="sid" type="sid_type"/>
11406
<xs:attribute name="name" type="xs:token"/>
11407
<xs:attribute name="url" type="xs:anyURI"/>
11409
<xs:complexType name="animation_clip_type">
11412
The animation_clip element defines a section of the animation curves to be used together as
11414
</xs:documentation>
11417
<xs:element name="asset" type="asset_type" minOccurs="0">
11420
The animation_clip element may contain an asset element.
11421
</xs:documentation>
11424
<xs:element name="instance_animation" type="instance_with_extra_type" maxOccurs="unbounded">
11427
The animation_clip must instance at least one animation element.
11428
</xs:documentation>
11431
<xs:element name="instance_formula" type="instance_formula_type" minOccurs="0" maxOccurs="unbounded"/>
11432
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
11435
The extra element may appear any number of times.
11436
</xs:documentation>
11440
<xs:attribute name="id" type="xs:ID">
11443
The id attribute is a text string containing the unique identifier of this element.
11444
This value must be unique within the instance document. Optional attribute.
11445
</xs:documentation>
11448
<xs:attribute name="name" type="xs:token">
11451
The name attribute is the text string name of this element. Optional attribute.
11452
</xs:documentation>
11455
<xs:attribute name="start" type="float_type" default="0.0">
11458
The start attribute is the time in seconds of the beginning of the clip. This time is
11459
the same as that used in the key-frame data and is used to determine which set of
11460
key-frames will be included in the clip. The start time does not specify when the clip
11461
will be played. If the time falls between two keyframes of a referenced animation, an
11462
interpolated value should be used. The default value is 0.0. Optional attribute.
11463
</xs:documentation>
11466
<xs:attribute name="end" type="float_type">
11469
The end attribute is the time in seconds of the end of the clip. This is used in the
11470
same way as the start time. If end is not specified, the value is taken to be the end
11471
time of the longest animation. Optional attribute.
11472
</xs:documentation>
11476
<xs:complexType name="library_animation_clips_type">
11479
The library_animation_clips element declares a module of animation_clip elements.
11480
</xs:documentation>
11483
<xs:element name="asset" type="asset_type" minOccurs="0">
11486
The library_animation_clips element may contain an asset element.
11487
</xs:documentation>
11490
<xs:element name="animation_clip" type="animation_clip_type" maxOccurs="unbounded">
11493
There must be at least one animation_clip element.
11494
</xs:documentation>
11497
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
11500
The extra element may appear any number of times.
11501
</xs:documentation>
11505
<xs:attribute name="id" type="xs:ID">
11508
The id attribute is a text string containing the unique identifier of this element.
11509
This value must be unique within the instance document. Optional attribute.
11510
</xs:documentation>
11513
<xs:attribute name="name" type="xs:token">
11516
The name attribute is the text string name of this element. Optional attribute.
11517
</xs:documentation>
11521
<xs:complexType name="formula_type">
11523
<xs:element name="newparam" type="formula_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11524
<xs:element name="target" type="common_float_or_param_type"/>
11525
<xs:element name="technique_common" type="formula_technique_type"/>
11526
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded"/>
11528
<xs:attribute name="id" type="xs:ID"/>
11529
<xs:attribute name="name" type="xs:token"/>
11530
<xs:attribute name="sid" type="sid_type"/>
11532
<xs:complexType name="kinematics_model_technique_type">
11534
<xs:element name="newparam" type="kinematics_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11535
<xs:choice minOccurs="0" maxOccurs="unbounded">
11536
<xs:element name="instance_joint" type="instance_joint_type"/>
11537
<xs:element name="joint" type="joint_type"/>
11539
<xs:element name="link" type="link_type" maxOccurs="unbounded"/>
11540
<xs:choice minOccurs="0" maxOccurs="unbounded">
11541
<xs:element name="formula" type="formula_type"/>
11542
<xs:element name="instance_formula" type="instance_formula_type"/>
11546
<xs:complexType name="kinematics_model_type">
11548
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11549
<xs:element name="technique_common" type="kinematics_model_technique_type"/>
11550
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded"/>
11551
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11553
<xs:attribute name="id" type="xs:ID"/>
11554
<xs:attribute name="name" type="xs:token"/>
11556
<xs:complexType name="library_kinematics_models_type">
11558
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11559
<xs:element name="kinematics_model" type="kinematics_model_type" maxOccurs="unbounded"/>
11560
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11562
<xs:attribute name="id" type="xs:ID"/>
11563
<xs:attribute name="name" type="xs:token"/>
11565
<xs:complexType name="kinematics_axis_info_type">
11567
<xs:element name="newparam" type="kinematics_newparam_type" minOccurs="0" maxOccurs="unbounded"/>
11568
<xs:element name="active" type="common_bool_or_param_type" minOccurs="0"/>
11569
<xs:element name="locked" type="common_bool_or_param_type" minOccurs="0"/>
11570
<xs:element name="index" type="kinematics_index_type" minOccurs="0" maxOccurs="unbounded"/>
11571
<xs:element name="limits" type="kinematics_limits_type" minOccurs="0"/>
11572
<xs:choice minOccurs="0" maxOccurs="unbounded">
11573
<xs:element name="formula" type="formula_type"/>
11574
<xs:element name="instance_formula" type="instance_formula_type"/>
11577
<xs:attribute name="sid" type="sid_type"/>
11578
<xs:attribute name="name" type="xs:token"/>
11579
<xs:attribute name="axis" type="xs:token" use="required"/>
11581
<xs:complexType name="kinematics_technique_type">
11583
<xs:element name="axis_info" type="kinematics_axis_info_type" minOccurs="0" maxOccurs="unbounded"/>
11584
<xs:element name="frame_origin" type="kinematics_frame_type"/>
11585
<xs:element name="frame_tip" type="kinematics_frame_type"/>
11586
<xs:element name="frame_tcp" type="kinematics_frame_type" minOccurs="0"/>
11587
<xs:element name="frame_object" type="kinematics_frame_type" minOccurs="0"/>
11590
<xs:complexType name="kinematics_type">
11592
<xs:element name="instance_kinematics_model" type="instance_kinematics_model_type" maxOccurs="unbounded"/>
11593
<xs:element name="technique_common" type="kinematics_technique_type"/>
11594
<xs:element name="technique" type="technique_type" minOccurs="0" maxOccurs="unbounded"/>
11595
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11598
<xs:complexType name="articulated_system_type">
11600
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11602
<xs:element name="kinematics" type="kinematics_type"/>
11603
<xs:element name="motion" type="motion_type"/>
11605
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11607
<xs:attribute name="id" type="xs:ID"/>
11608
<xs:attribute name="name" type="xs:token"/>
11610
<xs:complexType name="library_articulated_systems_type">
11612
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11613
<xs:element name="articulated_system" type="articulated_system_type" maxOccurs="unbounded"/>
11614
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11616
<xs:attribute name="id" type="xs:ID"/>
11617
<xs:attribute name="name" type="xs:token"/>
11619
<xs:complexType name="library_formulas_type">
11621
<xs:element name="asset" type="asset_type" minOccurs="0"/>
11622
<xs:element name="formula" type="formula_type" maxOccurs="unbounded"/>
11623
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded"/>
11625
<xs:attribute name="id" type="xs:ID"/>
11626
<xs:attribute name="name" type="xs:token"/>
11628
<xs:element name="COLLADA">
11630
<xs:appinfo>enable-xmlns</xs:appinfo>
11632
The COLLADA element declares the root of the document that comprises some of the content
11633
in the COLLADA schema.
11634
</xs:documentation>
11638
<xs:element name="asset" type="asset_type">
11641
The COLLADA element must contain an asset element.
11642
</xs:documentation>
11645
<xs:choice minOccurs="0" maxOccurs="unbounded">
11646
<xs:element name="library_animations" type="library_animations_type">
11649
The COLLADA element may contain any
11650
number of library_animations elements.
11651
</xs:documentation>
11654
<xs:element name="library_animation_clips" type="library_animation_clips_type">
11657
The COLLADA element may contain any
11658
number of library_animation_clips
11660
</xs:documentation>
11663
<xs:element name="library_cameras" type="library_cameras_type">
11666
The COLLADA element may contain any
11667
number of library_cameras elements.
11668
</xs:documentation>
11671
<xs:element name="library_controllers" type="library_controllers_type">
11674
The COLLADA element may contain any
11675
number of library_controllerss elements.
11676
</xs:documentation>
11679
<xs:element name="library_geometries" type="library_geometries_type">
11682
The COLLADA element may contain any
11683
number of library_geometriess elements.
11684
</xs:documentation>
11687
<xs:element name="library_effects" type="library_effects_type">
11690
The COLLADA element may contain any
11691
number of library_effects elements.
11692
</xs:documentation>
11695
<xs:element name="library_force_fields" type="library_force_fields_type">
11698
The COLLADA element may contain any
11699
number of library_force_fields elements.
11700
</xs:documentation>
11703
<xs:element name="library_images" type="library_images_type">
11706
The COLLADA element may contain any
11707
number of library_images elements.
11708
</xs:documentation>
11711
<xs:element name="library_lights" type="library_lights_type">
11714
The COLLADA element may contain any
11715
number of library_lights elements.
11716
</xs:documentation>
11719
<xs:element name="library_materials" type="library_materials_type">
11722
The COLLADA element may contain any
11723
number of library_materials elements.
11724
</xs:documentation>
11727
<xs:element name="library_nodes" type="library_nodes_type">
11730
The COLLADA element may contain any
11731
number of library_nodes elements.
11732
</xs:documentation>
11735
<xs:element name="library_physics_materials" type="library_physics_materials_type">
11738
The COLLADA element may contain any
11739
number of library_materials elements.
11740
</xs:documentation>
11743
<xs:element name="library_physics_models" type="library_physics_models_type">
11746
The COLLADA element may contain any
11747
number of library_physics_models
11749
</xs:documentation>
11752
<xs:element name="library_physics_scenes" type="library_physics_scenes_type">
11755
The COLLADA element may contain any
11756
number of library_physics_scenes
11758
</xs:documentation>
11761
<xs:element name="library_visual_scenes" type="library_visual_scenes_type">
11764
The COLLADA element may contain any
11765
number of library_visual_scenes
11767
</xs:documentation>
11770
<xs:element name="library_joints" type="library_joints_type"/>
11771
<xs:element name="library_kinematics_models" type="library_kinematics_models_type"/>
11772
<xs:element name="library_articulated_systems" type="library_articulated_systems_type"/>
11773
<xs:element name="library_kinematics_scenes" type="library_kinematics_scenes_type"/>
11774
<xs:element name="library_formulas" type="library_formulas_type"/>
11776
<xs:element name="scene" minOccurs="0">
11779
The scene embodies the entire set of information that can be visualized from the
11780
contents of a COLLADA resource. The scene element declares the base of the scene
11781
hierarchy or scene graph. The scene contains elements that comprise much of the
11782
visual and transformational information content as created by the authoring tools.
11783
</xs:documentation>
11787
<xs:element name="instance_physics_scene" type="instance_with_extra_type" minOccurs="0" maxOccurs="unbounded">
11790
The instance_physics_scene
11791
element declares the
11792
instantiation of a COLLADA
11793
physics_scene resource. The
11794
instance_physics_scene element
11795
may appear any number of times.
11796
</xs:documentation>
11799
<xs:element name="instance_visual_scene" type="instance_with_extra_type" minOccurs="0">
11802
The instance_visual_scene
11803
element declares the
11804
instantiation of a COLLADA
11805
visual_scene resource. The
11806
instance_visual_scene element
11807
may only appear once.
11808
</xs:documentation>
11811
<xs:element name="instance_kinematics_scene" type="instance_kinematics_scene_type" minOccurs="0" maxOccurs="unbounded"/>
11812
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
11815
The extra element may appear any
11817
</xs:documentation>
11823
<xs:element name="extra" type="extra_type" minOccurs="0" maxOccurs="unbounded">
11826
The extra element may appear any number of times.
11827
</xs:documentation>
11831
<xs:attribute name="version" type="version_enum" use="required">
11834
The version attribute is the COLLADA schema revision with which the instance document
11835
conforms. Required Attribute.
11836
</xs:documentation>
11839
<xs:attribute ref="xml:base">
11842
The xml:base attribute allows you to define the base URI for this COLLADA document. See
11843
http://www.w3.org/TR/xmlbase/ for more information.
11844
</xs:documentation>