Jump to content

Reptillian

Members
  • Posts

    1,237
  • Joined

  • Last visited

  • Days Won

    18

Posts posted by Reptillian

  1. These effects are generally achieved by manually creating the areas (likely in vector format since you can manipulate lines easier with it). Theoretically, you can achieve better results than what you did using anisotropic smoothing based on partial differential equations, and inpainting. I don't know how to describe that in terms of c# or more clearer, but it's something to look into if you want better result. Regardless I like the result, but making it better would take a lot of time, and a lot of research.

  2. Update on RPG Tiler Tool. I added undo state for row/column editing mode. Now, if you delete row/column, you can undo. If you shift row/column, you can undo. I think I know how to do multiple undos for the tool though that would take a lot of time. I just would need to create 3-dimensional image containing changes done to the image, and work with that. That would take time if I can bother with it.

     

    Update takes time to come to g'mic. Check by hour, then a day.

  3. I tested Chirikov-Taylor on G'MIC-QT 2.9.2. As some of you noticed, there is a error that says this:

     

    Quote

    Command 'eval': Unrecognized function call 'expr('x/w*2*pi',lines,1)' in expression '...iy=expr('x/w*2*pi,lines,1)...'.

     

    expr is only available on g'mic-qt 2.9.3 and higher. So, this cannot be used. I don't test my filters on pdn since krita and gimp takes priority since gmic-qt are almost always updated in those.

  4. New Filter! - Chirikov

     

    Additional comment:

    Right now, I would say that this is practical for use though preview isn't always accurate. This is based off Chirikov Standard Map, and I have implemented the symmetry modification after reading a paper made by Artur I.Karimov, Denis N. Butusov, Vyacheslav G. Rybin, Timur I. Karimov within Department of Computer Aided Design at Saint Petersburg Electrotechnical University. Furthermore, this isn't limited to square ratios, and you have so many different ways of coloring.

     

    Just a note : Coloring based on last image is a TODO.

  5. Decided to try to generate Chirikov-Taylor Standard Map.

     

    A preview

     

    $ rep_chirikov_taylor_map 5000,20000,pi/3,3610,1 n. 0,359.999 +f. i?1 . . *. 255 a c hsv2rgb r 500,500,100%,100%,5

     

    a80abf855d5aa7d74088ddd1dd7d9cb69827e56c

    For plugin authors:

    Spoiler

    Code for Chirikov-Taylor Map.

    
    rep_chirikov_taylor_map:
    skip ${2=5000},${3=1.52},${4=100},${5=.25}
    #$1==size#
    #$2==loop#
    #$3==k#
    #$4==lines#
    $1,$1,1,1
    eval ${-math_lib}"
    const pts=$2;
    const k=$3;
    const dpi=2*pi;
    const lines=$4;
    fmod(a)=a-dpi*floor(a/dpi);
    xi=0;
    iy=expr('x/w*2*pi',lines,1);
    for(n=0,n<lines,n++,
     yi=iy[n];
     for(ptn=0,ptn<pts,ptn++,
      yi=fmod(yi+k*sin(xi));
      xi=fmod(xi+yi);
      i(#-1,round(xi/dpi*w#-1),round(yi/dpi*h#-1))=n;
     );
    );
    "

     

     

    • Like 1
  6. On Krita, you do have the option to use plenty of filters that are very similar to plugins for Paint.NET by using G'MIC-QT. If you could name a couple, I could find you similar filters over there, and some has the same names such as Nebulous. A good filters of mine are already based on PDN plugins.

  7. If you updated the filter now and see nothing, check by a day. Otherwise:

     

    I added Fill Tool to Non-Isometric Tiler filter. Please read instruction to see how to use it. I have not enabled the fill for symmetry mode just yet and probably won't do so for some time. In most cases, you don't need to fill with symmetry conditions, and the current painting with symmetry mode does that job anyway if careful.

    • Like 1
  8. New Filter! - Tiled Zoom

     

    It's pretty much only a slight upgrade to @Ed Harvey Multiview plugin. You can change the width and height independently. It doesn't have boundary option of original, etc because you can already do that with none and the existing layer, so it's pointless IMHO. I figured out how it works when I thought of the theory to have repeating row and column gradient that goes from -v,+v, and to use j which means offset away from current x,y within for x,y loop.

     

    To expand:

     

    Snippet of rep_tiled_zoom:
    
     ix=(x+iox)%"$sqr_w"-cx;
     iy=(y+ioy)%"$sqr_h"-cy;
     nx=ix*sd;
     ny=iy*sd;
     fx=nx-ix;
     fy=ny-iy;
     j(fx,fy,0,0,2,boundary);

     

    iox,ioy means offset required for the window to be the same on edge.

    cx,cy is half window size.

    ix,iy creates the gradient.

    nx,ny are scaled gradient.

    fx is the difference.

    j means away from pixel. so -1 means the color will be based on image pixel 1 pixel to the left.

    • Like 1
  9. I had created another new filter. @MJW did a existing filter called Posterize in HSV space. So, I coded it my own version that allows for indexing in HSX color space or posterize using mathematical operation. It'll come tomorrow. I can't really say it's interesting, but it's a good exercise to work with 3 dimensional cube with 3 color channel per pixels.

     

    To clarify:

     

    $hb,$scb,$lub,3,[floor(360/($hb-1))*x,y/($scb-1),z/($lub-1)]

     

    $hb = Hue Band

    $scb = Saturation Band

    $lub = Luminosity Band

    3 is the number of channel on that argument

    [] defines the colors that exists within the band. x is of course x-coordinate of pixel, y is y-coordinate of pixel, and z is z-coordinate of pixel.

     

    This is used for indexing colors based on the above box. Indexing can be pretty slow as you can do this with 50x50x50 which means indexing using 125000 colors.

     

    Posterize doesn't really use 3-dimensional box.

    • Like 1
  10. New Filter! - Pseudorandom Noise

     

    The advantage of this version over the Regular Noise Texture plugin is that it's far easier to use, and some bugs are addressed. There's also way more variety that is possible. I will say that the colors are not the same because of the underlying mathematical difference within c++,c# in context of float to int.

     

    Note: There is a bug on the filter with double pixel axis mode, but single pixel axis looks better anyway, so I wouldn’t be so pressed about it. I will fix that bug when the time comes. It probably shows up with a specific dimension, so if you do come with the 3 pixel axis bug, let me know the dimension and which axis.

    • Like 1
  11. Now, I am working on adding masking features to DLA filter.

     

    72805d0f5c80e5a512c547d4ab334e7c422f8ffb

     

    You see that it is growing around the test? The test letter is the image. And yes, I will add a option to erase the image mask though I have to figure out how to display only the "sprouts" or something.

     

    EDIT: Solved it.

     

    5ac0a9e22e1c88e85e8faf73fe3361ad8317c13d

  12. 15 minutes ago, BoltBait said:

    More like my brain after looking at G'MIC scripts... they literally make NO sense to me at all.

    That how it was for me when I started out on G'MIC. There's actually a lot of different ways to do different things, and I had to learn basic things like f block (for x,y,z loop block), eval block, shared channels, etc and that with a vast command within gmic stdlib like index, sort, resize. It gets easier like with other programming language, and reading up on references makes it easier to understand over time. Fill block code is the easiest to understand because it's basically for x, for y, for z where begin can contain variable before for x,y,z and end can contain variable after the first part of for x,y,z loop. I know you don't plan to do gmic coding, but I'd just like to share details on how it was for me, and I'm also available if you'd like to convert a g'mic script into a pdn plugin.

  13. 1 minute ago, LoudSilence said:

    I'm not sure, but there is probably no solution. I think .agif doesn't support transparency

    .gif does support transparency. Binary though. I think it would be great to dither transparency though that can be made as a plugin or filter.

  14. Now I have figured out how gmic convolve_fft work. The right image is created by my own command, and the left is a gmic sample image. The right image is the convolve map for fft convolution.

     

    70834df6fc7a9b919d8ab6fba1131cfbef4af589

    This is essentially one direction motion blur. So, that means I am closer to making a new construction material texture.

     

    To expand:

     

    Part of the pdnfans tutorial for making crack requires Splinter. So I tested Splinter with the lowest amount of Splinter, and compared with motion blur. Based on the evidence from observation, Splinter utilize one direction motion blur with radial copies. I do not know the specific of convolution map for Splinter, but I do note that there are similarities with my own method based on plugin observation v. my own. I might expand on convolution map created by my code to create a sharpened convolution.

    • Upvote 1
×
×
  • Create New...