Jump to content

MJW

Members
  • Posts

    2,848
  • Joined

  • Last visited

  • Days Won

    70

Everything posted by MJW

  1. That is what Metallize does. In fact, its icon is a curve like the kind used in Curves to create a metallic appearance. Seems like a convenient way to produce that sort of effect. If you take the GLOSS image just before the Curves adjustment is applied, and apply Metallize with the default angle and the type set to 1, you'll get a result that's similar to the Curves version, EDIT: Just so I don't neglect to plug my own plugins, another way to produce that type of effect (assuming another way is needed) is to use Effects>Stylize>HSV Scrambler. Run it with all defaults, except the Value Scale set to a value greater then 1 (such as 4.5) and the Value Offset adjusted to move the highlights for the best appearance.
  2. You're most welcome. I'm glad I happened to spot that.
  3. If you explain more fully what you want (perhaps with a picture or two), you're more likely to get a useful answer. As it is, I don't even know if the gold border is on the one flag or the other, or it it's part of the background.
  4. Change the line to: double alpha = Amount1 / 100.0; Otherwise, the Amount1 / 100 is done as integer arithmetic.
  5. Thank you very much, Cc4FuzzyHuggles. I try not to seem too self-promotional. I am sort of hoping people will experiment with the Texture Shader plugin. The large number of controls may be a bit intimidating, but I think it can produce lots of interesting results. (Perhaps that's because parents always believe their children are beautiful.)
  6. Forgive me for once again plugging my own plugin, but for effects similar to the second video, and for many other text effects, the Texture Shader can be useful. Here is a (quickly done) version of the the reflecting "a": (Annoyingly, the light on the "a" is coming from the wrong direction. As I almost always do, I used an upper-left light. Then when I went to add the drop shadow, I noticed the video had the shadow up and to the left. If I get a chance, I'll fix it later.)
  7. There may be better ways, but you could create the text on a transparent background, copy it to the clipboard, then use BoltBait's Effects>Object>Paste Alpha plugin to copy the alpha values into the background layer. Select "Clipboard alpha" as the Alpha Source. (Or, perhaps, create the text as white text on a black background, and select "Clipboard shades of gray" as the Alpha Source.)
  8. For which effect are you trying to reuse the same surface as both the source and the destination? You should be able to do so with the brightness adjustment, but not with the enlargement or blur. The only way I know of for a CodeLab plugin to do the Blur Fill (at least without additional surfaces) is if the blur and enlargement could somehow be done in a single step, because in both operations a pixel's value depends on other pixels, which may or may not have already been modified. (I can't immediately see how it could be done in CodeLab even with additional surfaces, but I'd need to think about it more carefully before saying it couldn't.)
  9. It seems to work for the case I tried. The following plugin has an initial blur, followed by a brightness and contrast adjustment, and finally, an optional color inversion which is done in the render loop. The loop is only executed if the invert is done, since otherwise dst already contains the final image. There's a bit a flicker when the controls are moved, but the result is correct. Here is the code: Hidden Content: // Name: Gaussian Blur with Brightness and Contrast // Submenu: Blurs // Author: MJW // Title: Gaussian Blur with Brighness and Contrast // Desc: Gaussian Blur with Brightness and Contrast (test multiple built-in effects) // Keywords: Gaussian blur contrast brightness test multiple built-in effects // URL: // Help: #region UICode IntSliderControl Amount1 = 1; // [0,100] Blur Radius IntSliderControl Amount2 = 0; // [-100,100] Brightness IntSliderControl Amount3 = 0; // [-100,100] Contrast CheckboxControl Amount4 = false; // [0,1] Invert Colors #endregion // Here is the main render loop function void Render(Surface dst, Surface src, Rectangle rect) { // Setup for calling the Gaussian Blur effect GaussianBlurEffect blurEffect = new GaussianBlurEffect(); PropertyCollection blurProps = blurEffect.CreatePropertyCollection(); PropertyBasedEffectConfigToken BlurParameters = new PropertyBasedEffectConfigToken(blurProps); BlurParameters.SetPropertyValue(GaussianBlurEffect.PropertyNames.Radius, Amount1); blurEffect.SetRenderInfo(BlurParameters, new RenderArgs(dst), new RenderArgs(src)); // Call the Gaussian Blur function blurEffect.Render(new Rectangle[1] {rect}, 0, 1); // Adjust brightness and contrast. BrightnessAndContrastAdjustment bacAdjustment = new BrightnessAndContrastAdjustment(); PropertyCollection bacProps = bacAdjustment.CreatePropertyCollection(); PropertyBasedEffectConfigToken bacParameters = new PropertyBasedEffectConfigToken(bacProps); bacParameters.SetPropertyValue(BrightnessAndContrastAdjustment.PropertyNames.Brightness, Amount2); bacParameters.SetPropertyValue(BrightnessAndContrastAdjustment.PropertyNames.Contrast, Amount3); bacAdjustment.SetRenderInfo(bacParameters, new RenderArgs(dst), new RenderArgs(dst)); // Call the Brightness and Contrast Adjustment function bacAdjustment.Render(new Rectangle[1] {rect}, 0, 1); // Now in the main render loop, the dst canvas has a blurred version of the src canvas // The dst canvas has the contrast adjusted. // No need to do any more unless Invert is selected. if (Amount4) { for (int y = rect.Top; y < rect.Bottom; y++) { if (IsCancelRequested) return; for (int x = rect.Left; x < rect.Right; x++) { ColorBgra CurrentPixel = dst[x, y]; CurrentPixel = ColorBgra.FromUInt32(0x00ffffff ^ CurrentPixel.Bgra); dst[x, y] = CurrentPixel; } } } }
  10. I think BoltBait was talking about a limitation in CodeLab, where you can't create your own surfaces. EDIT: I took this out, because I thought maybe I was wrong, but I think it's correct, so I put it back in: I think, though, that even in CodeLab you could call multiple effects, provided that all but the first were adjustment-type effects (not necessarily in the Adjustment menu), which only use a single pixel as input to modify the same pixel. You could, I believe, call the effect with the dst surface as input and output. Perhaps I'm mistaken, but offhand I don't see why that wouldn't work.
  11. I have a new beta version (1.2). It doesn't have a fancy custom positioning control, nice as that might be, but it does have improved corner controls. First, they start in the corners; second, they have 3 decimal places; and third, they can be moved outside the window boundaries. There are other improvements to the plugin as well, such as a Help menu. I'll be glad to listen to any suggestions. Please see the EDIT at the bottom of the original comment for more details, and the ZIP file.
  12. A while ago I said: I discovered this can be done by the following call: configUI.SetPropertyControlValue(PropertyNames.Amount1, ControlInfoPropertyNames.DecimalPlaces, 3);
  13. Ego Eram Reputo, assuming your question is directed to mkp, he or she wants to produce actual physical objects by segmenting images, cutting them out, and attaching them to spheres. The first photo in post #6 shows an example.
  14. Hmm. That seems like a somewhat complex problem. The reason the the lines look straight instead of curved is, of course, that the individual segments are flat, and there's nothing than can be done about that. I'm not sure how exactly that can be compensated for, though there's likely a way. A standard sinusoidal map projection won't do it. Perhaps you or someone else can provide a reference or figure out the proper transformation. If not, I may or may not have time to think about it; and if I do think about it, I may or may not be able to solve it.
  15. Thank you. I keep promising to improve it, and intend to to so. The improvements I want to include are: 1) Put the starting positions in the corners instead of in the middle. Ideally, all four corners would be in the same control. 2) Increase the precision of the corner controls. At present there are only 200 positions, which for most windows means it can't position to a pixel. 3) Allow the corner controls to extend outside the window. Currently this has to be accomplished (rather unsatisfactorily) by scaling. 4) Change the way the XY proportion scaling works. Right now it's kind of awkward the way it switches between scaling X and scaling Y. If you have any other suggestions, I'll consider them.
  16. I almost hesitate to mention it, since I've promised to put it in a presentable form so many times and haven't yet done so, put there is the beta Perspective Transformation. The problem with Rotate/Zoom for this type of use is that it only covers a limited subset of perspective transformations. To allow all transformations, moving and scaling in screen space have to be separate from moving and scaling in world space, since the first change only the screen size and location while the second change the shape. So while Rotate/Zoom can produce a variety of useful perspective transformations, it can't achieve a specific transformation.
  17. I tried that Interrupted Sinusoidal Map Projection website, and it seems to work very well, at least in my quick test. What about it isn't sufficient for what you want to do?
  18. It doesn't sound very difficult. I'll see if I can figure out how to do it.
  19. How strange. Thank you for letting me know, Cc4FuzzyHuggles.
  20. Cc4FuzzyHuggles, until I read your response, I thought bay89 wanted the color to be less saturated, and was going to suggest Hue/Saturation+. Your interpretation makes more sense, though. I sure wish people would take the time to add more detail when asking questions like that. Over-explaining would certainly be preferable to under-explaining.
  21. I can certainly see it, both in my original comment and in the quoted portion in your comment. Can anyone else see it? Is it a magic wolf?
  22. Here's a recolored wolf, using what I think is a useful technique. I didn't recolor the eyes; I just wanted to show a method for coloring the fur. I started with my background-removed picture. I created a new layer below the wolf layer. I filled the layer with a constant color of 155, 111, 50 using the Paint Bucket tool (That's not quite accurate; I'll explain below) I copied the wolf layer to the clipboard. I then switched to the lower layer and used BoltBait's Effects>Object>Paste Alpha plugin with Alpha Source set to "Clipboard alpha." This pasted the alpha into the lower layer so it matched the upper layer. The color was now confined to the wolf area. I selected the upper layer and ran HSV Eraser with all default values, except: - The Match Color: 127, 127, 127 - Portion of Non-Erased Color to Preserve: 1.00 - Gray matches All Hues: Checked This made the gray fur transparent and allowed the brownish color to show through. I then flattened the image. As I mentioned, I didn't use that exact background color. I used a slightly different color gotten by using the Color Picker on the wolf's ear. After applying HSV Eraser, I used the Hue/Saturation adjustment on the lower (fixed-color) layer to get a color tint I liked. Both layers were visible, so I could see the results of my color adjustments on the the image.
  23. Cc4FuzzyHuggles is assuming by "make the red flower look a little more faded" you mean soften the edges, which is a reasonable assumption given you want to make it look less cut-and-pasted. If you mean something else, please explain more fully what you mean. Why do people requesting advice seem to feel they get extra credit for brevity?
  24. That's a shame. How silly of them to remove the background, but not provide a version that would be the most useful for graphics artists. Anyone could add a black background to a transparent-background version, but going the other way is much harder.
×
×
  • Create New...