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

Thanks for the suggestion This is exactly what I did and it worked.
@PaulMelis thanks also! I will look into this file format, I’m not familiar but I will.


Are You sure Did You used new importer?
Cause in that build in import menu there is current Python version (red arrow) and new native (green arrow).

I’ve just tested it and: 1gb blend file with 32M tris and 12gb ram when open
export:

  • build - it stayed at 12GB exported 3.7 GB file
  • python - it went to 17GB exported 2.0 GB file

import: 2gb file

  • build - 1:23 min, took 8.5 GB RAM
  • python - 7:38 min, 27 GB RAM (32GB system, so it took all)

Yes, I tried this importer named “New”.
I’m trying again, this time with another C4D exported scene with 7GB (.obj) and the import operation closes this build at the peak of 11GB of RAM.

Anyway… the trick of spliting the scene in small parts are working… But it would be nice to handle this kind of situation. But I want to say thank you for the work on improving blender IO.

Yes, I think it’s a pretty critical thing, if Blender wants to be used by more film studios/etc. Need to be able to throw bigger geo in and out, without using 32GB of ram and waiting 10+ min to export once.

Especially when other DCC can do the same geo/mesh in like 30 seconds in some cases.

Out of genuine curiosity - why are people using these file formats instead of alembic or usd which are considerably faster? Most other softwares support one or the other already.

2 Likes

existing pipelines 95% of the time. stubbornness the other 5%.

1 Like

Pipelines in which industry? I’d imagine as long as softwares support more practical formats, changing inputs and outputs should be a relatively minor technicality.

I’m in the vfx bubble so I don’t know much about other industries, but I’m sure there are valid reasons behind it.

1 Like

manufacturing is still very much STL dominant, and a lot of existing pipelines use OBJ as a go-between. Every game studio that I’ve ever worked for is almost entirely FBX-centric. I’m sure it’s different for every industry

1 Like

Ye well, let’s hope those industries catch up soon. Abc or usd is just so much faster, feature packed and more stable.

Sad to see developer time being put into areas just because pipelines are stuck with old and obsolete formats.

Thanks for clarifying.

1 Like

I was on max 2016 for a long time. Maybe 2018 or 2022 supports that now (USD). I’ll have to try.
FBX is still one of the more widely used formats I feel like. But if I can use another format with similar features but faster, I’ll do it.

I “like” FBX since it supported objects local pivots or more object level stuff vs. OBJ. Also OBJ going into/outta 3ds max is also super slow.

I am forced to send stuff into Max at work/have to use at some point. Also concept artists/other guys usually want FBX or maybe OBJ to throw into Zbrush or Maya/Keyshot/Modo/etc with varying levels of updates/not all the latest software. OBJ is prob. most compatible then in those cases,but again, very slow usually and less features/things kept in tact in some cases.

What about alembic? Works from and to zbrush/maya and the rest of the pack.

Yeah, I’ll have to investigate. Oh, also I send high/low into Toolbag to bake. Not sure if takes those formats or not, have to check as well.

Edit: Looks like it can use Alembic.

Yes, most softwares do by now. It’s more stable, has a lot more features and way faster than those oldschool formats.

Give it a try, it’s a lot better for heavy scenes.

1 Like

Just letting you guys know that there is ⚙ D13046 Exporter part of soc 2020 fast Obj IO project which will speed things up for obj at least.

3 Likes

From the above post that rB4e44cfa3d996 was just committed today.

5 Likes

Yea, another part of legacy Blender updated !

Congrats and thx to @ankitm and @Howard_Trickey for this GSoC 2020 and its completion.

:slight_smile:

4 Likes

Exporter only?
What happened to the importer?

1 Like

I’ll work on the getting the importer ready next. The reviewer preferred to have the work split in two, so that reviewing wasn’t such a big job.

17 Likes

Awesome
Great news. Thank you.

Hi @Howard_Trickey, I tested the new OBJ exporter and the file sizes are way bigger. Exporting a cube with smooth normals produces 8 normal vectors using the old exporter, while the new one, produces 24. This bloats the files quite significantly. Thanks…

1 Like