Class SubsurfaceScatteringBlur
- Namespace
- Stride.Rendering.SubsurfaceScattering
- Assembly
- Stride.Rendering.dll
[DataContract("SubsurfaceScatteringBlur")]
[Display("Subsurface Scattering Blur", null)]
public class SubsurfaceScatteringBlur : ImageEffect, IComponent, IReferencable, ICollectorHolder, IImageEffectRenderer, IImageEffect, IGraphicsRenderer, IGraphicsRendererCore, IDisposable, ISharedRenderer, IIdentifiable, IGraphicsRendererBase
- Inheritance
-
SubsurfaceScatteringBlur
- Implements
- Inherited Members
- Extension Methods
Fields
MaxMaterialCount
public const uint MaxMaterialCount = 256
Field Value
Properties
ActiveRenderMode
Changes the render mode of the post-process for debugging purposes.
[DataMember(60)]
[Display("Render mode", null)]
public SubsurfaceScatteringBlur.RenderMode ActiveRenderMode { get; set; }
Property Value
FollowSurface
If active, the the light won't scatter across large depth differences. The depth falloff can be configured using "Depth falloff strength". Attention: Enabling this increases the performance hit of the effect.
[DataMember(20)]
[Display("Follow surface", null)]
public bool FollowSurface { get; set; }
Property Value
Id
Gets the id of this instance
[DataMember(-100)]
[Display(null, null, Browsable = false)]
public Guid Id { get; set; }
Property Value
JitterKernelSize
This reduces the banding artifacts caused by undersampling (visible on closeups) by introducing a bit of noise. This might create a less mathematically correct falloff, since it messes with the sample offsets. But the difference is barely noticeable.
[DataMember(50)]
[Display("Jitter Kernel Size", null)]
public bool JitterKernelSize { get; set; }
Property Value
NumberOfPasses
Specifies the number of times the blur should be executed. The higher the number of passes, the smoother the final result (less noise & banding).
[DataMember(40)]
[DataMemberRange(1, 10, 1, 1, 0)]
[Display("Number of passes", null)]
public int NumberOfPasses { get; set; }
Property Value
Methods
Draw(RenderDrawContext, Texture, Texture, Texture, Texture)
public void Draw(RenderDrawContext context, Texture color, Texture materialIndex, Texture depthStencil, Texture output)
Parameters
contextRenderDrawContextcolorTexturematerialIndexTexturedepthStencilTextureoutputTexture
DrawCore(RenderDrawContext)
Main drawing method for this renderer that must be implemented.
protected override void DrawCore(RenderDrawContext context)
Parameters
contextRenderDrawContextThe context.
~SubsurfaceScatteringBlur()
protected ~SubsurfaceScatteringBlur()
InitializeCore()
protected override void InitializeCore()
SetScatteringKernel(uint, Vector4[])
public void SetScatteringKernel(uint materialIndex, Vector4[] scatteringKernel)
Parameters
SetScatteringWidth(uint, float)
public void SetScatteringWidth(uint materialIndex, float width)