+static void vg_rand_disc( v2f co ){
+ f32 a = vg_randf64() * VG_TAUf;
+ co[0] = sinf(a);
+ co[1] = cosf(a);
+ v2_muls( co, sqrtf( vg_randf64() ), co );
+}
+
+static void vg_rand_cone( v3f out_dir, f32 angle ){
+ f32 r = sqrtf(vg_randf64()) * angle * 0.5f,
+ a = vg_randf64() * VG_TAUf;
+
+ out_dir[0] = sinf(a) * sinf(r);
+ out_dir[1] = cosf(a) * sinf(r);
+ out_dir[2] = cosf(r);
+}
+