texture resynthesis (resynthesizer as a standalone C program)
Find a file
2016-08-31 22:12:49 -07:00
kyaa.h first public version 2016-08-31 21:53:39 -07:00
README.md add a quick and dirty readme 2016-08-31 22:12:49 -07:00
resynth.c first public version 2016-08-31 21:53:39 -07:00
stb_image.h first public version 2016-08-31 21:53:39 -07:00
stb_image_write.h first public version 2016-08-31 21:53:39 -07:00
stretchy_buffer.h first public version 2016-08-31 21:53:39 -07:00

help

usage:
  -a  --autism
        sensitivity to outliers
        range: (0,256);     default: 32
  -N  --neighbors
        points to use when sampling
        range: (0,1024);    default: 29
  -r  --radius
        square neighborhood, always odd
        range: (0,32);      default: [n/a]
  -R  --circle-radius
        circle neighborhood radius
        range: (1,128);     default: [n/a]
  -M  --tries
        random points added to candidates
        range: (0,65536);   default: 192
  -p  --polish
        extra iterations
        range: (0,9);       default: 0
  -m  --magic
        magic constant, affects iterations
        range: (0,255);     default: 192
  -s  --scale
        output size multiplier; negative values set width and height
        range: (-8192,32);  default: 1
  -S  --seed
        initial RNG value
        range: (0,);        default: 0 [time(0)]
  {files...}
        image files to open, resynthesize, and save as {filename}.resynth.png
        required            default: [none]

apologies for the radius, circle-radius, and polish parameters. they should be properly described or removed.

notes

includes header libraries from nothings (stb) and notwa (kyaa).

compile like

clang -std=gnu11 -lm -Ofast resynth.c -o resynth

extra flags that i use are

-Wall -Wextra -Werror=implicit-function-declaration -Winline -Wshadow
-Wno-unused -Wno-padded -Wno-missing-field-initializers -Wno-misleading-indentation -Wno-disabled-macro-expansion -Wno-language-extension-token -Wno-unknown-warning-option