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 33 tasks
mwestphal opened this issue Nov 12, 2021 · 74 comments
Open
7 of 33 tasks

Consider adding more file formats support #38

mwestphal opened this issue Nov 12, 2021 · 74 comments
Labels
help wanted Please help with this issue!

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
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:

@Meakk
Copy link
Member

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

@mwestphal
Copy link
Contributor Author

mwestphal commented Jun 27, 2024

added 3dm, suggested by @zohozer in #1489

@zohozer
Copy link

zohozer commented Jun 28, 2024

I do vote for 3DM support.

@mwestphal
Copy link
Contributor Author

Added a .las vote after discussing with a potential user :)

@runxel
Copy link

runxel commented Jul 6, 2024

Revit families (.rfa) would be nice.

@mwestphal
Copy link
Contributor Author

@runxel : I've added your vote.

@mwestphal
Copy link
Contributor Author

@Diegovsky @Nokse22 I've added the .skp format

@mwestphal
Copy link
Contributor Author

Adding an .ifc vote from discord

@hadess
Copy link

hadess commented Oct 10, 2024

+1 for 3MF (see Nokse22/Exhibit#39)

@Nokse22
Copy link
Contributor

Nokse22 commented Oct 10, 2024

+1 for 3MF (see Nokse22/Exhibit#39)

It's already supported by f3d

@mwestphal
Copy link
Contributor Author

I confirm the 3MF is already supported, by the assimp plugin.

@Macgregorius
Copy link

+1 for IFC.

It will be helpful for architects, Bim managers and plant conception

I don't have the competences myself, but I saw some open source library that can help translate 3D data from IFC to other format (step for example)

IFCopenshel and IFCplusplus for example.

@mwestphal
Copy link
Contributor Author

Added an .ifc vote.

@drtrigon
Copy link

+1 for .laz

@mwestphal
Copy link
Contributor Author

Added .laz votes

@Meakk
Copy link
Member

Meakk commented Nov 15, 2024

Added .spz Gaussian Splatting format. See https://github.com/nianticlabs/spz

@pbsds
Copy link

pbsds commented Nov 26, 2024

Could you add .ply gaussian splats?

@Meakk
Copy link
Member

Meakk commented Nov 26, 2024

Could you add .ply gaussian splats?

That's possible in theory, but it may be tricky to distinguish between regular PLY and gaussian splats.

@drtrigon
Copy link

Could you add .ply gaussian splats?

That's possible in theory, but it may be tricky to distinguish between regular PLY and gaussian splats.

What about Magic Bytes/Numbers? (better than relying on file extensions)
e.g. libmagic: https://github.com/file/file

@pbsds
Copy link

pbsds commented Nov 29, 2024

3dgs ply files are like normal point cloud ply files, but with covariance matrices and spherical harmonics for each vertex

@drtrigon
Copy link

drtrigon commented Dec 1, 2024

Maybe these covariance matrices and spherical harmonics leave a signature that is detectable easily? E.g. looking at the first or last point in the file?

@Meakk
Copy link
Member

Meakk commented Dec 1, 2024

Yes it's possible. Currently the reader is determined by file extension only but we have plans to change that.

@drtrigon
Copy link

drtrigon commented Dec 1, 2024

Actually this approach even allows you to restore/recover missing or wrong extensions. This is an additional benefit.

@jo-chemla
Copy link
Contributor

Regarding 3dgs splats formats currently listed (spz & ply), here is a quick discussion listing some more formats and associated links to implementations/formats description, not all yet standardized, like:

Here is a longer discussion regarding splat formats standardization.

@Meakk
Copy link
Member

Meakk commented Jan 27, 2025

If KHR_gaussian_splatting gets merged, I'm definitely interested in adding its support.
For the initial .ply format, we need some internal work to differentiate gaussian splatting from regular meshes / point clouds.
About .spz, it's on hold, I've submitted a PR upstream but received little support from its maintainers, so I'm a bit skeptical about the future of the format.

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!
Projects
Status: To do
Development

No branches or pull requests