forked from MoonsideGames/FAudioGMS
				
			add 3d orientation API
							parent
							
								
									90250633de
								
							
						
					
					
						commit
						30cb6959e0
					
				
							
								
								
									
										
											BIN
										
									
								
								gamemaker/extensions/FAudioGMS/FAudioGMS.dll (Stored with Git LFS)
								
								
								
								
							
							
						
						
									
										
											BIN
										
									
								
								gamemaker/extensions/FAudioGMS/FAudioGMS.dll (Stored with Git LFS)
								
								
								
								
							
										
											Binary file not shown.
										
									
								
							|  | @ -181,6 +181,24 @@ | ||||||
|             2, |             2, | ||||||
|           ],"resourceVersion":"1.0","name":"FAudioGMS_SoundInstance_QueueSyncPlay","tags":[],"resourceType":"GMExtensionFunction",}, |           ],"resourceVersion":"1.0","name":"FAudioGMS_SoundInstance_QueueSyncPlay","tags":[],"resourceType":"GMExtensionFunction",}, | ||||||
|         {"externalName":"FAudioGMS_SoundInstance_SyncPlay","kind":1,"help":"FAudioGMS_SoundInstance_SyncPlay()","hidden":false,"returnType":2,"argCount":0,"args":[],"resourceVersion":"1.0","name":"FAudioGMS_SoundInstance_SyncPlay","tags":[],"resourceType":"GMExtensionFunction",}, |         {"externalName":"FAudioGMS_SoundInstance_SyncPlay","kind":1,"help":"FAudioGMS_SoundInstance_SyncPlay()","hidden":false,"returnType":2,"argCount":0,"args":[],"resourceVersion":"1.0","name":"FAudioGMS_SoundInstance_SyncPlay","tags":[],"resourceType":"GMExtensionFunction",}, | ||||||
|  |         {"externalName":"FAudioGMS_SoundInstance_Set3DOrientation","kind":1,"help":"FAudioGMS_SoundInstance_Set3DOrientation(soundInstanceID, xFront, yFront, zFront, xTop, yTop, zTop)","hidden":false,"returnType":2,"argCount":0,"args":[ | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |           ],"resourceVersion":"1.0","name":"FAudioGMS_SoundInstance_Set3DOrientation","tags":[],"resourceType":"GMExtensionFunction",}, | ||||||
|  |         {"externalName":"FAudioGMS_SetListenerOrientation","kind":1,"help":"FAudioGMS_SetListenerOrientation(soundInstanceID, xFront, yFront, zFront, xTop, yTop, zTop)","hidden":false,"returnType":2,"argCount":0,"args":[ | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |             2, | ||||||
|  |           ],"resourceVersion":"1.0","name":"FAudioGMS_SetListenerOrientation","tags":[],"resourceType":"GMExtensionFunction",}, | ||||||
|       ],"constants":[],"ProxyFiles":[ |       ],"constants":[],"ProxyFiles":[ | ||||||
|         {"TargetMask":7,"resourceVersion":"1.0","name":"libFAudioGMS.so","tags":[],"resourceType":"GMProxyFile",}, |         {"TargetMask":7,"resourceVersion":"1.0","name":"libFAudioGMS.so","tags":[],"resourceType":"GMProxyFile",}, | ||||||
|         {"TargetMask":3,"resourceVersion":"1.0","name":"FAudioGMSAndroidDummy.ext","tags":[],"resourceType":"GMProxyFile",}, |         {"TargetMask":3,"resourceVersion":"1.0","name":"FAudioGMSAndroidDummy.ext","tags":[],"resourceType":"GMProxyFile",}, | ||||||
|  | @ -202,6 +220,7 @@ | ||||||
|         {"name":"FAudioGMS_SoundInstance_SetVolume","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SoundInstance_SetVolume","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_SoundInstance_Set3DPosition","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SoundInstance_Set3DPosition","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_SoundInstance_Set3DVelocity","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SoundInstance_Set3DVelocity","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|  |         {"name":"FAudioGMS_SoundInstance_Set3DOrientation","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_SoundInstance_SetTrackPositionInSeconds","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SoundInstance_SetTrackPositionInSeconds","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_SoundInstance_SetPlayRegion","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SoundInstance_SetPlayRegion","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_SoundInstance_SetVolumeOverTime","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SoundInstance_SetVolumeOverTime","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|  | @ -225,6 +244,7 @@ | ||||||
|         {"name":"FAudioGMS_SetMasteringEffectGain","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SetMasteringEffectGain","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_SetListenerPosition","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SetListenerPosition","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_SetListenerVelocity","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_SetListenerVelocity","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|  |         {"name":"FAudioGMS_SetListenerOrientation","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_ResumeAll","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_ResumeAll","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_PauseAll","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_PauseAll","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|         {"name":"FAudioGMS_StopAll","path":"extensions/FAudioGMS/FAudioGMS.yy",}, |         {"name":"FAudioGMS_StopAll","path":"extensions/FAudioGMS/FAudioGMS.yy",}, | ||||||
|  |  | ||||||
|  | @ -1391,7 +1391,37 @@ void FAudioGMS_SoundInstance_Set3DVelocity( | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /* FIXME: this will die horribly if position is greater than total length */ | void FAudioGMS_SoundInstance_Set3DOrientation( | ||||||
|  |     double soundInstanceID, | ||||||
|  |     double xFront, | ||||||
|  |     double yFront, | ||||||
|  |     double zFront, | ||||||
|  |     double xTop, | ||||||
|  |     double yTop, | ||||||
|  |     double zTop) | ||||||
|  | { | ||||||
|  |     RETURN_ON_NULL_DEVICE_VOID | ||||||
|  |     FAudioGMS_SoundInstance *instance = | ||||||
|  |         FAudioGMS_INTERNAL_LookupSoundInstance((uint32_t)soundInstanceID); | ||||||
|  | 
 | ||||||
|  |     if (instance != NULL) | ||||||
|  |     { | ||||||
|  |         if (!instance->is3D) | ||||||
|  |         { | ||||||
|  |             Log("Not a 3D sound!"); | ||||||
|  |             return; | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         instance->emitter->OrientFront.x = xFront; | ||||||
|  |         instance->emitter->OrientFront.y = yFront; | ||||||
|  |         instance->emitter->OrientFront.z = zFront; | ||||||
|  | 
 | ||||||
|  |         instance->emitter->OrientTop.x = xTop; | ||||||
|  |         instance->emitter->OrientTop.y = yTop; | ||||||
|  |         instance->emitter->OrientTop.z = zTop; | ||||||
|  |     } | ||||||
|  | } | ||||||
|  |     /* FIXME: this will die horribly if position is greater than total length */ | ||||||
| void FAudioGMS_SoundInstance_SetTrackPositionInSeconds( | void FAudioGMS_SoundInstance_SetTrackPositionInSeconds( | ||||||
|     double soundInstanceID, |     double soundInstanceID, | ||||||
|     double trackPositionInSeconds) |     double trackPositionInSeconds) | ||||||
|  | @ -1618,7 +1648,25 @@ void FAudioGMS_SetListenerVelocity(double xVelocity, double yVelocity, double zV | ||||||
|     device->listener.Velocity.z = zVelocity; |     device->listener.Velocity.z = zVelocity; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static void FAudioGMS_INTERNAL_SoundInstance_Destroy(FAudioGMS_SoundInstance *instance) | void FAudioGMS_SetListenerOrientation( | ||||||
|  |     double soundInstanceID, | ||||||
|  |     double xFront, | ||||||
|  |     double yFront, | ||||||
|  |     double zFront, | ||||||
|  |     double xTop, | ||||||
|  |     double yTop, | ||||||
|  |     double zTop) | ||||||
|  | { | ||||||
|  |     RETURN_ON_NULL_DEVICE_VOID | ||||||
|  |     device->listener.OrientFront.x = xFront; | ||||||
|  |     device->listener.OrientFront.y = yFront; | ||||||
|  |     device->listener.OrientFront.z = zFront; | ||||||
|  |     device->listener.OrientTop.x = xTop; | ||||||
|  |     device->listener.OrientTop.y = yTop; | ||||||
|  |     device->listener.OrientTop.z = zTop; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  |  static void FAudioGMS_INTERNAL_SoundInstance_Destroy(FAudioGMS_SoundInstance *instance) | ||||||
| { | { | ||||||
|     uint32_t i; |     uint32_t i; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -78,6 +78,14 @@ extern "C" | ||||||
|         double xVelocity, |         double xVelocity, | ||||||
|         double yVelocity, |         double yVelocity, | ||||||
|         double zVelocity); |         double zVelocity); | ||||||
|  |     FAUDIOGMSAPI void FAudioGMS_SoundInstance_Set3DOrientation( | ||||||
|  |         double soundInstanceID, | ||||||
|  |         double xFront, | ||||||
|  |         double yFront, | ||||||
|  |         double zFront, | ||||||
|  |         double xTop, | ||||||
|  |         double yTop, | ||||||
|  |         double zTop); | ||||||
|     FAUDIOGMSAPI void FAudioGMS_SoundInstance_SetTrackPositionInSeconds( |     FAUDIOGMSAPI void FAudioGMS_SoundInstance_SetTrackPositionInSeconds( | ||||||
|         double soundInstanceID, |         double soundInstanceID, | ||||||
|         double trackPositionInSeconds); |         double trackPositionInSeconds); | ||||||
|  | @ -151,6 +159,14 @@ extern "C" | ||||||
|         double xVelocity, |         double xVelocity, | ||||||
|         double yVelocity, |         double yVelocity, | ||||||
|         double zVelocity); |         double zVelocity); | ||||||
|  |     FAUDIOGMSAPI void FAudioGMS_SetListenerOrientation( | ||||||
|  |         double soundInstanceID, | ||||||
|  |         double xFront, | ||||||
|  |         double yFront, | ||||||
|  |         double zFront, | ||||||
|  |         double xTop, | ||||||
|  |         double yTop, | ||||||
|  |         double zTop); | ||||||
| 
 | 
 | ||||||
|     FAUDIOGMSAPI void FAudioGMS_PauseAll();  /* useful for mobile platforms, etc
 |     FAUDIOGMSAPI void FAudioGMS_PauseAll();  /* useful for mobile platforms, etc
 | ||||||
|                                               */ |                                               */ | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue