Re: Units for position?

[email protected] Tue, 1 Jan 2013 02:01:38 -0500
Newsgroups gmane.comp.lib.openal
Message-ID <[email protected]>
Turns out I have a follow-up distance.

I presume the reference distance is treated as a radius from the Listener
position, yes? so (1, 0, 0) is the same distance as (0,1,0) is the same
distance as (sqrt(2), sqrt(2), 0)?

- Mark


> Ah-hah!
>
> That would appear to be EXACTLY what I needed to know.
>
> Hmm... I'll have to provide a way to set the reference distance, so that
> it matches the measurement units my user will use to describe their
> layout, but that shouldn't be too hard.
>
> Thanks!!
>
> - Mark
>
>
>> On 12/29/2012 04:12 PM, [email protected] wrote:
>>> Hey all!
>>>
>>> I hope you are in the midst of having a great holiday season!
>>
>> Hi! :)
>>
>>> I've been working on a demo, and it occurs to me that I have no idea
>>> what
>>> units are used in the position coordinates, nor how to set or change
>>> them
>>> if I need to use something different.
>>
>> In practical terms, unextended OpenAL uses scale-invariant units. That
>> is to say, it doesn't matter whether you're using meters, feet,
>> centimeters, inches, etc... as long as /all/ distance values use the
>> same scale, you'll get the same output.
>>
>> A common pitfall, however, is to ignore or set an improper value for
>> AL_REFERENCE_DISTANCE on sources. This is essentially the distance from
>> the sound that the audio was originally recorded at, or more basically,
>> the in-game distance where the source should not be attenuated. So for
>> example, if you had this set to 1 when using a scale of 1 unit = 1
>> meter, you'd want to set it to 100 if using 1 unit = 1 centimeter to
>> keep the scale correct.
>>
>>
>> When using EFX, there is a setting to specify the unit scale. This
>> setting applies to certain effects, like the air absorption effect which
>> defines high-frequency attenuation in meters rather than units. This
>> scale can be set using the listener's AL_METERS_PER_UNIT property, and
>> it defaults to 1.
>>
>>> So what surprised me is that these distances seem to be "too far away"
>>> -
>>> the volume attenuation basically shuts the sounds off.  If I use
>>> arbitrary
>>> but small numbers FC=(0, 0, 1) BC=(0,0,3), LT=(-1,0,2), RT=(1,0,2) it
>>> seems to work OK.
>>
>> Then you'll want to increase the source's AL_REFERENCE_DISTANCE until
>> you get good attenuation levels. Every doubling of the distance from the
>> reference distance halves the gain, so at a distance of 10 with a ref
>> distance of 1, you'll basically have an attenuation of 1/10, or 0.1.
>> Increase the ref distance to 5 and you'll get an attenuation of 5/10, or
>> 0.5, at the same distance.
>> _______________________________________________
>> Openal mailing list
>> [email protected]
>> http://opensource.creative.com/mailman/listinfo/openal
>>
>
>
> _______________________________________________
> Openal mailing list
> [email protected]
> http://opensource.creative.com/mailman/listinfo/openal
>


_______________________________________________
Openal mailing list
[email protected]
http://opensource.creative.com/mailman/listinfo/openal