Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Posts posted by KrisVDM

  1. Found another issue:


    I used an image of size 1920x1080. I wanted to select a rectangle from the upper left corner, of size 1600x900. So I used the Rectangle Select tool, set it to Fixed Ratio of Width 16 by Height 9. (I know I could have set it to Fixed Size, but that is not the point).


    I then clicked somewhere left and above the upper left corner, and dragged the mouse to cursor position 1600, 900 as indicated in the status bar. The selected rectangle was 1597x900, instead of the expected 1600x900.


    Note that my screen is 1920x1080, and I was working in Zoom to Window mode (81%).


    The status bar:


  2. All the years I've been gratefully using Drop-Shadow, I've only just realised the corners are rounded

    Of course, they have to be. It's drawing all pixels within a given distance of your object. Imagine a regular octagon. You want the widening (or outline) to be at the same distance everywhere, right? The same for horizontal lines, vertical lines and lines under a 45° angle? Well, that logic gives you a circle around each pixel, and that results in rounded corners.

  3. You know, I've been thinking. She didn't need any plugin at all*, because her base image, the one she wants a shadow for, is a clean rectangle, with no transparency.

    All she needs to do is use three layers. Bottom one is background, top one is her image.

    In the middle one, draw a black rectangle and blur it. Done.

    *In fact, a plugin that would be handy to have is my object align plugin, to center the image and black rectangle.

  4. Or run Kris' drop shadow on a duplicate under the top layer with widening zero, blur 24 then run gausian blur at about 50-75 with keep original image un-checked ... then duplicate that layer and adjust the opacity to your liking if it is not dark enough to get the same effect ...

    In the interest of improving my effect for future versions: do I understand that the problem here is that you'd want (need) the set the blur radius to something between 75 and 100?

    Also, if you want the shadow to be darker, one way to get that is to use widening with bluring. As long as widening radius is less than blur radius, you will not get "unblurred" full opacity pixels in your shadow. You can think of the widening happening before the blur. And you can think of the widening as being (more or less) the same as an object outline. But of course, the blur only blurs the shadow, not the original image.

    The "keep original image" checkbox is present, precisely to allow this kind of scenario. But if you turn it off, the effect becomes significantly slower. If I understand your needs correctly (i.e. a blur radius of 100 pixels), I'm thinking you'd get your result faster with such a blur range in my effect and "keep original image" on, than having to do these multiple steps with duplicating the layer and separate blur. If that's true, I could increase the ranges in the next version.

  5. Humm, maybe this drop shadow isn't the effect I was originally looking for if this is the case. IDK need an example of yours to see. What I was after is like a shadow border around a solid image that I can then, if I choose, lay on top of a solid border.

    This is exactly what the Drop Shadow effect is made for. But you need to use layers to make it work.

    Fill you bottom layer with a background of your choice. In a second layer, place your image. This image now has transparent pixels around it, and the bottom layer is visible through them. Now apply the drop shadow to the top layer.

  6. I've been playing with them tonight and haven't been having much luck.

    If people don't have much luck with the drop shadow or object align effects, that's usually because they try them photo's or other images without transparency. You really need transparency around "objects" for these to have any effect.

    If that's the case, could you be somewhat more specific about your problems?

    • Upvote 1
  7. When you packaged all your dll files into one inconvenient installer, did you leave an original package somewhere with just the dll files for those of us that need to copy them manually because we're emulating a PC, or running Paint.NET off a portable platform such as LiberKey on a USB drive, or didn't install our Paint.Net in the default directory, or, or ,or ,or?

    Im not trying to be rude, but it's ignorant to assume everyone is running a standard Paint.Net installation in the default directory.

    That would indeed be rather ignorant. The installer is detecting the folder in which you installed Paint.NET, if it was indeed installed. To be honest, I didn't consider LiberKey at the time, because I simply didn't know about it. The next version of the installer will though. And before you ask: no, I don't know when it will be released yet.

  8. Okay, I only really need 3 plug-ins from this pack. Can someone please send me a PM with the dlls Drop Shadow, Object Align, and Fade Edge? It would be much appreciated. Thanks.

    Just in case anyone has a similar problem: the installer will install only the effects you select, it's not all or nothing. I created the installer to make installation easy, inlcuding the scenario where you don't want everything.

    In fact, you can also rerun the installer to remove some of the effects. Just deselect the ones you don't want.

    The message that says "please run the installer again" is triggered by Vandermotten.PaintDotNetEffects.Installer.dll. I created this dll because a lot of people just copy the contents of the zip folder into Paint.Net's effects folder. In fact, if they also copied install.exe, this dll will pick it up and allow running it. When the installer has run correctly, that dll is removed and the message no longer appears.

  9. Thanks for the new plugins but surely they are just another take on plugins already available. Grid lines does the same as Grid/Checkerboard Maker and Object Align is the same as Align Object. Is there any reason why I should keep both versions of each?

    Nope, as far as I know there is no reason to keep both. Feel free to remove one of them.

    As for Madjik's Grid Maker, maybe I should have done my homework better: I wasn't aware that it existed. It's just something I needed myself some time ago, and was very easy to create. As I had it anyway, I just included it in the download.

    The story is different for Object Align. The exisiting one hasn't been updated for years. I created my own version for different reasons, including speed and ease of use (which is subjective, feel free to disagree). I'm not sure whether moc426 intends to create new versions of his plugin, but I definitely intend to maintain mine at the same level as my other plugins (and that will include a version for PDN 4 when it comes out).

  10. Unfortunately I'm limited to .NET 2.0 so probably most of your optimisations wont work for me :(

    Anyway, I would love to see your new code. Are you planing to include sources?

    If you are limited to .NET 2.0, you're probably also limited to C# 2.0. In that case my source is close to useless to you, as it relies heavilly on lambdas and closures. But the techniques work on .NET 2.0, it's just that you have to write the lambdas as anonymous delegates.

    There were several reasons why I stopped sharing the code, the most important one being that I noticed nobody was interested in it. Most people just want to use the effects; they’re not developers, and the presence of source code only confuses them. The second reason, albeit less important, is that I wanted to stop rip-offs, people making illegal money out of my work. I believe this is also the reason why Rick stopped sharing the source for PDN itself.

    However, I am willing to help you of course. I will send you a PM.

  11. I tried to install this and it didn't work and now when I open PDN an error message pops up that says KrisVDM's plugin didn't work...

    Do you think you could put Drop Shadow up so that it'll work, that was the main one that I wanted.

    THANKS! boltbait.big_smile.png

    If the message you get is "Kris Vandermotten's Effects installed incorrectly. The installer can be run now (requires administrative rights). Do you want to run the installer now?", just click yes.

    If the message you get is "Kris Vandermotten's Effects installed incorrectly. Please run the installer (Install.exe) again.", then just run the installer. It's the "Install.exe" file in the zip you downloaded.

  12. Hmm, it seems that if users selects "Keep original image", then you just skip invisible parts of the shadow - this speeds things dramatically. Is that correct?

    Mostly. To be precise, when "keep original image" is on, I do an alpha blend of the original image over the shadow. The optimization is that I don't calculate the shadow if the alpha for the original pixel is 255, and just render the original pixel.

    I spent a lot of time over the years optimizing this. Various techniques are used. I guess the most important one is that I use partial evaluation. Basically, the first step of the process is to calculate the algorithm that will be executed, based on the parameter values. Then I execute that algorithm.

    For example, if the widening parameter is zero, the widening step isn’t in the algorithm being executed. The same is true for the blur step (and others). If widening and blur are both being used, I need what you could think of as an intermediate surface, but I need it only in that case. It simply isn’t there if at least one of those parameters is zero.

    The same is true for the “keep original image” functionality BTW. When that is off, the algorithm lacks the alpha blend step.

    Creating the algorithm on the fly yields a faster algorithm, because I don’t need “if” statements for every individual pixel, as might be the case in a static program.

    As it happens, I’ve done a lot of performance work over the last few months. Expect an even faster version soon.

  13. each time I fire up PDN this pops up, much like PS4 trial screen. Anyway to stop it?

    Current versions of my plugins no longer pop this up at PDN launch, only when one of my effects is actually used.

    Future versions will display "A new version of Kris Vandermotten's Paint.NET Effects is available."

    I hope that is less confusing for users. Any other suggestions?

  14. How to reproduce:

    - Start from a new image

    - Set primary color to red: 153, green: 179, blue: 204

    - Use Paint Bucket to fill entire image with this color

    - Choose Paintbrush tool, set Brush width to 200, Fill to solid color, antialiasing enabled, normal blending

    - Draw a bit

    - Choose Magic Wand, set selection mode to replace, flood mode to contiguous, Tolerance to zero

    - Click anywhere in the image where you did not draw

    Expected outcome: everyting is selected

    Actual outcome: everything is selected, except some pixels left at the edges of the brush circles

    PDN version: 3.5.5 running on Windows 7 64 bit

    I expect there is a rounding error in the normal blending of the atialiased pixels.

    Either the antialiased pixels do not have the same color (they are expected to have a different alpha, but the same RGB), or the alphablend has a rounding problem. Blending a color with itself should yield the same color.

    I often use this technique to remove noise in what should be solid color regions. Looks like that's not a good idea...

  15. ok guys here's my issue, i recently installed the effects pack (w/ like every effect) and i realized today that the Lighten and Darken tool in the Adjustment tab both cause PDN to crash.

    I created "Lighten" and "Darken" adjustments a long time ago. They were pretty useless and are no longer maintained and not included in the latest version of my plugins. If you install the latest version, it should automatically remove them.

    As pyrochild said, the plugin pack is illegal. I never gave permission to redistribute my plugins.

  16. What i'm wondering is what is the best way to blur between to raidus in a circular motion.

    For example first circle uses unblur comparatively to one

    Second circle to 5

    Third circle to 10

    Sounds like a good description of the algorithm to me. Just implement it.

    I think the trick is to realise that you don't need a selection to perform an effect on a subset of the pixels. After all, when OnRender is called, you can copy the original image to the destination and then modify (e.g. blur) part of the destination. After all, you control the rectangle on which you perform an effect.

    Also, you could consider first blurring the biggest circle, and then blurring smaller circles more (or less, whichever you want).

    Hope this helps.

  17. Photoshop uses a fancy dithering algorithm. Paint.NET does a straight, simple gradient.

    My "Gradient" plugin does dithering too now. It's not as versatile as PDN's gadient, and the dithering is not as strong as PhotoShop's, but it works. It should help especially if two interpolated colors are really close to each other.

    If you're interested, download via the link below.

  • Create New...