[x3d-public] Improper inheritance? not to specification in X3DUOM, check XML schema as well
John Carlson
yottzumm at gmail.com
Wed Dec 4 03:45:25 PST 2024
Fixing X3DUOM and regenerating the X3D JSON schema patched up
these issues. If someone wants to validate X_ITE components with JSON
schema, I'm very close to a solution.
Remaining issues I'm discussing with Holger:
find . -name '*.x3dj' | xargs node ~/x3dvalidate/index.js |egrep '^
params|^ file|^ location'
location in document: /X3D/Scene/-children/1/HAnimHumanoid/-skeleton/0
params: {"additionalProperty":"Transform"}
file: ./BrainStem/glTF/BrainStem.x3dj
location in document: /X3D/Scene/-children/1/HAnimHumanoid/-skeleton/0
params: {"additionalProperty":"Transform"}
file: ./BrainStem/glTF-Embedded/BrainStem.x3dj
location in document: /X3D/Scene/-children/1/HAnimHumanoid/-skeleton/0
params: {"additionalProperty":"Transform"}
file: ./BrainStem/glTF-Meshopt/BrainStem.x3dj
Transform is placed in skeleton field. Bad idea.
location in document:
/X3D/Scene/-children/1/Group/-children/3/PointLight/@radius
params: {"comparison":">=","limit":0}
file: ./LightsPunctualLamp/glTF/LightsPunctualLamp.x3dj
Negative radius not allowed.
location in document:
/X3D/Scene/-children/1/Group/-children/0/HAnimHumanoid/-skeleton/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0/HAnimJoint/-children/0
params: {"additionalProperty":"HAnimHumanoid"}
file: ./RecursiveSkeletons/glTF/RecursiveSkeletons.x3dj
I don't think recursive skeletons are allowed in X3D, At least not a child
of a HAnimJoint.
location in document:
/X3D/Scene/-children/1/Group/-children/1/Transform/-children/19/Transform/-children/0/Shape/-appearance/Appearance/-material/PhysicalMaterial/-extensions/0/SpecularMaterialExtension/@specularColor/0
params: {"comparison":"<=","limit":1}
file: ./SpecularTest/glTF/SpecularTest.x3dj
We want to change X3D to have specularColor values > 1
location in document:
/X3D/Scene/-children/1/Group/-children/1/PointLight/@radius
params: {"comparison":">=","limit":0}
file: ./TransmissionSuzanne/glTF/TransmissionSuzanne.x3dj
Ditto for PointLight radius. should be >= 0
location in document:
/X3D/Scene/-children/1/Shape/-appearance/Appearance/-material/PhysicalMaterial/-baseTexture/ImageTexture/@url/0
params: {"format":"uri-reference"}
file: ./Unicode❤♻Test/glTF/Unicode❤♻Test.x3dj
Emojis in URIs?
On Wed, Dec 4, 2024 at 5:00 AM John Carlson <yottzumm at gmail.com> wrote:
> From cancelled message:
>
> Possible Error in X3DUOM:
>
> <ConcreteNode name="TextureTransform">
> <InterfaceDefinition specificationUrl="
> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/texturing.html#TextureTransform
> "
> appinfo="TextureTransform shifts 2D texture
> coordinates for positioning, orienting and scaling image textures on
> geometry.">
> <componentInfo name="Texturing"
> level="1"/>
> <Inheritance baseType="*X3DTextureTransformNode*"/>
> [snip]
> <ConcreteNode name="TextureTransformMatrix3D">
> <InterfaceDefinition specificationUrl="
> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/texture3D.html#TextureTransformMatrix3D
> "
> appinfo="TextureTransformMatrix3D applies a
> 3D transformation to texture coordinates.">
> <componentInfo name="Texturing3D" level="1"/>
> <Inheritance baseType="*X3DTextureTransformNode*"/>
>
> Specification:
>
>
> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/texture3D.html#TextureTransformMatrix3D
>
> TextureTransformMatrix3D : *X3DSingleTextureTransformNode *{
> SFString [in,out] mapping ""
> SFMatrix4f [in,out] matrix 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 (-∞,∞)
> SFNode [in,out] metadata NULL [X3DMetadataObject]
> }
>
>
> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/texturing.html#TextureTransform
>
> TextureTransform : *X3DSingleTextureTransformNode *{
> SFVec2f [in,out] center 0 0 (-∞,∞)
> SFString [in,out] mapping ""
> SFNode [in,out] metadata NULL [X3DMetadataObject]
> SFFloat [in,out] rotation 0 (-∞,∞)
> SFVec2f [in,out] scale 1 1 (-∞,∞)
> SFVec2f [in,out] translation 0 0 (-∞,∞)
> }
>
>
>
> This is why X3D JSON schema should be accepted in the Web3D Standard
> suite. I wouldn't have found this without it.
>
> Hats off to Holger for great work on x3d-tidy conversions from .gltf to
> .x3dj which was essential for this.
>
> John
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20241204/3fab42a5/attachment-0001.html>
More information about the x3d-public
mailing list