Print view · Input · 27 pagesChoose "Save as PDF" as the destination in the print dialog.
Back to the docs

Mesh Morpher documentation

Input

27 pages · exported 2026-09-06 · https://meshmorpher.com/docs/studio-and-graph/voxel/input

Studio and Graph › Voxel

Input

Sources that feed a voxel graph: coordinates, constants, meshes brought into the field, and the values other voxel nodes read from.

Studio and Graph › Voxel › Input

Cellular Distance

Emits a cellular distance metric for Cellular Noise: Euclidean, Manhattan or Chebyshev.

Cellular Distance node

The Cellular Distance node

When to use it

Emits a cellular distance metric for Cellular Noise: Euclidean, Manhattan or Chebyshev.

The metric changes the shape of the cells, not just the numbers in them. Manhattan gives you diamonds and Chebyshev gives you squares, which is how a Voronoi pattern is made to look man-made instead of organic.

Pins

Pin Type Description
DistanceFunction Choice The way of measuring you picked. Wire it into a Cellular node.

Settings

Setting Type Description
Value Choice Which way of measuring this node asks for.

Studio and Graph › Voxel › Input

Cellular Return

Emits a cellular return type. This is the setting that decides what Cellular Noise's output actually means, so it deserves more attention than most dropdowns.

Cellular Return node

The Cellular Return node

When to use it

Emits a cellular return type. This is the setting that decides what Cellular Noise's output actually means, so it deserves more attention than most dropdowns.

Pins

Pin Type Description
ReturnType Choice Which of the two answers you picked. Wire it into a Cellular node.

Settings

Setting Type Description
Value Choice Which of the two answers this node asks for.

Studio and Graph › Voxel › Input

Chunk Coord X

The X index of the chunk being generated. Constant for every sample inside that chunk.

Chunk Coord X node

The Chunk Coord X node

When to use it

The X index of the chunk being generated. Constant for every sample inside that chunk.

That constancy is what makes it useful: a per-chunk seed, a per-chunk pattern choice.

It is also what makes it dangerous. A value that jumps at chunk boundaries puts a visible seam exactly there, running the full height of the volume, and nothing downstream will hide it.

Pins

Pin Type Description
X Number Which chunk you are in, counting along X.

Studio and Graph › Voxel › Input

Chunk Coord Y

The Y index of the chunk being generated.

Chunk Coord Y node

The Chunk Coord Y node

When to use it

The Y index of the chunk being generated.

Same use and same warning as Chunk Coord X. Fine for seeding per-chunk variation. Seam-producing the moment it reaches the density.

Pins

Pin Type Description
Y Number Which chunk you are in, counting along Y.

Studio and Graph › Voxel › Input

Chunk Coord Z

The Z index of the chunk being generated, which is an altitude band rather than an altitude.

Chunk Coord Z node

The Chunk Coord Z node

When to use it

The Z index of the chunk being generated, which is an altitude band rather than an altitude.

Useful for varying behaviour by band. For anything continuous, use Position Z, which does not step at chunk boundaries.

Pins

Pin Type Description
Z Number Which chunk you are in, counting upwards.

Studio and Graph › Voxel › Input

Compare Op

Emits a comparison operator for the Comparison pin on Compare and Branch.

Compare Op node

The Compare Op node

When to use it

Emits a comparison operator for the Comparison pin on Compare and Branch.

Placing one instead of an integer literal makes the graph say which test is being made. Greater and GreaterOrEqual look identical as numbers and behave differently right at the boundary.

Pins

Pin Type Description
Comparison Choice The test you picked. Wire it into a Compare or Branch node.

Settings

Setting Type Description
Value Choice Which test this node asks for.

Studio and Graph › Voxel › Input

Float Input

A fixed float fed into other nodes. Radii, thresholds, strengths.

Float Input node

The Float Input node

When to use it

A fixed float fed into other nodes. Radii, thresholds, strengths.

Worth placing instead of typing the same number into three pins. One editable field then drives them all, and the shared value sits on the canvas rather than hidden in three places.

Pins

Pin Type Description
Value Number The number you typed in the panel.

Settings

Setting Type Description
Value Number The number this node hands out. It shows on the card, so you can read it without opening the panel.

Studio and Graph › Voxel › Input

Fractal Type

Emits a fractal shape for the generic Fractal Noise nodes: FBM, Ridged, Billow or Turbulence.

Fractal Type node

The Fractal Type node

When to use it

Emits a fractal shape for the generic Fractal Noise nodes: FBM, Ridged, Billow or Turbulence.

There is a None at the top of the list too. It drops you back to a single octave with no layering at all, and it is where an integer 0 lands, so a hand-typed number is an easy way to lose all your detail without touching the octave count. Pick the shape here instead.

Pins

Pin Type Description
FractalType Choice The stacking style you picked. Wire it into a by-type fractal node.

Settings

Setting Type Description
Value Choice Which stacking style this node asks for.

Studio and Graph › Voxel › Input

Hash

A cheap deterministic random built from the sample position and a seed. Same position and seed, same value, every run and every machine.

Hash node

The Hash node

When to use it

A cheap deterministic random built from the sample position and a seed. Same position and seed, same value, every run and every machine.

Neighbouring voxels are completely uncorrelated, which is why this is no substitute for noise. There is no smoothness in it, so it can never make a surface.

Quantise the position first and it becomes per-cell variation. Feed it raw positions and every voxel inside a cell gets its own answer. The Random Float (Stable) family is the same idea with a named range.

Pins

Pin Type Description
Seed Whole Number Changes the pattern. The same seed at the same spot always gives the same answer.
Pin Type Description
Result Number A number between -1 and 1. It never changes for a given spot and seed.

Studio and Graph › Voxel › Input

Hash Random Float01

A deterministic random float between 0 and 1, hashed from the sample position and a seed. Same position and seed, same value, every run and every machine.

Hash Random Float01 node

The Hash Random Float01 node

When to use it

A deterministic random float between 0 and 1, hashed from the sample position and a seed. Same position and seed, same value, every run and every machine.

This is the randomness that is safe to drive density, colour or anything else the mesher sees. The non-stable Random Float exists only for one-shot uses.

Change the seed to get a different pattern. Changing the position changes what you are asking about, not how random the answer is.

Pins

Pin Type Description
Seed Whole Number Changes the pattern. The same seed at the same spot always gives the same answer.
Pin Type Description
Result Number A number between 0 and 1 that never changes for a given spot and seed.

Studio and Graph › Voxel › Input

Hash Random Int

A deterministic random integer up to 16777215, hashed from position and seed.

Hash Random Int node

The Hash Random Int node

When to use it

A deterministic random integer up to 16777215, hashed from position and seed.

Good for picking per-cell variants. Quantise the position first, or every voxel inside a cell gets a different answer and the variation turns into static.

Hashed values have no correlation between neighbours, so this is not a smooth signal and never will be.

Pins

Pin Type Description
Seed Whole Number Changes the pattern. The same seed at the same spot always gives the same answer.
Pin Type Description
Result Whole Number A whole number up to about 16.7 million that never changes for a given spot and seed.

Studio and Graph › Voxel › Input

Hash Random Int In Range

A deterministic random integer between Min and Max, both inclusive, hashed from position and seed. The stable way to choose one of several variants per cell.

Hash Random Int In Range node

The Hash Random Int In Range node

When to use it

A deterministic random integer between Min and Max, both inclusive, hashed from position and seed. The stable way to choose one of several variants per cell.

Quantise the position before hashing. Feed it raw and the choice changes within a single cell, which is not a choice at all.

Pins

Pin Type Description
Seed Whole Number Changes the pattern. The same seed at the same spot always gives the same answer.
Min Whole Number The smallest number you might get.
Max Whole Number The largest number you might get.
Pin Type Description
Result Whole Number A whole number between Min and Max that never changes for a given spot and seed.

Studio and Graph › Voxel › Input

Int Input

A fixed integer. Seeds, octave counts, any whole-number parameter you want driven from one place.

Int Input node

The Int Input node

When to use it

A fixed integer. Seeds, octave counts, any whole-number parameter you want driven from one place.

When the value is conceptually an integer, this beats a float plus a Float to Int, because nothing then depends on which way the conversion rounds.

Pins

Pin Type Description
Value Whole Number The whole number you typed in the panel.

Settings

Setting Type Description
Value Whole number The whole number this node hands out.

Studio and Graph › Voxel › Input

Latitude

Latitude relative to the world XY plane, in radians. 0 at the equator, plus or minus pi/2 at the poles. North-south biome shifts on a spherical world.

Latitude node

The Latitude node

When to use it

Latitude relative to the world XY plane, in radians. 0 at the equator, plus or minus pi/2 at the poles. North-south biome shifts on a spherical world.

Latitude alone says nothing about whether you are inside the planet or out in space above it. Pair it with Radius From Origin, which is the part that decides solid from empty.

Pins

Pin Type Description
Result Number How far north or south you are, in radians. 0 at the equator, plus or minus pi/2 at the poles.

Studio and Graph › Voxel › Input

Longitude

The angle around the world Z axis at the sample point, in radians. East-west variation for planet-scale generation.

Longitude node

The Longitude node

When to use it

The angle around the world Z axis at the sample point, in radians. East-west variation for planet-scale generation.

It wraps, so a pattern built straight on it has a seam along one meridian. Fold it through a cosine to close the loop.

Pins

Pin Type Description
Result Number How far round the vertical axis you are, in radians, between -pi and pi.

Studio and Graph › Voxel › Input

Noise Type

Emits a noise basis for the Noise Type pin on the generic noise nodes. Three choices: Perlin, Simplex, Value.

Noise Type node

The Noise Type node

When to use it

Emits a noise basis for the Noise Type pin on the generic noise nodes. Three choices: Perlin, Simplex, Value.

White and Cellular are not on the list. Those two have their own nodes and cannot be reached through this pin at all.

The numbering behind it is internal and not a promise, so drive that pin from here rather than typing a number into an Int Input. A readable dropdown also tells the next person which basis they are looking at.

Pins

Pin Type Description
NoiseType Choice The noise you picked. Wire it into a by-type noise or fractal node.

Settings

Setting Type Description
Value Choice Which noise this node asks for.

Studio and Graph › Voxel › Input

Position X

World-space X of the point being evaluated. Every position-dependent pattern starts here or at one of its siblings.

Position X node

The Position X node

When to use it

World-space X of the point being evaluated. Every position-dependent pattern starts here or at one of its siblings.

To move a whole subgraph, Domain Translate, Rotate and Scale keep the transform in one readable place. Doing the arithmetic on these coordinates by hand works, and then six nodes later nobody can find where the offset came from.

Pins

Pin Type Description
X Number Where along X the voxel being sampled sits.

Studio and Graph › Voxel › Input

Position Y

World-space Y of the point being evaluated.

Position Y node

The Position Y node

When to use it

World-space Y of the point being evaluated.

Paired with Position X it drives every planar pattern. Paired with Atan2 it gives you a bearing, which is where polar work starts.

Pins

Pin Type Description
Y Number Where along Y the voxel being sampled sits.

Studio and Graph › Voxel › Input

Position Z

World-space Z, the height, of the point being evaluated. The most used input in terrain work, because heightmap minus Z is what turns a 2D noise into a 3D field.

Position Z node

The Position Z node

When to use it

World-space Z, the height, of the point being evaluated. The most used input in terrain work, because heightmap minus Z is what turns a 2D noise into a 3D field.

It is also the natural control for Select and for a Height Gradient when you are layering biomes by altitude.

On a spherical world it stops being up. Radius From Origin takes over there.

Pins

Pin Type Description
Z Number How high up the voxel being sampled sits.

Studio and Graph › Voxel › Input

Radius From Origin

Distance from the world origin to the sample point. The basis of a spherical planet, where solid-below-radius-R replaces the usual height test.

Radius From Origin node

The Radius From Origin node

When to use it

Distance from the world origin to the sample point. The basis of a spherical planet, where solid-below-radius-R replaces the usual height test.

Combine it with Latitude and Longitude for banded biomes.

On a planet, Position Z is no longer up. Reaching for it out of habit gives you a field that is correct at the north pole and wrong everywhere else.

Pins

Pin Type Description
Result Number How far the voxel being sampled is from the world origin.

Studio and Graph › Voxel › Input

Random Float01

A fresh random float between 0 and 1 on every single evaluation. Non-deterministic by design.

Random Float01 node

The Random Float01 node

When to use it

A fresh random float between 0 and 1 on every single evaluation. Non-deterministic by design.

Keep it out of density. The same point evaluates differently every time it is sampled, so there is no stable surface: the mesh flickers, re-chunks, and never settles.

Random Float (Stable) is the one to reach for whenever the value has to come back the same, which for anything shaping geometry is always.

Pins

Pin Type Description
Result Number A number between 0 and 1, different every pass. Wire it into density and the surface will crawl.

Studio and Graph › Voxel › Input

Random Int

A fresh random integer up to 16777215 on every evaluation. Non-deterministic.

Random Int node

The Random Int node

When to use it

A fresh random integer up to 16777215 on every evaluation. Non-deterministic.

Same warning as the float version. Never into density.

Random Integer (Stable) for anything the mesher will see.

Pins

Pin Type Description
Result Whole Number A whole number up to about 16.7 million, different every pass. Wire it into density and the surface will crawl.

Studio and Graph › Voxel › Input

Random Int In Range

A fresh random integer between Min and Max, both inclusive, on every evaluation. Non-deterministic.

Random Int In Range node

The Random Int In Range node

When to use it

A fresh random integer between Min and Max, both inclusive, on every evaluation. Non-deterministic.

The range is all this adds over Random Integer. The stability problem is unchanged, so the Stable variant is the default choice unless the value really is one-shot.

Pins

Pin Type Description
Min Whole Number The smallest number you might get.
Max Whole Number The largest number you might get.
Pin Type Description
Result Whole Number A whole number between Min and Max, different every pass. Wire it into density and the surface will crawl.

Studio and Graph › Voxel › Input

Surface Attributes

These outputs read zero. All six of them, everywhere in the app.

Surface Attributes node

The Surface Attributes node

When to use it

These outputs read zero. All six of them, everywhere in the app.

The node was built for a mesh spawner that could ask "does this surface face up" before scattering grass. That spawner was removed, and nothing fills in surface normals or painted colour any more. Drop one into a density graph and the compiler posts a warning saying exactly that.

If you came here to vary something by height, Position Z into a Select does the job, and Height Gradient does it for colour.

Pins

Pin Type Description
NormalX Number How far the surface leans along X.
NormalY Number How far the surface leans along Y.
NormalZ Number How much the surface faces up. Near 1 is flat ground, near 0 is a cliff face. This is the one you want for slope tests.
ColorR Number Red in the paint at this spot, 0 to 1.
ColorG Number Green in the paint at this spot, 0 to 1.
ColorB Number Blue in the paint at this spot, 0 to 1.

Studio and Graph › Voxel › Input

Vector3 Input

A fixed 3D vector broken out into separate X, Y and Z output pins. Offsets, centres, axis directions.

Vector3 Input node

The Vector3 Input node

When to use it

A fixed 3D vector broken out into separate X, Y and Z output pins. Offsets, centres, axis directions.

The three pins are the point. Take just the component you need without another node in between.

Pins

Pin Type Description
X Number The X you typed in the panel.
Y Number The Y you typed in the panel.
Z Number The Z you typed in the panel.

Settings

Setting Type Description
Value Vector The position or direction. It comes out on three pins, one per axis.

Studio and Graph › Voxel › Input

World Up

The world-up direction (0, 0, 1) broken out into components. Saves hard-coding a vector for slope masks and alignment maths.

World Up node

The World Up node

When to use it

The world-up direction (0, 0, 1) broken out into components. Saves hard-coding a vector for slope masks and alignment maths.

Dot a normalised direction against it and you get the slope term every grass-on-the-flat, rock-on-the-cliffs rule is built from. Skip the normalise and you get a height instead.

Pins

Pin Type Description
X Number Always 0.
Y Number Always 0.
Z Number Always 1. Up is up.