0.9 considered feature complete

This is just a heads up - at this point we are considering Input System 0.9 to be feature complete, and we will focus on bug fixes and documentation to get us from here to a 1.0 release. (We have some ideas for further feature work, but that will happen post-1.0).

So, functionality-wise, what you see in 0.9 is what we want to ship. Please report bugs for any outstanding issues.

Is there anywhere we can look to check out the roadmap/timeline of your future developments post 1.0?

Strangely 0.9 doesn’t appear in the pacman… and it isn’t even resolved directly changing the manifest, what could be the reason for this?

Post-1.0 plans still need to be finalized. Two major areas of new work will be building a deprecation path for the old input code (likely by making it run on top of the new input system), so that we don’t need to support platform backends for both new and old input for each platform, and building/adapting the new input system for DOTS.

1 Like

That’s really cool, I was hoping it was the case. Is there a link to an updated documentation section? Currently I’ve been using this one

unfortunately, the local multiplayer section is still empty :frowning:

I’d imagine supporting DOTS would be a significant rewrite since the Input system is event driven but raising and responding to events in ECS is totally centred around creating and destroying event entities. Will it be one Input API that supports both or will there be a separate DOTS input package?

You can just use the polling API to get data directly instead of using events in ECS. eg:

public struct InputData : IComponentData
{
    public InputMasterMap map;
    public float moveDirection;
    public bool shouldJump;
}

public class InputDataSystem : ComponentSystem {
    protected override void OnUpdate() {
        Entities.ForEach( (ref InputData inputData) => {
            inputData.shouldJump = inputData.map.Jump.triggered;
            inputData.moveDirection = inputData.map.Move.GetValue<float>();
        });
    }
}

The details will still need to be ironed out. I hope that a lot of the low-level code could be reused, but a lot of the higher-level code would be rewritten, so the API will likely look different.

2 Likes