Skip to content

Latest commit

 

History

History
116 lines (100 loc) · 15 KB

File metadata and controls

116 lines (100 loc) · 15 KB

Supported File Formats

F3D supports the following file formats:

Name File Extension(s) Full scene Animation Support Streaming Support Plugin Reader Name
Legacy VTK .vtk No NONE YES (VTK 9.7) native VTKLegacy
VTK XML .vtp, .vtu, .vtr, .vti, .vts, .vtm No NONE YES (VTK 9.7) native VTKXMLVT<P,U,R,I,S,M>
VTKHDF .vtkhdf No UNIQUE YES (VTK 9.6) hdf VTKHDF
EXODUS II .e, .ex2, .exo, .g No UNIQUE NO hdf ExodusII
NetCDF .nc, .cdf, .ncdf No UNIQUE NO hdf NetCDF
Polygon File Format .ply No NONE YES (VTK 9.5) native PLYReader
Standard Triangle Language .stl No NONE YES (VTK 9.6) native STL
DICOM .dcm No NONE YES (VTK 9.6) native DICOM
NRRD ("nearly raw raster data") .nrrd, .nhdr No NONE NO native Nrrd
MetaHeader MetaIO .mhd, .mha No NONE NO native MetaImage
Tag Image File Format 2D/3D .tif, .tiff No NONE NO native TIFF
PNG Image .png Yes NONE YES (VTK 9.6) native PNG
JPEG Image .jpg, .jpeg Yes NONE YES (VTK 9.6) native JPEG
BMP Image .bmp Yes NONE YES (VTK 9.6) native BMP
TGA Image .tga Yes NONE YES (VTK 9.6) native TGA
HDR Radiance Image .hdr Yes NONE YES (VTK 9.6) native HDR
WebP Image .webp Yes NONE YES (VTK 9.6) native WebP
OpenEXR Image .exr Yes NONE YES (VTK 9.6) native EXR
QuakeMDL .mdl Yes SINGLE YES (VTK 9.5) native QuakeMDL
CityGML .gml No NONE YES (VTK 9.6) native CityGML
Point Cloud .pts No NONE YES (VTK 9.6) native PTS
Standard for the Exchange of Product Data .step, .stp, .stpnc, .p21, .210 No NONE YES (VTK 9.6) occt STEP
Initial Graphics Exchange Specification .iges, .igs No NONE NO occt IGES
Open CASCADE Technology BRep format .brep No NONE YES (VTK 9.6) occt BREP
Open CASCADE Technology XBF format .xbf No NONE YES (VTK 9.6) occt XBF
Alembic .abc No UNIQUE YES (VTK 9.6) alembic Alembic
Wavefront OBJ .obj Yes NONE PARTIAL (VTK 9.7) native OBJ
GL Transmission Format .gltf Yes MULTI PARTIAL (VTK 9.6) native GLTF, GLTFDraco
GL Transmission Format (binary) .glb Yes MULTI YES (VTK 9.6) native GLB, GLBDraco
Draco .drc No NONE YES draco Draco
Autodesk 3D Studio .3ds Yes NONE YES (VTK 9.6) native 3DS
Virtual Reality Modeling Language .wrl, .vrml Yes NONE NO native VRMLReader
Autodesk Filmbox .fbx Yes SINGLE YES (VTK 9.6) assimp FBX
COLLADA .dae Yes SINGLE PARTIAL (VTK 9.6) assimp COLLADA
Object File Format .off Yes NONE YES (VTK 9.6) assimp OFF
Drawing Exchange Format .dxf Yes NONE YES (VTK 9.6) assimp DXF
DirectX .x Yes SINGLE YES (VTK 9.6) assimp DirectX
3D Manufacturing Format .3mf Yes NONE YES (VTK 9.6) assimp 3MF
Universal Scene Description .usd, .usda, .usdc, .usdz Yes SINGLE YES (VTK 9.6) usd USD
VDB .vdb No NONE YES (VTK 9.6) vdb VDB
Industry Foundation Classes .ifc No NONE YES webifc IFC
3D Gaussian splatting .splat No NONE YES (VTK 9.5) native Splat
Compressed 3D Gaussian splatting .spz No NONE YES (VTK 9.5) native SPZ
LASer format for lidar point cloud .las, .laz No NONE NO pdal LAS
Binary Point File .bpf No NONE NO pdal BinaryPointFile
TerraScan binary files .bin No NONE NO pdal TerraScanBIN
Optech Corrected Sensor Data .csd No NONE NO pdal OptechCSD
Point Cloud Data .pcd No NONE NO pdal PCD
Leica Cyclone .ptx No NONE NO pdal LeicaCyclonePTX
Airborne Topographic Mapper QFIT .qi No NONE NO pdal QFIT
Smoothed Best Estimate of Trajectory .sbet No NONE NO pdal SBET
Esri Scene Layer Package .slpk No NONE NO pdal SLPK

Streaming support refers to the ability to read from stdin and requires specifying the reader name, see the examples.

If a format supports streaming, then its header content will be checked before trying to open it. Use --force-reader to ignore the header content check.

To get accurate information for your own build of F3D, using the dedicated option, --list-readers.

Reader options

Readers can provide option that can be set using the -D/--define command line option. eg: -DVDB.downsampling_factor=0.5 or using the set_reader_option command.

For booleans, 0 means false, not 0 means true. Unsigned int will interpret anything that is not a non-negative integer as the default value.

Plugin Option Name Argument Type Description
mdl QuakeMDL.skin_index unsigned int Select a particular skin from a mdl file. Uses 0-indexing, default is 0.
occt STEP.linear_deflection double Control the distance between a curve and the resulting tessellation, default is 0.1.
occt STEP.angular_deflection double Control the angle between two subsequent segments, default is 0.5.
occt STEP.relative_deflection bool Control if the deflection values are relative to object size, default is false.
occt STEP.read_wire bool Control if lines should be read, default is true.
occt IGES.linear_deflection double Control the distance between a curve and the resulting tessellation, default is 0.1.
occt IGES.angular_deflection double Control the angle between two subsequent segments, default is 0.5.
occt IGES.relative_deflection bool Control if the deflection values are relative to object size, default is false.
occt IGES.read_wire bool Control if lines should be read, default is true.
occt BREP.linear_deflection double Control the distance between a curve and the resulting tessellation, default is 0.1.
occt BREP.angular_deflection double Control the angle between two subsequent segments, default is 0.5.
occt BREP.relative_deflection bool Control if the deflection values are relative to object size, default is false.
occt BREP.read_wire bool Control if lines should be read, default is true.
occt XBF.linear_deflection double Control the distance between a curve and the resulting tessellation, default is 0.1.
occt XBF.angular_deflection double Control the angle between two subsequent segments, default is 0.5.
occt XBF.relative_deflection bool Control if the deflection values are relative to object size, default is false.
occt XBF.read_wire bool Control if lines should be read, default is true.
usd USD.resources_path string Additional path to find USD plugInfo.json resources
vdb VDB.downsampling_factor double Control the level of downsampling when reading a volume, default is 0.1.
webifc IFC.circle_segments int Number of segments for circular geometry, default is 12.
webifc IFC.read_openings bool Read IfcOpeningElement entities (doors/windows cutouts), default is false.
webifc IFC.read_spaces bool Read IfcSpace entities (room volumes), default is false.

Format details

QuakeMDL

  • Models texture are loaded with a simple PBR lighting (diffuse color only, no specular, index of refraction set to 1.0).
  • Selecting skin is not supported.
  • Animation frames are split based on their names, eg: stand1, stand2, stand3, run1, run2, run3.

3D Gaussian splatting

Currently, 3 different formats are supported by F3D:

Note that no config files come with the .ply format because this format isn't dedicated to 3DGS only so we cannot generalize. If you are using .ply for 3DGS only, you can set up a config file similar to what is done for .splat or .spz. See configuration file documentation