Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Blender exporter sucks #11605

Closed
centerionware opened this issue Jun 24, 2017 · 10 comments
Closed

Blender exporter sucks #11605

centerionware opened this issue Jun 24, 2017 · 10 comments

Comments

@centerionware
Copy link
Contributor

centerionware commented Jun 24, 2017

So i wrote yet another new one. It is at about 700 lines, supports meshes, lights, and very limited armature based animations.

Mostly it is worse than the existing exporter, but the benefits are:

  1. faster
  2. exported models dont need to be rotated 90 the around y
    2a) scenes look the same in blender and threejs immediately
  3. only includes actions the armature has bones on that are affected by the ani
    3a) complex rigs anims work better through the existing exporter (IK for instance)
  4. smaller - single file - code that can be distributed in blender files and not a seperate addon
  5. 10 lines of code to upload the scene to a server along with the local file
  6. easier to understand and customise

Drawbacks:

  1. only one method of animations supported - no morph targets
  2. IK in rigs doesnt translate
  3. written by one guy in 1.5 weeks and he isn't the best programmer ever
  4. assumes the entire scene is exported always
  5. feels like 1990s c code

Anybody interested in making it better?
Anybody interested in me making it public?

Right now I'm trying to get it exporting the materials as opengl shaders, dunno how it will work when done, if at all, but thought itd be better because we could use any material type from blender and not just the builtin ones or hard to use custom shaders.

@mrdoob
Copy link
Owner

mrdoob commented Jun 27, 2017

Reminds me when current blender exporter got introduced: #5514 😀

@mrdoob
Copy link
Owner

mrdoob commented Jun 27, 2017

Just like @repsac did... Maybe you can create a github repo for it so people can take a look?

@centerionware
Copy link
Contributor Author

centerionware commented Jul 3, 2017

I took my time and made sure things where fully working for my use cases with the exporter before I uploaded it, and now I have.

https://github.com/centerionware/io_tresjs

I also kind of wanted to clarify, when I say io_three sucks, I mean, parts of it suck. Mostly it's fantastic and a damned good program, but there are a few things I just couldn't get over that I documented in the readme_first for this exporter.
What's the best way to advertise this so people can try it, modify it, whatever?

@mrdoob
Copy link
Owner

mrdoob commented Jul 5, 2017

I also kind of wanted to clarify, when I say io_three sucks, I mean, parts of it suck.

😊

What's the best way to advertise this so people can try it, modify it, whatever?

I would start by doing a table comparing what your exporter supports in comparison to the current one.

@titansoftime
Copy link
Contributor

IK in rigs doesnt translate

This has never worked as far as I am aware. I think my animator over in Europe may have literally killed himself because of this. Each animation took forever and was at best "meh". After about 200 animations he disappeared. Payed him well too.

@manthrax
Copy link
Contributor

manthrax commented Jul 19, 2017

@centerionware @mrdoob @titansoftime
I see where you're going with your exporter. It's a bit easier for me to read than the io_threejs, but I haven't actually tested it yet. I saw some of the ambiguity around the quaternion xyzw vs wxyz in animations/rotations... Did you resolve that?

It also looks like you're sending everybodys exported .json to your server. What's that for? edit: Just re-read your description.. i see it's by design.

@manthrax
Copy link
Contributor

And for the record, I don't think the existing exporter sucks.. it's just had to grow with a moving target, both in terms of three.js and blender. Both projects introduce api changes often, so maintaining an exporter is no easy job.
It also handles multiple types of animation, including morph targets, and has/had code for animation resampling and a bunch of other stuff.

That said, if your exporter is working well, and seems to be producing more conformant three.json, then I dig it!

@manthrax
Copy link
Contributor

manthrax commented Aug 5, 2017

@titansoftime I am adding support to a fork of the exporter for auto Baking NLA Actions. This should enable some of the more complex IK rigs to export working animations. Just a heads up.

@centerionware
Copy link
Contributor Author

I know you were just involved in getting married @manthrax , and congrats again! I also know your job probably has you moved on to other issues.
Any updates to report? if there was a pull request I missed it.

@Mugen87
Copy link
Collaborator

Mugen87 commented May 31, 2018

The JSON Blender exporter has been removed with R93 (#14117).

Also see: https://threejs.org/docs/#manual/introduction/Loading-3D-models

@Mugen87 Mugen87 closed this as completed May 31, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants