[x3d-public] Thought on X3D -> MuJoCo
John Carlson
yottzumm at gmail.com
Wed Dec 10 15:49:50 PST 2025
That’s a great idea, Joe. I map HAnimJoints to UniversalJoints. But no
one seems interested in why I’m getting no results. Nothing is currently
online. But look back for an attachment of RigidJin.x3d that passes
validation. Again, there’s no deep hierarchies in RBP, unless one might
use RigidBodyCollection.
Please read the standard and make specific recommendations as to needed
fields.
I am interested in flexcomp elements which might be easier to do with X3D
extensions.
John
On Wed, Dec 10, 2025 at 2:33 PM Joe D Williams <joedwil at earthlink.net>
wrote:
>
> https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/rigidBodyPhysics.html#RigidBodyCollection
>
>
>
>
>
> Looking at X3D Rigid Body Physics, it seems easy to see
>
> that the Humanoid is a RigidBody, Joints are RigidBody(s),
>
> Segments can carry data and Sites can be RidgidBody(s)
>
> so the formulation, to me, must be to integrate any physics
>
> into the Humanoid structure
>
> That is the way current X3D RBP was designed and can be
>
> protyped even if we can't find them now. Beat the bushes for
>
> previous x3d implementations.
>
>
>
> So, "map MuJoCo to X3D" means evaluating X3D Rigid Body
>
> nodes and fields directly against MuJoCo interfaces.
>
> Both to see how we can make any improvements to what
>
> web3D is presenting with RBP and how to integrate with
>
> Humanoid, Joint, Segment, and Site objects.
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> -----Original Message-----
> From: Don Brutzman <don.brutzman at gmail.com>
> Sent: Dec 10, 2025 11:50 AM
> To: John Carlson <yottzumm at gmail.com>
> Cc: X3D Ecosystem public discussion <x3d-ecosystem at web3d.org>, Carol
> McDonald <cemd2 at comcast.net>, Bergstrom, Aaron <aaron.bergstrom at und.edu>,
> Andreas Plesch <andreasplesch at gmail.com>, Michalis Kamburelis <
> michalis.kambi at gmail.com>, Holger Seelig <holger.seelig at yahoo.de>, Joe D
> Williams <joedwil at earthlink.net>
> Subject: Re: Thought on X3D -> MuJoCo
>
>
> Thanks for thinking about these things. As you requested, here are
> comments on your proposed approach.
>
> Please think about how to map MuJoCo to X3D. We have a standard for many
> reasons, aligning with it provides much value. Defining correspondences
> for export, import and conversion is powerful. Writing prototypes is
> another powerful approach.
>
> Redesigning X3D is not a goal. Redefining X3DUOM (which matches the X3D
> Architecture specification) is not a goal. X3DPSAIL x3d.py Python and
> X3DJSAIL Java will continue to map to X3D exactly, autogenerated by X3DUOM,
> and so redefining them is not a goal. Issue reports that identify
> implementation gaps when producing valid X3D eventually get fixed.
>
> May I suggest focusing on an example model independently in MUJOCO and X3D
> that does the kind of things you want. X3D has a great many capabilities,
> so exercising them is always interesting. Using a language to express what
> you are thinking is an effective way to use that language.
>
> all the best, Don
> --
> X3D Graphics, Maritime Robotics, Distributed Simulation
> Relative Motion Consulting https://RelativeMotion.info
>
> On Wed, Dec 10, 2025 at 5:23 AM John Carlson <yottzumm at gmail.com> wrote:
>
>> My current thought is to export X3D as MuJoCo using X3DPSAIL, with any
>> added MuJoCo "niceities" added to the X3DPSAIL API, and provide another X3D
>> encoding export method called MuJoCo() for lack of a better name. Perhaps
>> I will subclass existing X3D stuff and add the MuJoCo methods. So I'm
>> looking at extending X3DUOM to include MuJoCo's unique features. This will
>> provide a smooth migration for X3DPSAIL and X3DUOM to an eventual soft body
>> physics standard (currently avoiding HAnim), if anything doesn't already
>> exist.
>>
>> Does this approach sound feasible, without consideration for
>> computationally expensive actions?
>>
>> So the main thing would be to subclass or complement existing X3D nodes.
>> I expect that existing X3D field types can be used.
>>
>> I don't quite know what will happen to x3d.py, but I might require
>> assistance on the X3DPSAIL generating stylesheet.
>>
>> My first plan is to use the X3DUOM.xsd to create a fully
>> MuJoCo-compatible object model using the schema. Then, I will attempt to
>> combine the MuJoCo-COM with X3DUOM. Then I will attempt to create
>> X3DMUJOCOSAIL.
>>
>> Then, the task of integrating MuJoCo and X3D begins, by unifying
>> MuJoCo-COM with X3DUOM.
>>
>> Thus we will be following a similar method that we took when we added
>> glTF's PBR Next to X3DUOM. Once the neo-X3DUOM is created, and
>> neo-X3DPSAIL is done, we will move to JavaScript, Pascal, Java, C++ and
>> other languages.
>>
>> Another approach might be to plaster a x3d.py compatible layer on the
>> MuJoCo python API, (or Java, I guess)..
>>
>> Hmm!
>>
>> John
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20251210/ed87fefa/attachment-0001.html>
More information about the x3d-public
mailing list