VerkLabs Designer Nodes Reference

Build, edit, and manage interactive 3D scenes in your browser

Environment

Position

3D Position

3D Position xyz

The current point in local coordinates (relative to the center of the current object).

3D Original Position

3D Original Position vOriginalPosition xyz

The original position, before any deformations. This is important if you want to map a texture onto the surface of an object that has been deformed.

3D World Position

3D World Position vWorldPosition

The world position of the current point.

View Plane

View Plane Position

View Plane Position position uv

View Plane Position converts a 3D position to 2D view plane coordinates.

It computes a 2D coordinate showing where the 3D point appears within the scene viewer:

  • (0, 0) = Bottom-left corner
  • (1, 1) = Top-right corner
  • (0.5, 0.5) = Center of screen

To calculate an offset in the view plane, use the Offset in View Plane node.

COMMON USES
Place 2D UI over 3D objects:

  • Name tags above characters
  • Labels on 3D points

Interactive selection:

  • Compare object view plane position to mouse position
  • Detect which 3D object cursor is near

Screen-space effects:

  • Position particles relative to screen
  • Create effects anchored to screen coordinates

View Plane Size

View Plane Size vec2

Normal

3D Normal

3D Normal xyz

The value of the normal. It could have been imported with an OBJ model, or it might have been set using →Position & Normal.

Object

Section

Section section

Reads the section value that can be used to map images onto an object. The section value is most often incorporated into the object itself if it’s an imported 3D OBJ model, but it can also be explicitly set with the →Section node.

Two images mapped onto an object using imported uv and section values.

(source)

Object Size

Object Size size

The size of the smallest box enclosing the current object. Used to calculate UV together with Min Position, to make sure the UV coordinates are in the range 0-1.

Min Position

Min Position minpos

The minimum point (lower bound) corner of a the smallest enclosing cube. Together with Object Size used to calculate UV, to make sure the UV coordinates are in the range 0-1.

Camera

Camera Distance

Camera Distance distance

The distance from the current point to the camera.

Camera Values

Camera Values cameraDirection cameraDistance

Light

Light Values

Light Values lightDirection lightDistance

The Light Values node extracts direction and distance information from the light source.

  • lightDirection – Vector pointing toward the light (for lighting calculations)
  • lightDistance – Distance to light (for falloff/attenuation)

Use for calculating realistic lighting with distance falloff, detecting which surfaces face the light, creating proximity-based effects.

Example: brightness = max(0.0, dot(surfaceNormal, lightDirection))

Often combined with the Dot Product and 3D Normal nodes.

Note: In most cases it’s enough to use the PBR Lighting node for realistic lighting, as it makes these calculations for you.

Shadow Values

Shadow Values directShadow shadow

The Shadow Values node calculates shadow intensity for a surface position, providing both hard-edged and soft-edged shadow options.

directShadow – Hard-edged shadow (single sample)

  • 1.0 = Fully lit (not in shadow)
  • 0.0 = Fully shadowed (in darkness)
  • Fast, crisp shadows with sharp edges
  • Can show aliasing (jagged edges)

shadow – Soft-edged shadow (9-sample PCF)

  • 1.0 = Fully lit (not in shadow)
  • 0.0 = Fully shadowed (in darkness)
  • Smoother shadows with softer edges
  • Slightly more expensive, but reduces jaggedness

Example: finalColor = baseColor * lightIntensity * shadow

Use directShadow for fast, sharp shadows (pixel art, stylized looks).
Use shadow for realistic, smooth shadows (most cases).

Technical Details

  • directShadow: Single shadow map sample (fastest)
  • shadow: 3×3 PCF (Percentage Closer Filtering) - averages 9 samples for smooth edges
  • Both account for shadow bias to prevent self-shadowing artifacts
  • Returns 1.0 if position is outside shadow map range (fully lit)

Note: In most cases it’s enough to use the PBR Lighting node for realistic lighting, as it makes these calculations for you.

Time & Frame

Time

Time t

The time value (always growing). Time can be sped up or slowed down with the Speed parameter of the current object.

Frame Count

Frame Count frameCount

The Frame Count node returns an integer that increments by one each frame, starting at 0. For preparatory setup it is important to know when it’s the first frame (i.e. frame count = 0).

Vertex to Fragment

Vertex Color

Vertex Color vColor

This node should be used in the fragment shader. It calculates the interpolated value of vertex colors set by the →Color node.

Point Size

Point Size pointSize

The Point Size node is only applicable when your object is a particle cloud. It calculates the point size value by multiplying the value of the Point Size property under Vertex Shader in the pop-out menu with any value set with the →Point Size node in the vertex network.