mirror of
https://github.com/Ryujinx/Opentk.git
synced 2024-12-25 16:55:28 +00:00
added Bind* Helpers.
This commit is contained in:
parent
d24cc61a23
commit
08409b1ca3
|
@ -498,7 +498,16 @@ namespace OpenTK.OpenAL
|
|||
Source(sid,(Enums.ALSourcei) param,( value ) ? 1 : 0);
|
||||
}
|
||||
|
||||
// <summary>This function sets 3 integer properties of a source. This property is used to establish connections between Sources and Auxiliary Effect Slots.</summary>
|
||||
/// <summary>(Helper) Binds a Buffer to a Source handle.</summary>
|
||||
/// <param name="source">Source name to attach the Buffer to.</param>
|
||||
/// <param name="buffer">Buffer name which is attached to the Source.</param>
|
||||
[CLSCompliant(false)]
|
||||
public static void BindBufferToSource( uint source,uint buffer )
|
||||
{
|
||||
Source(source,Enums.ALSourcei.Buffer,(int)buffer);
|
||||
}
|
||||
|
||||
/// <summary>This function sets 3 integer properties of a source. This property is used to establish connections between Sources and Auxiliary Effect Slots.</summary>
|
||||
/// <param name="sid">Source name whose attribute is being set.</param>
|
||||
/// <param name="param">The name of the attribute to set: EfxAuxiliarySendFilter</param>
|
||||
/// <param name="value1">The value to set the attribute to. (EFX Extension) The destination Auxiliary Effect Slot ID</param>
|
||||
|
@ -508,6 +517,18 @@ namespace OpenTK.OpenAL
|
|||
public static extern void Source( uint sid,Enums.ALSource3i param,int value1,int value2,int value3 );
|
||||
// AL_API void AL_APIENTRY alSource3i( ALuint sid, ALenum param, ALint value1, ALint value2, ALint value3 );
|
||||
|
||||
|
||||
/// <summary>(Helper) Reroutes a Source's output into an Auxiliary Effect Slot.</summary>
|
||||
/// <param name="source">The Source handle who's output is forwarded.</param>
|
||||
/// <param name="slot">The Auxiliary Effect Slot handle that receives input from the Source.</param>
|
||||
/// <param name="slotnumber">Every Source has only a limited number of slots it can feed data to. The number must stay below AlcContextAttributes.EfxMaxAuxiliarySends</param>
|
||||
/// <param name="filter">Filter handle to be attached between Source ouput and Auxiliary Slot input. Use 0 or EfxFilterType.FilterNull for no filter. </param>
|
||||
[CLSCompliant(false)]
|
||||
public static void BindSourceToAuxiliarySlot( uint source,uint slot,int slotnumber, uint filter )
|
||||
{
|
||||
AL.Source(source,Enums.ALSource3i.EfxAuxiliarySendFilter,(int) slot,slotnumber,(int) filter);
|
||||
}
|
||||
|
||||
// Not used by any Enum:
|
||||
// AL_API void AL_APIENTRY alSourcefv( ALuint sid, ALenum param, const ALfloat* values );
|
||||
// AL_API void AL_APIENTRY alSourceiv( ALuint sid, ALenum param, const ALint* values );
|
||||
|
|
|
@ -139,8 +139,8 @@ namespace OpenTK.OpenAL
|
|||
Imported_alEffecti(eid,param,value);
|
||||
}
|
||||
|
||||
/// <summary>(Helper) internally calls alEffecti(eid,Enums.EfxEffecti.EffectType,(int) type)</summary>
|
||||
/// <param name="eid">Effect id.</param>
|
||||
/// <summary>(Helper) Selects the Effect type used by this Effect handle.</summary>
|
||||
/// <param name="eid">Effect id returned from a successful call to Efx.GenEffects.</param>
|
||||
/// <param name="type">Effect type.</param>
|
||||
[CLSCompliant(false)]
|
||||
public void BindEffect( uint eid,Enums.EfxEffectType type )
|
||||
|
@ -612,6 +612,15 @@ namespace OpenTK.OpenAL
|
|||
Imported_alAuxiliaryEffectSloti(asid,param,value);
|
||||
}
|
||||
|
||||
/// <summary>(Helper) Attaches an Effect to an Auxiliary Effect Slot.</summary>
|
||||
/// <param name="auxiliaryeffectslot">The slot handle to attach the Effect to.</param>
|
||||
/// <param name="effect">The Effect handle that is being attached.</param>
|
||||
[CLSCompliant(false)]
|
||||
public void BindEffectToAuxiliarySlot( uint auxiliaryeffectslot,uint effect )
|
||||
{
|
||||
AuxiliaryEffectSlot(auxiliaryeffectslot,Enums.EfxAuxiliaryi.EffectslotEffect,(int) effect);
|
||||
}
|
||||
|
||||
#endregion alAuxiliaryEffectSloti
|
||||
|
||||
#region alAuxiliaryEffectSlotf
|
||||
|
|
|
@ -22,8 +22,7 @@ Efx: Functions not imported:
|
|||
alEffectiv, alGetEffectiv
|
||||
alFilteriv, alFilterfv, alGetFilteriv, alGetFilterfv
|
||||
alAuxiliaryEffectSlotiv, alAuxiliaryEffectSlotfv, alGetAuxiliaryEffectSlotiv, alGetAuxiliaryEffectSlotfv
|
||||
|
||||
- Added AL.Null for convenience when working with C Manuals.
|
||||
|
||||
- Added Function AL.GetErrorString()
|
||||
- Added overloads for requesting/deleting a single buffer/source at a time.
|
||||
- Refactored -i -fv -3f functions to be overloads e.g AL.GetSource, AL.GetListener
|
||||
|
@ -35,13 +34,15 @@ Alpha v0.9
|
|||
-added alEffectfv and alGetEffectfv
|
||||
-ported samples from SDK
|
||||
|
||||
Alpha v0.95
|
||||
-full cleanup of AL class documentation
|
||||
-added *.Bind* helpers.
|
||||
|
||||
|
||||
Todo for beta:
|
||||
- Identify: AL_FILTER_FIRST_PARAMETER, AL_FILTER_LAST_PARAMETER
|
||||
AL_EFFECT_FIRST_PARAMETER, AL_EFFECT_LAST_PARAMETER
|
||||
- AL.BindBuffer helper function ala GL.BindBuffer? (Wraps AL.Source, better consistency)
|
||||
- change all "name" into "handle" to avoid confusion?
|
||||
- replace EaxEfx reverbs with Efx reverbs.
|
||||
|
||||
Todo for final:
|
||||
- Enums themselves require summaries (do after some more serious tests)
|
Loading…
Reference in a new issue