2
$\begingroup$

There is a scene I'd like to composite. In this case the desired result is to overlay some clouds on top of the mountains:

screenshot of the render

This works as long as the render resolution stays the same. For the sake of decreasing render times the percentage of resolution is set to 52 (so the image is almost 2 times smaller than final resolution).

Now once the result is satisfactory it would be great to increase the resolution to 100%. However if doing it just dragging the slider the render won't be satisfactory anymore:

screenshot of the render at high res

Obviously clouds didn't take new resolution into account and are of the same size while the rest of the image enlargened. How to composite the render result so the overlayed images on top of it stay intact?

The node setup used for these clouds is one Scale node set to scaling relatively to input image size (so to enter fractions of 1 factors), then Translate node to move images to its place (relatively to input image size as well) and Rotate node. All of them are added to image after mist.

very complex node setup
Convert Premultiplied is used here because of input png images I can't substitute which can't treat alpha normally (not related though).

As I thought it should help if Scale node is set up on Relative mode however it isn't related with output image, it will scale relative to input image so that's not what I'd like:

Relative
Percentage values relative to the dimensions of the image input.
manual

The straightforward solution is to edit values of the Scale (and possibly Translate) nodes in order to fit new resolution but that's quite unflexible as resolution might change once in while (also images to be overlayed can be anything, e.g. simple mask textures used as factors for other images etc).

How to overlay images on top of the render so when render resolution changes overlayed images continue being scaled respectively to the new image size?

$\endgroup$
  • 1
    $\begingroup$ Looks like the Scale node still is the answer but used on another mode, Render Size. Wish I found that earlier. $\endgroup$ – Mr Zak Jun 11 '17 at 20:06
3
$\begingroup$

Scale node set to Scene Size mode will scale image accordingly to the render resolution:

Scene Size
Sizes an image to the size of the final render resolution for the scene. For example, rendering a scene at the standard 1080p resolution but setting the render percentage at 50%, will produce a 1080p image with the scene scaled down 50% and leaving the rest of the image as alpha.

If feeding it with original image and then plugging the output of the node into nodes shown in the setup above it will work for different render resolutions:

screenshot-compositing-scene-Compare

The node setup will be the same with the only difference that now it has 1 additional Scale node. Fit option used here which is the easiest one for preserving image original ratio:

screenshot-node-setup-final

$\endgroup$

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.