[x3d-public] Should Appearance material be an SFNode (current) or MFNode? see backTexture

John Carlson yottzumm at gmail.com
Sat Apr 17 17:33:36 PDT 2021


These two files also appear to have 2 Material Appearance without 
containerFields:

https://x3dgraphics.com/examples/X3dForAdvancedModeling/AudioSpatialSound/SpatialAudioCameraAnimation.html

https://x3dgraphics.com/examples/X3dForAdvancedModeling/AudioSpatialSound/SingleAudio.html

That's all for now.  Time for another test cycle.

John

On 4/17/21 6:08 PM, John Carlson wrote:
> https://x3dgraphics.com/examples/X3dForAdvancedModeling/AudioSpatialSound/SplitChannelsIndex.html 
>
>
> Needs containerField's for its two Material Appearance.  I haven't 
> checked the other two files for containerFields
>
>
> John
>
> On 4/17/21 5:55 PM, Don Brutzman wrote:
>> Looks like your specification reference is out of date.  Please use 
>> current X3D4 Committee Draft (CD) so that we are proofing the new spec.
>>
>> * X3D4 CD Architecture > Shape Component > 12.4.2 Appearance
>> https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD/Part01/components/shape.html#Appearance 
>>
>>
>> Hmmm, looks like a significant spec error, backMaterial missing??
>>
>> Appearance : X3DAppearanceNode {
>> SFNode   [in,out] acousticProperties NULL 
>> [AcousticProperties]SFFloat  [in,out] alphaCutoff        0.5 
>> [0,1]SFString [in,out] alphaMode          "AUTO" ["AUTO", "OPAQUE", 
>> "MASK", "BLEND"]SFNode   [in,out] backMaterial NULL 
>> [X3DOneSidedMaterialNode]
>> SFNode   [in,out] fillProperties     NULL   [FillProperties]
>> SFNode   [in,out] lineProperties     NULL   [LineProperties]
>> SFNode   [in,out] material           NULL   [X3DMaterialNode]
>> SFNode   [in,out] metadata           NULL   [X3DMetadataObject]
>> SFNode   [in,out] pointProperties    NULL   [PointProperties]
>> MFNode   [in,out] shaders            []     [X3DShaderNode]
>> SFNode   [in,out] texture            NULL   [X3DTextureNode]
>> SFNode   [in,out] textureTransform   NULL [X3DTextureTransformNode]
>> }
>>
>> Actually just a line-spacing error, notice how first field is a 
>> run-on line.  Corrected:
>>
>> Appearance : X3DAppearanceNode {
>> SFNode   [in,out] acousticProperties NULL   [AcousticProperties]
>> SFFloat  [in,out] alphaCutoff        0.5    [0,1]
>> SFString [in,out] alphaMode          "AUTO" ["AUTO", "OPAQUE", 
>> "MASK", "BLEND"]
>> SFNode   [in,out] backMaterial       NULL [X3DOneSidedMaterialNode]
>> SFNode   [in,out] fillProperties     NULL   [FillProperties]
>> SFNode   [in,out] lineProperties     NULL   [LineProperties]
>> SFNode   [in,out] material           NULL   [X3DMaterialNode]
>> SFNode   [in,out] metadata           NULL   [X3DMetadataObject]
>> SFNode   [in,out] pointProperties    NULL   [PointProperties]
>> MFNode   [in,out] shaders            []     [X3DShaderNode]
>> SFNode   [in,out] texture            NULL   [X3DTextureNode]
>> SFNode   [in,out] textureTransform   NULL [X3DTextureTransformNode]
>> }
>>
>> Note that Appearance can have both <Material 
>> containerField='material'/> and <Material 
>> containerField='backMaterial'/> for front and back material definitions.
>>
>> On 4/15/2021 11:53 PM, John Carlson wrote:
>>> Indeed, Appearance material is an SFNode, not an MFNode in X3DV4.   
>>> What do you think?
>>
>> So yes, /material/ field is an SFNode and yes, in X3D4 your 
>> Appearance might legally have two Material nodes if one is assigned 
>> as containerField='backMaterial' for 2-sided texturing.
>>
>> I have added this formatting problem as Mantis issue 1357 to ensure 
>> that it is resolved properly.
>>
>> all the best, Don



More information about the x3d-public mailing list