問題タブ [directinput]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
directx - DirectXSDK全体なしでDirectInput/XInputを取得できますか?
XInputまたはDirectInputを使用してXbox360コントローラーから読み取る社内アプリを開発しています。(オペレーターの手で複数のコントロールを取得するための最も安価で簡単な方法になると思います。)
すべてのソースとツールをソース管理する必要があります。つまり、SDKも管理する必要があります。DirectXのすべてを使用するのではなく、DirectInputとXInputをDirectX SDK全体から分離できますか?
windows - DirectInput アナログ ジョイスティックの範囲
DirectInput を使用して入力デバイスを処理し、デバイスと各デバイスの要素を列挙します。
ゲーム パッドでアナログ スティックを使用すると、0 ~ 65535 の範囲の値が報告されます。これはすべてのタイプの絶対軸に常に当てはまりますか?
そうでない場合: DX8 入力要素の DIDEVICEOBJECTDATA::dwData (DIDFT_ABSAXIS で列挙) の範囲を調べる方法はありますか? 私が考えることができる他の唯一のオプションは、アプリ内で自家製の内部キャリブレーションを使用することですが、それはあまりにも80年代に聞こえます.
vbscript - 直接入力用の投稿メッセージ
最小化されたビデオ ゲームでマウス クリックをシミュレートしたいと考えています。
私がこれを行っているビデオゲームは、このようなマクロ化を可能にするので、それで問題ありません。
ただし、ゲームは直接入力を使用するため、使用するPostMessage
と機能しSendMessage
ません。
windows - タッチパッドの絶対タッチ座標
アルプスのタッチパッドから直接入力を読み取ることは可能ですか? タッチパッドを安価な描画タブレットに変えようとしているので、物理的なタッチパッドに対してタッチされた場所の生の未処理の x 座標と y 座標を読み取る必要があります。したがって、タッチパッドの左下隅に触れると、(0,0) などに対応するはずです。
ちなみに、Windowsでこれをやろうとしています。
Synaptics のタッチパッドを使って既にこれを行うことができますが、それは Synaptics がデバイスを完全に制御できる優れた SDK を備えているためです。アルプスの類似品は見つかりませんでした。Windows APIまたはdirectinputなどを使用してこれを行う方法はありますか?
c# - DirectX DirectInput C# メジャー オーディオ入力
C# 2008 SP3
私はソフトフォンを開発しましたが、クライアントはマイクが機能しているかどうかをテストする機能を望んでいます。
ノーズレベルに基づいて上下するプログレスバーを考えていました。
これについて少し調べてみました。しかし、オーディオ入力の測定に役立つ directX DirectInput に関するチュートリアルは見つかりませんでした。これが以前に行われたウェブサイトを知っている人はいますか?
direct x でのプログラミングは初めてです。DirectX SDK をダウンロードする必要がありますか?
どうもありがとう、
c++ - エスケープ キーを離したことを DirectX プログラムが認識しないのはなぜですか? (C++)
編集:さらにコードを変更した後も、エラーはまだあります。変更されたコードは次のとおりです。
KeyDown()
:
PollKeyboard()
:
MessageBox をKeyDown()
if ステートメント内に配置しようとすると (以下のゲーム ループを参照)、キーを押すのをやめても MessageBox が表示され続けるだけです。メッセージ ボックスが表示されたら、いいえと言います。消えてからすぐに再び表示されます。まるでキーを保持しているかのようです。
これは私のループです:
編集: の catchPollKeyboard()
は sequence を表示します53gd6bcc
が、対応するエラー コードを見つけることができませんでした。
編集:別のテストの後、MessageBox が KeyDown() if ステートメント内にない場合でも、グリッチが発生することがわかりました。
編集: もう少しテストした後、MessageBox 自体がグリッチを引き起こしているようです。
python - sendinput から directinput (ゲームなど)
直接入力を使用するゲームのキープレスをシミュレートしようとしています。
私はググって、その方法を見つけましたSendIput()
。
keypress を notepad.exe に送信しようとすると問題なく動作しますが、ゲームをしようとしても何も起こりません。このサイトをチェックして、コードを少し編集しましたが、それでもゲームからキープレス イベントが発生しません。
誰でもこれで私を助けることができますか?
Pythonを使用しましたが、ctypes
モジュールをインポートしたので、c/c++の説明は大丈夫です。
c++ - DirectInput または Windows メッセージ ループを使用する必要がありますか?
C++ DirectX 2D ゲームに取り組んでおり、キーボードとマウスの入力が必要です。
ウィキペディアは次のように述べています。
Microsoft は、新しいアプリケーションが DirectInput の代わりにキーボードとマウスの入力に Windows メッセージ ループを利用することを推奨します。
では、どのように使用すればよいですか?
描画と更新 (ゲーム ロジック) を処理する GameScreen クラスがあり、Windows メッセージ ループ内で Draw メソッドと Update メソッドを呼び出します。
ありがとう
windows - DISCL_EXCLUSIVE でマウスが消えるのはなぜですか | DISCL_FOREGROUND モード?
DirectInput を使用している場合、DISCL_EXCLUSIVE | を使用するとマウス カーソルが完全に消えるのはなぜですか。あなたの協力レベルとしてDISCL_FOREGROUND?
DirectInput は廃止されましたが、マウスが WINDOWS でも使用できないという事実は、DirectInput を使用すると (対 RAWINPUT)、応答性がわずかに向上し、より優れていることを意味しますか?
c++ - GetRawInputDataとGetAsyncKeyState()
さて、私は非推奨のDirectInputの使用を避けようとしています。
しかし、ゲームの「フレーム」または「反復」ごとに、それに応じて行動できるように、すべての主要な状態を奪う必要があります。たとえば、プレーヤーがVK_RIGHTキーを押している場合、そのフレーム上でsmidgenだけを右に移動します。
WM_INPUTメッセージの問題は、ゲームループの記述方法が原因で、フレームごとに予測できない回数表示される可能性があることです。
したがって、複数のWM_INPUTメッセージがそこにスタックされている場合、それらはすべてUpdate()/ Draw()の前に処理されます。
BOOLの配列を使用して、どのキーがダウンしていたかを記憶することで、この問題を解決しました。
Update()関数がチェックするため、これは正常に機能します
しかし、問題は、WM_INPUTメッセージが十分な頻度で生成されないことです。プレーヤーがずっと指を下に置いていたとしても、VK_RIGHTの最初の押下とその後のVK_RIGHTメッセージの間に約1秒の遅延があります。これは、DirectInputとは異なりますkeyboard->GetDeviceState( 256, (void*)array_of_keys_that_are_down );
(1回の呼び出しで各フレームのすべてのキー状態をスナッチアウトします)
だから私は迷子になりました。監視する必要のある各キーに対してGetAsyncKeystate()関数呼び出しを使用する以外に、フレームごとにすべてのキー状態を確実に取得できない場合は、DirectInputの使用を回避する方法はありません。
DirectInputはこの問題に対する非常に優れた解決策であるように思われますが、非推奨になった場合は、Win32APIのみを使用してこれを便利に行う方法が本当に必要です。
現在array_of_keys_that_are_down
、すべてのFALSEのすべてのフレームにリセットされます。
*編集
私はこの問題に取り組んできましたが、1つの解決策は、キーの状態が解放されたら、それをリセットすることだけです。
それは薄っぺらなように見えるので、私はこの解決策が好きではありません。ユーザーがキーを押しているときにアプリケーションから離れると、アップストロークWM_INPUTメッセージが表示されないため、ユーザーがスイッチを戻して同じキーをもう一度押すまで、そのキーは「スタック」します。それは奇妙な「スティッキーキー」のバグになります。