This commit is contained in:
Alexander Filippov 2025-03-11 16:42:49 +01:00
parent d2c9941a75
commit ea2d65ad14
29 changed files with 239 additions and 644 deletions

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2cbeea2f9e8a9574b82e8eddfd9ef01d4f65d28326c0136c7cb3985109110cb2
size 2988128
oid sha256:4ea674f891c4ef49c28cc41f768b0081509653d866396b7fde856df40f2a1c24
size 2998624

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1beac2ebe1377ec424dc8f6315240426edd77a11aa95674296f3e83f43703d3a
size 23131504
oid sha256:4cd190359644655ac81b5b72a0a69dbbeae5af32572ba9d42e8e6687e8d772a8
size 22680408

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8adaa665b95078b5d372f4eeb049a3c17fc346d66b5316b2b457da4b74be5833
size 1987428
oid sha256:e47eb12902e33cb8677b33082000a15a2b137a0d4f658af4fa5ed671f861aa8d
size 1996504

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7c65e4adc09f2a1224d062bd1835dc8e435f0a9867aa46d844c9c36c251b18c0
size 19627132
oid sha256:7900e258070db5d0c2311984b8e7f597e5e0707457481f9d1e259db5cb6a71a9
size 19292724

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6572772b2aec9d9969c81339f71217139b060398de2569589a397ea0e4969c48
size 2495272
oid sha256:584c4b7bbda8b28b0ddeef7b9818697dbb3e1000f82a08e7291d1525e090f305
size 2505900

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3c54d600bfc4215fb73d091dba03ec753ba928cc10ef2c6784bae4104849f424
size 19807996
oid sha256:c00d835871f4ff42793f640ac71c558424e2cd3030cb6711b53a900d9209def6
size 19425724

View File

@ -1,9 +0,0 @@
fileFormatVersion: 2
guid: 0b0df2bea2345aa4f9e86bcacbc9608c
folderAsset: yes
timeCreated: 1500590827
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d44f1b1a71e4572158c720bfe8343af60b6f5579e1bbad5373697564785fcbc6
size 74648

View File

@ -1,121 +0,0 @@
fileFormatVersion: 2
guid: 2bcf76b2e4398cb49b45812674a7ec17
timeCreated: 1500675747
licenseType: Free
PluginImporter:
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 1
isOverridable: 0
platformData:
data:
first:
'': Any
second:
enabled: 0
settings:
Exclude Editor: 0
Exclude Linux: 0
Exclude Linux64: 1
Exclude LinuxUniversal: 0
Exclude OSXIntel: 1
Exclude OSXIntel64: 1
Exclude OSXUniversal: 1
Exclude Win: 0
Exclude Win64: 0
data:
first:
'': Editor
second:
enabled: 0
settings:
CPU: x86
OS: Linux
data:
first:
Any:
second:
enabled: 0
settings: {}
data:
first:
Editor: Editor
second:
enabled: 1
settings:
CPU: x86
DefaultValueInitialized: true
data:
first:
Facebook: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Facebook: Win64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: Linux
second:
enabled: 1
settings:
CPU: x86
data:
first:
Standalone: Linux64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: LinuxUniversal
second:
enabled: 1
settings:
CPU: x86
data:
first:
Standalone: OSXIntel
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: OSXIntel64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: OSXUniversal
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: Win64
second:
enabled: 1
settings:
CPU: None
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ea8609ab190d46cbe206672062005625fa3f67ff56b5372ba29c17e387f98fb5
size 17604252

View File

@ -1,121 +0,0 @@
fileFormatVersion: 2
guid: b73d370ef894b8d409fc51247d5b13cf
timeCreated: 1500675748
licenseType: Free
PluginImporter:
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
data:
first:
'': Any
second:
enabled: 0
settings:
Exclude Editor: 0
Exclude Linux: 0
Exclude Linux64: 1
Exclude LinuxUniversal: 0
Exclude OSXIntel: 1
Exclude OSXIntel64: 1
Exclude OSXUniversal: 1
Exclude Win: 0
Exclude Win64: 0
data:
first:
'': Editor
second:
enabled: 0
settings:
CPU: x86
OS: Linux
data:
first:
Any:
second:
enabled: 0
settings: {}
data:
first:
Editor: Editor
second:
enabled: 1
settings:
CPU: x86
DefaultValueInitialized: true
data:
first:
Facebook: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Facebook: Win64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: Linux
second:
enabled: 1
settings:
CPU: x86
data:
first:
Standalone: Linux64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: LinuxUniversal
second:
enabled: 1
settings:
CPU: x86
data:
first:
Standalone: OSXIntel
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: OSXIntel64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: OSXUniversal
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: Win64
second:
enabled: 1
settings:
CPU: None
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a4824a29e7e3516f886513597b780899a6c6f5093457af8d6337bef5bd393099
size 72792
oid sha256:b66769d31cf177576b51385eda69274c7f9f26c187ccca2c882d697d16bf1cf5
size 76824

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a210a6fc5aa3e0d068a74c89b82eadec1fe199e270ef88b3f2ddf4b4c7277260
size 20861840
oid sha256:179edfa33d66bfdb7c73ef5845328ca6c852d2dc2f05b5ad39a0bd15038323f9
size 20814672

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: b350a431a2f520b4b9d3e7227b7ec517
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f48bde8e1c20d42341d1fed4fa902cc2e98deb97a6dfba356b86744a08292da8
size 119808

View File

@ -1,121 +0,0 @@
fileFormatVersion: 2
guid: 034df7716f3c2ee43b6049cbd524c6d7
timeCreated: 1500675747
licenseType: Free
PluginImporter:
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 1
isOverridable: 0
platformData:
data:
first:
'': Any
second:
enabled: 0
settings:
Exclude Editor: 0
Exclude Linux: 0
Exclude Linux64: 0
Exclude LinuxUniversal: 0
Exclude OSXIntel: 0
Exclude OSXIntel64: 0
Exclude OSXUniversal: 0
Exclude Win: 0
Exclude Win64: 1
data:
first:
'': Editor
second:
enabled: 0
settings:
CPU: x86
OS: Windows
data:
first:
Any:
second:
enabled: 0
settings: {}
data:
first:
Editor: Editor
second:
enabled: 1
settings:
CPU: x86
DefaultValueInitialized: true
data:
first:
Facebook: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Facebook: Win64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: Linux
second:
enabled: 1
settings:
CPU: x86
data:
first:
Standalone: Linux64
second:
enabled: 1
settings:
CPU: None
data:
first:
Standalone: LinuxUniversal
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: OSXIntel
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: OSXIntel64
second:
enabled: 1
settings:
CPU: None
data:
first:
Standalone: OSXUniversal
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: Win64
second:
enabled: 0
settings:
CPU: None
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d3651fe55fd9ae3678bdd23bbc721ee65939e81ae1992b4c9ccac5793c0ca00
size 16401408

View File

@ -1,121 +0,0 @@
fileFormatVersion: 2
guid: df5a46ce5e3327545a16c08880340232
timeCreated: 1500675748
licenseType: Free
PluginImporter:
serializedVersion: 2
iconMap: {}
executionOrder: {}
isPreloaded: 0
isOverridable: 0
platformData:
data:
first:
'': Any
second:
enabled: 0
settings:
Exclude Editor: 0
Exclude Linux: 0
Exclude Linux64: 0
Exclude LinuxUniversal: 0
Exclude OSXIntel: 0
Exclude OSXIntel64: 0
Exclude OSXUniversal: 0
Exclude Win: 0
Exclude Win64: 1
data:
first:
'': Editor
second:
enabled: 0
settings:
CPU: x86
OS: Windows
data:
first:
Any:
second:
enabled: 0
settings: {}
data:
first:
Editor: Editor
second:
enabled: 1
settings:
CPU: x86
DefaultValueInitialized: true
data:
first:
Facebook: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Facebook: Win64
second:
enabled: 0
settings:
CPU: None
data:
first:
Standalone: Linux
second:
enabled: 1
settings:
CPU: x86
data:
first:
Standalone: Linux64
second:
enabled: 1
settings:
CPU: None
data:
first:
Standalone: LinuxUniversal
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: OSXIntel
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: OSXIntel64
second:
enabled: 1
settings:
CPU: None
data:
first:
Standalone: OSXUniversal
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: Win
second:
enabled: 1
settings:
CPU: AnyCPU
data:
first:
Standalone: Win64
second:
enabled: 0
settings:
CPU: None
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3dad7fe151ae0f3a32d820a00c4c832c8bfe987bd8531f1a959815a49a9bfbe7
size 154112
oid sha256:b2819153a48ff1bd3c228fea18832020b76015a7d49a5fb5cb3895f5f11a1935
size 154624

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0d2a68d4017d1a1c50e2324da9d591788c351bf60e7a4ec4583c7de4c275433b
size 20901376
oid sha256:bfdc19808a45884520360b389d8a7cd5ad2a577852e394d2959eaf356a84d1a6
size 29355520

View File

@ -30,18 +30,63 @@ namespace SteamAudio
public static class Build
{
public static void BuildSteamAudio()
{
var baseAssets = new string[]
{
"Assets/Plugins/SteamAudio/SteamAudioUnity.asmdef",
"Assets/Plugins/SteamAudio/Binaries",
"Assets/Plugins/SteamAudio/Resources",
"Assets/Plugins/SteamAudio/Scripts/Runtime",
"Assets/Plugins/SteamAudio/Scripts/Editor",
};
var fmodAssets = new string[]
{
"Assets/Plugins/SteamAudio/Scripts/FMODStudio",
"Assets/Plugins/FMOD/platforms/win/lib/x86/phonon_fmod.dll",
"Assets/Plugins/FMOD/platforms/win/lib/x86_64/phonon_fmod.dll",
"Assets/Plugins/FMOD/platforms/linux/lib/x86/libphonon_fmod.so",
"Assets/Plugins/FMOD/platforms/linux/lib/x86_64/libphonon_fmod.so",
"Assets/Plugins/FMOD/platforms/mac/lib/phonon_fmod.bundle",
"Assets/Plugins/FMOD/platforms/android/lib/armeabi-v7a/libphonon_fmod.so",
"Assets/Plugins/FMOD/platforms/android/lib/arm64-v8a/libphonon_fmod.so",
"Assets/Plugins/FMOD/platforms/android/lib/x86/libphonon_fmod.so",
"Assets/Plugins/FMOD/platforms/ios/lib/libphonon_fmod.a",
};
var wwiseAssets = new string[]
{
"Assets/Plugins/SteamAudio/Scripts/Wwise",
"Assets/Wwise/API/Runtime/Plugins/Windows/x86/DSP/SteamAudioWwise.dll",
"Assets/Wwise/API/Runtime/Plugins/Windows/x86_64/DSP/SteamAudioWwise.dll",
"Assets/Wwise/API/Runtime/Plugins/Linux/x86_64/DSP/libSteamAudioWwise.so",
"Assets/Wwise/API/Runtime/Plugins/Mac/DSP/libSteamAudioWwise.bundle",
"Assets/Wwise/API/Runtime/Plugins/Android/armeabi-v7a/DSP/libSteamAudioWwise.so",
"Assets/Wwise/API/Runtime/Plugins/Android/arm64-v8a/DSP/libSteamAudioWwise.so",
"Assets/Wwise/API/Runtime/Plugins/Android/x86/DSP/libSteamAudioWwise.so",
"Assets/Wwise/API/Runtime/Plugins/iOS/iphoneos/DSP/SteamAudioWwiseFXFactory.h",
"Assets/Wwise/API/Runtime/Plugins/iOS/iphoneos/DSP/libSteamAudioWwiseFX.a",
"Assets/Wwise/API/Runtime/Plugins/iOS/iphonesimulator/DSP/SteamAudioWwiseFXFactory.h",
"Assets/Wwise/API/Runtime/Plugins/iOS/iphonesimulator/DSP/libSteamAudioWwiseFX.a",
};
BuildPackage("SteamAudio", baseAssets);
BuildPackage("SteamAudioFMODStudio", fmodAssets);
BuildPackage("SteamAudioWwise", wwiseAssets);
}
private static void BuildPackage(string name, string[] assets)
{
var args = Environment.GetCommandLineArgs();
var lastArg = args[args.Length - 1];
var fileName = "SteamAudio.unitypackage";
var fileName = name + ".unitypackage";
if (lastArg != "SteamAudio.Build.BuildSteamAudio")
{
fileName = lastArg + "/" + fileName;
}
var assets = new string[] { "Assets/Plugins" };
AssetDatabase.ExportPackage(assets, fileName, ExportPackageOptions.Recurse);
}
}
@ -59,6 +104,7 @@ namespace SteamAudio
NamedBuildTarget.Standalone,
NamedBuildTarget.Android,
NamedBuildTarget.iOS,
NamedBuildTarget.WebGL,
};
foreach (var supportedPlatform in supportedPlatforms)

View File

@ -23,6 +23,7 @@ namespace SteamAudio
public class SteamAudioSettingsInspector : Editor
{
SerializedProperty mAudioEngine;
SerializedProperty mHRTFDisabled;
SerializedProperty mPerspectiveCorrection;
SerializedProperty mPerspectiveCorrectionFactor;
SerializedProperty mHRTFVolumeNormalizationType;
@ -77,6 +78,7 @@ namespace SteamAudio
private void OnEnable()
{
mAudioEngine = serializedObject.FindProperty("audioEngine");
mHRTFDisabled = serializedObject.FindProperty("hrtfDisabled");
mPerspectiveCorrection = serializedObject.FindProperty("perspectiveCorrection");
mPerspectiveCorrectionFactor = serializedObject.FindProperty("perspectiveCorrectionFactor");
mHRTFVolumeGainDB = serializedObject.FindProperty("hrtfVolumeGainDB");
@ -126,6 +128,7 @@ namespace SteamAudio
serializedObject.Update();
EditorGUILayout.PropertyField(mAudioEngine);
EditorGUILayout.PropertyField(mHRTFDisabled, new UnityEngine.GUIContent("Disable HRTF Globally", "Disable HRTF rendering for all events/sources. Useful when the end user is using speakers instead of headphones."));
EditorGUILayout.PropertyField(mPerspectiveCorrection, new UnityEngine.GUIContent("Enable Perspective Correction"));
if (mPerspectiveCorrection.boolValue)

View File

@ -16,7 +16,6 @@
#if STEAMAUDIO_ENABLED
using System;
using System.Reflection;
using UnityEngine;
namespace SteamAudio
@ -43,6 +42,8 @@ namespace SteamAudio
return new UnityAudioEngineSource();
case AudioEngineType.FMODStudio:
return CreateFMODStudioAudioEngineSource();
case AudioEngineType.Wwise:
return CreateWwiseAudioEngineSource();
default:
return null;
}
@ -50,9 +51,18 @@ namespace SteamAudio
private static AudioEngineSource CreateFMODStudioAudioEngineSource()
{
var type = Type.GetType("SteamAudio.FMODStudioAudioEngineSource,SteamAudioUnity");
var type = Type.GetType("SteamAudio.FMODStudioAudioEngineSource,SteamAudioFMODStudio");
return (type != null) ? (AudioEngineSource) Activator.CreateInstance(type) : null;
}
private static AudioEngineSource CreateWwiseAudioEngineSource()
{
var type = Type.GetType("SteamAudio.WwiseAudioEngineSource,SteamAudioWwiseUnity");
if (type == null)
return null;
return (AudioEngineSource) Activator.CreateInstance(type);
}
}
}

View File

@ -16,9 +16,7 @@
#if STEAMAUDIO_ENABLED
using System;
using System.Reflection;
using UnityEngine;
using SteamAudio;
namespace SteamAudio
{
@ -47,6 +45,8 @@ namespace SteamAudio
return new UnityAudioEngineState();
case AudioEngineType.FMODStudio:
return CreateFMODStudioAudioEngineState();
case AudioEngineType.Wwise:
return CreateWwiseAudioEngineState();
default:
return null;
}
@ -54,9 +54,21 @@ namespace SteamAudio
private static AudioEngineState CreateFMODStudioAudioEngineState()
{
var type = Type.GetType("SteamAudio.FMODStudioAudioEngineState,SteamAudioUnity");
var type = Type.GetType("SteamAudio.FMODStudioAudioEngineState,SteamAudioFMODStudio");
return (type != null) ? (AudioEngineState) Activator.CreateInstance(type) : null;
}
private static AudioEngineState CreateWwiseAudioEngineState()
{
var type = Type.GetType("SteamAudio.WwiseAudioEngineState,SteamAudioWwiseUnity");
if (type == null)
return null;
return (AudioEngineState) Activator.CreateInstance(type);
}
public virtual void SetHRTFDisabled(bool disabled)
{ }
}
public abstract class AudioEngineStateHelpers
@ -73,6 +85,8 @@ namespace SteamAudio
return new UnityAudioEngineStateHelpers();
case AudioEngineType.FMODStudio:
return CreateFMODStudioAudioEngineStateHelpers();
case AudioEngineType.Wwise:
return CreateWwiseAudioEngineStateHelpers();
default:
return null;
}
@ -80,9 +94,18 @@ namespace SteamAudio
private static AudioEngineStateHelpers CreateFMODStudioAudioEngineStateHelpers()
{
var type = Type.GetType("SteamAudio.FMODStudioAudioEngineStateHelpers,SteamAudioUnity");
var type = Type.GetType("SteamAudio.FMODStudioAudioEngineStateHelpers,SteamAudioFMODStudio");
return (type != null) ? (AudioEngineStateHelpers) Activator.CreateInstance(type) : null;
}
private static AudioEngineStateHelpers CreateWwiseAudioEngineStateHelpers()
{
var type = Type.GetType("SteamAudio.WwiseAudioEngineStateHelpers,SteamAudioWwiseUnity");
if (type == null)
return null;
return (AudioEngineStateHelpers) Activator.CreateInstance(type);
}
}
}

View File

@ -25,8 +25,8 @@ namespace SteamAudio
public static class Constants
{
public const uint kVersionMajor = 4;
public const uint kVersionMinor = 5;
public const uint kVersionPatch = 1;
public const uint kVersionMinor = 6;
public const uint kVersionPatch = 0;
public const uint kVersion = (kVersionMajor << 16) | (kVersionMinor << 8) | kVersionPatch;
}
@ -666,21 +666,21 @@ namespace SteamAudio
{
// Context
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplContextCreate(ref ContextSettings settings, out IntPtr context);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplContextRetain(IntPtr context);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -689,7 +689,7 @@ namespace SteamAudio
// Geometry
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -698,35 +698,35 @@ namespace SteamAudio
// Serialization
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplSerializedObjectCreate(IntPtr context, ref SerializedObjectSettings settings, out IntPtr serializedObject);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplSerializedObjectRetain(IntPtr serializedObject);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSerializedObjectRelease(ref IntPtr serializedObject);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern UIntPtr iplSerializedObjectGetSize(IntPtr serializedObject);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -735,21 +735,21 @@ namespace SteamAudio
// Embree
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplEmbreeDeviceCreate(IntPtr context, ref EmbreeDeviceSettings settings, out IntPtr device);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplEmbreeDeviceRetain(IntPtr device);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -758,56 +758,56 @@ namespace SteamAudio
// OpenCL
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplOpenCLDeviceListCreate(IntPtr context, ref OpenCLDeviceSettings settings, out IntPtr deviceList);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplOpenCLDeviceListRetain(IntPtr deviceList);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplOpenCLDeviceListRelease(ref IntPtr deviceList);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern int iplOpenCLDeviceListGetNumDevices(IntPtr deviceList);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplOpenCLDeviceListGetDeviceDesc(IntPtr deviceList, int index, out OpenCLDeviceDesc deviceDesc);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplOpenCLDeviceCreate(IntPtr context, IntPtr deviceList, int index, out IntPtr device);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplOpenCLDeviceRetain(IntPtr device);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -816,21 +816,21 @@ namespace SteamAudio
// Radeon Rays
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplRadeonRaysDeviceCreate(IntPtr openCLDevice, ref RadeonRaysDeviceSettings settings, out IntPtr rrDevice);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplRadeonRaysDeviceRetain(IntPtr device);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -839,21 +839,21 @@ namespace SteamAudio
// TrueAudio Next
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplTrueAudioNextDeviceCreate(IntPtr openCLDevice, ref TrueAudioNextDeviceSettings settings, out IntPtr tanDevice);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplTrueAudioNextDeviceRetain(IntPtr device);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -862,140 +862,140 @@ namespace SteamAudio
// Scene
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplSceneCreate(IntPtr context, ref SceneSettings settings, out IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplSceneRetain(IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSceneRelease(ref IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplSceneLoad(IntPtr context, ref SceneSettings settings, IntPtr serializedObject, ProgressCallback progressCallback, IntPtr progressCallbackUserData, out IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSceneSave(IntPtr scene, IntPtr serializedObject);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSceneSaveOBJ(IntPtr scene, string fileBaseName);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSceneCommit(IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplStaticMeshCreate(IntPtr scene, ref StaticMeshSettings settings, out IntPtr staticMesh);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplStaticMeshRetain(IntPtr staticMesh);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplStaticMeshRelease(ref IntPtr staticMesh);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplStaticMeshLoad(IntPtr scene, IntPtr serializedObject, ProgressCallback progressCallback, IntPtr progressCallbackUserData, out IntPtr staticMesh);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplStaticMeshSave(IntPtr staticMesh, IntPtr serializedObject);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplStaticMeshAdd(IntPtr staticMesh, IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplStaticMeshRemove(IntPtr staticMesh, IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplInstancedMeshCreate(IntPtr scene, ref InstancedMeshSettings settings, out IntPtr instancedMesh);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplInstancedMeshRetain(IntPtr instancedMesh);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplInstancedMeshRelease(ref IntPtr instancedMesh);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplInstancedMeshAdd(IntPtr instancedMesh, IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplInstancedMeshRemove(IntPtr instancedMesh, IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -1004,21 +1004,21 @@ namespace SteamAudio
// HRTF
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplHRTFCreate(IntPtr context, ref AudioSettings audioSettings, ref HRTFSettings hrtfSettings, out IntPtr hrtf);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplHRTFRetain(IntPtr hrtf);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -1027,126 +1027,126 @@ namespace SteamAudio
// Probes
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplProbeArrayCreate(IntPtr context, out IntPtr probeArray);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplProbeArrayRetain(IntPtr probeArray);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeArrayRelease(ref IntPtr probeArray);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeArrayGenerateProbes(IntPtr probeArray, IntPtr scene, ref ProbeGenerationParams generationParams);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern int iplProbeArrayGetNumProbes(IntPtr probeArray);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Sphere iplProbeArrayGetProbe(IntPtr probeArray, int index);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplProbeBatchCreate(IntPtr context, out IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplProbeBatchRetain(IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeBatchRelease(ref IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplProbeBatchLoad(IntPtr context, IntPtr serializedObject, out IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeBatchSave(IntPtr probeBatch, IntPtr serializedObject);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern int iplProbeBatchGetNumProbes(IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeBatchAddProbe(IntPtr probeBatch, Sphere probe);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeBatchAddProbeArray(IntPtr probeBatch, IntPtr probeArray);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeBatchRemoveProbe(IntPtr probeBatch, int index);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeBatchCommit(IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplProbeBatchRemoveData(IntPtr probeBatch, ref BakedDataIdentifier identifier);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -1155,28 +1155,28 @@ namespace SteamAudio
// Baking
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplReflectionsBakerBake(IntPtr context, ref ReflectionsBakeParams bakeParams, ProgressCallback progressCallback, IntPtr userData);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplReflectionsBakerCancelBake(IntPtr context);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplPathBakerBake(IntPtr context, ref PathBakeParams bakeParams, ProgressCallback progressCallback, IntPtr userData);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -1185,126 +1185,126 @@ namespace SteamAudio
// Run-Time Simulation
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplSimulatorCreate(IntPtr context, ref SimulationSettings settings, out IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplSimulatorRetain(IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorRelease(ref IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorSetScene(IntPtr simulator, IntPtr scene);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorAddProbeBatch(IntPtr simulator, IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorRemoveProbeBatch(IntPtr simulator, IntPtr probeBatch);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorSetSharedInputs(IntPtr simulator, SimulationFlags flags, ref SimulationSharedInputs sharedInputs);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorCommit(IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorRunDirect(IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorRunReflections(IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSimulatorRunPathing(IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern Error iplSourceCreate(IntPtr simulator, ref SourceSettings settings, out IntPtr source);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern IntPtr iplSourceRetain(IntPtr source);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSourceRelease(ref IntPtr source);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSourceAdd(IntPtr source, IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSourceRemove(IntPtr source, IntPtr simulator);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
#endif
public static extern void iplSourceSetInputs(IntPtr source, SimulationFlags flags, ref SimulationInputs inputs);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("phonon")]
@ -1313,60 +1313,67 @@ namespace SteamAudio
// UNITY PLUGIN
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnityInitialize(IntPtr context);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnitySetPerspectiveCorrection(PerspectiveCorrection correction);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnitySetHRTF(IntPtr hrtf);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnitySetSimulationSettings(SimulationSettings simulationSettings);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnitySetReverbSource(IntPtr reverbSource);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern int iplUnityAddSource(IntPtr source);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnityRemoveSource(int handle);
#if UNITY_IOS && !UNITY_EDITOR
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnityTerminate();
#if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
[DllImport("__Internal")]
#else
[DllImport("audioplugin_phonon")]
#endif
public static extern void iplUnitySetHRTFDisabled(bool disabled);
}
}

View File

@ -506,6 +506,7 @@ namespace SteamAudio
if (mAudioEngineState == null)
return;
mAudioEngineState.SetHRTFDisabled(SteamAudioSettings.Singleton.hrtfDisabled);
var perspectiveCorrection = GetPerspectiveCorrection();
mAudioEngineState.SetPerspectiveCorrection(perspectiveCorrection);
@ -1260,6 +1261,12 @@ namespace SteamAudio
var dataAsset = (!exportOBJ) ? GetDataAsset(dynamicObject) : null;
var objFileName = (exportOBJ) ? GetOBJFileName(dynamicObject) : "";
if (!exportOBJ && dataAsset == null)
return;
if (exportOBJ && (objFileName == null || objFileName.Length == 0))
return;
Export(objects, dynamicObject.name, dataAsset, objFileName, true, exportOBJ);
}

View File

@ -24,7 +24,8 @@ namespace SteamAudio
public enum AudioEngineType
{
Unity,
FMODStudio
FMODStudio,
Wwise
}
[CreateAssetMenu(menuName = "Steam Audio/Steam Audio Settings")]
@ -34,6 +35,7 @@ namespace SteamAudio
public AudioEngineType audioEngine = AudioEngineType.Unity;
[Header("HRTF Settings")]
public bool hrtfDisabled = false;
public bool perspectiveCorrection = false;
[Range(.25f, 4.0f)]
public float perspectiveCorrectionFactor = 1.0f;

View File

@ -226,9 +226,12 @@ namespace SteamAudio
}
~SteamAudioSource()
{
if (mThis.IsAllocated)
{
mThis.Free();
}
}
private void OnEnable()
{
@ -510,7 +513,7 @@ namespace SteamAudio
case AudioRolloffMode.Logarithmic:
if (distance < rMin)
return 1.0f;
else if (distance < rMax)
else if (distance > rMax)
return 0.0f;
else
return rMin / distance;

View File

@ -49,6 +49,13 @@ namespace SteamAudio
{
API.iplUnitySetReverbSource(reverbSource.Get());
}
public override void SetHRTFDisabled(bool disabled)
{
base.SetHRTFDisabled(disabled);
API.iplUnitySetHRTFDisabled(disabled);
}
}
public sealed class UnityAudioEngineStateHelpers : AudioEngineStateHelpers