JP2022517562A - スタンドアロンプログラムの実行方法、装置、デバイス及びコンピュータプログラム - Google Patents

スタンドアロンプログラムの実行方法、装置、デバイス及びコンピュータプログラム Download PDF

Info

Publication number
JP2022517562A
JP2022517562A JP2021538795A JP2021538795A JP2022517562A JP 2022517562 A JP2022517562 A JP 2022517562A JP 2021538795 A JP2021538795 A JP 2021538795A JP 2021538795 A JP2021538795 A JP 2021538795A JP 2022517562 A JP2022517562 A JP 2022517562A
Authority
JP
Japan
Prior art keywords
terminal
stand
program
main program
alone
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.)
Pending
Application number
JP2021538795A
Other languages
English (en)
Inventor
▲海▼君 伍
万▲澤▼ 熊
静天 李
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Publication of JP2022517562A publication Critical patent/JP2022517562A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/34Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using peer-to-peer connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an MPEG-stream for transmitting to a mobile phone or a thin client
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/843Special adaptations for executing a specific game genre or game mode involving concurrently two or more players on the same game device, e.g. requiring the use of a plurality of controllers or of a specific view of game data for each player
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • 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/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/308Details of the user interface
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/408Peer to peer connection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Child & Adolescent Psychology (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Optics & Photonics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

スタンドアロンプログラムの実行方法は、第1メインプログラムでスタンドアロンプログラムを実行し、第1端末で実行されている第1メインプログラムと第2端末で実行されている第2メインプログラムによって第1端末と第2端末との間のネットワーク接続を確立するステップと、前記ネットワーク接続によって第1端末から第2端末への画像情報の伝送及び第2端末から第1端末への第2操作命令の伝送を実現するステップとを含み、ここで、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムである。

Description

(関連出願への相互参照)
本出願は、2019年5月30日に中国特許庁に提出された、出願番号が2019104647850であり、出願名称が「スタンドアロンプログラムの実行方法、装置、デバイス及び記憶媒体」である中国特許出願に対する優先権を主張し、その全ての内容が参照により本出願に組み込まれる。
本出願は、コンピュータ技術分野に関し、特にスタンドアロンプログラムの実行方法、装置、デバイス及び記憶媒体に関する。
スタンドアロンゲームは、通常、1つの電子デバイスで独立して実行して、ひいてはネットワークにもアクセスする必要がないものを指している。スタンドアロンゲームは、シングルプレイヤーモードとマルチプレイヤーモードをサポートしている。ここで、シングルプレイヤーモードとは、スタンドアロンゲームで1つの操作オブジェクトしか制御操作することができないことを意味し、マルチプレイヤーモードとは、スタンドアロンゲームで少なくとも2つの操作オブジェクトを別々に制御操作することができることを意味している。
スタンドアロンゲームにおける操作オブジェクトは、電子デバイスの入力デバイスにより操作制御される。スタンドアロンゲームのマルチプレイヤーモードは、通常、少なくとも1つの入力デバイスにより操作制御でき、例えば、キーボードを区画することによって、スタンドアロンゲームにおける2つの操作オブジェクトを制御することができ、又は、電子デバイスに2つの操作ハンドルを接続することによって、スタンドアロンゲームにおける2つの操作オブジェクトを、2つのハンドルにより別々に制御することができる。
しかし、スタンドアロンゲームのマルチプレイヤーモードは、1つの電子デバイスでしか操作制御できず、2つ以上の電子デバイスで同時に操作制御することをサポートしていない。
本出願によって提供される様々な実施例に基づいて、スタンドアロンプログラムの実行方法、装置、デバイス及び記憶媒体を提供し、技術案は次の通りである。
スタンドアロンプログラムの実行方法は、第1メインプログラムを実行している第1端末により実行され、当該方法は、
第1メインプログラムでスタンドアロンプログラムを実行するステップであって、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであるステップと、
第1メインプログラムによって第2端末とのネットワーク接続を確立するステップと、
ネットワーク接続によってスタンドアロンプログラムの画像情報を第2端末に送信するステップと、
第1メインプログラムによって第1端末の入力デバイスから入力された第1操作命令を受信し、第1メインプログラムによって第1操作命令をスタンドアロンプログラムに転送するステップであって、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御するために用いられるステップと、
第1メインプログラムによって、第2端末からネットワーク接続を介して送信された第2操作命令を受信し、第1メインプログラムによって第2操作命令をスタンドアロンプログラムに転送するステップであって、スタンドアロンプログラムは、第2操作命令に基づいて第2操作オブジェクトを制御するためにさらに用いられるステップと、を含む。
スタンドアロンプログラムの実行方法は、第2メインプログラムを実行している第2端末により実行され、当該方法は、
第2メインプログラムによって第1端末とのネットワーク接続を確立するステップと、
第2メインプログラムによって、第1端末からネットワーク接続を介して送信されたスタンドアロンプログラムの画像情報を受信するステップと、
第2メインプログラムによって画像情報を表示するステップと、
第2メインプログラムによって、第2端末の入力デバイスから入力された第2操作命令を受信し、第2メインプログラムによって第2操作命令を第1端末に送信するステップであって、第2操作命令は、スタンドアロンプログラムが第2操作オブジェクトを制御するために用いられ、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであるステップと、を含む。
スタンドアロンプログラムの実行装置は、端末に設けられ、当該装置は、第1メインプログラムモジュールを備え、
前記第1メインプログラムモジュールは、
第1メインプログラムでスタンドアロンプログラムを実行するように構成され、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであるプログラム実行サブモジュールと、
第1メインプログラムによって第2端末とのネットワーク接続を確立するように構成されるネットワーク接続サブモジュールと、
ネットワーク接続によってスタンドアロンプログラムの画像情報を第2端末に送信するように構成されるネットワーク送信サブモジュールと、
第1メインプログラムによって第1端末の入力デバイスから入力された第1操作命令を受信し、第1メインプログラムによって第1操作命令をスタンドアロンプログラムに転送するように構成され、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御するために用いられる受信サブモジュールと、
第1メインプログラムによって、第2端末からネットワーク接続を介して送信された第2操作命令を受信し、第1メインプログラムによって第2操作命令をスタンドアロンプログラムに転送するように構成され、スタンドアロンプログラムは、第2操作命令に基づいて第2操作オブジェクトを制御するためにさらに用いられるネットワーク受信サブモジュールと、を含む。
スタンドアロンプログラムの実行装置は、端末に設けられ、当該装置は、第2メインプログラムモジュールを備え、
前記第2メインプログラムモジュールは、
第2メインプログラムによって第1端末とのネットワーク接続を確立するように構成されるネットワーク接続サブモジュールと、
第2メインプログラムによって、第1端末からネットワーク接続を介して送信されたスタンドアロンプログラムの画像情報を受信するように構成されるネットワーク受信サブモジュールと、
第2メインプログラムによって画像情報を表示するように構成される表示サブモジュールと、
第2メインプログラムによって、第2端末の入力デバイスから入力された第2操作命令を受信し、第2メインプログラムによって第2操作命令を第1端末に送信するように構成され、第2操作命令は、スタンドアロンプログラムが第2操作オブジェクトを制御するために用いられ、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであるネットワーク送信サブモジュールと、を含む。
端末は、1つ又は複数のメモリと、1つ又は複数のメモリに接続された1つ以上のプロセッサとを備え、プロセッサは、本出願の各実施例に記載されているスタンドアロンプログラムの実行方法を実現するために、コンピュータ読み取り可能な命令をロード及び実行するように構成される。
1つ又は複数のコンピュータ可読記憶媒体は、1つのコンピュータ読み取り可能な命令が記憶されており、コンピュータ読み取り可能な命令は、本出願の各実施例に記載されているスタンドアロンプログラムの実行方法を実装するために、1つ又は複数のプロセッサによってロード及び実行される。
本出願の1つ又は複数の実施例の詳細は、以下の図面及び説明に記載される。本出願の他の特徴、目的と利点は、本出願の明細書、図面及び特許請求の範囲から明らかになる。
本出願の1つの例示的な実施例によるコンピュータシステムの構造図である。 本出願の1つの例示的な実施例によるスタンドアロンプログラムの実行方法のフローチャートである。 本出願の1つの例示的な実施例によるオンライン時の端末のインターフェースの概略図である。 本出願の別の例示的な実施例によるスタンドアロンプログラムの実行方法のフローチャートである。 本出願の別の例示的な実施例によるスタンドアロンプログラムの実行方法のフローチャートである。 本出願の1つの例示的な実施例によるスタンドアロンプログラムがオンラインになるときの端末のインターフェースの概略図である。 本出願の別の例示的な実施例によるスタンドアロンプログラムがオンラインになるときの端末のインターフェースの概略図である。 本出願の別の例示的な実施例によるスタンドアロンプログラムがオンラインになるときの端末のインターフェースの概略図である。 本出願の別の例示的な実施例によるスタンドアロンプログラムがオンラインになるときの端末のインターフェースの概略図である。 本出願の別の例示的な実施例によるスタンドアロンプログラムがオンラインになるときの端末のインターフェースの概略図である。 本出願の別の例示的な実施例によるスタンドアロンプログラムの実行方法のフローチャートである。 本出願の別の例示的な実施例によるスタンドアロンプログラムの実行方法のフローチャートである。 本出願の別の例示的な実施例によるスタンドアロンプログラムの実行方法のフローチャートである。 本出願の別の例示的な実施例によるスタンドアロンプログラムの実行方法の時系列図である。 本出願の1つの例示的な実施例によるスタンドアロンプログラムの実行装置のブロック図である。 本出願の別の例示的な実施例によるスタンドアロンプログラムの実行装置のブロック図である。 本出願の1つの例示的な実施例による電子デバイスの構造図である。 本出願の1つの例示的な実施例によるサーバーの構造図である。
本出願の実施例における技術案をより明確に説明するために、上記において実施例の説明に必要な図面を簡単に説明するが、明らかに、上記に説明される図面は本出願のいくつかの実施例のためのものだけであり、当業者であれば、創造的な労力を払わず、これらの図面に基づいて他の図面を得ることができる。
本出願の目的、技術案と利点をより明確にするために、以下に図面を組み合わせて本出願の実施形態をさらに詳しく説明する。ここで説明される具体的な実施形態が本出願を解釈するためのものだけであるが、本出願を限定するために用いられないことを理解すべきである。
本出願における名詞を解釈する。
スタンドアロンプログラムとは、1つの電子デバイスで独立して実行されるプログラムであり、ネットワークにアクセスする必要がなく、例えば、スタンドアロンゲームとは、1つの電子デバイスで独立して実行されるゲームであり、ネットワークにアクセスする必要がない。いくつかのスタンドアロンゲームは、シングルプレイヤーモードとマルチプレイヤーモードをサポートしている。ここで、シングルプレイヤーモードとは、スタンドアロンゲームで1つの操作オブジェクトしか制御操作しないことを意味し、マルチプレイヤーモードとは、スタンドアロンゲームで少なくとも2つの操作オブジェクトを別々に制御操作することができることを意味している。
スタンドアロンゲームにおける操作オブジェクトは、電子デバイスの入力デバイスにより操作制御される。スタンドアロンゲームのマルチプレイヤーモードは、通常、少なくとも1つの入力デバイスにより操作制御でき、例えば、キーボードを区画することによって、スタンドアロンゲームにおける2つの操作オブジェクトを制御することができ、又は、電子デバイスに2つの操作ハンドルを接続することによって、スタンドアロンゲームにおける2つの操作オブジェクトを、2つのハンドルにより別々に制御することができる。
図1を参照すると、それは1つの例示的な実施例によるコンピュータシステムのブロック図である。当該コンピュータシステムは、第1端末120、第2端末140及び中継サーバー160を備える。
第1端末120及び第2端末140は、ノートブックコンピュータ、デスクトップコンピュータ、スマートフォン及びタブレットのうちの少なくとも1つを含むことができる。
1つの実施例では、第1端末120は、有線又は無線ネットワークを介して第2端末140とのピアツーピア(P2P:Peer to Peer、ピアツーピア)ネットワーク接続を確立する。
第2端末140のインターネットプロトコル(IP:Internet Protocol)アドレスがパブリックネットワークIPである場合、第1端末120と第2端末140は、直接P2P接続を確立する。
第2端末140のIPアドレスがIPマスキングされ(Network Address Translation:ネットワークアドレス変換、NAT)、第1端末120と第2端末140との間でNAT透過し、直接P2P接続を確立する。
1つの実施例では、第1端末120は、中継サーバー160によって第2端末140とのネットワーク接続を確立する。
第2端末140のIPアドレスに対してNATを実施し、かつ第1端末120と第2端末140との間でNAT透過を実行することができない場合、第1端末120と第2端末140は、中継サーバー160によってネットワーク接続を行う。
中継サーバー160は、有線又は無線ネットワークを介してそれぞれ第1端末120及び第2端末140と通信する。
第1端末120にアプリケーションプログラム(第1メインプログラム)がインストールされており、当該第1メインプログラムは、スタンドアロンプログラムの実行をサポートし、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであり、当該第1メインプログラムは、オンラインプログラムの実行もサポートし、例えば、当該第1メインプログラムは、マルチプレイヤーゲームの操作もサポートする。
1つの実施例では、当該第1メインプログラムは、マルチプレイヤープログラムであってもよい。当該第1メインプログラムは、第1端末120及び第2端末140がスタンドアロンプログラムの第1操作オブジェクト及び第2操作オブジェクトに対して別々に制御することもサポートし、このとき、当該スタンドアロンプログラムは、第1端末120で実行される。
第2端末140にアプリケーションプログラム(第2メインプログラム)がインストールされており、第2端末140は、当該第2メインプログラムによって、スタンドアロンプログラムを実行している第1端末120と、スタンドアロンプログラムの第1操作オブジェクトと第2操作オブジェクトに対してそれぞれ制御することができる。
1つの実施例では、当該第2メインプログラムは、スタンドアロンプログラムの実行をサポートしてもよく、また、スタンドアロンプログラムの実行をサポートしなくてもよく、ここで、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムである。例示的に、第2端末140は、スタンドアロンプログラムの実行をサポートせず、第2端末140は、第1端末120によって送信された画像情報とサウンド情報を当該第2メインプログラムによって受信して再生し、第2端末140の入力デバイスによって入力された操作命令を当該第2メインプログラムによって受信し、当該第2メインプログラムによって前記操作命令を第1端末120に送信することができる。
1つの実施例では、当該第2メインプログラムは、マルチプレイヤープログラム又はブラウザであってもよい。前記マルチプレイヤープログラムは、スタンドアロンプログラムの実行をサポートし、ブラウザは、スタンドアロンプログラムの実行をサポートしてもよく、又は、スタンドアロンプログラムの実行をサポートしなくてもよい。
図1に示すように、第1端末120にマルチプレイヤープログラムがインストールされており、第2端末140は、マルチプレイヤープログラム及びブラウザがそれぞれインストールされている端末を含む。
第1端末120のマルチプレイヤープログラムは、画面/サウンドキャプチャ装置121、ビデオ/オーディオエンコーダ122、第1ネットワーク送信機123、第1ネットワーク受信機124、第1操作命令翻訳機125及びスタンドアロンプログラムコントローラ126を含む。
第1端末120では、画面/サウンドキャプチャ装置121は、スタンドアロンプログラムを実行する時の画像情報及びサウンド情報をキャプチャし、それらをビデオ/オーディオエンコーダ122に伝送し、ビデオ/オーディオエンコーダ122は、前記画像情報及びサウンド情報を符号化し、符号化後のビデオストリーム及びオーディオストリームを取得し、第1ネットワーク送信機123によって前記ビデオストリーム及びオーディオストリームを第2端末140に送信する。
第1ネットワーク受信機124は、第2端末140によって送信された制御ストリームを受信し、第1操作命令翻訳機125によって、制御ストリームをデシリアライズし、デシリアライズ後の第2操作命令を取得し、さらに、スタンドアロンプログラムコントローラ126によって、前記デシリアライズ後の第2操作命令をスタンドアロンプログラムに転送し、当該スタンドアロンプログラムによって、第2の操作命令に基づいて第2操作オブジェクトを制御する。
1つの実施例では、第1端末120は、さらに第1端末120の入力デバイスから入力された第1操作命令をマルチプレイヤープログラムによって受信し、スタンドアロンプログラムコントローラ126は、前記第1操作命令をスタンドアロンプログラムに転送し、当該スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御する。
いくつかの実施例では、第2端末140のマルチプレイヤープログラムは、第2ネットワーク受信機141、ビデオ/オーディオデコーダ142、プレーヤー143、入力デバイスアダプタ144、第2操作命令翻訳機145及び第2ネットワーク送信機146を含む。
第2端末140では、第2ネットワーク受信機141は、第1端末120から送信されたビデオストリーム及びオーディオストリームを受信し、ビデオ/オーディオデコーダ142は、前記ビデオストリーム及びオーディオストリームを復号し、復号後の画像情報及びサウンド情報を取得し、前記画像情報及びサウンド情報をプレーヤー143に送信して再生する。
第2端末140は、第2端末140の入力デバイスによって入力された第2操作命令を受信し、入力デバイスアダプタ144によって、前記第2操作命令を取得し、前記第2操作命令を第2操作命令翻訳機145に入力してシリアライズ処理を行い、制御ストリームを得、第2ネットワーク送信機146は、制御ストリームを第1端末120に送信する。
いくつかの実施例では、第2端末140にブラウザが含まれ、ブラウザにJavaScriptソフトウェア開発キット(SDK:Software Development Kit)が含まれる。
第2端末140では、ネットワークプロトコルによって第1端末120から送信されたビデオストリーム及びオーディオストリームを受信し、対応するコントロールによってビデオストリーム及びオーディオストリームを再生し、例えば、ハイパーテキストマークアップ言語5ビデオ(HTML5 video:Hyper Text Markup Language 5 video)によってビデオを再生し、ハイパーテキストマークアップ言語5オーディオ(HTML5 audio:Hyper Text Markup Language 5 audio)によってオーディオを再生し、又は、フラッシュ(flash)によってビデオとオーディオを再生する。
第2端末140は、第2端末140の入力デバイスによって入力された第2操作命令を受信した後、ブラウザページのjsコードで前記第2操作命令をキャプチャし、前記第2操作命令翻訳機145と同じ方式で第2操作命令をシリアライズし、シリアライズ後の制御ストリームをネットワークプロトコルによって第1端末120に送信する。
図2を参照すると、それは1つの例示的な実施例によるスタンドアロンプログラムの実行方法のフローチャートである。当該方法を図1に示すコンピュータシステムに適用することを例として、第1端末に第1メインプログラムがインストールされており、第2端末に第2メインプログラムがインストールされている時に、当該方法は、以下のステップを含む。
ステップ201において、第1メインプログラムでスタンドアロンプログラムを実行する。
ステップ202において、第1端末は、第1メインプログラムによって第2端末とのネットワーク接続を確立する。
第1メインプログラムに第1アカウントがログインしており、第1アカウントが友達リストを含み、第1端末が第1メインプログラムによって第2端末とのネットワーク接続を確立するステップは、概略的に次の通りである。
1)第1端末に友達リストを表示し、該友達リストが少なくとも1人のソーシャル友達を含み、ソーシャル友達が、第2アカウントに対応する。
2)第1端末は、友達リスト上での選択操作を受信する。
3)第1端末は、選択操作に基づいてターゲット第2アカウントを決定する。
4)第1端末は、ターゲット第2アカウントがログインしている第2端末とのネットワーク接続を確立する。
1つの実施例では、第1端末は、ターゲット第2アカウントがログインしている第2端末との直接ピアツーピア接続を確立し、又は、第1端末は、中継サーバーによって、ターゲット第2アカウントがログインしている第2端末とのネットワーク接続を確立する。
ステップ203において、第2端末は、第2メインプログラムによって第1端末とのネットワーク接続を確立する。
第2メインプログラムに第2アカウントがログインしており、第2アカウントが友達リストを含み、該友達リストが第1アカウントの対応するソーシャル友達を含む。
第2端末は、第2メインプログラムによって第1アカウントがログインしている第1端末との直接ピアツーピア接続を確立し、又は、第2端末は、中継サーバーによって、第1アカウントがログインしている第1端末とのネットワーク接続を確立する。
ステップ204において、第1端末は、ネットワーク接続によってスタンドアロンプログラムの画像情報を第2端末に送信する。
第1メインプログラムは、ビデオエンコーダと第1ネットワーク送信機とを含み、第1端末がネットワーク接続によってスタンドアロンプログラムの画像情報を第2端末に送信するステップは、概略的に次の通りである。
1)第1端末は表示インターフェースにおける画像情報を取得する。
1つの実施例では、前記画像情報は、スタンドアロンプログラムの再生画面又はオペレーティングシステムのデスクトップを含む。
第1端末は、現在の画面におけるスタンドアロンプログラムの各フレームの画面を取得する。1つの実施例では、画像キャプチャ装置は、スタンドアロンプログラム描画インターフェース又はオペレーティングシステム用のグラフィカル描画アプリケーションプログラミングインターフェース(API:Application Programming Interface)をホック(Hook)して、さらにスタンドアロンプログラムの画像情報をキャプチャする。
2)第1端末は、ビデオエンコーダによって前記画像情報を符号化し、符号化後の画像情報を取得する。
第1端末は、取得された前記各フレームの画面をビデオエンコーダによって指定のビデオフォーマットのビデオフレームに符号化し、前記指定のビデオフォーマットは、動画エキスパートグループ-4パート10(H264)、高効率ビデオ符号化(H256)、ビデオエンジンVP8/VP9、ビデオコーデック標準AV1ビデオなどの圧縮率が高くかつ画質が高いビデオフォーマットを指す。
3)第1端末は、第1ネットワーク送信器によって第2端末に符号化後の画像情報を送信する。
第1端末は、符号化後の画像情報をデータパケットの形で第2端末に送信し、データパケットにヘッダ情報が設けられており、当該ヘッダ情報がデータパケットのタイプを示す。例えば、データパケットタイプがビデオである場合、当該データパケットはビデオデータパケットである。
ステップ205において、第1端末は、第1メインプログラムによって第1端末の入力デバイスの第1操作命令を受信し、第1メインプログラムによって第1操作命令をスタンドアロンプログラムに転送する。
当該第1操作命令は、スタンドアロンプログラムにおける第1操作オブジェクトを制御するために用いられ、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御するために用いられる。第1操作オブジェクトは、第1端末によって制御されるスタンドアロンプログラムにおける1つのオブジェクトであり、例えば、スタンドアロンゲームには1つの仮想オブジェクトが設定され、当該仮想オブジェクトは、第1端末によって行動制御され、当該仮想オブジェクトは、第1操作オブジェクトである。
1つの実施例では、第1端末の入力デバイスは、キーボード、マウス、操作ハンドル及びタッチスクリーンのうちの少なくとも1つを含む。
ステップ206において、第2端末は、第2メインプログラムによって、第1端末からネットワーク接続を介して送信されたスタンドアロンプログラムの画像情報を受信する。
第2メインプログラムは第2ネットワーク受信機を含み、第2端末は、第2ネットワーク受信機によって、第1端末からネットワーク接続を介して送信された画像情報を受信する。
ステップ207において、第2端末は、第2メインプログラムによって画像情報を表示する。
第2メインプログラムはビデオデコーダを含み、第2端末が第2メインプログラムによって画像情報を表示するステップは、概略的に次の通りである。
1)第2端末は、ビデオデコーダによって画像情報を復号し、復号後の画像情報を取得する。
前記画像情報は、データパケットの形で伝送され、第2端末は、データパケットのヘッダ情報に基づいてデータパケットのタイプを識別し、識別によってビデオデータパケットを取得する。
第2端末は、ビデオデータパケットのヘッダ情報を取り除き、ヘッダ情報を取り除いたビデオデータパケットをビデオデコーダに送信し、ビデオデコーダによってビデオデータパケットを復号し、復号後の画像情報を取得する。
2)第2端末は、復号後の画像情報を第2メインプログラムのユーザインターフェースに表示する。
ステップ208において、第2端末は、第2メインプログラムによって第2端末の入力デバイスから入力された第2操作命令を受信し、第2メインプログラムによって第2操作命令を第1端末に送信する。
第2操作命令は、スタンドアロンプログラムにおける第2操作オブジェクトを制御するために用いられ、スタンドアロンプログラムは、第2操作命令に基づいて第2操作オブジェクトを制御するためにさらに用いられる。第2操作オブジェクトと第1操作オブジェクトは異なる操作オブジェクトである。例えば、スタンドアロンゲームに別の仮想オブジェクトも含まれ、前記別の仮想オブジェクトは、第2端末によって行動制御され、前記別の仮想オブジェクトは、第2操作オブジェクトであり、また、前記1つの仮想オブジェクトと別の仮想オブジェクトは、スタンドアロンゲームでの2つの仮想人物、2つの仮想動物又は2つのテトリスであってもよい。
1つの実施例では、第2端末の入力デバイスは、キーボード、マウス、操作ハンドル及びタッチスクリーンのうちの少なくとも1つを含む。
1つの実施例では、スタンドアロンプログラムがWindowsプラットフォームで実行されている場合、前記第2操作命令の取得方式は、次の方式の少なくとも1つを含むことができる。
a、Windowsでメッセージを感知して前記第2操作命令を取得する。
b、GetRawInput APIをホック(Hook)して、前記第2操作命令をキャプチャする。
c、駆動層から前記操作命令をキャプチャする。
1つの実施例では、第2メインプログラムは、第2操作命令翻訳機と第2ネットワーク送信機とを含み、第2端末が第2メインプログラムによって第2操作命令を第1端末に送信するステップは、概略的に次の通りである。
1)第2端末は、第2操作命令翻訳機により第2操作命令をシリアライズし、シリアライズ後の第2操作命令を取得する。
第2端末は、第2操作命令翻訳機によって、取得された第2操作命令を指定の情報記述フォーマットのデータにシリアライズし、それによってシリアライズ後の第2操作命令を生成する。
例示的に、第2操作命令翻訳機は、異なる入力デバイスからの操作命令を分類し、対応する記述情報に翻訳し、例えば、マウスによって入力された操作命令である場合、対応する記述情報には、マウスボタンを押下し、又は放す位置情報、動作発生時のゲーム画面におけるマウスカーソルの位置情報及びマウスホイールのスクロール変化量などが記録されている。
1つの実施例では、指定の情報記述フォーマットは、JSオブジェクト表記(JSON:JavaScript Object Notation)、拡張マークアップ言語(XML:eXtensible Markup Language)、プロトコルバッファ(Protocol Buffer)又はパブリック/プライベートプロトコルに対応する他のフォーマットを含むことができる。
第2端末は、さらにシリアライズ後の第2操作命令のデータパケットにヘッダ情報を追加し、当該ヘッダ情報は、当該データパケットのタイプが第2操作命令であることを示すために用いられる。
2)第2端末は、第2ネットワーク送信機によって、第1端末にシリアライズ後の第2操作命令を送信する。
ステップ209において、第1端末は、第1メインプログラムによって、第2端末からネットワーク接続を介して送信された第2操作命令を受信し、第1メインプログラムによって第2操作命令をスタンドアロンプログラムに転送する。
1つの実施例では、第1メインプログラムは、第1操作命令翻訳機とスタンドアロンプログラムコントローラとを含み、第1端末が、第1メインプログラムによって、第2端末からネットワーク接続を介して送信された第2操作命令を受信した後、
まず、第1操作命令翻訳機によって、シリアライズ後の第2操作命令をデシリアライズし、デシリアライズ後の第2操作命令を取得し、
第2操作命令は、データパケットの形で伝送され、第1端末は、データパケットのヘッダ情報に基づいて第2操作命令のデータパケットを識別し、データパケットのヘッダ情報を取り除き、第1端末は、第2操作命令をデシリアライズし、デシリアライズ後の第2操作命令を取得する。
1つの実施例では、第1端末は、ヘッダ情報を取り除いた第2操作命令のデータパケットを第1操作命令翻訳機に送信し、第1操作命令翻訳機によって、ヘッダ情報を取り除いたデータパケットを翻訳し、第2操作命令をデシリアライズし、デシリアライズ後の第2操作命令を取得し、ここで、デシリアライズ後の第2操作命令は、第1端末によって識別され、実行できる。
1つの実施例では、デシリアライズ後の第2操作命令のフォーマットが第1フォーマットである場合、第1端末は、前記第2操作命令の第1フォーマットを第2フォーマットに変換し、ここで、第1端末は、第1フォーマットの第2操作命令を実行することができなく、第1端末は、第2フォーマットの第2操作命令を実行することができる。
次に、スタンドアロンプログラムコントローラによって、デシリアライズ後の第2操作命令をスタンドアロンプログラムに転送する。
1つの実施例では、第2端末は、スタンドアロンプログラムコントローラによって、スタンドアロンプログラムで認識可能な第2操作命令をスタンドアロンプログラムに転送し、スタンドアロンプログラムコントローラが第2操作命令を転送する方式は次の通りである。
仮想ドライバによって第2操作命令の転送を制御し、
又は、システムでのアプリケーションプログラミングインターフェース(API)を呼び出して第2操作命令を転送し、
又は、操作命令を第1端末における対応する操作命令としてシミュレーションし、シミュレーションされた第2操作命令を転送する。
1つの実施例では、システムでのAPIは、SendInput、XInput、DirectInputなどの関数を含むことができる。
例示的に、第1端末は、スタンドアロンプログラムコントローラによって操作命令を転送し、まず、スタンドアロンプログラムコントローラは、第2操作命令の命令タイプを区別し、当該命令タイプがマウス、キーボード、操作ハンドルを含む。
次に、スタンドアロンプログラムコントローラは、命令タイプに基づいて対応するAPI関数を呼び出して第2操作命令を転送し、又は、命令タイプ基づいて第2操作命令をシミュレーションし、シミュレーションされた第2操作命令を転送し、又は、仮想ドライブによって異なる命令タイプの第2操作命令の転送を制御する。
上述したように、本実施例によって提供されるスタンドアロンプログラムの実行方法では、第1メインプログラムでスタンドアロンプログラムを実行し、第1端末で実行されている第1メインプログラムと第2端末で実行されている第2メインプログラムによって、第1端末と第2端末との間のネットワーク接続を確立し、前記ネットワーク接続によって第1端末から第2端末への画像情報の伝送及び第2端末から第1端末への第2操作命令の伝送を実現し、ここで、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであり、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御し、第2操作命令に基づいて第2操作命令を制御するために用いられる。この方法では、第1メインプログラムによって確立された、第2端末とのネットワーク接続により、第1端末と第2端末は、スタンドアロンプログラムにおける第1操作オブジェクト及び第2操作オブジェクトをそれぞれ制御し、異なる地域のユーザが異なる端末を使用してスタンドアロンプログラムのマルチプレイヤー操作モードでの操作制御を実行することを実現する。
なお、スタンドアロンゲームがスタンドアロンゲームであることを例として説明すると、スタンドアロンゲームに入った後、第1端末上の表示インターフェース11の画面と第2端末上の表示インターフェース12の画面が同期しており、図3に示すように、第1端末と第2端末の両方にゲームインターフェース13が表示され、ここで、ゲームインターフェース13の仮想オブジェクト14は、第1ユーザによって第1端末で制御され、仮想オブジェクト15は、第2ユーザによって第2端末で制御される。第1端末と第2端末との間のマルチプレイヤーゲームのプロセスが図2に示され、ここでは説明を省略する。
なお、上記のステップ201、ステップ202、ステップ204、ステップ205、ステップ209は、単独で実施例とすることができ、それによって第1端末におけるスタンドアロンプログラムの実行方法を実現し、上記のステップ203、ステップ206、ステップ207、ステップ208は、単独で一実施例とすることができ、それによって第2端末でのスタンドアロンプログラムの実行方法を実現する。また、ステップ205は、ステップ206とステップ206との間の任意の時点で実行することが可能であり、本実施例で限定されない。
図2に基づき、第1端末は、さらに第2端末へサウンド情報を共有し、サウンド情報の伝送は、画像情報の伝送の前に実行されてもよいし、画像情報の伝送の後に実行されてもよく、図4に示すように、サウンド情報の伝送が画像情報の伝送の後に実行されることを例とすると、ステップは、次の通りである。
ステップ201において、第1メインプログラムでスタンドアロンプログラムを実行する。
ステップ202において、第1端末は、第1メインプログラムによって第2端末とのネットワーク接続を確立する。
ステップ203において、第2端末は、第2メインプログラムによって第1端末とのネットワーク接続を確立する。
ステップ204において、第1端末は、ネットワーク接続によってスタンドアロンプログラムの画像情報を第2端末に送信する。
ステップ2042において、第1端末は、ネットワーク接続によってスタンドアロンプログラムのサウンド情報を第2端末に送信する。
1つの実施例では、第1メインプログラムは、オーディオエンコーダをさらに含み、前記第1メインプログラムによって第2端末とのネットワーク接続を確立した後に、次のステップをさらに含む。
1)第1端末は、第1端末のサウンド情報を取得する。
1つの実施例では、上記の現在のサウンド情報は、スタンドアロンプログラムのサウンド又はシステムのグローバルサウンドを含み、例えば、第1端末でスタンドアロンプログラムを実行するとともに、音楽を再生する場合、当該グローバルサウンドは、スタンドアロンプログラムのサウンドと音楽のサウンド(スタンドアロンプログラム以外のバックグラウンド音楽)を含む。
第1端末は、現在のサウンド情報を取得する。1つの実施例では、第1端末は、オペレーティングシステムによって提供されるオーディオキャプチャAPI(Audio Capture API)を使用してサウンドキャプチャを行い、例えば、ウィンドウ(windows)環境で、ウィンドウオペレーティングシステムによって提供されるオーディオキャプチャAPI(Audio Capture API)を使用し、ここで、 Audio Capture APIは、コアオーディオAPI(Core Audio API)を含む。
又は、オペレーティングシステム又は他のオーディオ再生APIに対してホック操作を行ってサウンドをキャプチャする。
2)第1端末は、ビデオエンコーダによってサウンド情報を符号化し、符号化後のサウンド情報を取得する。
第1端末は、取得された前記サウンド情報を、ビデオエンコーダによって指定のビデオフォーマットのオーディオに符号化し、前記指定されたオーディオフォーマットは、サウンドコーディングフォーマットOPUS、オーディオコーディング3(AC3:Audio Coding 3)などの圧縮率が高くかつ音質が高いオーディオフォーマットを指す。
3)第1端末は、第1ネットワーク送信器によって符号化後のサウンド情報を第2端末に送信する。
ステップ205において、第1端末は、第1メインプログラムによって第1端末の入力デバイスの第1操作命令を受信し、第1メインプログラムによって第1操作命令をスタンドアロンプログラムに転送する。
ステップ206において、第2端末は、第2メインプログラムによって、第1端末からネットワーク接続を介して送信されたスタンドアロンプログラムの画像情報を受信する。
ステップ2062において、第2端末は、第2メインプログラムによって、第1端末からネットワーク接続を介して送信されたスタンドアロンプログラムのサウンド情報を受信する。
1つの実施例では、第2端末は、第2ネットワーク受信機によって、第1端末から送信されたサウンド情報を受信する。
ステップ207において、第2端末は、第2メインプログラムによって画像情報を表示する。
ステップ2702において、第2端末は、第2メインプログラムによってサウンド情報を再生する。
第2メインプログラムは、オーディオデコーダをさらに含み、前記サウンド情報は、データパケットの形で伝送され、第2端末は、データパケットのヘッダ情報に基づいてデータパケットのタイプを識別し、識別によってオーディオデータパケットを取得する。第2端末は、オーディオデータパケットのヘッダ情報を取り除き、ヘッダ情報を取り除いたオーディオデータパケットをオーディオデコーダに送信し、オーディオデコーダによってオーディオデータパケットを復号し、復号後のサウンド情報を取得する。
1つの実施例では、第2端末が前記オーディオデータパケットをオーディオデコーダに転送して復号するステップは、次の通りである。
1)第2端末は、オーディオデコーダによってサウンド情報を復号し、復号後のサウンド情報を取得する。
2)第2端末は、復号後のサウンド情報をプレーヤーで再生する。
なお、第2端末は、復号後の画像情報及びサウンド情報にタイムスタンプを対応的にマークして、同期処理を行う必要もある。
ステップ208において、第2端末は、第2メインプログラムによって第2端末の入力デバイスから入力された第2操作命令を受信し、第2メインプログラムによって第2操作命令を第1端末に送信する。
ステップ209において、第1端末は、第1メインプログラムによって、第2端末からネットワーク接続を介して送信された第2操作命令を受信し、第1メインプログラムによって第2操作命令をスタンドアロンプログラムに転送する。
上述したように、本実施例によって提供されるスタンドアロンプログラムの実行方法では、第1メインプログラムでスタンドアロンプログラムを実行し、第1端末で実行されている第1メインプログラムと第2端末で実行されている第2メインプログラムによって第1端末と第2端末との間のネットワーク接続を確立し、前記ネットワーク接続によって第1端末から第2端末への画像情報の伝送及び第2端末から第1端末への第2操作命令の伝送を実現し、ここで、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであり、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御し、かつ第2操作命令に基づいて第2操作オブジェクトを制御するために用いられる。当該方法では、第1メインプログラムによって確立された、第2端末とのネットワーク接続により、第1端末と第2端末がスタンドアロンプログラムにおける第1操作オブジェクト及び第2操作オブジェクトをそれぞれ制御し、異なる地域のユーザが異なる端末を使用してスタンドアロンプログラムのマルチプレイヤー操作モードでの操作制御を実行することを実現する。
また、スタンドアロンプログラムが第1端末で実行され、しかも第2端末がスタンドアロンプログラムを実行する必要がないため、第1端末がスタンドアロンプログラムをスムーズに実行することができる場合でも、第2端末は、スタンドアロンプログラムをスムーズに制御することができ、これにより、スタンドアロンプログラムの第2端末のハードウェア構成に対する要件が低下する。
図2に基づき、第1端末と第2端末を接続するために、まず、ネットワーク接続を確立する必要があり、図5に示すように、第1端末と第2端末との間のネットワーク接続を確立するステップは次の通りである。
ステップ301において、第1端末は、接続リクエストを第2端末に送信する。
第1端末上で第1メインプログラムによってスタンドアロンプログラムを実行する。例示的に、第1端末が接続リクエストを第2端末に送信するステップは次の通りである。
1)第1メインプログラムの第1ユーザインターフェースを第1端末の表示インターフェースに表示し、当該第1ユーザインターフェースには接続コントロールが含まれている。
例えば、スタンドアロンプログラムがスタンドアロンゲームであることを例として説明すると、図6の左図に示すように、第1メインプログラムのメインインターフェース21が表示されており、メインインターフェース21にはスタンドアロンゲーム1、スタンドアロンゲーム2及びスタンドアロンゲーム3などのゲームにそれぞれ対応する選択コントロールが含まれ、ここで、スタンドアロンゲーム1が選択コントロール22に対応し、第1端末の入力デバイスによって選択コントロール22をトリガすると、第1端末に第1メインプログラムの第1ユーザインターフェース23が表示され、図6の右図に示すように、第1ユーザインターフェース23には接続コントロール24が含まれている。
2)第1端末は、接続コントロール上のトリガ操作を受信する。
3)スタンドアロンゲームのマルチプレイヤーインターフェースを第1端末の表示インターフェースに表示し、当該マルチプレイヤーインターフェースにはリクエストコントロールが含まれる。
例えば、図7に示すように、第1端末が接続コントロール24上のトリガ操作を受信した後、第1端末の表示インターフェースに第1メインプログラムのマルチプレイヤーインターフェース31を表示し、マルチプレイヤーインターフェース31に選択コントロール32が含まれる。
4)第1端末は、選択コントロールにおけるトリガ操作を受信する。
選択コントロールは、接続対象を選択するために用いられ、当該対象は第1ユーザのソーシャル友達である第2ユーザである。
5)第1端末の表示インターフェースに友達リストを表示する。
第1端末に第1アカウントがログインしており、当該アカウントがn人のソーシャル友達に対応しており、第1端末が選択コントロールにおけるトリガ操作を受信した後、第1端末に友達のリストを表示する。
例えば、図8に示すように、第1端末は、選択コントロール32におけるトリガ操作を受信し、マルチプレイヤーインターフェースに友達リスト33を重ね合わせて表示する。
6)第1端末は、友達リスト上での選択操作を受信する。
7)友達リストにおける対応する選択項目にリクエストコントロールを表示する。
リクエストコントロールにおけるトリガ操作は、第1端末から第2端末への接続リクエストの送信をトリガするために用いられる。
例えば、図9に示すように、友達リスト33における1つの選択項目上で選択操作をトリガし、当該選択項目の右側にリクエストコントロール34を表示する。
8)第1端末は、リクエストコントロールにおけるトリガ操作を受信する。
9)第1端末は、リクエストコントロールにおけるトリガ操作によって接続リクエストを生成し、当該接続リクエストに第2端末にログインしている第2アカウントが含まれている。
当該接続リクエストは、第2アカウントがログインしている第2端末とのネットワーク接続の確立をリクエストするために用いられる。
ステップ302において、第2端末は、第1端末から送信された接続リクエストを受信する。
ステップ303において、第2端末は、確認情報を第1端末に送信する。
第2端末で第2メインプログラムが実行されており、第2端末が第1端末によって送信された接続リクエストを第2メインプログラムによって受信する時に、第2メインプログラムの表示インターフェースに確認インターフェースを表示し、当該確認インターフェースに確認コントロールが含まれ、第2端末と第1端末とのネットワーク接続を確立することを許可するために用いられる。
1つの実施例では、確認インターフェースに拒絶コントロールも含まれ、拒絶コントロールが第1端末とのネットワーク接続を拒否するために用いられる。
例えば、図10に示すように、第2端末の表示インターフェースに確認インターフェース41を表示し、確認インターフェース41が確認コントロール42と拒絶コントロール43を含む。
第2端末は、確認コントロールにおけるトリガ操作を受信し、確認コントロールにおけるトリガ操作によって確認情報を生成し、確認情報を第1端末に送信し、当該確認情報は、第2端末が第1端末の接続リクエストを許可するために用いられる。
1つの実施例では、第2端末は、拒絶コントロールにおけるトリガ操作を受信し、拒絶コントロールにおけるトリガ操作によって拒絶情報を生成し、拒絶情報を第1端末に送信し、当該拒絶情報は、第2端末が第1端末の接続リクエストを拒絶するために用いられる。
ステップ304において、第1端末は、第2端末から送信された確認情報を受信する。
ステップ305において、第1端末と第2端末は、確認情報に基づいてネットワーク接続を確立する。
1つの実施例では、当該ネットワーク接続は、直接ピアツーピア接続、又は、中継サーバーを介した接続を含む。
例示的に、第1アカウントは、第1アカウントのアバターと名前を含み、第2アカウントは、第2アカウントのアバターと名前を含み、第1端末と第2端末との間のネットワーク接続の確立を確認した後、第1端末に第1メインプログラムのマルチプレイヤーインターフェースを表示し、マルチプレイヤーインターフェースに、第1アカウントのアバターと名前、及び第2アカウントのアバターと名前が含まれ、また、第2端末に第2メインプログラムのマルチプレイヤーインターフェースを表示し、マルチプレイヤーインターフェースに、第1アカウントのアバターと名前、及び第2アカウントのアバターと名前が含まれる。
例えば、図10に示すように、第2端末は、確認コントロール42でのトリガ操作を受信した後、マルチプレイヤーインターフェース31を表示し、当該マルチプレイヤーインターフェース31に、カード44の形で表示される第1ユーザのアカウント情報に対応するアバターと名前、及び第2カード45の形で表示された第2ユーザのアカウント情報に対応するアバターと名前が含まれる。
なお、マルチプレイヤーインターフェース31には、ゲームの開始をトリガするための開始コントロール46が含まれ、開始コントロール46でトリガ操作が受信されると、ゲームが開始する。
図4に基づき、第2端末で実行される第2メインプログラムがブラウザである時に、図11に示すように、ステップ206からステップ208は、ステップ2064からステップ2084に置き換えられてもよく、実現プロセスは次の通りである。
ステップ2064において、第2端末は、ブラウザによって、第1端末からネットワーク接続を介して送信されたスタンドアロンプログラムの画像情報及びサウンド情報を受信する。
第2端末は、JavaScriptコードで、ネットワークプロトコルによって、第1端末から送信されたビデオデータパケット及びオーディオデータパケットを受信し、1つの実施例では、ネットワークプロトコルは、WebSocket又はHTTPプロトコルを含む。
ステップ2074において、第2端末は、ブラウザによって画像情報とサウンド情報を再生する。
第2端末が画像情報とサウンド情報を再生するステップは次のステップを含む。
1)第2端末は、ビデオパケットとオーディオパケットを復号し、復号後の画像情報とサウンド情報を取得する。
2)第2端末は、対応するコントロールによって画像情報と音声情報を再生し、例えば、HTML5 videoによって画像情報を再生し、HTML5 audioによってサウンド情報を再生し、又は、フラッシュ(flash)によって画像情報とサウンド情報を再生する。
ステップ2084において、第2端末は、第2端末は、ブラウザを介して、入力デバイスによって入力された第2操作命令を受信し、第2操作命令を第1端末に送信する。
第2端末での第2操作命令の送信プロセスは次の通りである。
1)第2端末は、ブラウザページのjsコードで前記第2操作命令をキャプチャする。
2)第2端末は、jsコードによって前記第2操作命令をシリアライズし、シリアライズ後の第2操作命令を取得する。
1つの実施例では、jsコードは、第2操作命令翻訳機のシリアライズ方式で前記操作命令をシリアライズして、データパケットの形態の第2操作命令を形成する。
3)第2端末は、シリアライズ後の第2操作命令をネットワークプロトコルによって第1端末に送信する。
なお、いくつかの実施例では、第1端末と第2端末は、ウェブリアルタイム通信(WebRTC:Web Real-Time Communication)APIによって第1端末と第2端末との間のリアルタイム通信を実現することができ、ここで、WebRTC APIは、ブラウザによるリアルタイムな音声会話又はビデオ会話をサポートするAPIである。
上述したように、本実施例によって提供されるスタンドアロンプログラムの実行方法では、第2端末が、第1メインプログラムを実行する第1端末とのネットワーク接続をブラウザによって確立することにより、第1端末と第2端末がスタンドアロンプログラムにおける第1操作オブジェクト及び第2操作オブジェクトをそれぞれ制御し、異なる地域のユーザが異なる端末を使用してスタンドアロンプログラムのマルチプレイヤー操作モードでの操作制御を実行することを実現する。
また、この方法では、第2端末に、第1メインプログラムと同じアプリケーションプログラムをインストールする必要がなく、即ち、マルチプレイヤープログラムをインストールする必要がなく、ブラウザによって、スタンドアロンプログラムにおける第2操作オブジェクトに対する操作制御を実現することもでき、当該スタンドアロンプログラムは、第1端末で第1メインプログラムによって実行される。
しかもブラウザによって第1端末と接続し、それによって第2端末のタイプを限定する必要がなくなり、ブラウザがインストールされたコンピュータ、携帯電話、タブレットなどの、ブラウザがインストールされた任意のデバイスであればよく、デバイスにサードパーティアプリケーションプログラムの形態の第2メインプログラムをインストールする必要がない。
例示的に、スタンドアロンプログラムがスタンドアロンゲームであることを例とすると、第1端末と第2端末におけるスタンドアロンゲームの実行プロセスをそれぞれ説明し、図12に示すように、第1端末でのスタンドアロンゲームの実行プロセスのフローチャートであり、第1端末で第1メインプログラムが実行され、ステップは次の通りである。
ステップ401において、開始する。
ステップ402において、参加する参加者がいるか否かを判断する。
第1端末は、参加する参加者がいるか否かを判断し、即ち、参加して第1端末とのネットワーク接続を確立する第2端末があるか否かを判断し、参加者がいる場合、ステップ403を実行し、そうでない場合、参加者の参加を待機し、ステップ402を実行し、参加する参加者がいるか否かを判断し続ける。
ステップ403において、ゲームを開始するか否かを判断する。
第1端末は、ゲームを開始するか否かを判断し、ゲームを開始すると、ステップ404-407、又はステップ408-416を実行し、そうでない場合、ゲームの開始を待機し、ステップ403を実行し、ゲームを開始するか否かを判断し続ける。
ステップ404において、シングルプレイヤーモードをオンにする
ステップ405において、ゲームを行う
ステップ406において、ゲームを終了するか否かを判断する。
第1端末は、ゲームを終了するか否かを判断する。第1端末がゲームを終了する操作命令を受信した場合、ステップ407を実行し、そうでない場合は、ステップ405を実行してゲームを続行する。
ステップ407において、ゲームを終了する
ステップ408において、マルチプレイヤーモードをオンにする。
ステップ409において、第1端末がゲームを終了するか否かを判断する。
第1端末は、自身がゲームを終了するか否かを判断し、第1端末がゲームを終了することを決定した場合、ステップ416を実行し、そうでない場合は、ステップ410-ステップ412を実行する。
ステップ410において、ゲーム画面及びサウンドをキャプチャする。
第1端末は、第1メインプログラムによってゲーム画面及びサウンドをキャプチャする。
ステップ411において、ゲーム画面及びサウンドを符号化する。
第1端末は、第1メインプログラムによってゲーム画面及びサウンドを符号化する。
ステップ412において、ネットワーク接続によって符号化後のゲーム画面及びサウンドを第2端末に送信する。
第1端末は、メインプログラムによって符号化後のゲーム画面及びサウンドを第2端末に送信する。
第1端末は、ネットワーク接続によって符号化後の画面及びサウンドを第2端末に送信した後、ステップ409を続行する。
ステップ413において、第2端末がゲームを終了したか否かを判断する。
第1端末は、第2端末がゲームを終了したか否かを判断し、第2端末がゲームを終了したことを確認した場合、ステップ416を実行し、そうでない場合は、ステップ414-ステップ415を実行する。
ステップ414において、ゲーム参加者からの操作命令があるか否かを判断する。
第1端末は、第2端末から送信された操作命令があるか否かを判断し、第2端末から送信された操作命令がある場合、ステップ415を実行し、そうでない場合、ステップ413を実行する。
ステップ415において、前記操作命令によってゲームを制御する。
第1端末は、第1メインプログラムによって操作命令をデシリアライズし、デシリアライズ後の操作命令を取得し、第1メインプログラムによってデシリアライズ後の操作命令をスタンドアロンゲームのプログラムに転送し、当該プログラムは、デシリアライズ後の操作命令によってスタンドアロンゲームにおける第2操作オブジェクトを制御し、第2操作オブジェクトは、第1操作オブジェクトとは異なり、第1操作オブジェクトは、第1端末によって制御される操作オブジェクトである。第1端末がデシリアライズ後の操作命令によってゲームを制御した後、ステップ413を続行する。
ステップ416において、マルチプレイヤーモードをオフにする。
ステップ417において、終了する。
図13は第2端末でのスタンドアロンゲームの実行プログラムのフローチャートである。第2端末で第2メインプログラムが実行され、ステップは、次の通りである。
ステップ501において、開始する。
ステップ502において、ゲームを終了するか否かを判断する。
第2端末は、ゲームを終了するか否かを判断し、第2端末がゲームを終了することを決定した場合、ステップ510を実行し、そうでない場合は、ステップ503-ステップ509を実行する。
ステップ503において、ネットワークのリクエストを監視する。
ステップ504において、データパケットがあるか否かを判断する。
第2端末は、第1端末から送信されるビデオデータパケット及びオーディオデータパケットがネットワーク上に存在するか否かを監視し、第2端末がビデオデータパケット及びオーディオデータパケットを受信した場合、ステップ505-ステップ506を実行し、そうでない場合、ステップ503を実行し、ネットワークリクエストの監視を続行する。
ステップ505において、ビデオデータパケットとオーディオデータパケットを復号する。
第2端末は、第2メインプログラムによってビデオデータパケット及びオーディオデータパケットを復号し、ゲーム画面及びサウンドを取得する。
ステップ506において、ゲーム画面及びサウンドを再生する。
第2端末は、第2メインプログラムによってゲーム画面及びサウンドを再生した後、第2端末は、ステップ502を実行する。
ステップ507において、ローカルの入力デバイスを監視する。
1つの実施例では、ローカルの入力デバイスは、第2端末上に接続されたマウス、キーボード、操作ハンドル、タッチスクリーンなどを含む。
ステップ508において、入力デバイスからの入力があるか否かを判断する。
第2端末は、入力デバイスが操作命令を入力するか否かを判断し、入力デバイスが操作命令を入力する場合、ステップ509を実行し、そでない場合、ステップ507を実行する。
ステップ509において、ネットワーク接続によって操作命令を第1端末に送信する。
第2端末は、前記入力デバイスによって入力された操作命令を第2メインプログラムによってシリアライズし、シリアライズ後の操作命令を生成し、シリアライズ後の操作命令をネットワーク接続によって第1端末に送信する。第2端末がデシリアライズ後の操作命令をネットワーク接続によって第1端末に送信した後、第2端末はステップ502を続行する。
ステップ510において、終了する。
図12と図13に示すスタンドアロンゲームの実行方法のプログラムプロセスに基づき、上記のプロセスのステップの時系列を説明する。図14に示すように、起動者(クリエイター、creatorとも呼ぶ)と参加者によってマルチプレイヤーゲームを開始し、ホスト側(第1端末)と参加側(第2端末)でマルチプレイヤーゲームが開始した場合、まず、ホスト側は、ビデオ及びオーディオをキャプチャし、ビデオ及びオーディオを符号化し、符号化後のビデオ及びオーディオを参加側に送信し、次に、参加側は、ビデオとオーディオを復号し、ビデオとオーディオを再生し、次に、参加側は、参加者によってトリガされた操作命令を検出し、操作命令を符号化し、符号後の操作命令をホストに送信し、最後に、ホスト側は、符号化後の操作命令を復号し、復元された操作命令を取得し、復元された操作命令を実行してゲームを制御する。
第1端末と第2端末は、上記の時系列のステップを繰り返してスタンドアロンゲームのマルチプレイヤーゲームを実現する。
上述したように、本実施例によって提供されるスタンドアロンゲーム実行方法では、第1端末で実行されている第1メインプログラムと第2端末で実行されている第2メインプログラムによって第1端末と第2端末との間のネットワーク接続を確立し、第1端末は、第1メインプログラムによって第1端末のビデオ及びオーディオを第2端末に連続的に送信し、第2端末は、第2メインプログラムによって第2端末の操作命令を第1端末に連続的に送信し、ここで、スタンドアロンゲームとは第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであり、これにより、第1端末と第2端末がスタンドアロンプログラムにおける第1操作オブジェクト及び第2操作オブジェクトをそれぞれ制御し、異なる地域のユーザが異なる端末を使用してスタンドアロンゲームのマルチプレイヤーモードでの操作制御を実行することを実現する。
図15を参照すると、それは本出願によって示される1つの例示的な実施例による端末内に設けられた、スタンドアロンプログラムの実行装置のブロック図である。当該装置は、ソフトウェア、ハードウェア、又は両者の組み合わせにより第1端末の一部又は全部として実装されてもよく、当該装置は、第1メインプログラムモジュール600を備え、
当該第1メインプログラムモジュール600は、
第1メインプログラムでスタンドアロンプログラムを実行するように構成され、スタンドアロンプログラムが第1操作オブジェクトと第2操作オブジェクトに対する別々の制御をサポートするプログラムであるプログラム実行サブモジュール601と、
第1メインプログラムによって第2端末とのネットワーク接続を確立するように構成されるネットワーク接続サブモジュール602と、
ネットワーク接続によってスタンドアロンプログラムの画像情報を第2端末に送信するように構成されるネットワーク送信サブモジュール603と、
第1メインプログラムによって第1端末の入力デバイスから入力された第1操作命令を受信し、第1メインプログラムによって第1操作命令をスタンドアロンプログラムに転送するように構成され、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御するために用いられる受信サブモジュール604と、
第1メインプログラムによって、第2端末からネットワーク接続を介して送信された第2操作命令を受信し、第1メインプログラムによって第2操作命令をスタンドアロンプログラムに転送するように構成され、スタンドアロンプログラムが第2操作命令に基づいて第2操作オブジェクトを制御するために用いられるネットワーク受信サブモジュール605と、を含む。
いくつかの実施例では、第1メインプログラムに第1アカウントがログインしており、第1アカウントが友達リストを含む。
ネットワーク接続サブモジュール602は、第1端末に友達リストを表示し、友達リストが少なくとも1つのソーシャル友達を含み、ソーシャル友達が第2アカントに対応し、友達リスト上での選択操作を受信し、選択操作に基づいてターゲット第2アカウントを決定し、ターゲット第2アカウントがログインしている第2端末とのネットワーク接続を確立するように構成される。
いくつかの実施例では、ネットワーク接続サブモジュール602は、さらにターゲット第2アカウントがログインしている第2端末との直接ピアツーピア接続を確立し、又は、中継サーバーによって、ターゲット第2アカウントがログインしている第2端末とのネットワーク接続を確立するように構成される。
いくつかの実施例では、第1アカウントは、第1アカウントのアバターと名前をさらに含み、第2アカウントは、第2アカウントのアバターと名前をさらに含む。
第1メインプログラムモジュール600は、
第1端末に第1メインプログラムのマルチプレイヤーインターフェースを表示するように構成され、マルチプレイヤーインターフェースに第1アカウントのアバターと名前、及び第2アカウントのアバターと名前が含まれる表示サブモジュール606をさらに含む。
いくつかの実施例では、第1メインプログラムモジュール600は、
シリアライズ後の第2操作命令をデシリアライズし、デシリアライズ後の第2操作命令を取得するように構成される操作命令翻訳サブモジュール607と、
デシリアライズ後の第2操作命令をスタンドアロンプログラムに伝送するように構成されるスタンドアロンプログラム制御サブモジュール608と、を含む。
いくつかの実施例では、第1メインプログラムモジュール600は、
第1端末の表示インターフェースにおける画像情報を取得するように構成される取得サブモジュール609と、
画像情報を符号化し、符号化後の画像情報を取得するように構成されるビデオ符号化サブモジュール610と、
符号化後の画像情報を第2端末に送信するように構成されるネットワーク送信サブモジュール603と、を含む。
いくつかの実施例では、第1メインプログラムモジュール600は、
第1端末のサウンド情報を取得するように構成される取得サブモジュール609と、
サウンド情報を符号化し、符号化後のサウンド情報を取得するように構成されるオーディオ符号化サブモジュール611と、
符号化後のサウンド情報を第2端末に送信するように構成されるネットワーク送信サブモジュール603と、をさらに含む。
いくつかの実施例では、第1メインプログラムモジュール600は、
第2端末からネットワーク接続を介して送信された第2操作命令を受信するように構成されるネットワーク受信サブモジュール605を含む。
上述したように、本実施例によって提供されるスタンドアロンプログラムの実行装置では、第1メインプログラムでスタンドアロンプログラムを実行し、第1端末で実行されている第1メインプログラムと第2端末で実行されている第2メインプログラムによって第1端末と第2端末との間のネットワーク接続を確立し、前記ネットワーク接続により第1端末から第2端末への画像情報の伝送及び第2端末から第1端末への第2操作命令の伝送を実現し、ここで、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであり、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御し、かつ第2操作命令に基づいて第2操作命令を制御するために用いられる。この装置では、第1メインプログラムによって確立された、第2端末とのネットワーク接続により、第1端末と第2端末がスタンドアロンプログラムにおける第1操作オブジェクト及び第2操作オブジェクトをそれぞれ制御し、異なる地域のユーザが異なる端末を使用してスタンドアロンプログラムのマルチプレイヤー操作モードでの操作制御を実行することを実現する。
図16を参照すると、それは本出願によって示される1つの例示的な実施例による端末内に設けられた、スタンドアロンプログラムの実行装置のブロック図である。当該装置は、ソフトウェア、ハードウェア、又は両者の組み合わせにより第1端末の一部又は全部として実装されてもよく、当該装置は、第2メインプログラムモジュール700を備え、
当該第2メインプログラムモジュール700は、
第2メインプログラムによって第1端末とのネットワーク接続を確立するように構成されるネットワーク接続サブモジュール701と、
第2メインプログラムによって、第1端末からネットワーク接続を介して送信されたスタンドアロンプログラムの画像情報を受信するように構成されるネットワーク受信サブモジュール702と、
第2メインプログラムによって画像情報を表示するように構成される表示サブモジュール703と、
第2メインプログラムによって、第2端末の入力デバイスから入力された第2操作命令を受信し、第2メインプログラムによって第2操作命令を第1端末に送信するように構成され、第2操作命令は、スタンドアロンプログラムが第2操作オブジェクトを制御するために用いられ、スタンドアロンプログラムが第1操作オブジェクトと第2操作オブジェクトに対する別々の制御をサポートするプログラムであるネットワーク送信サブモジュール704とを含む。
いくつかの実施例では、第1メインプログラムに第1アカウントがログインしており、第2メインプログラムに第2アカウントがログインしており、第2アカウントは、友達リストを含み、友達リストが第1アカウントの対応するソーシャル友達を含む。
ネットワーク接続サブモジュール701は、第1アカウントがログインしている第1端末との直接ピアツーピア接続を確立し、又は、中継サーバーによって、第1アカウントがログインしている第1端末とのネットワーク接続を確立するように構成される。
いくつかの実施例では、第1アカウントは、第1アカウントのアバターと名前をさらに含み、第2アカウントは、第2アカウントのアバターと名前をさらに含み、
表示サブモジュール703は、第2メインプログラムのマルチプレイヤーインターフェースを第2端末に表示するように構成され、マルチプレイヤーインターフェースに第1アカウントのアバターと名前、及び第2アカウントのアバターと名前が含まれる。
いくつかの実施例では、第2メインプログラムモジュール700は、
第2操作命令をシリアライズし、シリアライズ後の第2操作命令を取得するように構成される操作命令翻訳サブモジュール705と、
シリアライズ後の第2操作命令を第1端末に送信するように構成されるネットワーク送信サブモジュール704と、を含む。
いくつかの実施例では、第2メインプログラムモジュール700は、
第1端末からネットワーク接続を介して送信された画像情報を受信するように構成されるネットワーク受信サブモジュール702を含む。
いくつかの実施例では、第2メインプログラムモジュール700は、
画像情報を復号し、復号後の画像情報を取得するように構成されるビデオ復号サブモジュール706と、
復号後の画像情報を第2メインプログラムのユーザインターフェースに表示するように構成される表示サブモジュール703と、を含む。
いくつかの実施例では、第2メインプログラムモジュール700は、
第1端末から送信されたサウンド情報を受信するように構成されるネットワーク受信サブモジュール702と、
サウンド情報を復号し、復号後のサウンド情報を取得するように構成されるオーディオ復号サブモジュール708と、
復号後のサウンド情報を再生するように構成される再生サブモジュール707と、をさらに含む。
上述したように、本実施例によって提供されるスタンドアロンプログラムの実行装置では、第1メインプログラムでスタンドアロンプログラムを実行し、第1端末で実行されている第1メインプログラムと第2端末で実行されている第2メインプログラムによって第1端末と第2端末との間のネットワーク接続を確立し、前記ネットワーク接続により第1端末から第2端末への画像情報の伝送及び第2端末から第1端末への第2操作命令の伝送を実現し、ここで、スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであり、スタンドアロンプログラムは、第1操作命令に基づいて第1操作オブジェクトを制御し、第2操作命令に基づいて第2操作命令を制御するために用いられる。この装置では、第1メインプログラムによって確立された、第2端末とのネットワーク接続により、第1端末と第2端末がスタンドアロンプログラムにおける第1操作オブジェクト及び第2操作オブジェクトをそれぞれ制御し、異なる地域のユーザが異なる端末を使用してスタンドアロンプログラムのマルチプレイヤー操作モードでの操作制御を実行することを実現する。
図17を参照すると、それは本出願の一つの例示的な実施例による端末800の構造ブロック図である。当該端末800は、スマートフォン、タブレット、MP3プレーヤー(Moving Picture Experts Group Audio Layer III:ムービングピクチャーエキスパートグループオーディオレイヤーIII)、MP4(Moving Picture Experts Group Audio Layer IV:ムービングピクチャーエキスパートグループオーディオレイヤーIV)プレーヤー、ラップトップ又はデスクトップコンピュータであってもよい。端末800はさらにユーザデバイス、ポータブル端末、ラップトップ端末、デスクトップ端末などの他の名前と呼ばれ得る。
通常、端末800は、プロセッサ801とメモリ802とを備える。
プロセッサ801は、4コアプロセッサ、5コアプロセッサなどのような1つ又は複数の処理コアを含むことができる。プロセッサ801は、DSP(Digital Signal Processing:デジタル信号処理)、FPGA(Field-Programmable Gate Array:フィールドプログラマブルゲートアレイ)、PLN(Programmable Logic Array:プログラマブルロジックアレイ)の少なくとも1つのハードウェア形態を採用することができる。プロセッサ801は、メインプロセッサ及びコプロセッサを含むこともでき、メインプロセッサは、アウェイク状態でのデータを処理するためのプロセッサであり、CPU(Central Processing Unit:中央処理装置)とも呼ばれ、コプロセッサは、待機状態でのデータを処理するための低電力プロセッサである。いくつかの実施例では、プロセッサ801は、GPU(Graphics Processing Unit:グラフィックスプロセッシングユニット、画像プロセッサ)が統合されてもよく、GPUは、ディスプレイスクリーンに表示される必要があるコンテンツをレンダリング及び描画するために用いられる。いくつかの実施例では、プロセッサ801は、AI(Artificial Intelligence:人工知能)プロセッサをさらに含むことができ、当該AIプロセッサは、機械学習に関連する計算操作を処理するために用いられる。
メモリ802は、非一時的であり得る1つ又は複数のコンピュータ可読記憶媒体を含むことができる。メモリ802は、さらに高速ランダムアクセスメモリ、及び不揮発性メモリ、例えば、1つ又は複数の磁気ディスク記憶デバイス、フラッシュメモリ記憶デバイスを含むことができる。いくつかの実施例では、メモリ802内の非一時的なコンピュータ可読記憶媒体は、少なくとも1つのコンピュータ可読命令を記憶するために用いられ、当該少なくとも1つのコンピュータ可読命令は、本出願における方法の実施例によって提供されるスタンドアロンプログラムの実行方法を実現するために、プロセッサ801によって実行されるために用いられる。
いくつかの実施例では、端末800は、任意選択で、周辺デバイスインターフェース803と少なくとも1つの周辺デバイスをさらに含むこともできる。プロセッサ801、メモリ802及び周辺デバイスインターフェース803は、バス又は信号線によって接続されてもよい。各周辺デバイスは、バス、信号線又は回路基板を介して周辺デバイスインターフェース803に接続されてもよい。具体的には、周辺デバイスは、無線周波数回路804、ディスプレイスクリーン805、オーディオ回路806、測位コンポーネント807及び電源808のうちの少なくとも1つを含む。
周辺デバイスインターフェース803は、I/O(Input/Output:入力/出力)に関連する少なくとも1つの周辺デバイスをプロセッサ801及びメモリ802に接続するために利用可能である。いくつかの実施例では、プロセッサ801、メモリ802及び周辺デバイスインターフェース803は、同じチップ又は回路基板上に統合され、いくつかの他の実施例では、プロセッサ801、メモリ802及び周辺デバイスインターフェース803のいずれか1つ又は2つは、単独のチップ又は回路基板上で実現されてもよく、本実施例で限定されない。
無線周波数回路804は、電磁信号とも呼ばれるRF(Radio Frequency:無線周波数)信号を送受信するために用いられる。無線周波数回路804は、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。無線周波数回路804は、電気信号を送信用の電磁信号に変換するか、又は受信した電磁信号を電気信号に変換する。
ディスプレイスクリーン805は、UI(User Interface:ユーザインターフェース)を表示するために用いられる。当該UIは、グラフィック、テキスト、アイコン、ビデオ及びそれらの任意の組み合わせを含むことができる。ディスプレイスクリーン805がタッチスクリーンである場合、ディスプレイスクリーン805はさらに表示画面805の表面又は上方のタッチ信号を収集する能力を有する。当該タッチ信号は、制御信号としてプロセッサ801に入力されて処理されてもよい。このとき、ディスプレイスクリーン805は、さらにソフトボタン及び/又はソフトキーボードとも呼ばれる仮想ボタン及び/又は仮想キーボードを提供するために用いられてもよい。いくつかの実施例では、ディスプレイスクリーン805は1つであってよく、端末800のフロントパネルが設けられ、他のいくつかの実施例では、ディスプレイスクリーン805は、少なくとも2つであってもよく、端末800の異なる表面にそれぞれ設けられ、又は折り畳んで設計され、さらに他のいくつかの実施例では、ディスプレイスクリーン805は、端末800の曲面又は折り畳み面上に設けられた可撓性ディスプレイスクリーンであってもよい。さらには、ディスプレイスクリーン805は、さらに非矩形の不規則なパターン、即ち異形スクリーンとして設けられてもよい。ディスプレイスクリーン805は、LDC(Liquid Crystal Display:液晶ディスプレイ)、OLED(Organic Light-Emitting Diode:有機発光ダイオード)などの材質で作られてもよい。
オーディオ回路806は、マイクロフォンとスピーカーを含むことができる。マイクロフォンは、ユーザ及び環境の音波を収集し、音波を電気信号に変換して処理のためにプロセッサ801に入力し、又は無線周波数回路804に入力して音声通信を実現するために用いられる。ステレオ収集又はノイズ低減の目的で、マイクロフォンが複数であってもよく、それぞれ端末800の異なる部分に設けられる。
測位コンポーネント807は、ナビゲーション又はLBS(Location Based Service:位置に基づくサービス)を実現するために、端末800の現在の地理的位置を測位するために用いられる。測位コンポーネント807は、米国のGPS(Global Positioning System:全地球測位システム)、中国の北斗システム、ロシアのグレナスシステム又は欧州連合のガリレオシステムに基づく測位コンポーネントであってもよい。
電源808は、端末800内の様々なコンポーネントに電力を供給するために用いられる。電源808は、交流、直流、使い捨て電池又は充電式電池であってもよい。電源808が充電式電池を含む場合、当該充電式電池は、有線充電又は無線充電をサポートすることができる。当該充電式電池は急速充電技術をサポートするためにも使用されてもよい。
当業者であれば、図17に示す構造が端末800を限定するためのものではなく、図示するものよりも多く又は少ないコンポーネントを含むことができ、又はいくつかのコンポーネントを組み合わせることができ、又は、異なるコンポーネントを用いて配置されてもよい。
図18を参照すると、それは本出願の1つの実施例によるサーバーの構造図である。当該サーバーは、上記実施例において提供されるスタンドアロンプログラムの実行方法を実施するために用いられる。具体的には、
前記サーバー900は、中央処理ユニット(CPU)901と、ランダムアクセスメモリ(RAM)902及び読み取り専用メモリ(ROM)903を含むシステムメモリ904と、システムメモリ904と中央ユニット901を接続するシステムバス905とを含む。前記サーバー900は、コンピュータ内の各デバイス間で情報を伝送することを助けるための基本入出力システム(I/Oシステム)906と、オペレーティングシステム913、アプリケーションプログラム914及び他のプログラムモジュール915を記憶するためのマスストレージデバイス907とをさらに含む。
前記基本入出力システム906は、情報を表示するためのディスプレイ908と、ユーザが情報を入力するためのマウス、キーボードなどの入力デバイス909とを含む。前記ディスプレイ908と入力デバイス909の両方は、システムバス905に接続された入力/出力コントローラ910を介して中央処理ユニット901に接続されている。前記基本入力/出力システム906は、キーボード、マウス又は電子スタイラスなどの複数の他のデバイスからの入力を受信及び処理するための入力/出力コントローラ910をさらに含むことができる。同様に、入力/出力コントローラ910は、さらにディスプレイスクリーン、プリンタ又は他のタイプの出力デバイスへの出力を提供する。
前記マスストレージデバイス907は、システムバス905に接続されたマスストレージコントローラ(図示せず)を介して中央処理ユニット901に接続されている。前記マスストレージデバイス907及びそれに関連するコンピュータ可読媒体は、サーバー900に不揮発性記憶を提供する。即ち、前記マスストレージデバイス907は、ハードディスク又はCD-ROMドライブなどのようなコンピュータ可読媒体(図示せず)を含むことができる。
一般性を失うことなく、前記コンピュータ可読媒体は、コンピュータ記憶媒体及び通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータなどの情報を記憶するための任意の方法又は技術で実装された揮発性及び不揮発性の移動可能及び移動不可能な媒体を含む。コンピュータ記憶媒体は、RAM、ROM、EPROM、EEPROM、フラッシュメモリ又は他のソリッドステートストレージテクノロジー、CD-ROM、DVD又は他の光ストレージ、テープカートリッジ、磁気テープ、磁気ディスクストレージ又は他の磁気ストレージデバイスを含む。当然、当業者は、前記コンピュータ記憶媒体が上述したいくつかの記憶媒体に限定されないことを知ることができる。前記システムメモリ904及びマスストレージデバイス907は、まとめてメモリと呼ばれてもよい。
本出願の様々な実施例によれば、前記サーバー900は、さらにインターネットなどのネットワークを介してネットワーク上に接続されたリモートコンピュータで実行されてもよい。即ち、サーバー900は、前記システムバス905に接続されたネットワークインターフェースユニット911を介してネットワーク912に接続されてもよく、又は、ネットワークインターフェースユニット911を使用して、他のタイプのネットワーク又はリモートコンピュータシステム(図示せず)に接続されてもよい。
上記本出願の実施例番号は説明のためだけであり、実施例の優劣を表したものではない。
当業者であれば、上記の実施例の全て又は一部のステップを実現することは、ハードウェアによって完了されてもよく、関連するハードウェアをプログラムで指示することで実現されてもよいことを理解でき、前記プログラムは、コンピュータ可読記録媒体に記憶されてもよく、上記の記憶媒体は読み取り専用メモリ、磁気ディスク又は光ディスクなどであってもよい。
上記は本発明の好ましい実施例に過ぎず、本出願を限定するためのものではなく、本出願の精神及び原則から逸脱することなく行われるあらゆる変更、同等置き換え、改良などは、いずれも本出願の保護範囲内に含まれるべきである。
11,12 表示インターフェース
13 ゲームインターフェース
14,15 仮想オブジェクト
21 メインインターフェース
22 選択コントロール
23 第1ユーザインターフェース
24 接続コントロール
31 マルチプレイヤーインターフェース
32 選択コントロール
33 友達リスト
34 リクエストコントロール
41 確認インターフェース
42 確認コントロール
43 拒絶コントロール
44 カード
45 第2カード
46 開始コントロール
120 第1端末
121 サウンドキャプチャ装置
122 オーディオエンコーダ
123,124 第1ネットワーク送信機
125 第1操作命令翻訳機
126 スタンドアロンプログラムコントローラ
140 第2端末
141 第2ネットワーク受信機
142 オーディオデコーダ
143 プレーヤー
144 入力デバイスアダプタ
145 第2操作命令翻訳機
146 第2ネットワーク送信機
160 中継サーバー
600 第1メインプログラムモジュール
601 プログラム実行サブモジュール
602 ネットワーク接続サブモジュール
603 ネットワーク送信サブモジュール
604 受信サブモジュール
605 ネットワーク受信サブモジュール
606 表示サブモジュール
607 操作命令翻訳サブモジュール
608 スタンドアロンプログラム制御サブモジュール
609 取得サブモジュール
610 ビデオ符号化サブモジュール
611 オーディオ符号化サブモジュール
700 第2メインプログラムモジュール
701 ネットワーク接続サブモジュール
702 ネットワーク受信サブモジュール
703 表示サブモジュール
704 ネットワーク送信サブモジュール
705 操作命令翻訳サブモジュール
706 ビデオ復号サブモジュール
707 再生サブモジュール
708 オーディオ復号サブモジュール
800 端末
801 プロセッサ
802 メモリ
803 周辺デバイスインターフェース
804 無線周波数回路
805 ディスプレイスクリーン
806 オーディオ回路
807 測位コンポーネント
808 電源
900 サーバー
901 中央処理ユニット(CPU)
902 ランダムアクセスメモリ(RAM)
903 専用メモリ(ROM)
904 システムメモリ
905 システムバス
906 基本入出力システム(I/Oシステム)
907 マスストレージデバイス
908 ディスプレイ
909 入力デバイス
910 出力コントローラ
911 ネットワークインターフェースユニット
912 ネットワーク
913 オペレーティングシステム
914 アプリケーションプログラム
915 プログラムモジュール

Claims (19)

  1. 第1メインプログラムを実行している第1端末が実行する、スタンドアロンプログラムの実行方法であって、
    前記第1メインプログラムで前記スタンドアロンプログラムを実行するステップであって、前記スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであるステップと、
    前記第1メインプログラムによって第2端末とのネットワーク接続を確立するステップと、
    前記ネットワーク接続によって前記第2端末に前記スタンドアロンプログラムの画像情報を送信するステップと、
    前記第1メインプログラムによって、前記第1端末の入力デバイスから入力された第1操作命令を受信し、前記第1メインプログラムによって前記第1操作命令を前記スタンドアロンプログラムに転送するステップであって、前記スタンドアロンプログラムは、前記第1操作命令に基づいて前記第1操作オブジェクトを制御するために用いられるステップと、
    前記第1メインプログラムによって、前記第2端末から前記ネットワーク接続を介して送信された第2操作命令を受信し、前記第1メインプログラムによって前記第2操作命令を前記スタンドアロンプログラムに転送するステップであって、前記スタンドアロンプログラムは、前記第2操作命令に基づいて前記第2操作オブジェクトを制御するためにさらに用いられるステップと、を含む、方法。
  2. 前記第1メインプログラムに第1アカウントがログインしており、前記第1アカウントが対応する友達リストを有し、
    前記第1メインプログラムによって第2端末とのネットワーク接続を確立するステップは、
    前記第1端末に前記友達リストを表示するステップであって、前記友達リストが少なくとも1人のソーシャル友達を含み、前記ソーシャル友達が第2アカウントに対応するステップと、
    前記友達リスト上での選択操作を受信するステップと、
    前記選択操作に基づいてターゲット第2アカウントを決定するステップと、
    前記第1端末と前記ターゲット第2アカウントがログインしている前記第2端末とのネットワーク接続を確立するステップと、を含むことを特徴とする
    請求項1に記載の方法。
  3. 前記第1端末と前記ターゲット第2アカウントがログインしている前記第2端末とのネットワーク接続を確立するステップは、
    前記第1端末と前記ターゲット第2アカウントがログインしている第2端末との直接ピアツーピア接続を確立するステップと、
    中継サーバーによって、前記第1端末と前記ターゲット第2アカウントがログインしている第2端末との前記ネットワーク接続を確立するステップとのいずれか一つのステップを含むことを特徴とする
    請求項2に記載の方法。
  4. 前記ターゲット第2アカウントがログインしている前記第2端末との前記ネットワーク接続を確立した後に、
    前記第1端末に前記第1メインプログラムのマルチプレイヤーインターフェースを表示するステップを含み、前記マルチプレイヤーインターフェースは、前記第1アカウントのアバターと名前、及び前記第2アカウントのアバターと名前を含むことを特徴とする
    請求項2に記載の方法。
  5. 前記第1メインプログラムは、第1操作命令翻訳機とスタンドアロンプログラムコントローラとを含み、
    前記第1メインプログラムによって前記第2操作命令を前記スタンドアロンプログラムに転送するステップは、
    前記第1操作命令翻訳機によって、シリアライズされた前記第2操作命令をデシリアライズし、デシリアライズ後の第2操作命令を取得するステップと、
    前記スタンドアロンプログラムコントローラによって、前記デシリアライズ後の第2操作命令を前記スタンドアロンプログラムに転送するステップと、を含むことを特徴とする
    請求項1に記載の方法。
  6. 前記第1メインプログラムは、ビデオエンコーダと第1ネットワーク送信機とを含み、
    前記ネットワーク接続によって前記第2端末に前記スタンドアロンプログラムの画像情報を送信するステップは、
    前記第1端末の表示インターフェースにおける前記画像情報を取得するステップと、
    前記ビデオエンコーダによって前記画像情報を符号化し、符号化後の画像情報を取得するステップと、
    前記第1ネットワーク送信機によって前記第2端末に前記符号化後の画像情報を送信するステップと、を含むことを特徴とする
    請求項1に記載の方法。
  7. 前記第1メインプログラムは、オーディオエンコーダをさらに含み、
    前記第1メインプログラムによって第2端末とのネットワーク接続を確立した後に、
    前記第1端末におけるサウンド情報を取得するステップと、
    前記オーディオエンコーダによって前記サウンド情報を符号化し、符号化後のサウンド情報を取得するステップと、
    前記第1ネットワーク送信機によって、前記第2端末に前記符号化後のサウンド情報を送信するステップと、をさらに含むことを特徴とする
    請求項6に記載の方法。
  8. 前記第1メインプログラムは第1ネットワーク受信機を含み、
    前記第1メインプログラムによって、前記第2端末から前記ネットワーク接続を介して送信された第2操作命令を受信するステップは、
    前記第1ネットワーク受信機によって、前記第2端末から前記ネットワーク接続を介して送信された前記第2操作命令を受信するステップを含むことを特徴とする
    請求項1に記載の方法。
  9. 第2メインプログラムを実行している第2端末が実行する、スタンドアロンプログラムの実行方法であって、
    前記第2メインプログラムによって第1端末とのネットワーク接続を確立するステップと、
    前記第2メインプログラムによって、前記第1端末から前記ネットワーク接続を介して送信された前記スタンドアロンプログラムの画像情報を受信するステップと、
    前記第2メインプログラムによって前記画像情報を表示するステップと、
    前記第2メインプログラムによって、前記第2端末の入力デバイスから入力された第2操作命令を受信し、前記第2メインプログラムによって前記第1端末に前記第2操作命令を送信するステップであって、前記第2操作命令は、前記スタンドアロンプログラムが第2操作オブジェクトを制御するために用いられ、前記スタンドアロンプログラムは、第1操作オブジェクトと前記第2操作オブジェクトに対する別々の制御をサポートするプログラムであるステップとを含む、方法。
  10. 前記第1端末で第1メインプログラムが実行されており、前記第1メインプログラムに第1アカウントがログインしており、前記第2メインプログラムに第2アカウントがログインしており、前記第2アカウントが対応する友達リストを有し、前記友達リストが前記第1アカウントの対応するソーシャル友達を含み、
    前記第2メインプログラムによって第1端末とのネットワーク接続を確立するステップは、
    前記第2端末と前記第1アカウントがログインしている前記第1端末との直接ピアツーピア接続を確立するステップと、
    中継サーバーによって、前記第2端末と前記第1アカウントがログインしている前記第1端末との前記ネットワーク接続を確立するステップとのいずれか一つのステップを含むことを特徴とする
    請求項9に記載の方法。
  11. 前記第2メインプログラムによって第1端末とのネットワーク接続を確立した後に、
    前記第2端末に前記第2メインプログラムのマルチプレイヤーインターフェースを表示するステップを含み、前記マルチプレイヤーインターフェースは、前記第1アカウントのアバターと名前、及び前記第2アカウントのアバターと名前を含むことを特徴とする
    請求項9に記載の方法。
  12. 前記第2メインプログラムは、第2操作命令翻訳機と第2ネットワーク送信機とを含み、
    前記第2メインプログラムによって前記第1端末に前記第2操作命令を送信するステップは、
    前記第2操作命令翻訳機によって、前記第2操作命令をシリアライズし、シリアライズ後の第2操作命令を取得するステップと、
    前記前記第2ネットワーク送信機によって、前記第1端末に前記シリアライズ後の第2操作命令を送信するステップと、を含むことを特徴とする
    請求項9に記載の方法。
  13. 前記第2メインプログラムは第2ネットワーク受信機を含み、
    前記第2メインプログラムによって、前記第1端末から前記ネットワーク接続を介して送信された前記スタンドアロンプログラムの画像情報を受信するステップは、
    前記第2ネットワーク受信機によって、前記第1端末から前記ネットワーク接続を介して送信された前記画像情報を受信するステップを含むことを特徴とする
    請求項9に記載の方法。
  14. 前記第2メインプログラムはビデオデコーダを含み、
    前記第2メインプログラムによって前記画像情報を表示するステップは、
    前記ビデオデコーダによって前記画像情報を復号し、復号後の画像情報を取得するステップと、
    前記復号後の画像情報を前記第2メインプログラムのユーザインターフェースに表示するステップを含むことを特徴とする
    請求項13に記載の方法。
  15. 前記第2メインプログラムは、オーディオデコーダをさらに含み、
    前記第2メインプログラムによって第1端末とのネットワーク接続を確立した後に、
    前記第2ネットワーク受信機によって、前記第1端末から送信されたサウンド情報を受信するステップと、
    前記オーディオデコーダによって前記サウンド情報を復号し、復号後のサウンド情報を取得するステップと、
    プレーヤーで前記復号後のサウンド情報を再生するステップと、をさらに含むことを特徴とする
    請求項13に記載の方法。
  16. スタンドアロンプログラムの実行装置であって、端末に設けられ、前記装置は、第1メインプログラムモジュールを備え、
    前記第1メインプログラムモジュールは、
    前記第1メインプログラムで前記スタンドアロンプログラムを実行するように構成され、前記スタンドアロンプログラムは、第1操作オブジェクト及び第2操作オブジェクトに対する別々の制御をサポートするプログラムであるプログラム実行サブモジュールと、
    前記第1メインプログラムによって第2端末とのネットワーク接続を確立するように構成されるネットワーク接続サブモジュールと、
    前記ネットワーク接続によって前記第2端末に前記スタンドアロンプログラムの画像情報を送信するように構成されるネットワーク送信サブモジュールと、
    前記第1メインプログラムによって、前記第1端末の入力デバイスから入力された第1操作命令を受信し、前記第1メインプログラムによって前記第1操作命令を前記スタンドアロンプログラムに転送するように構成され、前記スタンドアロンプログラムは、前記第1操作命令に基づいて前記第1操作オブジェクトを制御するために用いられる受信サブモジュールと、
    前記第1メインプログラムによって、前記第2端末から前記ネットワーク接続を介して送信された第2操作命令を受信し、前記第1メインプログラムによって前記第2操作命令を前記スタンドアロンプログラムに転送するように構成され、前記スタンドアロンプログラムが前記第2操作命令に基づいて前記第2操作オブジェクトを制御するために用いられるネットワーク受信サブモジュールと、を含む、スタンドアロンプログラムの実行装置。
  17. スタンドアロンプログラムの実行装置であって、端末に設けられ、前記装置は、第2メインプログラムモジュールを備え、
    前記第2メインプログラムモジュールは、
    前記第2メインプログラムによって第1端末とのネットワーク接続を確立するように構成されるネットワーク接続サブモジュールと、
    前記第2メインプログラムによって、前記第1端末から前記ネットワーク接続を介して送信された前記スタンドアロンプログラムの画像情報を受信するように構成されるネットワーク受信サブモジュールと、
    前記第2メインプログラムによって前記画像情報を表示するように構成される表示サブモジュールと、
    前記第2メインプログラムによって、前記第2端末の入力デバイスから入力された第2操作命令を受信し、前記第2メインプログラムによって前記第1端末に前記第2操作命令を送信するように構成され、前記第2操作命令は、前記スタンドアロンプログラムが第2操作オブジェクトを制御するために用いられ、前記スタンドアロンプログラムは、第1操作オブジェクトと前記第2操作オブジェクトに対する別々の制御をサポートするプログラムであるネットワーク送信サブモジュールとを含む、スタンドアロンプログラムの実行装置。
  18. 端末であって、
    1つ又は複数のプロセッサと、
    前記1つ又は複数のメモリに接続された1つ又は複数のプロセッサと、を備え、
    ここで、前記プロセッサは、請求項1-15のいずれか一項に記載のスタンドアロンプログラムの実行方法を実現するために、コンピュータ可読命令をロード及び実行するように構成される、端末。
  19. 1つ又は複数のコンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体には少なくとも1つのコンピュータ可読命令が記憶され、前記少なくとも1つのコンピュータ可読命令は、プロセッサによってロード及び実行され、前記プロセッサに、請求項1-15のいずれか一項に記載のスタンドアロンプログラムの実行方法を実行させる、コンピュータ可読記憶媒体。
JP2021538795A 2019-05-30 2020-05-25 スタンドアロンプログラムの実行方法、装置、デバイス及びコンピュータプログラム Pending JP2022517562A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910464785.0 2019-05-30
CN201910464785.0A CN110162255B (zh) 2019-05-30 2019-05-30 单机程序的运行方法、装置、设备及存储介质
PCT/CN2020/092045 WO2020238840A1 (zh) 2019-05-30 2020-05-25 单机程序的运行方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
JP2022517562A true JP2022517562A (ja) 2022-03-09

Family

ID=67630626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021538795A Pending JP2022517562A (ja) 2019-05-30 2020-05-25 スタンドアロンプログラムの実行方法、装置、デバイス及びコンピュータプログラム

Country Status (5)

Country Link
US (1) US11606423B2 (ja)
EP (1) EP3979059A4 (ja)
JP (1) JP2022517562A (ja)
CN (1) CN110162255B (ja)
WO (1) WO2020238840A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110162255B (zh) * 2019-05-30 2021-06-01 腾讯科技(深圳)有限公司 单机程序的运行方法、装置、设备及存储介质
CN111757139A (zh) * 2020-07-03 2020-10-09 深圳市乐宜科技有限公司 一种单机多人游戏设备网络化方法和系统
CN114615362B (zh) * 2020-12-09 2023-07-11 华为技术有限公司 相机控制方法、装置和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005296419A (ja) * 2004-04-13 2005-10-27 Nintendo Co Ltd ロビーシステムプログラムおよびゲームシステム
JP2008012072A (ja) * 2006-07-05 2008-01-24 Namco Bandai Games Inc プログラム、情報記憶媒体及び携帯型電子機器
JP2008012071A (ja) * 2006-07-05 2008-01-24 Namco Bandai Games Inc プログラム、情報記憶媒体及び携帯型電子機器
JP2011507342A (ja) * 2007-12-05 2011-03-03 オンライブ インコーポレイテッド システム故障の前の記録されたビデオを報告するシステム
JP2016046538A (ja) * 2014-08-19 2016-04-04 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、制御データ送信方法および情報処理システム
JP2016137250A (ja) * 2012-01-24 2016-08-04 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像表示方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5685775A (en) * 1994-10-28 1997-11-11 International Business Machines Corporation Networking video games over telephone network
KR20050116545A (ko) * 2004-06-08 2005-12-13 조인호 무선 리세트 기능을 가지는 게임 인터페이스장치
US9292307B2 (en) * 2008-07-30 2016-03-22 Kyocera Corporation User interface generation apparatus
CN102055732B (zh) * 2009-11-05 2018-05-08 阿里巴巴集团控股有限公司 一种实现单机软件通信的方法及装置
CN104092711A (zh) * 2013-04-01 2014-10-08 云联(北京)信息技术有限公司 一种云游戏实现方法及系统
US11130055B2 (en) * 2013-09-04 2021-09-28 Nvidia Corporation System and method for granting remote access to a video game executed on a video game console or network client
US10673971B1 (en) * 2015-06-17 2020-06-02 Amazon Technologies, Inc. Cross-partition messaging using distributed queues
CN105100343A (zh) * 2015-07-14 2015-11-25 开曼群岛威睿电通股份有限公司 手机及仪表控制方法以及使用该方法的系统
US20210069590A1 (en) * 2015-07-24 2021-03-11 Gorillabox Gmbh Method for playing back applications from a cloud, telecommunication network for streaming and for replaying applications (apps) via a specific telecommunication system, and use of a telecommunication network for streaming and replaying applications (apps)
JP6646991B2 (ja) * 2015-10-01 2020-02-14 任天堂株式会社 情報処理システム、情報処理方法、情報処理装置、および、情報処理プログラム
CN106385621A (zh) * 2016-09-12 2017-02-08 猫范(北京)科技有限公司 智能设备控制方法和装置
CN106512398B (zh) * 2016-12-06 2021-06-18 腾讯科技(深圳)有限公司 虚拟场景中的提醒方法及相关装置
US10587713B2 (en) * 2017-02-14 2020-03-10 Wyse Technology L.L.C. Proxy for sharing remote desktop sessions
US10441885B2 (en) * 2017-06-12 2019-10-15 Microsoft Technology Licensing, Llc Audio balancing for multi-source audiovisual streaming
CN116320432A (zh) * 2017-06-20 2023-06-23 微软技术许可有限责任公司 实时屏幕共享
CN107423015B (zh) * 2017-07-24 2018-07-20 腾讯科技(深圳)有限公司 游戏内容的同步显示方法和装置
TWI644710B (zh) * 2017-07-28 2018-12-21 瑞昱半導體股份有限公司 允許多部遊戲機透過網路連線共同模擬同一單機多人遊戲的從端遊戲機中的控制電路
CN108011951B (zh) * 2017-11-30 2021-08-27 北京奇艺世纪科技有限公司 远程协助方法、装置、系统及电子设备
CN110162255B (zh) * 2019-05-30 2021-06-01 腾讯科技(深圳)有限公司 单机程序的运行方法、装置、设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005296419A (ja) * 2004-04-13 2005-10-27 Nintendo Co Ltd ロビーシステムプログラムおよびゲームシステム
JP2008012072A (ja) * 2006-07-05 2008-01-24 Namco Bandai Games Inc プログラム、情報記憶媒体及び携帯型電子機器
JP2008012071A (ja) * 2006-07-05 2008-01-24 Namco Bandai Games Inc プログラム、情報記憶媒体及び携帯型電子機器
JP2011507342A (ja) * 2007-12-05 2011-03-03 オンライブ インコーポレイテッド システム故障の前の記録されたビデオを報告するシステム
JP2016137250A (ja) * 2012-01-24 2016-08-04 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像表示方法
JP2016046538A (ja) * 2014-08-19 2016-04-04 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、制御データ送信方法および情報処理システム

Also Published As

Publication number Publication date
EP3979059A4 (en) 2022-08-10
US20210297478A1 (en) 2021-09-23
EP3979059A1 (en) 2022-04-06
CN110162255B (zh) 2021-06-01
WO2020238840A1 (zh) 2020-12-03
CN110162255A (zh) 2019-08-23
US11606423B2 (en) 2023-03-14

Similar Documents

Publication Publication Date Title
JP6782173B2 (ja) 情報処理装置および音声データ通信管理方法
JP2022517562A (ja) スタンドアロンプログラムの実行方法、装置、デバイス及びコンピュータプログラム
CN108924464B (zh) 视频文件的生成方法、装置及存储介质
JP5624224B2 (ja) データ提供システム、提供装置、実行装置、制御方法、プログラム、及び記録媒体
KR101983107B1 (ko) 라이브 비디오 스트리밍에 정보 푸시를 삽입하는 방법, 서버 및 단말
CN113209632B (zh) 一种云游戏的处理方法、装置、设备及存储介质
WO2007129625A1 (ja) 通信システム、通信装置、通信プログラム、通信プログラムを記憶したコンピュータ読み取り可能な記憶媒体
CN112988102A (zh) 投屏方法和装置
WO2015117513A1 (zh) 视频会议控制方法和系统
WO2022257699A1 (zh) 图像画面显示方法、装置、设备、存储介质及程序产品
CN106687923A (zh) 多个设备上的计算环境的呈现
JP7476327B2 (ja) オーディオデータ処理方法、遅延時間取得方法、サーバ、及びコンピュータプログラム
CN114125482A (zh) 直播连麦处理方法、电子设备及存储介质
KR101624904B1 (ko) 휴대용 단말기에서 디엔엘에이를 이용하여 멀티 사운드 채널 컨텐츠를 재생하기 위한 장치 및 방법
JP2016162070A (ja) 情報処理装置および画面生成方法
WO2023246275A1 (zh) 语音消息的播放方法、装置、终端及存储介质
JP6051075B2 (ja) 通信障害時にデュエット歌唱を継続可能な通信カラオケシステム
CN107395493B (zh) 一种基于意图Intent分享消息的方法及装置
CN108282720B (zh) 一种音频数据流的传输方法及装置
JP2003271277A (ja) 情報処理装置及び情報入力方法
CN111770373B (zh) 基于直播的内容同步方法、装置、设备及存储介质
CN110536171B (zh) 互动场景中的多媒体处理方法、装置及电子设备
WO2024045877A1 (zh) 设备的连接方法、装置、电子设备以及存储介质
JP2013236263A (ja) ネットワークシステム、端末および端末プログラム
WO2021052115A1 (zh) 演唱作品的生成方法、发布方法和显示设备

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210701

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230123

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240301