InController gamepad not mapped

Hi,

I have integrated InControl by following the documentation here:

I have correctly updated the field for the mapping.

But when I hit play the mapping is not working that means I have just the left stick and one button that are working. Pressing the rest of buttons has no effect at all!

My gamepad is in the list of the supported controllers listed in InControl site:
  • Logitech F710 on Windows, Mac and Linux.
In debug, I have no issue when passingCreateBindings() of SampleBindings.

By the way, I use UIS and then I have Inventory Standard Input component setup in Character also then I wonder if it might be responsible of this problem. Is it compatible with InControl? When I disable it the problem is the same then I suppose that it is not a mismatch with this component.

Any idea ?
 
The Inventory Standard Input is indeed using the Unity standard input system which may cause issues with InControl. You would need to inherit the "Inventory Input" base class and write your own "Inventory InControl Input" component. I may work on an integration for it in the future but the new Unity Input system and Rewired are higher in priority.

That being said if you disabled the Inventory Input and there are still issues, then maybe something is wrong somewhere else. @Justin may have an idea?
 
@Sangemdoko thank you for your feedback.
For sure it will not work with Unity Standard Input System as it is explained in UCC. It is a pity that you have not this integration in your priority list.
I will try to create my own "Inventory InControl Input" component. I have no choice because I use UIS and I cannot abandon it and cannot stay blocked.
Hopefully I will have the support of Justin!
 
Last edited:
Well, I didn't realize that the gamepad is not implemented in the SampleBindings provided within the integration for InControl.

As I had in mind that the gamepad was implemented with UnityInput component and though that it was also at minima aligned on it but it is not the case.

Gamepad is not mapped for UCC demo
 
Last edited:
I have discussed with Justin over the weekend and we decided to make input integrations the next priority. Our plan is to use the same base class both for UCC and UIS input which should allow us to integrate third party input system once and it would work for both UIS and UCC.

We'll make sure to look into the problem with the gamepad mapping in the demo scenes.
 
This week-end I have started to do something. It is not finished yet. But whatever it will not very elegant regarding the differences between PlayerInput and InventoryInput. I will try a dirty approach for the moment to avoid to be blocked....
 
I did a script for UIC called InControlInputInventory that is working with only the main menu implemented. I didn't include Hotbar for the moment, I didn't have a hotbar.

I have also created a UISBindings script for the mapping that is called by the component InControlInputInventory.

For the moment, I have a difficulty with InControl, I didn't find a way to do a combo with 2 InputControlTypes. For example for running. I would like to run with the left stick by maintaining pressed and not by using a second button like it is done with the component Unity Input.

To do that I need to enable somehow "Change Speeds" and moving in one direction of the left stick but the method AddDefaultBinding doesn't take 2 InputControlTypes and CreateOneAxisPlayerAction takes only 2 directions not state like "Change Speeds".
 
I'm not familiar enough with the InControl API so you'll want to ask the InControl developer that question.
 
Reading again the documentation for the ability "Change Speeds" here:
I see that the ability needs to be active. It is done by pressing Shift with keyboard but when I have tested with Gamepad and Unity Input component putting more force in one direction of the stick left influences the "Change Speeds" also according the behavior I would like with InControl. Then I though that checking on enable the checkbox called "Require Movement" was enough to have it active but it seems not.

I finally found by tuning the parameters with Start Type = Automatic / Stop Type = Manual and Require Movement = checked.

It might be interesting to complete the documentation of this ability consequently.
 
Last edited:
Top