Class SimpleHatchProperties
- Namespace
- Gamelogic.Fx.CrossHatching.PostProcessing.Effects
- Assembly
- Gamelogic.Fx.CrossHatching.dll
Shader properties for the simple cross-hatching post-processing effect.
[Serializable]
public sealed class SimpleHatchProperties : ShaderProperties
- Inheritance
-
SimpleHatchProperties
- Inherited Members
Properties
BackgroundStrength
Gets or sets the contribution of the background tone beneath the hatching. This controls how much underlying shading remains visible.
public float BackgroundStrength { get; set; }
Property Value
BaseOrientation
Gets or sets the base rotation angle, in degrees, applied before layer-based rotation.
public float BaseOrientation { get; set; }
Property Value
BlackLevel
Gets or sets the brightness threshold below which pixels are considered fully dark and receive the maximum number of hatch layers.
public float BlackLevel { get; set; }
Property Value
HatchStrength
Gets or sets the intensity of each hatch layer. Higher values increase the visual strength of the hatching.
public float HatchStrength { get; set; }
Property Value
HatchTexture
Gets or sets the hatch texture used to render cross-hatching patterns. Typically, a tileable line or stipple texture.
public Texture HatchTexture { get; set; }
Property Value
HatchTextureTilingOffset
Gets or sets the tiling offset applied to the hatch texture.
public Vector2 HatchTextureTilingOffset { get; set; }
Property Value
HatchTextureTilingScale
Gets or sets the tiling scale applied to the hatch texture.
public Vector2 HatchTextureTilingScale { get; set; }
Property Value
LayerCount
Gets or sets the number of hatch layers applied to darker regions of the image. Higher values produce denser cross-hatching in dark areas.
public int LayerCount { get; set; }
Property Value
LayerOffset
Gets or sets the per-layer UV offset applied to the hatch texture. The offset is multiplied by the layer index.
public Vector2 LayerOffset { get; set; }
Property Value
OrientationFromTexture
Gets or sets whether hatch orientation should be sampled from a texture instead of being derived purely from the orientation scheme.
public bool OrientationFromTexture { get; set; }
Property Value
OrientationScheme
Gets or sets the orientation scheme used to rotate hatch layers. This determines how angles vary between successive layers.
public OrientationScheme OrientationScheme { get; set; }
Property Value
ShaderName
Gets the name of the shader used by this property set.
public override string ShaderName { get; }
Property Value
Remarks
This name is passed to the internal shader lookup system when the properties are enabled. It should match the full shader path as defined in the shader file.
Smoothness
Gets or sets the smoothness of transitions between hatch layers. Higher values blend layers more gradually, producing smoother tonal changes.
public float Smoothness { get; set; }
Property Value
WhiteLevel
Gets or sets the brightness threshold above which pixels receive no hatching.
public float WhiteLevel { get; set; }
Property Value
Methods
SetMaterialProperties(Material)
Applies all shader-related properties to the given material.
public override void SetMaterialProperties(Material effectMaterial)
Parameters
effectMaterialMaterial
Remarks
Subclasses should override this method and set all relevant shader uniforms (for example, floats, vectors, colors, textures, and keywords).