About Optional Libraries
- NONE of them is required for regular use, majority of PCV functionality has no dependencies
- functionality that depends on any library is marked in PCV panel with plugin icon and library is imported in just executed operator, if not available, message is displayed
- all of them are installed from The Python Package Index (PyPI) using
pip
command - libraries are not installed automatically, you need to open PCV preferences and click each install library button
- they are installed to user
site-packages
directory as defined insite.getusersitepackages()
, exact location differs for each platform, if you clickRead Me First
button in PCV preferences, it will print out path to user site-packages directory
Where are Optional Libraries used?
Open3D
- Voxel Downsample
- Normal Estimation
- Point Set Registration
- Surface Reconstruction
- ...
laspy
- LAS file import/export
lazrs
- LAZ file import/export (requires
laspy
, recommended)
- LAZ file import/export (requires
laszip
- LAZ file import/export (requires
laspy
)
- LAZ file import/export (requires
pye57
- E57 file import/export (recommended)
PyMeshLab
- E57 file import (alternative)
- Curvature filter
- Screened Poisson Surface Reconstruction
SciPy
- Remove Duplicates
- Poisson Disk Elimination
- Blur Scalar
- Calculate Density
- Voxel Downsample
- faster Transfer Colors
- Tools > Retopology > Snap All/Selected
- ...
Optional Libraries Compatibility
-
Windows
- do NOT use
Open3D
andPyMeshLab
together, Blender will crash when one and the other is used (see workarounds) - do NOT use
Open3D
andpye57
together, Blender will crash when one and the other is used (see workarounds) - do NOT use
Open3D
andlaspy
+laszip
together, Blender will crash when one and the other is used (see workarounds) - PCV will prevent crashes by default by monitoring which library has been used in current Blender session and not allowing problematic operation to be run, this behavior can be turned off in PCV preferences
- do NOT use
-
macOS
- on Apple Silicon you need to use Blender Intel build to install and use
PyMeshLab
pye57
have to be built from source, see step by step guide
- on Apple Silicon you need to use Blender Intel build to install and use
-
Linux
- no known limitations/problems
Libraries Installation
Please see compatibility notes for your platform first. It is not needed to install library unless you need functionality that depends on it.
- go to
Preferences > Add-ons
and find PCV - expand to see PCV preferences
- click
Install LIBRARY_NAME
button - wait until Blender is responsive again (if you start Blender from command line you can observe progress)
- restart Blender after each installed library
Specific version of library that is tested that is compatible is always installed. If library with different version already exists in user site-packages
directory, it will be overwritten with required version. So, if new PCV version requires newer library version, to update simply run install library operator.
Libraries Workarounds
- Windows
- E57 files reading libraries (
pye57
orPyMeshLab
) andOpen3D
will crash Blender if both are used in single Blender session. To use both, installOpen3D
andpye57
(better option for E57 files reading) and use following system: start Blender, add an empty, go to PCV panel, import E57 file, export as PLY with PCV, quit Blender, start Blender, add PCV instance again and load exported PLY, use filters usingOpen3D
as needed. Blender will only crash is one of libraries is used and then the other. - the same with LAZ files, reading LAS files is not affected
- E57 files reading libraries (