ksons / xml3d-blender-exporter Goto Github PK
View Code? Open in Web Editor NEWBlender web-exporter for xml3d.js (beta)
License: GNU General Public License v2.0
Blender web-exporter for xml3d.js (beta)
License: GNU General Public License v2.0
When writing out the shared materials, material alpha only takes into account the material transparency and does not take into account the material texture's alpha_factor, which results in non WYSIWYG behaviour where the Blender Renderer displays the material (material alpha = 0, alpha_factor = 1.0) while XML3D does not, and can be fairly hard to debug for people using Blender as only an intermediary on their way from models obtained online to rendering with XML3D.
For instance, if the object is on layer 1, the object has as class name:
<group class="layer-1">...</group>
Can be used for filtering
The transform hierarchy is exported using the CSS 3D transforms matrix3d functionality. All transformations get accumulated.
If I try to export a scene with template 'XML3D only' I get the following error message on the console:
FileNotFoundError: [Errno 2] No such file or directory: '/Users/fanu01/Library/Application Support/Blender/2.75/scripts/addons/io_scene_xml3d/templates/xml3d/public'
Indeed, in my .../Application Support/.../templates/xml3d/ folder, the 'public' folder is missing.
(Maybe dropped by GitHub because empty?)
Environment: MaxOSX 10.9, Blender 2.75a and 2.70, exporter 0.4.0.
The object saved to xml3d-info.json
does not reset in between multiple exports of the same scene. This results in multiple references to assets, materials, etc. in that file. It also results in warnings not disappearing even when the problem has already been solved.
Restarting Blender and reexporting the scene results in a "clean" file again.
Support for animated rigged meshes.
Requires:
Currently, only UV texture mapping is supported. Other mapping types could be supported in a generated shader.
Workaround: Use UV texture mapping.
Following Blnedr lamp types are not supported in XML3D:
Lamps of these types get ignored during the export.
Workaround: Use one of the other lamp types.
Using Duplicate Linked (Alt D)
to create multiple instances of the same mesh results in multiple <model>
elements with the same id
(the name of the mesh the object is linked to).
Reproduce:
Duplicate Linked (Alt D)
command in BlenderSimilar to #1, but using instead of merging transformations, use rotate3d, translate3d and scale3d functionality.
From @Arsakes on October 8, 2015 21:24
I've used blender exporter to create an animated asset - it works perfectly if there is only one bone with 1.0 weight for whole asset.
However for skeleton that consists of many bones and different weights the animations doesn't work as expected (or rather as in blender). The situation is following:
I'm eager to give you both xml3d assets and blender file to test.
Copied from original issue: xml3d/xml3d.js#150
Blender has a World Ambient Color, which influences all objects with a material ambient value > 0.0. In XML3D's phong shader, there is an ambient intensity, which is a scalar that is multiplied with the diffuse color. There is no global world color.
The difference in the semantic can lead to unexpected results.
Workaround: Don't use World's Ambient Color or only grey values.
I recently used this blender exporter to export an armature animation to xml3D.
One of my bones did not have any vertices assigned, which detained the browser
to load the scene at all.
I know that it is no good practice to have a bone with no assigned vertices, but
it can happen and is certainly allowed within blender. At least it should not break the
entire scene.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.