element ShaderProgram
diagram x3d-3.2_diagrams/x3d-3.2_p184.png
type extension of X3DNodeMixedContent
properties
content complex
mixed true
children field IS MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString
used by
element ProgramShader
group LoadSensorChildContentModel
attributes
Name  Type  Use  Default  Fixed  Annotation
DEF  xs:ID        
appinfo

DEF defines a unique ID name for each node, referenceable by other nodes.
USE  xs:IDREF        
appinfo

USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value).
class  xs:NMTOKENS        
appinfo

The class attribute is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
type  xs:NMTOKEN    VERTEX    
url  MFString        
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
containerField  xs:NMTOKEN    programs    
annotation
appinfo
<xs:element name="field" type="MFNode" default="field"/>
<!-- optional values, can be extended -->
<xs:attribute name="type" type="shaderPartTypeValues"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DUrlObject"/>
<xs:attribute name="additionalInterface" type="xs:string" default="X3DProgrammableShaderObject"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shaders"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
ShaderProgram can contain field declarations and a CDATA section of plain-text source code.
source <xs:element name="ShaderProgram">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="field" type="MFNode" default="field"/>
     
<!-- optional values, can be extended -->
     
<xs:attribute name="type" type="shaderPartTypeValues"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DUrlObject"/>
     
<xs:attribute name="additionalInterface" type="xs:string" default="X3DProgrammableShaderObject"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shaders"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="1"/>
ShaderProgram can contain field declarations and a CDATA section of plain-text source code.
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shaders.html#ShaderProgram"/>
 
</xs:annotation>
 
<xs:complexType mixed="true">
   
<xs:complexContent>
     
<xs:extension base="X3DNodeMixedContent">
       
<xs:sequence>
         
<xs:element ref="field" minOccurs="0" maxOccurs="unbounded"/>
         
<xs:element ref="IS" minOccurs="0"/>
         
<xs:group ref="ChildContentModelCore" minOccurs="0">
           
<xs:annotation>
             
<xs:documentation>metadata</xs:documentation>
           
</xs:annotation>
         
</xs:group>
       
</xs:sequence>
       
<xs:attribute name="type" type="xs:NMTOKEN" default="VERTEX"/>
       
<xs:attribute name="url" type="MFString">
         
<xs:annotation>
           
<xs:appinfo>
             
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
             
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
           
</xs:appinfo>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="programs"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute ShaderProgram/@type
type xs:NMTOKEN
properties
default VERTEX
source <xs:attribute name="type" type="xs:NMTOKEN" default="VERTEX"/>

attribute ShaderProgram/@url
type MFString
annotation
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
source <xs:attribute name="url" type="MFString">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Networking"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="4"/>
   
</xs:appinfo>
 
</xs:annotation>
</xs:attribute>

attribute ShaderProgram/@containerField
type xs:NMTOKEN
properties
default programs
source <xs:attribute name="containerField" type="xs:NMTOKEN" default="programs"/>


XML Schema documentation generated by XMLSpy Schema Editor http://www.altova.com/xmlspy