Raymarcher Technical & APi Documentation
Raymarcher Modifier Category - Displacement
Namespace: Raymarcher.Objects.Modifiers
This category of modifiers includes displacement modifiers in various dimensions and directions.
SDF modifiers in the Raymarcher inherit from the base class RMObjectModifierBase.

To create an SDF modifier directly on the SDF Object, use components in the Unity editor.
Please note that it is not possible to create an SDF modifier at runtime, as each object must be created at compile time.

Creating multiple modifiers with amplified values for deforming the SDF might lead to breaking the SDF matrix, resulting in unwanted artifacts.
It is recommended to keep the effect of modifiers low. In case you genuinely need to deform the SDF in extreme ways, you should consider increasing the iteration count of the renderer.

RMModifier_DisplacementRadial :: RMObjectModifierBase
Creates a radial displacement on the current sdf object.
public DisplacementModifierData DisplaceModifier { get; }
// Content of the DisplacementData:
public Texture2D displaceTexture;
public float textureTiling;
public float displacementAmount;
RMModifier_DisplacementXY :: RMObjectModifierBase
Creates a Z-based displacement on the current sdf object.
public DisplacementModifierData DisplaceModifier { get; }
// Content of the DisplacementData:
public Texture2D displaceTexture;
public float textureTiling;
public float displacementAmount;
RMModifier_DisplacementXZ :: RMObjectModifierBase
Creates a Y-based displacement on the current sdf object.
public DisplacementModifierData DisplaceModifier { get; }
// Content of the DisplacementData:
public Texture2D displaceTexture;
public float textureTiling;
public float displacementAmount;
RMModifier_DisplacementYZ :: RMObjectModifierBase
Creates a X-based displacement on the current sdf object.
public DisplacementModifierData DisplaceModifier { get; }
// Content of the DisplacementData:
public Texture2D displaceTexture;
public float textureTiling;
public float displacementAmount;