pub struct ShaderAsset {
pub vertex: Cow<'static, str>,
pub fragment: Cow<'static, str>,
}Fields§
§vertex: Cow<'static, str>§fragment: Cow<'static, str>Implementations§
Source§impl ShaderAsset
impl ShaderAsset
Sourcepub fn new(vertex: &'static str, fragment: &'static str) -> Self
pub fn new(vertex: &'static str, fragment: &'static str) -> Self
Examples found in repository?
examples/path.rs (lines 68-71)
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
fn enter(&mut self, context: GameContext) {
context.graphics.color = [0.2, 0.2, 0.2, 1.0];
context.graphics.main_camera.screen_alignment = 0.5.into();
context.graphics.main_camera.scaling = CameraScaling::FitVertical(300.0);
let pointer_x = InputAxisRef::default();
let pointer_y = InputAxisRef::default();
self.mouse_xy = Some(ArrayInputCombinator::new([
pointer_x.clone(),
pointer_y.clone(),
]));
context.input.push_mapping(
InputMapping::default()
.consume(InputConsume::Hit)
.axis(VirtualAxis::MousePositionX, pointer_x)
.axis(VirtualAxis::MousePositionY, pointer_y),
);
context
.assets
.spawn(
"shader://color",
(ShaderAsset::new(
Shader::COLORED_VERTEX_2D,
Shader::PASS_FRAGMENT,
),),
)
.unwrap();
}More examples
examples/pcg_island.rs (lines 162-165)
155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
fn enter(&mut self, context: GameContext) {
context.graphics.main_camera.scaling = CameraScaling::FitVertical(SIZE as f32 * 10.0);
context
.assets
.spawn(
"shader://color",
(ShaderAsset::new(
Shader::COLORED_VERTEX_2D,
Shader::PASS_FRAGMENT,
),),
)
.unwrap();
context
.assets
.spawn(
"shader://text",
(ShaderAsset::new(Shader::TEXT_VERTEX, Shader::TEXT_FRAGMENT),),
)
.unwrap();
context.assets.ensure("font://roboto.ttf").unwrap();
let mouse_x = InputAxisRef::default();
let mouse_y = InputAxisRef::default();
self.mouse_position = ArrayInputCombinator::new([mouse_x.clone(), mouse_y.clone()]);
context.input.push_mapping(
InputMapping::default()
.axis(VirtualAxis::MousePositionX, mouse_x)
.axis(VirtualAxis::MousePositionY, mouse_y),
);
}examples/hello_world.rs (lines 46-49)
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
fn enter(&mut self, context: GameContext) {
context.graphics.color = [0.2, 0.2, 0.2, 1.0];
context.graphics.main_camera.screen_alignment = 0.5.into();
context.graphics.main_camera.scaling = CameraScaling::FitVertical(500.0);
context.gui.coords_map_scaling = CoordsMappingScaling::FitVertical(500.0);
context
.assets
.spawn(
"shader://color",
(ShaderAsset::new(
Shader::COLORED_VERTEX_2D,
Shader::PASS_FRAGMENT,
),),
)
.unwrap();
context
.assets
.spawn(
"shader://image",
(ShaderAsset::new(
Shader::TEXTURED_VERTEX_2D,
Shader::TEXTURED_FRAGMENT,
),),
)
.unwrap();
context
.assets
.spawn(
"shader://text",
(ShaderAsset::new(Shader::TEXT_VERTEX, Shader::TEXT_FRAGMENT),),
)
.unwrap();
context.assets.ensure("texture://ferris.png").unwrap();
context.assets.ensure("font://roboto.ttf").unwrap();
*context.state_change = GameStateChange::Swap(Box::new(State::default()));
}Auto Trait Implementations§
impl Freeze for ShaderAsset
impl RefUnwindSafe for ShaderAsset
impl Send for ShaderAsset
impl Sync for ShaderAsset
impl Unpin for ShaderAsset
impl UnwindSafe for ShaderAsset
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more