How to integrate Cinemachine and Unity Input System with UCC

Hi, I'm using UCC + Unity input system + Cinemachine.
I followed the documentation at https://opsive.com/support/documentation/ultimate-character-controller/integrations/cinemachine/
And it works as long as I specify the old input system axis in the cinemachine freelook camera.
1704675077514.png

If I remove the Input Axis Names, I get no camera response from my input.
I traced the stack a couple different ways, but I could not find where between the cinemachine free look camera, and UnityInput.cs (by opsive) the code isn't using the right values.
So I'm wondering how do I get a character camera to respond to inputs from the new unity system. Any leads are appreciated, such as places where the systems link up. (I've checked CinemachineViewType.cs, and it seems the rotate() method receives my inputs via horizontalMovement and verticalMovement arguments, but those varibles are not referenced in the method. Not sure what to make of that or do with it. )
 
This is completely on the Cinemachine side of things. I'm not sure if it supports the new input system.
 
I looked into it a bit more, and it... can, but indirectly.
We can drive the InputAxisValue through script to rotate the camera on its axis.
I have a working prototype with the addition of two lines of code in CinemachineViewType.cs
1704847648387.png
However, this implementation has an issue. When the player presses forward (W), the character turns left/ right depending on how much the camera has been rotated from init. I assume that there is a method to reestablish what the character's "forward" is depending on the camera facing.
Any guidance on how to resolve this issue?

I know this is venturing into "custom code" territory, but I'd apricate help making this integration more fully featured.
 
Last edited:
Top