F3D

F3D-app · f3d-app.f3d

F3D is a fast and minimalist 3D viewer desktop application

F3D is a fast and minimalist 3D viewer desktop application. It supports many file formats, from digital content to scientific datasets (including glTF, USD, STL, STEP, PLY, OBJ, FBX, Alembic), can show animations and support thumbnails and many rendering and texturing options including real time physically based rendering and raytracing.

winget install --id f3d-app.f3d --exact --source winget

Latest 3.5.0

Release Notes

πŸ—£ Join our community: F3D Community is welcoming to users and developers alike! Ask questions, gets involved and starts contributing in a beginner-friendly environment.

❀️ Sponsor F3D: F3D is open source and needs your support! Many thanks to all our one time sponsors! Much love to our monthly sponsors for this release ❀️ NGIZeroCore | LambdaTest-Inc | OpenDroneMap @jgod @exbluesbreaker @parkerlreed @Saijin-Naib

πŸ€– Created an Android version! You can now use F3D on your android phone and tablet! Just download the .apk and start viewing datasets!

🏑 Added IFC support F3D now support .ifc format thanks to web-ifc library! With thumbnails too of course.

🚰 Stream and pipe support Integrate f3d in your complex scripting workflows seamlessly. The libf3d is also able to read files from streams. import sys from build123d import Box, Cylinder, export_brep, export_step from OCP.BRepTools import BRepTools obj = Box(2, 2, 1) - Cylinder(0.5, 2) BRepTools.Write_s(obj.wrapped, sys.stdout.buffer) python script.py | f3d - --output=- | display

☁️ Added support for many point cloud formats View your point clouds easily easilly, .las, .laz and many more.

πŸͺŸ UI improvements Notifications on each change: βœ… Scene hierarchy UI to select the part you want to show: βœ… Searchbar on top of the cheatsheet: βœ…

πŸ“ Complete changelog For F3D users:

  • Created an Android version
  • Moved macOS binary package to macOS 14 framework. macOS intel binary package is not tested manually anymore
  • Added support for writing multiple images when using --output with a file containing animations (thanks @noclone @snoyer !)
  • Added a --display-depth option to display the depth image (thanks @AoGao-Kedoka !)
  • Added a --checkerboard option to display a checkerboard texture to check UVs (thanks @Ni-g-3l !)
  • Added a --scene-hierarchy option and interactive bind (Shift+H) to show a hierarchy widget that let enabling/disabling actor visibility (thanks @Medyan-Naser @snoyer !)
  • Added a --normal-glyphs option to show normals as arrow glyphs (thanks @ArchiePayne !)
  • Added a --notifications option and interactive bind (Ctrl+K) to enable/disable notifications, which shows a widget whenever an interactive bind is pressed (thanks for the prototype @davidwuluetang !)
  • Added a --dpi-aware option to rescale font automatically on HiDPI screens (Windows only) (thanks @davidwuluetang !)
  • Added a webifc plugin to add support for .ifc files (thanks @noclone !)
  • Added a pdal plugin to add support for many point cloud formats, including .las and .laz (thanks for the prototypes @Husamm @RealEdwardS !)
  • Added support for jumping to keyframes using jump_to_keyframe command (thanks @Ni-g-3l @CLBRITTON2 !)
  • Added support for CPU sorting for gaussian splat (--blending=sort_cpu), which enable gaussian splats on macOS
  • Added support for images formats (.png, .jpg, .hdr, .exr, ...) (thanks @noclone !)
  • Added a 2D interaction mode (--interaction-style=2d), used by default for images (thanks @noclone !)
  • Added a --font-color option to set the font color (thanks @JaimeNA !)
  • Added a print_config_info command to print info about the current config file in use (thanks @atharvRsharma @NaniNoni !)
  • Added new arguments to set_camera command: back, bottom, and left (thanks @v999dka !)
  • Added stream and pipe support, eg: cat file.glb | f3d -
  • Added more point sprites types, eg: cross, circle, and more
  • Added support for rendering non-PBR format as PBR
  • Added a searchbar on the cheatsheet (thanks @noclone !)
  • Added support for f3d colors in options (eg: f3d_white) (thanks @Prospect138 !)
  • Improved temporal anti aliasing performance and correctness (thanks @AoGao-Kedoka !)
  • Improved shell completions by reworking the whole CLI option system (thanks @skusel !)
  • Improved alembic animation performance (thanks @vincenzonetti !)
  • Fixed documentation issues (thanks @skusel @snoyer @ColtonLeighton @ferdnyc !)
  • Fixed a potential segfault when parsing colors in options
  • Fixed a crash with certain .vrml files (thanks @iommu !)
  • Fixed an issue with axes grid not properly centered on data (thanks @cuongdv-20 !)
  • Deprecated --interaction-trackball in favor of --interaction-style=trackball For libf3d users:
  • Reworked the Qt/QML example from scratch in order to make it work properly (thanks @InikOfDoom !)
  • Reworked java and python binding for the scene add and addBuffer API
  • Added missing interaction modifiers in examples (thanks @noclone !)
  • Added an API to recover animation keyframes (thanks @Ni-g-3l !)
  • Added an API to recover animation names (thanks @iommu !)
  • Added (partial) exception support to the C bindings (thanks @AoGao-Kedoka !)
  • Added webp support to our npm package
  • Added ui.font_color option to set the font color (thanks @JaimeNA !)
  • Added render.effect.display_depth option to display the depth image (thanks @AoGao-Kedoka !)
  • Added model.checkerboard.enable option to display a checkerboard texture to check UVs (thanks @Ni-g-3l !)
  • Added a ui.scene_hierarchy option to show a hierarchy widget that let enabling/disabling actor visibility (thanks @Medyan-Naser @snoyer !)
  • Added a model.normal_glyphs.enable option to show normals as arrow glyphs (thanks @ArchiePayne !)
  • Added a ui.font_color option to set the font color (thanks @JaimeNA !)
  • Added a interactor.style option to control interaction style, including 2d mode (thanks @noclone !)
  • Added a ui.notifications.enable and ui.notifications.show_bindings options to enable/disable notifications and bindings, which shows a widget whenever an interactive bind is pressed
  • Added a ui.dpi_aware option to rescale font automatically on HiDPI screens (Windows only) (thanks @davidwuluetang !)
  • Deprecated interactor.trackball option in favor of interactor.style (thanks @noclone !) For F3D packagers:
  • Updated all vendored dependencies
  • Updated all external depencencies in CI and shipping system
  • Added a new optional dependency: clip, to enable with F3D_MODULE_CLIP CMake option, no effect for now
  • Added a new optional dependency: web-ifc, to enable with F3D_PLUGIN_BUILD_WEBIFC CMake option, add the webifc plugin
  • Added a new optional dependency: pdal, through VTK IOPDAL module, to enable with F3D_PLUGIN_BUILD_PDAL CMake option, add the pdal plugin
  • Fixed an issue on FreeBSD with the logic to detect exectuble using sysproc (thanks @bapt !) For Web viewer users:
  • Used the stream feature from the libf3d for drastic performance improvements
  • Removed support for non-stream supporting formats
  • Added .3mf and .dxf support
  • Added .ifc support Many thanks to our returning contributors for this release, they are the life of this community! @AoGao-Kedoka @snoyer @Ni-g-3l @Medyan-Naser @ArchiePayne @skusel Thanks to our contributors for this release! @noclone @davidwuluetang @Husamm @RealEdwardS @CLBRITTON2 @JaimeNA @atharvRsharma @NaniNoni @v999dka @Prospect138 @vincenzonetti @ferdnyc @ColtonLeighton @InikOfDoom @bapt @iommu @cuongdv-20 Thanks to our packagers that help F3D reach a wider audience! AndnoVember @kylosus @kevinsmia1939 @yurivict @bcdarwin @svenstaro @mzf-guest @papoteur-mga @berolinux @topazus @thierry-FreeBSD @xiota @alerque @chenrui333 daviddavid @kazzarin @StarsbySea @cho-m @adisbladis @Aleksanaa @pbsds @DimStar77 @AngryPenguinPL @strophy @SokolovValy @xiota @Saijin-Naib @bapt @UnownPlain @UnownPlain

Credits

  • ifcSampleFiles
  • Table Mountain 1 HDRI by Greg Zaal and Rico Cilliers
  • red-rocks_flats BSD-3-Clause : Copyright (c) 2025, Hobu, Inc.

Installer type: nullsoft

Architecture Scope Download SHA256
x64 β€” Download 9C1C569F6140225A3DF9DD6BB00A7B40D881FF9476BBC6B3C3720ED647C77213

Details

Homepage
https://f3d.app/
License
BSD-3-Clause
Publisher
F3D-app
Support
https://github.com/f3d-app/f3d/issues
Copyright
Copyright (c) Michael Migliore, Mathieu Westphal
Moniker
f3d

Tags

3d3d-graphics3d-viewercommand-line-tooldxffbxgltfgltf-viewergraphicsphysically-based-renderingraytracingrenderingstepstl-viewervolume-renderingvtk

Older versions (6)

3.4.1
Architecture Scope Download SHA256
x64 β€” Download D8E8179918E24922D04892BCD6540893F1232C2133DBE906FB9EE8D86D62D96C
3.3.0
Architecture Scope Download SHA256
x64 β€” Download 9E91CD9E493452198512EA2D77689C9579EFFBE9BAB0266B75447D90DC5EB199
3.2.0
Architecture Scope Download SHA256
x64 β€” Download AFB89AAD9C9F7909C72261C09827531F574749CD73622AE53726B13E17A0AD4B
3.1.0
Architecture Scope Download SHA256
x64 β€” Download 329BDC7E7E4745A560635C2E9046564D479E8CE6A985B260E2F9D29B05C170E9
3.0.0
Architecture Scope Download SHA256
x64 β€” Download F1BA33E57D1759868EC53E648442D9EB9DF8DB50BD3F6C95A77BDB22DA5ACF64
2.5.0
Architecture Scope Download SHA256
x64 β€” Download 87C3DC22C08B1301CC2B315CB19E23BF98B231FFBF96F027958915D271F6827F