Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
VRにおけるUI設計
Search
donabe
December 11, 2021
Programming
0
150
VRにおけるUI設計
VRの最大の敵である「酔い」に対抗すべくVRにおけるUIについてまとめてみました。
donabe
December 11, 2021
Tweet
Share
More Decks by donabe
See All by donabe
Unityがマルチプラット フォームビルドできる理由は? よく聞くIL2CPPって? 調べてみました!
donabe3
0
9
ハッカソン請負人の 開発ルーティンを紹介!
donabe3
0
48
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
250
OutOfRange 【プロトスプリントリーグ】
donabe3
0
47
Unityで都市開発シミュレーションゲーム開発をしてみよう
donabe3
0
210
現実 VS バーチャルのマルチプレイゲームを作ろう
donabe3
0
140
Speech to Textureで 思い通りに世界を改変しよう
donabe3
0
23
院試までなにやったか
donabe3
0
27
XR Interaction toolkit & XRHands & Passthrough API で MR 開発
donabe3
0
250
Other Decks in Programming
See All in Programming
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
140
時間軸から考えるTerraformを使う理由と留意点
fufuhu
15
4.7k
開発チーム・開発組織の設計改善スキルの向上
masuda220
PRO
20
11k
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
520
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
290
ソフトウェアテスト徹底指南書の紹介
goyoki
1
150
複雑なドメインに挑む.pdf
yukisakai1225
5
1.1k
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
140
Navigating Dependency Injection with Metro
zacsweers
3
240
旅行プランAIエージェント開発の裏側
ippo012
2
890
Swift Updates - Learn Languages 2025
koher
2
470
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
13k
How STYLIGHT went responsive
nonsquared
100
5.8k
A better future with KSS
kneath
239
17k
Become a Pro
speakerdeck
PRO
29
5.5k
Six Lessons from altMBA
skipperchong
28
4k
Optimizing for Happiness
mojombo
379
70k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
Bash Introduction
62gerente
615
210k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Language of Interfaces
destraynor
161
25k
Practical Orchestrator
shlominoach
190
11k
Transcript
VRにおける UI設計 土鍋
自己紹介 • 土鍋 • 学部二年 • A-PxL(VR部)代表 • Twitter:@donadonadonabe •
普段はUnityでVRゲームを作ってます • IoTもちょっぴりかじってます→
VRにおける最大の敵とは なんでしょうか??
それは「酔い」です
VR酔いによる影響 • 酔ってしまってゲームに集中できない • 長時間プレイできない • VRは酔っちゃうからもうやらないとなってしまう… →VRコンテンツを作るものとして 「酔い対策」は必須!!
原因 • 平衡感覚と視覚情報の不一致 (空を飛んでいるのに椅子に座っている) • 現実の感覚との著しい違い (解像度が低い、カクつく)
対策 • 視野角の確保 • 遅延をなくす • リフレッシュレート • 解像度を上げる •
トラッキング方法 • VR空間の移動方法 • 急な動作をなくす • VR向けのUI • などなど
対策 • 視野角の確保 • 遅延をなくす • リフレッシュレート • 解像度を上げる •
トラッキング方法 • VR空間の移動方法 • 急な動作をなくす • VR向けのUI • などなど HMDの性能による。 基本的にコンテンツを作る人は関与できない。
VRにおけるUI設計の重要性 • 一番は酔い対策 • VRに慣れていない人でもすぐに理解できる • 次の動きを予測させる (急な動作が演出上必要な際などに利用できる)
UIの完成度が高いゲーム 「Half Life Alyx」
Half Life Alyxから学ぶ VRにおけるUI設計において意識すべき点 • 目線にUIを固定しない →意識がUIに集中した状態で周りの景色が動くとすごく酔う →ゆっくり視線を追従するor空間、手に固定 • 距離(近すぎず遠すぎず)
• サイズ(小さすぎでかすぎ)
Half Life Alyxから学ぶ VRにおけるUI設計において意識すべき点 • オブジェクトに埋まらない →常にオブジェクトの前に • 階層(ネスト)を深くしない →特にVRだとUI操作が増えるのは良くない
• 初心者でもわかりやすく • かっこよく!ロマン叶える!
実際に意識しながらゲームを作ってみた (未完成) • UIも楽しいものにしたい! • かっこよく出現するUI • 初めてプレイする人にも優しく • VRでしかできない体験を!!
→視点に追従する常に表示するUI(HPなど) →手を広げて自由な大きさで開けるメニュー
デモ
詰まったところ • UI向けのTransformがあるので すが、これが曲者 • 3Dゲーム内で2Dを扱う • VRのようにCanvasをすべて World Spaceものでは座標系を
考える際にかなり複雑になる。 • 解像度等もUIと3D空間とで 別々で調整が面倒くさい。
ベクトルとクォータニオン(四元数) • 三次元座標にベクトルを用いるのはさすがに慣れたが、 クオータニオンはまだ慣れない。 • インスペクターではオイラー角のrotationがscriptでは quaternion制御
まとめ • テクスチャやエフェクト、アニメーションをこだわれば良くなり そう。 • バグが大量にあるので修正必須
参考資料 • 実際にデザインしてみる!VRアプリのUIデザインを作るプロセス • クォータニオン (Quaternion) を総整理! ~ 三次元物体の回転と姿勢を鮮 やかに扱う
~ • [Unity][C# Script] 回転を自在にあやつろう。 • 【Unity】2つのベクトル間の角度を求める • RectTransform
ご清聴ありがとうございました