39 lines
1.3 KiB
C#
39 lines
1.3 KiB
C#
using UnityEngine;
|
|
|
|
namespace Unheimlich.Audio
|
|
{
|
|
[CreateAssetMenu(fileName = "AudioEmitterData", menuName = "Unheimlich/Audio/Audio Emitter Data")]
|
|
public class AudioEmitterData : ScriptableObject
|
|
{
|
|
[Header("Emitter Info")]
|
|
public AudioEmitterType EmitterType = AudioEmitterType.Generic;
|
|
public string DisplayName = "Generic";
|
|
|
|
[Header("Procedural Audio Settings")]
|
|
public float BaseFrequency = 440f;
|
|
public float FrequencyVariation = 50f;
|
|
public float VolumeMin = 0.3f;
|
|
public float VolumeMax = 0.7f;
|
|
public float DurationMin = 0.5f;
|
|
public float DurationMax = 2f;
|
|
|
|
[Header("Harmonics (for complex sounds)")]
|
|
public float[] HarmonicMultipliers = { 1f };
|
|
public float[] HarmonicAmplitudes = { 1f };
|
|
|
|
[Header("Noise Settings")]
|
|
[Range(0f, 1f)]
|
|
public float NoiseAmount = 0f;
|
|
|
|
[Header("Vibration Settings")]
|
|
public bool EnableVibration = true;
|
|
public float VibrationIntensityMin = 0.1f;
|
|
public float VibrationIntensityMax = 0.5f;
|
|
public float VibrationFrequency = 10f;
|
|
|
|
[Header("Distance Settings")]
|
|
public float MaxDistance = 10f;
|
|
public AnimationCurve DistanceAttenuation = AnimationCurve.EaseInOut(0f, 1f, 1f, 0f);
|
|
}
|
|
}
|