Struct bevy_ascii_terminal::renderer::material::TerminalMaterial
source · [−]pub struct TerminalMaterial {
pub clip_color: Color,
pub texture: Option<Handle<Image>>,
}
Expand description
The material for rendering a terminal.
Fields
clip_color: Color
The clip color for the active font texture.
Clip color determines which part of the texture is regarded as “background color”.
texture: Option<Handle<Image>>
The font texture rendered by the terminal.
Trait Implementations
sourceimpl Clone for TerminalMaterial
impl Clone for TerminalMaterial
sourcefn clone(&self) -> TerminalMaterial
fn clone(&self) -> TerminalMaterial
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for TerminalMaterial
impl Debug for TerminalMaterial
sourceimpl Default for TerminalMaterial
impl Default for TerminalMaterial
sourceimpl From<Handle<Image>> for TerminalMaterial
impl From<Handle<Image>> for TerminalMaterial
sourceimpl RenderAsset for TerminalMaterial
impl RenderAsset for TerminalMaterial
type ExtractedAsset = TerminalMaterial
type ExtractedAsset = TerminalMaterial
The representation of the the asset in the “render world”.
type PreparedAsset = GpuTerminalMaterial
type PreparedAsset = GpuTerminalMaterial
The GPU-representation of the the asset.
type Param = (Res<'static, RenderDevice>, Res<'static, Material2dPipeline<TerminalMaterial>>, Res<'static, HashMap<Handle<Image>, <Image as RenderAsset>::PreparedAsset, RandomState, Global>>)
type Param = (Res<'static, RenderDevice>, Res<'static, Material2dPipeline<TerminalMaterial>>, Res<'static, HashMap<Handle<Image>, <Image as RenderAsset>::PreparedAsset, RandomState, Global>>)
Specifies all ECS data required by [RenderAsset::prepare_asset
].
For convenience use the lifetimeless
[SystemParam
]. Read more
sourcefn extract_asset(&self) -> Self::ExtractedAsset
fn extract_asset(&self) -> Self::ExtractedAsset
Converts the asset into a [RenderAsset::ExtractedAsset
].
sourcefn prepare_asset(
material: Self::ExtractedAsset,
(render_device, pipeline, gpu_images): &mut SystemParamItem<'_, '_, Self::Param>
) -> Result<Self::PreparedAsset, PrepareAssetError<Self::ExtractedAsset>>
fn prepare_asset(
material: Self::ExtractedAsset,
(render_device, pipeline, gpu_images): &mut SystemParamItem<'_, '_, Self::Param>
) -> Result<Self::PreparedAsset, PrepareAssetError<Self::ExtractedAsset>>
Prepares the extracted asset
for the GPU by transforming it into
a [RenderAsset::PreparedAsset
]. Therefore ECS data may be accessed via the param
. Read more
sourceimpl SpecializedMaterial2d for TerminalMaterial
impl SpecializedMaterial2d for TerminalMaterial
sourcefn fragment_shader(_asset_server: &AssetServer) -> Option<Handle<Shader>>
fn fragment_shader(_asset_server: &AssetServer) -> Option<Handle<Shader>>
sourcefn vertex_shader(_asset_server: &AssetServer) -> Option<Handle<Shader>>
fn vertex_shader(_asset_server: &AssetServer) -> Option<Handle<Shader>>
sourcefn bind_group(render_asset: &<Self as RenderAsset>::PreparedAsset) -> &BindGroup
fn bind_group(render_asset: &<Self as RenderAsset>::PreparedAsset) -> &BindGroup
Returns this material’s [BindGroup
]. This should match the layout returned by [SpecializedMaterial2d::bind_group_layout
].
sourcefn bind_group_layout(render_device: &RenderDevice) -> BindGroupLayout
fn bind_group_layout(render_device: &RenderDevice) -> BindGroupLayout
Returns this material’s [BindGroupLayout
]. This should match the [BindGroup
] returned by [SpecializedMaterial2d::bind_group
].
sourcefn key(
_render_devicec: &RenderDevice,
_material: &<Self as RenderAsset>::PreparedAsset
) -> Self::Key
fn key(
_render_devicec: &RenderDevice,
_material: &<Self as RenderAsset>::PreparedAsset
) -> Self::Key
Extract the [SpecializedMaterial2d::Key
] for the “prepared” version of this material. This key will be
passed in to the [SpecializedMaterial2d::specialize
] function when compiling the RenderPipeline
for a given entity’s material. Read more
sourcefn specialize(
_key: Self::Key,
descriptor: &mut RenderPipelineDescriptor,
_layout: &MeshVertexBufferLayout
) -> Result<(), SpecializedMeshPipelineError>
fn specialize(
_key: Self::Key,
descriptor: &mut RenderPipelineDescriptor,
_layout: &MeshVertexBufferLayout
) -> Result<(), SpecializedMeshPipelineError>
Specializes the given descriptor
according to the given key
.
fn dynamic_uniform_indices(material: &Self::PreparedAsset) -> &[u32]
fn dynamic_uniform_indices(material: &Self::PreparedAsset) -> &[u32]
The dynamic uniform indices to set for the given material
’s [BindGroup
].
Defaults to an empty array / no dynamic uniform indices. Read more
sourceimpl TypeUuid for TerminalMaterial
impl TypeUuid for TerminalMaterial
Auto Trait Implementations
impl RefUnwindSafe for TerminalMaterial
impl Send for TerminalMaterial
impl Sync for TerminalMaterial
impl Unpin for TerminalMaterial
impl UnwindSafe for TerminalMaterial
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> FromWorld for T where
T: Default,
impl<T> FromWorld for T where
T: Default,
fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self
using data from the given [World]
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
impl<T> TypeData for T where
T: 'static + Send + Sync + Clone,
fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more