public interface IAudioEffectAssetAn effect, as a file declares it.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
An interface with a [DataContract] name per implementation, which is how the rest of the engine does polymorphism in a file — the contract name is the YAML tag, so !ReverbEffect selects the type and nothing keeps a registration table in sync. The compositor asset in Vixen.Rendering is the same arrangement.
A parallel model, not annotations on the effects themselves. An IAudioEffect owns delay lines, filter state and a comb bank; the asset owns numbers. Merging them would mean a type that is half serialisable, and the half that is not is the half that matters at run time — nobody wants a reverb's tail in a file.
Create is a method and not a lookup table. Constructing an effect from a name would be reflection, which ADR-002 forbids in runtime code and which does not survive trimming. Every asset knows what it makes.
Fields and properties (1)
bool EnabledWhether the effect starts switched on.
Methods (1)
IAudioEffect Create()Builds the effect this describes.
Used by (20)
- BitCrusherEffectAssetVixen.Audio
- CompressorEffectAssetVixen.Audio
- DelayEffectAssetVixen.Audio
- DistortionEffectAssetVixen.Audio
- EqualizerEffectAssetVixen.Audio
- FilterEffectAssetVixen.Audio
- GateEffectAssetVixen.Audio
- LimiterEffectAssetVixen.Audio
- MixerAssetTestsVixen.Audio.Tests
- MixerBuilderVixen.Audio
- MixerBusAssetVixen.Audio
- ModulatedDelayEffectAssetVixen.Audio
- PhaserEffectAssetVixen.Audio
- PitchShiftEffectAssetVixen.Audio
- ReverbEffectAssetVixen.Audio
- SpectrumAnalyzerEffectAssetVixen.Audio
- TypeRegistrationVixen.Audio
- Vixen_Audio_Assets_MixerBusAssetSerializerVixen.Audio
- AudioMixerDocumentVixen.Editor.AssetEditors
- AudioMixerViewVixen.Editor.AssetEditors