JP2023529797A - テザリングによる位置ベースのコンテンツ共有 - Google Patents

テザリングによる位置ベースのコンテンツ共有 Download PDF

Info

Publication number
JP2023529797A
JP2023529797A JP2022567827A JP2022567827A JP2023529797A JP 2023529797 A JP2023529797 A JP 2023529797A JP 2022567827 A JP2022567827 A JP 2022567827A JP 2022567827 A JP2022567827 A JP 2022567827A JP 2023529797 A JP2023529797 A JP 2023529797A
Authority
JP
Japan
Prior art keywords
computing device
digital content
shareable
tethering
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022567827A
Other languages
English (en)
Other versions
JP7441331B2 (ja
Inventor
マッデン,マイケル・イー
スナイダー,ジェシー・ウィリアム
ファイフェ,ジェイク・タイラー
ウィアセク,ジョン
ギーア,マシュー・ダブリュー
Original Assignee
ナンツ・モバイル,エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ナンツ・モバイル,エルエルシー filed Critical ナンツ・モバイル,エルエルシー
Publication of JP2023529797A publication Critical patent/JP2023529797A/ja
Priority to JP2024019944A priority Critical patent/JP2024054321A/ja
Application granted granted Critical
Publication of JP7441331B2 publication Critical patent/JP7441331B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/021Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/63Location-dependent; Proximity-dependent
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/63Location-dependent; Proximity-dependent
    • H04W12/64Location-dependent; Proximity-dependent using geofenced areas
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/04Terminal devices adapted for relaying to or from another terminal or user

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Processing Or Creating Images (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Gyroscopes (AREA)
  • Optical Communication System (AREA)
  • Purification Treatments By Anaerobic Or Anaerobic And Aerobic Bacteria Or Animals (AREA)

Abstract

Figure 2023529797000001
デジタルコンテンツを共有するための方法は、第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置するか否かを決定することと、第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置する場合に、共有可能なデジタルコンテンツのアクセスを第1のコンピューティングデバイスに提供することと、共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成することであって、テザリングオブジェクトが、少なくとも、第1のコンピューティングデバイスにおいて第1のエンドポイントを含み、及び第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにおいて第2のエンドポイントを含む、インスタンスを生成することと、第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにある第2のエンドポイントに対して、テザリングオブジェクトを介して、共有可能なデジタルコンテンツの少なくとも一部のアクセスを提供することと、を含む。コンテンツ共有方法を実装するための他の例示的方法及びコンピュータシステムも開示される。

Description

本開示は、テザリングによる位置ベースのコンテンツ共有に関する。
関連出願の相互参照
本出願は、2020年5月7日に出願された米国仮特許出願第63/021,282号明細書の便益を主張するものである。上記出願の開示内容全体が本明細書に援用される。
本セクションは、必ずしも先行技術ではない、本開示に関連した背景情報を提供する。
様々なコンピューティングデバイスは、テザー接続により、互いに通信可能に結合され得る。幾つかの例では、コンピューティングデバイス間のテザー接続は、有線接続(例えばUSBケーブルなど)又は無線接続を用いて確立することができる。コンピューティングデバイスが無線接続によってテザーされる場合、コンピューティングデバイス上のソフトウェアは、コンピューティングデバイスの一方(例えば携帯電話)が、他方の接続されたコンピューティングデバイス(例えばノートパソコン)のためのホットスポット(例えばモデム)として動作することを可能にし得る。一般的に、無線テザー接続は、安定した無線接続(例えば802.11)が確立及び維持されることを確実にするために、接続されたコンピューティングデバイスが(物理的に)同じジオロケーションにあることを必要とする。
このセクションは、本開示の一般的概要を提供し、それの完全な範囲、又はそれのフィーチャのすべての包括的開示ではない。
本開示の一態様によれば、デジタルコンテンツを共有するためのシステムが提示される。このシステムは、1つ又は複数のコンピュータデジタルコンテンツサーバと、1つ又は複数のコンピュータデジタルコンテンツサーバと通信する第1のコンピューティングデバイスと、第1のコンピューティングデバイス及び/又は1つ又は複数のコンピュータデジタルコンテンツサーバと通信する第2のコンピューティングデバイスと、を含む。第2のコンピューティングデバイスは、第1のコンピューティングデバイスから遠く離れている。1つ又は複数のコンピュータデジタルコンテンツサーバは、位置センサデータに基づいて、第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置するか否かを決定し、第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置する場合に、共有可能なデジタルコンテンツのアクセスを第1のコンピューティングデバイスに提供するように構成される。第1のコンピューティングデバイス、第2のコンピューティングデバイス、及び/又は1つ又は複数のコンピュータデジタルコンテンツサーバが、共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成するように構成される。テザリングオブジェクトは、第1のコンピューティングデバイスにおいて第1のエンドポイントを含み、及び第2のコンピューティングデバイスにおいて第2のエンドポイントを含む。第2のコンピューティングデバイスは、第2のエンドポイントにおいて、テザリングオブジェクトを介して、共有可能なデジタルコンテンツの少なくとも一部を受信するように構成される。
本開示の別の態様によれば、デジタルコンテンツを共有するための1つ又は複数のコンピュータデジタルコンテンツサーバによって実行されるコンピュータ実装方法が開示される。この方法は、位置センサデータに基づいて、第1のコンピューティングデバイスが規定の地理的エリア内に又は地理的場所に近接して物理的に位置するか否かを決定することと、第1のコンピューティングデバイスが規定の地理的エリア内に又は規定の地理的エリアに近接して物理的に位置する場合に、共有可能なデジタルコンテンツのアクセスを第1のコンピューティングデバイスに提供することと、共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成することと、を含む。テザリングオブジェクトは、少なくとも、第1のコンピューティングデバイスにおいて第1のエンドポイントを含み、及び第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにおいて第2のエンドポイントを含む。この方法は、第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにある第2のエンドポイントに対して、テザリングオブジェクトを介して、共有可能なデジタルコンテンツの少なくとも一部のアクセスを提供することをさらに含む。
本開示のさらに別の態様によれば、コンピュータ実行可能命令を含む非一時的コンピュータ可読媒体が開示される。コンピュータ実行可能命令は、位置センサデータに基づいて、第1のコンピューティングデバイスが規定の地理的エリア内に又は地理的場所に近接して物理的に位置するか否かを決定することと、第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置する場合に、共有可能なデジタルコンテンツのアクセスを第1のコンピューティングデバイスに提供することと、共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成することと、を行うためにプロセッサによって実行可能である。テザリングオブジェクトは、少なくとも、第1のコンピューティングデバイスにおいて第1のエンドポイントを含み、及び第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにおいて第2のエンドポイントを含む。コンピュータ実行可能命令は、第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにある第2のエンドポイントに対して、テザリングオブジェクトを介して、共有可能なデジタルコンテンツの少なくとも一部のアクセスを提供するために、プロセッサによってさらに実行可能である。
適用性のさらなる態様及び分野は、本明細書で提供される説明から明らかとなるだろう。本開示の様々な態様が、個々に、又は1つ若しくは複数の他の態様と組み合わせて実装され得ることが理解されるものとする。本明細書の記載及び具体例が単なる例示目的のものであり、本開示の範囲を限定することを意図しないことも理解されるものとする。
本明細書に記載の図面は、選択された実施形態の単なる例示目的のものであり、すべての可能な実装態様ではなく、本開示の範囲を限定することは意図されない。
本開示の1つの例示的実施形態による、位置ベースのデジタルコンテンツを共有するためのコンピュータ実装方法のブロック図である。 別の例示的実施形態による、位置ベースのデジタルコンテンツを共有するためのテザリング接続を形成する、ホストコンピューティングデバイス及びリモートコンピューティングデバイスを含むシステムのブロック図である。 さらに別の例示的実施形態による、位置ベースのデジタルゲームコンテンツを共有するための、ホストコンピューティングデバイス、リモートコンピューティングデバイス、及びコンピュータサーバを含むゲームシステムの図である。 さらに別の例示的実施形態による、ホストコンピューティングデバイスを中心とした円形ハローの図である。 別の例示的実施形態による、それぞれが異なるホストコンピューティングデバイスを中心とする2つの結合したバブルから形成されるハローの図である。 さらに別の例示的実施形態による、それぞれが異なるホストコンピューティングデバイスの周りに広がる3つの重複する楕円形ハローの図である。 別の例示的実施形態による、ライバルパーティに対応した2つの別個の非重複ハローの図である。 さらに別の例示的実施形態による、例示的コンピュータサーバのブロック図である。 別の例示的実施形態による、例示的コンピューティングデバイスのブロック図である。
対応する参照符号は、図面の幾つかの図を通して、対応する(必ずしも同一ではない)部分及び/又はフィーチャを示す。
本開示が完全なものとなり、その範囲を当業者に完全に伝達するように、例示的実施形態を提供する。本開示の実施形態の完全な理解をもたらすために、特定のコンポーネント、デバイス、及び方法の例などの多数の特定の詳細を記載する。特定の詳細が用いられる必要はないこと、例示的実施形態が多くの異なる形態で具現化され得ること、及びどちらも本開示の範囲を限定すると見なされるべきではないことが当業者には明らかとなるだろう。幾つかの例示的実施形態では、周知のプロセス、周知のデバイス構造、及び周知の技術は、詳細に説明されない。
本明細書で使用される用語は、単に特定の例示的実施形態を説明するためのものであり、限定することを意図したものではない。本明細書では、「1つの(a)」、「1つの(an)」、及び「その(the)」といった単数形は、文脈上明白にそうではないことを示す場合を除き、複数形も含むことが意図され得る。「含む(comprises)」、「含む(comprising)」、「含む(including)」、及び「有する(having)」といった用語は、包括的であり、したがって、記述したフィーチャ、整数値、ステップ、動作、要素、及び/又はコンポーネントの存在を指定するが、1つ又は複数の他のフィーチャ、整数値、ステップ、動作、要素、コンポーネント、及び/又はそれらのグループの存在又は追加を除外しない。本明細書に記載の方法のステップ、プロセス、及び動作は、実施の順序として明確に識別されない限り、必ず説明された、又は図示された特定の順序でそれらの実施を必要とすると見なされるものではない。追加又は代替のステップが用いられ得ることも理解されるものとする。
様々な要素、コンポーネント、領域、層、及び/又はセクションを説明するために、第1の、第2の、第3のなどの用語が本明細書で使用されることがあるが、これらの要素、コンポーネント、領域、層、及び/又はセクションは、これらの用語によって限定されるものではない。これらの用語は、ある要素、コンポーネント、領域、層、又はセクションを別の要素、コンポーネント、領域、層、又はセクションと区別するためだけに使用され得る。本明細書で使用される「第1の」、「第2の」、及び他の数に関する用語などの用語は、文脈によって明白に示されない限り、シーケンス又は順序を意味するものではない。したがって、以下に説明する第1の要素、コンポーネント、領域、層、又はセクションは、例示的実施形態の教示から逸脱することなく、第2の要素、コンポーネント、領域、層、又はセクションと呼ぶことができる。
「内側の(inner)」、「外側の(outer)」、「~のすぐ下に(beneath)」、「~の下に(below)」、「下側の(lower)」、「~の上に(above)」、「上側の(upper)」などの空間的相対語は、図面に示された、別の1つ若しくは複数の要素又は1つ若しくは複数のフィーチャに対する、ある要素又はフィーチャの関係を説明するための記述を簡単にするために、本明細書で使用されることがある。空間的相対語は、図面に描かれた配向に加えて、使用時又は動作時のデバイスの異なる配向を包含することが意図される場合がある。例えば、図面のデバイスが上下反対にされると、他の要素又はフィーチャの「下に」又は「すぐ下に」と記載された要素は、上記他の要素又はフィーチャの「上に」配向される。したがって、「下に」という例示的用語は、上及び下の両方の配向を包含し得る。デバイスは、別様に配向されてもよく(90度回転される、又は他の配向で)、本明細書で使用される空間的相対記述子は、それに応じて解釈され得る。
これより、添付の図面を参照して、例示的実施形態をより完全に説明する。
本開示の1つの例示的実施形態による、複数のコンピューティングデバイス間でデジタルコンテンツを共有するためのコンピュータ実装方法が、図1に示され、一般に参照番号100で示される。コンピュータ実装方法100は、ブロック102において、ホストコンピューティングデバイスが、物理的に規定の地理的エリア内に、又は地理的場所に近接して位置するか否かを決定することによって開始される。ブロック102においてnoであれば、本方法は終了する。他の例では、方法100は、必要に応じて、(例えば、遅延後に)ブロック102に戻ってもよい。ブロック102においてyesであれば、方法100は、ブロック104に進み、ホストコンピューティングデバイスが物理的に規定の地理的エリア内に、又は規定の地理的エリアに近接して位置する場合に、共有可能なデジタルコンテンツのアクセスをホストコンピューティングデバイスに提供する。方法100は、ブロック106において、共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成することと、ブロック108において、テザリングオブジェクトを介して、共有可能なデジタルコンテンツの少なくとも一部のアクセスをリモートコンピューティングデバイスに提供することとをさらに含む。
このような例では、リモートコンピューティングデバイスが地理的エリア外に、又は地理的場所の遠位に位置し得るとしても、リモートコンピューティングデバイスは、ホストコンピューティングデバイスが関与するデジタルコンテンツの一部(又はすべて)に対するアクセスを取得し得る。例えば、デジタルコンテンツは、地理的エリア又は場所に拘束されてもよく、コンピューティングデバイス(例えばホストコンピューティングデバイス)は、コンピューティングデバイスが地理的エリア内にある場合にのみコンテンツにアクセスし得る。このような例では、ホストコンピューティングデバイスが地理的エリア内に存在した時点で、テザリングオブジェクトが確立され、それによって、地理的エリア外に位置するリモートコンピューティングデバイスが位置ベースのデジタルコンテンツの一部(又はすべて)にアクセスすることが可能となり得る。そのため、ホストコンピューティングデバイスは、リモートコンピューティングデバイスへのコンテンツ配信のためのプロキシとして動作し得る。
上記で説明した通り、デジタルコンテンツは、テザリングオブジェクトを介して共有される。このような例では、テザリングオブジェクトは、複数のコンピューティングデバイス間の通信チャネルを含む。幾つかの例では、様々なコンピューティングデバイス間で、複数のテザリングオブジェクトが作成され得る。例えば、1つ又は複数のテザリングオブジェクトが、ホストコンピューティングデバイス及びリモートコンピューティングデバイス間で、ホストコンピューティングデバイス及び他のリモートコンピューティングデバイス間で、ホストコンピューティングデバイス及び1つ又は複数のコンピュータサーバ間で、リモートコンピューティングデバイス及び1つ又は複数のコンピュータサーバ間などで作成されてもよい。このような例では、テザリングオブジェクトは、ホストコンピューティングデバイス及びリモートコンピューティングデバイス間の直接的通信、及び/又は1つ若しくは複数のコンピュータサーバを用いたホストコンピューティングデバイス及びリモートコンピューティングデバイス間の間接的通信を表し得る。例えば、テザリングオブジェクトは、1つ又は複数のTCP/IP、UDP/IP、HTTP、HTTPS、又は2つのデバイス間の、若しくは3つ以上のデバイス間の他のネットワークプロトコル接続を含み得る。このようなネットワーク接続は、直接的なピアツーピア接続、又は中継デバイス(例えば、サーバ、ハブ、クラウドサービスなど)を介した接続を含み得る。
各テザリングオブジェクトは、コンピューティングデバイスの1つ又は複数の非一時的コンピュータ可読メモリに保存された1つ又は複数のソフトウェアオブジェクト(例えばソフトウェアアプリケーション)をさらに含み得る。例えば、各テザリングオブジェクトは、実行可能ソフトウェア命令及び対応するデータ構造を含み得る。このような例では、ホストコンピューティングデバイス、リモートコンピューティングデバイス、1つ又は複数のコンピュータサーバなどのシステム内のコンピューティングデバイスの何れかの非一時的コンピュータ可読メモリにおいて、各テザリングオブジェクト又はそれの一部のインスタンスが生成されてもよい。したがって、1つ又は複数のテザリングオブジェクトは、データメンバー、方法、又は他のオブジェクト指向フィーチャを含むテザリングクラスオブジェクトからのものでもよい。
各テザリングオブジェクトは、2つのコンピューティングデバイス間の、又は3つ以上のコンピューティングデバイス間の通信チャネルを確立するための2つ以上のエンドポイントも含み得る。例えば、テザリングオブジェクトが、ホストコンピューティングデバイス及びリモートコンピューティングデバイス間で確立された場合、テザリングオブジェクトは、ホストコンピューティングデバイスにおける1つのエンドポイントと、リモートコンピューティングデバイスにおける別のエンドポイントとを含み得る。この例では、デジタルコンテンツへのアクセスは、これらのコンピューティングデバイスにおけるエンドポイントを介して提供される。単一のテザリングオブジェクトが、位置ベースのコンテンツ、又はロケーション拘束コンテンツとの集合的な通信エンドポイントの管理を可能にするため、このようなテザリングオブジェクトが技術的利点を提供することを理解されたい。
幾つかの例では、異なる複数のテザークラスに基づいて、テザリングオブジェクトのインスタンスが生成されてもよい。例えば、ホストコンピューティングデバイスが、通信チャネルに関するホストコンピューティングデバイスの責任を管理するホストテザリングオブジェクトのインスタンスを生成することができ、リモートコンピューティングデバイスが、リモートコンピューティングデバイスの責任を管理するリモートテザリングオブジェクトのインスタンスを生成することができ、1つ又は複数のコンピュータサーバが、関連のホスト及び/又はリモートテザリングオブジェクト間を調整するサーバテザリングオブジェクトのインスタンスを生成することなどができる。
デジタルコンテンツは、規定の地理的エリア、地理的場所、又は他の位置ベースのフィーチャに拘束されてもよい。例えば、規定の地理的エリアに拘束されたデジタルコンテンツは、例えば1つ又は複数のコンピュータサーバ、ホストコンピューティングデバイス、リモートコンピューティングデバイスなどによって識別されてもよい。このような例では、デジタルコンテンツは、ホストコンピューティングデバイスが規定の地理的エリア内に、又は対応した場所に近接して物理的に位置する(例えば、実世界の場所)場合にのみ、ホストコンピューティングデバイスによってアクセスされ得る。地理的エリアは、そのエリアが、位置センサデータのエラーを考慮しつつ、十分に小さい場合は、場所と見なされ得ることを理解されたい。
ホストコンピューティングデバイスは、1つ又は複数のセンサを使用することによって、規定の地理的エリア内に物理的に位置することを決定され得る。例えば、ホストコンピューティングデバイスは、1つ又は複数のセンサを含み得る。このような例では、ホストコンピューティングデバイスが規定の地理的エリア内に物理的に位置するか否かを決定することは、ホストコンピューティングデバイスの1つ又は複数のセンサ(例えば、コンピューティングデバイスに搭載された1つ又は複数のセンサ、GPS、SLAM、vSLAM、IMUなど)によって提供されたデータに基づいてもよい。追加的及び/又は代替的に、ホストコンピューティングデバイスが規定の地理的エリア内に物理的に位置するか否かを決定するために、ホストコンピューティングデバイスの外部の1つ又は複数のセンサが使用されてもよい。例えば、1つ又は複数のセンサは、ホストコンピューティングデバイス(及び/又は他のコンピューティングデバイス)の追跡、観測、識別などを行うために、規定の地理的エリア内に、及び/又は規定の地理的エリアの周囲に位置付けられてもよい。
幾つかの例では、テザリングオブジェクトのインスタンスが生成されるときに、デジタルコンテンツへのアクセスが提供される。例えば、ホストコンピューティングデバイスは、テザリングオブジェクトのインスタンスが生成された後であり、且つそれが規定の地理的エリア内にある間にのみ、デジタルコンテンツにアクセスでき得る。このような例では、ホストコンピューティングデバイス及びリモートコンピューティングデバイスは、ほぼ同時にデジタルコンテンツへのアクセスを取得し得る。他の例では、ホストコンピューティングデバイスは、規定の地理的エリアに入った後に、デジタルコンテンツへのアクセスを取得する。このような例では、ホストコンピューティングデバイスは、テザリングオブジェクトのインスタンスが生成される前に(したがって、リモートコンピューティングデバイスがデジタルコンテンツへのアクセスを取得する前に)デジタルコンテンツへのアクセスを取得し得る。
デジタルコンテンツへのアクセスは、異なるやり方で提供されてもよい。例えば、1つ又は複数のコンピュータサーバは、デジタルコンテンツ(又はその一部)をホストコンピューティングデバイス及び/又はリモートコンピューティングデバイスに送信し得る。一部の例では、デジタルコンテンツは、本明細書で説明されるように、1つ又は複数の確立されたテザリングオブジェクトを介して(例えば、あるエンドポイントから別のエンドポイントへと)送信され得る。他の例では、デジタルコンテンツの一部又はすべては、ホストコンピューティングデバイスに保存されてもよく(例えば、ホストコンピューティングデバイスの非一時的コンピュータ可読メモリに保存される)、及び/又はリモートコンピューティングデバイスに保存されてもよい(例えば、リモートコンピューティングデバイスの非一時的コンピュータ可読メモリに保存される)。例えば、1つ又は複数の条件が満たされた場合に(例えば、ホストコンピューティングデバイスが、規定の地理的エリア内にある、テザリングオブジェクトが確立されるなど)、保存されたデジタルコンテンツ(又はそれの一部)が、アクセス可能となり、コンピューティングデバイスにおけるテザリングオブジェクトのエンドポイントに提供され得る。このような例では、保存されたデジタルコンテンツは、1つ又は複数の条件が満たされた場合に、アンロック、復号などが行われてもよい。このような例では、共有可能なデジタルコンテンツは、例えばバイナリファイル、JSONデータ、XMLデータ、及び/又はネットワーク(例えば、セルネットワーク、パケット交換ネットワークなど)上での伝送に対応した他の適切なデータフォーマットとして、送信、保存などが行われ得る。
本明細書に開示されるコンピュータ実装方法は、本明細書に開示されるシステムの何れか1つを含む任意の適切なシステムによって実装され得る。例えば、図2は、コンピュータデジタルコンテンツサーバ202、ホストコンピューティングデバイス204(例えば、携帯電話、スマートフォン、タブレット、ゲーム機など)、及びリモートコンピューティングデバイス206(例えば、スマートフォン、タブレット、ゲーム機、コンピュータなど)を含むシステム200を示す。図2の例では、リモートコンピューティングデバイス206は、ホストコンピューティングデバイス204から遠く離れている。図示されるように、コンピューティングデバイス204、206及びコンピュータサーバ202は、例えば通信ネットワーク208を介して互いに通信している。コンピュータサーバ202が1つだけ示されているが、必要に応じて、システム200が2つ以上のコンピュータサーバを含み得ることは明白であるだろう。
図2の例では、コンピュータデジタルコンテンツサーバ202又は別の同様の能力があるデバイスが、上記で説明した通り、位置センサデータに基づいて、ホストコンピューティングデバイス204が規定の地理的エリア210内に物理的に位置するか否かを決定する。ホストコンピューティングデバイス204が規定の地理的エリア210内に位置する場合、コンピュータサーバ202は、デジタルコンテンツのアクセスをホストコンピューティングデバイス204に提供する。上記で説明した通り、このコンテンツは、規定の地理的エリア210に拘束され得る。例えば、デジタルコンテンツは、データベース、又は位置情報を用いてデジタルコンテンツにアクセス可能な別のアドレッシングシステムに保存されてもよい。データベースは、S2セルID、緯度-経度ペア、Google Plus Code、又は他の位置情報に基づいて関連のデジタルコンテンツを保存するように構成され得る。サーバ202は、位置情報をデータベースに提出することによって、デジタルコンテンツを検索することができ、今度は、データベースが、デジタルコンテンツ又はデジタルコンテンツへのリンクを含む結果セットで応答し得る。
コンピュータデジタルコンテンツサーバ202は、上記で説明した通り、ホストコンピューティングデバイス204が規定の地理的エリア210内にあるか否かを決定するためのデータを受信し得る。例えば、ホストコンピューティングデバイス204は、それの任意のオンボードセンサ212からのデータに基づいて、それの物理的位置を決定し、次に、その物理的位置をコンピュータサーバ202に送信して、デバイス204が規定の地理的エリア210内にあるか否かを決定し得る。他の実施形態では、コンピュータサーバ202は、上記で説明した通り、センサ212から受信したデータ、デバイス204の外部であり、及び規定の地理的エリア210の近くの別の任意のセンサ214から受信したデータなどに基づいて、ホストコンピューティングデバイス204の物理的位置(及びそれが規定の地理的エリア210内にあるか否か)を決定し得る。
コンピューティングデバイスの何れか1つは、デジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成し得る。例えば、コンピュータサーバ202、ホストコンピューティングデバイス204、及び/又はリモートコンピューティングデバイス206は、テザリングオブジェクトのインスタンスを生成し得る。例えば、テザリングオブジェクトは、ホストコンピューティングデバイス204における1つのエンドポイントと、リモートコンピューティングデバイス206における別のエンドポイントとを含み得る。
リモートコンピューティングデバイス206は、テザリングオブジェクトを介して、それのエンドポイントにおいて、デジタルコンテンツの少なくとも一部を受信する。例えば、ホストコンピューティングデバイス204は、それが規定の地理的エリア210内に位置する場合にデジタルコンテンツの少なくとも一部を受信し、次に、テザリングオブジェクトを介して、受信したデジタルコンテンツ(又はその一部)をリモートコンピューティングデバイス206のエンドポイントに送信し得る。他の例では、コンピュータサーバ202は、テザリングオブジェクトを介して、デジタルコンテンツ(又はその一部)をリモートコンピューティングデバイス206のエンドポイントに送信し得る。さらに他の例では、デジタルコンテンツ(又はその一部)は、上記で説明した通り、リモートコンピューティングデバイス206上に保存されてもよく、リモートコンピューティングデバイス206は、保存されたコンテンツにアクセスすることによって、(そのエンドポイントにおいて)デジタルコンテンツを受信し得る。
幾つかの例では、コンピューティングデバイス(コンピュータサーバ202を含む)の何れか1つは、テザリングプロセスを開始するために、テザリング要求を送り得る。例えば、ホストコンピューティングデバイス204は、リモートコンピューティングデバイス206、コンピュータサーバ202、及び/又はシステム200内の別のコンピューティングデバイスに対してテザリング要求を送り得る。追加的及び/又は代替的に、リモートコンピューティングデバイス206は、ホストコンピューティングデバイス204、コンピュータサーバ202、及び/又はシステム200内の別のコンピューティングデバイスに対してテザリング要求を送り得る。他の例では、コンピュータサーバ202が、コンピューティングデバイス204、206の一方又は両方、及び/又はシステム200内の別のコンピューティングデバイスにテザリング要求を送り得る。
リモートコンピューティングデバイス206は、それがデジタルコンテンツ(又はその一部)を受信する前に、1つ又は複数の条件を満たすことを必要とされ得る。幾つかの例では、リモートコンピューティングデバイス206は、リモートコンピューティングデバイス206の仮想位置及び/又は物理的位置が規定の地理的エリア210内にある場合にのみ、デジタルコンテンツ(又はその一部)を受信し得る。例えば、テザリングオブジェクトが確立されたときに、リモートコンピューティングデバイス206は、ホストコンピューティングデバイス204と共に規定の地理的エリア210内にあるという仮想的存在を有し得る。このような例では、リモートコンピューティングデバイス206は、リモートコンピューティングデバイス206のリモートユーザが規定の地理的エリア210内に仮想的に位置するため、デジタルコンテンツを受信し得る。他の例では、リモートコンピューティングデバイス206は、ホストコンピューティングデバイス204から特定の距離の範囲内に物理的に位置することを必要とされ得る。
地理的エリア210及び/又は本明細書に開示する他の地理的エリアは、様々な異なる要因によって規定され得る。例えば、以下にさらに説明するように、地理的エリアは、特定のランドマークの周囲にジオフェンスエリアを形成する1組の座標によって規定されてもよい。一部の例では、地理的エリアは、絶対的(例えば、固定された)地理的エリアでもよい。他の例では、地理的エリアは、特定のホストコンピューティングデバイス、特定のホストコンピューティングデバイスの位置、及び/又は関与するコンピューティングデバイス、関与するコンピューティングデバイスの数などに基づいて、時間とともに変化し得る(例えば、形状、半径、位置などが変化する)相対的地理的エリアでもよい。例えば、地理的エリア210は、図2に示されるような固定されたジオフェンスエリア、移動し、及びホストコンピューティングデバイス204を中心とした状態を保つ相対的ジオフェンス(例えばハロー(halo))などでもよい。
図2の例では、コンピュータデジタルコンテンツサーバ202は、コンピューティングデバイス204、206間の通信用のハブとして機能し得る。複数のリモートコンピューティングデバイス及び/又は複数のホストコンピューティングデバイスがテザリングイベントに関与する他の例では、ハブスポークネットワーキングトポロジが実装され得る。任意選択的に、例えば、スタートポロジ、多対多トポロジ、リングトポロジ、メッシュトポロジ、線状チェーントポロジ、バストポロジ、完全接続トポロジ、ツリートポロジなどを含む、もう1つの他のテザリングトポロジも実装され得る。他の例では、コンピューティングデバイス204、206は、上記で説明した通り、通信がコンピュータサーバ202を通ることを必要とせずに、テザリングオブジェクトを介して直接通信し得る。
本明細書に開示する位置ベースのデジタルコンテンツ共有フィーチャは、様々な異なるアプリケーションに適用可能となり得る。例えば、以下にさらに説明するように、位置ベースのデジタルコンテンツ共有フィーチャは、コンピュータベースのゲームアプリケーション及び/又は他の拡張現実アプリケーションにおいて有用な場合がある。以下の記載は、コンピュータベースのゲームアプリケーションに対する位置ベースのデジタルコンテンツ共有フィーチャを説明するが、これらのフィーチャは、以下にさらに説明するように、様々な他の適切なアプリケーションで用いられ得ることが明らかとなるだろう。
図3は、コンピュータサーバ302、ホストコンピューティングデバイス304(例えばスマートフォン)、及びリモートコンピューティングデバイス306(例えば、別のスマートフォン)を含むゲームシステム300を示す。コンピュータサーバ302、ホストコンピューティングデバイス304、及びリモートコンピューティングデバイス306は、図2のコンピュータサーバ202、ホストコンピューティングデバイス204、及びリモートコンピューティングデバイス206と類似のフィーチャを含み、及び類似の機能を行い得る。複数のデバイス(コンピュータサーバ302を含む)は、本明細書において説明されるように、1つ又は複数のテザーオブジェクトによって、位置ベースのデジタルコンテンツを共有することができる。図3の特定の例では、デジタルコンテンツは、拡張現実(AR)コンテンツ及び/又はゲームコンテンツであり、城及びドラゴン(まとめてデジタルコンテンツ312に参照させられる)として示されている。
コンピュータサーバ302は、デジタルコンテンツ312を管理し得る。例えば、図3に示されるように、コンピュータサーバ302は、テザリングサーバ、ゲームサーバ、位置ベースのコンテンツデータベース/サーバなどを含み得る。このような例では、テザリングサーバは、コンピューティングデバイス(用いられた場合)間の1つ又は複数のテザリングオブジェクトを管理し、ゲームサーバは、ゲームの提供、管理などを行い、コンテンツデータベース/サーバは、デジタルコンテンツ312の保存及び/又は管理を行う。図3の特定の例では、コンピューティングデバイス304、306は、矢印314a、314bで示されるように、コンピュータサーバ302と(例えば、通信ネットワークなどを介して)通信可能に結合される。コンピュータサーバ302はすべて、すべてのサービスのために1つのサーバ上で、又は複数のサーバ上で走るように構成され得る。追加的に、各コンピュータサーバ(例えば、ゲームサーバ、テザリングサーバ、及び位置ベースのコンテンツデータベース/サーバ)は、複数のコンピューティングデバイスを含み得る。これらのサーバは、1つの場所、又は複数の場所に存在してもよく、或いはサーバの1つ又は複数、又はハイブリッド構成としてモバイルデバイスの一方又は両方を使用し得る。
図3の例では、コンピュータサーバ302は、コンピューティングデバイス304、306間の通信用のハブとして動作し得る。このような例では、上記で説明した通り、様々なテザリングトポロジが用いられ得る。代替的に、コンピューティングデバイス304、306は、通信がコンピュータサーバ302の何れか1つを通ることを必要とせずに、テザリングオブジェクトの通信チャネルを介して直接通信し得る。
図3に示されるように、コンピューティングデバイス304、306は、スマートフォンなどのモバイルコンピューティングデバイスである。一部の例では、コンピューティングデバイス304、306の一方又は両方は、タブレット、ノートパソコン、モバイルゲーム機などの別の適切なモバイルコンピューティングデバイスでもよい。他の例では、コンピューティングデバイス304、306の一方又は両方は、据え置き型コンピューティングデバイスでもよい。例えば、リモートコンピューティングデバイス306は、家の中に位置する据え置き型デスクトップコンピューティングデバイスでもよい。
図3の例では、デジタルコンテンツ312は、実世界の規定の地理的エリア又は場所に拘束される。このような例では、ホストコンピューティングデバイス304は、それの物理的(実世界)位置が規定の地理的エリア内にあるとき、及び/又は任意の認可、認証などの問題が解決した後にのみ、デジタルコンテンツ312にアクセスすることができる。例えば、規定の地理的エリアは、図3の陰影付き部分によって示されるような街区でもよい。このような例では、デジタルコンテンツ312(例えば、ドラゴン及び城)は、この地理的エリアにアンカーで固定され、又はその他の方法で、この地理的エリアに拘束される。
ホストコンピューティングデバイス304が地理的エリアに入るときに、ホストコンピューティングデバイス304上のゲームアプリケーションは、図3に示されるように、ホストプレーヤ308に対してデジタルコンテンツ312をレンダリングする(例えば、提示、表示など)。この時点で、ホストプレーヤ308は、要望通りにデジタルコンテンツ312に関与することができる。例えば、ホストプレーヤ308は、(例えばゲームアプリケーションによって)ドラゴンとインタラクトすること、城の中、及び城のまわりのエリアを探検することなどを行うことができる。
幾つかの例では、ゲームは、複数のプレーヤを必要とし得る。例えば、ゲームは、ゲームの課題を克服するため、デジタルコンテンツ312とインタラクトするなどのために、複数の協働するプレーヤを必要とする場合がある。このような例では、リモートプレーヤ310が、本明細書に説明するように、もう1つのテザリングオブジェクトに依存することによって、この関与に参加することができる。例えば、リモートコンピューティングデバイス306は、ホストコンピューティングデバイス304及び/又はコンピュータサーバ302から、パーティに加わるための招待を受け取ること、パーティに加わるための要求をホストコンピューティングデバイス304及び/又はコンピュータサーバ302に送ることなどができる。
ホストコンピューティングデバイス304、リモートコンピューティングデバイス306、及び/又はコンピュータサーバ302の何れか1つは、コンピューティングデバイス304、306がどのように位置ベースのコンテンツに関与するかの挙動を規制するテザリングオブジェクトのインスタンスを生成し得る。図3の特定の例では、インスタンス生成されたテザリングオブジェクトは、破線314cによって表される。このような例では、テザリングオブジェクト314cの1つのエンドポイントは、ホストコンピューティングデバイス304にあり、テザリングオブジェクト314cの別のエンドポイントは、リモートコンピューティングデバイス306にある。そのため、テザリングオブジェクト314cは、コンピューティングデバイス304、306間の直接的接続でもよい。他の例では、1つ又は複数のテザリングオブジェクトが、コンピューティングデバイス304、306とコンピュータサーバ302のテザリングサーバとの間で確立され得る。そのため、テザリングオブジェクトは、コンピューティングデバイス304、306間で間接的接続を成し得る。このような例では、テザリングオブジェクトのエンドポイントの少なくとも1つが、テザリングサーバに位置し得る。
テザリングオブジェクト314cのインスタンス生成、テザリングオブジェクト314cの作成、テザリングオブジェクト314cの起動などが行われると、リモートコンピューティングデバイス306は、ロケーション拘束コンテンツ312に関与することができる。例えば、コンテンツデータベース/サーバ及び/又はホストコンピューティングデバイス304は、リモートプレーヤ310に対するレンダリング(例えば、提示、表示など)のためにデジタルコンテンツ312をリモートコンピューティングデバイス306に送信し得る。幾つかの実施形態では、リモートプレーヤ310は、ホストプレーヤ308がデジタルコンテンツ312に関与することを見ることによって、受動的に参加する。これは、Twitch.TV及び/又は別の適切なストリーミングサービスなどのストリーミングサービスによって達成され得る。幾つかの例では、ストリーミング及び/又は受動的リモートプレーヤ310は、1つ又は複数のテザリングオブジェクトの挙動、規定の地理的エリアなどを変え得る。
リモートプレーヤ310に関する別の選択肢は、恒常的にテザーされたプレーヤとしてゲームをプレイし、twitch.tvなどのメディアサービス上でイベントをストリーミングすることである。その結果、リモートプレーヤ310は、自身のストリーミングメディアオーディエンスからの他のプレーヤが、現在進行中のゲームプレイを見ることによって、ゲームに受動的に参加することを可能にし得る。オーディエンスプレーヤは、テザーの挙動を変えること、或いはドネーション、及び/又はハローの形状距離などのテザーを多少変更するコマンドによって能動的にゲームに参加することが許され得る。さらに、リモートプレーヤ310は、テザーによって、ゲームに参加するようにフレンド又はオーディエンスのメンバーを招待することができ、又はリモートプレーヤ310は、ストリーミングプレーヤに直接テザーすることが可能であり、それによって、他のプレーヤが、直接ホストプレーヤ308にではなく、リモートプレーヤの場所にテザーされることが可能となる。この手法は、テザーのデイジーチェーンを許可し、それによって、より多くのプレーヤがテザーされることが可能となり、ホストプレーヤ308から離れる、より長い距離に達することが可能となる。例示的実施形態では、テザーオブジェクトは、これらのタイプのデイジーチェーンテザーを制御するためのルール及び/又は設定を含み、及び/又は関連のゲーム通貨での金銭的コスト又はライフコスト、並びにレベル及びアカウントのタイプなどの他のプレーヤ/キャラクター要件などが存在し得る。一例として、デイジーチェーンテザーのリンクの長さ又は数は、テザーに参加しているオーディエンスメンバーの数と比例し得る。濫用を軽減するために、テザー長さは、長さを増加させるために、より多くのメンバーが必要とされるように調整され得る。テザーの長さを倍にするためには、おそらく10人のメンバーが必要とされ得るが、テザーの長さをさらに倍にするためには、さらなる100人のメンバーが必要とされ得る。他のバリエーションも可能であり、それらはすべて、開示及び請求される主題の範囲に入ると見なされる。
他の実施形態では、リモートプレーヤ310は、ホストプレーヤ308(及び他のホストプレーヤ及び/又はリモートプレーヤ)と一緒に、デジタルコンテンツ312に能動的に関与する。このような例では、コンピュータサーバ302のゲームサーバ及び/又は別のサーバは、ホストプレーヤ308、リモートプレーヤ310、及び/又はデジタルコンテンツ312に能動的に(又は受動的に)関与している他のプレーヤに対して、同時発生ゲームコンテンツ情報を提供し得る。
図3の例は、プレーヤが2人だけいるものとして説明及び図示されているが、システム300は、3人以上のプレーヤを有して実装され得ることを理解されたい。例えば、場合によっては、テザリングオブジェクトを介した位置ベースのコンテンツ312へのアクセスは、プレーヤの少なくとも1人がホストプレーヤである、3人、6人、9人、15人、20人などのプレーヤなどのゲームプレーヤのパーティに利用可能となり得る。このような場合、単一のテザリングオブジェクトが、プレーヤ間のインタラクションを容易にするために、同等の数のエンドポイントを含んでもよく、又は要望通りにインタラクションを容易にするために、複数のテザリングオブジェクトのインスタンスが生成されてもよい。テザリングオブジェクトがゲームコンテンツに関連付けられることを考慮して、より好ましい実施形態が、位置ベースのコンテンツとの特定のインタラクションをサポートするために、最小数のテザー(例えば1つ)を用いるであろうことが企図される。
上記で説明した通り、デジタルコンテンツ312は、実世界の規定の地理的エリアに拘束され得る。例えば、地理的エリアは、ジオフェンスエリアを形成する1組の座標によって規定され得る。このような例では、コンテンツデータベース及び/又はサーバは、位置座標(例えば、経度座標値及び緯度座標値を含む2次元ベクトルなど)に基づいて、デジタルコンテンツ312などのコンテンツを保存し得る。他の例では、例えば、単一座標値(例えば、1次元ベクトルなど)、3つ以上の座標値を含む他の位置座標が用いられてもよい。幾つかの例では、単一座標値は、ヒルベルト曲線を使用して球を線形座標系に変換するS2ジオメトリ実装を用いて実装することができ、3つ以上の座標値は、経度座標値、緯度座標値、標高座標値、高度座標値、時間値、天気値、温度値、地形値又は属性などを含み得る。
テザーオブジェクトは、天気、温度、季節、交通渋滞(車両、ネットワーク、人など)、又はホストプレーヤとテザーされたプレーヤとの間の距離などの外部要因からの干渉を受け得る。干渉は、実在のもの、若しくはシミュレーションされたもの、及び/又は破壊的若しくは建設的なものの場合がある。例えば、外で冬の嵐が発生している場合、又は氷点下の気温である場合には、テザリングオブジェクトハローは、凍結の魔法使いに関する、ある要因によって、より大きくされ得、又はその能力を変更し得る。同時に、天気の影響は、火の魔法使いに悪影響を及ぼし得る。テザー干渉を使用してゲームプレイに影響を与える別の例は、ゲーム及びすべてのプレーヤに対して破壊的干渉を有することである。例えば、様々な条件に適応するため、及び望ましいプレーヤの挙動を促すために、コンテキスト要因が、強制隔離中のテザーオブジェクトと破壊的に干渉することができ、プレーヤが極度の悪天候又は他の要因にさらされるリスクを減少させることができる。例えば、交通の流れに関して、プレーヤは、近接範囲の外にいるときにのみ(2キロメートルを超えて離れているなど)、テザーが許可され得る。これは、プレーヤがごく近接してプレイしないことを保証するのに役立ち得る。
幾つかの例では、デジタルコンテンツ312は、規定の地理的エリア以外の他の要因によって拘束され得る。例えば、ゲーム内の複数のホストプレーヤが、同じ物理的場所で(例えば、サンタモニカ ピア(Santa Monica Pier)、ディズニーランドなどで)独自のコンテンツ(例えば、ダンジョン、城など)を作成し得る。ホストプレーヤからのコンテンツのすべてが同じ位置ベースの座標によってインデックスを作成されるが、各ホストプレーヤのコンテンツは、特定のプレーヤだけが特定のホストプレーヤのコンテンツにアクセスすることを可能にするための他の要因によって区別され得る。例えば、これらの要因には、ギルドの加入、プレーヤアライメント、有料アクセス、絶対時間、相対時間、パスワードなどが含まれ得る。このような例では、コンテンツデータベース及び/又はサーバは、例えば、ルックアップ表、ハッシュ表、ルックアップツリー、及び/又は非座標情報を区別可能な他のインデックス作成スキームを使用して、特定のコンテンツにアクセスするための1つ又は複数のインデックス作成スキームを利用し得る。
幾つかの実施形態では、2つ以上の規定の地理的エリアが用いられ得る。例えば、2つ以上の非重複又は重複ジオフェンスエリアが用いられ得る。非重複限定は、テザリングが売買できる(例えば、所有される、リースされる、レンタルされる、定期購買される、オークションにかけられるなど)商品となるため、地理的エリアを収益化する機会を提供し得る。
追加的に、1つ又は複数の規定の地理的エリアは、物理的境界、仮想境界、又は1つ若しくは複数の地理的エリアに関連付けられた他の限界によって規定され得る絶対的場所に拘束され得る。例えば、図3の規定の地理的エリアは、ホストコンピューティングデバイス304の移動にかかわらず、同じ街区に限定され得る。このような例では、ホストプレーヤが限定された絶対的場所を離れて新しい場所に入るとすぐに、新しい限定された絶対的場所が存在するようになり、テザープレーヤが、即座にその限定エリアの中心に移動され、又はホスティングプレーヤと並んで配置され得る。他の例では、規定の地理的エリアは、例えば、デジタルコンテンツ312、ホストコンピューティングデバイス304、関与するプレーヤの数、関与するプレーヤのタイプなどに基づいて、相対的場所でもよい。例えば、リモートコンピューティングデバイス306は、それの仮想位置及び/又は物理的位置がホストコンピューティングデバイス304の周囲の規定の地理的エリア(例えば、ハロー)内にある場合にのみ、デジタルコンテンツ312にアクセスでき得る。このような例では、ホストプレーヤ308が移動すると、デジタルコンテンツ312へのアクセシビリティを規定する、ホストコンピューティングデバイス304の周囲のハローも移動し得る。ハローの中心部(例えば、質量中心など)は、ホストコンピューティングデバイス304に関連付けられた場所でもよい。他の例では、ハローの中心部は、ホストコンピューティングデバイス304に対して物理的にローカルな他のプレーヤの数及び/又は分布、リモートプレーヤが仮想的にハロー空間を動き回るときのリモートプレーヤの数及び/又は分布によって決定され得る。
ホストコンピューティングデバイス304の周囲のハローは、任意の適切なサイズ、形状などを有し得る。例えば、ハローの形状は、ゲーム内効果(例えば、呪文、デバイス、アーチファクト、料金、時間、魔法など)に基づいてもよい。このような例では、ハローは、円形、又は正方形、三角形、菱形、台形、任意形状などの非円形であってもよい。一部の例では、ハロー形状は、3次元(例えば、角錐、立方体、球体、楕円体など)でもよい。他の例では、ハロー形状は、円形、又は最小セルレベル、最大セルレベル、及びある場所を中心とした、又は指定されたレベルの4つの最も近いセルに基づいたハロー形状のS2セル表現に使用することができる最大セル数によって指定されるS2セルから作られる形状でもよい。ハロー形状は、限定されないが、地理的フィーチャ(例えば、丘、山、川、湖、池、海、地形勾配など)、人工フィーチャ(例えば、建物、橋、陸橋、車道、歩道など)、及びマップ上の政治的フィーチャ(例えば、市、州、国境、郵便番号など)などのマップフィーチャによって影響を受け得る。
別の観点から、図3は、2人のプレーヤ(一方のプレーヤが他方のプレーヤにテザーされる)間の双方向テザーを示すものと見なすことができる。このような例では、各場所からのコンテンツが他方の場所と共有され得、各プレーヤは、テザーされたプレーヤであるだけでなく、ホストとなり得る。これは、2つのテザー、又は1つの双方向テザーを用いて行われ得る。仮想コンテンツのすべてを共有することが望ましい場合、又は望ましくない場合があり、そのようなコンテンツは、例えば、天気、地形、時刻などの環境の影響に基づいてコンテンツの一部のみが共有されるように制限され得る。実施形態は、異なる複数のゲーム及び/又はアプリケーションを容易にするために、多くのハイブリッドの組み合わせを使用し得ることが企図される。
例えば、図4は、図3のシステムで使用可能なハロー402を示す。図4の特定の例では、ハロー402は、(例えば、ホストプレーヤ408で表される)ホストコンピューティングデバイスを中心とした円(例えばバブル)形状を有する。図示されるように、(例えば、リモートプレーヤ410a、410bで表される)2つのリモートコンピューティングデバイスは、(例えば、仮想プレーヤ412a、412bによって表される)それらの仮想位置が円形ハロー402内にあるため、位置ベースの共有可能コンテンツ(例えば、図3のデジタルコンテンツ312)に関与することができる。
図4の例では、ハロー402は、ホストプレーヤ408が移動したとしても、プレーヤ408を中心とした状態を保ち得る。このような例では、リモートプレーヤ410a、410bは、自身の対応仮想プレーヤ412a、412bがハロー402内にとどまり、テザリングオブジェクトが損なわれていない状態を保つ限り、コンテンツに関与し続けることができる。プレーヤ408が移動し、ハロー402がプレーヤ408と共に移動すると、プレーヤ412a、412bは、彼らが一地点に立っている場合は、ハローのエッジに到達し得る。このような例では、ハローのエッジに到達したプレーヤを管理する必要性が存在し得る。ハローのエッジに到達した、テザーされたキャラクターに対処する複数の方法が存在する。例えば、キャラクターは、自動的に歩くことを強制されてもよく、キャラクターは、ハローのエッジに沿って引っ張られてもよく、キャラクターは、ハローのエッジによって殺されてもよく、プレーヤはプレイを継続できるが、彼らのキャラクターは、ハローの外ではダメージを負い始め、キャラクターは、ハローのエッジに接触すると瞬時にホストプレーヤ408の隣に瞬間移動されてもよく、ハローが、テザーされたキャラクター及びホスティングキャラクターのレベルに応じて、ある程度変形してもよく、そのハローの変形が最大変形度に達すると、それがテザーされたキャラクターを引っ張り始めてもよく、又はキャラクターがハローを離れることからダメージを受け始めてもよく、又は別の方法がある。これらは、ハローのエッジで起こり得ることの幾つかの例にすぎず、さらに多くの可能な組み合わせが存在する。
幾つかの例では、すべてのプレーヤが同じハローを見ていない場合もある。両プレーヤ412a、412bがプレーヤ408にテザーされているが、彼らがそれぞれに拘束されるハローは、異なるサイズ又は形状のものでもよい。これは、レベル、又は各プレーヤのキャラクター、又はキャラクターのクラス(例えば、魔法使い、ファイター、狂戦士、泥棒など)、又はプレーヤが持つアカウントのタイプ(例えば、有料、無料、プレミアムなど)に起因し得る。異なるハローを生じさせる他の例には、キャラクターがハローを変更するゲーム内の異なるアイテムを所有すること(例えば、プレーヤが、ゲーム内で例えば「+30に到達する杖」を持つ場合、キャラクターは、悪影響をまったく受けずに、通常のハローの外で30メートル移動することが可能となり得る)、表示のためにすべてのアイテム及び能力を考慮に入れて新しいハローが計算され得ること、マウントに乗ったプレーヤは、キャラクターがホストプレーヤ308から離れることができる範囲を延長し得ること、又はハローが、マウントのレベル若しくはタイプに依存する要因によって単純に拡大されることが含まれる(ただし、これらに限定されない)。
他の例では、ハローパラメータ(例えば、形状、サイズ、面積など)は、パーティ内のホストプレーヤ及び/又はリモートプレーヤの数に依存し得る。例えば、図5は、図3のシステムで使用可能な別のハロー502を示す。図5の特定の例では、ハロー502は、2つの円形状(例えばバブル)の組み合わせであり、各円は、異なるローカルコンピューティングデバイス(例えば、異なるホストコンピューティングデバイス)を中心とする。図示されるように、(例えば、リモートプレーヤ510a、510bで表される)2つのリモートコンピューティングデバイスは、(例えば、仮想プレーヤ512a、512bによって表される)それらの仮想位置がハロー502内にあるため、位置ベースの共有可能コンテンツ(例えば、図3のデジタルコンテンツ312)に関与することができる。
図5の例では、ハロー502の一方の円は、(例えば、ホストプレーヤ508aによって表される)一方のホストコンピューティングデバイスを中心としてもよく、ハロー502の他方の円は、(例えば、ホストプレーヤ508bによって表される)他方のホストコンピューティングデバイスを中心としてもよい。他の例では、ハロー502の一方の円は、ホストコンピューティングデバイス(例えば、ホストプレーヤ508a)を中心としてもよく、ハロー502の他方の円は、ジオロケーションに物理的に位置する別のコンピューティングデバイス(ただし、必ずしもホストコンピューティングデバイスではない)を中心としてもよい。このような例では、ジオロケーションに位置する他方のコンピューティングデバイスは、ホストコンピューティングデバイスにローカルにテザーされていてもよい。
他の例では、ハロー502は、複数のホストプレーヤを中心とした円形、正方形などでもよい。
ハロー502の各円(例えばバブル)は、プレーヤ508a、508bが移動したとしても、それの対応ホストプレーヤ508a、508b(又は別のローカルプレーヤ)を中心とした状態を保ち得る。したがって、ハロー502の形状は、プレーヤが移動するときに進化し得る。幾つかの例では、ハロー502は、2つの分離したハローに分かれてもよく、各ハローは、図4に関連して上記で説明したように、それの対応ホストプレーヤ508a、508b(又は別のローカルプレーヤ)を中心とする。
図5の例では、単一のテザリングオブジェクトが、ホストコンピューティングデバイス(ホストプレーヤ508a、508b)及びリモートコンピューティングデバイス(リモートプレーヤ510a、510b)の間で共有され得る。このような例では、コンピューティングデバイスのすべてが、同じものを受け取ってもよく、又は同じデジタルコンテンツ(例えば、図3のデジタルコンテンツ312)の一部を受け取ってもよい。他の例では、各リモートプレーヤは、(例えば、別のホストコンピューティングデバイスから)2つ以上のテザリングオブジェクトにもアクセスすることができ、2つ以上のハローにアクセスでき得る。
幾つかの例では、異なるホストコンピューティングデバイスの周囲で、別個ハローが用いられてもよい。例えば、図6は、図3のシステムで使用可能な3つの楕円形ハロー602a、602b、602cを示す。図6の例では、(例えば、ホストプレーヤ608a、608b、608cによって表される)3つのホストコンピューティングデバイスが、同じジオロケーションに位置し、3つの別個のハロー602a、602b、602cへのアクセスを提供する。図示されるように、(例えば、リモートプレーヤ610a、610bによって表される)2つのリモートコンピューティングデバイスは、仮想プレーヤ612a、612bとして仮想的に表される。リモートコンピューティングデバイスは、それらの対応仮想プレーヤ612a、612bがハローの1つの中にある場合に、そのハローに拘束された位置ベースの共有可能コンテンツに関与することができる。例えば、リモートプレーヤ610aは、自身の対応仮想プレーヤ612aがハロー602a、602b内にあるため、ハロー602a、602bに拘束された位置ベースの共有可能コンテンツに関与することができる。
さらに他の例では、ハロー602a、602b、602cは、接続された(例えば重複する)ハローのチェーンを形成し得る。このような例では、各リモートプレーヤ610a、610bは、3つのハローによって規定される3つのエリアすべてに拘束されたコンテンツにアクセスでき得る。幾つかの例では、各リモートプレーヤ610a、610bは、3つのエリアすべてに拘束されたコンテンツにアクセスする許可を獲得することを必要とし得る。各リモートプレーヤ610a、610bは、1つのハローから別のハローへと仮想的に移動し得る。このような例では、コンピュータサーバ(例えば、図3のゲームサーバ)は、あるテザリングオブジェクトから別のテザリングオブジェクトへと移動するリモートプレーヤを受け渡し得る。
幾つかの例では、別個のハローが、互いに重複しないように配置されてもよい。例えば、図7は、図3のシステムで使用可能な2つの別個の非重複ハロー702a、702bを示す。図7の例では、ハロー702a、702bは、ホストプレーヤ708a、708bによってそれぞれ表されるホストコンピューティングデバイスの周りに広がる。図示されるように、(例えば、リモートプレーヤ710aで表される)一方のリモートコンピューティングデバイスは、(例えば、仮想プレーヤ712aによって表される)それの仮想位置がハロー702a内にあるため、ハロー702aに拘束された位置ベースの共有可能コンテンツに関与することができ、(例えば、リモートプレーヤ710bによって表される)別のリモートコンピューティングデバイスは、(例えば、仮想プレーヤ712bによって表される)それの仮想位置がハロー702b内にあるため、ハロー702bに拘束された位置ベースの共有可能コンテンツに関与することができる。
図7の例では、2つのライバルパーティが同じエリアに存在し得る。例えば、ホストプレーヤ708a及び仮想リモートプレーヤ712aがパーティAを表し、ホストプレーヤ708b及び仮想リモートプレーヤ712bがパーティBを表し得る。幾つかの例では、一方のパーティ(例えばパーティA)からのテザリングオブジェクトが、他方のパーティ(例えば、パーティB)からのテザリングオブジェクトと干渉し得る。このような例では、ハロー702a、702bは、図7に示されるように、重複エリアがハロー702a、702bから除去されるように、互いを相殺するようになど、互いに破壊的に干渉し得る。テザーは、重複を避けるためにハローが変形したときに、プレーヤがそれぞれのハロー内でできることを変更し得る。これは、例えば、ライバルパーティからの衝突するハローによる変形がもはや存在しなくなるまで、略奪、又はライバルパーティとのバトル若しくは撤退以外の任意の他の行為を行うことを不能にし得る。
図4~7の例では、ローカル(例えば、ホスト)プレーヤの周囲に位置付けられたハローは、リモートプレーヤの仮想の動きを限定する境界と見なされ得る。そのため、リモートプレーヤは、ハローの1つの範囲内で仮想的に自由に移動することができ、依然として共有コンテンツにアクセスできるが、ハローの境界を越えることは許可されない場合がある。
幾つかの例では、リモートプレーヤは、仮想的にホストプレーヤからさらに離れて移動するため、又はハローの境界を越えるためにコスト(例えば、ゲーム内のコスト、実世界のコストなど)を支払う場合がある。例えば、リモートプレーヤのキャラクターは、ホストプレーヤの周囲のハローに関連付けられた閾値距離を越えるときに、スタミナポイント、ヘルスポイント、及び/又は他のタイプのコストを費やす場合がある。このような例では、仮想的にホストデバイスからさらに離れて移動するためのリモートプレーヤのコストは、2人のプレーヤ間の相対距離の関数となり得る。例えば、コスト(例えば、スタミナポイントなど)は、距離が増加するにつれて増加し得る。このような例では、コストは、距離が0~50メートルのときは、1秒当たり0スタミナポイントでもよいが、50メートルの距離(ハローの境界に到達するまで)の外では、10メートルごとに1秒当たり5スタミナポイントでもよい。リモートプレーヤがハローの境界を越えることを許可される一部のケースでは、コストは、ポイントから金銭(例えば、ハローの境界を越えた10メートルごとに、1分当たり$1.00)にシフトし得る。
上記のフィーチャは、コンピュータベースのゲーム及び拡張現実アプリケーションに関して説明されたが、これらのフィーチャがゲームプレイ及び/又は拡張現実に限定されないことは明白であるだろう。より正確に言えば、本明細書に開示するフィーチャは、位置ベースのデジタルコンテンツを共有する様々な他の適切なアプリケーションにおいて実装され得る。例えば、フィーチャは、生徒、教師、学級、学校などの間でコンテンツが共有され得る教育用アプリケーションにおいて実装されてもよい。このような例では、生徒は、仮想手を挙げること、仮想ホワイトボードを使用すること、グループ討論を行うことなどによって、仮想教室に参加することができる。他の例では、フィーチャは、同じ又は異なる軍隊支部のメンバーの間で位置ベースのコンテンツが共有され得る軍隊用アプリケーションにおいて実装されてもよい。このような例では、規定の地理的エリア(例えばハロー)は、戦闘地域、訓練場などを中心とし得る。さらに他の例では、フィーチャは、ショッピングアプリケーション、医療用アプリケーション、不動産アプリケーションなどにおいて実装されてもよい。例えば、医療用アプリケーションでは、規定の地理的エリア(例えばハロー)は、価値のあるデジタルコンテンツ(例えば、感染患者、死亡などに関するデータ)を様々な病院が共有することを可能にするために、それらの病院を中心としてもよい。不動産アプリケーションでは、(リモートコンピューティングデバイスを使用する)1人又は複数のリモートユーザが、共有されたデジタルコンテンツによって、家(例えば、規定の地理的エリア)を見ること、(例えば、規定の地理的エリア内のホストコンピューティングデバイスを使用して)家にいる不動産業者によって案内される家の仮想ツアーを行うことなどが可能である。
本明細書に開示する共有可能なデジタルコンテンツは、任意の適切なタイプのコンテンツを含み得る。例えば、デジタルコンテンツは、以下のモダリティ:音声、静止画、映像、運動感覚、触覚、API、2Dコンテンツ、3Dレンダリング可能コンテンツ又はモデル、テキスト、メタデータなどの1つ又は複数などの異なるタイプのデジタルモダリティを含み得る。例えば、図3に示されるドラゴンは、異なる向き、位置、場所、照明条件、縮尺などからホストコンピューティングデバイス304及び/又はリモートコンピューティングデバイス306上にレンダリングされ得るフル3DのARモデルを含み得る。幾つかの例では、デジタルコンテンツは、メニュー、メニュー項目、ダイアログボックス、広告、ソフトウェアモジュール、AIモジュール(例えば、ニューラルネットワーク、SVMなど)、実行可能コード、ヘルプファイル、フォーラム、コミュニティポータル、仮想ストア、データなどを含み得る。
本明細書に開示するコンピューティングデバイスの何れか1つは、上記の方法の1つ又は複数を行うためのコンピュータ可読命令を保存するための1つ又は複数の非一時的コンピュータ可読メモリと、コンピュータ可読命令を実行するための1つ又は複数のプロセッサとを含み得る。このような例では、1つ又は複数のプロセッサは、ハードディスク、フロッピーディスク、光ディスク、フラッシュドライブ、ROM、RAM、及び/又は命令を保存するための任意の他の適切な媒体からそれがアクセスする命令を実行し得る。
例えば、図8は、上記の方法の1つ又は複数を行うためのコンピュータ可読命令を保存するためのメモリ802と、コンピュータ可読命令を実行するためのプロセッサ804とを含むコンピュータサーバ800を示す。同様に、図9は、上記の方法の1つ又は複数を行うためのコンピュータ可読命令を保存するためのメモリ902と、コンピュータ可読命令を実行するためのプロセッサ904とを含むホスト又はリモートコンピューティングデバイス900を示す。
幾つかの実施形態では、ホストコンピューティングデバイス及び/又はリモートコンピューティングデバイスは、モバイル又はポータブルコンピューティングデバイス(例えば、携帯電話、スマートフォン、タブレット、ウェアラブルデバイス、AR/VRグラス又はバイザー、ハンドヘルドゲームデバイスなど)でもよい。一部の例では、ホストコンピューティングデバイス及び/又はリモートコンピューティングデバイスは、車両(例えば、自動車、ゴルフカート、ドローン、トラック、飛行機、ボートなど)にインストールされた、及び/又は取り外し可能に設置されたコンピューティングデバイスでもよい。他の例では、ホストコンピューティングデバイス及び/又はリモートコンピューティングデバイスは、デスクトップコンピュータ、ゲーム機(例えば、Xbox、PS4、Wiiなど)、セットトップボックス、電気製品、テレビなどの据え置き型コンピューティングデバイスでもよい。
追加的に、ホストコンピューティングデバイス及び/又はリモートコンピューティングデバイスは、ゲームプレイ機能性及び/又は他のゲーム関連施設を提供する1つ又は複数のソフトウェア命令を有し得る。さらに、ゲームソフトウェア命令は、対称的ゲームプレイ(例えば、両デバイスが同じゲームプレイ機能性を有する)、又は非対称的ゲームプレイ(例えば、デバイスが異なるゲームプレイ機能性を有する)を提供し得る。
ホストコンピューティングデバイス及びリモートコンピューティングデバイスは、互いに遠く離れて配置され得る。例えば、リモートコンピューティングデバイス及びホストコンピューティングデバイスは、同じ市(例えば、通りの先に、市の反対側になど)、近隣の市、近隣の国、地球の反対側の異なる国などに物理的に位置し得る。例えば、ホストコンピューティングデバイスは、米国に存在し、リモートコンピューティングデバイスは、オーストラリアに存在し得る。
さらに、本明細書に説明するように、コンピューティングデバイスの何れか1つの物理的位置は、1つ又は複数のセンサに基づいて決定され得る。このような例では、センサは、コンピューティングデバイスの一部(例えばオンボード)でもよく、及び/又はコンピューティングデバイスの外部のものでもよい。例えば、オンボードセンサは、カメラ、加速度計、磁気計、GPSチップ、及び/又はコンピューティングデバイスの物理的位置のデジタル表現を提供又は生成することができる他の適切なセンサを含み得る。このような例では、センサ(例えばカメラ)からの情報を使用して、環境内のフィーチャを認識すること、及び/又は特定の場所を識別することができる。外部センサは、カメラ、認識センサ(例えば、顔、デバイスなどの認識デバイス)、赤外線検出器などを含み得る。コンピューティングデバイスの位置は、無線三角測量、GPS、慣性計測、SLAM(simultaneous location and mapping)、vSLAM、及び/又は他の適切な技術を使用して決定され得る。
本明細書に開示する規定の地理的エリアは、上記で説明した通り、適切な形状、サイズ、構成などでもよい。規定の地理的エリアは、絶対的(例えば、固定された)地理的エリア、コンピューティングデバイスを中心とし、及びコンピューティングデバイスに基づいて移動可能な相対的地理的エリア(例えばハロー)、及び/又は必要に応じて、絶対的地理的エリアと相対的地理的エリアとの間の遷移でもよい。幾つかの例では、地理的エリアは、少なくともコンピューティングデバイスの物理的位置及びコンテンツの物理的位置に依存するコンテンツ近接基準に基づいて規定され得る。
本明細書に開示する通信ネットワークは、インターネット/イントラネット無線ネットワーク、セルラー(例えば、4G、5Gなど)ネットワーク接続、及び/又は別の適切なネットワークを含み得る。幾つかの例では、インターネット/イントラネットネットワークは、Wi-Fi接続、Bluetooth接続、又は任意の他の適切な無線接続を含み得る。他のセンサが利用可能ではないとき、又は確実に機能していないときに、三角測量を用いてプレーヤの位置又は近似位置を取得するために、これらのネットワークを使用することができる。例えば、プレーヤが、モール内にいるとき、会議に出席しているときなどであって、信頼性のあるGPS信号がない場合には、無線三角測量を使用して、プレーヤの位置又は彼らの位置の大まかな推定を取得するために、上記及び他のネットワークを使用することができる。
上記で説明した通り、本明細書に開示するテザリングオブジェクトは、エンドポイントを含み得る。幾つかの例では、エンドポイントは、異なるコンピューティングデバイスに位置付けられ得る。例えば、エンドポイントは、TCP/IP及び/又はUDP/IPベースの通信を利用する1つ又は複数のネットワーキング通信ソケットを含み得る。しかしながら、他のプロトコル及び/又はネットワーキング接続(例えば、Wi-Fi、Bluetooth、802.11、セルラー、衛星、HTTPなど)も同様に使用され得ることを理解されたい。
幾つかの例では、システム用のネットワーキングインフラ(例えば、セルラータワーサイト、5Gサイト、4Gサイト、ネットワークスイッチ、ネットワークルータ、光ファイバ接続、ネットワークファブリックなど)を準備する及び/又は他の方法で構成することが望ましい場合がある。このような実施形態では、ネットワーキングインフラに及ぶ1つ又は複数のテザリングオブジェクトが作成され得る。例えば、ホストコンピューティングデバイスは、リモートコンピューティングデバイスに対するネットワーキングファブリックのネットワークスイッチの間でカットスルールートを準備することができる5Gセルサイトを介してネットワークに接続され得る。追加的に、幾つかの例では、テザリングオブジェクトは、コンピューティングデバイス間の準備された又は専用のチャネル(例えば、特定の光ファイバ波長、TDMAなど)を含み得る。このような手法は、接続されたデバイス間で、待ち時間の減少を保証するため有利となり得る。
追加的に、テザリングオブジェクトの何れか1つは、「地面の杭」によってアンカーで固定され得る。例えば、杭は、(例えば、以前のゲーム経験からの)特定の場所、クラフト可能オブジェクト、購入されたオブジェクト、作成されたオブジェクトなどに関するコンテンツをキャッシュするために使用される仮想ゲームオブジェクトでもよい。さらに、テザリングオブジェクトの何れか1つは、かつて訪れた場所への仮想ポータルを含み得る。このような例では、プレーヤは、ポータルストーンを用いて、例えば少ないコストで、彼らが訪れたことがあるエリアとポータリングし得る。他の例では、ユーザは、テザーをバス又は別の車両に貼り付けることが可能であり、リモートプレーヤは、その車両を追いかけてプレイしなければならず、ユーザは、事前に規定されたルートを選択し、設定された速度でテザーにそのルートを進ませることなどが可能である。ルートは、バスルート、自然遊歩道、レースのルートなどでもよい(ただし、それらに限定されない)。
さらに、テザリングオブジェクトの管理は、有益となり得る。例えば、システム内の複数のテザリングオブジェクトは、待ち時間、関与するプレーヤの数などに関して最適化され得る。幾つかの例では、テザリングオブジェクトは、プレーヤのキュー(例えば、先入れ先出しキューなど)を提供することによって管理され得る。他の例では、テザリングプロセスのためのユーザインタフェース、構成などが、テザリングオブジェクトの管理を支援し得る。
以下は、可能なテザリングオブジェクト定義及びテザー計算の一部を示す擬似コードにおける一部の可能な高水準定義及び実装である。

0 def HostTether(){ #ホストデバイス上のホスト固有テザークラス
1 HostEndpointSocket; #TCP/IP;UDP/IP;ソケット対サーバ及び/又はリモートプレーヤ
2 RemotePlayerList[]; #グループ内のリモートプレーヤのリスト
3 Halo halo; #ホストから見たハロー境界
4 def HaloRules(); #ハローの機能を規制するルール
5 Location location(); #世界中のホスティングプレーヤの位置
6 def CreateTether(); #ホスト上でテザーを作成する
7 def DestroyTether(); #ホスト上でテザーを破壊する
8 def MessageTether(); #テザー上でプレーヤにメッセージを送る
9 def AuthorizePlayer(); #リモートプレーヤの参加を可能にする
10 etc.
11 }
12
13 def RemoteTether(){ #リモートデバイス上のリモートテザークラス
14 RemoteEndpointSocket; #TCP/IP;UDP/IP;ソケット対サーバ
15 HostPlayerList[]; #グループ内のホストプレーヤのリスト
16 Halo halo; #リモートプレーヤから見たハロー境界
17 Location location(); #世界中のテザーされたプレーヤの位置
18 def CreateTether(); #ホスト上でテザーを作成する
19 def DestroyTether(); #ホスト上でテザーを破壊する
20 def MessageTether(); #テザー上でプレーヤにメッセージを送る
21 etc.
22 }
23
24 def ServerTether(){ #テザーサーバ上のテザー
25 RemoteEndpointSocket; #TCP/IP;UDP/IP;ソケット対リモート
26 HostEndpointSocket; #TCP/IP;UDP/IP;ソケット対ホスト
27 HostPlayerList[]; #グループ内のホストプレーヤのリスト
28 TetherLoction[]; #ジオロケーション境界のリスト
29 def HaloRules(); #ハローを規制する機能
30 def CreateTether(); #ホスト上でテザーを作成する
31 def DestroyTether(); #ホスト上でテザーを破壊する
32 def MessageTether(); #テザー上でプレーヤにメッセージを送る
33 etc.
34 }
35
36 def Character(){ #キャラクター情報
37 int level; #キャラクターレベルが基本能力を決定する
38 int health; #変更子を持つヒットポイント
39 int baseHealth; #変更子を持たないヒットポイント
40 Type characterClass; #キャラクターのクラス(魔法使い、泥棒、戦士、レンジャーなど
41 HostTether hTether; #ホストテザーオブジェクト/ホスティングプレーヤの位置
42 RemoteTether rTether; #リモートテザーオブジェクト/テザリングキャラクターの位置
43 ServerTether sTether; #サーバテザーオブジェクトへのリンク(設定されていなければ0)
44 Area tetherlArea; #マップなどを含むテザーキャラクター位置の情報
45 Area hostArea; #マップなどを含むホストキャラクター位置の情報
46 Item items[]; #装備アイテムのリスト
47 Mount mounts[]; #キャラクターが持つマウントのリスト
48 int mount; #現在のマウント、又はマウントに乗っていなければ-1
49 Items inventory[]; #キャラクターが所有する全アイテム
50 float base; #基本テザー到達距離
51 etc. #必要とされ得る又は必要とされる他の情報
52 }
53
54 def Mount(){ #キャラクター用のマウント及びNPC情報
55 Item items[]; #マウントに装備されたアイテム
56 int level; #マウントのレベル
57 Type type; #マウントのタイプ(馬、ペガサス、ドラゴンなど
58 int health; #変更子を持つヒットポイント
59 int baseHealth; #変更子を持たないヒットポイント
60 etc.
61 }
62
63 def Item(){ #アイテム情報及び変更子
64 Modifiers modifiers[]; #アイテムの変更子のリスト
65 Type type; #アイテムのタイプ(ウェアラブル、武器など
66 int count; #そのアイテムの個数
67 etc. #必要とされる多数の他の仕様
68 }
69
70 def Area(){ #天気地形などのエリア情報
71 Type weather; #現在の天気(気温、風、雨、季節など
72 Type terrain; #地形のタイプ(砂漠、山、湿地など
73 Map maps[]; #エリアのために使用するマップ(政治的、地形など
74 Time lTime; #場所の現地時間
75 etc. #上記のために必要となる他の情報
76 }
77
78 def CharacterHalo(){ #テザーに対するキャラクターハロー効果
79 Character pCharacter; #キャラクターアイテム、マウントなどの情報
80 Area tetherlArea; #テザーキャラクター位置の情報
81 Area hostArea; #ホストキャラクター位置の情報
82 Halo halo; #ジオロケーション境界のリスト(ハローの形状)
83 float range; #ハローを計算するための範囲
84 Tether hostTether(); #ホストへのテザー
85 Tether remoteTether(); #リモートへのテザー
86 Tether serverTether(); #サーバへのテザー
87 etc. #上記のために必要となる他の情報
88 }
89
90 def NPC(){ #非プレーヤキャラクター
91 int level; #キャラクターレベルが基本能力を決定する
92 int health; #変更子を持つヒットポイント
93 int baseHealth; #変更子を持たないヒットポイント
94 Type characterClass; #キャラクターのクラス(魔法使い、泥棒、戦士、レンジャーなど
95 Area area type; #テザーキャラクター位置の情報
96 Location anchor; #ホストキャラクター位置の情報
97 Item items[]; #装備アイテムのリスト
98 Mount mount; #キャラクターが持つマウントのリスト
99 Items inventory[]; #ドロップ可能なキャラクターが持つ全アイテム
100 float base; #テザーに関するテザー到達最大距離
101 etc.
102 }
103
104 def Halo(){ #ハローの定義及び情報
105 Shape shape; #座標又は他の方法のハロー形状のリスト
106 float range; #キャラクターの範囲に関して計算される
107 float interference; #テザーに基づくハローの干渉要因
108 etc.
109 }
110
111 float Character:tReach(){#特定のキャラクター/位置に関するテザーの到達範囲を計算した
112 float reach; #キャラクターが到達可能かどうかを決定するための値を計算した
113 #テザープレーヤとしてプレイするためのホスト位置
114 #キャラクターの物理的位置のローカル変更子を計算した
115 float localModifiers=modifiers(
116 level, #キャラクターのレベル
117 items[],#装備アイテムからの変更子
118 mounts[mount], #マウントからの変更子
119 genre, #キャラクタージャンル(魔法使い、泥棒などからの変更子
120 tetherArea, #天気&地形変更子
121 etc.); #ゲームに望まれ得る他の情報
122 #キャラクターのリモートホスト位置に関するリモート変更子を計算した
123 float remoteModifiers=modifiers(
124 level, #キャラクターのレベル
125 items[], #装備アイテムからの変更子
126 mounts[mount], #マウントからの変更子
127 genre, #キャラクタージャンル(魔法使い、泥棒などからの変更子
128 hostArea, #イベント、限定、天気&地形変更子
129 etc.); #ゲームに望まれ得る他の情報
130 float tetherModifiers=modifiers(
131 items[], #装備アイテムからの変更子
132 mounts[mount], #マウントからの変更子
133 hostTether, #ホストテザーからの情報を使用する
134 remoteTether, #リモートテザーからの情報を使用する
135 serverTether, #サーバテザーからの情報を使用する
136 playerAccount; #プレーヤアカウントタイプ有料/無料、有料、私の、必要とする、より高い(Player account type paid/free paid my require higher)
137 #サービス又は専用サーバを使用
138 etc.); #ゲームに望まれ得る他の情報
139 reach=base * localModifiers * remoteModifiers * tetherModifiers; #基本
140 #キャラクターが移動する距離
141 return reach; #2つの位置に基づく最大到達範囲
142 }
143
144 Halo Character:halo(){ #キャラクター/場所に関するハローの形状及びサイズを計算する
145 Halo fHalo; #要求に返される最終ハロー形状及びサイズ
146 float range; #これは、キャラクター又はキャラクター及びマウントの範囲である
147 range=Range( #キャラクターの範囲を計算する
148 mounts[mount], #マウント情報を取得するために必要とされる
149 hostArea.weather, #必要とされる天気変更子
150 hostArea.terrain, #地形のタイプ
151 items, #アイテム変更子に必要とされる
152 hostTether, #ホストテザー情報
153 etc.); #ゲームに依存するその他
154 if (mount and mounts[mount] is flying) #マウント及び飛行の有無をチェックする
155 fHalo=circle(range,hostTether.location); #円形ハローを作成する
156 #ホストを中心とする
157 }
158 else{ #ハローの衝突などをサポートするために他の変更を追加することができる
159 fHalo=footHalo(){ #飛行しないキャラクターの範囲を計算する
160 mounts[], #マウント情報を取得するために必要とされる
161 hostArea.weather, #必要とされる天気変更子
162 items, #アイテム変更子に必要とされる
163 hostTether, #ホストテザー情報
164 etc.); #ゲームに依存するその他
165 }
166 fHalo.interference=haloInterference(){ #ハローの干渉を計算する
167 mounts[], #マウント情報を取得するために必要とされる
168 hostArea.weather, #必要とされる天気変更子
169 items, #アイテム変更子に必要とされる
170 hostTether, #ホストテザーからの情報を使用する
171 remoteTether, #リモートテザーからの情報を使用する
172 serverTether, #サーバテザーからの情報を使用する
173 etc.); #ゲームに依存するその他
174 fHalo.range=range; #ハローの範囲を設定する
175 return fHalo;
176 }
177
178 List getContent(Halo halo,Location location){ #すべてのNPSを取得する、アイテム、特定の
179 #ハロー位置
180 List contentList(); #新しい空のコンテンツリスト
181 #サーバからコンテンツを取得し、リストにセーブする
182 contentList.add(getNPCsFromServer(halo,location)); #NPCを検索する
183 contentList.add(getItemsFromServer(halo,location)); #アイテムを検索する
184 return contentList;
185 }
上記のサンプル擬似コード実装は、オブジェクト、関数、及びそれらがどのように機能するかの幾つかの可能な定義を示す。ライン111の関数「float Character:tReach()」は、そのキャラクターに関する、その時点での到達範囲の距離がどの程度になり得るかを計算するために、キャラクター情報、プレーヤの現在位置、ホストテザー位置、プレーヤアカウント、及びサーバテザー情報を使用する。ローカル、リモート、及びサーバのテザー変更子のすべてが、プレーヤが遠く離れた場所にテザーする際に到達可能な最大距離に影響を与える。テザーは、マイナス及び/又はプラスの両方で到達範囲に影響を与え得る。例えば、システムは、プレーヤのローカル接続がゲームには不十分であると判断することができ、ユーザがテザリングすることを阻止する超低スコア或いはゼロを与え得る。役割を果たし得る別の要因は、テザリングプレーヤが、外出禁止令の出ているエリア内にいるか否かである(例えば、起こり得る命令は、ハリケーン、パンデミック、ブリザードなど)。このような例では、システムは、テザリングを促し、ゲームをプレイするために外に出かけないことを促すために、テザリングプレーヤにより高いスコアを与え得る。ホスティングプレーヤが外出禁止令の出ているエリア内にいる場合には、同様の論理がホスティングプレーヤに適用され得る。例えば、ホスティングプレーヤは、誰もそのプレーヤにテザリングしないようにするゼロスコアを受け取り得る。正のスコアは、以下の理由の幾つかにより、ホスティングプレーヤに与えられ得る:外出禁止令が出ていないこと、その場所でイベントが起こっており、人々がそのイベントに参加することをゲームが勧めていること、他のエリアに比べて、そのエリアでのネットワークの混雑が少ないこと、この場所に参加することをプレーヤに促していること、より混雑した場所が緩和されることを可能にすること。これらは、ホストにテザーしようとしているプレーヤの到達範囲に影響を与えるために使用され得る幾つかの要因にすぎない。
ライン144の関数「Halo Character:halo(){」は、キャラクター及びテザー情報を使用してハローのサイズ及び形状を計算する。ハローの形状は、キャラクターがマウントを有するかどうか、キャラクターが飛べるかどうかなどのキャラクター属性によって決定され得る。プレーヤが飛べる場合は、システムは、ハローを円形として規定し、プレーヤ上にハローの中心を置くことができる。このような例では、ハローのサイズは、プレーヤの速度又はプレーヤのマウントの速度の速度によって決定され得る。ホストテザーは、リモートプレーヤのハローの形状及びサイズに影響を与えることができ、それによって、ホスティングプレーヤが他のプレーヤにとってのホットスポットでもある場合に、彼らがすべて同じホスティングプレーヤの範囲内に存在し得ることが保証される。ホストプレーヤのエリアがデッドゾーン(例えば、ホスティングプレーヤがそこに行くと、すべての他のプレーヤがホスティングプレーヤへの接続を失い、ゲームから外されるような、ネットワークサービス又はサービスが利用できないゾーン)を有する場合、ホスティングプレーヤが、プレーヤにとって許容できる接続性データカバレッジが存在する場所にとどまることを望む場合がある。さらに、プレーヤがパーティのメンバーであり、一緒にいなければならない場合には、テザーされたプレーヤを良好なデータカバレッジを有するエリアへと誘導することが有利な場合がある。ホスティングプレーヤが、限られたインターネット接続を有する場合、又はデータ制限に達したために減速されている場合には、ホスティングプレーヤへ送信される必要がある情報量を制限するために、ハローをより小さくすることが望ましい場合がある。このような手法は、ネットワーク上で送信される必要があるコンテンツを制限することによって、有利な技術的影響をもたらす。ユーザのインターネット接続が遅い場合に、ライン178の関数「List getContent(Halo halo,Location location){」が返す、すべてのNPC及びアイテムが表示され得ることを確実にするために、ハローのサイズが制限され得るなどのように、同じ制限の多くをリモートプレーヤに適用することができる。これらのテザー制限のすべては、ゲーム又は他の経験が参加者にとって楽しめるものであること、及びラグ又は他のマイナスの経験が存在しないことを保証する。
実施形態の上述の説明は、例示及び説明を目的として提供されたものである。網羅的であること、又は本開示を限定することを意図したものではない。ある特定の実施形態の個々の要素又はフィーチャは、一般に、その特定の実施形態に限定されるものではなく、該当する場合には、具体的に図示又は説明されない場合であっても、交換可能であり、選択された実施形態で使用することができる。また、同じことが、多くのやり方で多様にされてもよい。このようなバリエーションは、本開示からの逸脱と見なされるものではなく、このような変更形態のすべてが、本開示の範囲内に含まれることが意図される。

Claims (36)

  1. デジタルコンテンツを共有するためのシステムであって、前記システムが、
    1つ又は複数のコンピュータデジタルコンテンツサーバと、
    前記1つ又は複数のコンピュータデジタルコンテンツサーバと通信する第1のコンピューティングデバイスと、
    前記第1のコンピューティングデバイス及び/又は前記1つ又は複数のコンピュータデジタルコンテンツサーバと通信する第2のコンピューティングデバイスであって、前記第2のコンピューティングデバイスが前記第1のコンピューティングデバイスから遠く離れている、第2のコンピューティングデバイスと、
    を含み、
    前記1つ又は複数のコンピュータデジタルコンテンツサーバが、位置センサデータに基づいて、前記第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置するか否かを決定し、前記第1のコンピューティングデバイスが前記規定の地理的エリア内に物理的に位置する場合に、共有可能なデジタルコンテンツのアクセスを前記第1のコンピューティングデバイスに提供するように構成され、
    前記共有可能なデジタルコンテンツが前記規定の地理的エリアに拘束され、
    前記第1のコンピューティングデバイス、前記第2のコンピューティングデバイス、及び/又は前記1つ又は複数のコンピュータデジタルコンテンツサーバが、前記共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成するように構成され、前記テザリングオブジェクトが、前記第1のコンピューティングデバイスにおいて第1のエンドポイントを含み、及び前記第2のコンピューティングデバイスにおいて第2のエンドポイントを含み、
    前記第2のコンピューティングデバイスが、前記第2のエンドポイントにおいて、前記テザリングオブジェクトを介して、前記共有可能なデジタルコンテンツの少なくとも一部を受信するように構成される、システム。
  2. 前記第1のコンピューティングデバイスが、前記共有可能なデジタルコンテンツの前記少なくとも一部を受信し、及び前記テザリングオブジェクトを介して前記共有可能なデジタルコンテンツの前記少なくとも一部を前記第2のエンドポイントに送信するように構成される、請求項1に記載のシステム。
  3. 前記1つ又は複数のコンピュータデジタルコンテンツサーバが、前記テザリングオブジェクトを介して前記共有可能なデジタルコンテンツの前記少なくとも一部を前記第2のエンドポイントに送信するように構成された第1のコンピュータデジタルコンテンツサーバを含む、請求項1に記載のシステム。
  4. 前記共有可能なデジタルコンテンツの前記少なくとも一部が、前記第2のコンピューティングデバイスに保存され、前記第2のコンピューティングデバイスが、前記保存された共有可能なデジタルコンテンツにアクセスすることによって、前記共有可能なデジタルコンテンツの少なくとも一部を受信するように構成される、請求項1に記載のシステム。
  5. 前記第1のコンピューティングデバイスが、非一時的コンピュータ可読メモリを含み、前記第1のコンピューティングデバイスが、前記非一時的コンピュータ可読メモリに保存された前記テザリングオブジェクトのインスタンスを生成するように構成される、請求項1~4の何れか一項に記載のシステム。
  6. 前記第2のコンピューティングデバイスが、非一時的コンピュータ可読メモリを含み、前記第2のコンピューティングデバイスが、前記非一時的コンピュータ可読メモリに保存された前記テザリングオブジェクトのインスタンスを生成するように構成される、請求項1~4の何れか一項に記載のシステム。
  7. 前記1つ又は複数のコンピュータデジタルコンテンツサーバが、非一時的コンピュータ可読メモリを有する第1のコンピュータデジタルコンテンツサーバを含み、前記第1のコンピュータデジタルコンテンツサーバが、前記非一時的コンピュータ可読メモリに保存された前記テザリングオブジェクトのインスタンスを生成するように構成される、請求項1~4の何れか一項に記載のシステム。
  8. 前記第1のコンピューティングデバイスが、テザリング要求を前記第2のコンピューティングデバイスに送るように構成され、及び/又は前記第2のコンピューティングデバイスが、テザリング要求を前記第1のコンピューティングデバイスに送るように構成される、請求項1~7の何れか一項に記載のシステム。
  9. 前記第1のコンピューティングデバイスがセンサを含み、前記第1のコンピューティングデバイスが、前記センサからのデータに基づいて、それの物理的位置を決定し、それの物理的位置を前記1つ又は複数のコンピュータデジタルコンテンツサーバに送信するように構成される、請求項1~8の何れか一項に記載のシステム。
  10. 前記第1のコンピューティングデバイスの外部にあるセンサをさらに含み、前記センサが、前記第1のコンピューティングデバイスの物理的位置に関連したデータを前記1つ又は複数のコンピュータデジタルコンテンツサーバに送信するように構成される、請求項1~9の何れか一項に記載のシステム。
  11. 前記第1のコンピューティングデバイスが、モバイルコンピューティングデバイス又は据え置き型コンピューティングデバイスであり、及び/又は前記第2のコンピューティングデバイスが、モバイルコンピューティングデバイス又は据え置き型コンピューティングデバイスである、請求項1~10の何れか一項に記載のシステム。
  12. 複数のホストコンピューティングデバイスをさらに含み、前記複数のホストコンピューティングデバイスが、前記第1のコンピューティングデバイスを含み、前記テザリングオブジェクトが、第1のテザリングオブジェクトであり、前記共有可能なデジタルコンテンツが、第1の共有可能なデジタルコンテンツであり、前記第2のコンピューティングデバイスが、前記複数のホストコンピューティングデバイスのうちの別の1つにエンドポイントを含む第2のテザリングオブジェクトを介して第2の共有可能なデジタルコンテンツの少なくとも一部を受信するように構成される、請求項1~11の何れか一項に記載のシステム。
  13. 複数のリモートコンピューティングデバイスをさらに含み、前記複数のリモートコンピューティングデバイスが、前記第2のコンピューティングデバイスを含み、前記テザリングオブジェクトが、前記複数のリモートコンピューティングデバイスのうちの別の1つに第3のエンドポイントを含み、前記複数のリモートコンピューティングデバイスのうちの前記別の1つが、前記第3のエンドポイントにおいて、前記テザリングオブジェクトを介して前記共有可能なデジタルコンテンツの少なくとも一部を受信するように構成される、請求項1~12の何れか一項に記載のシステム。
  14. 前記規定の地理的エリアが、絶対的地理的エリア又は相対的地理的エリアである、請求項1~13の何れか一項に記載のシステム。
  15. 前記規定の地理的エリアが、前記共有可能なデジタルコンテンツの位置及び前記第1のコンピューティングデバイスの前記物理的位置に基づく、請求項1~14の何れか一項に記載のシステム。
  16. 前記共有可能なデジタルコンテンツが、拡張現実コンテンツであり、及び/又は前記共有可能なデジタルコンテンツが、音声データ、画像データ、運動感覚データ、触覚データ、アプリケーションプログラミングインタフェースデータ、テキストデータ、メタデータ、及び2D又は3Dモデリングに関連したデータの1つ又は複数を含む、請求項1~15の何れか一項に記載のシステム。
  17. 前記第2のコンピューティングデバイスが、前記第2のコンピューティングデバイスの仮想位置又は物理的位置が前記規定の地理的エリア内にある場合にのみ、前記共有可能なデジタルコンテンツの前記少なくとも一部を受信するように構成される、請求項1~16の何れか一項に記載のシステム。
  18. 複数のホストコンピューティングデバイスをさらに含み、前記複数のホストコンピューティングデバイスが、前記第1のコンピューティングデバイスを含み、前記規定の地理的エリアが、前記複数のホストコンピューティングデバイスに基づく、請求項17に記載のシステム。
  19. 前記第1のコンピューティングデバイスが、前記テザリングオブジェクトのインスタンスが生成されたときに、前記共有可能なデジタルコンテンツを受信するように構成される、請求項1~18の何れか一項に記載のシステム。
  20. 前記第1のコンピューティングデバイスが、セルラーネットワークを介して、前記1つ又は複数のコンピュータデジタルコンテンツサーバと通信し、及び/又は前記第2のコンピューティングデバイスが、セルラーネットワークを介して、前記第1のコンピューティングデバイス及び/又は前記1つ又は複数のコンピュータデジタルコンテンツサーバと通信する、請求項1~19の何れか一項に記載のシステム。
  21. 前記共有可能なデジタルコンテンツが、コンピュータベースのゲームに関連付けられたコンテンツである、請求項1~20の何れか一項に記載のシステム。
  22. デジタルコンテンツを共有するための1つ又は複数のコンピュータデジタルコンテンツサーバによって実行されるコンピュータ実装方法であって、
    位置センサデータに基づいて、第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置するか否かを決定することと、
    前記第1のコンピューティングデバイスが前記規定の地理的エリア内に物理的に位置する場合に、共有可能なデジタルコンテンツのアクセスを前記第1のコンピューティングデバイスに提供することであって、前記共有可能なデジタルコンテンツが前記規定の地理的エリアに拘束される、提供することと、
    前記共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成することであって、前記テザリングオブジェクトが、少なくとも、前記第1のコンピューティングデバイスにおいて第1のエンドポイントを含み、及び前記第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにおいて第2のエンドポイントを含む、インスタンスを生成することと、
    前記第1のコンピューティングデバイスから遠く離れた前記第2のコンピューティングデバイスにある前記第2のエンドポイントに対して、前記テザリングオブジェクトを介して、前記共有可能なデジタルコンテンツの少なくとも一部のアクセスを提供することと、
    を含む、方法。
  23. 前記共有可能なデジタルコンテンツの前記少なくとも一部のアクセスを提供することが、前記テザリングオブジェクトを介して、前記共有可能なデジタルコンテンツの前記少なくとも一部を前記第2のエンドポイントに送信することを含む、請求項22に記載の方法。
  24. 前記共有可能なデジタルコンテンツの前記少なくとも一部が、前記第2のコンピューティングデバイスに保存され、前記共有可能なデジタルコンテンツの前記少なくとも一部のアクセスを提供することが、前記第2のコンピューティングデバイスに保存された前記共有可能なデジタルコンテンツの前記少なくとも一部のアクセスを提供することを含む、請求項22又は23に記載の方法。
  25. 前記1つ又は複数のコンピュータデジタルコンテンツサーバが、非一時的コンピュータ可読メモリを有する第1のコンピュータデジタルコンテンツサーバを含み、前記テザリングオブジェクトのインスタンスを生成することが、前記非一時的コンピュータ可読メモリに保存された前記テザリングオブジェクトのインスタンスを生成することを含む、請求項22~24の何れか一項に記載の方法。
  26. 前記第1のコンピューティングデバイスがセンサを含み、前記第1のコンピューティングデバイスが前記規定の地理的エリア内に物理的に位置するか否かを決定することが、前記センサによって提供されたデータに基づいて、前記第1のコンピューティングデバイスが前記規定の地理的エリア内に物理的に位置するか否かを決定することを含む、請求項22~25の何れか一項に記載の方法。
  27. 前記第1のコンピューティングデバイスが前記規定の地理的エリア内に物理的に位置するか否かを決定することが、前記第1のコンピューティングデバイスの外部にあるセンサによって提供されたデータに基づいて、前記第1のコンピューティングデバイスが前記規定の地理的エリア内に物理的に位置するか否かを決定することを含む、請求項22~26の何れか一項に記載の方法。
  28. 前記第1のコンピューティングデバイスが、モバイルコンピューティングデバイス又は据え置き型コンピューティングデバイスであり、及び/又は前記第2のコンピューティングデバイスが、モバイルコンピューティングデバイス又は据え置き型コンピューティングデバイスである、請求項22~27の何れか一項に記載の方法。
  29. 前記第1のコンピューティングデバイスが、ホストコンピューティングデバイスであり、前記テザリングオブジェクトが、第1のテザリングオブジェクトであり、前記共有可能なデジタルコンテンツが、第1の共有可能なデジタルコンテンツであり、前記方法が、別のホストコンピューティングデバイスにあるエンドポイントを含む第2のテザリングオブジェクトを介して、第2の共有可能なデジタルコンテンツの少なくとも一部のアクセスを提供することをさらに含む、請求項22~28の何れか一項に記載の方法。
  30. 前記テザリングオブジェクトが、前記第1のコンピューティングデバイスから遠く離れた第3のコンピューティングデバイスにおいて第3のエンドポイントを含み、前記方法が、前記テザリングオブジェクトを介して、前記共有可能なデジタルコンテンツの少なくとも一部のアクセスを前記第3のエンドポイントに提供することをさらに含む、請求項22~29の何れか一項に記載の方法。
  31. 前記規定の地理的エリアが、絶対的地理的エリア又は相対的地理的エリアである、請求項22~30の何れか一項に記載の方法。
  32. 前記共有可能なデジタルコンテンツが、拡張現実コンテンツであり、及び/又は前記共有可能なデジタルコンテンツが、音声データ、画像データ、運動感覚データ、触覚データ、アプリケーションプログラミングインタフェースデータ、テキストデータ、メタデータ、及び2D又は3Dモデリングに関連したデータの1つ又は複数を含む、請求項22~31の何れか一項に記載の方法。
  33. 前記共有可能なデジタルコンテンツの前記少なくとも一部のアクセスを提供することが、前記第2のコンピューティングデバイスの仮想位置又は物理的位置が前記規定の地理的エリア内にある場合にのみ、前記共有可能なデジタルコンテンツの前記少なくとも一部のアクセスを提供することを含む、請求項22~32の何れか一項に記載の方法。
  34. 前記第1のコンピューティングデバイスに共有可能なデジタルコンテンツのアクセスを提供することが、前記テザリングオブジェクトのインスタンスが生成されたときに前記第1のコンピューティングデバイスに共有可能なデジタルコンテンツのアクセスを提供することを含む、請求項22~33の何れか一項に記載の方法。
  35. 前記共有可能なデジタルコンテンツが、コンピュータベースのゲームに関連付けられたコンテンツである、請求項22~34の何れか一項に記載の方法。
  36. コンピュータ実行可能命令を含む非一時的コンピュータ可読媒体であって、前記コンピュータ実行可能命令が、
    位置センサデータに基づいて、第1のコンピューティングデバイスが規定の地理的エリア内に物理的に位置するか否かを決定することと、
    前記第1のコンピューティングデバイスが前記規定の地理的エリア内に物理的に位置する場合に、共有可能なデジタルコンテンツのアクセスを前記第1のコンピューティングデバイスに提供することであって、前記共有可能なデジタルコンテンツが前記規定の地理的エリアに拘束される、提供することと、
    前記共有可能なデジタルコンテンツに関連付けられたテザリングオブジェクトのインスタンスを生成することであって、前記テザリングオブジェクトが、少なくとも、前記第1のコンピューティングデバイスにおいて第1のエンドポイントを含み、及び前記第1のコンピューティングデバイスから遠く離れた第2のコンピューティングデバイスにおいて第2のエンドポイントを含む、インスタンスを生成することと、
    前記第1のコンピューティングデバイスから遠く離れた前記第2のコンピューティングデバイスにある前記第2のエンドポイントに対して、前記テザリングオブジェクトを介して、前記共有可能なデジタルコンテンツの少なくとも一部のアクセスを提供することと、
    を行うためにプロセッサによって実行可能である、非一時的コンピュータ可読媒体。
JP2022567827A 2020-05-07 2021-05-06 テザリングによる位置ベースのコンテンツ共有 Active JP7441331B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2024019944A JP2024054321A (ja) 2020-05-07 2024-02-14 テザリングによる位置ベースのコンテンツ共有

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063021282P 2020-05-07 2020-05-07
US63/021,282 2020-05-07
PCT/US2021/031099 WO2021226339A1 (en) 2020-05-07 2021-05-06 Location-based content sharing via tethering

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024019944A Division JP2024054321A (ja) 2020-05-07 2024-02-14 テザリングによる位置ベースのコンテンツ共有

Publications (2)

Publication Number Publication Date
JP2023529797A true JP2023529797A (ja) 2023-07-12
JP7441331B2 JP7441331B2 (ja) 2024-02-29

Family

ID=76076559

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022567827A Active JP7441331B2 (ja) 2020-05-07 2021-05-06 テザリングによる位置ベースのコンテンツ共有
JP2024019944A Pending JP2024054321A (ja) 2020-05-07 2024-02-14 テザリングによる位置ベースのコンテンツ共有

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024019944A Pending JP2024054321A (ja) 2020-05-07 2024-02-14 テザリングによる位置ベースのコンテンツ共有

Country Status (8)

Country Link
US (2) US11876615B2 (ja)
EP (1) EP4147437A1 (ja)
JP (2) JP7441331B2 (ja)
KR (1) KR20230005372A (ja)
CN (1) CN115516841A (ja)
AU (2) AU2021267896B2 (ja)
CA (1) CA3181781A1 (ja)
WO (1) WO2021226339A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11551233B1 (en) * 2020-01-27 2023-01-10 Pizza Hut Connect, LLC System and method for governing execution of a geography dependent computer process

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8489669B2 (en) * 2000-06-07 2013-07-16 Apple Inc. Mobile data processing system moving interest radius
JP5351158B2 (ja) 2007-07-23 2013-11-27 インタートラスト テクノロジーズ コーポレイション テザード装置システム及び方法
US9730037B2 (en) * 2010-06-16 2017-08-08 Microsoft Corporation Cellular data communication for mobile devices
US8681178B1 (en) * 2010-11-02 2014-03-25 Google Inc. Showing uncertainty in an augmented reality application
KR101224876B1 (ko) 2011-03-24 2013-01-22 주식회사 텍포러스 스마트 카를 위한 차량내 네트워크 장치
US8493353B2 (en) * 2011-04-13 2013-07-23 Longsand Limited Methods and systems for generating and joining shared experience
US8348752B2 (en) 2011-05-02 2013-01-08 At&T Intellectual Property I, Lp Method and apparatus for managing a gaming application
JP6126096B2 (ja) 2011-08-29 2017-05-10 シンセイ、インコーポレイテッド エンドポイントから別のエンドポイントへウイルス性コピーをするためのコンテナ型ソフトウェア
US9363099B2 (en) * 2011-12-13 2016-06-07 Ericsson Ab UPnP/DLNA with RADA hive
WO2013104820A1 (en) * 2012-01-09 2013-07-18 Nokia Corporation Method and apparatus for providing an architecture for delivering mixed reality content
US8831585B2 (en) * 2012-08-31 2014-09-09 Nuance Communications, Inc. Systems, methods and articles for a communications device providing communications and services involving automobile head units
US9171090B2 (en) * 2012-11-08 2015-10-27 At&T Intellectual Property I, Lp Method and apparatus for sharing media content
US9582516B2 (en) 2013-10-17 2017-02-28 Nant Holdings Ip, Llc Wide area augmented reality location-based services
US9867220B2 (en) 2014-07-01 2018-01-09 Microsoft Technology Licensing, Llc Tethering parameters for a tethering connection
US20170243403A1 (en) * 2014-11-11 2017-08-24 Bent Image Lab, Llc Real-time shared augmented reality experience
US10817563B2 (en) * 2015-02-16 2020-10-27 Tourblend Innovations, Llc Providing location based content to mobile devices
JPWO2018150659A1 (ja) 2017-02-14 2019-12-12 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US20180352166A1 (en) * 2017-06-01 2018-12-06 Silicon Constellations, Inc. Video recording by tracking wearable devices
US10737178B2 (en) * 2017-06-19 2020-08-11 Niantic, Inc. Providing a shared virtual experience in a location-based game
US10706688B2 (en) 2017-10-04 2020-07-07 Sg Gaming, Inc. System, method and apparatus for gaming in a convenient environment
US11140114B2 (en) * 2018-05-04 2021-10-05 Russell Holmes Geolocation based data sharing system
US20180345129A1 (en) * 2018-07-27 2018-12-06 Yogesh Rathod Display virtual objects within predefined geofence or receiving of unique code from closest beacon
US20200092389A1 (en) * 2018-08-30 2020-03-19 Nigel Conolly Method and system for optimising the delivery of content to mobile devices using microzones and macrozones
US11321891B2 (en) * 2020-04-29 2022-05-03 Htc Corporation Method for generating action according to audio signal and electronic device

Also Published As

Publication number Publication date
JP2024054321A (ja) 2024-04-16
WO2021226339A1 (en) 2021-11-11
CN115516841A (zh) 2022-12-23
US20210352131A1 (en) 2021-11-11
CA3181781A1 (en) 2021-11-11
AU2021267896B2 (en) 2023-10-05
US11876615B2 (en) 2024-01-16
JP7441331B2 (ja) 2024-02-29
EP4147437A1 (en) 2023-03-15
KR20230005372A (ko) 2023-01-09
US20240106883A1 (en) 2024-03-28
AU2021267896A1 (en) 2022-12-01
AU2023278056A1 (en) 2024-01-04

Similar Documents

Publication Publication Date Title
US11229846B2 (en) Providing a shared virtual experience in a location-based game
JP6905154B2 (ja) 並行現実ゲーム内の活動を用いたプレイヤーの現実世界位置の検証
US8745494B2 (en) System and method for control of a simulated object that is associated with a physical location in the real world environment
US8303387B2 (en) System and method of simulated objects and applications thereof
WO2020028603A2 (en) Player induced counter-balancing of loads on a character in a virtual environment
US20150350223A1 (en) System and method for facilitating user interaction with a simulated object associated with a physical location
JP2024054321A (ja) テザリングによる位置ベースのコンテンツ共有
US11964211B2 (en) Output production
US20210052976A1 (en) Virtual and real-world content creation, apparatus, systems, and methods
Ejsing-Duun Location-based games: from screen to street
US20130013397A1 (en) System and method for bid-sensitive, zone-based, mobile advertising
Kratz et al. Cell spell-casting: Designing a locative and gesture recognition multiplayer smartphone game for tourists
TWI817479B (zh) 結合現實世界與複數虛擬世界而為虛實互動之適地性「Metaverse」社群系統
Lochrie et al. Community generated location based gaming
Losh When Walls Can Talk: Animate Cities and Digital Rhetoric
US20240108989A1 (en) Generating additional content items for parallel-reality games based on geo-location and usage characteristics
Ecenbarger Networked Ludic Mobility: Reframing Games as Networked and Mobile Experiences
Flintham Supporting mobile mixed-reality experiences
TW202200247A (zh) 將真實世界活動與平行實境遊戲鏈結
JP2023048271A (ja) 仮想観光システムおよび通信端末
Jazairy From Cyberspace to The World

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230111

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230317

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240118

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240216

R150 Certificate of patent or registration of utility model

Ref document number: 7441331

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150