Point Clouds
A Point Cloud object renders a surface or volume as a field of individual 3D points. The position, colour, and size of each point is determined by the cloud’s Input Mode and Render Mode, with optional displacement applied via the Point Cloud Displacement card.
Adding a point cloud
Section titled “Adding a point cloud”- Add a 3D track
- In the Inspector, click Insert 3D Object → choose Point Cloud
- A default point cloud appears in the scene
Input modes
Section titled “Input modes”Each point cloud has an Input Mode that determines where its point positions and colours come from. Select the mode using the tab bar at the top of the point cloud inspector.
| Mode | Description |
|---|---|
| PLY File | Load one or more .ply point-cloud files via a playlist |
| Texture | Sample a live track texture for XYZ positions (mapped via channel pickers, including depth estimated by machine learning) |
| Solid | Generate a uniform grid of points (no external file) |
| Text | Render text as a cloud of points |
| LiDAR | Stream a live point cloud from a connected iPhone over your local network |
| Chladni | Simulate Chladni nodal patterns driven by your audio input, with frequency and mode shapes responding to the music in real time |
| Audio XY | Plot live Lissajous figures in 3D from your audio source |
| Radial | Concentric ring spectrum with waveform shimmer, rising bars, and Gaussian profiles — responds to audio and synth tones |
Depth from a texture
Section titled “Depth from a texture”In Texture mode, the XYZ MAPPING section chooses what drives each axis: a colour channel, the pixel position, Luma, or Depth (ML). Depth (ML) estimates real depth from the picture on your Mac’s Neural Engine, so a video of a person or a landscape stands out in 3D instead of following brightness. The first use downloads the model once; until it’s ready the axis reads luma. See Live Depth.
LiDAR streaming
Section titled “LiDAR streaming”Connect your iPhone over your local network to stream a live point cloud directly into the track. The inspector shows your Mac’s local IP address for quick setup, and includes a link to the setup guide.
The .ply playlist
Section titled “The .ply playlist”PLY File mode holds a playlist of clouds. Load several files, then switch between them with the Prev/Next row, autoplay, or the mappable per-item triggers.
PLY data
Section titled “PLY data”The PLY DATA section shows the selected item’s vertex count and lets you choose which of the file’s own attributes are used. A toggle only appears when the file carries that attribute, and the choice is saved per item.
| Control | Description |
|---|---|
| Normals | Use the file’s normals for shading in Cubes and Surface modes |
| Colors | Use the file’s per-point colours. Off draws the cloud in the Material Color alone |
| Alpha | Use the file’s per-point opacity. Off draws every point fully opaque |
Placement
Section titled “Placement”Every capture lands in its own coordinate frame, so the PLACEMENT section calibrates the selected item on its own — without touching the other items or the object’s transform.
| Control | Description |
|---|---|
| Item Scale | Uniform scale trim for this item, 0.2× to 5× |
| Point Scale | Point-sprite size trim for this item — use it when one cloud is meant to render finer than the rest |
| Origin X / Y / Z | Origin shift, as a fraction of the cloud’s own extent, applied before the scale trim so the cloud scales around the corrected pivot |
| Reset | Back to no offset, 1× scale, 1× points |
Transitions
Section titled “Transitions”Turn on Transition to blend between playlist items instead of cutting. The blend is geometric: points fly to their partner in the incoming cloud, carrying colour with them.
| Control | Description |
|---|---|
| Duration | Transition length, 0.05–2 s |
| Style | Crossfade, Morph, Scatter, Implode, Swirl, Dissolve, or Turbulence (mappable) |
| Amount | Style intensity — burst distance, collapse, turns, stagger, or warp |
| Curve | Easing applied to the blend |
Each item’s placement is folded into the blend, so both clouds sit where their own item says they should for the whole transition.
Chladni and Audio XY
Section titled “Chladni and Audio XY”Both modes include a built-in audio source selector inside the input mode panel so you can pick the audio input without leaving the 3D inspector.
Render modes
Section titled “Render modes”The Mode selector controls how each point is drawn:
| Mode | Description |
|---|---|
| Points | Classic pixel points with a Size slider |
| Cubes | Volumetric cube sprites |
| Spheres | Raymarched sphere sprites |
| Surface | Triangulated mesh surface |
| Scan Lines | Horizontal or vertical scan-line slices |
Point blend
Section titled “Point blend”In Points mode, Blend sets how overlapping points combine:
| Blend | Description |
|---|---|
| Over | Each point is laid over the ones behind it. Overlap never gets brighter than the points themselves |
| Add | Points add their light together, so every overlap gets brighter. Thousands of faint points build up glowing density where they cluster |
For an ink-on-paper look, set Add with a low Opacity and white points on a black background, then put an Invert effect on the track. Dense areas turn into black ink on white.
Noise Bits
Section titled “Noise Bits”Points and Cubes modes have a Noise Bits section that breaks up the uniform look of a cloud by giving individual particles their own size.
| Control | Description |
|---|---|
| Density | How much of the cloud is affected — up to roughly the top 1% of points |
| Max Size | How much larger affected particles become. Hidden while Density is 0 (unless Density is mapped) |
| Shape | (Cubes only) Gives every particle one of four silhouettes — a long thin needle, a flat plate, a blade, or a chunky chip — at a random orientation, turning the square specks into organic grit and dust |
Shape works on the whole cloud, not just the particles Density selects, and it never changes how large a particle is — only its outline. Sweep it up from 0 and the squares round off, stretch, and take on their silhouettes. It is only available in Cubes mode.
Shading Jitter
Section titled “Shading Jitter”In Cubes mode, Shading Jitter varies how each cube catches the light, so neighbouring cubes don’t shade identically. At 0 every cube facing the same way shades the same.
Domain
Section titled “Domain”The DOMAIN section bends the whole cloud. Both sliders sit at the centre for no effect, and work on every input mode, including PLY files.
| Control | Description |
|---|---|
| Twist | Rotates the cloud around the vertical axis by an amount that grows with height, wringing it like a cloth. Either side of the centre twists the other way |
| Bend | Curves the cloud’s vertical position by its horizontal position, arching it up or down |
Proximity lines
Section titled “Proximity lines”Turn on PROXIMITY LINES to draw lines between points that sit close to each other, building a network or constellation look.
| Control | Description |
|---|---|
| Max Distance | Points further apart than this are not connected |
| Min Distance | Points closer than this are not connected either |
| Opacity | Line opacity. Lines also fade as the two points get further apart |
| White Tint | How far line colour is pushed towards white. Lower it for lines in the points’ own colours |
| Max Neighbors | How many of its nearest neighbours each point connects to, 1–8 |
Camera
Section titled “Camera”Fly-through mode
Section titled “Fly-through mode”The default camera lets you navigate freely through the scene. Click the canvas to capture the cursor, then use WASD + mouse to fly. Click again to release.
Orbit mode
Section titled “Orbit mode”Switch to Orbit mode to rotate around a fixed point in the scene — useful when you want to frame a cloud from a distance and rotate around it. Fly-through mode is also available within orbit camera; click the canvas to enter it and click again to exit.
Materials & appearance
Section titled “Materials & appearance”Each point cloud has a Material section and a full post-processing chain:
- Color — base tint applied to all points
- Pixel Mix — blend between the material colour and the source pixel/vertex colour
- Pixel Brightness — how much of the source brightness Pixel Mix carries. At 1 you get the full source colour. At 0 only its hue and saturation come through, so brightness comes from Color, lighting and the HSV Colorizer instead. Near-black source pixels turn white rather than taking on a noisy hue. Hidden while Pixel Mix is 0
- Separate Color (texture input only) — turn on to pick a Color Source that colours the points, while the main texture source keeps shaping them. Positions, Luma Alpha and Black Clip still follow the shape texture, so cutouts stay where they were. The two sources can be different resolutions
- HSV Colorizer — spatially remap hue, saturation, and value across the cloud
HSV Colorizer
Section titled “HSV Colorizer”The colorizer maps a spatial axis (X, Y, Z, radial distance), a motion source (speed, velocity, flow angle) or a particle’s Age onto colour. It works in two modes.
Motion sources read each particle’s actual frame-to-frame velocity, so they respond to any movement — noise displacement, audio displacement, force fields, the particle sim, directional flow — and the speed range auto-scales to the cloud’s current peak speed, so the region sliders always span the motion that is actually happening.
Age runs from 0 when a particle is born to 1 just before it respawns. It needs the Particle Sim with Lifetime switched on; otherwise every particle reads 0.
Channel mode drives Hue, Sat and Val as three independent gradients, each with its own source axis. Hue gradients are interpolated around the colour wheel, paced by perceptual colour angle so equal steps along the gradient read as equal steps of colour change.
Blend mode — set a source on the Blend channel — maps one axis to a gradient of whole colours instead. Each stop is picked as a full colour, and the blend runs through the perceptually direct route between them. This matters for near-complementary pairs: a blue-to-orange blend passes through neutral, where a hue gradient between the same two colours has to travel around the wheel through magenta or green. While Blend is active it writes the final colour and the Hue/Sat/Val channels are hidden.
Both modes support up to eight stops. Click the gradient strip to add a stop, drag to reposition, click a handle to pick its colour, and right-click to remove. Frequency repeats the gradient across the axis, and Invert flips it.
The same colorizer is available on Gaussian splat objects, in the splat card’s own HSV COLORIZER section. It behaves identically there, with two differences: the axis range defaults to the loaded cloud’s own measured extent rather than a fixed world-space box, and the motion sources only respond while displacement is running (a static splat scan has no per-splat velocity). Splats are colorized once per splat during projection, so the cost doesn’t scale with how much of the screen they cover.
Physically Based Lighting
Section titled “Physically Based Lighting”Point sprites use physically based lighting with luminous rendering, linear shading, and per-sprite sphere gradients. With SHADOWS on, the first light in the scene casts shadows, with soft penumbras calculated from the actual scene bounds. Shadows radiate from that light wherever it sits, including inside the cloud or right up against it.
Density Ambient Occlusion
Section titled “Density Ambient Occlusion”Point clouds compute ambient occlusion from particle density, adding real depth and shading to your scenes.
Filmic Post-Processing
Section titled “Filmic Post-Processing”The Camera tab contains a full filmic post-processing stack:
| Effect | Description |
|---|---|
| Tonemapping | HDR ACES resolve — clean highlights and natural-looking glow via a high dynamic range linear render pipeline |
| Volumetric God Rays | Atmospheric light scatter rays |
| Anamorphic Bloom | Wide-format lens bloom |
| Mip-Chain Bloom | Multi-scale bloom that layers naturally across the full scene |
Depth of Field
Section titled “Depth of Field”A gather-based Depth of Field effect is available in the Camera tab under the Lens section. Adjust Focal Distance and Aperture to bring a specific depth plane into focus.
Performance
Section titled “Performance”For PLY-based clouds, point count is set by the file. Use the Max Vertices dropdown in the PLY DATA section (also available by right-clicking a playlist item) to pick a budget (Full Resolution down to 100K) to downsample a heavy capture at load time — points are merged on a voxel grid so the overall shape survives, and the choice is saved per item with the project. For Texture input, the Resolution slider under TEXTURE SOURCE steps through 1/16, 1/12, 1/8, 1/6, 1/4, 1/3, 1/2 and Full. It samples every Nth texel on both axes, so point count drops with the square of the step. Double-click the slider to reset it to 1/4. For Solid mode, the Grid size directly controls point count. The GPU can handle millions of points at 60 fps on modern Mac hardware with Metal.