<xs:element name="create_cube">
<xs:annotation>
<xs:documentation>Initialize a custom cube image</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="size">
<xs:annotation>
<xs:documentation>The surface should be sized to these exact dimensions</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="width" type="xs:unsignedInt" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="mips" type="image_mips_type"/>
<xs:element name="array" minOccurs="0">
<xs:complexType>
<xs:attribute name="length" type="xs:unsignedInt" use="required">
<xs:annotation>
<xs:documentation>Zero is not an array</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="format" minOccurs="0">
<xs:annotation>
<xs:documentation>If not present it is assumed to be R8G8B8A8 linear.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="hint">
<xs:annotation>
<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>
</xs:annotation>
<xs:complexType>
<xs:attribute name="channels" type="image_format_hint_channels_enum" use="required">
<xs:annotation>
<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>
</xs:annotation>
</xs:attribute>
<xs:attribute name="range" type="image_format_hint_range_enum" use="required">
<xs:annotation>
<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>
</xs:annotation>
</xs:attribute>
<xs:attribute name="precision" type="image_format_hint_precision_enum" default="DEFAULT">
<xs:annotation>
<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>
</xs:annotation>
</xs:attribute>
<xs:attribute name="space" type="xs:token">
<xs:annotation>
<xs:documentation>linear(default), sRGB</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="exact" type="xs:token" minOccurs="0">
<xs:annotation>
<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>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="init_from" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<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>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="image_source_type">
<xs:attribute name="face" type="image_face_enum" use="required"/>
<xs:attribute name="mip_index" type="xs:unsignedInt" use="required"/>
<xs:attribute name="array_index" type="xs:unsignedInt" use="optional" default="0"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element> |