JP5160704B2 - 放送においてインターネットを介してストリーミングをエミュレーションするリアルタイム・ビデオゲーム - Google Patents
放送においてインターネットを介してストリーミングをエミュレーションするリアルタイム・ビデオゲーム Download PDFInfo
- Publication number
- JP5160704B2 JP5160704B2 JP2000565981A JP2000565981A JP5160704B2 JP 5160704 B2 JP5160704 B2 JP 5160704B2 JP 2000565981 A JP2000565981 A JP 2000565981A JP 2000565981 A JP2000565981 A JP 2000565981A JP 5160704 B2 JP5160704 B2 JP 5160704B2
- Authority
- JP
- Japan
- Prior art keywords
- state
- client
- virtual environment
- station
- world model
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 29
- 230000008859 change Effects 0.000 claims description 15
- 230000009471 action Effects 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims 9
- 238000004587 chromatography analysis Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 16
- 241000270281 Coluber constrictor Species 0.000 description 10
- OQZCSNDVOWYALR-UHFFFAOYSA-N flurochloridone Chemical compound FC(F)(F)C1=CC=CC(N2C(C(Cl)C(CCl)C2)=O)=C1 OQZCSNDVOWYALR-UHFFFAOYSA-N 0.000 description 10
- 230000002452 interceptive effect Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000013213 extrapolation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000282836 Camelus dromedarius Species 0.000 description 1
- 241000272194 Ciconiiformes Species 0.000 description 1
- 241000270272 Coluber Species 0.000 description 1
- 241000272534 Struthio camelus Species 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/31—Communication aspects specific to video games, e.g. between several handheld game devices at close range
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
- H04N21/43072—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of multiple content streams on the same device
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/33—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
- A63F13/335—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/358—Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/65—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/803—Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/27—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding involving both synthetic and natural picture components, e.g. synthetic natural hybrid coding [SNHC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234318—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into objects, e.g. MPEG-4 objects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/40—Features 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/402—Communication between platforms, i.e. physical link to protocol
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/40—Features 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/407—Data transfer via internet
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features 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 details of game servers
- A63F2300/53—Features 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 details of game servers details of basic data processing
- A63F2300/534—Features 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 details of game servers details of basic data processing for network load management, e.g. bandwidth optimization, latency reduction
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/60—Methods for processing data by generating or executing the game program
- A63F2300/69—Involving elements of the real world in the game world, e.g. measurement in live races, real video
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8017—Driving on land or water; Flying
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8082—Virtual reality
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Processing Or Creating Images (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
関連する出願についての表示
本出願は、1998年8月24日に提出された米国特許出願第09/138782号(代理人整理番号PHA23491)、ラオウル・モルアート(Raoul Mallart)、アツル・シンハ(Atul Sinha)による「放送アプリケーションにおいてインターネットを介するストリーミングのエミュレーション」の一部継続出願である。
【0002】
本発明は、ネットワークを介してマルチメディアファイルをストリーミングすることに関するものである。より詳細には、放送において、インターネットを介してグラフィックスやビデオアニメーションのストリーミングをエミュレーションすることに関するものである。特に、グラフィックスやビデオアニメーションによって作成された環境とエンドユーザが対話することをできるようにすることに関するものである。
【0003】
用語「ストリーミング」は、受信側において一定、かつ、連続するストリームとして処理することができるように、データをサーバからクライアントへ送出することを意味するものである。大部分のユーザは、例えばグラフィックス・アニメーション、オーディオ、ビデオ、或いは、これらを組み合わせたものなどを含む巨大なマルチメディアのファイルをダウンロードするのに十分速いアクセス手段を持たないため、ストリーミング技術は、インターネットの発展に伴い、ますます重要になりつつある。ストリーミングを用いれば、ファイル全体を受け取る前に、受け取ったデータの処理をクライアントのブラウザやプラグイン・ソフトウェアが開始することができるようになる。ストリーミングを機能させるためには、ファイルを受け取るクライアント側で、データを収集し、収集したデータを一定のストリームとして、データを処理するアプリケーションへ送出することができる必要がある。このことは、クライアントが必要とするより速くデータを受け取った場合、この余分なデータをバッファしておく必要がある、ということを意味する。他方、データが時間通りに到着しなかった場合、データ表示がもたついてしまう。
【0004】
用語「ファイル」は、本明細書では、データ処理に利用することができ、かつ、エンティティとして処理することができる、関連するデータ項目のエンティティを意味するものとして用いることとする。本発明においては、用語「ファイル」は、記憶装置から取り出したデータのみならず、リアルタイムで生成されるデータを意味することもある。
【0005】
インターネットを介してグラフィックスデータの通信を行う現在利用可能な技術や開発中の技術の中には、VRML97及びMPEG4がある。VRML97は、「バーチャル・リアリティ・モデリング・ランゲージ」を意味するものであって、インターネットにおけるインタラクティブな3Dマルティメディアコンテンツを記述する国際標準規格(ISO/IEC14772)のファイルフォーマットである。MPEG4は、MPEG(動画像専門部会;Motion Picture Experts Group)によって策定されたISO/IEC標準規格である。このいずれの標準規格においても、映像のコンテンツは、いわゆるシーングラフ(scene graph)で構築される。シーングラフは、正確にグラフィックス・ワールド(graphics world)を集合的に記述する座標系及び形状の親子木構造を有するものである。このシーンの親子木構造における最上位項目は、ワールド座標系である。このワールド座標系は、1以上の子の座標系及び形状の親として機能する。これらの子座標系は、今度は、さらに子である座標系及び形状の親となる。
【0006】
VRMLは、オブジェクトを記述するファイルフォーマットである。VRMLは、3Dグラフィックス、マルチメディア、及び、インタラクティブなオブジェクト/ワールドのビルディングを記述するのに役立つ一組のオブジェクトを記述するものである。これれのオブジェクトは、ノードと呼ばれ、フィールド内に格納される基本的なデータやイベントを含むものである。典型的には、このシーングラフは、構造ノード、リーフノード、インターポレイションノード、センサノードを含むものである。構造ノードは、あるシーンの中のオブジェクトの空間的関係を記述するものである。リーフノードは、オブジェクトの物理的外観を記述するものである。インターポレイションノードは、アニメーションを記述する。センサノードは、個々のユーザの入力感覚に対するユーザの相互作用を記述する。VRMLは、サーバからクライアントへ流れるデータのストリーミングを直接にはサポートしない。ストリーミングにおいて不可欠である、ストリームとタイムスタンプとの間の同期化などの機能は、VRMLには存在しない。しかしながら、VRMLは、外部プログラムがVRMLクライアントと対話することができる機構を有する。これは、スポーツのアプリケーションでクライアントにアニメーションデータをロードするのに用いられている。例として、オーラッド・ハイテックシステム社(Orad Hi-Tec System, Ltd)の「バーチャルライブ・サッカー」(http://www.virtualive.com)を参照されたい。このウェブの資料には、インターネットを介して配信するために、現実のサッカー試合のハイライトをシュミレーションする、現実感がある動画による3次元グラフィックの場面を生成するプロセスが述べられている。このシステムは、テレビのスポーツ番組を、ほぼリアルタイムで補完する、マルチメディアリッチのウェブページで、コンテンツを生成する。この場合、プロセスは、2つのステップで機能する。最初に、スタジアム及びサッカープレイヤーのグラフィックスモデルが、外部プログラム(本例ではJavaアプレット)と共にダウンロードされる。その後、ユーザは、外部プログラムと対話し、個々のアニメーションを要求する。そして、このアニメーションに対するデータが、クライアントにダウンロードされ、ユーザは、このデータと対話する。ユーザは、アニメーションの中において、種々の視点から試合のシーンを観覧することができる。所望であれば、スローモーションで観覧するこもできる。ノードタイプに関しては、このプロセスでは、はじめに構造ノード及びリーフノードをダウンロードし、その後、インターポレイションノードをダウンロードする。インターポレイションノードのセットを変更することによって、種々のアニメーションシーケンスを再生することが可能となる。この例で用いられるプロセスは、全てのモデル(構造ノード)及び全てのアニメーションデータ(インターポレイタノード)を収容する完全なVRMLファイルを、ユーザが選択することができる単一ステップのプロセスに相当するものである。このアプローチでは、クライアント上で何らかのコンテンツを再生する前に、長時間のダウンロードを招く結果となる。このことは、特に、コンテンツを即座に得られるTV放送と比較すると、フラストレーションを感じさることとなる。
【0007】
上述したその他の技術、即ちMPEG4では、VRML97と広く重複するバイナリ・ディスクリプション・フォーマット・フォー・シーン(BIFS)が定義されている。一方、MPEG4は、ビデオと同様にグラフィックスのストリーミングをサポートするように設計されてきた。MPEG4では、シーンを更新、アニメーション化するための2つのクライアントサーバ・プロトコル、即ち、BIFS−更新及びBIFS−アニメーションが、規定されている。ユーザは、アニメーションデータが完全にダウンロードされるのを待つ必要はない。例えば、前述したサッカー試合の放送アプリケーションでは、サッカー選手及びスタジアムのモデルがダウンロードされると即座に、アニメーションは開始する。更にMPEG4には、圧縮バイナリフォーマットを用いるBIFS伝送プロトコルのおかげでより効率的であるという利点がある。
【0008】
ストリーミングの場合は、上述した既存の技術では、幾つかの制限、特に多数のクライアントに対する放送においては、帯域幅の利用、パケット損失の隠蔽及び回復、及び、マルチユーザの対話性などに関し制限がある。
【0009】
帯域幅に関しては、完全なアニメーションがサーバ上で生成される。このことによって、例えば、大量のデータを、クライアントとサーバを繋ぐインターネットなどのネットワークを介して伝送する必要性を生ずることとなる。例えば、前述したサッカーの放送アプリケーションでは、22人のサーカー選手をアニメーション化する必要がある。個々の選手毎の各アニメーションのデータポイント(data point)は、3D空間上の位置、及び、例えば、一組の選手の姿勢をモデリングする15個の関節、を含むものである。これは、63個の浮動小数点の値で表わされる。アニメーションの更新レートを1秒間に15個のデータポイントとすれば、665Kbpsのビットレートが必要である。このビットレートは、圧縮することによって、減少させることができる。典型的には、BIFSを使用すると、ビットレートは20分の1まで減少し、約33Kbpsのビットレートを得ることができる。しかしながら、このビットレートは、インターネットプロトコル(RTP、UDP、IP)及び音声などのその他のデータタイプに要するオーバーヘッドを何ら考慮していないものである。しかしながら、現在市販されている典型的なモデムの性能は、28.8Kbps或いは33.6Kbpsである。アニメーションのストリーミングでは、帯域幅の制限のため、エンドユーザで問題が発生するのは明らかである。多数のクライアント、例えば100,000のクライアントへの放送の場合、データストリームは、幾つかのルータ上で複製する必要があるであろう。インターネット上のルータは、パケットが、その最終的な目的地へ向かう途中において次に転送されるべき、次のネットワーク地点を判断する。このルータは、接続しているネットワークの現在の状況の把握に基づき、各々の情報パケットを送るルートを決定する。ルータは、ネットワークやゲートウェイの任意の連結点に位置するものであって、インターネットの現状の連結点もこれに含まれる。明らかなことは、この放送によって、インターネット全体において、管理不能なデータの爆発を発生し得るということである。これの発生を防止するためには、実際の帯域幅を28.8Kbpsよりかなり低く制限しなければならない。
【0010】
パケット損失の隠蔽に関しては、VRML型のシステムでは、信頼できるプロトコル(TCP)を利用している。即ち、ここでは、パケット損失は問題とならない。MPEG4の場合、BIFSは、RTP、UDP、及びIPを利用する。従って、パケット損失を回復させる機構が必要となる。ポイント・ツウ・ポイント型(point-to-point)のアプリケーションでは、損失したパケットの再伝送を考慮しなければならない。しかしながら、放送の場合、より複雑となる。しかしながら、いずれの場合とも、MPEGの信頼性は、より高い帯域幅使用(冗長性)か、より長いレイテンシ(再伝送)か、のいずれかを必要とする。
【0011】
マルチユーザのインタラクティビティに関しては、VRML及びMPEG4のいずれも、本質的にはクライアントサーバ通信に基づいている。複数のクライアントの間で通信を行うことについては、何ら支障はない。
【0012】
VRMLに関するより詳細な情報については、 HYPERLINK http://sgi.felk.cvut.cz/~holecek/VRML/concepts.html http://sgi.felk.cvut.cz/~holecek/VRML/concepts.htmlにおける1996年3月5日の「重要な概念(key concepts)」、或いは、 HYPERLINK http://www.stl.nps.navy.mil/~brutzman/vrml/vrml_95.html http://www.stl.nps.navy.mil/~brutzman/vrml/vrml_95.htmlにおいて入手可能な1996年1月23日のデー・ピー・ブルッツマン(D.P.Brutzman)他による「仮想環境のためのインターネットワーク基盤の要件」を参照されたい。
【0013】
MPEG4に関するより詳細な情報については、 HYPERLINK http://drogo.cselt.stet.it/mpeg/standards/mpeg-4/mpeg-4.htm http://drogo.cselt.stet.it/mpeg/standards/mpeg-4/mpeg-4.htmにおいて入手可能な1998年7月のロブ・コーネン(Rob Koenen)の編集による「MPEG4標準規格の概要」(ISO/IEC JTC1/SC29/WG11 N2323)を参照されたい。
【0014】
発明の目的
従って、本発明の目的は、クライントが、マルチメディアのデータをあたかも一定で連続するストリームであるかのように、処理することをできるようにする技術を提供することである。その他の目的としては、インターネットを介する放送において多数のクライアント上で連続処理を可能にすることをできるようにすることである。上で確認した問題は、放送のアプリケーションにおいては、かなり深刻な問題であることに留意されたい。その他の目的としては、この技術を用いて、連続的に展開される電子的な仮想環境内を、ユーザが操縦することができるインタラクティブなソフトウェアアプリケーションを作り出すことである。
【0015】
発明の概要
この目的を達成するために、本発明は、ネットワークに接続された受信局に対して、ネットワークを介してマルチメディアファイルのストリーミングをエミュレーションする方法を提供する。このファイルの各状態を表わすそれぞれの状態情報を提供する。この受信局は、ネットワークを介してそれぞれの状態情報を受け取ることができ、それぞれの状態情報の管理下においてローカルでマルチメディアファイルを生成することができる。アニメーションの放送においては、本発明は、グラフィックスのアニメーションを表示するためにネットワークを介してデータを提供する方法に関するものである。アニメーションの連続する各々の状態を記述するそれぞれの状態情報を、ネットワークを介して、提供する。このそれぞれの状態情報を、ネットワークを介して受け取る。この受信局が情報を受け取った後、それぞれの状態情報の制御下においてアニメーションを生成することができるようにする。より詳細には、本発明は、連続的に展開されるる電子的な仮想環境においてユーザが操縦することができる方法を提供することである。この方法は、環境のワールドモデルをユーザに提供すること、展開を表わすワールドモデルの状態変化を送出すること、仮想環境に対するオブジェクトの位置を制御するための入力をユーザが供給し得るようにすること、状態変化とユーザの入力とに反応して、ワールドモデルから環境を作ること、を特徴とする。
【0016】
本発明においては、マルチメディアファイル(アニメーション、ビデオ、或いはオーディオのファイル)を、一連の状態として記述する。クライアントへ伝送されるものは、アニメーションデータではなく、この状態情報である。従って、用語「エミュレーション」では、クライアントとやり取りされる情報は、ストリームする必要がないことを強調するものである。クライアントは、受け取った状態情報に基づき、ローカルで対戦するためにデータを生成する。従って、このユーザは、対戦中に、あたかもデータがネットワークを介してストリームされているかのように(最適な状況下では)、連続的で一定のデータのストリームであると知覚する。
【0017】
好適な実施態様では、共有オブジェクトプロトコルを用いて、このエミュレーションを実現する。サーバもクライアントも、オブジェクトの収集のコピーを有する。オブジェクトとは、状態情報を持つデータ構造である。仮想のサッカー試合の場合は、オブジェクトは、例えば、1人のサッカー選手を表わすグラフィックスである。サーバーは、ストリームされたビデオファイルを受け取り、オブジェクトをモニタする。MPEG4では、エンティティとして処理することができるビデオオブジェクトを生成することができる点に注意されたい。従って、サーバがこのオブジェクトの状態を変化させる場合、この変化に応じて、共有オブジェクトプロトコルは、クライアントにおいてコピーを変化させる。これについて、図面を参照しながらより詳細に説明する。
【0018】
この状態情報は、アニメーションデータ自体よりも、高い抽象レベルの情報である。例えば、上述したサッカー試合の放送アプリケーションでは、この状態情報には、競技場における22人の選手の現在位置、及び、選手達の現在の動作(例えば、「走る」、「ジャンプする」)を指定するパラメータ、が含まれる。より高いレベルの情報を利用すると、特に、アニメーションがインターネットを介して多くの観衆にストリーミングされる放送アプリケーションにおいては、幾つかの利点がある。インターネットを介してやり取りされる状態情報のコンテンツは、非常にコンパクトなものであり、従って、アニメーション自体をストリーミングするよりも、より少ない帯域幅しか必要としない。このアニメーションは、ローカルにおいて、数個のパラメータから生成される。更に、アニメーションの状態は、アニメーションデータ自体よりも遅いレートで変化するため、アニメーションのデータポイントの更新レートは、より低いものとなる。このことは、必要な帯域幅を更に低減することに寄与する。更に、本発明は、パケット損失の隠蔽や回復、或いは、ネットワークレイテンシのジッタのマスキングなどの向上に寄与する。状態の間において補間したり外挿したりすること、或いは、推測操縦法を実現することは、容易である。より高い抽象レベルの情報を使用するため、ユーザがアニメーションと対話することを、より容易にプログラムすることができる。その他の利点としては、クライアントが状態情報を共有することができる場合には、マルチユーザの対話が可能となることである。更に、その他の利点としては、クライアントが、クライアント毎にで異なるであろう個々の演算能力に基づき、状態情報をアニメーションに変換することができるという事実である。クライアントにおいて利用可能な資源は、クライアント毎に、或いは、クライアントの属するグループによって異なるものであってもかまわない。
【0019】
本願は、本願と同一の譲受人による米国特許出願第09/053,448号(PHA23,383)、タイトル「放送イベントの3Dグラフィックスモデルを用いるグループでのビデオ会議」の全てを参照によって包含するものである。この文献は、地理的に分散した複数のエンドユーザに対するテレビ放送のサービスを扱うものである。この放送サービスは、会議モードと一体化している。放送におけるあるイベントに基づき、複数のエンドユーザを含む特定のグループは、このグループの者がこのイベントについて議論することができるように、ソフトウェアの管理下において会議モードに変わる。この会議モードは、イベントを表わすビデオの3Dグラフィックスモデルによって、即ち、グループへダウンロードすることによって機能する。
【0020】
本発明について、添付する図面を参照しながら実施例を用いて説明する。全ての図面を通じて、同じ符号番号は、同様の或いは相当する機能を意味するものである。
【0021】
好適な実施態様
図1は、VRMLに基づくクライアントサーバ・システム100のブロック図である。システム100は、通信チャネル106を介して、即ちこの場合はインターネットを介してクライアント104に結合されたサーバ102を具える。システム100には、複数のクライアントを設けることも可能であるが、図面を明瞭にするためにここでは示さない。サーバ102は、ソース符号化器108、及び、チャネル符号化器を具えるも。クライアント104は、チャネル復号器112、及び、ソース復号器114を具える。ソース符号化器108は、コンテンツを生成するツールであると考えられる。ツールとしては、例えば、ビデオ上のモーションキャプチャ装置(図には示さず)からVRMLのアニメーションデータを生成するものなどが挙げられる。チャネル符号化器110は、サブシステムであって、ソース符号化器108で生成されたVRMLのアニメーションデータを入力として受け取り、このデータを、インターネットを介して伝送できる形態に変換するものである。このVRMLのアニメーションデータを、ファイル内に格納する。このファイルの伝送には、標準のファイル・トランスファー・プロトコルを使用する。クライアント104では、チャネル復号器は、外部プログラム116内に収容されている。外部プログラムは、ダウンロードしたファイルからアニメーションデータを受け取り、これを、ソース復号機能を実施するVRMLプレイヤー118へ渡す。このソース復号機能は、本質的にはシーングラフの管理上である。このクライアントサーバの通信手順は、ストリーミングによる解決策ではない。VRMLの仕様は、ストリーミングの要件を考慮していない。ストリーミングにおいては必須のものである、ストリーム及びタイムスタンプの間の同期化などの機能は、VRMLには存在しない。
【0022】
図2は、MPEG4に基づくクライアントサーバシステムのブロック図である。システム200は、チャネル206を介してクライアント204に結合されたサーバー202を具える。サーバ202は、ソース符号化器208及びチャネル符号化器210を具える。クライアント204は、チャネル復号器212及びソース復号器214を具える。上述したように、MPEG4は、ストリーミングをサポートするように設計されたものである。中でも特に、MPEG4では、VRML97と広く重複しているBIFSを規定している。更に、MPEG4は、シーンを更新し、アニメーション化する2つのクライアントサーバプロトコル、即ち、BIFS−更新、BIFS−アニメーションを規定している。ストリーミングに関して、VRMLよりもMPEG4が勝る点は、シーン記述(scene description)及びアニメーションデータを符号化すること、並びに、組み込まれたストリーミング機能にある。符号化器108と同様に符号化器208は、コンテンツを生成するツールである。チャネル符号化器210は、チャネル符号化器110とは異なるものである。チャネル符号化器210は、BIFS及びBIFS−アニメーションのフォーマットでビット列を生成する。このビット列には、アニメーションデータのみならず、複数の選手及びスタジアム(サッカー試合のアニメーション)のグラフィックスモデルをも含むものである。
【0023】
しかしながら、システム100と200のいずれも、多数のクライアント、例えば100〜100000のクライアントに向けてアニメーションを放送する環境で用いる場合には、深刻な欠点を幾つか有する。上述したようにこの制限は、ネットワークの帯域幅の利用法、パケット損失の隠蔽、マルチユーザの対話性に関連するものである。
【0024】
本発明の好適な実施態様は、オブジェクトのオーナー及びオブジェクトをビューワー(或いはリスナー)で、オブジェクトの共有をサポートする通信プロトコルを利用してストリーミングをエミュレーションすることによって、これらの問題の解決策を提供するものである。共有されたオブジェクトとは、状態情報を持つデータ構造体である。全体の状態を記述する共有されたオブジェクトの組み合わせをワールドモデルと呼ぶこととする。クライアント及びサーバは、ワールドモデルの自分のコピーをそれぞれ有する。例えば、サッカー試合を表わす場合、オブジェクトは、サッカー選手を表わすものである。例えば、このオブジェクトの状態情報は、3D空間内のサッカー選手の位置、或いは、「走っている」、「ジャンプしている」、「スライディングしている」、「見たところ傷付いているが、コメディアンのようにグラウンド上に倒れている」などの、動作の状況である。共有されたオブジェクトの各々は、特定の者、例えばサーバに所有されるものである。この所有者は、オブジェクト内に含まれる状態情報を変化させることができる。変化した場合、プロトコルは、ネットワークを介して、自動的に状態情報を同期化する。このようなプロトコルを、本明細書では、これ以降は共有オブジェクトサポート・プロトコルと呼ぶこととする。このプロトコルは、ワールドモデルの状態が変化しても、全てのワールドモデルのコピーが一貫性を保つことを保証する。この目的のために用いることができるプロトコルの例としては、DIS(分散インタラクティブ・シミュレーション)及びISTP(インタラクティブ・共有トランスファープロトコル)がある。本発明の基礎をなすアイデアは、アニメーションを一連の状態として記述することである。例えば、サッカーのソフトウェアアプリケションでは、アニメーションは、競技場の選手の一連の位置、及び選手の動作として記述される。ある与えられた瞬間における状態を、ワールドモデルによって記述する。時間が経過するに従い、この状態は変化し、プロトコルは、ネットワークを介してワールドモデルの状態と同期化を取る。このことは、共有オブジェクトの観点からも説明することができる。これらのオブジェクトは、ある与えられた瞬間におけるゲームを記述する状態情報を有するものである。各オブジェクトに対する状態情報を更新すると、ネットワークを介して複数のクライアントへ送るべきメッセージを生成する結果となる。
【0025】
図3は、本発明のシステム300のブロック図である。システム300は、ネットワーク306を介してクライアント304に結合されたサーバ302を具える。サーバ302は、ソース符号化器308及びチャネル符号化器310を具える。クライアント304は、チャネル復号器312及びソース復号器314を具える。サーバ302は、ワールドモデルのコピー316を有する。データは、入力部320からソース符号化器308へストリーミングされる。ソース符号化器308は、受け取った入力に基づき、必要な状態情報を生成し、ストリーミングのプロセスの経過に伴い、ワールドモデルのコピー316内のオブジェクトの状態を更新する。このタイプの技術は、例えば上述した仮想ライブサッカーシステムで使用されている。チャネル符号化器310は、ワールドモデルのコピー316を監視し、共有オブジェクトの状態変化を符号化する。符号化された状態変化を、ネットワーク306を介して、クライアントへ送出する。チャネル復号器312は、この状態変化を受け取り、ローカルのワールドモデル318を更新する。ソース復号器314は2つの仕事を行うものである。第1に、受け取った状態情報に基づきアニメーションを生成する。第2に、ソース復号器314は、アニメーションに応じてシーングラフを管理する。ソース復号器314は、インテリジェントなコンポーネントであり、動画の計算を実行し、更に、パケット損失やネットワークレイテンシのジッタを隠す状態内挿や外挿などのその他の仕事を実行する能力がある。
【0026】
この点については、本願と同一の譲受人による米国特許出願第08/722,414号(PHA23,155)、タイトル「待ち時間の影響を軽減するローカルでの更新を伴うマルチプレイヤーのビデオゲーム」を参照されたい。本願は、この参照文献の全内容を参照によって包含するものとする。この参照文献は、複数のユーザが、インタラクティブなソフトウェアアプリケーションを通じて仮想環境を共有するシステムについて述べている。ある特定のユーザの状態変化は、この特定のユーザと他のユーザの各人との間の仮想環境における個々の相対距離に応じて、1以上のその他のユーザに伝送される。この条件付きの伝送によって、メッセージのトラヒックが減少し、仮想環境を実質的に無制限に拡大したり縮小したりすることができる。
【0027】
また、本願と同一の譲受人による米国特許出願第08/722,413号(PHA23,156)、タイトル「代理エージェントによるマルチプレイヤーのビデオゲームの待ち時間の影響の軽減」を参照されたい。本願は、この参照文献の全内容を参照によって包含するものとする。この文献は、2人以上のユーザの間で対戦するためのインタラクティブなソフトウェアアプリケーションを処理するデータ処理システムに関するものである。このシステムは、ユーザの各自によって操作されるユーザインタフェイス装置を具えるものである。この装置は、インターネットを介して相互接続される。レイテンシを有効に除去するためには、ユーザを、その他のユーザの装置上ではエージェントとして表わし、他のユーザの動作に対するエージェントの反応は、システム内に格納されたルールベースにより決定される。
【0028】
更に、本願と同一の譲受人による米国特許出願第08/994,827号(PHA23,319)、タイトル「映画的技法を用いて待ち時間を隠蔽する娯楽エージェント」も参照されたい。本願は、この参照文献の全てを参照によって包含するものとする。この文献は、データ処理システム上で実行されるユーザ対話型のソフトウェアアプリケーションの機能性を持つ部分としてのソフトウェアエージェントに関するものである。このエージェントは、映画的技法を用いてこの効果を作り出すものである。
【0029】
ワールドモデルのコピー316と318は、ワールドモデルのあるコピー内のあるオブジェクトと、ワールドモデルのその他のコピー内のその他のオブジェクトとが、状態変化を共有するシーンでは共有されたものとして取り扱う限り、例えば、描画された時の外観は同じである必要はない点に注意されたい。実現可能性や非同一性は、アプリケーションに左右されるものである。例えば、あるクライアントのユーザが、サッカー選手を例えばペンギンで表現したい場合、かつ、その他のクライアントのユーザが例えばバレイダンサーで表現したい場合、状態変化を共有することによって、何れのクライアントの表現もシステムを通じて一貫性が保持される。その他の例としては、クライアント304では、ユーザは対戦中に追加の状態情報を入力し、ワールドモデルの描画を制御することができるようになる。例えば、ユーザは、仮想ライブのサッカー試合を見ているときに、特定の視点を選択することもできる。この状態情報は、サーバ302には存在しない。また、その必要もない。状態情報及びワールドモデルに基づく視点におけるレンダリングは、少しも複雑なものではなく、この映像を、実際に奥行きの情報と共にビットマップとしてクライアント304へストリームするよりも少ない資源しか必要としない、ことは注目に値する。従って、上述した本発明の利点に加えて、本発明はユーザの対話性を向上させる。
【0030】
システム300の構成について、クライアント304は、ソフトウェアアプリケーションを実行させることができ、十分な性能を持つCPUと十分な大きさの記憶装置を設けている、と仮定する。クライアントのうち幾つかは、これらの性能を搭載しなくとも良い。従って、「シン・クライアント」(thin client)とも呼ばれるローエンドの端末を検討するのが好適である。例えば、このような端末としては、入力としてBIFSストリームを受け入れることができるが、それほど強力でない、性能が低いMPEG4端末を使うことができる。このことについて、本発明によるシステム400のブロック図である図4を参照しながら説明する。システム400は、変換局406を介して、クライアント204と通信を行うサーバ302を具える。サーバ302とクライアント204との構成については、上述した通りである。変換局406は、ワールドモデルのローカルコピーを保持する。モデルが現在の状態を記述するように、このワールドモデルをサーバ302からのメッセージによって更新する。この状態情報に基づき、変換局406は、アニメーションを計算する。このアニメーションデータをBIFS−アニメーションのフォーマットに符号化し、MPEG4クライアントへ伝送する。サーバ302は、システム300にあるサーバと同一のものである。変換局406は、共有オブジェクト・サポートプロトコルで伝送されたメッセージからBIFS−アニメーションのビット列に変換するモジュールである。変換局406は、上述した、チャネル復号器312、ソース変換器410、チャネル符号化器412を具える。復号器312は、サーバ302から受け取ったメッセージを解釈し、ワールドモデルのコピー318を更新する。ソース変換器410は、状態情報に基づきアニメーションを計算するプログラムを具える。上述した復号器314と同様に、このモジュールは、パケット損失の回復(補間法、或いは外挿法に基づく)、推測操縦、ローカルでのアニメーション化などの仕事を行うものとするのが好適である。チャネル符号化器412は、ソース変換器410の出力に基づき、BIFS或いはBIFS−アニメーションのフォーマットでビット列を生成する。
【0031】
図5は、本発明におけるシステム500のブロック図である。システム500は、システム300と400の構成を具える。システム500は、サーバ302、ネットワーク502、ネットワーク502を介してサーバ302と接続されるクライアント504、506、508、及び510を具える。更に、システム500は、変換局406と、クライアント512、514、及び516とを具える。クライアント512〜516を、ネットワーク302及び変換局406を介して、サーバ302に結合する。クライアント512〜516に、変換局406によりBIFSのビット列を供給する。一方、クライアント504〜510は、共有オブジェクトをサポートするプロトコルで状態情報を受け取り、クライアント自身でアニメーションを作る。
【0032】
図6は、クライアントの間で対話することができる本発明のシステム600のブロック図である。システム600は、ネットワークを介して、クライアント602及び604と結合されたサーバ302を具える。サーバ302の構成は上述した通りである。サーバ302は、オブジェクトに関するワールドモデルのコピー608、610、612、及び614を有する。クライアント602及び604は、同様のオブジェクトに関するワールドモデルの同様のコピー608、610、612、及び614を有する。ワールドモデルのコピーは、システム全体を通じて、サーバ302から送られた状態情報を用いて、一貫性を保持する。このことが、上述したようにグラフィックスアニメーション、ビデオアニメーション、或いは音声ファイルのストリーミングをエミュレーションする基礎となる。クライアント602及び604は、オブジェクト616及び618をお互いに共有するが、サーバ302とは共有しない。例えば、クライアント602は、クライアント602により選択されたサッカー試合のグラフィック表現のビューを表わす「視点」オブジェクトの所有者である。サーバ302から受け取った状態情報に基づき、クライアント602は、この試合のグラフィック映像を、あたかもスタジアムのある特定の位置から観覧したかのように、描画する。この映像の描画は、サーバ302から受け取った状態情報と、ローカルにおけるワールドモデルのコピーと、視点を選択することができるジョイスティックやマウスなどの入力手段620を介するユーザの入力と、を組み合わせたものに基づくものである。クライアント604は、クライアント602の管理下においてクライアント602上にあるオブジェクトと一貫性を保持されている視点オブジェクトを共有する。オブジェクト616〜618は、このシステムにおいてはその他のクライアントとは、共有されていない。状態情報及びワールドモデルに基づく視点の描画は、少しも複雑ではなく、この映像を実際にビットマップとして奥行きの情報と共にクライアント602、604へストリームする場合よりも少ない資源しか必要としない点に注意されたい。システム600を、主たる所有者としてのサーバを設けずに、全体的に分散システムとすることもできる。複数クライアントの各自は、全てのクライアントから知覚することができるワールドモデルのオブジェクトの各別の1つを所有する。あるオブジェクトの所有者が、状態変化を引き起こすと、これはネットワークを通じて伝播され、共有ワールドモデル内の一貫性を保持する。マルチユーザのアプリケーションでは、この効果は、アニメーションのストリーミングをエミュレーションすることの当然の帰結として、帯域幅を制限されることなく、各クライアント上で連続で対戦することである。
【0033】
図7、8は、ダッチTTなどのオートバイレースである放送イベントに基づくビデオゲームという状況において、上述したシステム300、400、500、及び600を用いて説明する図である。
【0034】
図7は、本発明におけるシステム700の図である。図7は、実際のレーストラック702のレイアウトを示すものであり、毎年ダッチTTが開催されるオランダのアッセンの有名なサーキットである。このTTサーキットの全長は、6.05Km(3.76マイル)である。本物のレースにおいて、本物のレーサーの各々を、トラック702における点704,706,708,...,718で示し、各オートバイは送信機を具え、受信局720へ自分の位置、ベロシティ(スピードと方向)を送信するものとする。また、好ましくは、ロール(バンク角)、ピッチ(ウィリー)、偏走(カーブでの急激加速時のパワースライド)、などのパラメータも送信するものとする。局704は、レーサーから受け取ったデータを、インターネットなどのネットワーク728を介してエンドユーザであるクライアントの装置722,724,...,726へ送る。クライアント722〜726は、例えばインターネットやフロッピーディスクを介して事前にダウンロードするなどして、事前に、トラック702における3Dグラフィックスのワールドモデルのコピー(上記事項を参照されたい)を受け取っている。このモデルにおいては、トラック702上の実際のレーサーを表わすオブジェクトに関する位置やベロシティは、ユーザの装置722、724、726において受け取った状態変化によって決定される。実際のレーサーを表わすこのオブジェクトは、ユーザの知覚に応じて仮想環境を動的に変更する。このオブジェクトは、ユーザ装置において、ヘルメットのレーシング番号の色、レーシングスーツ、カウルなどを具えた実際のレーサーに似るように作ることができる。このグラフィックスの外観を、ユーザの装置にダウンロードしたワールドモデルの一部とすることができる。更に、エンドユーザは、制御可能なオブジェクトを有する。このオブジェクトは、あたかもユーザがトラック上のオートバイに乗り、レーサーの1人としてレースに参加しているかのような、ビューをユーザに提供するように、作られている。しかし、この場合、ユーザは、仮想環境に存在しているため安全である。ユーザは、このユーザに制御されたレーサーと、自分のクライント装置722,724、或いは726を通じて、適切な遊具機やその他のユーザ入力装置730、732、734を介して、対話することができる。
【0035】
ユーザが、その他のユーザと対戦する、或いは、レーサーがソフトウェアプログラムで制御されるプログラム、と対戦するビデオゲームは、周知であり、ゲームセンタにおいては主要なアトラクションとなっている。現在市販されている家庭用のビデオゲームの3Dグラフィックスの品質は、驚異的に高い。この高品質が、事実上、熱狂的なシーンやリアルなシーンに寄与する。本発明は、ユーザがいかなる危険や怪我を被る恐れもなく、現実の本物のプロとの対戦に最も近いものを提供することによって、リアリズムの新次元をユーザに与えるものである。
【0036】
明らかなことは、同様の方法が、仮想ダートトラックレース、F1、インディ500カーレース、ラリー、ヨットレース、或いは、ユーザが操縦することが可能である連続的に展開する仮想環境のためのステージを設定することができるその他の競争イベントにも適用することができることである。天候やオイル漏れによる道路表面のスリップ性、風の力、潮の流れ(ヨットレース)などの、天候及びトラックの条件は、従来のビデオゲームで知られているように、ワールドモデルに統合することができる。幾つかのユーザは、その他のユーザのクライアント上で、その他のオブジェクトを表示するために、自分の所有する制御可能な、仮想のトラックに沿ったオブジェクトに関する、位置、ベロシティ、及び姿勢、を相互にやり取りする能力を持たすこともできる。
【0037】
提供されたワールドモデルは、このオブジェクトを、クライアント上でどのようなグラフィックスのモデルにするかを選択するユーザのオプションとして開放することもできる。上述したように、サッカー試合の例では、サッカー選手のグラフィックス表現を、選択し、ユーザが意図するどんな形状、特に映画「シックスパック」(six-pack)に倣った形状でも、反映させることができる。同様に、ユーザが操縦可能である能力を与えられた仮想環境におけるレーサーを、らくだに乗る者、ダチョウに乗る者、或いは、トラック上を走るスイス防衛隊の隊員、或いはこれらの組み合わせとして表現することもできる。その他の例として、本物の車やオートバイの外観を、近年の車などで置き換えたり、或いは、ユーザ自身でデザインしたりすることもできる。図8は、現実離れした外観を説明したものである。上で紹介した例を組み合わせたものに倣って、本物のレーサーを表わすオブジェクトをモデリングしたものであり、これは、ビデオゲームの娯楽のレベルを向上させる一因と成り得る。本物のレーサーは、状態変化を受けるオブジェクトとして記述される。クライアント722〜726上の本物のグラフィックスの外観は、グラフィックス表現において動作及び位置がワールドモデルの力学上一貫性を保持する限り、任意である。
【0038】
本発明を、リアルタイム、及び、イベントの放送している間のイベント、を結び付けた対話型アプリケーションとして説明してきたが、明らかなことは、対話型アプリケーションは、現実のイベントが実際に起こった時間に使用する必要がないということである。例えば、サービスプロバイダーは、レースについてのイベントを表わす状態情報を、いかなる時間においても、放送することができ、加入者は、プロと対戦することができる。従って、本発明は、カラオケのビデオ版と考えることもできる。
【図面の簡単な説明】
【図1】 VRMLのクライアントサーバシステムの図である。
【図2】 MPEG4のクライアントサーバシステムの図である。
【図3】 本発明で用いるシステムの図である。
【図4】 本発明で用いるシステムの図である。
【図5】 本発明で用いるシステムの図である。
【図6】 本発明で用いるシステムの図である。
【図7】 ビデオゲームを説明する図である。
【図8】 ビデオゲームを説明する図である。
Claims (10)
- 連続的に展開される電子仮想環境のアニメーションを計算する方法において、この方法が、
サーバステーション、及びネットワーク経由で前記サーバステーションに接続されたクライアントステーションを用意するステップであって、前記サーバステーションが、ソース符号化器及びチャネル符号化器を具え、前記ソース符号化器の入力が前記サーバステーションの入力を形成し、前記ソース符号化器の出力は、第1ローカル記憶手段経由で前記チャネル符号化器の入力に接続され、前記チャネル符号化器の出力は前記ネットワークに接続され、前記クライアントステーションが、チャネル復号器、及びソース復号器を具え、前記チャネル復号器の入力は前記ネットワークに接続され、前記チャネル復号器の出力は、第2ローカル記憶手段経由で前記ソース復号器の入力に接続されるステップと;
前記電子仮想環境の共通のワールドモデルを、前記第1ローカル記憶手段及び前記第2ローカル記憶手段の両方に、それぞれ前記サーバステーション用の第1ローカルコピー及び前記クライアントステーション用の第2ローカルコピーとして事前に記憶するステップであって、前記ワールドモデルは、前記サーバステーション及び前記クライアントステーションによって共有される前記電子仮想環境内のオブジェクトによって規定される前記電子仮想環境全体の状態であるステップと;
前記サーバステーションから前記ネットワーク経由で前記クライアントステーションに状態情報を送信するステップであって、前記状態情報は、前記ワールドモデルにおける特定の前記オブジェクトを含む1つ以上のオブジェクトの状態を記述し、前記状態情報は、前記特定のオブジェクトの1つ以上の動的な動作を含むステップとを具え、
前記送信するステップが、
前記ソース符号化器によって、前記電子仮想環境に関連するデータを受信し、前記データに基づいて前記状態情報を生成するサブステップと;
前記ソース符号化器によって、前記状態情報に基づいて、前記ワールドモデルの前記第1ローカルコピー中の前記オブジェクトの状態を更新するサブステップと;
前記チャネル符号化器によって、前記ワールドモデルの前記第1ロ―カルコピーを監視し、前記オブジェクトの状態変化を符号化して、前記ネットワーク経由で前記クライアントステーションに送信するサブステップとを含み、
前記方法がさらに、
前記チャネル復号器によって、前記符号化された状態変化を前記サーバステーションから前記ネットワーク経由で受信し、前記符号化された状態変化を前記状態情報に復号化するステップと;
前記チャネル復号器によって、前記状態情報に基づいて、前記ワールドモデルの前記第2ロ―カルコピー中の前記オブジェクトの状態を更新するステップと;
前記ソース復号器によって、前記第2のローカルコピー中のオブジェクトの状態に基づき、前記電子仮想環境のアニメーションを計算するステップを具え、
複数のクライアントステーションが前記サーバステーションに接続され、かつ、前記複数のクライアントステーションのうち、第1および第2のクライアントステーションで共有され、前記サーバステーションおよび他のクライアントステーションと共有されない視点オブジェクトを備え、前記第1および第2のクライアントステーションは、前記第2のローカルコピー中のオブジェクトの状態および前記共有される視点オブジェクトに基づき、前記電子仮想環境のアニメーションを計算する
ことを特徴とする方法。 - 前記電子仮想環境の前記展開は、前記サーバステーションによって、現実のイベントのストリーミングされたビデオを監視して分析することによって作成した前記状態変化に基づくものであることを特徴とする請求項1に記載の方法。
- 前記現実のイベントを監視することが、前記現実のイベントにおける現実のオブジェクトの位置の変化を測定することを含むことを特徴とする請求項2に記載の方法。
- 前記現実のイベントを監視することが、前記現実のオブジェクトの速度の変化を測定することを含むことを特徴とする請求項3に記載の方法。
- 前記現実のイベントを監視することが、前記現実のオブジェクトの向きの変化を測定することを含むことを特徴とする請求項3に記載の方法。
- 前記現実のイベントを監視することが、競争を含むイベントを監視することを含むことを特徴とする請求項2に記載の方法。
- 前記競争を含むイベントを監視することが、前記競争を含むイベントにおける現実の参加者を含む現実のオブジェクトを監視することを含むことを特徴とする請求項6に記載の方法。
- 前記状態情報を送信するステップが、インターネットを使用することを含むことを特徴とする請求項1に記載の方法。
- ユーザが、前記ワールドモデルによって提供される前記電子仮想環境の少なくとも一部分のグラフィックス表現を決定することを可能にするステップを具えていることを特徴とする請求項1に記載の方法。
- 符号化された状態変化を含む状態情報を、サーバステーションからネットワーク経由で受信して、連続的に展開される電子仮想環境のアニメーションを計算するクライアントステーションであって、前記状態情報は、前記電子仮想環境のワールドモデルにおける特定のオブジェクトを含む1つ以上のオブジェクトの状態を記述し、前記ワールドモデルは、前記サーバステーション及び前記クライアントステーションによって共有される前記電子仮想環境内のオブジェクトによって規定される前記電子仮想環境全体の状態であり、
前記状態情報は、前記特定のオブジェクトの1つ以上の動的な動作を含み、
前記クライアントステーションが、チャネル復号器、及びソース復号器を具え、前記チャネル復号器の入力は前記ネットワークに接続され、前記チャネル復号器の出力は、第2ローカル記憶手段経由で前記ソース復号器の入力に接続され、前記第2ローカル記憶手段は、前記サーバステーションに記憶される電子仮想環境の前記ワールドモデルの第1ローカルコピーを、第2ローカルコピーとして前記符号化された状態変化の復号開始前に記憶し、
前記チャネル復号器は、前記符号化された状態変化を前記サーバステーションから前記ネットワーク経由で受信し、前記符号化された状態変化を前記状態情報に復号化し、前記状態情報に基づいて、前記ワールドモデルの前記第2ロ―カルコピー中の前記オブジェクトの状態を更新するように構成され、
前記ソース復号器は、前記第2のローカルコピー中のオブジェクトの状態に基づき、前記電子仮想環境のアニメーションを計算するように構成され、
複数のクライアントステーションが前記サーバステーションに接続され、かつ、前記クライアントステーションが、前記サーバステーションとは共有されず、前記複数のクライアントステーションの一部と共有される視点オブジェクトを備え、該クライアントステーションは、前記第2のローカルコピー中のオブジェクトの状態および前記共有される視点オブジェクトに基づき、前記電子仮想環境のアニメーションを計算するように構成される
ことを特徴とする複数のクライアントステーションを含むシステム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/138,782 US6697869B1 (en) | 1998-08-24 | 1998-08-24 | Emulation of streaming over the internet in a broadcast application |
US09/138,782 | 1998-09-09 | ||
US09/149,950 US6557041B2 (en) | 1998-08-24 | 1998-09-09 | Real time video game uses emulation of streaming over the internet in a broadcast event |
US09/149,950 | 1998-09-09 | ||
PCT/EP1999/006160 WO2000010663A1 (en) | 1998-08-24 | 1999-08-23 | Real time video game uses emulation of streaming over the internet in a broadcast event |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012084611A Division JP2012147481A (ja) | 1998-08-24 | 2012-04-03 | 放送においてインターネットを介してストリーミングをエミュレーションするリアルタイム・ビデオゲーム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002523156A JP2002523156A (ja) | 2002-07-30 |
JP5160704B2 true JP5160704B2 (ja) | 2013-03-13 |
Family
ID=26836547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000565981A Expired - Fee Related JP5160704B2 (ja) | 1998-08-24 | 1999-08-23 | 放送においてインターネットを介してストリーミングをエミュレーションするリアルタイム・ビデオゲーム |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1047481A1 (ja) |
JP (1) | JP5160704B2 (ja) |
CN (1) | CN1275091A (ja) |
WO (1) | WO2000010663A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200376378A1 (en) * | 2018-02-19 | 2020-12-03 | Konami Digital Entertainment Co., Ltd. | Game system, terminal apparatus, and recording medium |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100429838B1 (ko) | 2000-03-14 | 2004-05-03 | 삼성전자주식회사 | 인터랙티브 멀티미디어 콘텐츠 서비스에서 업스트림채널을 이용한 사용자 요구 처리방법 및 그 장치 |
KR100406554B1 (ko) * | 2000-04-12 | 2003-11-22 | 유재우 | 컴퓨터 네트워크 시스템에서 자동차 경주 대회를 제공하는방법 및 그 기록 매체 |
EP1217567A1 (de) * | 2000-12-21 | 2002-06-26 | Volker Goeman | Verfahren zur computergestützten simulierten Teilnahme an einem realen Rennen |
NO314326B1 (no) * | 2001-04-30 | 2003-03-03 | Gruenderene Stonebridge Da | Fremgangsmåte og system for å stötte gjennomföring av et datamaskinbasert spill med flere deltagere |
US6894690B2 (en) | 2001-06-20 | 2005-05-17 | Engineering Technology Associates, Inc. | Method and apparatus for capturing and viewing a sequence of 3-D images |
KR20030035138A (ko) * | 2001-10-30 | 2003-05-09 | 한국전자통신연구원 | 클라이언트-서버 기반 네트워크 가상환경에서 상태정보의전송 방법 |
JP2004104556A (ja) * | 2002-09-11 | 2004-04-02 | Nippon Telegr & Teleph Corp <Ntt> | 映像再生方法,映像再生装置,映像再生プログラムおよび映像再生プログラムの記録媒体 |
JP2004105671A (ja) * | 2002-09-16 | 2004-04-08 | Genki Kk | 空間位置共有システム、データ共有システム、ネットワークゲームシステム及びネットワークゲーム用クライアント |
US8549574B2 (en) * | 2002-12-10 | 2013-10-01 | Ol2, Inc. | Method of combining linear content and interactive content compressed together as streaming interactive video |
JP4064430B2 (ja) | 2006-07-26 | 2008-03-19 | 株式会社コナミデジタルエンタテインメント | ゲームシステム、ゲーム端末およびサーバ装置 |
JP4064429B2 (ja) | 2006-07-26 | 2008-03-19 | 株式会社コナミデジタルエンタテインメント | ゲームシステム、ゲーム端末およびサーバ装置 |
AU2008243102B2 (en) | 2007-11-05 | 2012-01-19 | Videobet Interactive Sweden AB | A gaming system and a method of managing bandwidth usage in a gaming system |
JP2010142300A (ja) * | 2008-12-16 | 2010-07-01 | Toyota Motor Corp | 運転シミュレーション用端末装置、運転シミュレーション実行方法及びそのプログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5659691A (en) * | 1993-09-23 | 1997-08-19 | Virtual Universe Corporation | Virtual reality network with selective distribution and updating of data to reduce bandwidth requirements |
US5714997A (en) * | 1995-01-06 | 1998-02-03 | Anderson; David P. | Virtual reality television system |
-
1999
- 1999-08-23 JP JP2000565981A patent/JP5160704B2/ja not_active Expired - Fee Related
- 1999-08-23 CN CN99801337A patent/CN1275091A/zh active Pending
- 1999-08-23 WO PCT/EP1999/006160 patent/WO2000010663A1/en not_active Application Discontinuation
- 1999-08-23 EP EP99944472A patent/EP1047481A1/en not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200376378A1 (en) * | 2018-02-19 | 2020-12-03 | Konami Digital Entertainment Co., Ltd. | Game system, terminal apparatus, and recording medium |
US11951393B2 (en) * | 2018-02-19 | 2024-04-09 | Konami Digital Entertainment Co., Ltd. | Game system, terminal apparatus, and recording medium |
Also Published As
Publication number | Publication date |
---|---|
EP1047481A1 (en) | 2000-11-02 |
WO2000010663A1 (en) | 2000-03-02 |
CN1275091A (zh) | 2000-11-29 |
JP2002523156A (ja) | 2002-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2012147481A (ja) | 放送においてインターネットを介してストリーミングをエミュレーションするリアルタイム・ビデオゲーム | |
JP5160704B2 (ja) | 放送においてインターネットを介してストリーミングをエミュレーションするリアルタイム・ビデオゲーム | |
EP1391226B1 (en) | Method and devices for implementing highly interactive entertainment services using interactive media-streaming technology, enabling remote provisioning of virtual reality services | |
KR100294372B1 (ko) | 3차원 가상공간을 나타내는 데이터열을 송수신하는 방법 및 장치 | |
TW201119402A (en) | System and method for utilizing forward error correction with video compression | |
TW201119400A (en) | System and method for selecting a video encoding format based on feedback data | |
TW201041401A (en) | System and method for multi-stream video compression | |
JP2001265562A (ja) | スポーツイベントのリアルタイム通信 | |
KR20120119504A (ko) | 게임 스트리밍 서비스 시스템 및 방법 | |
Battista et al. | MPEG-4: A multimedia standard for the third millennium. 2 | |
US20220360812A1 (en) | Systems and methods for decoding and displaying image frames | |
Hijiri et al. | A spatial hierarchical compression method for 3D streaming animation | |
Otten | Broadcasting virtual games in the internet | |
Matsuba et al. | " Bottom, thou art translated": the making of VRML Dream | |
WO2000042773A9 (en) | System and method for implementing interactive video | |
MXPA00003828A (en) | Emulation of streaming over the internet in a broadcast application | |
Todesco et al. | MPEG-4 support to multiuser virtual environments | |
JPH11102450A (ja) | 3次元仮想空間を表すデータストリームを送受信する装置及び方法 | |
CN117544808A (zh) | 设备控制方法、存储介质和电子设备 | |
Benavente-Peces et al. | Architecture analysis and specification of the RacingDrones platform: Online Video Racing Drones | |
Gorman et al. | Synchronous collaborative systems for distributed virtual environments in Java | |
JP2000236535A (ja) | 動画像情報処理方法および装置ならびに動画像情報配信方法 | |
JP2000149039A (ja) | 多次元ストリ―ムデ―タを用いた、送信装置、送信方法、受信装置、受信方法および通信システム | |
Alborghetti et al. | Deliverable D2. 1: State Of The Art Report |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060821 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070821 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071012 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071019 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071129 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080325 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080625 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080702 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080829 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20080909 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20081104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090130 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20090309 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20090417 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100909 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100914 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110422 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20110707 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20110707 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20111006 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20111017 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20111020 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120403 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121019 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121213 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5160704 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151221 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |