An "old TV" effect based on the Bevy post-processing example.
To use this effect, add the crate to your project.
cargo add --git https://github.com/Defernus/bevy_old_tv_shader.git
# use bevy::prelude::*;
# use bevy_old_tv_shader::prelude::*;
fn main() {
App::new()
.add_plugins((DefaultPlugins, OldTvPlugin))
.update();
}
This effect will only appear on cameras with an OldTvSettings
component.
# use bevy::prelude::*;
# use bevy_old_tv_shader::prelude::*;
fn setup_camera(mut commands: Commands) {
// camera
commands.spawn((
Camera3d::default(),
OldTvSettings {
screen_shape_factor: 0.2,
rows: 64.0,
brightness: 3.0,
edges_transition_size: 0.025,
channels_mask_min: 0.1,
},
));
}
Applies the effect to the UI and text as well.
The "cube" example shows a rotating cube with the effect (shown above).
cargo run --example cube
The "shapes" example shows 2d shapes.
cargo run --example shapes
The "text" example shows UI text with or without the effect.
cargo run --example text
cargo run --features ui --example text
The "text" example also accepts an argument of "3d-camera". This was mainly used to spotcheck that the effect worked with a 3d camera.
cargo run --features ui --example text 3d-camera
bevy_old_tv_shader | bevy |
---|---|
0.2.0 | 0.15 |
0.1.0 | 0.8 |
This crate is licensed under the MIT License.