015 · トリック
xor
XOR で格子を塗る
各マスの色を座標だけから決める格子。乱数もノイズも使わず、横の番号 x と縦の番号 y を ビット演算で混ぜた値を濃さに使う。
仕組みはビット場と、代数で対称を作るのノートにある。ここで足したのは見た目とランダム化。
混ぜ方は5種の式から毎回ひとつ選ぶ。(x^y)+t、((x&y)*2)^t、(x|y)+t、x^y^(x&t)、((x+t)^(y+t))+(x&y)。式が違えば三角の入れ子の骨格ごと変わる。
値は下位5〜6ビットを取り、紙・薄灰・濃灰・墨の4階調へ量子化する。連続濃淡でなく4色に丸めると境目が立ち、織物の柄に近づく。
開始時に scale(1〜3倍の拡大)、offX/offY(座標オフセット)、speed(正逆どちらに流れるか)をランダムに振る。同じ式でも見える窓と流れる向きが毎回変わる。
セルは2px。盤面いっぱいに細かく敷き、accumulator に 0.5 ずつ足して切り捨てた t で進めるので、流れが速すぎず止まらない。状態はこのフレーム番号ひとつきり。