Editor/SeamlessToolSettings.cs
using Sandbox;
public class SeamlessToolSettings
{
public SeamlessProcessingMode ProcessingMode { get; set; } = SeamlessProcessingMode.OffsetBlend;
public SeamlessSeamShape SeamShape { get; set; } = SeamlessSeamShape.Smooth;
public SeamlessVariationPreset VariationPreset { get; set; } = SeamlessVariationPreset.Balanced;
public SeamlessPatchShape PatchShape { get; set; } = SeamlessPatchShape.Circle;
public SeamlessBrickTilePattern BrickTilePattern { get; set; } = SeamlessBrickTilePattern.RunningBrick;
[Range( 1f, 256f )]
public float SeamWidth { get; set; } = 32f;
[Range( 0f, 1f )]
public float BlendStrength { get; set; } = 0.85f;
[Range( 0f, 16f )]
public float BlurRadius { get; set; } = 0f;
[Range( 0f, 2f )]
public float SharpenAmount { get; set; } = 0f;
public int RandomSeed { get; set; } = 12345;
[Range( 0f, 1f )]
public float VariationStrength { get; set; } = 0.65f;
[Range( 0f, 1f )]
public float SeamGravity { get; set; } = 0f;
[Range( 2f, 512f )]
public int PatchCount { get; set; } = 18;
[Range( 8f, 512f )]
public float PatchSize { get; set; } = 96f;
[Range( 0.05f, 1f )]
public float MaskSoftness { get; set; } = 0.45f;
[Range( 0.1f, 4f )]
public float TextureBombDensity { get; set; } = 1f;
[Range( 4f, 4096f )]
public float BrickTileCellWidth { get; set; } = 128f;
[Range( 4f, 4096f )]
public float BrickTileCellHeight { get; set; } = 64f;
[Range( 0f, 256f )]
public float BrickTileGroutWidth { get; set; } = 8f;
[Range( 0f, 1f )]
public float BrickTileRowOffset { get; set; } = 0.5f;
[Range( 0f, 1f )]
public float BrickTileStructureStrength { get; set; } = 0.85f;
[Range( 2f, 8f )]
public int PreviewTileCount { get; set; } = 3;
[Range( 1f, 100f )]
public int ExportQuality { get; set; } = 90;
public SeamlessPreviewMode PreviewMode { get; set; } = SeamlessPreviewMode.Processed;
public SeamlessExportFormat ExportFormat { get; set; } = SeamlessExportFormat.Png;
public string OutputSuffix { get; set; } = "_seamless";
public string OutputFolder { get; set; } = "";
public bool OverwriteExisting { get; set; }
public bool ExportVMAT { get; set; }
public bool AutoProcess { get; set; } = true;
}