Texture node(s) do not cover the whole rendersize (in sepia nodetree)

I’m too tired now to describe the problem in detail, but when I add a last ‘noise’ node (is an “add” including “strands” “strands_mask”) and ‘burn’ (the lower right “burn” node) it into the original image I get a strange square in the final composition. This doesn’t happen with the rest of the textures i use. As an example see the “Viewer” node. It sure looks like a size-problem, but I didn’t find any settings that would change the result.


Anybody got some tips what i did or what is wrong here?

Thanks,
Werner

On a related note:

How do i add textures (“TE:” nodes) to a composition node-tree and edit the texture parameters (e.g cloud-parameters)?

Currently i need to add textures in a dummy material and edit the parameters there, but this is very unintuitive, so i hope there is a simpler way?

EDIT: In the material nodetree i can create new textures and then edit them in the buttons area after selecting it though, it’s only a problem in the composition nodes.

Werner

I’ve uploaded a refined blend file that shows the problem: sephia4.blend (outdated)
Just hit F12 to see it.

Werner

Updated the .blend file a bit (still with the preoblem though): sepia5.blend (outdated)

Werner

I’ve played around a bit and I suspect this problem only occurs when I mix (e.g a “Color”->“Mix” node) something that is already mixed from two procedural textures into another prodecural texture like this.


Mix -> Composition
 * Mix
    * TE: proc1
    * [Render]
 * Mix
    * TE:proc2
    * TE:proc3

It seems this only occurs if a ‘mix’ two other ‘mix’ nodes.
But if this is the case it’s either a bug or it has a quite non-obvious explanation (at least to me) :-/
Maybe the proc2+proc3 mix doesn’t have an image-size defined?

If i do something like this it works fine:


Mix -> Composition
 * TE:proc1
 * Mix
     * TE:proc2
     * Mix
        * TE:proc3
        * [Render]

(I hope this diagrams do show it clearly. I’ll try to mockup some screenshots.)

Werner

Small update of the blend file and a bigger render of the problem (see the small square in the middle):

sepia7.blend




Werner

Have you used viewer nodes to check at what point this square seems to enter the node tree? This is often a good way of checking such things.

Yes i know that. And i tried to describe when it happens in my previous postings, maybe a bit too verbose though.

It happens when i do something like this (just imagine it’s a node-tree):


Mix -> Composition
 * Mix
    * TE: procedural1
    * [Render]
 * Mix
    * TE: procedural2
    * TE: procedural3

Werner

Have you tried scaling the texture up, in most cases when you mix images the best results are made when you have images the same size as the base image.

I already tried to set the “Scale” values in the texture nodes, but this has the effect that the ‘square’ area is still the same size and the texture-shape inside is zoomed in/out.

Is there another way to scale the texture? (Aside from the size setting of the “Clouds” texture type and similar, because it doesn’t always work the same as scaling the whole texture in X/Y)

The square has always the same size, so if i reduce my rendered image to like 16x16px it would be bigger than the rendered image.

Thanks for the tips,
Werner

Yes, it does seem very strange.
If the render output is mixed with a procedural texture once, the size of the texture seems to be scaled to the size of the output. But if two procedural textures are mixed, the result seems to be clipped to the small square area shown in your blend file. This can be seen if you move your viewer node to the output of two procedurals being mixed.
BTW, how do you access the parameter panels of the procedural textures you’re using? I’m new to this and would like to learn more…:confused:

Here’s an idea: How about applying your sepia color and effect as a material on a transparent plane and place this in front of the camera? Not a real solution to the problem (bug in the composite rendering system perhaps?) but a workaround to get a similar result…

OK, this seems to work. You have to set your nodes up so that it is always one image output and one texture for each successive mix. Doing a texture to texture mix seems to give you the little square thingy.

I remember that this ‘bug’ showed up just before 2.42 was released. What is happening is that the node system is taking the size of the ‘image’ from the first input. That means that if combine two textures, a small rectangle is used. Hopefully ton will now look into it, as part of finish up of ‘render pipeline stuff’.

Aligorith

@Grafix: Thanks for the workaround. It sounds like it should do the trick (why didn’t i think of that myself? :wink: ) I’ll try it as soon as i get to my Blender-machine

Oh, good to know i’m not the only one finding this ‘problem’. That explanation seems to fit perfectly. As long as i have a workaround it’s not that much of a problem, but anoying for sure :wink:

As far as i know you can’t do this directly, which i already sated in my second post int his thread. You can however create a ‘dummy’ material, go to the texture-buttons and select the used textures to modify them.

I currently don’t know another way to create/modify textures for use in composition nodes. Anybody else?

Werner

Here’s another workaround I discovered:
Look at your node setup. The procedural/procedural mixing is happening at the bottom part on the strand/strand mask texture, right?
What you can do is to first create another mix node, with the top image input connected to the render layer image output, and the bottom image input unconnected, but color set to black. Change the mix mode to multiply so that the output is a black image the size of the final rendered image.
Now connect this output to the top input of a new mix node, and the lower input is connected to the strand texture. Mode is mix and the value is adjusted to 1 so that you now have an output that is identical to the strand texture, but the size is now the same as the final rendered image.
Connect this output to the top input of the mix node you were using for the procedural/procedural mix. This should solve the quirky small square output problem you have.
I have gone over the node explanation at the wikipedia and it seems that the transparency is taken from the top input of the mix nodes and the bottom input’s transparency is ignored. So when you’re mixing two procedurals, my guess is the image size is being wrongly calculated from the texture preview window? So if you used this output, what’s happening is that you’re mixing a small image (procedural/procedural mix output) with a large image (the one connected to the render layer image data)… Procedurals seems to be resizing only if it is directly being mixed with the image, but are being converted to fixed size images if mixed with one another?

Just found a bugreport added by Letterrip (thanks):
http://projects.blender.org/tracker/?group_id=9&atid=125&func=detail&aid=5165

To quote Ton:

EDIT: To pull out the old saying: “So it’s not a bug, it’s a feature.” :wink:
Werner