CrossRoad

XRを中心とした技術ブログ。 Check also "English" category.

Even Realities G2のシミュレータが公開されていたので試してみた

昨日、Even Realities G2向けSDKベータ版相当の解説ドキュメントが突然公開されました。

github.com

合わせて関連するnpm packageも公開されています。

今回は、公開内容の1つであるシミュレータ "Unified Even Hub Simulator"の概要と使い方を説明します。

1. 環境構築方法

ここでリポジトリが公開されています。現在はv0.0.5と書いてあります。
github.com

基本的にWebアプリケーションです。そのため、開発環境のOSはWindows/Macのいずれでも問題ありませんが、事前にNode.jsをインストールしておく必要があります。

もしNode.jsがインストールされていない場合は、こちらからインストールします。LTS (Long Term Support) となるバージョンで問題ありません。

nodejs.org

git cloneから起動までの手順です。

$ git clone https://github.com/BxNxM/even-dev.git
$ cd even-dev
$ npm install
$ npm install @evenrealities/evenhub-simulator  (これも必要)
$ npm rebuild @evenrealities/evenhub-simulator (これも必要)

Readme.mdではnpm installのみしか書いていないのですが、追加の2行がないと sh: evenhub-simulator : command not found というエラーが出ます。

2. ./start-even.shを実行するとシミュレータが起動する

実行するとこのような表示になります。2026/2/21時点では15個のアプリを選択できます。

$ ./start-even.sh
Starting Even Hub development environment... http://127.0.0.1:5173
                                                               
Command hints:
  ./start-even.sh                  # interactive app selection
  ./start-even.sh <app-name>       # run one app directly
  ./start-even.sh --update         # refresh all git apps from apps.json
  ./start-even.sh --update <name>  # refresh one git app from apps.json
Starting Vite dev server...
Available apps:
  ID   NAME                 SOURCE
  ---- -------------------- ----------------------------------------
  1    base_app             apps/base_app
  2    timer                apps/timer
  3    restapi              apps/restapi
  4    clock                apps/clock
  5    quicktest            apps/quicktest
  6    chess                .apps-cache: github.com/dmyster145/EvenChess
  7    epub                 .apps-cache: github.com/chortya/epub-reader-g2
  8    reddit               .apps-cache: github.com/fuutott/rdt-even-g2-rddit-client
  9    stars                .apps-cache: github.com/thibautrey/even-stars
  10   transit              .apps-cache: github.com/langerhans/even-transit
  11   weather              .apps-cache: github.com/nickustinov/weather-even-g2.git
  12   snake                .apps-cache: github.com/nickustinov/snake-even-g2
  13   pong                 .apps-cache: github.com/nickustinov/pong-even-g2
  14   stt                  .apps-cache: github.com/nickustinov/stt-even-g2
  15   tetris               .apps-cache: github.com/nickustinov/tetris-even-g2
Select app [1-15] (default 1): 

1-5まではリポジトリの中にソースコードが入っています。
6以降は番号を選択すると初めてソースコードが.app_cacheフォルダにダウンロードされます。

いくつか紹介します。

  • 7 epub

PC側で任意のepubファイルをアップロードすると、シミュレータ側で電子書籍を読めます。30MBくらいのファイルは再生できました。

Chapterの名称は表示されず、章の区切りで強制的にChatper1, Chapter2, Chapter3...と分類されるようです。

epub viewer on Even G2

ちなみに、こちらは1年前にKindleで発売したBabylon.js 英語版解説書の一部です。

Amazon.com: Web-Based Innovation: Digital Twins and Learning Simulations with Babylon.js eBook : Fujiwara, Takayuki, Kamada, Makoto, Kobayashi, Yasuhito, Kobayashi, Yasuhito, Fujiwara, Takayuki: Kindle Store

日本語のepubも表示されました。

epub viewer (JP) on Even G2

こちらは以前執筆した「Babylon.js レシピ集 Vol.3」の一部です。

techbookfest.org

いずれも画像は表示されず、テキストのみが表示されます。

  • 12 snake

画面の端に接触しないようにsnakeを移動させ、色の違うブロックに接触すればステージクリアのようです。

Snake game on Even G2

(up/down操作がやりづらくてコンティニューしまくっていますが、、)

  • 13 Pong

対戦型のピンポンゲームですね。右はCPU、左が自分です。

Pong Game on Even G2

3. おわりに

それぞれのアプリのソースコードを見ると、どのように作ればよいかもわかりそうです。

今回はシミュレータの動かし方までなので、次はHello World的なアプリの作り方、作ったアプリを実機で動かす方法などを確認していきます。