堕天使の煉獄
2015-11
06
01:30:07
ちょっとモチベーション切れてきた
今日もにこにこPG。
でもちょっと飽きてきた。
今やってるのはゲームパッドの入力周り。
以前はオーバーライドでXInputとDirectInputの処理わけてたのだけども、入力関係はほぼ確実に毎フレーム処理があるので、仮想関数呼び出しコスト削りたいな-ってことで、そのへん直したり。あとはもちょっと丁寧に設定とか組んでみようかなと。
しかし、XInput専用にしちゃえば随分楽になるんだけどなぁ。
DirectInputの仕様が糞すぎて……。
んでもうちの環境も、ゲームパッドはDirectInput仕様のゲームパッドしかもってないんですよね。正確にいうなら、プレステ2のコントローラをUSBでPCにつなげられる奴をつかってたり。
プレステ2はとっくに物置んなかで、コントローラだけ現役使用中なかんじ。そんなにPCでゲームやる人でもないので、専用のゲームパッドとか買う理由もなかったりで。まあそれじゃなくても、まだまだ世の中XInputが標準でDirectInputのパッドはほとんど無い……なんてこともなく、ちょっと前に買ったなんてとだいたいDirectInput用だったりするだろうし。XInputの普及具合もよくわかってなかったり。
ていうかXInput対応のパッドを触ったこともないので、いまいちトリガーが何かよくわかってなかったりする。
DirectInputのスライダとかいう項目も対応してるパッドとかあるのか……それ以前にスライダって値の範囲がいくつからいくつまで返ってくるのか、ぐぐっても全然でてきやしないw
スライダをXInputのトリガの値に対応させるオプションとかあるソフトとかあるらしいんですが、XInputのトリガは0~255の値をとるらしいのだけども、スライダの上限値がわからないのでスケーリングして正規化することが出来ない……。
そもそもスライダって対応してるパッド自体どれだけあるのか……情報の少なさから、ほとんど無いんじゃないかと思われるんだけど。
トリガ周りがなんか結構厄介で、アナログスティックの軸一本を、+の値だと127~255にわりふり、-の値を127~0にしてる半軸? という利用法があったりとか、スティックの軸二本つかって、+の値だけでそれぞれLRのトリガに振ったりとか。
いろんな方法があるらしくて、どんどんとコンフィグのオプション項目が増えていってきりがない感じ……。
そこまで来ると、パッドのコンフィグ設定は別アプリで設定ファイルを作るタイプにした方がいいのかなーという気も。
しかし、作るだけならQTでつくればあっという間につくれるんだけども。
QT製だと、配布の際にランタイム同梱=数十MBと、ほんのちょっとの機能のアプリでもちょっとうっとうしい感じになっちゃうのがなんとも。
しかしいまさらvc++でwinアプリとか作る気起こらないしw
.netのc#ならまだマシなんですが、そっちだと今度はC#なので書き出す設定ファイルのバイナリを作る際に、アライメントとかその辺が面倒なんですよね。その点、同じc++なQTだとあんまし気にしなくていいんですが。
じゃあテキストで書き出すかというと、それもめんどいなーと。
古き良きiniファイルは今更感あるし、XMLはなんか生理的に受け付けない。
自前で組んだQSettingもどきみたいなのも結局、1項目ずつ書き出すのがうっとうしいかんじで。構造体にいれて一気にバイナリで読み書きってのがやっぱ一番楽ちんなんですよね。
まあ、真面目に読み込んだ値の範囲チェックとかきっちりやるなら一括で読んでも、一項目ごとテキストで読んでも対して手間は変わらないんですが。
そう考えると値チェックと読み込みセットのQSettingもどきので地味にやるのがいいのかなーとか思ったりもする。
ファイル読み込みの部分はそれほど速度にこだわる部分でもないし。件のような数10~数百バイト程度の設定ファイルの読み込みなんかだと特に。
そんなかんじで地味~な部分をちまちまやってるうちに、だんだん飽きてきた最近。
そろそろお絵かきのリハビリとかもしないとな。
でもちょっと飽きてきた。
今やってるのはゲームパッドの入力周り。
以前はオーバーライドでXInputとDirectInputの処理わけてたのだけども、入力関係はほぼ確実に毎フレーム処理があるので、仮想関数呼び出しコスト削りたいな-ってことで、そのへん直したり。あとはもちょっと丁寧に設定とか組んでみようかなと。
しかし、XInput専用にしちゃえば随分楽になるんだけどなぁ。
DirectInputの仕様が糞すぎて……。
んでもうちの環境も、ゲームパッドはDirectInput仕様のゲームパッドしかもってないんですよね。正確にいうなら、プレステ2のコントローラをUSBでPCにつなげられる奴をつかってたり。
プレステ2はとっくに物置んなかで、コントローラだけ現役使用中なかんじ。そんなにPCでゲームやる人でもないので、専用のゲームパッドとか買う理由もなかったりで。まあそれじゃなくても、まだまだ世の中XInputが標準でDirectInputのパッドはほとんど無い……なんてこともなく、ちょっと前に買ったなんてとだいたいDirectInput用だったりするだろうし。XInputの普及具合もよくわかってなかったり。
ていうかXInput対応のパッドを触ったこともないので、いまいちトリガーが何かよくわかってなかったりする。
DirectInputのスライダとかいう項目も対応してるパッドとかあるのか……それ以前にスライダって値の範囲がいくつからいくつまで返ってくるのか、ぐぐっても全然でてきやしないw
スライダをXInputのトリガの値に対応させるオプションとかあるソフトとかあるらしいんですが、XInputのトリガは0~255の値をとるらしいのだけども、スライダの上限値がわからないのでスケーリングして正規化することが出来ない……。
そもそもスライダって対応してるパッド自体どれだけあるのか……情報の少なさから、ほとんど無いんじゃないかと思われるんだけど。
トリガ周りがなんか結構厄介で、アナログスティックの軸一本を、+の値だと127~255にわりふり、-の値を127~0にしてる半軸? という利用法があったりとか、スティックの軸二本つかって、+の値だけでそれぞれLRのトリガに振ったりとか。
いろんな方法があるらしくて、どんどんとコンフィグのオプション項目が増えていってきりがない感じ……。
そこまで来ると、パッドのコンフィグ設定は別アプリで設定ファイルを作るタイプにした方がいいのかなーという気も。
しかし、作るだけならQTでつくればあっという間につくれるんだけども。
QT製だと、配布の際にランタイム同梱=数十MBと、ほんのちょっとの機能のアプリでもちょっとうっとうしい感じになっちゃうのがなんとも。
しかしいまさらvc++でwinアプリとか作る気起こらないしw
.netのc#ならまだマシなんですが、そっちだと今度はC#なので書き出す設定ファイルのバイナリを作る際に、アライメントとかその辺が面倒なんですよね。その点、同じc++なQTだとあんまし気にしなくていいんですが。
じゃあテキストで書き出すかというと、それもめんどいなーと。
古き良きiniファイルは今更感あるし、XMLはなんか生理的に受け付けない。
自前で組んだQSettingもどきみたいなのも結局、1項目ずつ書き出すのがうっとうしいかんじで。構造体にいれて一気にバイナリで読み書きってのがやっぱ一番楽ちんなんですよね。
まあ、真面目に読み込んだ値の範囲チェックとかきっちりやるなら一括で読んでも、一項目ごとテキストで読んでも対して手間は変わらないんですが。
そう考えると値チェックと読み込みセットのQSettingもどきので地味にやるのがいいのかなーとか思ったりもする。
ファイル読み込みの部分はそれほど速度にこだわる部分でもないし。件のような数10~数百バイト程度の設定ファイルの読み込みなんかだと特に。
そんなかんじで地味~な部分をちまちまやってるうちに、だんだん飽きてきた最近。
そろそろお絵かきのリハビリとかもしないとな。
Sun
Mon
Tue
Wed
Thu
Fri
Sat
01
02
03
[文化の日]
04
05
06
■
■
ちょっとモチベーション切れてきた
07
08
09
10
■
■
やっぱ好みではないかも
11
12
■
■
いちおう完成
13
14
15
16
17
■
■
ちょっぴり改造
18
19
■
■
さすがにこの歳で
20
21
22
23
[勤労感謝の日]
24
25
26
27
28
29
■
■
ぽっぷ
30
■
■
小ネタ
total:2076305 t:213 y:119
■記事タイトル■
■年度別リスト■
2024年
2024年12月(0)2024年11月(0)
2024年10月(1)
2024年09月(2)
2024年08月(1)
2024年07月(1)
2024年06月(5)
2024年05月(2)
2024年04月(1)
2024年03月(6)
2024年02月(4)
2024年01月(3)
2023年
2023年12月(3)2023年11月(1)
2023年10月(2)
2023年09月(3)
2023年08月(3)
2023年07月(3)
2023年06月(7)
2023年05月(8)
2023年04月(2)
2023年03月(1)
2023年02月(2)
2023年01月(3)
2022年
2022年12月(4)2022年11月(3)
2022年10月(1)
2022年09月(3)
2022年08月(3)
2022年07月(2)
2022年06月(1)
2022年05月(3)
2022年04月(2)
2022年03月(2)
2022年02月(1)
2022年01月(6)
2021年
2021年12月(8)2021年11月(3)
2021年10月(4)
2021年09月(6)
2021年08月(2)
2021年07月(1)
2021年06月(3)
2021年05月(2)
2021年04月(2)
2021年03月(3)
2021年02月(1)
2021年01月(4)
2020年
2020年12月(3)2020年11月(7)
2020年10月(2)
2020年09月(3)
2020年08月(1)
2020年07月(3)
2020年06月(7)
2020年05月(5)
2020年04月(8)
2020年03月(4)
2020年02月(2)
2020年01月(4)
2019年
2019年12月(1)2019年11月(1)
2019年10月(2)
2019年09月(1)
2019年08月(3)
2019年07月(2)
2019年06月(2)
2019年05月(2)
2019年04月(4)
2019年03月(1)
2019年02月(7)
2019年01月(1)
2018年
2018年12月(1)2018年11月(1)
2018年10月(5)
2018年09月(1)
2018年08月(5)
2018年07月(1)
2018年06月(1)
2018年05月(1)
2018年04月(2)
2018年03月(2)
2018年02月(1)
2018年01月(1)
2017年
2017年12月(2)2017年11月(1)
2017年10月(2)
2017年09月(5)
2017年08月(8)
2017年07月(2)
2017年06月(1)
2017年05月(1)
2017年04月(3)
2017年03月(5)
2017年02月(7)
2017年01月(8)
2016年
2016年12月(7)2016年11月(2)
2016年10月(3)
2016年09月(7)
2016年08月(8)
2016年07月(10)
2016年06月(17)
2016年05月(6)
2016年04月(8)
2016年03月(10)
2016年02月(5)
2016年01月(10)
2015年
2015年12月(7)2015年11月(7)
2015年10月(13)
2015年09月(7)
2015年08月(7)
2015年07月(5)
2015年06月(4)
2015年05月(5)
2015年04月(2)
2015年03月(4)
2015年02月(1)
2015年01月(7)
2014年
2014年12月(12)2014年11月(8)
2014年10月(4)
2014年09月(6)
2014年08月(7)
2014年07月(4)
2014年06月(2)
2014年05月(5)
2014年04月(4)
2014年03月(8)
2014年02月(4)
2014年01月(8)
2013年
2013年12月(15)2013年11月(8)
2013年10月(3)
2013年09月(3)
2013年08月(8)
2013年07月(0)
2013年06月(0)
2013年05月(0)
2013年04月(0)
2013年03月(0)
2013年02月(0)
2013年01月(0)
■レス履歴■
■ファイル抽出■
■ワード検索■
堕天使の煉獄
https://rengoku.sakura.ne.jp
管理人
織田霧さくら(oda-x)
E-mail (■を@に)
oda-x■rengoku.sakura.ne.jp