uani
July 28, 2020, 1:45am
1
ApplyBindingOverride
this either sets the path instead of the overridePath
or
__GetBindingDisplayString ( __InputBinding.DisplayStringOptions.IgnoreBindingOverrides**)**
does still output the overridePath
GetBindingDisplayString (InputBinding.DisplayStringOptions.DontUseShortDisplayNames )
outputs different strings depending on used in conjunction with InputBinding.DisplayStringOptions.IgnoreBindingOverrides or not and the overridePath is null; expected I did the same shortDisplayName in both cases
GetBindingDisplayString (InputBinding.DisplayStringOptions.DontOmitDevice & InputBinding.DisplayStringOptions.DontUseShortDisplayNames )
is streamlined in the wrong way that for left stick and button south it neither outputs the layout nor an expected verbose name
uani
July 29, 2020, 11:58am
2
uani:
ApplyBindingOverride
this either sets the path instead of the overridePath
or
__GetBindingDisplayString ( __InputBinding.DisplayStringOptions.IgnoreBindingOverrides**)**
does still output the overridePath
perhaps I should have labelled this thread a “bug” rather than “feedback”.
This is currently some sort of “blocker” for me.
Do you have an ETA for a fix of this bug or know a workaround?
The following code is what I use:
// save overridePath from PerformInteractiveRebinding() completion
private void completeControl(InputActionRebindingExtensions.RebindingOperation rO)
{
if(rO.selectedControl != null)
{
aIdWaitingToGetCompleted.action.ApplyBindingOverride(rO.selectedControl.path);
PlayerPrefs.SetString(aIdWaitingToGetCompleted.action.name, aIdWaitingToGetCompleted.action.bindings[0].overridePath); // the overridePath
PlayerPrefs.Save();
}
}
// apply override, use existing path if no override found
iA_rotate.ApplyBindingOverride(PlayerPrefs.GetString(iA_rotate.name, iA_rotate.bindings[0].path));
// output path
action.bindings[0].ToDisplayString(InputBinding.DisplayStringOptions.DontOmitDevice & InputBinding.DisplayStringOptions.DontUseShortDisplayNames & InputBinding.DisplayStringOptions.IgnoreBindingOverrides);
And this path is the overridePath
uani
July 30, 2020, 7:16am
3
GetBindingDisplayString
Debug.Log
of path
and overridePath
shows above method is the bug.
My Workaround will be creating a display string myself from path
.