I’ll be honest, I don’t understand this, why do we exactly need this here? Because Unreal has something similar? Well…
Anyway, we have it, so it has severe rendering issues as you can see below as an example. This example is an XR entry and I disabled VR, XR in the editor (built-in stuff), there is no XR or VR package present and I also removed the VR/XR/Touch/pen Schemes from this window since my test app won’t support those.
A default UI action map already existed, but you couldn’t change it directly?
I haven’t tried the alpha myself, but what I would like to see is that you could load predefined action maps presets, e.g. FPS, 2D Platformer, RTS, etc.
In general, a wizard would be quite interesting, New ActionMap → select game type preset → select devices → select/deselect actions → generate.
Also. There is no function to add new element to composite action, you can only duplicate an existing one. Duplicating an existing one annoyingly closes the entire actions section. See screenshots below.
Define directly? It is part of the UI Input module.
You can put a new action asset there. And you can duplicate the original with your own setup if you want to change the bindings (which is a VERY BAD idea anyway).
But none of these are any sane reason we are getting a separate UI for handling the very same thing. While other parts (even the InputSystem itself) of the editor have a great way handling this: just link an action asset on the setting page like it is done with the general input settings or the SRPs’ settings assets. We do not need another buggy BS UI on the settings page doing the same as the action asset editor does but dumber. Just link the fricking asset here on the settings if we absolutely need one asset above all else (but still: why?)
It is because of the new API for the Input System editor which after using it is a very well needed change.
I was able to delete over a hundred lines of code for a 2D character controller system that supports multiplayer and erase old references that are no longer needed with the API update. Multiplayer systems offline and online benefit a lot and even just normal single player controllers will be easier to work with.
Read the API examples and I think most people will see this as a welcome change in several ways.
It eliminates a lot of the pain points for enabling default action maps, erased a lot of custom code for getting singletons for input manager, and a lot more.
There is a new built in singleton class for Input now with a lot of the changes.
Also due note this is the first pre version of it. Reading 1.8.0-pre 2 changes it has more coming.
Actually the very first line is literally answering the Questions. The new API is built on the new system that allows quick access to stuff inside of the project settings editor UI.
For context if you haven’t had a chance to read the new API. The way the current Input Action Assets works is there could be several of them making having a static reference to them needing to create things like a singleton pattern or manually assign the Input Action Asset in the inspector.
This is an issue for packages. Not every type of asset can actually be put inside a package. Fun fact preset assets can’t be made inside packages normally. And sometimes assets in packages can’t easily reference things under the asset folder.
The project editor settings can be retrieved from both folders eliminating the issue and making it easier to have a single reference for all controls. This is just one of the main reasons. The 1.8.0-pre.2 update will have more on this by the looks of it.
Not really, it only says “needed”, but by whom, you? I, for one, sure don’t need this by any means. And actually, Unity doesn’t really need this either. Again, multiple systems, from SRP to Localization works like I described. Assets specified as “current settings”. And they are great, they allow us to change a bunch of settings in one go. Just replace the settings asset with a different one. Instead of edit one by one in the settings panel…
If they wanted to “improve” the handling it, keep the referenced setting asset and make it editable through the settings panel. Not making a separate setting. Just like the input settings work, you can assign asset and then change the values.
Yes, and? They could just make that singleton pattern and end of story, bringing the best behavior from both worlds.
No it is not an issue. Everyone is changing their own shit, I don’t want a rando package modifying my settings. Thanks.
Unrelated nonsense, nothing to do with the issue at hand. And it isn’t even true. All the discussed solutions reference an asset in the asset folder through the settings panel.
The settings referenced asset would be retrievable by packages too. So this change is still not reasonable. Other than “we change stuff l’art pour l’art, deal with it”.
Wether the new global asset lives inside the Project Settings Folder or in the Packages Folder or in the Assets Folder - it doesn’t explain why the settings tab doesn’t just look like this:
Instead of this:
(btw. the “Default Input Asset”-Field is optional. If it isn’t possible to select it, just don’t draw this and name the Button “Edit Default Actions in Input Editor Window” or something - but let’s not get lost in such details)
Ah my bad you were meaning that window in the project settings.
Yeah, for that one I don’t know honestly. I do agree it should probably be just a tab or something that open up inside of the default project input action window.
My first thought is maybe a tab like how the physics settings now have a couple different tabs to quick switch between with a hotkey instead of having to click back and forth.