element PhysicalMaterial
diagram x3d-4.0_diagrams/x3d-4.0_p175.png
type extension of X3DOneSidedMaterialNode
properties
content complex
children IS MetadataBoolean MetadataDouble MetadataFloat MetadataInteger MetadataSet MetadataString ImageTexture MovieTexture PixelTexture ProtoInstance
used by
group AppearanceChildContentModelNoProtoInstance
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.
                    This attribute is only functional if the X3D model is loaded within an HTML page.
               
id  xs:NMTOKEN        
appinfo

                    The id attribute is a unique identifier, reserved for use by HTML5/DOM pages, independent of DEF labeling and internal X3D node referencing.
                    This attribute is only functional if the X3D model is loaded within an HTML page.
               
style  SFString        
appinfo

                    The style attribute provides an inline block of CSS for element styling, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets.
                    This attribute is only functional if the X3D model is loaded within an HTML page.
               
emissiveColor  SFColor    0 0 0    
appinfo

                            A Material with emissiveColor not equal to (0,0,0) and diffuseColor equal to (0,0,0) is an unlit material.
                       
emissiveTextureMapping  xs:NMTOKEN        
normalScale  derived by: SFFloat    1    
appinfo
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
normalTextureMapping  xs:NMTOKEN        
baseColor  SFColor    1 1 1    
baseTextureMapping  xs:NMTOKEN        
metallic  intensityType    1    
metallicRoughnessTextureMapping  xs:NMTOKEN        
documentation
Special node correspondences
occlusionStrength  intensityType    1    
occlusionTextureMapping  xs:NMTOKEN        
documentation
Special node correspondences
roughness  intensityType    1    
transparency  intensityType    0    
containerField  xs:NMTOKEN    material    
annotation
appinfo
<xs:element name="baseTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
<xs:element name="emissiveTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
<xs:element name="metallicRoughnessTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
<xs:element name="normalTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
<xs:element name="occlusionTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
source <xs:element name="PhysicalMaterial">
 
<xs:annotation>
   
<xs:appinfo>
     
<xs:element name="baseTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
     
<xs:element name="emissiveTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
     
<xs:element name="metallicRoughnessTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
     
<xs:element name="normalTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
     
<xs:element name="occlusionTexture" type="SFNode" fixed="inputOutputField" default="X3DSingleTextureNode"/>
     
<xs:attribute name="componentName" type="componentNameChoices" fixed="Shape"/>
     
<xs:attribute name="componentLevel" type="xs:positiveInteger" fixed="2"/>
   
</xs:appinfo>
   
<xs:documentation source="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/shape.html#PhysicalMaterial"/>
 
</xs:annotation>
 
<xs:complexType>
   
<xs:complexContent>
     
<xs:extension base="X3DOneSidedMaterialNode">
       
<xs:choice minOccurs="0" maxOccurs="5">
         
<xs:annotation>
           
<xs:documentation>baseTexture, emissiveTexture, metallicRoughnessTexture, normalTextuer, occlusionTexture</xs:documentation>
         
</xs:annotation>
         
<!-- TODO strictly one of each field, any order -->
         
<xs:element ref="ImageTexture"/>
         
<xs:element ref="MovieTexture"/>
         
<xs:element ref="PixelTexture"/>
         
<xs:element ref="ProtoInstance">
           
<xs:annotation>
             
<xs:documentation>Appropriately typed substitution node</xs:documentation>
           
</xs:annotation>
         
</xs:element>
       
</xs:choice>
       
<xs:attribute name="baseColor" type="SFColor" default="1 1 1"/>
       
<xs:attribute name="baseTextureMapping" type="xs:NMTOKEN"/>
       
<xs:attribute name="metallic" type="intensityType" default="1"/>
       
<xs:attribute name="metallicRoughnessTextureMapping" type="xs:NMTOKEN">
         
<xs:annotation>
           
<xs:documentation>Special node correspondences</xs:documentation>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="occlusionStrength" type="intensityType" default="1"/>
       
<xs:attribute name="occlusionTextureMapping" type="xs:NMTOKEN">
         
<xs:annotation>
           
<xs:documentation>Special node correspondences</xs:documentation>
         
</xs:annotation>
       
</xs:attribute>
       
<xs:attribute name="roughness" type="intensityType" default="1"/>
       
<xs:attribute name="transparency" type="intensityType" default="0"/>
       
<xs:attribute name="containerField" type="xs:NMTOKEN" default="material"/>
     
</xs:extension>
   
</xs:complexContent>
 
</xs:complexType>
</xs:element>

attribute PhysicalMaterial/@baseColor
type SFColor
properties
default 1 1 1
facets
Kind Value Annotation
whiteSpace collapse
pattern (\s)*(([+]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)(\s)+){2}([+]?((0(\.[0-9]*)?|\.[0-9]+)|1(\.0*)?)([Ee][+-]?[0-9]+)?)(\s)*
source <xs:attribute name="baseColor" type="SFColor" default="1 1 1"/>

attribute PhysicalMaterial/@baseTextureMapping
type xs:NMTOKEN
source <xs:attribute name="baseTextureMapping" type="xs:NMTOKEN"/>

attribute PhysicalMaterial/@metallic
type intensityType
properties
default 1
facets
Kind Value Annotation
minInclusive 0
maxInclusive 1
source <xs:attribute name="metallic" type="intensityType" default="1"/>

attribute PhysicalMaterial/@metallicRoughnessTextureMapping
type xs:NMTOKEN
annotation
documentation
Special node correspondences
source <xs:attribute name="metallicRoughnessTextureMapping" type="xs:NMTOKEN">
 
<xs:annotation>
   
<xs:documentation>Special node correspondences</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute PhysicalMaterial/@occlusionStrength
type intensityType
properties
default 1
facets
Kind Value Annotation
minInclusive 0
maxInclusive 1
source <xs:attribute name="occlusionStrength" type="intensityType" default="1"/>

attribute PhysicalMaterial/@occlusionTextureMapping
type xs:NMTOKEN
annotation
documentation
Special node correspondences
source <xs:attribute name="occlusionTextureMapping" type="xs:NMTOKEN">
 
<xs:annotation>
   
<xs:documentation>Special node correspondences</xs:documentation>
 
</xs:annotation>
</xs:attribute>

attribute PhysicalMaterial/@roughness
type intensityType
properties
default 1
facets
Kind Value Annotation
minInclusive 0
maxInclusive 1
source <xs:attribute name="roughness" type="intensityType" default="1"/>

attribute PhysicalMaterial/@transparency
type intensityType
properties
default 0
facets
Kind Value Annotation
minInclusive 0
maxInclusive 1
source <xs:attribute name="transparency" type="intensityType" default="0"/>

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


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