問題タブ [gamecontroller]

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.

0 投票する
2 に答える
457 参照

onclick - A フレームで、game-controler.api 'gamepadbuttondown:0' を javascript の onClick イベントに似せるにはどうすればよいですか

A-Frame コントロール アンビエント ライティングで壁にライト スイッチを作成しようとしています。

シーンに実際のライトを配置して名前を付け、javascript を使用して変更を加えました。

ゲーム コントローラーの gamepadbuttondown:0 (または 5) を onClick イベントとして登録できなかったため、スイッチ自体の a-entity にアニメーションを追加し、イベント リスナーを起動して、変化します。

実際のマウスとプログラムされた onClick イベントを備えたデスクトップ PC ではすべてが機能しますが、5 ドルの安価な Mocute コントローラーを備えた VR ヘッドマウントで電話を試すと、行き詰まります。

「gamepadbuttondown:0」を「クリック」に置き換えると、PC では問題なく動作しますが、onClick 関数は最初は問題なく動作し、リモコンで制御することはできません。

次の例のように、gamepadbuttondown:0 はサウンドに対して正常に機能します。

このコントローラーやその他のコントローラーで問題なく動作したため、エラーはアニメーショントリガーイベントのどこかにあります。

アニメーションが機能するようになったら、アニメーションを 100 ミリ秒ではなく 1 ミリ秒に短縮する予定です。イベントを開始する方法としてのみ含めたので、イベントリスナーを使用して、「animationend」がいつ発生したかを確認できました。そして、ユーザーには見えないようにします。

空のアニメーションを使用してみましたが、タイプと方向を省略した場合、ボックスのレンダリングに失敗しました。

実際のマウスを使用する代わりに、ボタン[x]を使用してコントローラーからonclickイベントをトリガーする方法を誰かが知っている場合、可能であればアニメーションを完全にスキップしたいと思います。おそらくレイキャスターソリューションはありますか?内部で Three.js に直接アクセスしていますか?

0 投票する
2 に答える
497 参照

aframe - A-Frame WebVR でのレスポンシブな単一ボタン入力

私の A-Frame WebVR ゲームでは、プラットフォームに関係なく、単一の「コントローラー」ボタンにアクセスする必要があります。マジック ウィンドウまたは Google Cardboard を使用する電話の場合、画面のタップはすべてカウントされます。Gear VR または Daydream の場合、コントローラーの任意のボタンがカウントされます。PC VR リグの場合、いずれかのコントローラーの任意のボタンがカウントされます。

Don McCurdy のユニバーサル コントロール ( https://github.com/donmccurdy/aframe-extras/tree/master/src/controls ) は関連しているように見えますが、それを使用して自分のやりたいことを実行する方法は明確ではありません。

また、GamePad API に直接アクセスして、画面のタップを個別に検出することもできます。

続行するための最良の方法は何ですか?