LingFeng-bbben / MajdataPlay

A Simai Player
GNU General Public License v3.0
110 stars 16 forks source link

Proposal: Create an Extensible Input System #28

Open istareatscreens opened 1 month ago

istareatscreens commented 1 month ago

Issue:

Proposal:

Engineering Notes:

DeviceInterface would include:

IOManager would include:

ConnectionInterface would include (mainly holds the boilerplate logic for handling the connection and shuttling input data to the concrete DeviceInterface):

Comments:

I have already written an extremely rough POC version of this system so I would like to gauge your interest in said project before I invest time into it. If you are interested I would likely need some assistance integrating it into your project.

If you aren't interested in such an implementation feel free to delete this issue I will not take offense

LeZi9916 commented 1 month ago

good proposal but we wont put effort into implementing it for the time being, and you are welcome to submit new changes

LingFeng-bbben commented 1 month ago

Great!! In case you wanna some info about the light control method on the big iPod, I can email you the files.

winooxx commented 1 month ago

Sounds good if you don't mind sharing your POC? I'm looking to upgrade the old Unity Input Manager to the new Input System to better accommodate more controllers.

istareatscreens commented 1 month ago

Thank you for your responses and support :)

Sounds good if you don't mind sharing your POC? I'm looking to upgrade the old Unity Input Manager to the new Input System to better accommodate more controllers.

I will spend this weekend refining my POC and post a link to it then. There is a lot I need to change so it fits the proposal more closely.

Great!! In case you wanna some info about the light control method on the big iPod, I can email you the files.

Maybe not right away but in the near future this would be super helpful thanks

Update (2024-09-15):

Made progress on it this weekend but didn't end up finishing. Will hopefully have a POC in the next couple of days. Sorry for the delay.

LingFeng-bbben commented 1 month ago

https://github.com/Sucareto/Mai2Touch/tree/main This should be helpful

istareatscreens commented 1 month ago

Hey so I haven't really complete the POC it is still very much a WIP.

That being said I have the rough untested structure down, I will keep working on it and hopefully will have something that works by the end of the upcoming weekend. So you may want to hold off until then to view it but the general idea is there I think.

I still need to:

It is taking longer because I just basically started over from scratch since my original POC was too different from the proposal.

Also, I don't care about ownership of this code or credit. So when I am finished if you want to re-upload the repo or I can combine it with this project I would be totally fine with that. Given you are still interested after viewing the code.

Unity Package (Actual code) https://github.com/istareatscreens/MychIO Test environment (Unity Project that uses the package) https://github.com/istareatscreens/MychIODev

winooxx commented 1 month ago

Don't worry about it. We all appreciate and value your hard work.

istareatscreens commented 1 week ago

Hey just an update, I got the touch panel reading efficiently. I am now working on HID/IO4 support for button ring and soon the LEDs.

(Edited because I saw you posted LED information :) )

I am going to push to have something that can be integrated soon.

Thank you for your patience.