別の仮想世界にアバターを転送する!

仮想世界サービスの仕組み 前回まで3回を通して、OpenSimの構成およびグリッドサービスの概要を説明しました。今回はクライアントからOpenSimにアクセスする際のさまざまな処理について見ていきます。さらにこれに基づいて、ユーザーのアバターを仮想世界サービス間で転送する仕組みを紹介します。

劉 小路

2008年9月26日 20:00

仮想世界サービスの仕組み

 前回まで3回を通して、OpenSimの構成およびグリッドサービスの概要を説明しました。今回はクライアントからOpenSimにアクセスする際のさまざまな処理について見ていきます。さらにこれに基づいて、ユーザーのアバターを仮想世界サービス間で転送する仕組みを紹介します。

 図1はOpenSimのグリッドモードで、クライアントがサーバーにアクセスする時の手順を示しています。以下、この図の手順にしたがって、解説していきましょう。

 1.まずクライアントがユーザーサーバーにアクセスし、認証情報を送信します。認証情報には「名前」「パスワード」「アクセスするリージョン」などがあります。ユーザーサーバーが認証情報を受信すると、送られてきたユーザー名とパスワードで認証処理を行います。

 2.認証に成功すると、ユーザーサーバーは、グリッドサーバーにクライアントが「アクセスするリージョン」の情報を問い合わせます。

 3.グリッドサーバーはリージョンの名前からリージョンサーバーを検索して、ユーザーサーバーにリージョンのサーバーIPアドレス、座標などの情報を返します。

 4.アクセスするリージョンのIP情報を取得したユーザーサーバーは、該当するリージョンサーバーに認証したIDとランダムなキー値を送信します。

 5.次に、ユーザーサーバーはインベントリサーバーにユーザーIDを送信して、ユーザーの持ち物のフォルダ情報を問い合わせします。

 6.インベントリサーバーはユーザーIDの該当するインベントリ情報をユーザーサーバーに返します。

 7.ユーザーサーバーは手順3で取得したリージョン情報、手順4でリージョンサーバーに送信したキー値、手順6で取得したインベントリ情報をクライアントに返します。

 8.クライアントは手順7で受信したキー値をリージョンサーバーのアドレスに送信します。

 9.リージョンサーバーでは、手順4と手順8で受信した2つのキー値が一致する場合、クライアントのアクセスを受理します。受理された後ユーザーのアバターがリージョンサーバー上で初期化され、クライアントとリージョンサーバーのインタラクションが始まります。

 以上のプロセスで、ユーザーアカウントが認証されて、仮想世界にログインできるようになります。

ログイン処理の3つのポイント

 ログイン時の処理について3つのポイントを紹介します。

 1つ目は、状況に応じてTCP通信とUDP通信を使い分けることです。OpenSimの通信では、TCPとUDPをともに使います。ユーザーのログインプロセスの手順1から手順8は高い信頼性を要求されるので、HTTPベースで行います。ログインした後は、手順9を含めて、ユーザーとリージョンサーバーの頻度の高いインタラクションを行うため、UDP通信で行います。

 2つ目は、インベントリ情報の扱いです。手順6の「インベントリ情報」にはユーザーのインベントリのフォルダだけが入っています。ログインした後に、ユーザーからインベントリの中のアイテムを要求された時だけ、リージョンサーバーによって取得されます。

 3つ目は、ファイアウォール設定です。ユーザーが直接アクセスするのはユーザーサーバーとリージョンサーバーだけなので、セキュリティー上の安全を考慮して、グリッドサービスを作る時に、ユーザーサーバーとリージョンサーバーのみを公開し、ほかのグリッドサーバー、インベントリサーバー、アセットサーバーはファイアウォールで保護することをおすすめします。

 続いて、手順9で認証完了後、アバターがリージョンサーバーで初期化される処理について説明します。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30