Go to: Related nodes. Attributes.

Projection nodes can take any 2d texture, and make a 3d texture out of it, using one of the many projection types available.

Projection nodes are created automatically by the system when you tell it to create a 2d texture as a projection.

The Out Color attribute of the 2d texture is connected to the Image attribute of the Projection node. Then, the Out Color attribute of the Projection nodes is connected to where ever it needs to go. (Usually, the Color attribute of a Phong, Blinn, or Lambert shader).

Aside from the attributes described here, Projection nodes also inherit many attributes from Texture3d.

In the table below, important attributes have their names listed in bold in the Description column.

This node is MP safe

Node nameParentsClassificationMFn typeCompatible function sets
projectiontexture3dutility/general:drawdb/shader/texture/3d/projectionkProjectionkBase
kNamedObject
kDependencyNode
kTexture3d
kProjection

Related nodes

layeredTexture, envCube, envSphere, envSky, envBall, envChrome, bump3d, uvChooser, bump2d, texture2d, ramp, file, cloth, water, stencil, checker, fractal, bulge, grid, mountain, texture3d, cloud, granite, crater, leather, stucco, brownian, solidFractal, marble, wood, rock, snow, defaultTextureList, place2dTexture, place3dTexture

Attributes (104)

The following quick index only shows top-level attributes (too many attributes to show them all): amplitudeX, amplitudeY, angWts, camAg (3), camPos (3), defaultTransparency (3), depWts, depth (2), fitFill, fitType, image (3), infoBits, linkedCamera, normalCamera (3), outTransparency (3), passTr, projType, ratio, refPointCamera (3), refPointObj (3), ripples (3), srfNormal (3), tangentUCamera (3), tangentVCamera (3), transparency (3), transparencyGain (3), transparencyOffset (3), uAngle, uvCoord (2), uvFilterSize (2), vAngle, vertexCameraOne (3), vertexCameraThree (3), vertexCameraTwo (3), vertexUvOne (2), vertexUvThree (2), vertexUvTwo (2), xPixelAngle

Long name (short name)TypeDefaultFlags
normalCamera (n) float30.0, 0.0, 1.0outputinputconnectablehidden
The input normal
normalCameraX (nx) float0.0outputinputconnectablehidden
The X component of the input normal
normalCameraY (ny) float0.0outputinputconnectablehidden
The Y component of the input normal
normalCameraZ (nz) float0.0outputinputconnectablehidden
The Z component of the input normal
srfNormal (srn) float30.0, 0.0, 1.0outputinputconnectablehidden
The input normal on the surface based on world matrix
srfNormalX (snx) float0.0outputinputconnectablehidden
The X component of the input normal
srfNormalY (sny) float0.0outputinputconnectablehidden
The Y component of the input normal
srfNormalZ (snz) float0.0outputinputconnectablehidden
The Z component of the input normal
refPointObj (rpo) float30.0, 0.0, 0.0outputinputconnectablehidden
The current reference sample point that has to be shaded
refPointObjX (rox) float0.0outputinputconnectablehidden
The x component of the current reference sample position
refPointObjY (roy) float0.0outputinputconnectablehidden
The y component of the current reference sample position
refPointObjZ (roz) float0.0outputinputconnectablehidden
The z component of the current reference sample position
refPointCamera (rpc) float30.0, 0.0, 0.0outputinputconnectablehidden
The current reference sample point that has to be shaded
refPointCameraX (rcx) float0.0outputinputconnectablehidden
The x component of the current sample position
refPointCameraY (rcy) float0.0outputinputconnectablehidden
The y component of the current sample position
refPointCameraZ (rcz) float0.0outputinputconnectablehidden
The z component of the current sample position
xPixelAngle (xpa) float0.002053inputconnectablestorablehidden
The pixel angle
image (im) float30.0, 0.0, 0.0outputinputconnectablestorable
Image. The Out Color attribute of a 2d texture should be connected to this attribute. This is the texture that will be projected.
imageR (imr) float0.0outputinputconnectablestorablekeyable
The red image value for the current sample
imageG (img) float0.0outputinputconnectablestorablekeyable
The green image value for the current sample
imageB (imb) float0.0outputinputconnectablestorablekeyable
The blue image value for the current sample
transparency (it) float30.0, 0.0, 0.0outputinputconnectablestorable
Transparency. The Out Transparency attribute of a 2d texture should be connected to this attribute. This is the transparency channel of the texture that will be projected.
transparencyR (itr) float0.0outputinputconnectablestorablekeyable
Transparency red value
transparencyG (itg) float0.0outputinputconnectablestorablekeyable
Transparency green value
transparencyB (itb) float0.0outputinputconnectablestorablekeyable
Transparency blue value
uAngle (ua) angle (double)180.0degoutputinputconnectablestorablekeyable
U Angle controls how the input 2d texture is mapped around a circle, if you are using Spherical or Cylindrical texture mapping. If U Angle is set to 90 degrees, that means that one instance of the texture is fit into each 90 degrees around the circle in the U direction.

This attribute does nothing for other projection types. See also V Angle.

vAngle (va) angle (double)90.0degoutputinputconnectablestorablekeyable
V Angle controls how the input 2d texture is mapped around a circle, if you are using Spherical or Cylindrical texture mapping. If V Angle is set to 90 degrees, that means that one instance of the texture is fit into each 90 degrees around the circle in the V direction.

This attribute does nothing for other projection types. See also U Angle.

projType (t) enumPLANARoutputinputconnectablestorable
Proj Type controls how the 2d texture will be projected into 3d space. The supported projection types are:
    0. No Projection: No projection is done. Only the Default Color.is output.

    1. Planar: Places the texture on a planar surface and projects it onto the object.

    2. Spherical: Places the texture inside a sphere and projects it onto the object. There will be two "pinch points", one at each of the poles of the sphere.

    3. Cylindrical: Places the texture inside a cylinder and projects it onto the object. There will be two "pinch points", one at each of the ends of the cylinder.

    4. Ball: Places the texture inside a ball and projects it onto the object. This is similar to the way that a candy wrapper is pulled around a lollipop. There will be one "pinch points" at the Z-pole.

    5. Cubic: Places the texture on six faces of a a cube, and projects them onto the object.

    6. TriPlanar: Projects the texture by extruding it along the axis defined by the maximum current direction of the surface normal. This is somewhat like fabric being wrapped around the object.

    7. Concentric: Projects the texture by randomly selecting slices from it and making a concentric pattern from it.

    8. Perspective: Projects the texture by matching exactly the perspective of a particular camera. To use this, you need to link the Projection node to a camera. This type of projection is intended to be used to match modelled CGI to scanned backdrops. To do this, use the same texture as a backdrop (put it on an Image Plane attached to the camera) and as a shader (use Perspective projection, and link the projection node to the same camera). Objects in your scene using the shader will seem to disappear, since they will match the backdrop. You can then convert the object's shader to a solid texture, and animate the objects. For more detail on this process, see the rendering books.

linkedCamera (lc) Messagen/aoutputinputconnectable
Linked Camera is a connection to a camera node. This is only used when Proj Type is set to Perspective.
fitType (ft) enum1outputinputconnectablestorable
Fit Type controls how the texture will be fit to the camera when Proj type is set to Perspective. If you are using this to match a backdrop, you should set this to match the setting in the Image Plane.

Usually, you will have an image plane that is the same size as the rendered image. If that is the case, you should use the Resolution Gate setting.

You can also choose No Fit, which means that the image is not squeezed or stretched to fit. One of its axes (determined by the Fit Fill attribute) will be fit to the filmgate, and the other will just be as big as it needs to.

The third choice is Film Gate, which squeezes the image to fit the film gate.

fitFill (ff) enum0outputinputconnectablestorable
Fit Fill is only used if Proj Type is set to Perspective, and Fit Type is set to No Fit. If the image plane aspect ratio is not the same as the filmgate aspect ratio, then this attribute decides which axis of the image is fit to the film gate.
ripples (r) float31.0, 1.0, 1.0outputinputconnectablestorable
Ripples determines how wavy the image will be when projected, but controlling the scale of the fundamental frequency of any fractal noise added to the texture.

If you increase Ripples in any particular direction, the fractal detail will seem to smear out in that direction.

This attribute will not do anything unless Amplitude X or Amplitude Y is non-zero. (That is, there must be some fractal noise added to the system.)

ripplesX (rx) float0.0outputinputconnectablestorablekeyable
The noise along X
ripplesY (ry) float0.0outputinputconnectablestorablekeyable
The noise along Y
ripplesZ (rz) float0.0outputinputconnectablestorablekeyable
The noise along Z
depth (d) float20.0, 10.0outputinputconnectablestorable
Depth controls how much calculation is done by this texture when Ripples are added. Fractal noise such as ripples are created by an iterative mathematical process; as the process goes over more levels, it produces a more detailed fractal, but takes longer to do so. Normally, the texture will choose a level it thinks is appropriate for the volume being rendered. You can use Depth Min and Depth Max to control the minimum and maximum amount of calculation that the texure will do.
depthMin (dmn) float0.0outputinputconnectablestorablekeyable
The minimum value for recursion depth
depthMax (dmx) float0.0outputinputconnectablestorablekeyable
The maximum value for recursion depth
amplitudeX (ax) float0.0outputinputconnectablestorablekeyable
Amplitude X can be used to scale the amount of fractal noise added to the projection in the X direction. When Amplitude X and Amplitude Y are 0, no fractal noise is added. Adding fractal noise is a way of randomizing or blurring the texture.
amplitudeY (ay) float0.0outputinputconnectablestorablekeyable
Amplitude Y can be used to scale the amount of fractal noise added to the projection in the Y direction. When Amplitude X and Amplitude Y are 0, no fractal noise is added. Adding fractal noise is a way of randomizing or blurring the texture.
ratio (ra) float0.3outputinputconnectablestorablekeyable
Ratio controls the frequency of the fractal noise. Increase this value to increase the fineness of detail in the fractal noise (if there is any; see Amplitude X and Amplitude Y above).
infoBits (ib) integer0outputinputconnectablehidden
Information bits passing along information about type of shading
depWts (dwt) float0.0outputconnectable
Depth Wts is the array of depth weights computed in projection node and passed on to texture composer for blending process
angWts (awt) float0.0outputconnectable
Angle Wts is the array of angle weights computed in projection node and passed on to texture composer for blending process
camPos (cpo) float30.0, 0.0, 0.0outputinputconnectable
Camera position in world space
camPsX (cpx) float0.0outputinputconnectable
Camera position in world space
camPsY (cpy) float0.0outputinputconnectable
Camera position in world space
camPsZ (cpz) float0.0outputinputconnectable
Camera position in world space
camAg (cag) float30.0, 0.0, 0.0outputinputconnectable
Camera angle in world space
camAngX (cax) float0.0outputinputconnectable
Camera angle in world space
camAngY (cay) float0.0outputinputconnectable
Camera angle in world space
camAngZ (caz) float0.0outputinputconnectable
Camera angle in world space
passTr (pst) bool0outputinputconnectable
Pass through option to project paint on surfaces oriented towards and away from camera.
transparencyGain (tg) float31.0, 1.0, 1.0outputinputconnectablestorable
Use Transparency Gain to fine-tune the balance of a texture's Out Transparency.

Transparency Gain is applied as a multiplier to the texture's transparency. If Transparency Gain is white, it has no effect. Reducing the amount of all channels in Transparency Gain will scale down the amount of output transparency.

transparencyGainR (tgr) float0.0outputinputconnectablestorablekeyable
Transparency Gain Red Value
transparencyGainG (tgg) float0.0outputinputconnectablestorablekeyable
Transparency Gain Green Value
transparencyGainB (tgb) float0.0outputinputconnectablestorablekeyable
Transparency Gain Blue Value
transparencyOffset (to) float30.0, 0.0, 0.0outputinputconnectablestorable
Use Transparency Offset to adjust a texture's Out Transparency.

Unlike Transparency Gain (which is a multiplier), Transparency Offset is simply added to the texture's Out Transparency. Therefore if Transparency Offset is black, it has no effect. Increasing the amount of all channels in Transparency Gain will uniformly increase the amount of the final output transparency.

transparencyOffsetR (tor) float0.0outputinputconnectablestorablekeyable
Transparency Offset Red Value
transparencyOffsetG (tog) float0.0outputinputconnectablestorablekeyable
Transparency Offset Green Value
transparencyOffsetB (tob) float0.0outputinputconnectablestorablekeyable
Transparency Offset Blue Value
defaultTransparency (dt) float30.0, 0.0, 0.0outputinputconnectablestorable
Default Transparency is the Transparency of the texture in the areas that are not mapped. If the placement of this texture is not covering an entire surface, then Default Transparency will be used in the areas not covered.

See also the Wrap attribute.

defaultTransparencyR (dtr) float0.0outputinputconnectablestorablekeyable
Default Transparency red value.
defaultTransparencyG (dtg) float0.0outputinputconnectablestorablekeyable
Default Transparency Green value.
defaultTransparencyB (dtb) float0.0outputinputconnectablestorablekeyable
Default Transparency blue value.
outTransparency (ot) float30.0, 0.0, 0.0outputconnectable
Out Transparency is the transparency computed by this projection.
outTransparencyR (otr) float0.0outputconnectable
Out Transparency red value
outTransparencyG (otg) float0.0outputconnectable
Out Transparency green value
outTransparencyB (otb) float0.0outputconnectable
Out Transparency blue value
uvCoord (uv) float20.0, 0.0outputinputconnectablehidden
The UV coords of the current sample point
uCoord (u) float0.0outputinputconnectablehidden
The u component of the current sample position
vCoord (v) float0.0outputinputconnectablehidden
The v component of the current sample position
vertexCameraOne (vc1) float3outputinputconnectablestorablehidden
Triangle s first vertex, in camera space
vertexCameraOneX (c1x) float0.0outputinputconnectablestorablehidden
X component of aVertexCameraOne
vertexCameraOneY (c1y) float0.0outputinputconnectablestorablehidden
Y component of aVertexCameraOne
vertexCameraOneZ (c1z) float0.0outputinputconnectablestorablehidden
Z component of aVertexCameraOne
vertexCameraTwo (vc2) float3outputinputconnectablestorablehidden
Triangle s second vertex, in camera space
vertexCameraTwoX (c2x) float0.0outputinputconnectablestorablehidden
X component of aVertexCameraTwo
vertexCameraTwoY (c2y) float0.0outputinputconnectablestorablehidden
Y component of aVertexCameraTwo
vertexCameraTwoZ (c2z) float0.0outputinputconnectablestorablehidden
Z component of aVertexCameraTwo
vertexCameraThree (vc3) float3outputinputconnectablestorablehidden
Triangle s third vertex, in camera space
vertexCameraThreeX (c3x) float0.0outputinputconnectablestorablehidden
X component of aVertexCameraThree
vertexCameraThreeY (c3y) float0.0outputinputconnectablestorablehidden
Y component of aVertexCameraThree
vertexCameraThreeZ (c3z) float0.0outputinputconnectablestorablehidden
Z component of aVertexCameraThree
vertexUvOne (vt1) float2outputinputconnectablestorablehidden
Triangle s first vertex, in texture space
vertexUvOneU (t1u) float0.0outputinputconnectablestorablehidden
X component of aVertexUvOne
vertexUvOneV (t1v) float0.0outputinputconnectablestorablehidden
Y component of aVertexUvOne
vertexUvTwo (vt2) float2outputinputconnectablestorablehidden
Triangle s first vertex, in texture space
vertexUvTwoU (t2u) float0.0outputinputconnectablestorablehidden
X component of aVertexUvTwo
vertexUvTwoV (t2v) float0.0outputinputconnectablestorablehidden
Y component of aVertexUvTwo
vertexUvThree (vt3) float2outputinputconnectablestorablehidden
Triangle s first vertex, in texture space
vertexUvThreeU (t3u) float0.0outputinputconnectablestorablehidden
X component of aVertexUvThree
vertexUvThreeV (t3v) float0.0outputinputconnectablestorablehidden
Y component of aVertexUvThree
uvFilterSize (uf) float20.0, 0.0outputinputconnectablehidden
The sample (filter) size
uvFilterSizeX (ufx) float0.0outputinputconnectablehidden
The X size of the filter (sample)
uvFilterSizeY (ufy) float0.0outputinputconnectablehidden
The Y size of the filter (sample)
tangentUCamera (tu) float31.0, 0.0, 0.0outputinputconnectablehidden
The surface tangent along U (dPdU)
tangentUx (tux) float0.0outputinputconnectablehidden
The X component of the U tangent
tangentUy (tuy) float0.0outputinputconnectablehidden
The Y component of the U tangent
tangentUz (tuz) float0.0outputinputconnectablehidden
The Z component of the U tangent
tangentVCamera (tv) float30.0, 1.0, 0.0outputinputconnectablehidden
The surface tangent along V (dPdV)
tangentVx (tvx) float0.0outputinputconnectablehidden
The X component of the V tangent
tangentVy (tvy) float0.0outputinputconnectablehidden
The Y component of the V tangent
tangentVz (tvz) float0.0outputinputconnectablehidden
The Z component of the V tangent