Hi all. I’ve created special script to draw open and closed curved splines (also with jaggies removal).
To use it create a layer with points of three types:
Start point must be in shape of X i.e. one center pixel and at least four pixels in diagonal directions
Other points may be of any other shape, but overall circles will be best in my opinion
Remove pixels from center of your point shape to make a sharp corner
Use same color for all points until you need to redirect your spline. This script searches for next nearest point of same color first, so there may be some funny situations, so be aware.
Then run the script (eg_supercurve.lua) and select or enter appropriate KLen and DMax curvature parameters (default KLen=1/4, DMax=25, KLen is proportion of segment length for curving, DMax is maximum distance in pixels for curving when KLen used for very long segments).
Consider these images as illustration of source and results:
I planned to use this tool to make animated contour characters in relatively big resolutions like 320x240. While it could be used for such thing, there will be problems with moving points and distances between them.
So I still want those vector/path layers in 1.4 for Another World-like animations and references. But good point-to-point-to-point spline curve tool like I implemented here would be great too.
I’ll give it a try to confirm but I believe you just saved me hours of work of making smooth smear frames for my sword attacks (I suck at drawing clean curves) so thank you in advance.
I can’t quite get the hang of this script. When it reaches the first green circle, it then decides to jump down to the bottom green circle instead of moving to the green circle right next to it…
You X’s shape is 2x2 which is not supported. It should be 1x1 pixel with diagonal pixels around it.
Because of that script starts from topmost point, which is “second” green point and then goes clockwise, jumps to last “first” green point, then continues with hollow square and counter-clockwise, finishing at incorrect X point. cycling back to “second” green point. Whoops.