OpenAL:如何使用线性衰减

OpenAL: How to use linear attenuation?

本文关键字:线性 衰减 何使用 OpenAL      更新时间:2023-10-16

我想控制声源音量淡出的方式,我怎么能做到这一点?

编辑:我也想知道如何相应地缩放声音坐标系统:我不想听到一些声音离源很远:现在我必须改变我的渲染代码缩放坐标,使其按我想要的工作。

Edit2:虽然,一个解决方案可能是在我发送它们之前乘以我的坐标…但是有没有更优雅的方式呢?

这将是alDistanceModel(AL_LINEAR_DISTANCE)或更好的alDistanceModel(AL_LINEAR_DISTANCE_CLAMPED),这将完全关闭远源。

在这里阅读3.4.3和3.4.4章。您还必须为每个源(alSourcef)设置公式中的参数(AL_MAX_DISTANCEAL_REFERENCE_DISTANCE)。

如果参数没有意义,衰减被关闭。如果声音是立体声,同样地(立体声就是……立体声——只有单声道声音是3D)。