Unity Days

Unity や VR/AR に関すること。たまにblender。

Shader 勉強メモ 「はじめに」

Shader、ずっと前から勉強しようと思っていたが、手を出していなかった。今回は記録を残すことでモチベーションを保っていこうと思います。開発環境はもちろんUnityで。

学習教材/参考資料は「Unityのリファレンス」と「ゲームアプリの数学 Unityで学ぶ基礎からシェーダーまで」と「CGWORLD (シージーワールド) 2013年 10月号 vol.182」、あとは凹みさんの記事や必要に応じて論文などを使っていこうかと。

勉強の進め方は

  1. 参考資料の内容をまとめて記事にする。
  2. 実際に使って確かめる。使った機能や関数などと画像を一緒にまとめて記事にする。
  3. 作ったコードをGithubに公開する。

主に2番でやっていくかと思います。次回から本格的にやっていきます。

CGWORLD (シージーワールド) 2013年 10月号 vol.182:「リアルタイムシェーダー入門」特集があり、p22-p37に歴史や用語がまとまっていたので買った。

tips.hecomi.com

あとshader関連の気になる記事や書籍など

シェーダー - Wikipedia

グラフィックスパイプライン - Wikipedia

床井研究室 - 第3回 シェーダプログラム

固定機能パイプライン | とまと・ソフトウェア製作所

megumisoft.hatenablog.com

 

VR/ARでの文字入力方法(キーボード)まとめ

概要

VR HMD(ヘッドマウントディスプレイ)のOculus Rift, HTC Vive, PSVR, Fove, Daydream, ハコスコ。AR HMDのHololens, meta。

現在、数多くのVR/ARのHMDが世の中に出回っています。これらHMDは周りを見渡したり動き回ったりして使用するため、マウスやキーボードのように机に置くようなデバイスは使い勝手が悪いことが多いです。ということで、その代わりとなるような文字入力方法が色々と考えられています。今回はそれらのデバイスで「どのような文字入力方法(キーボード)が考案/実装されているのか」についてまとめようと思います。

気が向いたら更新すると思います。「あれ、なんか足りなくない?」とかあれば、教えて頂ければうれしいです。

 文字入力方法の種類

  • 従来のキーボードを用いた方法:いつもの入力方法。
  • 「ノート型デバイス」を用いた方法:研究
  • 「コントローラー」を用いた方法 :Oculus Touch / Viveコン / PS Move / Daydreamコン
  • 「ハンドモーションキャプチャ」を用いた方法:Leap Motion / Hololens?
  • 「視線(頭)」を用いた方法:Fove / その他の vr/ar HMD
  • 「音声」を用いた方法:全ての vr/ar HMD
  • スマホHMD」を用いた方法:全ての vr/ar HMD

ノート型デバイスを用いた方法

1.『Poupyrev, Ivan, Numada Tomokazu, and Suzanne Weghorst. "Virtual Notepad: handwriting in immersive VR." Virtual Reality Annual International Symposium, 1998. Proceedings., IEEE 1998. IEEE, 1998.』:ペンとノート型のデバイスを持って使う。現実で持っているノートがVR空間上に現れる。ペンでノートに文字を書けば、VR空間のノートにも同じように書かれる。

ドラムスティック方式

ドラムスティックで従来型キーボードのボタンを押す方式。ブラインドタッチはできなさそう。

1.Drum Keys - Google Daydream Lab: 

2.Cutie Keys - Normal VR : https://github.com/NormalVR/CutieKeys/

 ほとんど同じ。こちらはオープンソース

てんちょー方式

立体方式(両手)・フリック方式(片手)でアルファベットも日本語も入力できる。キー配置の色んなアイデアがあって楽しい。

 扇型方式

yutokun:ハンドコントローラーでVR日本語入力✏ - Qiita

手首をひねって扇形のUIから文字の選択。人差し指のトリガーで文字の決定。スティックの上下で濁音などに対応。文字選択時に振動のフィードバックあり。

GitHub - yutokun/VR-Text-Input: VR Text Input Method for Japanese. 』

フリック方式

コントローラーで スマホフリック入力をできるようにしたもの。

ハンドモーションキャプチャーを用いた方法

Leap Motionを用いた文字入力

1. Leap Motion で日本語の文字入力・文字認識 | Do Design Space

空中に指で文字を描き、手書き文字認識し、入力する。

2.『細野敬太, et al. "Leap Motion を用いたジェスチャ操作による文字入力方法の提案." 人工知能学会全国大会論文集 28 (2014): 1-4.』

3. 将来的に(oculusがPebbles Interfacesを買収してVRグローブを研究しているので、そちらもそのうち出てくると思います。)

視線(頭)を用いた方法

1. Fove:視線を動かしてポインティングする方式

FOVE: The World's First Eye Tracking Virtual Reality Headset by FOVE — Kickstarter

2. その他のHMD:頭を動かしてポインティングする方式。

音声を用いた方法

音声認識用いることでマイクのついているHMDならどれでもできる。

スマホHMDを用いた方法

HoloKeyboard - @sumihiro(twitter):iPhoneからHoloLensに文字入力ができるというもの。このアプリはHolo専用ですが、技術的には他のHMDにも応用可能だと思います。

ヤバいスミヒロ on Twitter: "HoloLensのキーボードとして使えるiPhoneアプリをオープンソースで公開しました。日本語も使えます。 #HoloLens #HoloLensJP #HoloJP
https://t.co/ilTfK10BvO https://t.co/cVb6d5XbJx"

 あとがき

今回は実例ばかりで論文や研究段階のものはあまり調べていません。今後時間があったらチェックしていこうかなと思います。また、情報が不足している部分も後で埋めていこうと思います。