![]() It also means that you have to write two input receivers for receiving pointer input.įinally it means the UI system is more limited, not great for UI only games. What's so different about recieving the mouse position as a parameter or grabbing it globally?īecause it means that debugging, like testing touch inputs, isn't possible till they add it. It makes sense that Unity focuses on controllers as the main type of input. To be fair this is version one, and most people who had problems with the old system where console developers. Can even stop receiving inputs from keyboard. Poor support for 32bit computers, with most controllers not responding, forcing player to use emulators that break Unity games. ![]() (A lot of messages like OnMouseDown still need to be implemented.) Meaning that simple expected functions like hovering is not implemented yet. The UI elements responds like everything is from a controller. It will still fire both Shift and the W input, doing twice the work. The current position option, has the problem where it reports what ever it considers to be the current cursor.īut this is just like one small aspect, there is still a lot of standard computer support missing:Ĭurrently there is no structure for key combos like Shift+W for Running etc. This is very problematic for PC input, where touch, pen and mouse all are common cursor types, and it is expected to report it's position. OnMove()//This is used to track the mouse using a controller Just like with a hand held controller, you need to track the click and movement separately. So now when you click your mouse it just acts like a button, it tells that the mouse was clicked but not where. Even when you move it with the mouse it moves as if it is receiving a joystick input. Take the cursor, it is a controller cursor. If you can handle that, then the packagemanager page for the new inputs system has an "Import button remapping" option to setup a scene that shows you how to do in-game button remapping screen! If you try the new input system again check out this post to understand how to use the new system like the old one without all the events. (The inputmanager plugin I use has some remapping stuff to generate configs for different platforms, but that part felt half baked and needed work before I could just run a command and have my other platform button layouts get updated to match my primary.)Īlso, it doesn't support some things like Xbox 360 on macOS or mfi controllers on iOS.Ĭonsistency is one of the goals of the new input system, but I'm not sure they've achieved that yet. One thing to be aware of: the old input system uses different button layouts for most gamepads.ĭualShock on Windows vs DualShock macOS? Different. Although I'm on an older version that assumed single input and have made a bunch of changes. ![]() Yeah, I use this open source one for runtime rebinding in the old input system. Most likely someone has done it already and there's a repo for it. If I've pulled off an input manager with rebinds on GameMaker I can pull off one in Unity. ![]() the benefits did not outweigh the hassle.Īll I truly need is rebinding on run time. It sure has a lot of features but for a single player game, simple controls, unity beginner. Another pro people pointed out is that it made the project more scalable, but way I see it I'd rather get things moving now and worry about better code later than spending another week making no progress over-engineering a simple solution. Either people didn't use it or the reasons they gave me didn't fit my project. What really made me give up is that when looking for help online I couldn't find anyone who could give me a decent reason for using the new input system. Maybe that last part is me not knowing enough about Unity.Īnyway, I must've spent some 2 weeks learning the system and trying to fit the new input system in what I had then I gave up, went back to the old one and things clicked immediately. The event system imposed limits on state transition, I had to go through hoops to avoid input leaking into another state, it removed control I had over input and also obscured what was going on. ![]() When trying to use it I actually thought it made harder to debug things and it didn't work well with the FSM set up I had. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |