Skip to content

Commit 1e3696a

Browse files
committed
Deploying to master from @ gfx-rs/wgpu@20bad46 🚀
1 parent cf21927 commit 1e3696a

30 files changed

+854
-748
lines changed

doc/search-index.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/search.desc/wgpu/wgpu-desc-0-.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/search.desc/wgpu/wgpu-desc-1-.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/search.desc/wgpu_types/wgpu_types-desc-0-.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/src/wgpu_hal/vulkan/adapter.rs.html

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2634,7 +2634,14 @@
26342634
<a href="#2633" id="2633">2633</a>
26352635
<a href="#2634" id="2634">2634</a>
26362636
<a href="#2635" id="2635">2635</a>
2637-
<a href="#2636" id="2636">2636</a></pre></div><pre class="rust"><code><span class="kw">use </span>std::{borrow::ToOwned <span class="kw">as _</span>, collections::BTreeMap, ffi::CStr, sync::Arc, vec::Vec};
2637+
<a href="#2636" id="2636">2636</a>
2638+
<a href="#2637" id="2637">2637</a>
2639+
<a href="#2638" id="2638">2638</a>
2640+
<a href="#2639" id="2639">2639</a>
2641+
<a href="#2640" id="2640">2640</a>
2642+
<a href="#2641" id="2641">2641</a>
2643+
<a href="#2642" id="2642">2642</a>
2644+
<a href="#2643" id="2643">2643</a></pre></div><pre class="rust"><code><span class="kw">use </span>std::{borrow::ToOwned <span class="kw">as _</span>, collections::BTreeMap, ffi::CStr, sync::Arc, vec::Vec};
26382645

26392646
<span class="kw">use </span>ash::{amd, ext, google, khr, vk};
26402647
<span class="kw">use </span>parking_lot::Mutex;
@@ -3131,19 +3138,20 @@
31313138
<span class="prelude-val">None
31323139
</span>},
31333140
mesh_shader: <span class="kw">if </span>enabled_extensions.contains(<span class="kw-2">&amp;</span>ext::mesh_shader::NAME) {
3134-
<span class="kw">let </span>needed = requested_features.contains(wgt::Features::MESH_SHADER);
3141+
<span class="kw">let </span>needed = requested_features.contains(wgt::Features::EXPERIMENTAL_MESH_SHADER);
3142+
<span class="kw">let </span>multiview_needed =
3143+
requested_features.contains(wgt::Features::EXPERIMENTAL_MESH_SHADER_MULTIVIEW);
31353144
<span class="prelude-val">Some</span>(
31363145
vk::PhysicalDeviceMeshShaderFeaturesEXT::default()
31373146
.mesh_shader(needed)
31383147
.task_shader(needed)
3139-
<span class="comment">// Multiview needs some special work https://github.com/gfx-rs/wgpu/issues/7262
3140-
</span>.multiview_mesh_shader(<span class="bool-val">false</span>),
3148+
.multiview_mesh_shader(multiview_needed),
31413149
)
31423150
} <span class="kw">else </span>{
31433151
<span class="prelude-val">None
31443152
</span>},
31453153
maintenance4: <span class="kw">if </span>enabled_extensions.contains(<span class="kw-2">&amp;</span>khr::maintenance4::NAME) {
3146-
<span class="kw">let </span>needed = requested_features.contains(wgt::Features::MESH_SHADER);
3154+
<span class="kw">let </span>needed = requested_features.contains(wgt::Features::EXPERIMENTAL_MESH_SHADER);
31473155
<span class="prelude-val">Some</span>(vk::PhysicalDeviceMaintenance4FeaturesKHR::default().maintenance4(needed))
31483156
} <span class="kw">else </span>{
31493157
<span class="prelude-val">None
@@ -3472,9 +3480,15 @@
34723480
caps.supports_extension(khr::external_memory_win32::NAME),
34733481
);
34743482
features.set(
3475-
F::MESH_SHADER,
3483+
F::EXPERIMENTAL_MESH_SHADER,
34763484
caps.supports_extension(ext::mesh_shader::NAME),
34773485
);
3486+
<span class="kw">if let </span><span class="prelude-val">Some</span>(<span class="kw-2">ref </span>mesh_shader) = <span class="self">self</span>.mesh_shader {
3487+
features.set(
3488+
F::EXPERIMENTAL_MESH_SHADER_MULTIVIEW,
3489+
mesh_shader.multiview_mesh_shader != <span class="number">0</span>,
3490+
);
3491+
}
34783492
(features, dl_flags)
34793493
}
34803494
}
@@ -3641,7 +3655,7 @@
36413655
}
36423656
}
36433657

3644-
<span class="kw">if </span>requested_features.intersects(wgt::Features::MESH_SHADER) {
3658+
<span class="kw">if </span>requested_features.intersects(wgt::Features::EXPERIMENTAL_MESH_SHADER) {
36453659
extensions.push(khr::spirv_1_4::NAME);
36463660
}
36473661

@@ -3660,7 +3674,7 @@
36603674
extensions.push(ext::subgroup_size_control::NAME);
36613675
}
36623676

3663-
<span class="kw">if </span>requested_features.intersects(wgt::Features::MESH_SHADER) {
3677+
<span class="kw">if </span>requested_features.intersects(wgt::Features::EXPERIMENTAL_MESH_SHADER) {
36643678
extensions.push(khr::maintenance4::NAME);
36653679
}
36663680
}
@@ -3741,7 +3755,7 @@
37413755
extensions.push(google::display_timing::NAME);
37423756
}
37433757

3744-
<span class="kw">if </span>requested_features.contains(wgt::Features::MESH_SHADER) {
3758+
<span class="kw">if </span>requested_features.contains(wgt::Features::EXPERIMENTAL_MESH_SHADER) {
37453759
extensions.push(ext::mesh_shader::NAME);
37463760
}
37473761

doc/src/wgpu_types/features.rs.html

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1525,7 +1525,20 @@
15251525
<a href="#1524" id="1524">1524</a>
15261526
<a href="#1525" id="1525">1525</a>
15271527
<a href="#1526" id="1526">1526</a>
1528-
<a href="#1527" id="1527">1527</a></pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::VertexFormat;
1528+
<a href="#1527" id="1527">1527</a>
1529+
<a href="#1528" id="1528">1528</a>
1530+
<a href="#1529" id="1529">1529</a>
1531+
<a href="#1530" id="1530">1530</a>
1532+
<a href="#1531" id="1531">1531</a>
1533+
<a href="#1532" id="1532">1532</a>
1534+
<a href="#1533" id="1533">1533</a>
1535+
<a href="#1534" id="1534">1534</a>
1536+
<a href="#1535" id="1535">1535</a>
1537+
<a href="#1536" id="1536">1536</a>
1538+
<a href="#1537" id="1537">1537</a>
1539+
<a href="#1538" id="1538">1538</a>
1540+
<a href="#1539" id="1539">1539</a>
1541+
<a href="#1540" id="1540">1540</a></pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::VertexFormat;
15291542
<span class="attr">#[cfg(feature = <span class="string">"serde"</span>)]
15301543
</span><span class="kw">use </span>alloc::fmt;
15311544
<span class="kw">use </span>alloc::vec::Vec;
@@ -2691,7 +2704,8 @@
26912704
/// - Metal
26922705
///
26932706
/// This is a native only feature.
2694-
</span><span class="kw">const </span>MESH_SHADER = <span class="number">1 </span>&lt;&lt; <span class="number">47</span>;
2707+
</span><span class="kw">const </span>EXPERIMENTAL_MESH_SHADER = <span class="number">1 </span>&lt;&lt; <span class="number">47</span>;
2708+
26952709
<span class="doccomment">/// ***THIS IS EXPERIMENTAL:*** Features enabled by this may have
26962710
/// major bugs in them and are expected to be subject to breaking changes, suggestions
26972711
/// for the API exposed by this should be posted on [the ray-tracing issue](https://github.com/gfx-rs/wgpu/issues/6762)
@@ -2706,6 +2720,18 @@
27062720
///
27072721
/// [`AccelerationStructureFlags::ALLOW_RAY_HIT_VERTEX_RETURN`]: super::AccelerationStructureFlags::ALLOW_RAY_HIT_VERTEX_RETURN
27082722
</span><span class="kw">const </span>EXPERIMENTAL_RAY_HIT_VERTEX_RETURN = <span class="number">1 </span>&lt;&lt; <span class="number">48</span>;
2723+
2724+
<span class="doccomment">/// Enables multiview in mesh shader pipelines
2725+
///
2726+
/// Supported platforms:
2727+
/// - Vulkan (with [VK_EXT_mesh_shader](https://registry.khronos.org/vulkan/specs/latest/man/html/VK_EXT_mesh_shader.html))
2728+
///
2729+
/// Potential Platforms:
2730+
/// - DX12
2731+
/// - Metal
2732+
///
2733+
/// This is a native only feature.
2734+
</span><span class="kw">const </span>EXPERIMENTAL_MESH_SHADER_MULTIVIEW = <span class="number">1 </span>&lt;&lt; <span class="number">49</span>;
27092735
}
27102736

27112737
<span class="doccomment">/// Features that are not guaranteed to be supported.

doc/wgpu/struct.Features.html

Lines changed: 105 additions & 94 deletions
Large diffs are not rendered by default.

doc/wgpu/struct.FeaturesWGPU.html

Lines changed: 97 additions & 86 deletions
Large diffs are not rendered by default.

doc/wgpu/struct.FeaturesWebGPU.html

Lines changed: 52 additions & 52 deletions
Large diffs are not rendered by default.

doc/wgpu_hal/trait.Adapter.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,4 @@
3232
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.85.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.SurfaceCapabilities.html" title="struct wgpu_hal::SurfaceCapabilities">SurfaceCapabilities</a>&gt;</h4></section></summary><div class="docblock"><p>Returns the capabilities of working with a specified surface.</p>
3333
<p><code>None</code> means presentation is not supported for it.</p>
3434
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.get_presentation_timestamp" class="method"><a class="src rightside" href="../src/wgpu_hal/lib.rs.html#656">Source</a><h4 class="code-header">unsafe fn <a href="#tymethod.get_presentation_timestamp" class="fn">get_presentation_timestamp</a>(&amp;self) -&gt; <a class="struct" href="../wgpu_types/struct.PresentationTimestamp.html" title="struct wgpu_types::PresentationTimestamp">PresentationTimestamp</a></h4></section></summary><div class="docblock"><p>Creates a <a href="../wgpu_types/struct.PresentationTimestamp.html" title="struct wgpu_types::PresentationTimestamp"><code>PresentationTimestamp</code></a> using the adapter’s WSI.</p>
35-
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section id="impl-Adapter-for-Adapter" class="impl"><a class="src rightside" href="../src/wgpu_hal/gles/adapter.rs.html#952-1233">Source</a><a href="#impl-Adapter-for-Adapter" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Adapter.html" title="trait wgpu_hal::Adapter">Adapter</a> for wgpu_hal::gles::<a class="struct" href="gles/struct.Adapter.html" title="struct wgpu_hal::gles::Adapter">Adapter</a></h3><span class="item-info"><div class="stab portability">Available on <strong><code>gles</code></strong> only.</div></span></section></summary><div class="impl-items"><section id="associatedtype.A-1" class="associatedtype trait-impl"><a class="src rightside" href="../src/wgpu_hal/gles/adapter.rs.html#953">Source</a><a href="#associatedtype.A-1" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.A" class="associatedtype">A</a> = <a class="struct" href="gles/struct.Api.html" title="struct wgpu_hal::gles::Api">Api</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Adapter-for-Context" class="impl"><a class="src rightside" href="../src/wgpu_hal/noop/mod.rs.html#219-247">Source</a><a href="#impl-Adapter-for-Context" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Adapter.html" title="trait wgpu_hal::Adapter">Adapter</a> for <a class="struct" href="noop/struct.Context.html" title="struct wgpu_hal::noop::Context">Context</a></h3></section></summary><div class="impl-items"><section id="associatedtype.A-2" class="associatedtype trait-impl"><a class="src rightside" href="../src/wgpu_hal/noop/mod.rs.html#220">Source</a><a href="#associatedtype.A-2" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.A" class="associatedtype">A</a> = <a class="struct" href="noop/struct.Api.html" title="struct wgpu_hal::noop::Api">Api</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Adapter-for-Adapter-1" class="impl"><a class="src rightside" href="../src/wgpu_hal/vulkan/adapter.rs.html#2201-2520">Source</a><a href="#impl-Adapter-for-Adapter-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Adapter.html" title="trait wgpu_hal::Adapter">Adapter</a> for wgpu_hal::vulkan::<a class="struct" href="vulkan/struct.Adapter.html" title="struct wgpu_hal::vulkan::Adapter">Adapter</a></h3><span class="item-info"><div class="stab portability">Available on <strong><code>vulkan</code></strong> only.</div></span></section></summary><div class="impl-items"><section id="associatedtype.A-3" class="associatedtype trait-impl"><a class="src rightside" href="../src/wgpu_hal/vulkan/adapter.rs.html#2202">Source</a><a href="#associatedtype.A-3" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.A" class="associatedtype">A</a> = <a class="struct" href="vulkan/struct.Api.html" title="struct wgpu_hal::vulkan::Api">Api</a></h4></section></div></details></div><script src="../trait.impl/wgpu_hal/trait.Adapter.js" async></script></section></div></main></body></html>
35+
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section id="impl-Adapter-for-Adapter" class="impl"><a class="src rightside" href="../src/wgpu_hal/gles/adapter.rs.html#952-1233">Source</a><a href="#impl-Adapter-for-Adapter" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Adapter.html" title="trait wgpu_hal::Adapter">Adapter</a> for wgpu_hal::gles::<a class="struct" href="gles/struct.Adapter.html" title="struct wgpu_hal::gles::Adapter">Adapter</a></h3><span class="item-info"><div class="stab portability">Available on <strong><code>gles</code></strong> only.</div></span></section></summary><div class="impl-items"><section id="associatedtype.A-1" class="associatedtype trait-impl"><a class="src rightside" href="../src/wgpu_hal/gles/adapter.rs.html#953">Source</a><a href="#associatedtype.A-1" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.A" class="associatedtype">A</a> = <a class="struct" href="gles/struct.Api.html" title="struct wgpu_hal::gles::Api">Api</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Adapter-for-Context" class="impl"><a class="src rightside" href="../src/wgpu_hal/noop/mod.rs.html#219-247">Source</a><a href="#impl-Adapter-for-Context" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Adapter.html" title="trait wgpu_hal::Adapter">Adapter</a> for <a class="struct" href="noop/struct.Context.html" title="struct wgpu_hal::noop::Context">Context</a></h3></section></summary><div class="impl-items"><section id="associatedtype.A-2" class="associatedtype trait-impl"><a class="src rightside" href="../src/wgpu_hal/noop/mod.rs.html#220">Source</a><a href="#associatedtype.A-2" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.A" class="associatedtype">A</a> = <a class="struct" href="noop/struct.Api.html" title="struct wgpu_hal::noop::Api">Api</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Adapter-for-Adapter-1" class="impl"><a class="src rightside" href="../src/wgpu_hal/vulkan/adapter.rs.html#2208-2527">Source</a><a href="#impl-Adapter-for-Adapter-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Adapter.html" title="trait wgpu_hal::Adapter">Adapter</a> for wgpu_hal::vulkan::<a class="struct" href="vulkan/struct.Adapter.html" title="struct wgpu_hal::vulkan::Adapter">Adapter</a></h3><span class="item-info"><div class="stab portability">Available on <strong><code>vulkan</code></strong> only.</div></span></section></summary><div class="impl-items"><section id="associatedtype.A-3" class="associatedtype trait-impl"><a class="src rightside" href="../src/wgpu_hal/vulkan/adapter.rs.html#2209">Source</a><a href="#associatedtype.A-3" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.A" class="associatedtype">A</a> = <a class="struct" href="vulkan/struct.Api.html" title="struct wgpu_hal::vulkan::Api">Api</a></h4></section></div></details></div><script src="../trait.impl/wgpu_hal/trait.Adapter.js" async></script></section></div></main></body></html>

0 commit comments

Comments
 (0)