[x3d-public] Transforms -> HAnimJoints

John Carlson yottzumm at gmail.com
Sat Sep 16 22:41:17 PDT 2023


Here's how you can run the X3D export from an external python script:

import bpy

# bpy.ops.import_scene.fbx(filepath = "_enter_your_fbx_file_here_.fbx")
bpy.ops.wm.open_mainfile(filepath="_enter_your_blender_file_here_.blend")
bpy.ops.export_scene.x3d(filepath="_enter_your_X3D_file_here_.x3d")

You'll have to at least install  io_scene_x3d/export_x3d.py

in your blender addons.

I find this more convenient than clicking in the Blender GUI.

Indeed, I haven't tested the export plugin from the Blender GUI. Oops!

Time for testers.

John



On Sun, Sep 17, 2023 at 12:34 AM John Carlson <yottzumm at gmail.com> wrote:

> Doug, I have a first cut (Haven't verified scale, center, translation or
> rotation) at adding HAnimHumanoid and HanimJoints export to  X3D Blender
> export. (not X3DV, you're probably way ahead of me on that).
>
> Testing is welcome, but there's nothing visible yet.
>
>  https://github.com/coderextreme/BlenderX3DSupport.
>
> We may need to put copyright notices back in.
>
> John
>
> On Sat, Sep 16, 2023 at 7:38 PM GPU Group <gpugroup at gmail.com> wrote:
>
>> PS I looked at the X3D, WRL importer in blender, and they hack on the
>> text blob to generate some kind of  'AST' abstract syntax tree for both of
>> those, and then traverse that generic AST when converting to blender nodes.
>> So no dependencies on external parsers. I don't know if the same technique
>> would work for html and json.
>> -D
>>
>> On Sat, Sep 16, 2023 at 6:32 PM GPU Group <gpugroup at gmail.com> wrote:
>>
>>> 1. zip the io_scene_x3dv folder so you have io_scene_x3dv.zip
>>> 2. in Blender > Edit > preferences > Install button which will give you
>>> a file picker, pick your zip
>>> 3. still in preferences, make sure the box is checked to activate / turn
>>> it on
>>> Then it shows up in the File > Export list.
>>> If you make changes to it, re-zip, then uninstall from preferences
>>> first, before Install again and check box again
>>> -D
>>>
>>>
>>>
>>> On Sat, Sep 16, 2023 at 3:56 PM John Carlson <yottzumm at gmail.com> wrote:
>>>
>>>> Doug, basic information, like "How to export X3DV in a Blender python
>>>> script" is needed.  I am referring to:
>>>> https://github.com/dug9/BlenderX3DSupport  Please provide basic
>>>> information like how to run a script external to python would help.
>>>>
>>>> Something like:
>>>>
>>>> import bpy
>>>>
>>>> # bpy.ops.import_scene.fbx(filepath = "../../Tufani/LILY_7_3_BLEND.fbx")
>>>> bpy.ops.wm.open_mainfile(filepath="LILY_7_3_BLEND.blend")
>>>> bpy.ops.export_scene.x3dv(filepath="fooLily.x3dv")
>>>>
>>>>
>>>> I will try from the Blender GUI next.
>>>>
>>>> John
>>>>
>>>> On Fri, Aug 25, 2023 at 2:15 PM GPU Group <gpugroup at gmail.com> wrote:
>>>>
>>>>> i'm currently testing with
>>>>>
>>>>> https://freewrl.sourceforge.io/tests/26_Humanoid_Animation/BoxmanBVH_play.x3d
>>>>>
>>>>> - uses freewrl extra nodes HAnimMotionPlay : HAnimMotion and
>>>>> HAnimMotionDataFile HAnimMotionData
>>>>> https://freewrl.sourceforge.io/tests/26_Humanoid_Animation/play.x3d
>>>>> - a handy heads-up Proto for playing files
>>>>> (run,stop,rewind,end,increment,slidebar)
>>>>>
>>>>> https://freewrl.sourceforge.io/tests/26_Humanoid_Animation/BoxmanBVH_play.png
>>>>> and in combination with script in the above scene file I can compare
>>>>> specific animation frames between blender, bvhacker and freewrl, can be
>>>>> adapted to HAnimMotion (doesn't depend on any HAnim nodes itself).
>>>>> -Doug
>>>>>
>>>>> On Fri, Aug 25, 2023 at 12:44 PM John Carlson <yottzumm at gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Yeah, I was trying to write quaternions on shoulder stuff to get from
>>>>>> A Pose to I Pose.
>>>>>>
>>>>>> If you have a good test suite, please share.  One thing that I found
>>>>>> out was you're supposed to multiply on the left of center by the quaternion
>>>>>> and on the right by the inverse quaternion???  Online documentation goes
>>>>>> all over the board.  I'm thinking of resorting to THREE.js. Maybe The
>>>>>> C/C++/C# SAI has something?
>>>>>>
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> John
>>>>>>
>>>>>> On Fri, Aug 25, 2023 at 1:36 PM GPU Group <gpugroup at gmail.com> wrote:
>>>>>>
>>>>>>> John, that's great we'll need you.
>>>>>>> I haven't worked on the blender exporter in weeks, you are welcome
>>>>>>> to start that HAnim export part if you like.
>>>>>>> https://github.com/dug9/BlenderX3DSupport
>>>>>>> Right now I'm struggling to load .bvh files at random with bvhacker
>>>>>>> https://github.com/DaveDubUK/bvhacker as a cleaning tool.  There
>>>>>>> are lots of recorded bvh motion files to download and use. But even
>>>>>>> bvhacker needs work -- for example ensuring  Y-UP (blender exports .bvh
>>>>>>> Z-UP), mapping to HAnim LOA names/selecting the right LOA, ARMS_DOWN
>>>>>>> default pose.
>>>>>>> For example when using a T-pose .bvh file (the T geometry is
>>>>>>> recorded in the OFFSETs field and angles are relative to that pose) on an
>>>>>>> ARMS_DOWN HAnim, the shoulder/arm rotations aren't correct. BVHacker does
>>>>>>> some channel swapping X--Y, but similar technique in freewrl doesn't work
>>>>>>> reliably (yet).
>>>>>>> SUMMARY: I'm in the same zone with the hanim transforms but stuck
>>>>>>> back a few steps in getting freewrl to play a .bvh with good shoulder
>>>>>>> animation. So stuck for a while but open to coordinating with you on HAnim
>>>>>>> and blender exporter.
>>>>>>> -Doug
>>>>>>>
>>>>>>> On Fri, Aug 25, 2023 at 12:21 PM John Carlson <yottzumm at gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Doug,
>>>>>>>>
>>>>>>>> I have some code I've been working on that converts VRML Transforms
>>>>>>>> with DEFs to HAnimJoints.  Maybe we should collaborate on Hanim Blender
>>>>>>>> export. I'm also looking for something that will apply transforms to joint
>>>>>>>> centers, if you have something tested and separate from FreeWRL.
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> John
>>>>>>>>
>>>>>>> _______________________________________________
>> x3d-public mailing list
>> x3d-public at web3d.org
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20230917/9356cbb5/attachment-0001.html>


More information about the x3d-public mailing list