Point Clouds and Blender

Points are treated as the vertices of a mesh, this allows them to be manipulated point clouds as if they were any other object inside Blender - conversely, this means that they cannot be rendered properly without some physicality first.

This page is not a guide for Blender, instead it introduces a base workflow for working with Point Clouds in Blender.


Importing

It is recommended to process all of your point clouds in a dedicated point cloud processing software like CloudCompare first.

Point clouds are to be in a .ply format. The .ply file format is a standard static 3d data - i.e. static textured objects. Point clouds are represented as geometric vertex data, with vertex attributes that represents the scalar field attributes.

Drag and drop or import via the File menu.


Editing

Use Edit Mode to edit point cloud objects as mesh vertices. Note that you have to be in vertex/point selection mode to interact with the data.

By default, selection in Blender only works for non-occluded objects, so to select-through, x-ray view must be toggled on.


Physicality

As point clouds are the same as mesh vertices in Blender, they can be given physicality via geometry instancing using particle systems or Geometry Nodes.

This is an example of a Geometry Nodes setup to draw basic spheres at each vertex location using the Mesh to Points node. For all intents and purposes, these are mesh spheres, but technically this is an optimised point renderer.

Note that this setup only works for Blender's Cycles render engine; for EEVEE, you can instance geometry on the points using a Instance on Points workflow.


Materiality

When instancing on vertices, these objects need a material to be re-applied.

Below is an example of the Shader setup and updated basic Geometry Nodes setup for rendering basic point colour.

Shader

As the scalar field attributes of the point cloud are stored as vertex attributes, the shader uses an attribute node to pull out these properties. Note that the names are case sensitive.

Geometry Nodes

Re-assign with Set Material, use the drop-down list to find your material.

Simple shaded shader with one sun.

Scalar Field Attributes

Use the spreadsheet view to view these attributes numerically:

Shader

In the Shader, access other attributes the same way as colour, by specifying the corresponding attribute name.

You can use the colour in emission with a value over 1 to render the points with 'flat' shading, where the points will be mostly unaffected by other lights.

Geometry Nodes

In Geometry Nodes, attributes can be accessed via the Named Attribute node; pick from the drop-down or enter the field manually (case-sensitive).

Viewer nodes can be used to preview data at any stage of the graph.

Rendering

Change the rendering engine to Cycles, and enable GPU if possible.

The scene can be set up as in a standard scene; camera, lights, other VFX; and render.

Last updated

Was this helpful?