pub struct UpscalePassDesc {
pub input_width: u32,
pub input_height: u32,
pub output_width: u32,
pub output_height: u32,
pub input_color: ResourceId,
pub input_depth: ResourceId,
pub input_velocity: ResourceId,
pub output_color: ResourceId,
pub kind: UpscalerKind,
pub sharpness: f32,
pub mip_bias: f32,
}Fields§
§input_width: u32§input_height: u32§output_width: u32§output_height: u32§input_color: ResourceId§input_depth: ResourceId§input_velocity: ResourceId§output_color: ResourceId§kind: UpscalerKind§sharpness: f32§mip_bias: f32Implementations§
Source§impl UpscalePassDesc
impl UpscalePassDesc
pub fn fsr1( iw: u32, ih: u32, ow: u32, oh: u32, input: ResourceId, output: ResourceId, ) -> Self
pub fn scale_factor(&self) -> f32
Sourcepub fn easu_filter_sample(
input_uv: Vec2,
texel_size: Vec2,
jitter: Vec2,
) -> [Vec2; 5]
pub fn easu_filter_sample( input_uv: Vec2, texel_size: Vec2, jitter: Vec2, ) -> [Vec2; 5]
FSR1 EASU filter kernel (simplified for demonstration)
Sourcepub fn lanczos3_weight(x: f32) -> f32
pub fn lanczos3_weight(x: f32) -> f32
Lanczos 3 filter weight
pub fn lanczos3_reconstruct( center: Vec3, samples: &[(Vec3, Vec2)], output_uv: Vec2, ) -> Vec3
Trait Implementations§
Source§impl Clone for UpscalePassDesc
impl Clone for UpscalePassDesc
Auto Trait Implementations§
impl Freeze for UpscalePassDesc
impl RefUnwindSafe for UpscalePassDesc
impl Send for UpscalePassDesc
impl Sync for UpscalePassDesc
impl Unpin for UpscalePassDesc
impl UnsafeUnpin for UpscalePassDesc
impl UnwindSafe for UpscalePassDesc
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
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)
Convert
&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)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.