Date post: | 21-Dec-2015 |
Category: |
Documents |
View: | 215 times |
Download: | 2 times |
A Standard Humanoid Representation on The Web:
VRML/X3D Humanoid Animation Working Group
(H-anim)Che-Jen Chen
[email protected]/30/2003
Intelligent Media Laboratory Department of Computer Science, NCCU
Outline
Introduction Background H-Anim Specifications H-Anim Applications Conclusion
Introduction
Representing Humanoid Is an Increasing Need on the Growing 3D Internet!
What We Need …1. The Creation of Interchangeable Humanoids2. Tools For Creating and Animating
Humanoids
H-Anim : A Standard Way Representing Humanoids Based on VRML/X3D
Background
VRML X3D VRML/X3D and H-Anim MPEG-4, AML, VHML and H-Anim
VRML (Virtual Reality Modeling Language)
VRML 1.0 : 1995, Silicon Graphics Inc.• Geometries, Materials, Viewpoints…
VRML 2.0 : 1997, Web3D Consortium• Animation, Prototyping, Scripting…
VRML97 : 1997• NURBS, EAI (External Authoring Interface)
…• An ISO Standard
VRML (Cont.)
Not A Tag Language ?Inherit Concepts From Open Inventor
- Node- Scene Graph
#VRML V2.0 utf8DEF ball Shape {
appearance Appearance {
material Material { }}geometry Sphere {
radius 1.0}
}
#Inventor V2.1 asciiDEF ball Group {
Material { }
Sphere {radius 1.0
}}
X3D (Extensible 3D)
Extending and Upgrading the Geometry and Behavior Capabilities VRML97 Using XML
<X3D><head><meta content="ball.x3d" name="filename"/></head><Scene>
<Shape><Appearance>
<Material/></Appearance><Sphere radius="1.0"/>
</Shape></Scene>
</X3D>
VRML/X3D and H-Anim
VRML97• H-Anim 1.0 Specification• H-Anim 1.1 Specification• H-Anim 2001 Specification
X3D• H-Anim 2.0 Specification
MPEG-4, AML, VHML and H-Anim
MPEG-4 and H-Anim• Facial Expression: Identical to FAPs
AML (Avatar Markup Language, Mira Lab, VR Lab)• Text To Speech, Facial and Body Animation• Encapsulation and Synchronization
VHML (Virtual Human Markup Language, au)• Mentor System• BAML Body Animation Markup Language
H-Anim Specifications
The Nodes Level of
Articulation
The Nodes : Humanoid NodeHumanoid : X3DHumanoidNode {
MFNode [in] addChildrenMFNode [in] removeChildrenMFNode [in,out] humanoidBody [] [HumanoidRoot]MFNode [in,out] joints [] [Joint]MFNode [in,out] segments [] [Segment]MFNode [in,out] sites [] [Site]MFNode [in,out] viewpoints [] [Viewpoint]SFVec3f [in,out] center 0 0 0 (-∞,∞)MFString [in,out] info []SFString [in,out] name ""SFRotation [in,out] rotation 0 0 1 0 (-∞,∞)|[-1,1]SFVec3f [in,out] scale 1 1 1 (0,∞)SFRotation [in,out] scaleOrientation 0 0 1 0 (-∞,∞)|[-1,1]SFVec3f [in,out] translation 0 0 0 (-∞,∞)SFString [in,out] version "1.1"SFVec3f [] bboxCenter 0 0 0 (-∞,∞)SFVec3f [] bboxSize -1 -1 -1 (0,∞)|[-1 -1 -1]
}
The Nodes : Joint Node
Joint : X3DGroupingNode {MFNode [in] addChildren [Joint]MFNode [in] removeChildren [Joint]MFNode [in,out] children [] [Joint]SFVec3f [in,out] center 0 0 0 (-∞,∞)MFFloat [in,out] llimit [] (-∞,∞)SFRotation [in,out] limitOrientation 0 0 1 0 (-∞,∞)|[-1,1]SFString [in,out] name ""SFRotation [in,out] rotation 0 0 1 0 (-∞,∞)|[-1,1]SFVec3f [in,out] scale 1 1 1 (0,∞)SFRotation [in,out] scaleOrientation 0 0 1 0 (-∞,∞)|[-1,1]MFFloat [in,out] stiffness [0 0 0] [0,1]SFVec3f [in,out] translation 0 0 0 (-∞,∞)MFFloat [in,out] ulimit [] (-∞,∞)SFVec3f [] bboxCenter 0 0 0 (-∞,∞)SFVec3f [] bboxSize -1 -1 -1 (0,∞)|[-1 -1 -1]
}
The Nodes : Segment Node
Segment : X3DGroupingNode {MFNode [in] addChildren [Site]MFNode [in] removeChildren [Site]MFNode [in,out] children [] [Site]SFNode [in,out] coord NULL [X3DCoordinateNode]MFNode [in,out] displacers [] [Displacer]SFVec3f [in,out] centerOfMass 0 0 0 (-∞,∞)SFFloat [in,out] mass 0 (0,∞)MFFloat [in,out] momentsOfInertia [0 0 0 0 0 0 0 0 0] [0,∞)SFString [in,out] name ""SFVec3f [] bboxCenter 0 0 0 (-∞,∞)SFVec3f [] bboxSize -1 -1 -1 (0,∞) or -1 -1 -1
}
The Nodes : Site Node
Site : X3DGroupingNode {MFNode [in] addChildren [X3DChildNode]MFNode [in] removeChildren [X3DChildNode]MFNode [in,out] children [] [X3DChildNode]SFVec3f [in,out] center 0 0 0 (-∞,∞)SFString [in,out] name ""SFRotation [in,out] rotation 0 0 1 0 (-∞,∞)|[-1,1]SFVec3f [in,out] scale 1 1 1 (0,∞)SFRotation [in,out] scaleOrientation 0 0 1 0 (-∞,∞)|[-1,1]SFVec3f [in,out] translation 0 0 0 (-∞,∞)|[-1,1]SFVec3f [] bboxCenter 0 0 0 (-∞,∞)SFVec3f [] bboxSize -1 -1 -1 (0,∞)|[-1 -1 -1]
}
The Nodes : Diplacer Node
Displacer : X3DGeometricPropertyNode {MFInt32 [in,out] coordIndex [] [0,∞) or -1MFVec3f [in,out] displacements [] [X3DCoordinateNode]SFString [in,out] name ""
}
Level of Articulation
H-Anim Applications
Humanoid Animation/Simulation Agent, Avatar, Tutor… Multi-User Virtual Community Human Anthropometrics
Humanoid Animation/Simulation
Humanoid Animation/Simulation
Multi-User Virtual Community
Human Anthropometrics
Conclusion
H-Anim 2.0 • Persevere the Compatibilities to Old
VRML Virtual Humanoid/Environment
• Extending the Capabilities of Humanoid Representation
Other Compatibility Issue• The Convention of Joint Rotation
Q & A
Presented by Che-Jen [email protected]
May/30/2003Intelligent Media Laboratory
Department of Computer Science, NCCU
Thank You!