[x3d-public] Mantis 1410: HAnimHumanoid skin definitions have no way to assign textures

Brutzman, Donald (Don) (CIV) brutzman at nps.edu
Sun Dec 4 16:12:55 PST 2022


Joe and I were working with various HAnim models today (using X3D-Edit!) and
found an important problem.

 

 

*	Mantis 1410: HAnimHumanoid skin definitions have no way to assign
textures
*	https://www.web3d.org/member-only/mantis/view.php?id=1410

 

HAnimHAnimHumanoid skin definitions have no way to assign textures because
Shape nodes are not currently allowed in the X3D4 parent-child node
hierarchy.

* X3D4 Architecture, HAnim component, 26.3.2 HAnimHumanoid
*
https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-DIS/Part01/
components/hanim.html#HAnimHumanoid

Relevant field is
  MFNode [in,out] skin [] [IndexedFaceSet, IndexedFanSet, IndexedQuadSet,
IndexedTriangleSet, IndexedTriangleStripSet]

It is possible to assign color values, through use of Color or ColorRGBA
nodes within IndexedFaceSet, for example. However, because Shape is not
permitted, there is no way to assign corresponding Appearance with either
Material or ImageTexture.

 

The following example shows animated skin with a texture, playable in X_ITE
(and X3DOM and BSContact) players.

* X3D Example Archives: Humanoid Animation, Characters, Joe Kick
*
<https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/Joe
KickIndex.html>
https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/JoeK
ickIndex.html

Excerpt:
<Shape DEF='Joe_Shape' containerField='skin'>
  <Appearance DEF='Joe_skin_Appearance'>
    <Material DEF='Joe_skin_Material' diffuseColor='0.3 0.3 0.6'
emissiveColor='0.3 0.3 0.6'/>
    <ImageTexture DEF='JoeSkinImageTexture'
  url=' "JoeBodyTexture29.png" "
<https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/Joe
BodyTexture29.png%22>
https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/JoeB
odyTexture29.png" '/>
    <!-- ROUTE information for KickTextureTransform node: [from
SkinInterpolator.value_changed to rotation ] -->
    <TextureTransform DEF='KickTextureTransform'/>
  </Appearance>
  <IndexedFaceSet DEF='Joe_skin_IndexedFaceSet' etc.
     <Coordinate DEF='Joe_SkinCoord' point= etc.
     <TextureCoordinate point='0 0 0.5 0.5 0.5 0 0 0.5'/>
  </IndexedFaceSet>
</Shape>

 

HAnim specification says

* HAnim specification version 2 volume 1, 6 Object interfaces, 6.2 Humanoid
*
<https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/Obje
ctInterfaces.html#Humanoid>
https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/Objec
tInterfaces.html#Humanoid

sequence<Object> skin [] [indexed mesh objects as defined by the
representation]

 

An example "representation" for HAnim is X3D.

Possible fix:
a. Allow Shape node, in addition to IndexedFaceSet etc. (Matching Joe's
example)
b. Note in the X3D4 specification prose that such a Shape node must contain
one of those same nodes (IFS, ITS etc.).  That will allow identical geometry
capabilities that are currently clearly defined.

 

Note that the animated Korean characters did not display such a problem
because they are apparently textures are part of HAnimSegment that is
animated, which is part of skeleton field hierarchy, and not part of skin
field.  For example,

*	X3D Example Archives: Humanoid Animation, Characters, Jin LOA 4
*	Articulated 3D game character designed with a general graphics tool,
then converted into an X3D HAnim model.
*
https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Characters/JinL
OA4Index.html

 

 

We recommend

*	Taking a generous view of HAnim2 wording "[indexed mesh objects as
defined by the representation]"
*	to allow identical usage of a Shape node, thus ensuring that
textures are possible on animated human skin.
*	Such an approach is already demonstrated in our examples, so it is
feasible and expected.

 

Sincerely yours, Joe and Don.

 

 

all the best, Don

-- 

Don Brutzman  Naval Postgraduate School, Code USW/Br        brutzman at nps.edu

Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149

X3D graphics, virtual worlds, Navy robotics https://
faculty.nps.edu/brutzman

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20221205/7e0ca89e/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5353 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20221205/7e0ca89e/attachment-0001.p7s>


More information about the x3d-public mailing list