[X3D-Ecosystem] Thought on X3D -> MuJoCo
John Carlson
yottzumm at gmail.com
Wed Dec 10 16:00:45 PST 2025
Yes, there are many models to explore in MuJoCo. Grid is good for
trampolines and hammocks. I am not aware of this in X3D except for
subdivisions in X3DOM. One could create an IndexedFaceSet, which there are
ways to specify tris and points in MuJoCo.
On Wed, Dec 10, 2025 at 1:50 PM Don Brutzman <don.brutzman at gmail.com> wrote:
> Thanks for thinking about these things. As you requested, here are
> comments on your proposed approa.
>
> 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-ecosystem_web3d.org/attachments/20251210/15276f14/attachment.html>
More information about the X3D-Ecosystem
mailing list