Jump to content


Photo

EFX discussion


36 replies to this topic

#26 Judith

Judith

    Advanced Member

  • Member
  • PipPipPip
  • 762 posts

Posted 05 December 2017 - 02:05 AM

I agree with your rationale, and these were my initial thoughts as well. But I suggest making a test map and playtesting it before locking it down. Music and UI sounds are no-brainer, but I wouldn't be surprised if e.g. excluding all player grunts from EFX actually sounded better than having some sounds with, and some without EFX.

 

Sometimes consistency beats logic, even if it's counter-intuitive ;)



#27 stgatilov

stgatilov

    Advanced Member

  • Development Role
  • PipPipPip
  • 517 posts

Posted 05 December 2017 - 10:33 AM

I agree with your rationale, and these were my initial thoughts as well. But I suggest making a test map and playtesting it before locking it down. Music and UI sounds are no-brainer, but I wouldn't be surprised if e.g. excluding all player grunts from EFX actually sounded better than having some sounds with, and some without EFX.

 

Sometimes consistency beats logic, even if it's counter-intuitive ;)

I don't agree with you. Testing on a single map is not a good solution.

 

EFX is not like gamma correction.

For gamma correction, you do it once either in your texture, or in your engine. In any case, you only have to ensure that it is done exactly once, but it does not matter where.

EFX is like lighting. You can bake lighting effects into texture (e.g. lightmaps or ambient occlusion), but then you loose the ability to change light sources around it. As a result, a texture with baked lightmaps can only be used in a single place on a single map. If we bake reverb into a sound, it looses the ability to reflect the environment around it. It would sound well in one place, but weird on another place. The fact that a sound with baked reverb sounds well without EFX when you are in one particular area (with some EFX effect) does not mean that it would sound appropriate without EFX in all other areas (with different EFX effects).

Of course, this also depends on how different are the EFX effects you can create. If all of them are mostly equivalent to "apply reverb of strength X", then maybe it does not really matter.

 

So the only "correct" solution is to decide which sounds should logically be affected by surrounding environment, and which should not.

If any sound already has reverb and must be affected (or has no reverb and must not be affected), the only "correct" solution is to fix the sound sample.

The problem is that this "correct" solution may be too hard to achieve, so we need some ad hoc solution for 2.06.


  • HMart, Anderson and Abusimplea like this

#28 Judith

Judith

    Advanced Member

  • Member
  • PipPipPip
  • 762 posts

Posted 05 December 2017 - 11:04 AM

I don't think this analogy works here, not only because efx is more like adjustment layer and you can always tone it down or opt out of it completely. Also players won't analyse every sound TDM plays, what will count will be a general impression, which is greater than a sum of its logical parts. Still, it's your call, that was just a suggestion :)

#29 Springheel

Springheel

    Creative Director (retired)

  • Admin
  • 36631 posts

Posted 05 December 2017 - 12:09 PM

Added support for "no_efx" keyword in SVN rev 7337, binaries updated in SVN rev 15109.

 

 

So this keyword has to be added manually to every shader that we don't want affected by EFX?  That's a non-trivial amount of work, even if there was complete agreement about which sounds should be excluded.  How future-proof would this be if we just left it to mappers to exclude sounds they didn't want affected until 2.07?



#30 Judith

Judith

    Advanced Member

  • Member
  • PipPipPip
  • 762 posts

Posted 05 December 2017 - 01:57 PM

I'd rather continue my work on generic EFX presets, but I can do this, if no one else volunteers.

 

Btw. negative values for reverb volume actually decrease it when it's present in the sound sample already, so mappers can use that too, if they wish.



#31 Judith

Judith

    Advanced Member

  • Member
  • PipPipPip
  • 762 posts

Posted 06 December 2017 - 07:23 AM

Actually that was pretty easy, just a simple Find and Replace operation. I only had to make sure everything was in the right place. That's music and UI sounds: https://www.dropbox....d_defs.zip?dl=1

 

Btw. is no_efx supported in the current version of public beta?


Edited by Judith, 06 December 2017 - 07:25 AM.


#32 stgatilov

stgatilov

    Advanced Member

  • Development Role
  • PipPipPip
  • 517 posts

Posted 06 December 2017 - 08:05 AM

Btw. is no_efx supported in the current version of public beta?

No, not yet.

I think it would be as soon as there is some certainty that the way we try to solve the issue now really works.



#33 Judith

Judith

    Advanced Member

  • Member
  • PipPipPip
  • 762 posts

Posted 06 December 2017 - 08:13 AM

Right, the game just gave me the 'unknown token' warning.

I'll be adding first set of generic presets soon, so you can test that along with no_efx spawnarg. From what I've experienced so far, there's quite big difference between how reverb sounds on closed studio headphones and audio speakers. It's very subtle on the latter. I think mappers will have to use "room" parameter to adjust the volume to their liking. Anyway, here's the "cave" preset that will make the reverb stand out, so you can hear whether it affects the music and UI sounds or not:

// Cave
"environment size" 1.3
"environment diffusion" 0.75
"room hf" -200
"decay time" 3.5
"decay hf ratio" 1.5
"reflections" 400
"reflections delay" 0.015
"reverb" 1000
"reverb delay" 0.022


#34 stgatilov

stgatilov

    Advanced Member

  • Development Role
  • PipPipPip
  • 517 posts

Posted Yesterday, 09:15 AM

So this keyword has to be added manually to every shader that we don't want affected by EFX?

Yes.

 

That's a non-trivial amount of work, even if there was complete agreement about which sounds should be excluded.

 

Maybe.

I think there is not too many sound shaders, putting no_efx flag to some of them won't take much time, but testing them can take days.

 

How future-proof would this be if we just left it to mappers to exclude sounds they didn't want affected until 2.07?

 

Mappers would have two options:

  1. Leave all sounds with EFX, as if this discussion never happened.
  2. Completely override every sound shader that they don't like to be affected by EFX. I.e. put same-named shader file info their pk4, which I suppose would create FMs with unchangeable sound shaders.

I have a feeling that second options is even worse that the first one in the long run.

 

 

Anyway, I need to know: should the "no_efx" flag be added to 2.06 or leave it for 2.07?



#35 Judith

Judith

    Advanced Member

  • Member
  • PipPipPip
  • 762 posts

Posted Yesterday, 09:22 AM

IMO, if EFX is to be officially supported in 2.06, the no_efx spawnarg should be included as well.

 

 

Maybe.

I think there is not too many sound shaders, putting no_efx flag to some of them won't take much time, but testing them can take days.

 

You have a link to UI and Ambient Zoned soundhaders with no_efx in my post above. I was not hard to add it, I just replaced "looping" flag with "looping \n no_efx" in Notepad++, so I got a line break. I have an idea for a test map for UI and player grunts, but didn't get to it yet.


Edited by Judith, Yesterday, 09:36 AM.


#36 stgatilov

stgatilov

    Advanced Member

  • Development Role
  • PipPipPip
  • 517 posts

Posted Yesterday, 11:22 AM

You have a link to UI and Ambient Zoned soundhaders with no_efx in my post above. I was not hard to add it, I just replaced "looping" flag with "looping \n no_efx" in Notepad++, so I got a line break. I have an idea for a test map for UI and player grunts, but didn't get to it yet.

I also have a feeling that excluding some clearly non-EFX sounds won't take much time.

I mean, at least, all menu/UI sounds, all ambients.



#37 Judith

Judith

    Advanced Member

  • Member
  • PipPipPip
  • 762 posts

Posted Yesterday, 02:07 PM

Yeah, and the good thing with Ambient and Ambient Zoned is that these are the same sounds, just the zoned version has the silence lead-in sound to work with location system. So the zoned version will have no_efx flag, ambient will be left as it is, and mappers will have more choice.





Reply to this topic



  


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users