Skip to content

0.5.0 — vocabulary 12: camera shake, a wider camera range, the transparent background

Choose a tag to compare

@tosin2013 tosin2013 released this 24 Oct 01:42
· 78 commits to main since this release
d142ee5

Two format additions; the vocabulary is unchanged and no existing reference frame moved.

  • Camera shake: camera.shake = { amp, freq }, a seeded, closed-form tremble (amp up to
    0.05 of the frame, freq up to 5 per second, default 3), scaled by depth under
    parallax (#87). A camera without a shake renders exactly as before.
  • Camera keyframe x/y now run from -1 to 2 instead of 0 to 1, so a camera can travel
    one and a half screens from the centre (#111). Cameras inside 0..1 are unchanged.
  • Intended change: a spec stored without validation, with a camera keyframe outside
    0..1, used to be clamped to 0..1 when validated; it now renders at its stated position
    (within -1..2). Specs stored after validation already hold clamped values and do not
    change. Constitution 2.16.0.
  • Transparent background: background: "transparent" with an optional ink ("light", the
    default, or "dark"). Frames carry alpha; laid over black (light) or white (dark) they equal
    the solid render, for every primitive. animspec render --png writes RGBA PNGs and --raw
    carries alpha (#100). Constitution 3.1.0.
  • Cross-type reference checks now include alpha, and a pixel that is not fully opaque is
    compared by its colour weighted by alpha. Opaque pixels are compared as before, so no
    existing result changed. Constitution 3.0.0 (Principle I).
  • Intended change: a spec stored without validation with background: "transparent" used
    to draw on black; it now draws transparent. Validated specs hold "black" and do not change.