DXライブラリ 総合スレッド その13at GAMEDEVDXライブラリ 総合スレッド その13 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト2:名前は開発中のものです。 12/06/11 08:20:10.10 KvXVvbGJ スレ立て乙 3:名前は開発中のものです。 12/06/11 11:20:47.62 67uf8PuE おつ 4:名前は開発中のものです。 12/06/11 12:30:48.05 yyeWrB0V >>1乙 キー処理部分だけどこんな感じか? int Key,BackKey; Key = GetJoypadInputState(DX_INPUT_PAD1); if(Key != BackKey){ 一回だけの処理 } 5:名前は開発中のものです。 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】の構造体がどうなっているかを見る。 ここも関数化すると良い。押した/離した瞬間や押しっぱなし検出、キーリピートなどもここで。 物理的な入力情報と切り離しているので、キーコンフィグ/リプレイ/ゲームパッド番号などに影響されない。 ただしメニュー画面など、物理ボタンの情報を見たほうが良いかもしれない。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch