Need to call InputAction.Enable() ?

I tried doing a pretty simple setup with PlayerInput and nothing worked. Then I backed out, got rid of PlayerInput, and manually assigned InputActionReferences to my control component, and then grabbed InputActions off of them. Then I manually called each InputAction’s Enable() method. I am able to get control now by asking each InputAction for ReadValue. This works.

So coming back to the PlayerInput approach, was there somewhere related to PlayerInput that I was supposed to call Enable() on either the InputActions or on the entire set? This seems like something PlayerInput would do automatically. It cost me a number of hours so far and I’d love to know what is going on. Thanks!

PlayerInput will enable the default action map (if the property has been set) when it is enabled.

Hmm ok good to know that wasn’t the issue. I don’t know why events weren’t being fired then. I even rebooted my computer.

What do you think of my alternate approach?

I think it’s perfectly fine. PlayerInput is meant only as one possible avenue into setting things up. So, whatever works best for you :slight_smile:

BTW, for debugging things, the input debugger (Window >> Analyze >> Input Debugger) can be quite helpful. It’ll show you all active actions and their bound controls. Easy to see usually whether there’s a problem with actions not being enabled when one expects them to or them not being bound to the right inputs.