3Dグラフィックス

開発技術

ネットワークとバーチャルリアリティ【Networked VR】

概要

エクサでは、3次元コンピューターグラフィックス技術を利用したシステム開発の実績を通じて、バーチャルリアリティ技術の様々な応用に取り組んでいます。 ここではその一つである、Networked VRについて紹介します。

Networked VRとは、Virtual Reality (VR)技術に Network 利用技術を組み合わせた技術です。本稿はNetworked VR技術の歴史、 現在の標準と技術的な幾つかのトピック、応用分野について述べたものです。Networked VR 技術は歴史的な経緯からNetworked Virtual Environments (NVE) とも呼ばれています。後述する米国国防総省と関連するプロジェクトや研究機関ではNVEと呼ぶケースが多いので、本稿ではこのNVEより大きい枠組み としてエンターテイメントや学校教育、Webを利用した3次元グラフィックスを包括するものとして Networked VRという言葉を使用します。

Networked VR技術がどのようなものかを説明する前に、先ずNetworked VRがどのような価値を生み、どのような利益を人に与えてくれるかを考えてみます。

VRを利用することで、深い没入感やリアルな体験による高い教育効果を得ることができます。現実の体験には及びませんが、 文書から得られる経験や、受動的に見るだけの映像から得られる経験よりは、はるかに高い教育効果を得ることが可能です。

Network技術とVR技術を組み合わせることで、更に高い教育効果や利便性を得ることができます。ネットワークで VR 空間を共有し、 各操作者がお互いを認識しつつ作業することによって、チームによる組織活動の訓練や、各参加者同士の相互観察と客観視点による学習効果、 インターネット越しの遠隔利用などの利便性を得ることができます。図1はNetworked VRを利用することで、 遠隔地で同時に双方向学習をしている例を示したものです。


図1 Networked VR利用イメージ

Virtual Realityとは

Virtual Reality(VR)技術とは、3次元(3D)のComputer Graphics (CG)や音響効果等を組み合わせて、人工的に現実感を作り出す技術の総称です。 現実感を作り出すには、人間の5感へのアプローチが考えられますが、特に視覚へのアプローチは現実感生成の上で影響が大きく、様々な研究が行われています。

視覚的に現実感を作り出す方法は、一般的なモニターや立体視モニターへの CG 描画から、Head Mount Display (HMD)を利用した方法などが代表的です。 しかし、単に3D CG映像を見ているだけでは人は現実感は感じません。現実感を感じるためには、仮想世界と人間とのインターフェイスが重要になります。 人が明確な意思を持ってその世界に対してなんらかの行動を起こし、その行動の結果がその世界に影響を及ぼすプロセスそのものが、 その世界の実在を人に感じさせ、現実感が生まれます。例えば右を向いた時には右を向いた世界の映像が見え、前に進めば前に進んだ映像が見えることなどです。 この時、現実感を生むためには、その世界が人間の持つ経験的な感覚に逆らわない法則性を満たすことも重要です。例えば物体が重力に逆らって上に昇っていったり、 物体同士がすり抜けてしまっては、観測者は非現実感を感じてしまいます。3D CG技術は物理的に不自然でない映像を生成することが可能であるため (パースや立体物どおしの前後感、遠近感など)、3D CG技術はVRが発展する上で果たした役割が非常に大きく、現在も重要な技術です。

VR技術は人間の理解の仕組みと合致した学習方法を提供することが可能です。図2は、デールの経験の円錐と呼ばれるもので、 教育学的観点から人間の物事の理解度を段階的に表した図です。円錐の上は抽象的な概念の理解であり、下にいくに従って具体的、 現実的体験に近づいていきます。VRは現実感を生成する過程において、その現実度を調整することによって抽象的な概念から直接的体験に 近い経験まで適用することができます。


図2 エドガー・デール ( Edgar Dale )の「経験の円錐」

ちなみに、 "virtual"という言葉はしばしば「仮想」という意味で翻訳されますが、本来は「みかけや形は原物そのものではないが、 本質的あるいは効果としては現実であり原物であること」を意味しています。

Networked VRの歴史

VR空間を共有するいわゆるNetworked VRは1980年代中頃から米国で研究が始まりました(NVE)。当初の利用方法は主にシミュレーションや訓練用であり、 研究機関も米国海軍大学院NPS(Naval Postgraduate School) など中心でしたが、やがてこれらのシミュレーション用のソフトウェア開発が一産業として確立していき、 様々な研究機関や民間企業が関わるようになっていきました。そこでシミュレーションソフトウェア用の標準規格を策定する動きが始まり、 後述するDIS、そしてHLAが生まれました。

やがて軍中心の開発から大学などのアカデミックな機関でもNetworked VRを研究するようになっていくと共に、研究対象としてCollaborative Virtual Environments などが加わるようになっていきました。今日では、シミュレーションや訓練のみではなく、教育やコラボレーションとしての利用を想定した様々な研究が行われています。

1994年にはWebで利用することを想定した3次元グラフィックスの標準規格としてVRML (Virtual Reality Markup Language)が生まれました。 VRMLは3次元グラフィックス空間を記述する標準フォーマットとして普及しました。VRMLを利用し、商品紹介や建物案内をWebブラウザ上で実現する試みも多数行われましたが、 VRMLの仕様の肥大化に伴いVRMLファイルはサイズが大きくなっていったこともあり、当時のナローバンド環境では十分な効果を発揮することができませんでした。 この反省を生かし、VRMLはWeb上で利用することを主目的としたX3D (eXtensible 3D)として生まれ変わりました。 X3D はXMLによって記述されるシンプルな規格であり、3次元グラフィックスのコア機能のみを定義します。様々な機能はXMLで拡張すること付加されます。 ブロードバンド環境の普及と、OSの3次元グラフィックス標準対応などの時代的な潮流から、今後の普及が期待されています。標準規格以外にも、 各民間会社でWebでの3次元グラフィックス利用を目的とした様々な技術が現在も研究されています。これはNetworked VR技術が多大な効果をもたらす証左といえます。

商用分野ではネットワークゲームが1990年代から隆盛となり、ネットワークゲームはNetworked VRの一つの代名詞的存在になりつつあります。 米軍も現在の技術検証と人材確保を目的とし、無料で利用できるネットワークゲーム「America's Army 」を開発運用しています。 このゲームは200万人以上がプレイし、マーケティング効果は絶大なものがありました。2000年以降、一般家庭にブロードバンド環境が 急速に普及したこともネットワークゲーム業界を後押ししています。

図3はNetworked VRの歴史の中で生まれたこれらの標準規格やエポックメイキングなソフトウェアを示しています。


図3 Networked VRの歴史(標準規格とエポックメイキングなソフトウェア)

標準規格 HLA

HLA (High Level Architecture) は、シミュレーションソフトウェア開発における一つの標準であり、IEEE標準規格です。 ここではその歴史的な経緯を含めて解説します。

現在のHLAへと続く最初の試みが、アメリカ国防総省 (DoD:Department of Defence)の研究・開発部門である DARPA(Defense Advanced Research Projects Agenvy) が1983年に開発したSIMNET(Simulator Networking)です。これは軍事訓練用のNVEを低コストで作成することを目標に作成され、1990年まで米軍で使用されました。 その後、その後継としてDIS(Distributed Interactive Simulation) [1989-2000] が策定されました。 IEEE1278など標準規格とし、その後のシミュレーションソフトウェアの定番規格となりました。DISは通信プロトコルをPDU(Protocol Data Unit)として定義しており、 この規格に対応したソフトウェア同士であれば連携して使用できることを目的としていました。

HLA [1999-] はDISを超える次世代の標準規格としてDoD, DMSO (Defense Modeling and Simulation Office), SISO(Simulation Interoperability Standardization Organization)が中心となって策定されました。Object-Orientedな設計となり、 イベントのスケジューリング管理などの高度な管理機能を備え、NVE以外への応用(スーパーコンピューターなど)も視野に入れた規格です。 IEEE1516として標準化されています。

HLAを利用するには、HLAに対応するRTI(RunTime Infrastructure)と呼ばれるミドルウェアを導入する必要があります。 図4はRTI上にHLAアプリケーションが実装される様子を示しています。RTIは当初はDMSOによって公開、配布されていましたが、 現在(2006)は公開しておらず、商用製品を紹介しているのみとなっています。現在(2006)のRTIの最新はIEEE1516版ですが、 その前のバージョンであるHLA 1.3版も広く普及しています。


図4 HLAとRTI

DISやHLAなどの研究、技術、および関連商品は毎年開催されているI/ITSEC( Interservice/Industry Training, Simulation and Education Conference)などで展示や研究発表が行われています。

NPSにあるMOVES(Modeling, Virtual Environments, and Simulation) 研究所では、これらのNVEに関する成果をDelta3dとしてOpen Sourceで 公開しています(ライセンスはLGPL)。Delta3d は他のオープンソース規格であるOpen Scene Graph(OSG)、Dynamics Engine(ODE)、 Character Animation Library(CAL3D)、OpenALなどを統合するゲームエンジンです。Delta3DはRTIに接続するHLA用のAPIを含んでおり。 Delta3Dを使用することによって、オープンソース環境でのHLAアプリケーションの開発が可能となります。(ただし、RTIは別途用意する必要があります)。

Networked VRの研究技術要素

Networked VRの黎明期の研究技術要素としては、位置座標やイベントを各端末で同期する技術の研究が中心でした。 当時のネットワーク環境は低速であったため、できるだけ少ない通信量で同期を実現する技術が求められました。この技術の代表的なものがDead Reckoning(推測航行)です(図5)。 これは通信パケット内に座標値と共に速度などを含ませることで各端末で未来の座標値を推測させる方法させる方法です。 Dead Rechoningは後述のサーバーレスアーキテクチャで効果を発揮します。この技術DISなどにも反映されました。その他の研究技術要素としては、 システムに同時に参加できる人数やシステムの性能を増大させるスケーラビリティ(Scalability)や、 一つのVR空間を多様な端末(性能や端末の種類など)で同時に利用できるようにするヘテロジェニュイティ(Heterogeneity) などが挙げられます。 現在ではCollaborativeな利用方法や、教育プログラム作成フェイズ、教育効果の評価など実践的な研究が増えてきています。


図5 Dead Reckoning

Networked VRのNetworkアーキテクチャ

Networkアーキテクチャの代表的なものの一つが、Webで一般的なクライアント/サーバーアーキテクチャです。このアーキテクチャの利点は、 サーバーが全てを集約管理できることです。Networked VRでも、小規模かつ提供する機能が限定されたものであれば非常に有効なアーキテクチャといえます。 Networked VRに必要な同期や設定、ユーザーなどの機能の管理をサーバーで集中的に行うことで、シンプルにシステムを構築することができます。 逆に不利な点は、サーバーの性能がシステム全体のボトルネックとなることが挙げられます。サーバーが提供する機能が増加するに従って、 ボトルネック化する可能性は増大します。サーバーの性能を向上することでボトルネックは回避できますが、大規模なシステムの場合は膨大なコストが必要となります。 HTTTPリクエストに対してHTTPレスポンスを返すという極単純な機能を提供するWebサーバーでさえ、商用サービスに耐える性能を実現するためには大きなコストが掛かります。

Networked VRにおけるもう一つの代表的なネットワークアーキテクチャはサーバーレスアーキテクチャです。 このアーキテクチャでは各端末は対等(P2P:Peer to Peer)に通信し、連携します。サーバーレスアーキテクチャでは特定のサーバーを持たず、 各端末が連携して一つのシステムを形成します。このような場合、各端末はサーバーとクライアントの両方の機能を持つサーバントと呼ばれます。 サーバーレスアーキテクチャではサーバーがボトルネックとなることを回避することができ、耐障害性も高まりますが(サーバーが停止してもシステムは停止しない)、 管理が難しくなり(サーバーを停止してもシステムは停止しない)、システムを実現するための技術的難易度は高まります。例えば、共有VR空間の3Dモデルは、 クライアント/サーバーであればサーバー上に配置して各クライアントに配信すればよいが、サーバーレスの場合には各ピア同士で共有する仕組みが必要になります。 また、各端末上で独立に発生したイベントが矛盾しないように連携させる仕組みも必要となります。サーバーレスでの通信には 速度とその効率性からマルチキャストUDPを使用するケースが多いですが、信頼性を高めたマルチキャスト通信などを研究しているプロジェクトも幾つか存在します。 今後は近年急速に発展してきたP2Pアプリケーション技術を利用し、オーバーレイネットワーク上にNetworked VRシステムを構築することも考えられるでしょう。

図6はクライアント/サーバーとサーバーレスの両アーキテクチャのモデルを示しています。


図6 Networked VR における代表的な Network アーキテクチャ

近年ではネットワークゲームなど少人数同士の相互作用を中心とするシステムではクライアント/サーバーアーキテクチャを、 シミュレーションや訓練などの大人数での相互作用が必要な場合にはサーバーレスアーキテクチャを採用することが主流となっています。

Networked VRの応用分野

Networked VRの真価が発揮されるのは、現実には再現することが難しい状況を体験し、学習することといえます(「図2 デールの経験の円錐」参照)。 例えば、現実に再現することが難しい状況として、災害や事故発生時など特殊ではあるが、 将来備えていなければならない状況が挙げられます。 特にNetworkを利用することでチームによる組織的な活動をシミュレートすることが可能となります。

あるいは、現実には体験不可能な視点や状況を創造できることを利用して、教育やエンターティメントへの利用も非常に有効です。 VR空間ではプレイヤーへの制約は如何様にも設定できます。空を飛ぶ視点や極小の原子世界から人体内、宇宙スケールの視点も提供可能で、 経験的・体験的な理解を超えた学習効果を期待できます。また、フィクションの世界を提供するネットワークゲームなどはエンターティメントの代表例といえます

実際にNetworked VRは、以下のような分野に応用されています。

  • 教育現場(学校、博物館など)
  • ゲームなどのエンターティメント分野
  • 協調、共同作業 (Collabolation)
  • 訓練、共同訓練
  • シミュレーション全般( 医療・福祉・教育・ビジネス研修・職業研修・軍事政治)

また、インターフェイスとしてVR程の表現力を必要としない分野や、NetworkにWeb技術のみを利用することで手軽に利用できるWebアプリケーションなども増えてきており、 Networked VRとの境界は今後曖昧になっていくことが予想されます。

まとめ

本稿ではNetworked VRについてその意味と歴史、代表的な技術と標準規格、そしてその応用分野について説明してきました。 VRという人間の感覚に直接訴える技術と、あらゆるものを結合するNetwork技術の融合は、ある意味では「人はどのように現実世界を認識するか?」 「人はどのように情報を伝達しあうか?」という古くから存在するテーマの融合と言えます。急速に発展してきたコンピューター技術とインターネットが これらのテーマを進化させることができるかもしれません。

現段階ではNetworked VR技術をどのように利用し、どのような効果を獲得するかというテーマは、まだまだ発展途上といえます。 いつかSF映画で見たような利用も可能となるかもしれませんし、誰もが想像していない方向に発展するかもしれません。いづれにしても、 人にとって幸せをもたらす技術として発展するよう願っています。

エクサはこのような願いと共に、Networked VRの研究と開発に取り組んでいます。

用語

VR (Virtual Reality) Virtual Reality とは、一般的には3D CGや音響効果等を組み合わせて、人工的、技術的に生み出された現実感。 "virtual"という言葉はしばしば「仮想」という意味で翻訳されるが、本来は「みかけや形は原物そのものではないが、 本質的あるいは効果としては現実であり原物であること」を意味する。
3D CG (3D Computer Graphics) 3D CGとは、3次元のデータ構造に基づき、コンピューターが生成、描画したもの。
Networked VR (Networked Virtual Reality) Networked VRとは、VR 技術にネットワークを利用した技術の総称。接続された端末を通して、 3D CGで表現されたVR空間に複数人が同時参加する技術も抱合する。同義語として、Networked Virtual Environments (NVE)がある。
DIS (Distributed Interactive Simulation) DISとは、NVEを実現するプロトコル標準仕様である。軍事シュミレーション分野の標準規格として普及した。
HLA (High Level Architecture) HLAとは、DISの後継として誕生したコンポーネントベースのフレームワーク標準仕様である。 この仕様に従ったミドルウェアがRTI (RunTime infrastructure) である。RTIは当初はDMSOが公開していたが、現在は 公開を停止しており、 商用で販売されているもののみが利用可能である。RTIにはspec1.3版と、最新のIEEE1516版が存在している。HLA対応のアプリケーションは、RTI上に実装される。

TOP