ゆずりょーです。
株式会社瑞起から発売されているコントローラ、「電車でGO!!専用ワンハンドルコントローラー for Nintendo Switch™」をacty(溝月レイル)さんから出ている「TRAIN CREW」に対応させるアプリを開発しました。
https://www.youtube.com/watch?v=7_H6kftXAK8
このアプリはApache License 2.0のライセンスでフリー・オープンソースで公開しています。以下のリンクから入手できます。
https://github.com/YuzuRyo61/ZDG-TC/releases/latest
導入方法などはREADME.txtやリポジトリのREADMEに掲載しております。
TRAIN CREWのホームページを見ていたら、「コントローラ開発キット(仮)」というものを見かけまして、これを使って何かできないか、という考えに至り、「そういや瑞起のマスコン持ってるからこれで何か作れないか」ということで、開発に着手しました。
私はいろいろなプログラミング言語を使ったことがありますが、C# を使ったアプリやアウトプットは、無いに等しい状態でした(少しだけ齧ったことがある程度)。
.NET Framework自体にも触れることがなかったので、本当に色々とググりながら調べていました。
C# でアプリを開発するとき、コントローラのライブラリ探しには大変苦労しました。
コントローラはDirectInputに対応したものでないといけなかったので、それで開発できるライブラリを探したところ、既に開発が終了しているライブラリぐらいしか情報がなかった(あとは依存関係の解決がうまくできなかったりなどがありました)ので、泣く泣くそのライブラリを使うことにしました。
もしDirectInputで代替のライブラリをご存知でしたら、リポジトリでPull Requestなどをお寄せいただければと思います。
このアプリの発案から公開まで、たったの数日程度で開発期間で開発しました。
突貫開発であるため、設計などは脳内で思いついたらやってみる、といった形で進めていました。