From 83bc23206ad0982fcf2bf6c8e7256190dbe148f0 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 21 Nov 2022 22:09:42 +0100 Subject: works --- vgcodec/src/paint.wgsl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'vgcodec/src/paint.wgsl') diff --git a/vgcodec/src/paint.wgsl b/vgcodec/src/paint.wgsl index f23e903..7006310 100644 --- a/vgcodec/src/paint.wgsl +++ b/vgcodec/src/paint.wgsl @@ -1,7 +1,8 @@ struct Uniforms { x: f32, y: f32, - radius: f32, + rx: f32, + ry: f32, r: f32, g: f32, b: f32 @@ -13,7 +14,9 @@ struct Uniforms { @compute @workgroup_size(1) fn main(@builtin(global_invocation_id) global_id: vec3) { let coords = global_id.xy; - if distance(vec2(coords), vec2(uniforms.x, uniforms.y)) < uniforms.radius { + let kc = vec2(coords) - vec2(uniforms.x, uniforms.y); + let d = length(kc / vec2(uniforms.rx, uniforms.ry)); + if d < 1.0 { textureStore(tex, vec2(coords), vec4(vec3(uniforms.r, uniforms.g, uniforms.b), 1.0)); } } -- cgit v1.2.3-70-g09d2