DXライブラリ 総合スレッド その13at GAMEDEV
DXライブラリ 総合スレッド その13 - 暇つぶし2ch5:名前は開発中のものです。
12/06/11 14:06:36.02 JqpTmrqe
>>1
乙 俺の貼ったテンプレを使ってくれてありがとう。

>>4
ソース眺めること数分……
BackKeyってBackSpaceキーじゃなくて前フレームの入力情報かよ!分かりづらいわw

前スレ994(入力データを保存/判定する便利クラスを作った人)がどういう処理をしてるかまでは分からんので、
あくまで、同じようなクラスを作った自分の場合ね。


【1】データ形式
各キー(上キーとか1ボタンとか)ごとに、ON/OFF及びその状態が何フレーム続いてるかを保持する構造体を用意。
この時、DXライブラリで用意されている PAD_INPUT_XXX とは別物として考えること。


【2】メインループ
メインループの頭で、GetJoypadInputState() のラッパ関数を呼び出す。
そのラッパ関数の中でゲームパッドの入力状態を調べ、【1】の構造体の中に、ON/OFFとフレーム数を代入。

この時、ゲームパッドの各ボタンと【1】の構造体との紐付けを変更することで、キーコンフィグにも対応できる。
また、ゲームパッドからの入力を捨て、別途保持していたデータを流し込むことでリプレイ機能っぽくもなる。


【3】実際に使用する
ゲーム中で使うときは、【1】の構造体がどうなっているかを見る。
ここも関数化すると良い。押した/離した瞬間や押しっぱなし検出、キーリピートなどもここで。

物理的な入力情報と切り離しているので、キーコンフィグ/リプレイ/ゲームパッド番号などに影響されない。
ただしメニュー画面など、物理ボタンの情報を見たほうが良いかもしれない。



次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch