Files
curlywas/examples/microw8/warptunnel.cwa
2022-05-07 23:51:25 +02:00

16 lines
419 B
Plaintext

import "env.memory" memory(2);
import "env.time" fn time() -> f32;
export fn upd() {
let i: i32;
loop pixels {
let lazy x = (i % 320) as f32 - 160.1;
let lazy y = (i / 320 - 120) as f32;
let lazy dist = 1024_f / (x*x + y*y);
let inline t = time() * 4_f;
i?120 = (x * dist + t) as i32 ^ (y * dist + t) as i32 | -32;
branch_if (i +:= 1) < 320*240: pixels
}
}