bevy_core_pipeline/fullscreen_vertex_shader/
mod.rs

1use bevy_asset::Handle;
2use bevy_render::{prelude::Shader, render_resource::VertexState};
3
4pub const FULLSCREEN_SHADER_HANDLE: Handle<Shader> = Handle::weak_from_u128(7837534426033940724);
5
6/// uses the [`FULLSCREEN_SHADER_HANDLE`] to output a
7/// ```wgsl
8/// struct FullscreenVertexOutput {
9///     [[builtin(position)]]
10///     position: vec4<f32>;
11///     [[location(0)]]
12///     uv: vec2<f32>;
13/// };
14/// ```
15/// from the vertex shader.
16/// The draw call should render one triangle: `render_pass.draw(0..3, 0..1);`
17pub fn fullscreen_shader_vertex_state() -> VertexState {
18    VertexState {
19        shader: FULLSCREEN_SHADER_HANDLE,
20        shader_defs: Vec::new(),
21        entry_point: "fullscreen_vertex_shader".into(),
22        buffers: Vec::new(),
23    }
24}