This tutorial is available as a PDF. Click here to view or download it
Reflection is a complex physical process, but an easy effect for Paint.NET.
Today, I will show you how to make realistic reflections with our beloved graphics-editing software .
For that, you will need MaDJik's Gravity plug-in.
However, due to the way this plug-in operates, you mustmake sure that whatever you are reflecting doesn't contain a single (semi-)transparent pixel! It should read the top, else also read the text in the tutorial marked with //*this*/.
How to get rid of transparency (If you know how that is done, don't bother reading that mini-tutorial. It's not too relevant for the rest of the tutorial):
Hidden Content:
Extract whatever you want to reflect (make all around it transparent), duplicate the layer, make a new layer, position it on the bottom of the two we are talking about, fill it with whatever color you wish, merge this layer and the one above, go to the topmost layer (the other reflection), use the Magic Wand, set tolerance to 50% or less, click somewhere around the reflection (to select the transparent area around the reflection, go the layer below, hit Delete, and delete the layer above. Hope you understood
How to sustain transparency will be explained throughout the tutorial.
We will be reflecting this mountain view I've drawn on the water below:
Well, as you see, this 800x600 image has a transparent area on the bottom. It can be seen best if you simply highlight the picture. It will be the water. But first, we need to reflect.
You may download the image, by the way. So you can practice.
Let's :ExpandCanvas: expand the canvas of the image.
Uncheck "Maintain aspect ratio", double the hight, and set the Anchor to "Top".
Next, :DuplicateLayer: duplicate the layer twice. Name the layers from top to bottom:
[*:1666u6er]True
[*:1666u6er]ReflectionBase
[*:1666u6er]Reflection
Flip the Reflection layer vertically.
I recommend trying the "Adding Transparency gradients" part now, which is explained at the bottom of this post, then you can continue here. But do that part with human understanding, so if there's written duplicate a layer or making a layer you already have, use the existing layer instead.
//*If you have transparency, make a big colored box on the Reflection Base layer, and make sure it starts from the utmost top of the image (height = 0), that it has the same width or more as the object or reflection, and that it covers all transparent pixels above the object in ReflectionBase, I still haven't found a way to keep transparency within the object. Make sure that this box doesn not reach the bottom edges of the object.*
Merge the ReflectionBase layer in to the Reflection layer and run the gravity plugin:
All default, direction of the gravity up
Now, go to :ExpandCanvas: Canvas Size, make sure "Maintain aspect ratio" is unchecked, halve the hight, and set the Anchor to "Top".
Next, I recommend deleting the part that is no reflection from the reflection layer, do it by going to the True layer, Magic Wand Tolerance < or = 50%, clicking on the transparent area, inverting the selection, going to the reflection layer, and hitting 'Delete'.
//* If you have transparency above the object, then simply delete the rest of the box*/
Now it is up to you how to do the tuning, only thing that matters is that you've done the reflection part. What I strongly recommend doing is moving the reflection up a bit, until you're satisfied, for the Gravity plug-in, however grateful I'm to MaDJik, has it's flaws
Here's what I have done:
Voila!
Try it out wherever you wish, but make sure there is no transparency it whatever you are reflecting.
In this tutorial the line along which we were reflecting was already given to ease the tutorial. But if it is some other line along which you need the reflection run, you must fill the distance between it and whatever else you want to reflect with a color other than (semi-)transparency, else it won't work!
It other words, I recommend reading the description of the Gravity plug-in before actively using this reflection tutorial.
Now comes an addendum.
Adding Transparency gradients
Hidden Content:
As you might now, reflections fade away with distance. However, the distance until the total "extinction" of the shadow depends from the "touching point", and it always remains the same.
So if you want to add a realistic transparency gradient, here what I recommend doing:
After having flipped the to-be-reflection vertically (=Reflection layer), make a new layer above the t.-b.-r.-layer,name it "Gradient" draw a filled rectangle from above the upper border of the picture, but not reaching the to-be-reflection:
So if the layer of this rectangle is below the layer of the object you want reflected, and above the layer of the to-be-reflection (the object, but vertically flipped), the rectangle must start from the utmost top of the image (height 0), and end between the lowest point of the object and the highest point of the to-be-reflection.
Duplicate the layer, name the lower one "GradientBase", merge it into the t.-b.-r.-layer (Reflection layer), run the gravity distortion effect, set your primary color to black, and the secondary to white, adjust the transparency gradient, go to the Gradient layer, use the magic wand to select it, go to the layer below and hit delete, than delete the layer with the rectangle.
Here a screenshot: