pub enum ShaderNodeKind {
Show 129 variants
ConstFloat(f32),
ConstVec2([f32; 2]),
ConstVec3([f32; 3]),
ConstVec4([f32; 4]),
ConstInt(i32),
ConstBool(bool),
Time,
Resolution,
FragCoord,
VertexNormal,
VertexTangent,
VertexUV,
VertexUV2,
VertexColor,
WorldPosition,
ViewDirection,
CameraPosition,
ModelMatrix,
ViewMatrix,
ProjectionMatrix,
NormalMatrix,
CustomUniformFloat {
name: String,
},
CustomUniformVec3 {
name: String,
},
CustomUniformVec4 {
name: String,
},
CustomUniformSampler2D {
name: String,
},
Add,
Subtract,
Multiply,
Divide,
Power,
SquareRoot,
AbsoluteValue,
Negate,
OneMinus,
Reciprocal,
Floor,
Ceiling,
Round,
Fraction,
Sign,
Modulo,
Min,
Max,
Clamp,
Saturate,
Lerp,
SmoothStep,
Step,
Sin,
Cos,
Tan,
Asin,
Acos,
Atan,
Atan2,
Degrees,
Radians,
Exp,
Exp2,
Log,
Log2,
Dot,
Cross,
Length,
Normalize,
Reflect,
Refract,
FaceForward,
Distance,
Mix,
VectorSplit,
VectorMerge,
VectorSwizzle {
swizzle: [u8; 4],
out_count: u8,
},
MatrixMultiply,
MatrixTranspose,
MatrixInverse,
TransformPoint,
TransformVector,
TransformNormal,
SampleTexture2D,
SampleTextureCube,
SampleTexture2DLod,
SampleTexture2DGrad,
SampleNormalMap,
TextureSize,
ColorToLinear,
ColorToGamma,
HsvToRgb,
RgbToHsv,
Luminance,
ColorBalance,
Hue,
Saturation,
Brightness,
FresnelSchlick,
GGXDistribution,
SmithGeometry,
BRDFSpecular,
BRDFDiffuse,
EnvBRDFApprox,
SubsurfaceApprox,
EmissionBlend,
SdfSample {
sdf_graph_id: u32,
},
SdfNormal {
sdf_graph_id: u32,
},
SdfAO {
sdf_graph_id: u32,
},
IfElse,
IsNaN,
IsInf,
Dpdx,
Dpdy,
FWidth,
Noise2D,
Noise3D,
VoronoiNoise,
FbmNoise {
octaves: u8,
},
CellularNoise,
WhiteNoise,
GradientNoise,
PbrOutput,
UnlitOutput,
PostProcessOutput,
CustomOutput {
name: String,
value_type: ShaderValueType,
},
VertexOffset,
DepthOutput,
CustomVarying {
name: String,
value_type: ShaderValueType,
},
Reroute,
Comment {
text: String,
width: f32,
height: f32,
},
Group {
label: String,
nodes: Vec<ShaderNodeId>,
},
SubGraph {
graph_id: u32,
label: String,
},
}Variants§
ConstFloat(f32)
ConstVec2([f32; 2])
ConstVec3([f32; 3])
ConstVec4([f32; 4])
ConstInt(i32)
ConstBool(bool)
Time
Resolution
FragCoord
VertexNormal
VertexTangent
VertexUV
VertexUV2
VertexColor
WorldPosition
ViewDirection
CameraPosition
ModelMatrix
ViewMatrix
ProjectionMatrix
NormalMatrix
CustomUniformFloat
CustomUniformVec3
CustomUniformVec4
CustomUniformSampler2D
Add
Subtract
Multiply
Divide
Power
SquareRoot
AbsoluteValue
Negate
OneMinus
Reciprocal
Floor
Ceiling
Round
Fraction
Sign
Modulo
Min
Max
Clamp
Saturate
Lerp
SmoothStep
Step
Sin
Cos
Tan
Asin
Acos
Atan
Atan2
Degrees
Radians
Exp
Exp2
Log
Log2
Dot
Cross
Length
Normalize
Reflect
Refract
FaceForward
Distance
Mix
VectorSplit
VectorMerge
VectorSwizzle
MatrixMultiply
MatrixTranspose
MatrixInverse
TransformPoint
TransformVector
TransformNormal
SampleTexture2D
SampleTextureCube
SampleTexture2DLod
SampleTexture2DGrad
SampleNormalMap
TextureSize
ColorToLinear
ColorToGamma
HsvToRgb
RgbToHsv
Luminance
ColorBalance
Hue
Saturation
Brightness
FresnelSchlick
GGXDistribution
SmithGeometry
BRDFSpecular
BRDFDiffuse
EnvBRDFApprox
SubsurfaceApprox
EmissionBlend
SdfSample
SdfNormal
SdfAO
IfElse
IsNaN
IsInf
Dpdx
Dpdy
FWidth
Noise2D
Noise3D
VoronoiNoise
FbmNoise
CellularNoise
WhiteNoise
GradientNoise
PbrOutput
UnlitOutput
PostProcessOutput
CustomOutput
VertexOffset
DepthOutput
CustomVarying
Reroute
Comment
Group
SubGraph
Implementations§
Trait Implementations§
Source§impl Clone for ShaderNodeKind
impl Clone for ShaderNodeKind
Auto Trait Implementations§
impl Freeze for ShaderNodeKind
impl RefUnwindSafe for ShaderNodeKind
impl Send for ShaderNodeKind
impl Sync for ShaderNodeKind
impl Unpin for ShaderNodeKind
impl UnsafeUnpin for ShaderNodeKind
impl UnwindSafe for ShaderNodeKind
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.