SnapMesh – Blender Photogrammetry workflow for Mac OS

santennio

Team: solo dev

Release Date: 02/2023

Platform: Blender Market

Website: 

Description:

What is SnapMesh?

SnapMesh is a Blender plugin designed for Mac OS that simplifies the photogrammetry workflow using RealityKit Object Capture APIs from Apple.
With SnapMesh, you can easily create high-quality 3D models from photographs without prior knowledge of photogrammetry and right inside Blender without using external software.

Checkout the sample models:

  • Puppy: photos + sample blend file – Sketchfab
  • Statue: photos + sample blend file – Sketchfab

How it works

The plugin features a user-friendly interface that guides you through the entire process, from importing your photos to generating a detailed 3D model. You can also customize the settings to achieve the level of detail and accuracy you need.

When you’re happy with the settings, you can start the computation that starts a background process without locking the Blender UI. When the computation is complete, the output model is imported into Blender and ready to use.

The Input

SnapMesh is compatible with a wide range of cameras, allowing you to use the device of your choice. Whether you’re using a DSLR, mirrorless camera, or even your smartphone, you can create stunning 3D models with ease.

The RealityKit API used by SnapMesh is powerful but flexible, giving you pretty good results even with a few images.

The Output

SnapMesh exposes the main four options of Object Capture API:

Details

The Details option will automatically limit the number of triangles and textures in your file, trying to limit the final file size.

For more please checkout the table below.

Detail level Triangles Est. File Size (.usdz file) Texture size Generated maps
Preview <25k 5MB 1024×1024 diffuse, normal
Reduced <50k 10MB 2048×2048 diffuse, normal
Medium <100k 30MB 4096×4096 diffuse, normal, AO, roughness, displacement
Full <250k 100MB 8192×8192 diffuse, normal, AO, roughness, displacement
Raw <30M Varies 8192×8192 diffuse, normal, AO, roughness, displacement

Ordering

If you’re providing images in order, with adjacent images next to each other in order, you can specify Ordering = sequential to speed up the process. This setting has no impact on the quality of the output.

Feature Sensitivity

The photogrammetry process relies on finding identifiable landmarks in the overlap between images. Landmarks can be hard to identify if the images don’t have enough contrast, aren’t in focus, or if the object is all one color and lacks surface detail.

When Feature Sensitivity is set to high, it instructs RealityKit to search an image for landmarks using an algorithm that analyzes an image closely and in detail. This slower, more sensitive process can produce an accurate 3D object even when landmarks are difficult to discern.

Object Masking

When a photograph of an object includes surrounding objects, such as plants, buildings, or people in an outdoor space, and Object Masking is set to true RealityKit attempts to create a mask algorithmically. If it’s unable to create a mask, RealityKit reverts to reconstructing the object using the entire image. RealityKit doesn’t attempt to separate the sample foreground from the background if this value is false.

Updates and support

I’m passionate about Photogrammetry and am a Mac user, so I plan to update and support the plugin for at least three years.

If you have problems or questions, please say hi on my discord server!