Search Unity

Feature Request Override an "action", NOT a "binding"

Discussion in 'Input System' started by CaseyHofland, May 13, 2022.

  1. CaseyHofland

    CaseyHofland

    Joined:
    Mar 18, 2016
    Posts:
    613
    So I know about
    action.ApplyBindingOverride()
    : it's not what I'm looking for.

    I want to add an option for look-sensitivity. I thought the best solution was to give my look action a scale processor that the user can change at runtime via a settings menu.
    Thing.png

    You'll notice that the processor is on the Look action, not on one of the bindings. This means I can't use
    action.ApplyBindingOverride()
    . I'm frankly stumped by this, I wanted to add more accessibility options in this manner but it's gonna be hard if I can't make it, you know, accessible.
     
  2. Nathanieljla

    Nathanieljla

    Joined:
    Apr 18, 2014
    Posts:
    97
    I keep user settings like controller sensitivity elsewhere as a variable the user can modify and then multiply the input results by that variable. I think that's going to be much cleaner than modifying the actions.
     
  3. CaseyHofland

    CaseyHofland

    Joined:
    Mar 18, 2016
    Posts:
    613
    The game has a couple of different actors so I would have to change one value on each actor as opposed to one value on one input. From a DRY perspective that seems preferable. It's not that I can't, but it does feel hacky when there seems to be such a good solution in place for it.
     
  4. AFAIK the current official recommendation is having a custom processor which reads the value from your own settings.
    (Source)
     
    Nathanieljla and CaseyHofland like this.
  5. CaseyHofland

    CaseyHofland

    Joined:
    Mar 18, 2016
    Posts:
    613
    A 2-year old unsolved issue... classic Unity. Thanks though! At least I can rest easy knowing it isn't possible.