GSoC: Fast Import & Export: Pre-Discussion

Hi! I’m Ahmet Sait, a Blender user and a passionate developer highly interested in computer graphics :slight_smile:
Sorry for being so late, things got busy on my end.

I’m working on my draft proposal but I have some questions about it before I continue (don’t hesitate to share your feedback as a user);

  • How important this project for the users? How much of a pain this problem actually is for you?

  • Other potential usability low hanging fruits and ideas related to file I/O?
    Some of these have been mentioned before:

    • Drag & Drop support for files other than .blend to easily import them
    • Unifying the import/export menu into a single utility and delegate the IO process to the relevant add-ons after automatically detecting the file type

    I don’t guarantee that these or suggestions in this thread will be implemented in GSoC, but the above points seem to be on the roadmap already https://developer.blender.org/T68935 so I’m up for working closely with the UI / Asset Pipeline module teams where necessary.

  • How important this project in the eyes of organization and mentors? I’m pretty confident that I can come up with a good proposal but I don’t know if this is seen as a time better spent on a different project. Regardless, I do think there are interesting problems to solve in every area, and things don’t have to be technically complex to make a huge difference for the users.

  • Are there technical issues I may not be aware of in this project (maybe related to the Blender code base or non-obvious file format quirks)? Links that may be of interest?

  • Any other suggestions for a newcomer?

Thanks in advance ^^

20 Likes

this is very very important, current import/export process is slow and no much intuitive, mainly if you coming from another DCC tool that has these features.
I hope you can success
thank you.

3 Likes

Fair enough :smile:
I suppose I can tackle more complicated projects later on once I get more familiar with the code base and the development process. Besides, GSoC this year supposed to be less work intensive.
I will be submitting my draft shortly.

4 Likes

This is very important feature affecting almost all blender users. I have wished improvement on this area, feel glad to hear you’re gonna work on this!!

1 Like

Purely from a user perspective: Yes! So much yes!
These kinds of improvements are super important and personally, I’d love to see work done in this area. :smiley:

Drag and drop import, speed improvements, quick exports, batch export options and grouping or whatever you see important. From my mainly game artist perspective anything in that general field is very much appreciated.

2 Likes

I mainly use FBX as my format currently, to import/export from Blender to other popular DCCs. Mainly since OBJ is very slow with other DCCs and an old format. Also FBX supports many more features over OBJ. Although maybe things are moving into other formats now as well.

But, with FBX, it’s suuuuuuuuuuuuuuuuuuuper slow in Blender currently… when exporting/importing highpoly meshes… it is probably 10X slower than other DCCs. It may take 10/20/30 seconds in another DCC’s , but in blender it can take 3-5min or even longer sometimes… Which is just brutal and makes it really hard to iterate/send things back and forth in some cases.

1 Like

This is mega important and it’s up there with faster user interface in terms of top requests for users working with Blender in a professional capacity. I spent once 4 days converting a 3gb 3ds max project to Blender simply because blender’s python obj/fbx importers and exporters couldn’t handle all the geometry, so I had to import piece by piece.

I hope that this proposal could also take the work from the previous GSOC that seems it hasn’t been merged into master yet.

2 Likes

Something else that could be nice to have unified a bit more is the options available per import/export file type. It currently seems up to the particular import/export addon to define and implement a set of chosen options, e.g. rotate or scale the model on import, or whether to export only the current selection. It might be possible to define a set of common options and operations that could be available for all import/export addons, although you’re of course limited by the particular file format used if those make sense.

3 Likes

OBJ is of course not a full scene description format like FBX, it’s mainly good for exporting static mesh and curve objects. FBX being an undocumented propriety format also makes things a bit more tricky, and I’m guessing there is a policy of not using closed source code in Blender (correct me if I wrong) so Autodesk FBX SDK is not officially integrated.

1 Like

you are correct. there are some loopholes though, with regard to addons- you can import an addon that accesses a closed source binary, but that is probably too convoluted and out of scope for a short throw project like this.

I spent once 4 days converting a 3gb 3ds max project to Blender simply because blender’s python obj/fbx importers and exporters couldn’t handle all the geometry, so I had to import piece by piece.

Oof, that sounds painful.

I hope that this proposal could also take the work from the previous GSOC that seems it hasn’t been merged into master yet.

Right, from what I learned Howard wants to get soc-2020-io-performance in mergeable state before summer but he’s also rather busy so let’s see what happens.

2 Likes

Yeah, I can understand not wanting to support/update FBX to be faster, for certain reasons.

I just hope to see faster I/O, no matter the format. Like I said, sending to/from other DCCs to Blender, it currently can take 3/5/10+ Minutes, where sending the same geo in other DCCs is seconds. But I really really appreciate anyone taking the time to look into this area/try to improve.

Wow, this totally must be done :smiley:
Fast drag’n’drop import of any format (or at least OBJ/ FBX/ 3DS) is what I miss the most from Blender.
Ahmet, I can contribute and support this particular development by donating a little sum if you have Patreon or something.

4 Likes