1
$\begingroup$

I am trying to use a generated material as a texture for the backface of a complex object in Blender Internal (an object that already have a texture). The idea, using nodes, is similar to Back face cull rendering. What I want is that the material being used should look like it is projected onto the render screen of the camera.

As an example (see below), I am using a wood materials in Nodes. Even if the object has a complex shape and a texture, I would like the rays of the wood to look parallel in the render view. I thought I could use a geometry node and use one of its output, then a vector curves with the shown curves for the x, y and z coordinates to make any vector pointing towards VIEW, or use a normal node, but I could not get any result. Using a "normal" node as an input for the vector input of the texture node, I get a blank material in the texture node.

Ps : I've looked a lot in Blender reference concerning texture nodes with no clues. I would love something similar to UV unwrapping orthogonal to view, but for the backface part of the material (Noe that the object already is UV mapped since it has a texture already).

Backface Material facing camera test

Does anyone know how I could achieve this ? The ideal would be that it could be used in Blender Internal. If you have a solution for cycles, I could also use it, but prefer the BI solution. I am aware of the Texture coordiates node in Cycles that could help me achieve what I want, but in Cycles only.

Thanks a lot for your help,

$\endgroup$

2 Answers 2

1
$\begingroup$

You have to use "window" method for texture projection.

Here is blender file with material both for Cycles and internal render, just press Shift+Z and select any of theese renders - result is almost same.

For Cycles it is Geometry Info node, for internal it is Coordinates parameter in texture block properties.

$\endgroup$
2
  • $\begingroup$ Thanks Dan. The thing is that I already have a texture for the material applied to my object, and what I want is an additional texture used for backface - which should appear as an orthogonal projection of my texture onto the object from the camera. I have made some progress in this direction and will update the question to show them, but they are not yet fully acceptable. $\endgroup$ Commented Jul 15, 2015 at 7:43
  • $\begingroup$ Actually, I found a way. I marked it as the answer. Thanks again, $\endgroup$ Commented Jul 15, 2015 at 8:51
0
$\begingroup$

I managed to achieve what I want now, using a tricky method (easy to understand when thinking about what UV coordinates are).

For the Blender Render, I just do the dot product of the Global output of the Geometry Node with two orthogonal vectors. Then, I combine them back and use that vector result as the UV map input of the Texture Node.

I can then mix this texture with the already existing texture using the Mix Node, and as a factor the Front/Back of the Geometry node.

$\endgroup$
1
  • $\begingroup$ Actually, this does not work quite as expected. I still have some issues in the lines being not parallel (although they are almost parallel !). Does anyone has a better solution ? $\endgroup$ Commented Jul 15, 2015 at 12:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .