No Rotation in 3rd Person Top Down after Input System

TDM GameDev

New member
I have followed all of the instructions found here for the Input System integration, and in a fresh project with no other assets (except for some models and prefabs), things seem to work fine. When I try to incorporate the Third Person Top Down controller in a project that I've already been working on for a while, however, the character does not rotate (following the mouse) as it should. I've taken the same steps and even created a new scene to duplicate the scene in the otherwise empty project that I've gotten this to work in. I just can't figure out what's going on.

player input proxy.png

unity input system.png
 
Hmm, is your CharacterInput action the same as your other project? You could debug the input by placing a Log in TopDown.GetDeltaYawRotation to see if it rotates with the mouse.
 
Hmm, is your CharacterInput action the same as your other project? You could debug the input by placing a Log in TopDown.GetDeltaYawRotation to see if it rotates with the mouse.
Yes, the CharacterInput in both projects is the one that ships with the Input System integration.
logs.png
The logging shows that the direction Vector3 being returned by
Code:
m_LookSource.LookDirection(m_Head.position, true, 0, false, false);
is always the same value, which explains the behaviour. I am unable to determine why that is happening. While trying to debug this issue, I also discovered the toggle for "Look In Move Direction", which I think would actually have been what I wanted in the first place (maybe), but the fact that one thing stops working after the Input System integration makes me hesitant about using the controller with settings that just happen to work at the moment. It would be very disappointing to find out months from now that there is another issue that causes my development to grind to a halt.

Also, I find it frustrating that the Input System support seems to be more of an after thought than a real effort at capitalizing on its functionality. Including the input system integration, there are something like 3 other integration packages for other Unity assets that handle controls (including gamepads). If this asset leveraged the Input System instead of using the older input manager, those other assets would be unneeded, except for people that just don't want to bother with learning the Input System.

For those of us that want to leverage the power of the Input System for native multi-platform support, keybind remapping, etc..., this asset is a bit of a disappointment. I'm not the kind of person to demand or expect a refund, but this is one of the few purchases I've made that really feels like I've just wasted money. And it's important to note that I've wasted money on it twice, thanks to being forced to purchase a completely new asset when version 3 was released. I appreciate that this forum thread wasn't the best place to air these grievances, but they're on-topic, so there it is.

I appreciate your response, and maybe there's a bug that can be identified and fixed thanks to my post, or maybe there's something I've done wrong. While I would like to know what I might have done incorrectly (especially having succeeded in setting things up multiple times in one sitting while trying to diagnose my issues), since I won't be relying on this asset, it's ultimately not all that important. Thank you again.
 
is always the same value, which explains the behaviour. I am unable to determine why that is happening. While trying to debug this issue, I also discovered the toggle for "Look In Move Direction", which I think would actually have been what I wanted in the first place (maybe), but the fact that one thing stops working after the Input System integration makes me hesitant about using the controller with settings that just happen to work at the moment. It would be very disappointing to find out months from now that there is another issue that causes my development to grind to a halt.
Look In Move Direction will have the character look in the direction of movement so in that case it doesn't use the input. You can place an output within PlayerInput.UpdateInput and GetAxis/GetRawAxis to determine if it is retrieving the correct mouse inputs.

Also, I find it frustrating that the Input System support seems to be more of an after thought than a real effort at capitalizing on its functionality. Including the input system integration, there are something like 3 other integration packages for other Unity assets that handle controls (including gamepads). If this asset leveraged the Input System instead of using the older input manager, those other assets would be unneeded, except for people that just don't want to bother with learning the Input System.
I really wish that I could make the input system the default but because it isn't the default in Unity 2021.3 I am not able to. With that said, the demo scene isn't setup to use the input system but other than that the integration would be the same as what would be included in the default asset once Unity switches. The integration is very similar to the Input Manager support. There's also still a need for the other input assets - things like Rewired has almost every type of gamepad supported whereas the input system requires you to create those definitions. The virtual input assets also provide more functionality for touch than what the input system provides.

The Input System is definitely an improvement over the Input Manager though.
 
Top