Compare commits

..

No commits in common. "9906e3f6112058d83531121682e6843f51173eab" and "92214054f9e471245d08331417406fe385bfa65f" have entirely different histories.

7 changed files with 11 additions and 163 deletions

67
Cargo.lock generated
View File

@ -236,7 +236,7 @@ dependencies = [
"daggy 0.5.0", "daggy 0.5.0",
"fnv", "fnv",
"instant", "instant",
"num 0.3.1", "num",
"pistoncore-input", "pistoncore-input",
"rusttype 0.8.3", "rusttype 0.8.3",
] ]
@ -1075,7 +1075,7 @@ dependencies = [
"gif", "gif",
"jpeg-decoder", "jpeg-decoder",
"num-iter", "num-iter",
"num-rational 0.3.2", "num-rational",
"num-traits", "num-traits",
"png", "png",
"scoped_threadpool", "scoped_threadpool",
@ -1587,25 +1587,11 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b7a8e9be5e039e2ff869df49155f1c06bd01ade2117ec783e56ab0932b67a8f" checksum = "8b7a8e9be5e039e2ff869df49155f1c06bd01ade2117ec783e56ab0932b67a8f"
dependencies = [ dependencies = [
"num-bigint 0.3.2", "num-bigint",
"num-complex 0.3.1", "num-complex",
"num-integer", "num-integer",
"num-iter", "num-iter",
"num-rational 0.3.2", "num-rational",
"num-traits",
]
[[package]]
name = "num"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606"
dependencies = [
"num-bigint 0.4.2",
"num-complex 0.4.0",
"num-integer",
"num-iter",
"num-rational 0.4.0",
"num-traits", "num-traits",
] ]
@ -1620,17 +1606,6 @@ dependencies = [
"num-traits", "num-traits",
] ]
[[package]]
name = "num-bigint"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74e768dff5fb39a41b3bcd30bb25cf989706c90d028d1ad71971987aa309d535"
dependencies = [
"autocfg",
"num-integer",
"num-traits",
]
[[package]] [[package]]
name = "num-complex" name = "num-complex"
version = "0.3.1" version = "0.3.1"
@ -1640,15 +1615,6 @@ dependencies = [
"num-traits", "num-traits",
] ]
[[package]]
name = "num-complex"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "26873667bbbb7c5182d4a37c1add32cdf09f841af72da53318fdb81543c15085"
dependencies = [
"num-traits",
]
[[package]] [[package]]
name = "num-integer" name = "num-integer"
version = "0.1.44" version = "0.1.44"
@ -1677,19 +1643,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07" checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07"
dependencies = [ dependencies = [
"autocfg", "autocfg",
"num-bigint 0.3.2", "num-bigint",
"num-integer",
"num-traits",
]
[[package]]
name = "num-rational"
version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d41702bd167c2df5520b384281bc111a4b5efcf7fbc4c9c222c815b07e0a6a6a"
dependencies = [
"autocfg",
"num-bigint 0.4.2",
"num-integer", "num-integer",
"num-traits", "num-traits",
] ]
@ -2540,15 +2494,6 @@ dependencies = [
"utils", "utils",
] ]
[[package]]
name = "subtitled25"
version = "0.1.0"
dependencies = [
"nannou",
"num 0.4.0",
"utils",
]
[[package]] [[package]]
name = "subtitled3" name = "subtitled3"
version = "0.1.0" version = "0.1.0"

View File

@ -3,3 +3,7 @@
this is a bunch of nannou projects this is a bunch of nannou projects
i'll add a list with pictures here soon i'll add a list with pictures here soon
you'll notice that the numbers i've put on fedi and the ones here are different :)
also don't criticize my code pls i'm sensitive and i Will cry

View File

@ -20,10 +20,9 @@ fn model(_app: &App) -> Model {
fn advance(point: Vec2, t: f32) -> Vec2 { fn advance(point: Vec2, t: f32) -> Vec2 {
// pick a random point // pick a random point
let count = ((t * 0.125).trunc() as usize % 5) + 3; let count = ((t * 0.125).trunc() as usize % 5) + 3;
let mut points = (0..count) let points = (0..count)
.map(|i| (TAU * i as f32 / count as f32).sin_cos().to_vec2()) .map(|i| (TAU * i as f32 / count as f32).sin_cos().to_vec2())
.collect::<Vec<_>>(); .collect::<Vec<_>>();
points.push(Vec2::ZERO);
let random = points[random_range(0, count)]; let random = points[random_range(0, count)];

View File

@ -1,9 +0,0 @@
[package]
name = "subtitled25"
version = "0.1.0"
edition = "2018"
[dependencies]
nannou = "0.17"
num = "0.4.0"
utils = { path = "../utils" }

View File

@ -1,50 +0,0 @@
use nannou::prelude::*;
use num::complex::*;
use utils::*;
fn main() {
nannou::app(model)
.update(update)
.simple_window(view)
.size(800, 800)
.run();
}
struct Model {}
const BALL_SIZE: f32 = 3.0;
fn model(_app: &App) -> Model {
Model {}
}
fn update(app: &App, _model: &mut Model, _update: Update) {
let _t = app.elapsed_frames() as f32 / 60.0;
}
fn shader(i: usize, j: usize, w: usize, h: usize, t: f32) -> Hsl {
let x = (i as f32 / w as f32) - 0.5;
let y = (j as f32 / h as f32) - 0.5;
let x = x * 7.0;
let y = y * 7.0;
let mut v = Complex::new(y, x);
let a = map_sin(t * 0.5, 0.0, TAU);
let c = Complex::from_polar(0.7885, a);
let iters = map_sin(t * 0.1, 10.0, 100.0);
for i in 0..(iters as usize) {
v = v.powi(2) + c;
if v.norm() > 10.0 {
return hsl(i as f32 / iters, 0.5, 0.5);
}
}
hsl(0.0, 0.0, 0.0)
}
fn view(app: &App, _model: &Model, frame: Frame) {
utils::shaders::run(app, frame, BALL_SIZE, shader, vec2)
}

View File

@ -4,7 +4,6 @@ pub mod drawing;
pub mod lsystems; pub mod lsystems;
pub mod record; pub mod record;
pub mod sequences; pub mod sequences;
pub mod shaders;
pub mod turtle; pub mod turtle;
use nannou::prelude::*; use nannou::prelude::*;

View File

@ -1,40 +0,0 @@
use nannou::prelude::*;
pub fn run<S, T>(app: &App, frame: Frame, ball_size: f32, shader: S, tile_movement: T)
where
S: Fn(usize, usize, usize, usize, f32) -> Hsl,
T: Fn(f32, f32) -> Vec2,
{
let t = frame.nth() as f32 / 120.0;
let draw = app.draw();
draw.background().color(BLACK);
let (l, top, w, h) = app.window_rect().l_t_w_h();
let cols = (w / ball_size) as usize;
let rows = (h / ball_size) as usize;
for i in 0..cols {
for j in 0..rows {
let x = l + j as f32 * ball_size;
let y = top - i as f32 * ball_size;
let p = tile_movement(x, y);
let color = shader(i, j, cols, rows, t);
draw.quad()
.points(
p + ball_size * vec2(1., 1.),
p + ball_size * vec2(1., -1.),
p + ball_size * vec2(-1., -1.),
p + ball_size * vec2(-1., 1.),
)
.xy(p)
.color(color);
}
}
draw.to_frame(app, &frame).unwrap();
super::record::record(app, &frame);
}