UnityのInputManagerで指定できるボタン名とKeyCodeの相互変換を試みます。
その前にいくらか前提を説明します。
タイトルの通り、キャメルケースの分割(split)をします。実装はC#。
正規表現で頑張る方法もあるようですが、ちょっとややこしいのとパフォーマンス的に嬉しくないことは容易に想像できるので、愚直な方法で実装します。
厳密なキャメルケースであれば、IDのような単語は、idやIdとなると思いますが、そのままIDと書くこともあるため、そのパターンにも対応します。スネークケースとの混用も対応します。先頭と末尾のアンダースコアは無視します。
例えば、_abcFOOBar123_456hoge__HOGE_
ならばabc
、FOO
、Bar
、123
、456
、hoge
、HOGE
に分割します。