Jump to content

Reptillian

Members
  • Posts

    1,238
  • Joined

  • Last visited

  • Days Won

    18

Everything posted by Reptillian

  1. They should look inside plugin installation folder. On the second question, the dll should be there though the folder name inside gmicsharpnative on the two are different. That won't matter as I'm the only one that's going to be porting gmic scripts into pdn as I am a gmic filter developer with knowing c#. I'll build the water example if there is any interest from others so that one won't need dll in two different folders. The dll file is 17000+ KB. Putting it together is not a option.
  2. Ok, I simplified the installation instructions. The first sentence can be ignored though it is only there as it is not the first gmic-pdn plugin. What null54 created was the first one.
  3. What this plugin does is to create tiled shapes into your canvas, and the colors are calculated by weighted average, and z-convolution as a post-process step. More details on how the plugin works below (Only for programmers, so click spoiler if you are one interested into this.): Note that there's a bug I can't resolve, however this plugin works well for the most part. The bug that I can't resolve has to do with starting with Australia and having dynamic option. Output of Effect: Installation steps: Note: Check if you have a folder named 'GmicPDN'. If you already had 'GmicSharpNative', and it was updated after 10/27/2021, then you need to create a new folder called 'GmicPDN', and then drag and drop the GmicPDN effect dlls, and `GmicSharpNative` folder. Otherwise, click on this link -> GmicPDN Download and Instruction. Ensure that the note is taken care of. Then, download the zip, and extract it directly into the Effects folder. -> TiledFormGmicPdn.zip Additional note as of 12/2/2021: Delete any dll that corresponds with the name of the downloaded. Try placing on Effects or GmicPDN folder. This is a troubleshooting instruction if you ran into the problem @AndrewDavid had. It's under Stylize menu. G'MIC-PDN Plugin Source code: To use these two source code file, you need to use this repository provided by @null54, rename everything within the source to ensure you have your own project folder, and then insert it where they originally are. You also need to build GmicSharpPDN library. Effect.cs PluginSupportInfo.cs AssemblyInfo.cs EDIT: Moved Tiled Form to Stylize EDIT: Added Z-Convolution Option EDIT as of 12/17/2020: Replaced to color[0] with conditionals. Now filter is faster for B&W image. Doesn't really make much of a difference, but it's slightly faster. EDIT: Icon added, and max dimension is 512. EDIT as of 3/17/2021: Allow users to use either only width or height to define tile size. EDIT as of 10/27/2021: Update to .NET 5.0 version. EDIT as of 10/29/2021: All problems resolved. EDIT as of 10/30/2021: Minor bug fix. Now, the result should look closer to original image. EDIT as of 12/02/2021: Changed g'mic code as it's a bug fix release. It is also updated to .NET 6 support.
  4. Never mind. I fixed it. Only one question remains: I cannot set multiple rules to ConfigUI per object? There are 3 different drop-down choices that I would like to activate one ui element.
  5. So, users will need to download updatexxx.gmic files and drop it into a new folder called gmic inside %appdata% if they didn't install gmic? EDIT: I found out that by deleting updatexxx inside %appdata%, you don't need to install gmic to be able to use the built dll. So, now I know what to do.
  6. Never mind, I succeeded in getting it to run. Now, I can make a GMIC-C# PDN plugin! Though one question remainss. How come I'm not getting RGB,RYB under first dropdown option? EDIT: I solved that now. Also, it's great that I am able to use user.gmic scripts file rather than prebuilt gmic script, so that I can make appropriate changes in context of pdn plugins. Though I did found that the script aren't done internally. I have to ask @null54. Do I need gmicxxxx.gmic files to make the pdn dll work?
  7. Hi, I'm not exactly sure if I know what I'm doing and I'm working from GmicSharpPDNExample. First, what do I do with CreateForEnum as it gives me a error? Second, what do I do with #if #endif statements found within all of the codes here. Third, is there more to point out here? I'm not exactly sure if I'm on the right route as I don't know what to question other than those. EDIT: After removing the new from StaticCast, it finally can build. However, it crash pdn because cast is invalid. What to do from here?
  8. @Ego Eram Reputo You forgot Thorn Fractal.
  9. After being able to build gmic-sharp with the help of @null54. It is time for this thread to be created. Here I will making gmic-pdn plugins. In addition, I will update these plugins - Thorn Fractal ; Popcorn Fractal. Popcorn Fractal will be faster as it internally uses unsafe multithreading and it is more than 150% faster. Thorn Fractal will receive custom formula support. A new plugin I will make is Tiled Form, and Fragment Blur+.
  10. I think what @Pyzayt needs is to increase values on all areas with no to little saturation. This requires HSV8 channel manipulation.
  11. EDIT: Here's the working 211 Palettes Set. -> PaintNET_Palettes.zip Also, you may want to be selective before inserting to palettes folder as trying to select one of them all to switch to can slow your computer down.
  12. @MJW I had converted the palettes into non-standard syntax i.e not seen in any existing palette file format in use for gmic filters, and there are over 220 palettes. Hence why I had decided to resort to using C++, and I found that it works. It took some work, but did it anyway. Technically, that should be feasible. However, I don't think it's worth it because my palette collection has only 13 palettes that contains over 96 colors. I think I'm better off just creating a collection of 96- colors PDN.txt palettes through C++. EDIT: I just had uploaded a collection of 211 palettes. Consider this thread solved.
  13. So, it would seem that my option is to write a script that converts my palettes into a set of vector, then convert them to palette file via c++ for all palettes that have 96 colors or less. And this hypothetical plugin would only be useful for all palettes with more than 96 colors. EDIT: It seems that I have 13 palettes with 97+ colors. Not sure if that sounds useful.
  14. Possible to do in codelab? What is my option? I plan to make a plugin with 224 palettes, and if a palette has 96 or less, it is set as palette, otherwise to image.
  15. Admins Note: This plugin is not completely compatible with the latest versions of paint.net (beyond 4.0.12). That's what happened.
  16. I had made Premade Palette filter for gmic-qt (a plugin for PDN) a long time ago. It does have doom palette, and you can insert it into canvas. Not sure if this sounds useful for you. If it does, then you'll find it under Testing->Reptorian.
  17. I'm adding a new feature to Tiled Form. It is going to take a while as I will factor into the existence of alpha channel and cmyka. The left is original, the middle left, the middle right is max, and the right is average. Also, here is how the min/max features work after getting some help from @G'MIC - https://discuss.pixls.us/t/return-maximum-value-coordinates-based-from-the-sum-of-channel-in-a-window-in-context-of-fill-block/21370/6
  18. I had tried converting g'mic-qt `Tiled Form` which is under Testing->Reptorian into a paint.net plugin. Not able to code in shape, so I went with clipboard to create a proof of concept plugin. The pseudo code for this plugin 1. Load Two Images (Target Image, Shape Image) 2. On Shape Image, transformation are applied such as mirror x/mirror y. Then it is cropped and fitted inside each rectangles. Form ratio less than 1 will ensure shape boundary has a length on at least one dimension being always smaller than each rectangle. It should be normalized though that's for later. 3. Create tile surface which will reflect only on x or y, or both or periodic mode. 4. Find weighed averages for rectangle using shapes. 5. Use Tile Surface to interpolate between weighed averages of all pixels that resides within rectangles. Then, it's done. For evidence to support this proof of concept, insert a shape into your clipboard. Black Background and white shape. Then run this plugin. You will see a different version of TR's Tiled Pixels. Some bugs still remain on this proof of concept though.
  19. I think I"m going with clipboard surface. Looks like the coding to do all of what I want with a shape is exceedingly difficult. See here. Note : It's not finished, and I'm not adding shapes, but this is to demonstrate.
  20. You get no arguments from me there. My point is that the OP wanted multiple bezier curves attached to each other, and to be able to manipulate aligned curves at once.
  21. @MJW The main difference is that you have more control with Blender/Maya/Inkscape/Krita vector curves than you do with PDN curves. Personally, I don't see a issue since PDN was never meant to be focused on vector. 3D programs has a clear purpose with vector with more control, and raster programs that already support vectors are usually meant for professionals (Not saying pdn can't be used by pros).
  22. Thanks @MJW, @BoltBait, @toe_head2001. After thinking long about it, I determined it is theoretically feasible, but rather difficult due to the nature of processing tile surface (auxiliary surface) taking into account of transformations (rotation part bothers me). Not to mention the headache of creating shape functions. Everything after that is straightforward. You have four more auxiliary surface after this, and one of those are multiplied by repeated tile surface, and the other is multiplied by the inverted repeated surface. Then you find weighed average of the color within each rectangle of tile and insert them into two small auxiliary surface, and finally use the tile surface to interpolate colors within two small auxiliary surface.
  23. Yes, that is what I want! And I will definitely wait for more info. One last thing, I am concerned about autocropping and rotation on auxiliary surface. On autocropping, is there a sample code? On rotation, I'm not sure on how to rotate and still keep all of the image within auxiliary. I know that I have to resize auxiliary surface just to fit it in. After that, I can assess the feasibility of converting Tiled Form gmic filter.
  24. This is closer. I would like to be able to resize auxiliary surface with arbitrary w and h, and with interpolation. That auxiliary being a tile surface.
×
×
  • Create New...