More noise options?
This commit is contained in:
parent
f051b812f5
commit
e45f41f2e9
|
|
@ -24,12 +24,14 @@ fn on_vertex(in: Vertex) -> Varying {
|
|||
|
||||
@fragment
|
||||
fn on_fragment(in: Varying) -> @location(0) vec4f {
|
||||
let point = in.world;
|
||||
// let point = 10. * normalize(in.world - vec3f(0., 0., -10.));
|
||||
var result = 0.0;
|
||||
var hscale = 1.0;
|
||||
var vscale = 1.0;
|
||||
var seed = params.seed;
|
||||
for (var layer = 0u; layer < params.layers; layer++) {
|
||||
result += vscale * noise(seed, hscale * in.world);
|
||||
result += vscale * noise(seed, hscale * point);
|
||||
hscale *= params.scale;
|
||||
vscale *= params.roughness;
|
||||
seed = hash(seed);
|
||||
|
|
@ -37,6 +39,21 @@ fn on_fragment(in: Varying) -> @location(0) vec4f {
|
|||
return vec4(0.5 + 0.25 * result);
|
||||
}
|
||||
|
||||
// @fragment
|
||||
// fn on_fragment(in: Varying) -> @location(0) vec4f {
|
||||
// let point = in.world;
|
||||
// var result = 1.0;
|
||||
// var hscale = 1.0;
|
||||
// var seed = params.seed;
|
||||
// for (var layer = 0u; layer < params.layers; layer++) {
|
||||
// result *= pow(4.0 * abs(noise(seed, hscale * point)), 0.2);
|
||||
// result *= pow(clamp(1. + noise(seed, hscale * point), 0., 1.), 3.0);
|
||||
// hscale *= params.scale;
|
||||
// seed = hash(seed);
|
||||
// }
|
||||
// return vec4(result);
|
||||
// }
|
||||
|
||||
fn noise(seed: u32, coords: vec3f) -> f32 {
|
||||
let s = split(coords);
|
||||
var ret = 0.0;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user