I am experimenting with procedural textures, and I'd like to create a texture like

x = A.dot(orco-P0)
y = B.dot(orco-P0)
output = image[x][y]

It is not THAT hard to compute dot products in nodes (although it is a lot of clicking). The roadblock I am hitting is that the Image input has no input for coordinates.

How can I accomplish my mission in texture nodes? (This is using Blender Internal in case that wasn't clear from the subject line)


The calculations belong in the material not the texture.

The nodes for a texture define the colour for every available point as if it was an image.

The texture node in a material requests the colour from the texture at a specific point. The vector input to the texture node defines the point requested from the texture.

enter image description here

  • $\begingroup$ In practice: it seems you relay the truth; but philosophically: I am disappointed with blender. If I want to define a texture (mapping from coordinate to color) which is defined in terms of other textures (mapping from coordinate to color) it is clearly unusual, but it should not be impossible. No one has coded it yet (and I'm not motivated to create yet another ignored patch). Materials are probably the workaround, but complicate things. $\endgroup$ – Mutant Bob May 13 '15 at 15:34

I implemented sambler's suggestion of doing the math in the material instead of in the texture. This is the result:

crazy texture math

And the interior of the "convert space" node group looks like

enter image description here


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.