pub enum FlowFunc {
Show 52 variants
Sin,
Cos,
Tan,
Abs,
Floor,
Ceil,
Fract,
Sqrt,
Pow,
Atan2,
Exp,
Log,
Sign,
Mod,
Min,
Max,
Clamp,
Mix,
Smoothstep,
Step,
Length,
Distance,
Dot,
Cross,
Normalize,
Reflect,
SdfBox,
SdfCircle,
SdfEllipse,
SdfRoundRect,
SdfUnion,
SdfIntersect,
SdfSubtract,
SdfSmoothUnion,
SdfSmoothIntersect,
SdfSmoothSubtract,
Sdf,
Sobel,
BufferRead,
Phong,
BlinnPhong,
Perlin,
Simplex,
Worley,
WorleyGrad,
Fbm,
FbmEx,
Checkerboard,
SpringEval,
WaveStep,
FluidStep,
SampleScene,
}Expand description
Built-in function identifiers for the flow language
Variants§
Sin
Cos
Tan
Abs
Floor
Ceil
Fract
Sqrt
Pow
Atan2
Exp
Log
Sign
Mod
Min
Max
Clamp
Mix
Smoothstep
Step
Length
Distance
Dot
Cross
Normalize
Reflect
SdfBox
SdfCircle
SdfEllipse
SdfRoundRect
SdfUnion
SdfIntersect
SdfSubtract
SdfSmoothUnion
SdfSmoothIntersect
SdfSmoothSubtract
Sdf
Current element’s SDF at sample point
Sobel
Sobel filter (compute normal from heightfield)
BufferRead
Read from a named buffer
Phong
BlinnPhong
Perlin
Simplex
Worley
WorleyGrad
Worley noise with analytic gradient — returns vec3(distance, grad_x, grad_y) in a single 3×3 grid pass. 5× faster than finite-difference gradient.
Fbm
Fractal Brownian Motion (layered noise)
FbmEx
Extended FBM with configurable persistence (roughness)
Checkerboard
Checkerboard pattern
SpringEval
WaveStep
FluidStep
SampleScene
Sample the background/scene texture at given UV coordinates. Returns vec4 (RGBA). Enables refraction effects in flow shaders.
Implementations§
Trait Implementations§
impl Copy for FlowFunc
impl Eq for FlowFunc
impl StructuralPartialEq for FlowFunc
Auto Trait Implementations§
impl Freeze for FlowFunc
impl RefUnwindSafe for FlowFunc
impl Send for FlowFunc
impl Sync for FlowFunc
impl Unpin for FlowFunc
impl UnsafeUnpin for FlowFunc
impl UnwindSafe for FlowFunc
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
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.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.