GSoC 2020: Faster IO for OBJ, STL & PLY. Feedback

Thanks for the explanation

In this case you could also use the older Python exporter

1 Like

So it turns out that to fix some inconsistencies in the 7th decimal place between different platforms, I ended up putting in the normal deduping code in the new exporter. To my surprise, it actually ran a little faster (maybe because it spent less time writing), as well as making smaller files, so win-win.

18 Likes

The new obj export function didn’t support UTF-8 decode charactar. –
Some Chinese users use the latest 3.1 version and say they encounter problems that do not support Chinese. I downloaded the daily-build version and found no problems after using it. I checked with other users and found no relevant bugs.

@xueke_pei I’m not sure what you mean. If you have an example .blend file that doesn’t get correctly exported because of a UTF-8 problem, please file a bug so I can reproduce it and fix it.

Hi guys just pointing out there is also a faster STL importer in the works that is also worth looking at Native STL importer

4 Likes

Not sure if its same Unicode error but:

Unicode in paths cause problems

Summary
  • filename with unicode name in new exporter:

obraz
gives:

nameWithUnicode«¹„‟‹›…±°²³».obj


  • pathname in new exporter:

obraz
gives


it says it cant find file in case you didn’t know polish that windows decided to randomly put there

old one works fine in both cases



edit:
fixed by: ⚙ D13879 Fix new Wavefront OBJ exporter not saving non-English filenames properly on Windows
wow, it was already fixed when i posted it, but i had one day old build

1 Like

@Howard_Trickey
Hi, How could I report a bug privately? I can send this file to the blender bug report page, since it’s under NDA.
Thank you.

You could send it to me at [email protected].

1 Like

The latest version of the exporter seems to not like file name patterns with multiple dots as in “asset.name.obj”, the exporter filename line only accepts the file name as “asset.obj”

OK, will have Aras look into this (he has kindly been taking on all regressions-from-old-behavior bugs).

3 Likes

The option to choose whether to apply modifiers or not has been removed, from the add-on to export in OBJ format, can you restore this option?

2 Likes

OK well, was fixed in the latest release 3.1.2…

1 Like

Hello. I have modified the PLY importer to work with a large number of previously incompatible “flavors”. As this is a mod to an existing Official addon, do I submit it under the Addons submission process or elsewhere? Our Repo is at: https://github.com/TombstoneTumbleweedArt/import-ply-as-verts

Thank you!

2 Likes

You might but @Howard_Trickey or @sybren might have a more precise answer. Also, there is Native STL importer .

Thank you! I will contact them.

I figured maybe this giant thread would need an update on current status of the OBJ exporter/importer, and future plans.

  • New OBJ exporter has been in Blender since 3.1; labeled “experimental” in the menu item. The new exporter is ~10x faster than the old one. The old one is still available.

    • Since Blender 3.2, the new exporter is another ~10x faster, meaning it’s ~100x faster than the old exporter.
    • Currently there are three known issues (bugs/regressions) about the new exporter: incorrect vertex groups export (T96824), issues exporting Poly curves (T97095) and missing Path Mode setting (T96399). I’m fixing them as we speak.
  • New OBJ importer has been in Blender 3.2 alpha since 2022 April (commit), generally between 5x and “many many times” faster than the old one.

    • Additional speedup of the new importer is in progress (D14586).
    • The new importer likely also has some bugs or regressions, any & all bug reports are welcome! Both the new one (“experimental”) and the old one will keep on being available for quite a while.

After both the new exporter & importer are solid & good, I think it would make sense to do some OBJ feature improvements. Largest ones that come to mind: 1) support for vertex colors, and 2) improved support for PBR materials (clearcoat maps, anisotropy etc.).

23 Likes

now-thats-what-im-talking-about-wiggle

Also I hope you guys go for the widely accepted obj with vertex colors support format (like the one from zbrush). All major dccs can read it. :v:

Which one is the more widely accepted? (I know of two vertex color formats: “xyzrgb” where vertex colors are 3 extra numbers after vertex position and “MRGB” where vertex colors are a long string of hexadecimal characters)

MRGB seems to be the one.

1 Like