View Issue Details

IDProjectCategoryView StatusLast Update
0004815The Dark ModSound Systempublic20.07.2018 03:00
Reporterstgatilov Assigned Tostgatilov  
PrioritynormalSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
Product VersionTDM 2.06 
Target VersionTDM 2.07Fixed in VersionTDM 2.07 
Summary0004815: Implement Version 2 of EFX with OpenAL parameters
DescriptionOriginally suggested here:
  http://forums.thedarkmod.com/topic/19205-getting-started-with-the-efx-room-reverb-system-wip/page-2#entry422134

Currently we have EAX-style parameters in EFX file, which are converted to OpenAL parameters. Given that EAX is dead, explaining parameters becomes harder.

The plan is:
1. Implement a new set of properties, which will have exactly the same names as the EFX constants (without the leading "AL_EAXREVERB_"). These properties would be passed to EFX as is, no need to convert bells to dolls.
2. Implement a "preset" property, similar to what "environment" property meant before EFX update killed it. Enumerate all presets listed in efx-presets.h and make them all available by number.
3. All of these changes will be available when "Version 2" is specified in the first line of the file. The "Version 1" definitions should continue working as they do now (support old maps).
TagsNo tags attached.

Relationships

parent of 0004871 resolvedstgatilov Update EFX wiki page: version 2 

Activities

stgatilov

stgatilov

20.07.2018 02:44

administrator   ~0010707

Done in svn rev 7583.

If efx file contains "Version 2" as the very first command, then the following format is used for definitions (case and quotes do NOT matter):
  eaxreverb "streets" {
    REFLECTIONS_GAIN 0.5
    reflections_delay 0.0050
    LATE_REVERB_GAIN 2.5
    late_reverb_delay 0.050
    "echo_time" 0.25
    echo_depth 0.9000
  }

Alternatively, it is possibly to simply use a preset from AL/efx-presets.h:
  eaxreverb "streets" {
    preset mountains //you can specify number instead of name here
  }
You can use preset as base and then override some of its properties with custom values: just make sure to specify preset first.

The names of available presets can be seen e.g. here:
  https://github.com/kcat/openal-soft/blob/master/include/AL/efx-presets.h

Issue History

Date Modified Username Field Change
04.06.2018 03:34 stgatilov New Issue
04.06.2018 03:34 stgatilov Status new => assigned
04.06.2018 03:34 stgatilov Assigned To => stgatilov
20.07.2018 02:44 stgatilov Note Added: 0010707
20.07.2018 02:44 stgatilov Status assigned => resolved
20.07.2018 02:44 stgatilov Fixed in Version => TDM 2.07
20.07.2018 02:44 stgatilov Resolution open => fixed
20.07.2018 03:00 stgatilov Relationship added parent of 0004871