Skip to content

Commit 774a34a

Browse files
Updating file layout and preparing for integration with UI project
1 parent 0d4a6b9 commit 774a34a

73 files changed

Lines changed: 1848 additions & 2111 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@
2121
"registry": "http://35.211.123.13:4873/"
2222
},
2323
"dependencies": {
24-
"com.appalachia.unity3d.core": "0.1.3",
25-
"com.appalachia.unity3d.editing": "0.1.6",
26-
"com.appalachia.unity3d.rendering": "0.1.5",
27-
"com.appalachia.unity3d.utility": "0.1.0",
28-
"com.appalachia.unity3d.ci": "0.1.0"
24+
"com.appalachia.unity3d.core": "0.1.4",
25+
"com.appalachia.unity3d.editing": "0.1.7",
26+
"com.appalachia.unity3d.rendering": "0.1.6",
27+
"com.appalachia.unity3d.utility": "0.1.1",
28+
"com.appalachia.unity3d.ci": "0.1.1"
2929
},
3030
"scripts": {
3131
"preversion": "bash ~/com.appalachia/appa/appa package unity3d preversion",
@@ -40,4 +40,4 @@
4040
"postpublish": "bash ~/com.appalachia/appa/appa package unity3d postpublish"
4141
},
4242
"exports": null
43-
}
43+
}

src/Components/AudioAnimEvent.cs

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,21 @@ namespace Appalachia.Audio.Components
99
{
1010
public sealed class AudioAnimEvent : StateMachineBehaviour
1111
{
12+
[Range(0, 30)] public float delay;
13+
1214
[FormerlySerializedAs("asset")]
1315
public Patch patch;
1416

15-
[Range(0, 30)] public float delay;
1617
public Vector3 offset = Vector3.up;
1718
private uint handle;
1819

19-
public override void OnStateEnter(Animator animator, AnimatorStateInfo info, int layer)
20-
{
21-
KeyOn(animator);
22-
}
23-
24-
public override void OnStateExit(Animator animator, AnimatorStateInfo info, int layer)
20+
public void KeyOff()
2521
{
26-
KeyOff();
22+
if (handle != 0)
23+
{
24+
Synthesizer.KeyOff(handle);
25+
handle = 0;
26+
}
2727
}
2828

2929
public void KeyOn(Animator a)
@@ -32,13 +32,14 @@ public void KeyOn(Animator a)
3232
handle = Synthesizer.KeyOn(out looping, patch, a.transform, offset, delay);
3333
}
3434

35-
public void KeyOff()
35+
public override void OnStateEnter(Animator animator, AnimatorStateInfo info, int layer)
3636
{
37-
if (handle != 0)
38-
{
39-
Synthesizer.KeyOff(handle);
40-
handle = 0;
41-
}
37+
KeyOn(animator);
38+
}
39+
40+
public override void OnStateExit(Animator animator, AnimatorStateInfo info, int layer)
41+
{
42+
KeyOff();
4243
}
4344
}
4445
}

src/Components/AudioEmitter.cs

Lines changed: 64 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -13,76 +13,35 @@ namespace Appalachia.Audio.Components
1313
[AddComponentMenu(APPA_MENU.ASM_AppalachiaAudio + nameof(AudioEmitter))]
1414
public class AudioEmitter : MonoBehaviour
1515
{
16-
public enum Controller
17-
{
18-
None,
19-
User,
20-
Zone
21-
}
22-
23-
[FormerlySerializedAs("assets")]
24-
public Patch[] patches;
16+
[Colorize] public AttachmentParams attachment;
2517

26-
[Range(0, 1)] public float volume = 1f;
18+
[Colorize] public AuxiliaryParams auxiliary;
2719

2820
public bool autoCue = true;
2921
public bool singleShot;
3022

3123
[HideInInspector] public Controller controller;
3224

33-
[Colorize] public RandomizationParams randomization = new() {chance = 1f};
25+
[Range(0, 1)] public float volume = 1f;
26+
27+
[Colorize] public GizmoParams gizmo = new() {color = Color.red};
3428

3529
[Colorize]
36-
public ModulationParams modulation =
37-
new() {volume = new MinMaxFloat {min = 0.95f, max = 1.05f}};
30+
public ModulationParams modulation = new() {volume = new MinMaxFloat {min = 0.95f, max = 1.05f}};
3831

39-
[Colorize] public AttachmentParams attachment;
32+
[FormerlySerializedAs("assets")]
33+
public Patch[] patches;
4034

41-
[Colorize] public AuxiliaryParams auxiliary;
35+
[Colorize] public RandomizationParams randomization = new() {chance = 1f};
4236

43-
[Colorize] public GizmoParams gizmo = new() {color = Color.red};
37+
internal AudioZone zone;
38+
internal bool paused;
4439
private bool cuedOnce;
4540

4641
private uint[] cueHandles;
47-
internal bool paused;
48-
49-
internal AudioZone zone;
5042

5143
public bool isModulated => (modulation.custom != null) || (modulation.period > 0f);
5244

53-
protected void Awake()
54-
{
55-
Reset();
56-
}
57-
58-
protected void Reset()
59-
{
60-
if (controller == Controller.None)
61-
{
62-
controller = !zone && !GetComponent<Zone>() ? Controller.User : Controller.Zone;
63-
}
64-
65-
enabled = controller != Controller.Zone;
66-
}
67-
68-
protected void OnEnable()
69-
{
70-
if (autoCue)
71-
{
72-
CueIn();
73-
}
74-
}
75-
76-
protected void OnDisable()
77-
{
78-
CueOut();
79-
}
80-
81-
public void SetPaused(bool p)
82-
{
83-
paused = p;
84-
}
85-
8645
public bool IsPaused()
8746
{
8847
return paused;
@@ -112,6 +71,11 @@ public void CueOut()
11271
CueOutWithRelease(0f, EnvelopeMode.None);
11372
}
11473

74+
public void CueOutInstant()
75+
{
76+
CueOutWithRelease(0f, EnvelopeMode.Exact);
77+
}
78+
11579
public void CueOutWithRelease(float release, EnvelopeMode mode)
11680
{
11781
if (cueHandles != null)
@@ -124,27 +88,44 @@ public void CueOutWithRelease(float release, EnvelopeMode mode)
12488
}
12589
}
12690

127-
public void CueOutInstant()
91+
public void SetPaused(bool p)
12892
{
129-
CueOutWithRelease(0f, EnvelopeMode.Exact);
93+
paused = p;
13094
}
13195

132-
[Serializable]
133-
public struct RandomizationParams
96+
protected void Awake()
13497
{
135-
[Range(0, 1)] public float chance;
136-
[MinMax(0, 1)] public MinMaxFloat distance;
98+
Reset();
13799
}
138100

139-
[Serializable]
140-
public struct ModulationParams
101+
protected void OnDisable()
141102
{
142-
[MinMax(0, 2)] public MinMaxFloat volume;
143-
[Range(0, 1800)] public float period;
144-
public bool inverted;
103+
CueOut();
104+
}
145105

146-
// ReSharper disable once UnassignedField.Global
147-
internal CustomModulator custom;
106+
protected void OnEnable()
107+
{
108+
if (autoCue)
109+
{
110+
CueIn();
111+
}
112+
}
113+
114+
protected void Reset()
115+
{
116+
if (controller == Controller.None)
117+
{
118+
controller = !zone && !GetComponent<Zone>() ? Controller.User : Controller.Zone;
119+
}
120+
121+
enabled = controller != Controller.Zone;
122+
}
123+
124+
public enum Controller
125+
{
126+
None,
127+
User,
128+
Zone
148129
}
149130

150131
public interface CustomModulator
@@ -170,5 +151,23 @@ public struct GizmoParams
170151
{
171152
public Color color;
172153
}
154+
155+
[Serializable]
156+
public struct ModulationParams
157+
{
158+
[MinMax(0, 2)] public MinMaxFloat volume;
159+
[Range(0, 1800)] public float period;
160+
public bool inverted;
161+
162+
// ReSharper disable once UnassignedField.Global
163+
internal CustomModulator custom;
164+
}
165+
166+
[Serializable]
167+
public struct RandomizationParams
168+
{
169+
[Range(0, 1)] public float chance;
170+
[MinMax(0, 1)] public MinMaxFloat distance;
171+
}
173172
}
174173
}

src/Components/AudioParameters.cs

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,24 +30,18 @@ public struct AudioParameters
3030
volume =
3131
new MinMaxFloat
3232
{
33-
min = defaultVolume - defaultVariation,
34-
max = defaultVolume + defaultVariation
33+
min = defaultVolume - defaultVariation, max = defaultVolume + defaultVariation
3534
},
3635
pitch =
3736
new MinMaxFloat
3837
{
39-
min = defaultPitch - defaultVariation,
40-
max = defaultPitch + defaultVariation
38+
min = defaultPitch - defaultVariation, max = defaultPitch + defaultVariation
4139
},
4240
spatial =
4341
new SpatialParams
4442
{
4543
blend = defaultBlend,
46-
distance =
47-
new MinMaxFloat
48-
{
49-
min = defaultMinDistance, max = defaultMaxDistance
50-
},
44+
distance = new MinMaxFloat {min = defaultMinDistance, max = defaultMaxDistance},
5145
doppler = defaultDoppler
5246
},
5347
randomization = new RandomizationParams(),

src/Components/AudioProgram.cs

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,16 @@ public class AudioProgram
1414
{
1515
[Space(10)] [Colorize] public AudioClipParams[] clips;
1616

17-
[Colorize] public bool randomize = true;
18-
19-
[Colorize] public bool increment = true;
20-
2117
[Space(10)] [Colorize] public AudioMixerGroup mixerGroup;
2218

2319
[Space(10)]
2420
[Colorize]
2521
public AudioParameters audioParameters = AudioParameters.defaultAudioParameters;
2622

23+
[Colorize] public bool increment = true;
24+
25+
[Colorize] public bool randomize = true;
26+
2727
[NonSerialized] public int clipIndex;
2828

2929
[NonSerialized] public int lastFrame;
@@ -32,23 +32,6 @@ public class AudioProgram
3232

3333
[HideInInspector] public WeightedDecay weighted;
3434

35-
public void Initialize()
36-
{
37-
lastFrame = -1;
38-
clipIndex = 0;
39-
}
40-
41-
internal float GetMaxDuration()
42-
{
43-
var n = 0f;
44-
foreach (var c in clips)
45-
{
46-
n = Mathf.Max(n, c.clip.length);
47-
}
48-
49-
return n;
50-
}
51-
5235
public AudioClip GetClip(out float gain)
5336
{
5437
if (randomize)
@@ -145,6 +128,23 @@ Patch patch
145128
return false;
146129
}
147130

131+
public void Initialize()
132+
{
133+
lastFrame = -1;
134+
clipIndex = 0;
135+
}
136+
137+
internal float GetMaxDuration()
138+
{
139+
var n = 0f;
140+
foreach (var c in clips)
141+
{
142+
n = Mathf.Max(n, c.clip.length);
143+
}
144+
145+
return n;
146+
}
147+
148148
[Serializable]
149149
public struct AudioClipParams
150150
{

0 commit comments

Comments
 (0)