18 UPROPERTY(meta = (RequiredInput =
"false",
ToolTip =
"Parameter 'g' input to the phase function describing how much forward(g<0) or backward (g>0) light scatter around. Valid range is [-1,1]. Defaults to ConstPhaseG from properties panel if not specified. Evaluated per sample if EvaluatePhaseOncePerSample is true."))
22 UPROPERTY(meta = (RequiredInput =
"false",
ToolTip =
"Parameter 'g' input to the second phase function describing how much forward(g<0) or backward (g>0) light scatter around. Valid range is [-1,1]. Defaults to ConstPhaseG2 from properties panel if not specified. Evaluated per sample if EvaluatePhaseOncePerSample is true."))
26 UPROPERTY(meta = (RequiredInput =
"false",
ToolTip =
"Lerp factor when blending the two phase functions parameterized by G and G2. Valid range is [0,1] Defaults to ConstPhaseBlend from properties panel if not specified. Evaluated per sample if EvaluatePhaseOncePerSample is true."))
31 UPROPERTY(meta = (RequiredInput =
"false",
ToolTip =
"Multi-scattering approximation: represents how much contribution each successive octave will add. Evaluated per pixel. Valid range is [0,1], from low to high contribution. Defaults to ConstMultiScatteringContribution from properties panel if not specified. Evaluated per pixel (globally)."))
35 UPROPERTY(meta = (RequiredInput =
"false",
ToolTip =
"Multi-scattering approximation: represents how much occlusion will be reduced for each successive octave. Evaluated per pixel. Valid range is [0,1], from low to high occlusion. Defaults to ConstMultiScatteringOcclusion from properties panel if not specified. Evaluated per pixel (globally)."))
39 UPROPERTY(meta = (RequiredInput =
"false",
ToolTip =
"Multi-scattering approximation: represents how much the phase will become isotropic for each successive octave. Evaluated per pixel. Valid range is [0,1], from anisotropic to isotropic phase. Defaults to ConstMultiScatteringEccentricity from properties panel if not specified. Evaluated per pixel (globally)."))
43 UPROPERTY(meta = (RequiredInput =
"false",
ToolTip =
"This is a 4-components float vector. The X component must represent the participating medium conservative density. This is used to accelerate the ray marching by early skipping expensive material evaluation. For example, the bare minimum would be a top down 2D density texture skipping evaluating the full material in empty regions (better, would be a simple blobby volume representation of clouds). The Y, Z and W components can contain parameters that can be recovered during the material graph evaluation using the VolumetricAdvancedMaterialInput node. Evaluated per sample."))
47 UPROPERTY(EditAnywhere, Category =
"Phase", meta = (OverridingInputProperty =
"PhaseG", UIMin = -0.999f, UIMax = 0.999f, ClampMin = -0.999f, ClampMax = 0.999f))
48 float ConstPhaseG = 0.0f;
51 UPROPERTY(EditAnywhere, Category =
"Phase", meta = (OverridingInputProperty =
"PhaseG2", UIMin = -0.999f, UIMax = 0.999f, ClampMin = -0.999f, ClampMax = 0.999f))
52 float ConstPhaseG2 = 0.0f;
55 UPROPERTY(EditAnywhere, Category =
"Phase", meta = (OverridingInputProperty =
"PhaseBlend", UIMin = 0.0f, UIMax = 1.0f, ClampMin = -0.999f, ClampMax = 0.999f))
56 float ConstPhaseBlend = 0.0f;
59 UPROPERTY(EditAnywhere, Category =
"Phase")
60 bool PerSamplePhaseEvaluation =
false;
63 UPROPERTY(EditAnywhere, Category =
"Multi-Scattering", meta = (UIMin = 0, UIMax = 1, ClampMin = 0, ClampMax = 2))
64 uint32 MultiScatteringApproximationOctaveCount = 0;
67 UPROPERTY(EditAnywhere, Category =
"Multi-Scattering", meta = (OverridingInputProperty =
"MultiScatteringContribution", UIMin = 0.0f, UIMax = 1.0f, ClampMin = 0.0f, ClampMax = 1.0f))
68 float ConstMultiScatteringContribution = 0.5f;
71 UPROPERTY(EditAnywhere, Category =
"Multi-Scattering", meta = (OverridingInputProperty =
"MultiScatteringOcclusion", UIMin = 0.0f, UIMax = 1.0f, ClampMin = 0.0f, ClampMax = 1.0f))
72 float ConstMultiScatteringOcclusion = 0.5f;
75 UPROPERTY(EditAnywhere, Category =
"Multi-Scattering", meta = (OverridingInputProperty =
"MultiScatteringEccentricity", UIMin = 0.0f, UIMax = 1.0f, ClampMin = 0.0f, ClampMax = 1.0f))
76 float ConstMultiScatteringEccentricity = 0.5f;
79 UPROPERTY(EditAnywhere, Category =
"Options")
80 bool bGroundContribution =
false;
83 UPROPERTY(EditAnywhere, Category =
"Options")
84 bool bGrayScaleMaterial =
false;
87 UPROPERTY(EditAnywhere, Category =
"Options")
88 bool bRayMarchVolumeShadow =
true;
91 UPROPERTY(EditAnywhere, Category =
"Options")
92 bool bClampMultiScatteringContribution =
true;
107 virtual int32 GetNumOutputs()
const override;
108 virtual FString GetFunctionName()
const override;
109 virtual FString GetDisplayName()
const override;