Rendering point clouds in Blender

Point cloud rendered with Blender

Importing point clouds

First you will need to import your point cloud into Blender as vertices of a single object. There are many ways to do this and many point cloud formats so it is impractical to cover in this tutorial. Personally I convert my data to pcd and then use a pcd importer for Blender.

Creating a bounding cube

The volume material used to render the point cloud has to be applied to a second object that covers the point cloud. I normally just create and scale a cube around the points and then apply the scale/rotation/location.

Creating the material

Make sure you are using Blender Render and not cycles which does not have support for rendering point clouds yet. Create a new material on the cube object.

Adjust the following material setting:

Type to: Volume

Density: 0

Reflection colour: Black

Blender point cloud material settings

The other highlighted options are also useful for tweaking the look of the output. Check the Blender documents for more information.

Setting the Texture

Type: Point Density

Point Density: Object Vertices

Object: pointcloud

Radius: 0.1

Mapping Coordinates: Global

Influence Density: true

Influence Emission C: false

Blender point cloud texture settings

The radius value is especially useful in adjusting the look of the output.

Tweaking

These default setting work fast and reasonable well on a scene where 1 blender unit = 1 meter with a source point cloud density of ~0.1m. However depending on the scale and density of your input and the desired look you will need to tweak the settings. The main Blender documentation for Point Density Texture and Volume Rendering is worth reading but here are a few point cloud specific tips:

Radius: changes the radius of each point

Density Scale: Darkens or lightens the rendered points

Step Size: lower values result in less noise but longer render times