キーテイクアウト
-
W3Cの提案されている標準であるGamePad APIは、Xboxコントローラーなどのゲーム入力デバイスをブラウザベースのエクスペリエンス用にコンピューターに接続するためのブラウザ全体で一貫したAPIを提供します。
- GamePad APIは柔軟性を提供し、正規化された値を持つボタンと軸へのアクセスを提供し、GamePadオブジェクトは接続されたGamePadのメーカーとモデルに関する詳細情報を提供します。 PXGAMEPADは、Xbox Oneコントローラーのような標準のゲームパッドのより高いレベルの表現を提供するヘルパークラスであり、Xboxコントローラーにラベル付けされたボタンとAxisインデックスを馴染みのある名前にマッピングします。
- GamePad APIは独自のゲームパッドで複数のプレーヤーをサポートできますが、将来の改善により、ユーザーはゲームパッドのボタン機能を再マッピングまたはカスタマイズできる場合があり、APIは3Dモデルの操作とナビゲートなどのゲーム以外のシナリオの可能性を提供します。 。
- この記事は、MicrosoftのWeb開発シリーズの一部です。 SitePointを可能にしてくれたパートナーをサポートしてくれてありがとう。 Web上でのゲームは、Canvas、WebGL、WebAudioなどのHTML5テクノロジーで長い道のりを歩んできました。ブラウザ内で忠実度の高いグラフィックとサウンドを作成できるようになりました。ただし、真のゲーム体験を提供するには、ゲーム用に設計された入力デバイスが必要です。 GamePad APIは、W3Cの提案されている標準であり、ブラウザ全体で一貫したAPIを提供するように設計されています。 GamePad APIを使用すると、ユーザーはXboxコントローラーなどのデバイスをコンピューターに接続し、ブラウザベースのエクスペリエンスに使用できます。ゲームパッドがある場合は、コンピューターにプラグインしてからボタンを押してみてください。下のXboxコントローラーが表示され、作成した各動きをミラーリングしてください!
ここでインタラクティブに試してみてください。 このチュートリアルは、Flight Arcadeのシリーズの3番目であり、Webプラットフォームと新しいMicrosoft EdgeブラウザーとEdgeHTMLレンダリングエンジンで何が可能かを示すために構築されています。 WebGLとWeb APIの最初の2つの記事に加えて、flightArcade.comでこの記事のインタラクティブコードと例を見つけることができます。 [YouTube xyaq9tpmxra]
柔軟なapiGamePad APIは、柔軟性を念頭に置いてインテリジェントに設計されています。基本レベルでは、ボタンと軸へのアクセスを提供します。ボタンの値は[0 .. 1]からの範囲ですが、軸の範囲は[-1 .. 1]です。すべての値はこれらの範囲に正規化されているため、開発者はデバイス間の一貫した動作を期待できます。
GamePadオブジェクトは、接続されたゲームパッドのメーカーとモデルに関する詳細情報を提供します。より便利なのは、GamePadの一般的なタイプを説明するマッピングプロパティです。現在、サポートされている唯一のマッピングは標準であり、Xboxのような多くの人気のあるゲームコンソールが使用するコントローラーレイアウトに対応しています。
標準コントローラーマッピングには2つのスティックがあり、それぞれが2つの軸(xとy)で表されます。また、D-PAD、4つのゲームボタン、トップボタン、トリガーが含まれています。すべてがGamePad APIのボタンとして表されます。
現在のXboxコントローラーは、ボタン状態を0(通常の状態)または1(押された)のいずれかとして報告します。ただし、将来のコントローラーが各ボタンプレスに適用される力の量を報告できると想像できます。Xbox D-PADは離散値(0または1)も報告しますが、スティックは軸範囲全体にわたって連続値を提供します[-1 .. 1]。この追加の精度により、飛行アーケードミッションで飛行機を飛行するのがはるかに簡単になります。
pxgamepadGamePad APIによって提供されるボタンと軸の配列は、低レベルのAPIとして前向きに考えており、完璧です。ただし、ゲームを書くときは、Xbox Oneコントローラーのような標準的なゲームパッドのより高いレベルの表現を持つことは素晴らしいことです。 Xboxコントローラーにラベル付けされているように、ボタンとAxisインデックスをよりよく知られている名前にマッピングするPXGAMEPADという名前のヘルパークラスを作成しました。
ライブラリの興味深い部分をいくつか紹介しますが、完全なソースコード(MITライセンス)はこちらから入手できます:https://github.com/thinkpixellab/pxgamepad
標準のGamePad APIは、ボタン状態を一連のボタンとして提供します。繰り返しますが、このAPIは、さまざまなボタンカウントを持つコントローラーを可能にする柔軟性のために設計されています。ただし、ゲームを書くときは、標準のマッピングボタン名を使用するコードを書き込み、読み取る方がはるかに簡単です。 たとえば、HTML5 GamePad APIを使用して、左のトリガーが現在押しているかどうかを確認するコードを次に示します。
PXGAMEPADクラスには、すべての標準マッピングボタンと軸の状態を収集する更新方法が含まれています。したがって、LeftTriggerが押されているかどうかを判断することは、ブールプロパティにアクセスするのと同じくらい簡単です。
標準のGamePad APIの軸は、数値の配列としても提供されます。たとえば、左スティックの正規化されたxおよびy値を取得するコードを次に示します。
D-PADは特別なケースです。これは、HTML5ゲームパッドAPI(インデックス12、13、14、および15)によって4つのボタンのセットと考えられているためです。ただし、開発者がDPADをスティックの1つと同じ方法で使用できるようにすることが一般的です。 PXGAMEPADは、D-PADのボタンインフォメーションを提供しますが、d-padがスティックであるかのように軸情報をシステム化します。
HTML5 GamePad APIのもう1つの制限は、ボタンレベルのイベントを提供しないことです。ゲーム開発者がボタンを押すために単一のイベントをアクティブにすることは一般的です。飛行アーケードでは、イグニッションとブレーキボタンは良い例です。 PXGAMEPAD WATCHESボタン状態と、発信者がボタンのリリースで通知を登録できるようにします。

a
- b
- x
- y
- lefttop
- righttop
- lefttrigger
- righttrigger
- select
- start
- leftstick
- 右スティック
- dpadup
- dpaddown
- dpadleft
- dpadright
- 現在のゲームパッドを取得して
ゲームパッドオブジェクトを取得するための2つの方法があります。 GamePad APIは、接続されたすべてのゲームパッドの配列を返すGetGamePads()という名前のナビゲーターオブジェクトにメソッドを追加します。また、新しいゲームパッドが接続または切断されるたびに起動される新しいGamePadConnectedおよびGamePaddisconedイベントもあります。たとえば、PXGAMEPADヘルパーが最後の接続されたゲームパッドをどのように保存するかを次に示します。
そして、これはnavigator.getGamepads()APIを使用して最初の標準ゲームパッドを取得するヘルパーです:

PXGAMEPADヘルパークラスは、単一のユーザーが標準マッピングされたゲームパッドを使用してゲームをプレイしているシンプルなシナリオ向けに設計されています。 Microsoft Edgeのような最新のブラウザは、W3C Gampepad APIを完全にサポートしています。ただし、他の一部のブラウザの古いバージョンは、新興仕様のピースのみをサポートしています。 PXGAMEPADは、GamePadConnectedイベントを聴き、必要に応じてすべてのゲームパッドのリストのクエリに戻ります。 GamePadの未来

飛行アーケードの開発中に、Babylon.jsのモデルを処理するためにBlenderやその他の3Dツールを頻繁に使用しました。一部の開発者とアーティストは、3Dマウスと呼ばれるデバイスを使用して、3Dモデルの操作とナビゲートを支援します。これらのデバイスは、6つの軸を通る単一のノブの動きを追跡します!モデルを操作できるようになります。ゲームを超えて、エンジニアリングから医療イメージングまで、さまざまな興味深いアプリケーションで使用されています。 Flight Arcadeにゲームパッドのサポートを追加している間、GamePad APIが3D Spacemouseを検出し、6つの軸すべてに移動データを提供したことを知って驚きました!
新しいGamePad APIが提供するすべての可能性を想像するのはエキサイティングです。新しいGamePad APIを試して、次のゲームやアプリケーションに多くの楽しみを追加するのに最適な時期です!JavaScriptを使用したより実践的な
Microsoftには、多くのオープンソースJavaScriptのトピックに関する無料の学習がたくさんあり、Microsoft Edgeでさらに多くを作成するという使命を担っています。ここにチェックアウトするものがあります:
Microsoft Edge Web Summit 2015(新しいブラウザ、新しいWebプラットフォーム機能、コミュニティのゲストスピーカーで期待すべきことの完全なシリーズ)
-
// build/and windows 10のビルド(サイトとアプリ用の新しいJavaScriptエンジンを含む)
- Webを壊さずにJavaScriptを前進させる(Christian Heilmannの最近の基調講演)
- ホストされたWebアプリとWebプラットフォームのイノベーション(Manifold.jsなどのトピックに関する深いダイビング)
- HTML/JavaScriptをより高速にするための実用的なパフォーマンスのヒント(レスポンシブデザインからカジュアルゲーム、パフォーマンスの最適化まで)
- 最新のWebプラットフォームJumpstart(HTML、CSS、およびJSの基礎)
- および開始するためのいくつかの無料ツール:Visual Studio Code、Azure Trial、およびクロスブラウザーテストツール - すべてMac、Linux、またはWindowsで利用できます。
ゲームパッドAPI
に関するよくある質問GamePad APIは何ですか?GamePad APIは、開発者がGamePadまたはコントローラーからの信号にアクセスして応答できるWebベースのインターフェイスです。このAPIは、あらゆるタイプのゲームパッドで動作するように設計されており、ゲーム開発者にとって汎用性の高いツールになります。サードパーティのソフトウェアやドライバーを使用する必要なく、ゲームパッドと直接やり取りする方法を提供します。
GamePad APIはどのように機能しますか?
GamePad APIは、ゲームパッドからの入力を検出し、ゲーム内のアクションに変換することで機能します。これは、ボタンプレスやジョイスティックの動きなどの特定のイベントをリッスンし、ゲーム内の対応するアクションをトリガーすることで行います。これにより、より没入型でインタラクティブなゲームエクスペリエンスが可能になります。自分のゲームでGamePad APIを使用するにはどうすればよいですか?ゲームのコードで。これには、APIの機能を呼び出し、生成するイベントを聞くことが含まれます。次に、これらのイベントを使用して、キャラクターの動きやメニューナビゲーションなどのゲームの側面を制御できます。幅広いゲームパッドと互換性があります。これには、ボタンとジョイスティックを備えた標準的なゲームパッド、およびステアリングホイールやフライトスティックなどのより専門的なコントローラーが含まれます。 APIは複数のゲームパッドを一度に処理し、マルチプレイヤーゲームを可能にします。より複雑なゲームを作成する。たとえば、GamePad APIを使用してキャラクターの動きを制御できますが、別のAPIを使用してゲームの物理やグラフィックを処理します。GamePad APIはすべてのブラウザーでサポートされていますか?すべてのブラウザが現在それをサポートしているわけではなく、Webベースのインターフェイスです。ただし、Chrome、Firefox、Edgeを含むほとんどの最新のブラウザーは、GamePad APIをサポートしています。開発を開始する前に、APIの現在のブラウザサポートを確認することをお勧めします。 GamePad APIには、正しいゲームパッドの検出、複数のゲームパッドの処理、さまざまなボタンレイアウトの処理が含まれます。これらの問題は通常、APIドキュメントを慎重に読んでゲームを徹底的にテストすることで解決できます。デスクトップブラウザは、モバイルゲームにも使用できます。ただし、これにはモバイルデバイスと互換性のあるゲームパッドが必要であり、ユーザーエクスペリエンスはデスクトップゲームほどスムーズではない場合があります。ゲームパッドをコンピューターに接続し、APIを使用するゲームを実行することにより、ゲームパッドAPIをテストできます。その後、ゲームパッドのボタンを押して、対応するアクションがゲームでトリガーされているかどうかを確認できます。GamePad APIの詳細については、どこで詳しく知ることができますか?
GamePad APIの詳細については、オンラインで利用できるリソースがたくさんあります。これには、公式のAPIドキュメント、およびさまざまなゲーム開発Webサイトのチュートリアルとガイドが含まれます。 APIを使用して動作しているゲームの例を見つけることもできます。
以上がGamePad APIでの真のゲーム体験の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

PythonとJavaScriptの主な違いは、タイプシステムとアプリケーションシナリオです。 1。Pythonは、科学的コンピューティングとデータ分析に適した動的タイプを使用します。 2。JavaScriptは弱いタイプを採用し、フロントエンドとフルスタックの開発で広く使用されています。この2つは、非同期プログラミングとパフォーマンスの最適化に独自の利点があり、選択する際にプロジェクトの要件に従って決定する必要があります。

PythonまたはJavaScriptを選択するかどうかは、プロジェクトの種類によって異なります。1)データサイエンスおよび自動化タスクのPythonを選択します。 2)フロントエンドとフルスタック開発のためにJavaScriptを選択します。 Pythonは、データ処理と自動化における強力なライブラリに好まれていますが、JavaScriptはWebインタラクションとフルスタック開発の利点に不可欠です。

PythonとJavaScriptにはそれぞれ独自の利点があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1. Pythonは、データサイエンスやバックエンド開発に適した簡潔な構文を備えた学習が簡単ですが、実行速度が遅くなっています。 2。JavaScriptはフロントエンド開発のいたるところにあり、強力な非同期プログラミング機能を備えています。 node.jsはフルスタックの開発に適していますが、構文は複雑でエラーが発生しやすい場合があります。

javascriptisnotbuiltoncorc;それは、解釈されていることを解釈しました。

JavaScriptは、フロントエンドおよびバックエンド開発に使用できます。フロントエンドは、DOM操作を介してユーザーエクスペリエンスを強化し、バックエンドはnode.jsを介してサーバータスクを処理することを処理します。 1.フロントエンドの例:Webページテキストのコンテンツを変更します。 2。バックエンドの例:node.jsサーバーを作成します。

PythonまたはJavaScriptの選択は、キャリア開発、学習曲線、エコシステムに基づいている必要があります。1)キャリア開発:Pythonはデータサイエンスとバックエンド開発に適していますが、JavaScriptはフロントエンドおよびフルスタック開発に適しています。 2)学習曲線:Python構文は簡潔で初心者に適しています。 JavaScriptの構文は柔軟です。 3)エコシステム:Pythonには豊富な科学コンピューティングライブラリがあり、JavaScriptには強力なフロントエンドフレームワークがあります。

JavaScriptフレームワークのパワーは、開発を簡素化し、ユーザーエクスペリエンスとアプリケーションのパフォーマンスを向上させることにあります。フレームワークを選択するときは、次のことを検討してください。1。プロジェクトのサイズと複雑さ、2。チームエクスペリエンス、3。エコシステムとコミュニティサポート。

はじめに私はあなたがそれを奇妙に思うかもしれないことを知っています、JavaScript、C、およびブラウザは正確に何をしなければなりませんか?彼らは無関係であるように見えますが、実際、彼らは現代のウェブ開発において非常に重要な役割を果たしています。今日は、これら3つの間の密接なつながりについて説明します。この記事を通して、JavaScriptがブラウザでどのように実行されるか、ブラウザエンジンでのCの役割、およびそれらが協力してWebページのレンダリングと相互作用を駆動する方法を学びます。私たちは皆、JavaScriptとブラウザの関係を知っています。 JavaScriptは、フロントエンド開発のコア言語です。ブラウザで直接実行され、Webページが鮮明で興味深いものになります。なぜJavascrを疑問に思ったことがありますか


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

WebStorm Mac版
便利なJavaScript開発ツール
