2026-03-18 허수아비 추가
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Rendering;
|
||||
using UnityEngine.Rendering.Universal;
|
||||
|
||||
namespace Ilumisoft.Rendering
|
||||
{
|
||||
[Serializable]
|
||||
[DisplayInfo(name = "Outline")]
|
||||
[VolumeComponentMenu("Post-processing/Outline")]
|
||||
[VolumeRequiresRendererFeatures(typeof(OutlineRendererFeature))]
|
||||
public class OutlineVolumeComponent : VolumeComponent
|
||||
{
|
||||
[Header("Outline Settings")]
|
||||
[Tooltip("The width of the outline in pixels. A value of 0 will disable outlines.")]
|
||||
public ClampedIntParameter thickness = new ClampedIntParameter(1, 0, 4);
|
||||
|
||||
[Tooltip("The color used for the outline.")]
|
||||
public ColorParameter outlineColor = new ColorParameter(Color.black);
|
||||
|
||||
[Header("Edge Detection Sensitivity")]
|
||||
[Tooltip("Depth sensitivity for edge detection. Defines the lower and upper threshold used in the smoothstep function. Smaller values make the effect more sensitive to depth differences.")]
|
||||
public FloatRangeParameter depthSmoothstep = new FloatRangeParameter(new Vector2(0.1f, 0.2f), 0, 1);
|
||||
|
||||
[Tooltip("Normal sensitivity for edge detection. Defines the lower and upper threshold used in the smoothstep function. Smaller values make the effect more sensitive to surface angle changes.")]
|
||||
public FloatRangeParameter normalSmoothstep = new FloatRangeParameter(new Vector2(0.2f, 0.7f), 0, 1);
|
||||
|
||||
[Header("Background Fill (Optional)")]
|
||||
|
||||
[Tooltip("Enable fill of the background color.")]
|
||||
public BoolParameter backgroundFill = new BoolParameter(false);
|
||||
|
||||
[Tooltip("Optional background color fill. Only visible if 'Background Fill' is enabled.")]
|
||||
public ColorParameter backgroundColor = new ColorParameter(Color.white);
|
||||
|
||||
[Tooltip("Controls how much detail from the original images luminance is preserved in the background fill. A value of 0 results in a flat fill, 1 keeps full luminance detail.")]
|
||||
public ClampedFloatParameter luminanceDetail = new ClampedFloatParameter(1, 0, 1);
|
||||
|
||||
[Tooltip("Applies a contrast adjustment to the luminance before blending with the fill color. Higher values increase the brightness difference between dark and light areas.")]
|
||||
public MinFloatParameter luminanceContrast = new MinFloatParameter(1, 0);
|
||||
|
||||
[Header("Distance-Based Fading")]
|
||||
[Tooltip("Enable distance-based fading of the outline effect.")]
|
||||
public BoolParameter distanceFade = new BoolParameter(false);
|
||||
|
||||
[Tooltip("The distance from the camera (in metres) at which outline fading begins. Only used if Distance Fade is enabled.")]
|
||||
public MinFloatParameter fadeStart = new MinFloatParameter(0, 0);
|
||||
|
||||
[Tooltip("How far from the fade start point (in metres) the outlines will fully fade out. Only used if Distance Fade is enabled.")]
|
||||
public MinFloatParameter fadeDistance = new MinFloatParameter(100, 0);
|
||||
|
||||
protected override void OnEnable()
|
||||
{
|
||||
base.OnEnable();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user