pub struct GlassMaterial {
pub blur: f32,
pub tint: Color,
pub saturation: f32,
pub brightness: f32,
pub noise: f32,
pub border_thickness: f32,
pub shadow: Option<MaterialShadow>,
pub simple: bool,
}Expand description
Glass/vibrancy material that blurs content behind it
Creates a frosted glass effect similar to macOS vibrancy or iOS blur.
Fields§
§blur: f32Blur intensity (0-50, default 20)
tint: ColorTint color applied over the blur
saturation: f32Color saturation (1.0 = normal, 0.0 = grayscale, >1.0 = vibrant)
brightness: f32Brightness multiplier (1.0 = normal)
noise: f32Noise/grain amount for frosted texture (0.0-0.1)
border_thickness: f32Border highlight thickness
shadow: Option<MaterialShadow>Optional drop shadow
simple: boolUse simple frosted glass mode (no liquid glass effects)
Implementations§
Source§impl GlassMaterial
impl GlassMaterial
Sourcepub fn new() -> GlassMaterial
pub fn new() -> GlassMaterial
Create a new glass material with default settings
Sourcepub fn blur(self, blur: f32) -> GlassMaterial
pub fn blur(self, blur: f32) -> GlassMaterial
Set blur intensity
Sourcepub fn tint(self, color: Color) -> GlassMaterial
pub fn tint(self, color: Color) -> GlassMaterial
Set tint color
Sourcepub fn tint_rgba(self, r: f32, g: f32, b: f32, a: f32) -> GlassMaterial
pub fn tint_rgba(self, r: f32, g: f32, b: f32, a: f32) -> GlassMaterial
Set tint from RGBA components
Sourcepub fn saturation(self, saturation: f32) -> GlassMaterial
pub fn saturation(self, saturation: f32) -> GlassMaterial
Set saturation
Sourcepub fn brightness(self, brightness: f32) -> GlassMaterial
pub fn brightness(self, brightness: f32) -> GlassMaterial
Set brightness
Sourcepub fn noise(self, amount: f32) -> GlassMaterial
pub fn noise(self, amount: f32) -> GlassMaterial
Add noise/grain for frosted effect
Sourcepub fn border(self, thickness: f32) -> GlassMaterial
pub fn border(self, thickness: f32) -> GlassMaterial
Set border highlight thickness
Sourcepub fn shadow(self, shadow: MaterialShadow) -> GlassMaterial
pub fn shadow(self, shadow: MaterialShadow) -> GlassMaterial
Add drop shadow
Sourcepub fn ultra_thin() -> GlassMaterial
pub fn ultra_thin() -> GlassMaterial
Ultra-thin glass (very subtle blur)
Sourcepub fn thin() -> GlassMaterial
pub fn thin() -> GlassMaterial
Thin glass
Sourcepub fn regular() -> GlassMaterial
pub fn regular() -> GlassMaterial
Regular glass (default blur)
Sourcepub fn thick() -> GlassMaterial
pub fn thick() -> GlassMaterial
Thick glass (heavy blur)
Sourcepub fn frosted() -> GlassMaterial
pub fn frosted() -> GlassMaterial
Frosted glass with grain texture
Sourcepub fn card() -> GlassMaterial
pub fn card() -> GlassMaterial
Card style with border and shadow
Sourcepub fn simple() -> GlassMaterial
pub fn simple() -> GlassMaterial
Simple frosted glass - pure blur without liquid glass effects
Creates a clean backdrop blur effect without edge refraction, light reflections, or bevel effects. More performant and ideal for subtle UI backgrounds where you want pure frosted glass.
Sourcepub fn with_simple(self, simple: bool) -> GlassMaterial
pub fn with_simple(self, simple: bool) -> GlassMaterial
Enable/disable simple mode (no liquid glass effects)
Trait Implementations§
Source§impl Clone for GlassMaterial
impl Clone for GlassMaterial
Source§fn clone(&self) -> GlassMaterial
fn clone(&self) -> GlassMaterial
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GlassMaterial
impl Debug for GlassMaterial
Source§impl Default for GlassMaterial
impl Default for GlassMaterial
Source§fn default() -> GlassMaterial
fn default() -> GlassMaterial
Source§impl From<GlassMaterial> for Material
impl From<GlassMaterial> for Material
Source§fn from(glass: GlassMaterial) -> Material
fn from(glass: GlassMaterial) -> Material
Auto Trait Implementations§
impl Freeze for GlassMaterial
impl RefUnwindSafe for GlassMaterial
impl Send for GlassMaterial
impl Sync for GlassMaterial
impl Unpin for GlassMaterial
impl UnsafeUnpin for GlassMaterial
impl UnwindSafe for GlassMaterial
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.