mirror of
https://git.lynn.is/Gwen/pretty-automata.git
synced 2024-06-18 03:45:07 +02:00
87 lines
2.2 KiB
Markdown
87 lines
2.2 KiB
Markdown
|
# TODO
|
||
|
|
||
|
- imgui
|
||
|
- split up into commands: view, preview-colormap, save-image, save-video
|
||
|
- colormap invert option
|
||
|
- pass colormap values as command line option?
|
||
|
- see if the rendering can be made better, maybe dynamically adjust generation duration
|
||
|
|
||
|
# Options
|
||
|
|
||
|
|
||
|
## subcommands
|
||
|
|
||
|
- `view`
|
||
|
- `preview-colormaps`
|
||
|
- `save-image`
|
||
|
- `save-video`
|
||
|
|
||
|
### `view`
|
||
|
|
||
|
#### automaton options
|
||
|
|
||
|
-[x] `--preset` `-p` `<preset-name>`
|
||
|
-[x] `--size` `-s` `<uint>x<uint>`
|
||
|
-[ ] `--birth` `-b` `<uint...>`
|
||
|
-[ ] `--survive` `-u` `<uint...>`
|
||
|
-[ ] `--max-age` `-a` `<max-age>`
|
||
|
-[ ] `--starve-delay` `-d` `<uint>`
|
||
|
-[ ] `--starve-recover` `-r` `<bool>`
|
||
|
-[ ] `--initialise` `-i` `<init>`
|
||
|
|
||
|
#### display options
|
||
|
-[ ] `--display-size` `-S` `<uint>x<uint>`
|
||
|
-[ ] `--fullscreen` `-F`
|
||
|
-[ ] `--color-alive` `-A` `<color-or-colormap>`
|
||
|
-[ ] `--color-dead` `-D` `<color>`
|
||
|
-[ ] `--generation-duration` `-G` `<uint>`
|
||
|
-[ ] `--blend` `-B`
|
||
|
|
||
|
## formats
|
||
|
|
||
|
### `color`
|
||
|
possible values:
|
||
|
-[x] `#<hex>`
|
||
|
-[x] `rgb(uint,uint,uint)`
|
||
|
-[x] `lab(float,float,float)`
|
||
|
-[x] `luv(float,float,float)`
|
||
|
-[x] `oklab(float,float,float)`
|
||
|
|
||
|
### `colormap`
|
||
|
TODO: this `:` syntax is inconsistent with the function-style syntax
|
||
|
-[x] `<colormapdef>[,<colormap-scale>][,invert]` name of a predefined colormap, and optional scale, and optional invert flag
|
||
|
### `colormapdef`:
|
||
|
-[x] `<name>` name of a predefined colormap
|
||
|
-[x] `map(<lab|luv|oklab>, (float,float,float),...)`
|
||
|
-[x] `map([rgb,] <colorlist-rgb>)`
|
||
|
|
||
|
### `colorlist-rgb`:
|
||
|
-[x] `<colorlist-color-rgb, ...>`
|
||
|
|
||
|
### `colorlist-color-rgb`:
|
||
|
-[x] `#<hex>`
|
||
|
-[x] `(<uint>,<uint>,<uint>)`
|
||
|
|
||
|
### `color-or-colormap`
|
||
|
-[x] `<color>`
|
||
|
-[x] `<colormap>`
|
||
|
|
||
|
### `colormap-scale`
|
||
|
-[x] `<uint>`
|
||
|
-[x] `inherent`
|
||
|
-[x] `global-max-age` only possible if max-age is set, otherwise fallback to `inherent`
|
||
|
-[x] `max-age` same as before
|
||
|
|
||
|
### `init`
|
||
|
-[x] `rect(<uint>,<uint>)`
|
||
|
-[x] `square(<uint>)`
|
||
|
-[x] `ellipse(<uint>,<uint>)`
|
||
|
-[x] `circle(<uint>)`
|
||
|
-[x] `perlin(<float>,<float>)` scale and cutoff
|
||
|
|
||
|
### `max-age`
|
||
|
-[x] `static(<uint>)`
|
||
|
-[x] `radial(<uint>,<uint>)` center and corner max age, circular
|
||
|
-[x] `radial-fit(<uint>,<uint>)` center and corner max age, elliptic fit into size
|
||
|
-[x] `perlin-static(<float>,<uint>,<uint>)` scale and min/max
|
||
|
-[x] `perlin-dynamic(<float>, <uint>, <uint>, <float>, <uint>)` scale, min, max, time-scale, time-step
|