30 lines
731 B
Rust
30 lines
731 B
Rust
/// A colored rectangle with a border.
|
|
///
|
|
/// This type can be directly uploaded to GPU memory.
|
|
#[derive(Debug, Clone, Copy)]
|
|
#[repr(C)]
|
|
pub struct Quad {
|
|
/// The position of the [`Quad`].
|
|
pub position: [f32; 2],
|
|
|
|
/// The size of the [`Quad`].
|
|
pub size: [f32; 2],
|
|
|
|
/// The color of the [`Quad`], in __linear RGB__.
|
|
pub color: [f32; 4],
|
|
|
|
/// The border color of the [`Quad`], in __linear RGB__.
|
|
pub border_color: [f32; 4],
|
|
|
|
/// The border radius of the [`Quad`].
|
|
pub border_radius: [f32; 4],
|
|
|
|
/// The border width of the [`Quad`].
|
|
pub border_width: f32,
|
|
}
|
|
|
|
#[allow(unsafe_code)]
|
|
unsafe impl bytemuck::Zeroable for Quad {}
|
|
|
|
#[allow(unsafe_code)]
|
|
unsafe impl bytemuck::Pod for Quad {}
|