253 lines
78 KiB
HTML
253 lines
78 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="A `RenderPass`, which tracks the current pipeline state to skip redundant operations."><title>TrackedRenderPass in bevy_render::render_phase - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-42caa33d.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="bevy_render" data-themes="" data-resource-suffix="" data-rustdoc-version="1.84.0 (9fc6b4312 2025-01-07)" data-channel="1.84.0" data-search-js="search-92e6798f.js" data-settings-js="settings-0f613d39.js" ><script src="../../static.files/storage-59e33391.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-5f194d8c.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-893ab5e7.css"></noscript><link rel="icon" href="https://bevyengine.org/assets/icon.png"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button><a class="logo-container" href="../../bevy_render/index.html"><img src="https://bevyengine.org/assets/icon.png" alt=""></a></nav><nav class="sidebar"><div class="sidebar-crate"><a class="logo-container" href="../../bevy_render/index.html"><img src="https://bevyengine.org/assets/icon.png" alt="logo"></a><h2><a href="../../bevy_render/index.html">bevy_<wbr>render</a><span class="version">0.15.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Tracked<wbr>Render<wbr>Pass</a></h2><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.draw" title="draw">draw</a></li><li><a href="#method.draw_indexed" title="draw_indexed">draw_indexed</a></li><li><a href="#method.draw_indexed_indirect" title="draw_indexed_indirect">draw_indexed_indirect</a></li><li><a href="#method.draw_indirect" title="draw_indirect">draw_indirect</a></li><li><a href="#method.insert_debug_marker" title="insert_debug_marker">insert_debug_marker</a></li><li><a href="#method.multi_draw_indexed_indirect" title="multi_draw_indexed_indirect">multi_draw_indexed_indirect</a></li><li><a href="#method.multi_draw_indexed_indirect_count" title="multi_draw_indexed_indirect_count">multi_draw_indexed_indirect_count</a></li><li><a href="#method.multi_draw_indirect" title="multi_draw_indirect">multi_draw_indirect</a></li><li><a href="#method.multi_draw_indirect_count" title="multi_draw_indirect_count">multi_draw_indirect_count</a></li><li><a href="#method.new" title="new">new</a></li><li><a href="#method.pop_debug_group" title="pop_debug_group">pop_debug_group</a></li><li><a href="#method.push_debug_group" title="push_debug_group">push_debug_group</a></li><li><a href="#method.set_bind_group" title="set_bind_group">set_bind_group</a></li><li><a href="#method.set_blend_constant" title="set_blend_constant">set_blend_constant</a></li><li><a href="#method.set_camera_viewport" title="set_camera_viewport">set_camera_viewport</a></li><li><a href="#method.set_index_buffer" title="set_index_buffer">set_index_buffer</a></li><li><a href="#method.set_push_constants" title="set_push_constants">set_push_constants</a></li><li><a href="#method.set_render_pipeline" title="set_render_pipeline">set_render_pipeline</a></li><li><a href="#method.set_scissor_rect" title="set_scissor_rect">set_scissor_rect</a></li><li><a href="#method.set_stencil_reference" title="set_stencil_reference">set_stencil_reference</a></li><li><a href="#method.set_vertex_buffer" title="set_vertex_buffer">set_vertex_buffer</a></li><li><a href="#method.set_viewport" title="set_viewport">set_viewport</a></li><li><a href="#method.wgpu_pass" title="wgpu_pass">wgpu_pass</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-TrackedRenderPass%3C'a%3E" title="!RefUnwindSafe">!RefUnwindSafe</a></li><li><a href="#impl-UnwindSafe-for-TrackedRenderPass%3C'a%3E" title="!UnwindSafe">!UnwindSafe</a></li><li><a href="#impl-Freeze-for-TrackedRenderPass%3C'a%3E" title="Freeze">Freeze</a></li><li><a href="#impl-Send-for-TrackedRenderPass%3C'a%3E" title="Send">Send</a></li><li><a href="#impl-Sync-for-TrackedRenderPass%3C'a%3E" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-TrackedRenderPass%3C'a%3E" title="Unpin">Unpin</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T" title="Any">Any</a></li><li><a href="#impl-AsBindGroupShaderType%3CU%3E-for-T" title="AsBindGroupShaderType<U>">AsBindGroupShaderType<U></a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow<T>">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut<T>">BorrowMut<T></a></li><li><a href="#impl-ConditionalSend-for-T" title="ConditionalSend">ConditionalSend</a></li><li><a href="#impl-Downcast-for-T" title="Downcast">Downcast</a></li><li><a href="#impl-Downcast%3CT%3E-for-T" title="Downcast<T>">Downcast<T></a></li><li><a href="#impl-DowncastSync-for-T" title="DowncastSync">DowncastSync</a></li><li><a href="#impl-From%3CT%3E-for-T" title="From<T>">From<T></a></li><li><a href="#impl-Instrument-for-T" title="Instrument">Instrument</a></li><li><a href="#impl-Into%3CU%3E-for-T" title="Into<U>">Into<U></a></li><li><a href="#impl-IntoEither-for-T" title="IntoEither">IntoEither</a></li><li><a href="#impl-Settings-for-T" title="Settings">Settings</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom<U>">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto<U>">TryInto<U></a></li><li><a href="#impl-Upcast%3CT%3E-for-T" title="Upcast<T>">Upcast<T></a></li><li><a href="#impl-VZip%3CV%3E-for-T" title="VZip<V>">VZip<V></a></li><li><a href="#impl-WasmNotSend-for-T" title="WasmNotSend">WasmNotSend</a></li><li><a href="#impl-WasmNotSendSync-for-T" title="WasmNotSendSync">WasmNotSendSync</a></li><li><a href="#impl-WasmNotSync-for-T" title="WasmNotSync">WasmNotSync</a></li><li><a href="#impl-WithSubscriber-for-T" title="WithSubscriber">WithSubscriber</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="index.html">In bevy_<wbr>render::<wbr>render_<wbr>phase</a></h2></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="../index.html">bevy_render</a>::<wbr><a href="index.html">render_phase</a></span><h1>Struct <span class="struct">TrackedRenderPass</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/bevy_render/render_phase/draw_state.rs.html#133-136">Source</a> </span></div><pre class="rust item-decl"><code>pub struct TrackedRenderPass<'a> { <span class="comment">/* private fields */</span> }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <a href="../../wgpu/api/render_pass/struct.RenderPass.html" title="struct wgpu::api::render_pass::RenderPass"><code>RenderPass</code></a>, which tracks the current pipeline state to skip redundant operations.</p>
|
||
<p>It is used to set the current <a href="../render_resource/struct.RenderPipeline.html" title="struct bevy_render::render_resource::RenderPipeline"><code>RenderPipeline</code></a>, <a href="../render_resource/struct.BindGroup.html" title="struct bevy_render::render_resource::BindGroup"><code>BindGroup</code></a>s and <a href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer"><code>Buffer</code></a>s.
|
||
After all requirements are specified, draw calls can be issued.</p>
|
||
</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-TrackedRenderPass%3C'a%3E" class="impl"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#138-636">Source</a><a href="#impl-TrackedRenderPass%3C'a%3E" class="anchor">§</a><h3 class="code-header">impl<'a> <a class="struct" href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass">TrackedRenderPass</a><'a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#140-152">Source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(device: &<a class="struct" href="../renderer/struct.RenderDevice.html" title="struct bevy_render::renderer::RenderDevice">RenderDevice</a>, pass: <a class="struct" href="../../wgpu/api/render_pass/struct.RenderPass.html" title="struct wgpu::api::render_pass::RenderPass">RenderPass</a><'a>) -> Self</h4></section></summary><div class="docblock"><p>Tracks the supplied render pass.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.wgpu_pass" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#158-161">Source</a><h4 class="code-header">pub fn <a href="#method.wgpu_pass" class="fn">wgpu_pass</a>(&mut self) -> &mut <a class="struct" href="../../wgpu/api/render_pass/struct.RenderPass.html" title="struct wgpu::api::render_pass::RenderPass">RenderPass</a><'a></h4></section></summary><div class="docblock"><p>Returns the wgpu <a href="../../wgpu/api/render_pass/struct.RenderPass.html" title="struct wgpu::api::render_pass::RenderPass"><code>RenderPass</code></a>.</p>
|
||
<p>Function invalidates internal tracking state,
|
||
some redundant pipeline operations may not be skipped.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_render_pipeline" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#166-173">Source</a><h4 class="code-header">pub fn <a href="#method.set_render_pipeline" class="fn">set_render_pipeline</a>(&mut self, pipeline: &'a <a class="struct" href="../render_resource/struct.RenderPipeline.html" title="struct bevy_render::render_resource::RenderPipeline">RenderPipeline</a>)</h4></section></summary><div class="docblock"><p>Sets the active <a href="../render_resource/struct.RenderPipeline.html" title="struct bevy_render::render_resource::RenderPipeline"><code>RenderPipeline</code></a>.</p>
|
||
<p>Subsequent draw calls will exhibit the behavior defined by the <code>pipeline</code>.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_bind_group" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#182-211">Source</a><h4 class="code-header">pub fn <a href="#method.set_bind_group" class="fn">set_bind_group</a>(
|
||
&mut self,
|
||
index: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>,
|
||
bind_group: &'a <a class="struct" href="../render_resource/struct.BindGroup.html" title="struct bevy_render::render_resource::BindGroup">BindGroup</a>,
|
||
dynamic_uniform_indices: &[<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>],
|
||
)</h4></section></summary><div class="docblock"><p>Sets the active bind group for a given bind group index. The bind group layout
|
||
in the active pipeline when any <code>draw()</code> function is called must match the layout of
|
||
this bind group.</p>
|
||
<p>If the bind group have dynamic offsets, provide them in binding order.
|
||
These offsets have to be aligned to <a href="../settings/struct.WgpuLimits.html#structfield.min_uniform_buffer_offset_alignment" title="field bevy_render::settings::WgpuLimits::min_uniform_buffer_offset_alignment"><code>WgpuLimits::min_uniform_buffer_offset_alignment</code></a>
|
||
or <a href="../settings/struct.WgpuLimits.html#structfield.min_storage_buffer_offset_alignment" title="field bevy_render::settings::WgpuLimits::min_storage_buffer_offset_alignment"><code>WgpuLimits::min_storage_buffer_offset_alignment</code></a> appropriately.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_vertex_buffer" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#223-245">Source</a><h4 class="code-header">pub fn <a href="#method.set_vertex_buffer" class="fn">set_vertex_buffer</a>(
|
||
&mut self,
|
||
slot_index: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.usize.html">usize</a>,
|
||
buffer_slice: <a class="struct" href="../render_resource/struct.BufferSlice.html" title="struct bevy_render::render_resource::BufferSlice">BufferSlice</a><'a>,
|
||
)</h4></section></summary><div class="docblock"><p>Assign a vertex buffer to a slot.</p>
|
||
<p>Subsequent calls to <a href="struct.TrackedRenderPass.html#method.draw" title="method bevy_render::render_phase::TrackedRenderPass::draw"><code>draw</code></a> and <a href="struct.TrackedRenderPass.html#method.draw_indexed" title="method bevy_render::render_phase::TrackedRenderPass::draw_indexed"><code>draw_indexed</code></a> on this
|
||
<a href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass"><code>TrackedRenderPass</code></a> will use <code>buffer</code> as one of the source vertex buffers.</p>
|
||
<p>The <code>slot_index</code> refers to the index of the matching descriptor in
|
||
<a href="../render_resource/struct.VertexState.html#structfield.buffers" title="field bevy_render::render_resource::VertexState::buffers"><code>VertexState::buffers</code></a>.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_index_buffer" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#251-272">Source</a><h4 class="code-header">pub fn <a href="#method.set_index_buffer" class="fn">set_index_buffer</a>(
|
||
&mut self,
|
||
buffer_slice: <a class="struct" href="../render_resource/struct.BufferSlice.html" title="struct bevy_render::render_resource::BufferSlice">BufferSlice</a><'a>,
|
||
offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
index_format: <a class="enum" href="../render_resource/enum.IndexFormat.html" title="enum bevy_render::render_resource::IndexFormat">IndexFormat</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Sets the active index buffer.</p>
|
||
<p>Subsequent calls to <a href="struct.TrackedRenderPass.html#method.draw_indexed" title="method bevy_render::render_phase::TrackedRenderPass::draw_indexed"><code>TrackedRenderPass::draw_indexed</code></a> will use the buffer referenced by
|
||
<code>buffer_slice</code> as the source index buffer.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.draw" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#277-280">Source</a><h4 class="code-header">pub fn <a href="#method.draw" class="fn">draw</a>(&mut self, vertices: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>>, instances: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>>)</h4></section></summary><div class="docblock"><p>Draws primitives from the active vertex buffer(s).</p>
|
||
<p>The active vertex buffer(s) can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.draw_indexed" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#286-294">Source</a><h4 class="code-header">pub fn <a href="#method.draw_indexed" class="fn">draw_indexed</a>(
|
||
&mut self,
|
||
indices: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>>,
|
||
base_vertex: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.i32.html">i32</a>,
|
||
instances: <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>>,
|
||
)</h4></section></summary><div class="docblock"><p>Draws indexed primitives using the active index buffer and the active vertex buffer(s).</p>
|
||
<p>The active index buffer can be set with <a href="struct.TrackedRenderPass.html#method.set_index_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_index_buffer"><code>TrackedRenderPass::set_index_buffer</code></a>, while the
|
||
active vertex buffer(s) can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.draw_indirect" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#313-316">Source</a><h4 class="code-header">pub fn <a href="#method.draw_indirect" class="fn">draw_indirect</a>(
|
||
&mut self,
|
||
indirect_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
indirect_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Draws primitives from the active vertex buffer(s) based on the contents of the
|
||
<code>indirect_buffer</code>.</p>
|
||
<p>The active vertex buffers can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
<p>The structure expected in <code>indirect_buffer</code> is the following:</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#[repr(C)]
|
||
</span><span class="kw">struct </span>DrawIndirect {
|
||
vertex_count: u32, <span class="comment">// The number of vertices to draw.
|
||
</span>instance_count: u32, <span class="comment">// The number of instances to draw.
|
||
</span>first_vertex: u32, <span class="comment">// The Index of the first vertex to draw.
|
||
</span>first_instance: u32, <span class="comment">// The instance ID of the first instance to draw.
|
||
// has to be 0, unless [`Features::INDIRECT_FIRST_INSTANCE`] is enabled.
|
||
</span>}</code></pre></div>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.draw_indexed_indirect" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#337-345">Source</a><h4 class="code-header">pub fn <a href="#method.draw_indexed_indirect" class="fn">draw_indexed_indirect</a>(
|
||
&mut self,
|
||
indirect_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
indirect_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Draws indexed primitives using the active index buffer and the active vertex buffers,
|
||
based on the contents of the <code>indirect_buffer</code>.</p>
|
||
<p>The active index buffer can be set with <a href="struct.TrackedRenderPass.html#method.set_index_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_index_buffer"><code>TrackedRenderPass::set_index_buffer</code></a>, while the
|
||
active vertex buffers can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
<p>The structure expected in <code>indirect_buffer</code> is the following:</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#[repr(C)]
|
||
</span><span class="kw">struct </span>DrawIndexedIndirect {
|
||
vertex_count: u32, <span class="comment">// The number of vertices to draw.
|
||
</span>instance_count: u32, <span class="comment">// The number of instances to draw.
|
||
</span>first_index: u32, <span class="comment">// The base index within the index buffer.
|
||
</span>vertex_offset: i32, <span class="comment">// The value added to the vertex index before indexing into the vertex buffer.
|
||
</span>first_instance: u32, <span class="comment">// The instance ID of the first instance to draw.
|
||
// has to be 0, unless [`Features::INDIRECT_FIRST_INSTANCE`] is enabled.
|
||
</span>}</code></pre></div>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.multi_draw_indirect" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#364-378">Source</a><h4 class="code-header">pub fn <a href="#method.multi_draw_indirect" class="fn">multi_draw_indirect</a>(
|
||
&mut self,
|
||
indirect_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
indirect_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
count: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Dispatches multiple draw calls from the active vertex buffer(s) based on the contents of the
|
||
<code>indirect_buffer</code>.<code>count</code> draw calls are issued.</p>
|
||
<p>The active vertex buffers can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
<p><code>indirect_buffer</code> should contain <code>count</code> tightly packed elements of the following structure:</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#[repr(C)]
|
||
</span><span class="kw">struct </span>DrawIndirect {
|
||
vertex_count: u32, <span class="comment">// The number of vertices to draw.
|
||
</span>instance_count: u32, <span class="comment">// The number of instances to draw.
|
||
</span>first_vertex: u32, <span class="comment">// The Index of the first vertex to draw.
|
||
</span>first_instance: u32, <span class="comment">// The instance ID of the first instance to draw.
|
||
// has to be 0, unless [`Features::INDIRECT_FIRST_INSTANCE`] is enabled.
|
||
</span>}</code></pre></div>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.multi_draw_indirect_count" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#402-425">Source</a><h4 class="code-header">pub fn <a href="#method.multi_draw_indirect_count" class="fn">multi_draw_indirect_count</a>(
|
||
&mut self,
|
||
indirect_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
indirect_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
count_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
count_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
max_count: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Dispatches multiple draw calls from the active vertex buffer(s) based on the contents of
|
||
the <code>indirect_buffer</code>.
|
||
The count buffer is read to determine how many draws to issue.</p>
|
||
<p>The indirect buffer must be long enough to account for <code>max_count</code> draws, however only
|
||
<code>count</code> elements will be read, where <code>count</code> is the value read from <code>count_buffer</code> capped
|
||
at <code>max_count</code>.</p>
|
||
<p>The active vertex buffers can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
<p><code>indirect_buffer</code> should contain <code>count</code> tightly packed elements of the following structure:</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#[repr(C)]
|
||
</span><span class="kw">struct </span>DrawIndirect {
|
||
vertex_count: u32, <span class="comment">// The number of vertices to draw.
|
||
</span>instance_count: u32, <span class="comment">// The number of instances to draw.
|
||
</span>first_vertex: u32, <span class="comment">// The Index of the first vertex to draw.
|
||
</span>first_instance: u32, <span class="comment">// The instance ID of the first instance to draw.
|
||
// has to be 0, unless [`Features::INDIRECT_FIRST_INSTANCE`] is enabled.
|
||
</span>}</code></pre></div>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.multi_draw_indexed_indirect" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#446-460">Source</a><h4 class="code-header">pub fn <a href="#method.multi_draw_indexed_indirect" class="fn">multi_draw_indexed_indirect</a>(
|
||
&mut self,
|
||
indirect_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
indirect_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
count: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Dispatches multiple draw calls from the active index buffer and the active vertex buffers,
|
||
based on the contents of the <code>indirect_buffer</code>. <code>count</code> draw calls are issued.</p>
|
||
<p>The active index buffer can be set with <a href="struct.TrackedRenderPass.html#method.set_index_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_index_buffer"><code>TrackedRenderPass::set_index_buffer</code></a>, while the
|
||
active vertex buffers can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
<p><code>indirect_buffer</code> should contain <code>count</code> tightly packed elements of the following structure:</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#[repr(C)]
|
||
</span><span class="kw">struct </span>DrawIndexedIndirect {
|
||
vertex_count: u32, <span class="comment">// The number of vertices to draw.
|
||
</span>instance_count: u32, <span class="comment">// The number of instances to draw.
|
||
</span>first_index: u32, <span class="comment">// The base index within the index buffer.
|
||
</span>vertex_offset: i32, <span class="comment">// The value added to the vertex index before indexing into the vertex buffer.
|
||
</span>first_instance: u32, <span class="comment">// The instance ID of the first instance to draw.
|
||
// has to be 0, unless [`Features::INDIRECT_FIRST_INSTANCE`] is enabled.
|
||
</span>}</code></pre></div>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.multi_draw_indexed_indirect_count" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#486-509">Source</a><h4 class="code-header">pub fn <a href="#method.multi_draw_indexed_indirect_count" class="fn">multi_draw_indexed_indirect_count</a>(
|
||
&mut self,
|
||
indirect_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
indirect_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
count_buffer: &'a <a class="struct" href="../render_resource/struct.Buffer.html" title="struct bevy_render::render_resource::Buffer">Buffer</a>,
|
||
count_offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u64.html">u64</a>,
|
||
max_count: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Dispatches multiple draw calls from the active index buffer and the active vertex buffers,
|
||
based on the contents of the <code>indirect_buffer</code>.
|
||
The count buffer is read to determine how many draws to issue.</p>
|
||
<p>The indirect buffer must be long enough to account for <code>max_count</code> draws, however only
|
||
<code>count</code> elements will be read, where <code>count</code> is the value read from <code>count_buffer</code> capped
|
||
at <code>max_count</code>.</p>
|
||
<p>The active index buffer can be set with <a href="struct.TrackedRenderPass.html#method.set_index_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_index_buffer"><code>TrackedRenderPass::set_index_buffer</code></a>, while the
|
||
active vertex buffers can be set with <a href="struct.TrackedRenderPass.html#method.set_vertex_buffer" title="method bevy_render::render_phase::TrackedRenderPass::set_vertex_buffer"><code>TrackedRenderPass::set_vertex_buffer</code></a>.</p>
|
||
<p><code>indirect_buffer</code> should contain <code>count</code> tightly packed elements of the following structure:</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#[repr(C)]
|
||
</span><span class="kw">struct </span>DrawIndexedIndirect {
|
||
vertex_count: u32, <span class="comment">// The number of vertices to draw.
|
||
</span>instance_count: u32, <span class="comment">// The number of instances to draw.
|
||
</span>first_index: u32, <span class="comment">// The base index within the index buffer.
|
||
</span>vertex_offset: i32, <span class="comment">// The value added to the vertex index before indexing into the vertex buffer.
|
||
</span>first_instance: u32, <span class="comment">// The instance ID of the first instance to draw.
|
||
// has to be 0, unless [`Features::INDIRECT_FIRST_INSTANCE`] is enabled.
|
||
</span>}</code></pre></div>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_stencil_reference" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#514-517">Source</a><h4 class="code-header">pub fn <a href="#method.set_stencil_reference" class="fn">set_stencil_reference</a>(&mut self, reference: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>)</h4></section></summary><div class="docblock"><p>Sets the stencil reference.</p>
|
||
<p>Subsequent stencil tests will test against this value.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_scissor_rect" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#522-525">Source</a><h4 class="code-header">pub fn <a href="#method.set_scissor_rect" class="fn">set_scissor_rect</a>(&mut self, x: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>, y: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>, width: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>, height: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>)</h4></section></summary><div class="docblock"><p>Sets the scissor region.</p>
|
||
<p>Subsequent draw calls will discard any fragments that fall outside this region.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_push_constants" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#530-538">Source</a><h4 class="code-header">pub fn <a href="#method.set_push_constants" class="fn">set_push_constants</a>(
|
||
&mut self,
|
||
stages: <a class="struct" href="../render_resource/struct.ShaderStages.html" title="struct bevy_render::render_resource::ShaderStages">ShaderStages</a>,
|
||
offset: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u32.html">u32</a>,
|
||
data: &[<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.u8.html">u8</a>],
|
||
)</h4></section></summary><div class="docblock"><p>Set push constant data.</p>
|
||
<p><code>Features::PUSH_CONSTANTS</code> must be enabled on the device in order to call these functions.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_viewport" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#543-563">Source</a><h4 class="code-header">pub fn <a href="#method.set_viewport" class="fn">set_viewport</a>(
|
||
&mut self,
|
||
x: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.f32.html">f32</a>,
|
||
y: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.f32.html">f32</a>,
|
||
width: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.f32.html">f32</a>,
|
||
height: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.f32.html">f32</a>,
|
||
min_depth: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.f32.html">f32</a>,
|
||
max_depth: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.f32.html">f32</a>,
|
||
)</h4></section></summary><div class="docblock"><p>Set the rendering viewport.</p>
|
||
<p>Subsequent draw calls will be projected into that viewport.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_camera_viewport" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#568-577">Source</a><h4 class="code-header">pub fn <a href="#method.set_camera_viewport" class="fn">set_camera_viewport</a>(&mut self, viewport: &<a class="struct" href="../camera/struct.Viewport.html" title="struct bevy_render::camera::Viewport">Viewport</a>)</h4></section></summary><div class="docblock"><p>Set the rendering viewport to the given camera <a href="../camera/struct.Viewport.html" title="struct bevy_render::camera::Viewport"><code>Viewport</code></a>.</p>
|
||
<p>Subsequent draw calls will be projected into that viewport.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.insert_debug_marker" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#582-585">Source</a><h4 class="code-header">pub fn <a href="#method.insert_debug_marker" class="fn">insert_debug_marker</a>(&mut self, label: &<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.str.html">str</a>)</h4></section></summary><div class="docblock"><p>Insert a single debug marker.</p>
|
||
<p>This is a GPU debugging feature. This has no effect on the rendering itself.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.push_debug_group" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#607-610">Source</a><h4 class="code-header">pub fn <a href="#method.push_debug_group" class="fn">push_debug_group</a>(&mut self, label: &<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.str.html">str</a>)</h4></section></summary><div class="docblock"><p>Start a new debug group.</p>
|
||
<p>Push a new debug group over the internal stack. Subsequent render commands and debug
|
||
markers are grouped into this new group, until <a href="struct.TrackedRenderPass.html#method.pop_debug_group" title="method bevy_render::render_phase::TrackedRenderPass::pop_debug_group"><code>pop_debug_group</code></a> is called.</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code>pass.push_debug_group(<span class="string">"Render the car"</span>);
|
||
<span class="comment">// [setup pipeline etc...]
|
||
</span>pass.draw(<span class="number">0</span>..<span class="number">64</span>, <span class="number">0</span>..<span class="number">1</span>);
|
||
pass.pop_debug_group();</code></pre></div>
|
||
<p>Note that <a href="struct.TrackedRenderPass.html#method.push_debug_group" title="method bevy_render::render_phase::TrackedRenderPass::push_debug_group"><code>push_debug_group</code></a> and <a href="struct.TrackedRenderPass.html#method.pop_debug_group" title="method bevy_render::render_phase::TrackedRenderPass::pop_debug_group"><code>pop_debug_group</code></a> must always be called in pairs.</p>
|
||
<p>This is a GPU debugging feature. This has no effect on the rendering itself.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.pop_debug_group" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#624-627">Source</a><h4 class="code-header">pub fn <a href="#method.pop_debug_group" class="fn">pop_debug_group</a>(&mut self)</h4></section></summary><div class="docblock"><p>End the current debug group.</p>
|
||
<p>Subsequent render commands and debug markers are not grouped anymore in
|
||
this group, but in the previous one (if any) or the default top-level one
|
||
if the debug group was the last one on the stack.</p>
|
||
<p>Note that <a href="struct.TrackedRenderPass.html#method.push_debug_group" title="method bevy_render::render_phase::TrackedRenderPass::push_debug_group"><code>push_debug_group</code></a> and <a href="struct.TrackedRenderPass.html#method.pop_debug_group" title="method bevy_render::render_phase::TrackedRenderPass::pop_debug_group"><code>pop_debug_group</code></a> must always be called in pairs.</p>
|
||
<p>This is a GPU debugging feature. This has no effect on the rendering itself.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_blend_constant" class="method"><a class="src rightside" href="../../src/bevy_render/render_phase/draw_state.rs.html#632-635">Source</a><h4 class="code-header">pub fn <a href="#method.set_blend_constant" class="fn">set_blend_constant</a>(&mut self, color: <a class="struct" href="../../bevy_color/linear_rgba/struct.LinearRgba.html" title="struct bevy_color::linear_rgba::LinearRgba">LinearRgba</a>)</h4></section></summary><div class="docblock"><p>Sets the blend color as used by some of the blending modes.</p>
|
||
<p>Subsequent blending tests will test against this value.</p>
|
||
</div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-TrackedRenderPass%3C'a%3E" class="impl"><a href="#impl-Freeze-for-TrackedRenderPass%3C'a%3E" class="anchor">§</a><h3 class="code-header">impl<'a> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass">TrackedRenderPass</a><'a></h3></section><section id="impl-RefUnwindSafe-for-TrackedRenderPass%3C'a%3E" class="impl"><a href="#impl-RefUnwindSafe-for-TrackedRenderPass%3C'a%3E" class="anchor">§</a><h3 class="code-header">impl<'a> !<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass">TrackedRenderPass</a><'a></h3></section><section id="impl-Send-for-TrackedRenderPass%3C'a%3E" class="impl"><a href="#impl-Send-for-TrackedRenderPass%3C'a%3E" class="anchor">§</a><h3 class="code-header">impl<'a> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass">TrackedRenderPass</a><'a></h3></section><section id="impl-Sync-for-TrackedRenderPass%3C'a%3E" class="impl"><a href="#impl-Sync-for-TrackedRenderPass%3C'a%3E" class="anchor">§</a><h3 class="code-header">impl<'a> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass">TrackedRenderPass</a><'a></h3></section><section id="impl-Unpin-for-TrackedRenderPass%3C'a%3E" class="impl"><a href="#impl-Unpin-for-TrackedRenderPass%3C'a%3E" class="anchor">§</a><h3 class="code-header">impl<'a> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass">TrackedRenderPass</a><'a></h3></section><section id="impl-UnwindSafe-for-TrackedRenderPass%3C'a%3E" class="impl"><a href="#impl-UnwindSafe-for-TrackedRenderPass%3C'a%3E" class="anchor">§</a><h3 class="code-header">impl<'a> !<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.TrackedRenderPass.html" title="struct bevy_render::render_phase::TrackedRenderPass">TrackedRenderPass</a><'a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
|
||
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/any.rs.html#139">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-AsBindGroupShaderType%3CU%3E-for-T" class="impl"><a class="src rightside" href="../../src/bevy_render/render_resource/bind_group.rs.html#425-433">Source</a><a href="#impl-AsBindGroupShaderType%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="../render_resource/trait.AsBindGroupShaderType.html" title="trait bevy_render::render_resource::AsBindGroupShaderType">AsBindGroupShaderType</a><U> for T<div class="where">where
|
||
U: <a class="trait" href="../render_resource/trait.ShaderType.html" title="trait bevy_render::render_resource::ShaderType">ShaderType</a>,
|
||
<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&'a T</a>: for<'a> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.as_bind_group_shader_type" class="method trait-impl"><a class="src rightside" href="../../src/bevy_render/render_resource/bind_group.rs.html#430-432">Source</a><a href="#method.as_bind_group_shader_type" class="anchor">§</a><h4 class="code-header">fn <a href="../render_resource/trait.AsBindGroupShaderType.html#tymethod.as_bind_group_shader_type" class="fn">as_bind_group_shader_type</a>(&self, _images: &<a class="struct" href="../render_asset/struct.RenderAssets.html" title="struct bevy_render::render_asset::RenderAssets">RenderAssets</a><<a class="struct" href="../texture/struct.GpuImage.html" title="struct bevy_render::texture::GpuImage">GpuImage</a>>) -> U</h4></section></summary><div class='docblock'>Return the <code>T</code> <a href="../render_resource/trait.ShaderType.html" title="trait bevy_render::render_resource::ShaderType"><code>ShaderType</code></a> for <code>self</code>. When used in <a href="../render_resource/trait.AsBindGroup.html" title="trait bevy_render::render_resource::AsBindGroup"><code>AsBindGroup</code></a>
|
||
derives, it is safe to assume that all images in <code>self</code> exist.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#209">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<div class="where">where
|
||
T: ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#211">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#217">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<div class="where">where
|
||
T: ?<a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/borrow.rs.html#218">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.84.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Downcast%3CT%3E-for-T" class="impl"><a class="src rightside" href="../../src/khronos_egl/lib.rs.html#148">Source</a><a href="#impl-Downcast%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../khronos_egl/trait.Downcast.html" title="trait khronos_egl::Downcast">Downcast</a><T> for T</h3></section></summary><div class="impl-items"><section id="method.downcast" class="method trait-impl"><a class="src rightside" href="../../src/khronos_egl/lib.rs.html#149">Source</a><a href="#method.downcast" class="anchor">§</a><h4 class="code-header">fn <a href="../../khronos_egl/trait.Downcast.html#tymethod.downcast" class="fn">downcast</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&T</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Downcast-for-T" class="impl"><a class="src rightside" href="../../src/downcast_rs/lib.rs.html#189">Source</a><a href="#impl-Downcast-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../downcast_rs/trait.Downcast.html" title="trait downcast_rs::Downcast">Downcast</a> for T<div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_any" class="method trait-impl"><a class="src rightside" href="../../src/downcast_rs/lib.rs.html#190">Source</a><a href="#method.into_any" class="anchor">§</a><h4 class="code-header">fn <a href="../../downcast_rs/trait.Downcast.html#tymethod.into_any" class="fn">into_any</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><T>) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a>></h4></section></summary><div class='docblock'>Convert <code>Box<dyn Trait></code> (where <code>Trait: Downcast</code>) to <code>Box<dyn Any></code>. <code>Box<dyn Any></code> can
|
||
then be further <code>downcast</code> into <code>Box<ConcreteType></code> where <code>ConcreteType</code> implements <code>Trait</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.into_any_rc" class="method trait-impl"><a class="src rightside" href="../../src/downcast_rs/lib.rs.html#191">Source</a><a href="#method.into_any_rc" class="anchor">§</a><h4 class="code-header">fn <a href="../../downcast_rs/trait.Downcast.html#tymethod.into_any_rc" class="fn">into_any_rc</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a><T>) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/rc/struct.Rc.html" title="struct alloc::rc::Rc">Rc</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a>></h4></section></summary><div class='docblock'>Convert <code>Rc<Trait></code> (where <code>Trait: Downcast</code>) to <code>Rc<Any></code>. <code>Rc<Any></code> can then be
|
||
further <code>downcast</code> into <code>Rc<ConcreteType></code> where <code>ConcreteType</code> implements <code>Trait</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.as_any" class="method trait-impl"><a class="src rightside" href="../../src/downcast_rs/lib.rs.html#192">Source</a><a href="#method.as_any" class="anchor">§</a><h4 class="code-header">fn <a href="../../downcast_rs/trait.Downcast.html#tymethod.as_any" class="fn">as_any</a>(&self) -> &(dyn <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static)</h4></section></summary><div class='docblock'>Convert <code>&Trait</code> (where <code>Trait: Downcast</code>) to <code>&Any</code>. This is needed since Rust cannot
|
||
generate <code>&Any</code>’s vtable from <code>&Trait</code>’s.</div></details><details class="toggle method-toggle" open><summary><section id="method.as_any_mut" class="method trait-impl"><a class="src rightside" href="../../src/downcast_rs/lib.rs.html#193">Source</a><a href="#method.as_any_mut" class="anchor">§</a><h4 class="code-header">fn <a href="../../downcast_rs/trait.Downcast.html#tymethod.as_any_mut" class="fn">as_any_mut</a>(&mut self) -> &mut (dyn <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static)</h4></section></summary><div class='docblock'>Convert <code>&mut Trait</code> (where <code>Trait: Downcast</code>) to <code>&Any</code>. This is needed since Rust cannot
|
||
generate <code>&mut Any</code>’s vtable from <code>&mut Trait</code>’s.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DowncastSync-for-T" class="impl"><a class="src rightside" href="../../src/downcast_rs/lib.rs.html#203">Source</a><a href="#impl-DowncastSync-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../downcast_rs/trait.DowncastSync.html" title="trait downcast_rs::DowncastSync">DowncastSync</a> for T<div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_any_arc" class="method trait-impl"><a class="src rightside" href="../../src/downcast_rs/lib.rs.html#204">Source</a><a href="#method.into_any_arc" class="anchor">§</a><h4 class="code-header">fn <a href="../../downcast_rs/trait.DowncastSync.html#tymethod.into_any_arc" class="fn">into_any_arc</a>(self: <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a><T>) -> <a class="struct" href="https://doc.rust-lang.org/1.84.0/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a><dyn <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>></h4></section></summary><div class='docblock'>Convert <code>Arc<Trait></code> (where <code>Trait: Downcast</code>) to <code>Arc<Any></code>. <code>Arc<Any></code> can then be
|
||
further <code>downcast</code> into <code>Arc<ConcreteType></code> where <code>ConcreteType</code> implements <code>Trait</code>.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#765">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#768">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
|
||
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Instrument-for-T" class="impl"><a class="src rightside" href="../../src/tracing/instrument.rs.html#325">Source</a><a href="#impl-Instrument-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../tracing/instrument/trait.Instrument.html" title="trait tracing::instrument::Instrument">Instrument</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.instrument" class="method trait-impl"><a class="src rightside" href="../../src/tracing/instrument.rs.html#86">Source</a><a href="#method.instrument" class="anchor">§</a><h4 class="code-header">fn <a href="../../tracing/instrument/trait.Instrument.html#method.instrument" class="fn">instrument</a>(self, span: <a class="struct" href="../../tracing/span/struct.Span.html" title="struct tracing::span::Span">Span</a>) -> <a class="struct" href="../../tracing/instrument/struct.Instrumented.html" title="struct tracing::instrument::Instrumented">Instrumented</a><Self></h4></section></summary><div class='docblock'>Instruments this type with the provided <a href="../../tracing/span/struct.Span.html" title="struct tracing::span::Span"><code>Span</code></a>, returning an
|
||
<code>Instrumented</code> wrapper. <a href="../../tracing/instrument/trait.Instrument.html#method.instrument">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.in_current_span" class="method trait-impl"><a class="src rightside" href="../../src/tracing/instrument.rs.html#128">Source</a><a href="#method.in_current_span" class="anchor">§</a><h4 class="code-header">fn <a href="../../tracing/instrument/trait.Instrument.html#method.in_current_span" class="fn">in_current_span</a>(self) -> <a class="struct" href="../../tracing/instrument/struct.Instrumented.html" title="struct tracing::instrument::Instrumented">Instrumented</a><Self></h4></section></summary><div class='docblock'>Instruments this type with the <a href="../../tracing/span/struct.Span.html#method.current" title="associated function tracing::span::Span::current">current</a> <a href="../../tracing/span/struct.Span.html" title="struct tracing::span::Span"><code>Span</code></a>, returning an
|
||
<code>Instrumented</code> wrapper. <a href="../../tracing/instrument/trait.Instrument.html#method.in_current_span">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#748-750">Source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<div class="where">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#758">Source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
|
||
<p>That is, this conversion is whatever the implementation of
|
||
<code><a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
|
||
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoEither-for-T" class="impl"><a class="src rightside" href="../../src/either/into_either.rs.html#64">Source</a><a href="#impl-IntoEither-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../either/into_either/trait.IntoEither.html" title="trait either::into_either::IntoEither">IntoEither</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_either" class="method trait-impl"><a class="src rightside" href="../../src/either/into_either.rs.html#29">Source</a><a href="#method.into_either" class="anchor">§</a><h4 class="code-header">fn <a href="../../either/into_either/trait.IntoEither.html#method.into_either" class="fn">into_either</a>(self, into_left: <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>) -> <a class="enum" href="../../either/enum.Either.html" title="enum either::Either">Either</a><Self, Self></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="../../either/enum.Either.html#variant.Left" title="variant either::Either::Left"><code>Left</code></a> variant of <a href="../../either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
||
if <code>into_left</code> is <code>true</code>.
|
||
Converts <code>self</code> into a <a href="../../either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="../../either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
||
otherwise. <a href="../../either/into_either/trait.IntoEither.html#method.into_either">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.into_either_with" class="method trait-impl"><a class="src rightside" href="../../src/either/into_either.rs.html#55-57">Source</a><a href="#method.into_either_with" class="anchor">§</a><h4 class="code-header">fn <a href="../../either/into_either/trait.IntoEither.html#method.into_either_with" class="fn">into_either_with</a><F>(self, into_left: F) -> <a class="enum" href="../../either/enum.Either.html" title="enum either::Either">Either</a><Self, Self><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&Self) -> <a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="../../either/enum.Either.html#variant.Left" title="variant either::Either::Left"><code>Left</code></a> variant of <a href="../../either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
||
if <code>into_left(&self)</code> returns <code>true</code>.
|
||
Converts <code>self</code> into a <a href="../../either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="../../either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
||
otherwise. <a href="../../either/into_either/trait.IntoEither.html#method.into_either_with">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#805-807">Source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<div class="where">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#809">Source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#812">Source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#790-792">Source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<div class="where">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#794">Source</a><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.84.0/src/core/convert/mod.rs.html#797">Source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Upcast%3CT%3E-for-T" class="impl"><a class="src rightside" href="../../src/khronos_egl/lib.rs.html#158">Source</a><a href="#impl-Upcast%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../khronos_egl/trait.Upcast.html" title="trait khronos_egl::Upcast">Upcast</a><T> for T</h3></section></summary><div class="impl-items"><section id="method.upcast" class="method trait-impl"><a class="src rightside" href="../../src/khronos_egl/lib.rs.html#159">Source</a><a href="#method.upcast" class="anchor">§</a><h4 class="code-header">fn <a href="../../khronos_egl/trait.Upcast.html#tymethod.upcast" class="fn">upcast</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.84.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.84.0/std/primitive.reference.html">&T</a>></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-VZip%3CV%3E-for-T" class="impl"><a class="src rightside" href="../../src/ppv_lite86/types.rs.html#221-223">Source</a><a href="#impl-VZip%3CV%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<V, T> <a class="trait" href="../../ppv_lite86/types/trait.VZip.html" title="trait ppv_lite86::types::VZip">VZip</a><V> for T<div class="where">where
|
||
V: <a class="trait" href="../../ppv_lite86/types/trait.MultiLane.html" title="trait ppv_lite86::types::MultiLane">MultiLane</a><T>,</div></h3></section></summary><div class="impl-items"><section id="method.vzip" class="method trait-impl"><a class="src rightside" href="../../src/ppv_lite86/types.rs.html#226">Source</a><a href="#method.vzip" class="anchor">§</a><h4 class="code-header">fn <a href="../../ppv_lite86/types/trait.VZip.html#tymethod.vzip" class="fn">vzip</a>(self) -> V</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-WithSubscriber-for-T" class="impl"><a class="src rightside" href="../../src/tracing/instrument.rs.html#393">Source</a><a href="#impl-WithSubscriber-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../tracing/instrument/trait.WithSubscriber.html" title="trait tracing::instrument::WithSubscriber">WithSubscriber</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.with_subscriber" class="method trait-impl"><a class="src rightside" href="../../src/tracing/instrument.rs.html#176-178">Source</a><a href="#method.with_subscriber" class="anchor">§</a><h4 class="code-header">fn <a href="../../tracing/instrument/trait.WithSubscriber.html#method.with_subscriber" class="fn">with_subscriber</a><S>(self, subscriber: S) -> <a class="struct" href="../../tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch">WithDispatch</a><Self><div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="struct" href="../../tracing_core/dispatcher/struct.Dispatch.html" title="struct tracing_core::dispatcher::Dispatch">Dispatch</a>>,</div></h4></section></summary><div class='docblock'>Attaches the provided <a href="../../tracing_core/subscriber/trait.Subscriber.html" title="trait tracing_core::subscriber::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
||
<a href="../../tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch"><code>WithDispatch</code></a> wrapper. <a href="../../tracing/instrument/trait.WithSubscriber.html#method.with_subscriber">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_current_subscriber" class="method trait-impl"><a class="src rightside" href="../../src/tracing/instrument.rs.html#228">Source</a><a href="#method.with_current_subscriber" class="anchor">§</a><h4 class="code-header">fn <a href="../../tracing/instrument/trait.WithSubscriber.html#method.with_current_subscriber" class="fn">with_current_subscriber</a>(self) -> <a class="struct" href="../../tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch">WithDispatch</a><Self></h4></section></summary><div class='docblock'>Attaches the current <a href="../../tracing/dispatcher/index.html#setting-the-default-subscriber" title="mod tracing::dispatcher">default</a> <a href="../../tracing_core/subscriber/trait.Subscriber.html" title="trait tracing_core::subscriber::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
||
<a href="../../tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch"><code>WithDispatch</code></a> wrapper. <a href="../../tracing/instrument/trait.WithSubscriber.html#method.with_current_subscriber">Read more</a></div></details></div></details><section id="impl-ConditionalSend-for-T" class="impl"><a class="src rightside" href="../../src/bevy_utils/lib.rs.html#65">Source</a><a href="#impl-ConditionalSend-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../bevy_utils/conditional_send/trait.ConditionalSend.html" title="trait bevy_utils::conditional_send::ConditionalSend">ConditionalSend</a> for T<div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-Settings-for-T" class="impl"><a class="src rightside" href="../../src/bevy_asset/meta.rs.html#167">Source</a><a href="#impl-Settings-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../bevy_asset/meta/trait.Settings.html" title="trait bevy_asset::meta::Settings">Settings</a> for T<div class="where">where
|
||
T: 'static + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section><section id="impl-WasmNotSend-for-T" class="impl"><a class="src rightside" href="../../src/wgpu_types/lib.rs.html#7477">Source</a><a href="#impl-WasmNotSend-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../wgpu_types/send_sync/trait.WasmNotSend.html" title="trait wgpu_types::send_sync::WasmNotSend">WasmNotSend</a> for T<div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-WasmNotSendSync-for-T" class="impl"><a class="src rightside" href="../../src/wgpu_types/lib.rs.html#7461">Source</a><a href="#impl-WasmNotSendSync-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../wgpu_types/send_sync/trait.WasmNotSendSync.html" title="trait wgpu_types::send_sync::WasmNotSendSync">WasmNotSendSync</a> for T<div class="where">where
|
||
T: <a class="trait" href="../../wgpu_types/send_sync/trait.WasmNotSend.html" title="trait wgpu_types::send_sync::WasmNotSend">WasmNotSend</a> + <a class="trait" href="../../wgpu_types/send_sync/trait.WasmNotSync.html" title="trait wgpu_types::send_sync::WasmNotSync">WasmNotSync</a>,</div></h3></section><section id="impl-WasmNotSync-for-T" class="impl"><a class="src rightside" href="../../src/wgpu_types/lib.rs.html#7510">Source</a><a href="#impl-WasmNotSync-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../wgpu_types/send_sync/trait.WasmNotSync.html" title="trait wgpu_types::send_sync::WasmNotSync">WasmNotSync</a> for T<div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.84.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section></div></section></div></main></body></html> |