[x3d-public] Blender exporter

doug sanden highaspirations at hotmail.com
Wed Jun 10 20:16:32 PDT 2015


Another diff - collada-like declaration section using switch -1, which has the effect of flattening xml nesting.

Date: Wed, 10 Jun 2015 15:48:21 -0700
From: web3d at realism.com
To: x3d-public at web3d.org
Subject: Re: [x3d-public] Blender exporter


  
    
  
  
    Michalis,

      

      That would be great. I have a online tool that does conversion
      from FBX to X3D. The tool has problems because Blender cannot
      handle many FBX files and the X3D converter is not always so good
      (as you have noted).

      

      I do have a request for any future work in Blender (or other DCC
      tool) exporters...

      

      If at all possible, please avoid PROTOs and Script nodes. Script
      nodes have a naming conflict with HTML and some work will need to
      be done. Almost all PROTOs use Script nodes making them not work
      so well with HTML (X3DOM). BTW, Inlines work great; though there
      are issues with multiple URLs (especially from different domains).

      

      Thank you,

      

      Leonard Daly

      

      

      

    
    
      

Michalis,

I hacked an older Bart Campbell python exporter a few times, about 5 years ago, you're welcome to start with or get ideas from this if you don't like the current blender x3d exporter. IIRC the main things I did differently:
a) used an xml library to help form elements
b) included sub-scenes
But I suspect didn't include the sub-scenes correctly, or could have made an option on how to use them They should have been exported as Inlines or Protos and I think I included them in a single export file.
x didn't do animations or fancy stuff - just static
http://sourceforge.net/p/freewrl/git/ci/develop/tree/freex3d/blender_scripts/
- there's a hint/comment in the .py on how to use it with recent versions of blender ie in blender console you enter a command, rather than installing it 
-Doug


      
        
1. Full-featured Blender exporter to X3D, supporting animations and
other stuff. Current Blender->X3D exporter (bundled with Blender) is
indeed limited to static models, and has various other annoyances/lacks.
For my open-source 3D game engine (Castle Game Engine
http://castle-engine.sourceforge.net/ ), it's a great pity that the most
popular open-source 3D authoring tool (Blender!) doesn't have a good X3D
export...

I tried to tackle it a couple of times, but never found enough time...
Enough:) Let's do this:)

      
      

      
        
Technical notes:

- Note that this is a task for Python coding. There's no need to modify
Blender "core" in C++ to create a good X3D exporter (Python script is
much easier to approach, and is suggested way by Blender devs).

- I want to submit the exporter (either a new exporter, or as
much-improved existing exporter) to the Blender to make it included in
the Blender releases.

As for X3D importer, I see some effort going on already, see Blender
mailing list "[Bf-python] Got X3D import fixes" recent thread. I did not
have the time to actually check it yet.

Details what features I would like to add (on top of existing
Blender->X3D features):

- Export of transformation (translating / rotating / scaling) animation.
This simply converts to X3D animation using interpolators on Transform
nodes. This should cover all Blender objects: visible shapes, and also
cameras and lights.

- Export of animation export for mesh deformation, so that you can
export "baked" animated characters (from armature animation, from shape
keys animation etc.) This is simply converted to X3D
CoordinateInterpolator that modifies whole
IndexedFace/TriangleSet.Coordinate contents.

- Take into account Blender actions: each separate Blender action
results in a separate TimeSensor node in X3D. Effectively, your X3D file
will contain all your actions, and you can run your chosen action by
activating a similarly-named TimeSensor node in X3D. An option to
auto-run the first action automatically upon opening the X3D file (by
ProximitySensor) will be available.

- Add export of Blender's custom properties to X3D metadata.

- Add export of Blender's Empty objects to X3D Transform node. By
itself, Transform node without any children is useless, but it can be
used by game engine e.g. to interpret it as a placeholder for initial
creatures/items/traps etc. location on the level (together with above
metadata).

- Add multi-texturing export.

- Add export of 3D sound animation.


      
      
 		 	   		  
_______________________________________________
x3d-public mailing list
x3d-public at web3d.org
http://web3d.org/mailman/listinfo/x3d-public_web3d.org


    
    

    

    -- 

      
        Leonard Daly

        X3D Co-Chair

        Cloud Consultant

        President, Daly Realism - Creating the Future
      
  


_______________________________________________
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/20150610/59377f45/attachment.html>


More information about the x3d-public mailing list