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

Consider adding more file formats support #38

Open
7 of 27 tasks
mwestphal opened this issue Nov 12, 2021 · 50 comments
Open
7 of 27 tasks

Consider adding more file formats support #38

mwestphal opened this issue Nov 12, 2021 · 50 comments
Labels
help wanted Please help with this issue! type:enhancement New feature or request

Comments

@mwestphal
Copy link
Contributor

mwestphal commented Nov 12, 2021

Context
F3D supports many file formats, but they are many that F3D does not support, lets add supports for these formats!

Help wanted
Not an usual help wanted issue, but if you are familiar with any of these formats and want to add supports for it, please say so and we will create a dedicated issue with all needed information.

Formats

Formats to consider sorted by reddit upvotes:

@mwestphal mwestphal added type:enhancement New feature or request Priority:P1 labels Nov 12, 2021
@mwestphal
Copy link
Contributor Author

@gerroon
Copy link

gerroon commented Dec 27, 2021

I am voting for VDB as well, it is super common in VFX pipelines.

@mwestphal
Copy link
Contributor Author

added the vote and moved it up. We would need someone willing to work with OpenVDB. library.

FYI @Meakk

@runxel
Copy link

runxel commented Mar 26, 2022

Also please consider supporting more point cloud formats.
.pts is already available, but tbh I've never come across one single pts file. e57, ply, and even simple xyz are much more common.

@mwestphal
Copy link
Contributor Author

Hi,

.ply is supported already. .xyz has no real standard for point clouds. Ill take a look at e57

@mwestphal
Copy link
Contributor Author

About e57: http://www.libe57.org/

Looks like there is a lib.

@astandarduser
Copy link

Would be amazing to have ztl, maya ascii, 3DXML, and the ability to open 3dPDF files albeit that may be out of the scope of this project

@mwestphal
Copy link
Contributor Author

Pretty much all proprietary formats, i'd not get my hopes up.

@astandarduser
Copy link

I figured ztl was a stretch, and the models will be super heavy too generally. 3DXML is supported by many apps so I assumed it wasn't but I guess not. Some other software imports maya ascii too for example Zbrush

@drtrigon
Copy link

+1 for .3mf

I would also very much like to se support for .3mf as all major software packages around 3D print add it recently. It is supposed to have some advantages over .stl, see e.g. https://blog.prusa3d.com/3mf-file-format-and-why-its-great_30986/ .

@mwestphal
Copy link
Contributor Author

Added your vote and a note for vdb (which has its own issue : #181 )

@crafthive
Copy link

USD is pretty essential. It will very soon be the core 3d format imo

@mwestphal
Copy link
Contributor Author

Added your vote @crafthive ! I hope someone who knows the format could go ahead and implement support,

@mrpurest
Copy link

+1 for USD is the upcoming standard.

@mrpurest
Copy link

also - I think opensource, multi-application formats should get priority over proprietary/application specific formats

@mwestphal mwestphal mentioned this issue Nov 8, 2022
@mwestphal
Copy link
Contributor Author

Added @H4kunaM4tata vote for .3mf

@mwestphal
Copy link
Contributor Author

@mrpurest : tbh it is more about finding contributors willing to add support for specific file formats

@mwestphal
Copy link
Contributor Author

@mrpurest : added your .usd vote

@HakunMatat4
Copy link

Thank you @mwestphal , happy 3D printing.

@mwestphal
Copy link
Contributor Author

mwestphal commented Jan 31, 2023

For anyone following this, please note that since plugins are now supported, anyone can develop their own plugin, as @YangShen398 did for abaqus !

https://github.com/YangShen398/F3D-ODB-Reader-Plugin

@mwestphal
Copy link
Contributor Author

added a few votes for USD as it was mentionned on reddit multiples times

@mwestphal
Copy link
Contributor Author

mwestphal commented Apr 22, 2023

more usd votes, we definitely should consider it.

@OloOcki
Copy link

OloOcki commented Apr 28, 2023

First of all - an excellent project!

I'd like to vote for an open formats:

@OloOcki
Copy link

OloOcki commented Apr 29, 2023

Hi @OloOcki !

* CityGml is already supported :)

* I've added pcd and las to the list.

Hi @mwestphal excellent! I've missed it! I'll update the list of CityGML-supported viewers, then! Awesome CityGML

Thank you for adding!

@mwestphal
Copy link
Contributor Author

Thanks !

TBH it's all thanks to VTK, that you may want to add in your list too, as a library.

@Meakk
Copy link
Contributor

Meakk commented Jun 1, 2023

USD support coming soon.

image

Is support for MaterialX within USD important?

@mwestphal
Copy link
Contributor Author

Added two ifc votes

@MostFull
Copy link

MostFull commented Aug 4, 2023

Please support extension ( blender + maya )

@mwestphal
Copy link
Contributor Author

I've added your .blend vote @MostFull , what is Maya format specifically?

@MostFull
Copy link

MostFull commented Aug 4, 2023 via email

@mwestphal
Copy link
Contributor Author

Added

@MostFull
Copy link

MostFull commented Aug 4, 2023

Thank you for your efforts. I would like to point out that some formulas are repeated twice in the first comment. For example, (ma) has two votes, and another (ma) has two votes. Why are there two (ma) ?

@mwestphal
Copy link
Contributor Author

Good point! Ive combined them!

@jtlechem
Copy link

3MF, please

@mwestphal
Copy link
Contributor Author

Added

@snoyer
Copy link
Contributor

snoyer commented Aug 18, 2023

Open Cascade BRep format could be useful for CAD users working with OCC-based procedural generation (eg. cadquery, build123d) to F3D pipelines.

example file here: https://github.com/tpaviot/pythonocc-demos/blob/master/assets/models/Motor-c.brep

@mwestphal
Copy link
Contributor Author

.brep added

@yannickbattail
Copy link

support for .3mf , that would be awesome

@mwestphal
Copy link
Contributor Author

.3mf format vote added

@mwestphal
Copy link
Contributor Author

USD format support added!

@redtif
Copy link

redtif commented Dec 24, 2023

Please support 3mf Format

@mwestphal
Copy link
Contributor Author

3mf vote added

@mwestphal
Copy link
Contributor Author

Dedicated isssue created for 3mf, blend and X support!

@Meakk
Copy link
Contributor

Meakk commented Jan 5, 2024

X format support just merged in master (rely on the assimp plugin)

@mwestphal mwestphal added the help wanted Please help with this issue! label Jan 7, 2024
@mwestphal
Copy link
Contributor Author

VDB support added, please try the last nightly:

https://github.com/f3d-app/f3d/releases/tag/nightly

@mwestphal
Copy link
Contributor Author

3mf and x support available in the nightly release!

https://github.com/f3d-app/f3d/releases/tag/nightly

@ShaddyDC
Copy link

ShaddyDC commented Mar 1, 2024

My votes for 3dxml and jt, though I understand that as semi-proprietary formats, they're both long shots. Just a heads-up that the list in the issue contains both .3DXML and .3dxml, which I assume to be the same.

Some background on the formats:

The 3DXML file format is mostly officially documented here. It's basically just a zip file with a bunch of xml files. Unfortunately, it can also sometimes use some proprietary compression and encoding on .3DREP files that contain the actual geometry data. I assume that would require some reverse engineering, which is probably beyond the scope of this project.
When that compression is not present, however, you've got some plain ascii xml files, which should be supportable. There is an open source implementation with GLC_lib and GLC_Player, although it's pretty janky in my experience.
Some discussion of people trying to implement it is here and here, which provides some background, but I think the official documentation is the most helpful.

I haven't tried working with JT directly, but a colleague of mine has, and while the format has a public and open specification, it is extremely non-trivial to implement and not fun. We have opted to use the proprietary and licenced JT Open Toolkit, which is of course not an option here.
It looks like there are some open source projects that try to work with the file format, but I don't know how usable they are, see dxjt_toolkit and oce-jt.

@Meakk
Copy link
Contributor

Meakk commented Mar 1, 2024

Added your votes to the list.
Thank you for the links.

Note that it's still possible to open-source a plugin using a proprietary library. It has already been done for the ODB format: https://github.com/YangShen398/F3D-ODB-Reader-Plugin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Please help with this issue! type:enhancement New feature or request
Projects
Status: To do
Development

No branches or pull requests