#[doc(inline)]
pub use super::{Interpolation, Mipmap, TextureData, Wrapping};
#[derive(Clone, Debug)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Texture3D {
pub name: String,
pub data: TextureData,
pub width: u32,
pub height: u32,
pub depth: u32,
pub min_filter: Interpolation,
pub mag_filter: Interpolation,
pub mipmap: Option<Mipmap>,
pub wrap_s: Wrapping,
pub wrap_t: Wrapping,
pub wrap_r: Wrapping,
}
impl Default for Texture3D {
fn default() -> Self {
Self {
name: "default".to_owned(),
data: TextureData::RgbaU8(vec![[0, 0, 0, 0]]),
width: 1,
height: 1,
depth: 1,
min_filter: Interpolation::Linear,
mag_filter: Interpolation::Linear,
mipmap: None,
wrap_s: Wrapping::Repeat,
wrap_t: Wrapping::Repeat,
wrap_r: Wrapping::Repeat,
}
}
}