Skip to content

Commit

Permalink
wgpu 0.17
Browse files Browse the repository at this point in the history
  • Loading branch information
Elabajaba committed Aug 19, 2023
1 parent 8a8d43d commit a46b52a
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 26 deletions.
3 changes: 2 additions & 1 deletion crates/bevy_pbr/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ bevy_derive = { path = "../bevy_derive", version = "0.12.0-dev" }
bitflags = "2.3"
# direct dependency required for derive macro
bytemuck = { version = "1", features = ["derive"] }
naga_oil = "0.8"
radsort = "0.1"
# naga_oil = "0.8"
naga_oil = { git = "https://github.com/VitalyAnkh/naga_oil.git", branch = "update-naga-to-0.13" }
smallvec = "1.6"
10 changes: 1 addition & 9 deletions crates/bevy_pbr/src/ssao/gtao.wgsl
Original file line number Diff line number Diff line change
Expand Up @@ -53,20 +53,12 @@ fn calculate_neighboring_depth_differences(pixel_coordinates: vec2<i32>) -> f32
edge_info = saturate((1.0 + bias) - edge_info / scale); // Apply the bias and scale, and invert edge_info so that small values become large, and vice versa

// Pack the edge info into the texture
let edge_info_packed = vec4<u32>(mypack4x8unorm(edge_info), 0u, 0u, 0u);
let edge_info_packed = vec4<u32>(pack4x8unorm(edge_info), 0u, 0u, 0u);
textureStore(depth_differences, pixel_coordinates, edge_info_packed);

return depth_center;
}

// TODO: Remove this once https://github.com/gfx-rs/naga/pull/2353 lands
fn mypack4x8unorm(e: vec4<f32>) -> u32 {
return u32(clamp(e.x, 0.0, 1.0) * 255.0 + 0.5) |
u32(clamp(e.y, 0.0, 1.0) * 255.0 + 0.5) << 8u |
u32(clamp(e.z, 0.0, 1.0) * 255.0 + 0.5) << 16u |
u32(clamp(e.w, 0.0, 1.0) * 255.0 + 0.5) << 24u;
}

fn load_normal_view_space(uv: vec2<f32>) -> vec3<f32> {
var world_normal = textureSampleLevel(normals, point_clamp_sampler, uv, 0.0).xyz;
world_normal = (world_normal * 2.0) - 1.0;
Expand Down
18 changes: 5 additions & 13 deletions crates/bevy_pbr/src/ssao/spatial_denoise.wgsl
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ fn spatial_denoise(@builtin(global_invocation_id) global_id: vec3<u32>) {
let visibility2 = textureGather(0, ambient_occlusion_noisy, point_clamp_sampler, uv, vec2<i32>(0i, 2i));
let visibility3 = textureGather(0, ambient_occlusion_noisy, point_clamp_sampler, uv, vec2<i32>(2i, 2i));

let left_edges = myunpack4x8unorm(edges0.x);
let right_edges = myunpack4x8unorm(edges1.x);
let top_edges = myunpack4x8unorm(edges0.z);
let bottom_edges = myunpack4x8unorm(edges2.w);
var center_edges = myunpack4x8unorm(edges0.y);
let left_edges = unpack4x8unorm(edges0.x);
let right_edges = unpack4x8unorm(edges1.x);
let top_edges = unpack4x8unorm(edges0.z);
let bottom_edges = unpack4x8unorm(edges2.w);
var center_edges = unpack4x8unorm(edges0.y);
center_edges *= vec4<f32>(left_edges.y, right_edges.x, top_edges.w, bottom_edges.z);

let center_weight = 1.2;
Expand Down Expand Up @@ -82,11 +82,3 @@ fn spatial_denoise(@builtin(global_invocation_id) global_id: vec3<u32>) {

textureStore(ambient_occlusion, pixel_coordinates, vec4<f32>(denoised_visibility, 0.0, 0.0, 0.0));
}

// TODO: Remove this once https://github.com/gfx-rs/naga/pull/2353 lands in Bevy
fn myunpack4x8unorm(e: u32) -> vec4<f32> {
return vec4<f32>(clamp(f32(e & 0xFFu) / 255.0, 0.0, 1.0),
clamp(f32((e >> 8u) & 0xFFu) / 255.0, 0.0, 1.0),
clamp(f32((e >> 16u) & 0xFFu) / 255.0, 0.0, 1.0),
clamp(f32((e >> 24u) & 0xFFu) / 255.0, 0.0, 1.0));
}
7 changes: 4 additions & 3 deletions crates/bevy_render/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,9 @@ bevy_tasks = { path = "../bevy_tasks", version = "0.12.0-dev" }
image = { version = "0.24", default-features = false }

# misc
wgpu = { version = "0.16.0", features=["naga"] }
wgpu = { version = "0.17.0", features=["naga"] }
codespan-reporting = "0.11.0"
naga = { version = "0.12.0", features = ["wgsl-in"] }
naga = { version = "0.13.0", features = ["wgsl-in"] }
serde = { version = "1", features = ["derive"] }
bitflags = "2.3"
bytemuck = { version = "1.5", features = ["derive"] }
Expand All @@ -74,7 +74,8 @@ parking_lot = "0.12.1"
regex = "1.5"
ddsfile = { version = "0.5.0", optional = true }
ktx2 = { version = "0.3.0", optional = true }
naga_oil = "0.8"
# naga_oil = "0.8"
naga_oil = { git = "https://github.com/VitalyAnkh/naga_oil.git", branch = "update-naga-to-0.13" }
# For ktx2 supercompression
flate2 = { version = "1.0.22", optional = true }
ruzstd = { version = "0.4.0", optional = true }
Expand Down

0 comments on commit a46b52a

Please sign in to comment.