Search Unity

Will old Input-System eventually become deprecated?

Discussion in 'Input System' started by Grazer2, Apr 6, 2022.

  1. Grazer2

    Grazer2

    Joined:
    Jun 20, 2011
    Posts:
    86
    Hello,

    Just wondering, are there any plans that the "old" Input-system (e.g. Input.GetKeyDown(), ...) will be marked as obsolete or deprecated at one point? Or will old and new system be allowed to live peacefully ever after together in harmony?

    Cheers
     
  2. Rene-Damm

    Rene-Damm

    Joined:
    Sep 15, 2012
    Posts:
    1,779
    We see little chance of the old API (mostly
    UnityEngine.Input
    ) going away. Just about every Unity project out there would be broken if it did.

    But both for our user's sake and for our own sanity's sake, we do very much want to get rid of the old code.

    Instead, we are actively working on converging the two systems into one by adopting
    UnityEngine.Input
    as an API that works with the input system. Down the road, this would allow for the old input system's implementation to get dropped entirely while at the same time keeping
    UnityEngine.Input
    very much alive. Before that cut can happen, though, there's first some maturation to do both on the side of this convergence and on the side of the input system itself.
     
    Gruguir, MousePods and hippocoder like this.
  3. Grazer2

    Grazer2

    Joined:
    Jun 20, 2011
    Posts:
    86
    That sounds like a neat solution! Thx for the info
     
  4. Cookie042

    Cookie042

    Joined:
    Nov 25, 2013
    Posts:
    9
    Isnt that the point of major version changes? to implement potentially project breaking changes that would need to be fixed to use that version? This is why people tend to keep the same version of unity (only doing minor version updates) for the entire development of a game. The same could have been said when you depricated javascript, but that didnt stop you...

    Also many of the uses of the old system could be replaced with equivalent code for the new system. So many projects could convert without issues.
     
  5. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    If you will come forward so strongly with opinion, then perhaps answer this first: Why break things, if you do not have to?

    And comparing an entire scripting backend that was holding Unity back (it'd mean no DOTS today) to optional input, well that's a strong argument there, friend!

    That said, I do roll my eyes whenever I come across old code (I only have new input enabled) and have to recode it. But that's a couple of minutes using the polling pattern.
     
  6. IndieForger

    IndieForger

    Joined:
    Dec 31, 2012
    Posts:
    92
    Bit late to the party but...

    Just switched to new input system and I do really enjoy it but I would like to give +1 for keeping default
    UnityEngine.Input
    for as long as possible. While using new input system is super intuitive, I wouldn't want to convert hundreds of packages I accumulated over time every time I import one into a newer version of Unity. Also input system comes as an external dependency so it does require that extra few clicks to bring the package in and then few tweaks to get everything working correctly.
     
    Lars-Steenhoff likes this.