いかにして人類はVRアプリケーションの標準UIを手から伸びるレーザーポインター方式に確定したのか
概要
昨今のVR-HMDを使うアプリケーションは複雑な設定が必要なもの(例えばVR-SNSやクリエイティブツール)において、ほぼデファクトスタンダードなUXとしてUIパネルに並んだボタンやスライダーを手に持ったコントローラから伸びるレーザーポインターで選択して人差し指トリガーで決定、という物を採用しています。
なんでこう収斂したのか、という私見とメモを書いていきます。
前史
Oculus Touch/Vive Wandが登場するまでは、GearVRやOculus Rift DK2などがコンシューマ向けVRの主戦場でした。
これらのデバイスではコントローラの向きは取得できる(位置を取得できない)+コントローラに決定ボタンがある、という操作環境です。
そういった環境に置いてVR-UIの最適解はコントローラの先端からレーザーポインターが伸びて、レーザーポインターの先にあるボタンをポイントして、決定ボタン(トリガー)で選択、という物でした。
手の位置がわからないので手を伸ばして何かを掴む、手を伸ばしてボタンを押す、ということが出来ません。なのでレーザーポインターでポインティングして決定、をするしかなかったです。
(厳密には、顔の正面から伸びたレーザーポインターで一定時間見つめ続けると選択、というUIもあったんですが、あまり複雑な操作をするアプリでは見かけなかったです)
Oculus Rift CV1( Touch) /Vive Wandの登場
VR元年です!家庭用VR機器なのに、両手の位置と姿勢がミリ単位で正確に取得できる夢のデバイスが出てきました。
このときに各社様々な操作方法を試みますが、前史にあるようにレーザーポインター+トリガーに対して手の位置が取得できるこの環境では「物理的に手でボタンを押す」という事が可能になったので、直接ボタンを押す。というUXが多く用いられました。
この空間上にあるボタンを手で押すのは直感的な操作 であり、しかも 手垢のついたレーザーポインター方式ほどダサくない という点で、未来感もありました。今まではハードウェア制約から渋々(?)レーザーポインターを使っていたんですが、今なら素直に直接UIを触れるようになったので採用したくなる操作です。(ボーンアイデンティティのUIを見てください、直接宙に浮いてるUIを触って操作してますよね。これです!!これができるハードウェアを長い間待ってたんです!)
更に言うと、このOculus Rift CV1/HTC Viveの頃は片目当たりの解像度は1000x1000ピクセル程度で、それほど細かいUIを用意しても視認性が高くない為、空間上に浮いているボタンを大きくする必要があり、その大きなボタンを直接押すというVR-UIが流行しました。
特にOculus社のToyboxデモの直感的なUIは開発者を魅了しました。直接手を伸ばしてアイテムを取り出すなんてすごくクール!!!
OculusQuest 以降
Quest/Quest2の登場によって、多くのVRユーザが生まれました。 これらの機器は片目あたり1600x1600以上の解像度を持ち、片目あたりのピクセル数で言うと前世代のPC向けVRの2倍にもなります。
こんな凄い解像度だと ボタンが小さくても視認できます。
さらに、直接手でボタンを押す操作は、奥行知覚を最大限に使うので押したと思っても奥行きを間違えていて押せない、などの問題が起きてきました。(あと、物理的に押すUIって疲れちゃいますしね)
そこで小さなボタンを並べたUIを手のコントローラから伸びるレーザーポインターでポイントして、トリガーで選択する。というレーザーポインター方式のUIが復権しました。
レーザーポインターは離れるほどポイントしにくい、という難点はありますがポインターに対して「手ぶれ補正」を掛けることで小さなボタンもポインティングできます。
また、レーザーポインターは奥行き判定を気にしなくても良いという利点があります。
そんなわけで前史に先祖返りした、とも言えますが現在のVR-UIは大体がレーザーポインター方式を採用するようになりました。
// 他の要因としては、例えばVR空間内で文字入力をする時、キーボードを空間に浮かせると一個づつのキーが小さくなってしまって、レーザーポインターじゃないと難しい、という説もあります。なのでQuestのOSのUIもレーザーポインターですね!
というお話でした
これが8年程度、VR-HMDを使ったコンテンツ開発を仕事にしている僕から見えているVRUIの変遷です。
VRUIはダサいレーザーポインターからカッコイイ直接ボタンを押す方式に移行したんだけど、揺り戻し的に今はレーザーポインターに回帰しているわけですが、こういった経緯があったんじゃないかなあと思いを馳せるのも楽しいですね。
VRChat向け下半身トラッキングデバイスHaritoraXが発売+発送開始されました。
概要
2021年2月に僕と愉快な仲間達で作っていた同人ハードウェアのHaritoraを、株式会社Shiftallさんと業務提携して量産改良版HaritoraXとして開発することを発表しました。
そのHaritoraXが本日付で発送が開始されました。
この記事では同人ハードウェアの量産改良版発売における役割分担やソフトウェアの改良などについて書こうと思います。
ちなみに気になる予約台数はShiftall CEOの岩佐さんより、本予約開始直後の5/27時点でこのツイートがあります。その後の数字は非公開とのことですが、びっくりするぐらいの台数が出ているようです。
同人ハードウェア発でメーカーから量産改良版が何千台も出る、ありがたい時代ですね。
4桁...w
— 和蓮和尚 (@warenosyo) 2021年5月27日
役割分担
HaritoraXは新規設計になるハードウェア面について、取り付け用専用スーツ含めほとんどShiftallさんにお任せしています。(一部僕が口を挟んでいる場所もありますが)
新規設計のハードウェアに合わせたファームウェアもShiftallさんによる開発です。
また、製品のサポートやドキュメント、宣伝などもShiftallさんがやってくれます。
ということは僕は何もしなくてもオッケー!!!(?)かと言うとそうでもなく、結構いろいろソフトウェアの改良をしました。
次の項で、こんなことしたよ!という事をまとめておきます。
たぶんハードウェアの工夫や大変さなどについては追って Shiftall さんから面白い情報が出ると思います!
ソフトウェア改善箇所
トラッキング
トラッキングアルゴリズムに手を入れて、ジャイロの数が少ない割に良い感じに動く実装をしました。
(以下トラッキング技術勉強会の発表スライドにも載せています)
speakerdeck.com
UI
フォントをフォントワークスさんの物に置き換えました。VR-HMDのバーチャルデスクトップ環境を考慮してフォント視認性を上げています。(mojimo-gamesはインディゲーム専用では無く、他のソフトウェアでも使っても良いのです) mojimo.jp
UIレイアウトや可読性を全般的に修正(zenさんありがとうございます)
例:スタート画面
こんな感じに修正↓
使い勝手
細々といろいろなエラーハンドリングを追加しています。例:ハードウェアのBluetoothコネクションがタイムアウトしたときの挙動など。
今までのユーザフィードバックを元に、なるべくユーザが困らないように、ということを重視しています。
HaritoraX専用機能
HaritoraXの電池残量表示を作ったりしました。
そしてHaritoraX向けのBluetooth経由のOTAファームウェアアップデートを実装しました。(これをUnityでやってる人はあまりいないはず)
www.youtube.com
まとめと今後の展望
以前に書いた業務提携の発表時のエントリだと「Amazonで売るよ!」とありますが、どうやら当面は既にオーダー頂いてる方への発送が優先のようです。
ご存じの通り、昨今の様々な情勢により半導体が全体的に調達コストが上がったり、納期が異常に伸びたりする中で当初スケジュールである春~夏出荷開始を維持したShiftallさんの尽力に感謝しています。(クラファンのハードウェア系は軒並み出荷予定が伸びてますね…)
発売したよ、で終わりでは無く、まだまだHaritoraプロジェクトで面白いことをしていきたいなあと思っているので今後もメンテしていこうと思います。
とりあえず無印Haritoraを対象としたハードウェアハッカー向けドキュメントを書きます!!(みんな自前のファームウェア書いて遊びたいよね!)
大変、大変長らくお待たせいたしました。先ほど #HaritoraX の出荷が開始されました。ほんの数百台と、予約総数からすると大変少ない数で心苦しいのですが、明日7/17から順次お手元に届くことになろうかと思います。本日発送したお客様宛には、本日中にメールにて発送完了のご連絡をいたします(続く
— 株式会社Shiftall (@shiftall_jp) 2021年7月16日
FLEXISPOTのデスクバイク v9レビュー
概要
FLEXISPOT社からご厚意で表記のデスクバイクV9を提供頂いたのでレビューをします。
デスクバイクは以前アルインコの1万円くらいのものを所持していたので、それとの比較を交えつつのレビューになります。
特徴
デスクバイクは、自宅で有酸素運動が出来るフィットネス機器です。
- 天板の有無
- 折りたたみの有無
の2個のポイントがあります。ノートPCを開いたり本を読んだり、というながら作業をする場合は天板有りが良くて、使わないときに収納したい場合は折りたたみ有りが良いです。
このV9は - 天板有り - 折りたたみ無し
となります。
以前のデスクバイク
この機種に近い物を使っていました。 www.amazon.co.jp
アルインコのデスクバイクは折りたたみ有り、天板無しだったのですが、買って数日で使わなくなりました。
なぜなら使い終わって折りたたんだあと、コート掛けとして第二の人生を歩み始めてしまい、以降二度と折りたたみから展開することがなくなってしまった為です。
少なくとも僕の場合は、折りたためると折りたたんだまま一生使わなくなったので、もしズボラさに自信がある方はあえて折りたたみが出来ないデスクバイクの方が良い可能性があります。
また、天板無しのモデルにすると作業をしながら(あるいはソシャゲの周回をしながら)という事がやりにくいので、個人的には天板有りのデスクバイクに良さを感じます。
組み立て
例によってメチャクチャ重いです。重さは35kgくらいありました(段ボールに重量超過ってラベルが貼られました)
この重さは一人で組み立てられるかですが、健康な成人男性であればギリギリいけそうです。 ですが死ぬほど重かったので10分も掛からない組み立てですが友人に手伝って貰う方が良さそうです。(バイクに天板を載せるときと接地の足を開くときは二人居た方が安全そうです)
ここでお得情報ですが、段ボールをあけて取り出すときに片側を開けて引っ張り出すより、両側を開けて底面から足で押し出すと、一人でも取り出せます。
中身は天板とバイクの2パーツ構成でシンプルです
バイクの足とペダルを開きます。
天板を差し込んで1本のネジで固定するだけです。
電動昇降机と違って組み立てに電動ドライバーは不要です。
使ってみての感想
調整機構は各種あるので身長150cmから190cm位の人は無理なく使えそうです。
静音さについてはほとんど音がしない(構造上チェーンが無いのでジャラジャラ言わない)ので、夜に使ってもご近所迷惑にならないのも嬉しい点です。
ペダルが痛い問題
ただしペダルが結構角張っているので、裸足で漕いでいると結構足の裏が痛いです。室内でシューズを使うほど本格的では無いトレーニングでは
- ペダルに靴下とかを被せる
- スリッパを使う
- 厚手の靴下を履く
などの対応が必要だと思いました。
以前の同型番のレビューだとペダルのカバーが同梱されている、という例もありましたが メーカーに確認したところ現行製品はペダルのカバーは同梱されないそうです。
負荷調整
負荷調整は一番重くするとママチャリで自転車二人乗りで坂を登るくらいの負荷でした。かなりの負荷です。 ちょっと負荷があるな、というくらいのペダルの重さで軽く30分ほど漕いでも結構汗をかきました。有酸素運動として自転車はかなり良いですね。
電源周り
ACアダプタなどは不要で単三電池2個です。
また、ペダルを漕ぎ始めると自動で電源が入り、5分ほど放置すると自動で電源が切れるので何も気にしなくて良いのが気に入りました。
電源を入れる、というのも面倒くさいズボラな僕にはありがたいです。
天板について
エルゴノミクスな曲面形状なので概算ですが、幅55cm奥行き45cmのサイズです。結構大きいです。
また、かなりガッシリしているのでゲーミングノートも問題なく載りました。
天板素材的に掃除がしやすい加工なのと、手前のクッションがパームレスト的に使えて良いのが気に入りました。天板がチープだったりガタガタするとかなり怖いです。
床への固定について
キャスター4個で床に接地していますが、ストッパーがありません。一瞬怖かったですが、かなり本気で漕いでも移動しませんでした。 代わりにストッパーが無いのでデスクバイクから降りて移動させるときは押して移動するときにスムーズでした。
スムーズ…! pic.twitter.com/2eWa9OmOhf
— izm (@izm) 2021年6月20日
まとめ
折りたためない天板有りのデスクバイク、ずぼらな人の運動用にかなり良いかもしれません。僕は気に入りました。
また、6/22までセールで21%オフの35000円になっています。この機会に是非是非!
FLEXISPOTの電動昇降机E7レビュー E3との比較を添えて
概要
去年の2月くらいにFLEXISPOT社のE3Bという電動昇降机の脚と、オーダーした幅180cmの天板で最強の自宅環境を構築していました。 izm-11.hatenablog.com
あれから1年が経ち、机が手狭になってきた(?)タイミングで、FLEXISPOT社からご厚意で表記のE7を提供頂いた ので
- E7含む電動昇降机の良さ
- E7+FLEXISPOT純正天板の組み立て難易度
- E3との比較
の3点について書いていこうと思います。
(ツイート文中ではE5と書いていますが本当はE3です)
電動昇降デスクのFlexispot E7(白)+純正白天板
— izm (@izm) 2021年5月19日
今使っている同社のE5より数センチ下まで下がります。 pic.twitter.com/5GrqdvVQVJ
E7含む電動昇降机の良さ
僕もソフトウェアエンジニアとして働いて10年近くになりますが、周囲の腰痛率については相当なものがあります。
若かりし頃はどんな机や安物の椅子でも気が狂ったように徹夜でハック出来たのですが、そろそろ健康に気を付けていくフェーズです。
そんなわけで良い椅子や机に対して気を遣う人も増えている、という実感があります。
特に電動昇降机はこの数年で僕の周りでの利用者がかなり増えてきました。以下に利点を書いていきます。
続きを読む明日からソーシャルゲームのクライアントエンジニアになる人に入門以前を宣伝します
概要
期が変わって2021/4/1からソーシャルゲームのクライアントエンジニアとして働く人も結構いるかもしれないと思うので
ソーシャルゲームのクライアントエンジニア入門以前 というサイトを宣伝します。 neon-izm.github.io
前回までの経緯
2020/7ごろゴリゴリ作って目次を一通り書いた後、以下の記事を公開しました。 この時点で約2万字程度 izm-11.hatenablog.com
公開以降、僕自身による本文の加筆の他、業界内の様々なエンジニアによる修正提案、項目追加などが加わりました。
現在はカウントしてませんが約6-7万文字程度です。
宣伝
書きたいことは大体↑のサイト+過去の日記に書いてしまったので改めて宣伝することが思いつきませんが、開発現場で突然仕事を振られて硬直しないように、ググりはじめるステップとして、ブックマークして備えておくというのはいかがでしょうか!