Table Of Contents

Introduction

This node allows render-time automatic assignment of UV coordinates, projected on each axis. This technique is useful for surfaces that are difficult to unwrap and bake UV coordinates on and works for color, bump and displacement textures.


Shows three textures projected on each axis, with blending

Different texture projected onto each axis and blended


Texture

Same Image On Each Axis

When enabled, this option forces Image X shaders to be executed for all axis projections. When disabled, Image Y and Z shaders will be executed for the Y and Z axis projections respectively.


Same Image On Each Axis: Enabled

RGB

Disabled

RGB

Enabled

Textured

Disabled

Textured

Image X/Y/Z

The color for the X/Y/Z axis projections, respectively.

Blend Amount

This value dermines how much of the color results for each axis can overlap and be blended together. Having some amount of blending results in a soft transition between axis colors, instead of a hard edge.


Blend Amount: 0.00.11.0

Blend Curve

This value determines the power curve of the axis overlap blend and can be used to tighten or slacken the blending effect between axis colors.


Blend Curve: 1.0

Blend Amount: 1.0

2.03.06.010.0

Coordinates

The UV projection for each axis is computed from the coordinates of the object that is being shaded. Because objects can vary in size and location in the world, the options below allow you to tune how the object coordinates are mapped onto uvs.

Scale

These values scale the projected UVs computed for each axis.

Larger objects will require smaller scale values in order to bring UVs within the 0-1 range.


Scale X, Y, Z: 1.0, 1.0, 1.02.0, 2.0, 2.00.3, 6.0, 4.0

Offset

These values offset the projected UVs computed for each axis. Combined with the Scale option, the UVs for each axis are modifed like so:

Axis X:

u = (u + Offset.z) * Scale.z

v = (v + Offset.y) * Scale.y

Axis Y:

u = (u + Offset.x) * Scale.x

v = (v + Offset.z) * Scale.z

Axis Z:

u = (u * Offset.x) * Scale.x

v = (v * Offset.y) * Scale.y


Offset X, Y, Z: 0, 0, 00.5, 0.5, 0.52.5, 2.5, 2.5

Rotation

These values, in degrees, rotate each axis UV projection respectively, so the Rotation.x value rotates the X Axis projection etc. This rotation is applied after the above Scale and Offset adjustment.


Rotation X, Y, Z: 0, 0, 045, 60, 90

Projection Space Type

This specifies the projection space type, which determines which object shading coordinates are projected into uv coordinates. The options are as follows:

  • World - uses the world-space coordinates that are being shaded. This option will result in texture projection 'swimming' if the object moves or is instanced.
  • Object - uses the object-space coordinates that are being shaded. This option undoes the world transform to lock the coordinates to the local object space, resulting in no texture projection swimming when the object moves or is instanced.
  • Reference - uses the object reference pose coordinates, if available. This option results in no texture projection swimming when the object moves, is instanced or is deformed.



Projection Space Type: WorldObjectReference