MRTK Docsの視線追跡のSampleの概要を読む
eye tracking Sceneの概要
学ぶこと
・暗黙的な目ベースのアクティブ化
・見ている内容に関する情報を音声と手入力とシームレスに組み合わせる方法
・目の視線入力方向のスクロール
・スレート上のテキストと画像のパンとズーム
使用例
ユーザーは、ターゲットを見て "選択" と言ったり、手のジェスチャを実行したりするだけで、ホログラフィック コンテンツをすばやく簡単に選択してビュー全体を移動
## Demo02
#### 紹介しているもの
・eye gaze Dataにアクセスする方法
・ターゲットを選択するためのeye gaze event
- Look & Say "Select" (default voice command)
- Look & Say "Explode" or "Pop" (custom voice commands)
- Look & Bluetooth button
- Look & Pinch (i.e., hold up your hand in front of you and bring your thumb and index finger together)
- Please note that for this to work, the hand rays need to be disabled
1.視線はメインのポインターとして使用できる
例:ハンドがViewに存在するときは、hand rayをmain pointerとし、ハンドがviewに存在しないときはeye gazeをmain pointerとする
2.視線とhand rayを同時に使用する
例:手で作業をしながら、視線で説明書をスクロールし、完了したら「チェックして」と言う
* eye trackingの基本的な設定
視線は、ほかのフォーカス入力と同じように利用できる。
つまり、コードを変更せずに、MRTKの入力pointer profileでmain focus typeを選択することができる。
* ホログラムに焦点をあてる
ホログラムの焦点が合っていることを検出するには、OnFocusEnterとOnFocusExitの2つのインターフェイスメンバーを提供する「IMixedRealityFocusHandler」インターフェイスを使用する
sample code
public class ColorTap : MonoBehaviour, IMixedRealityFocusHandler { void IMixedRealityFocusHandler.OnFocusEnter(FocusEventData eventData)
{
material.color = color_OnHover;
}
void IMixedRealityFocusHandler.OnFocusExit(FocusEventData eventData) {
material.color = color_IdleState;
} ... }
つづき
Eye Tracking Target Selection - Mixed Reality Toolkit | Microsoft Docs
*焦点のあったホログラムを選択する
IMixedRealityPointerHandlerを使用する。
*視線に特化したフォーカス
an example is
EyeTrackingDemo-03-Navigation
*下のやつは今度みる
unity猫本勉強中(*'ω'*)
昨日はホロ元さんのこちらの記事を勉強していたのですが、
codeが難しいなあと思い、
https://redhologerbera.hatenablog.com/entry/2020/03/31/100000
ワンランク下の勉強をしようと思って
udemyで「3D迷路ゲーム開発入門」というレクチャーをみて、進めていました。
なのですが、レクチャー39でまたまたコードがわからなすぎてつまずき。。。
さらに、ワンランク下げて、もっとコードの基礎を学習しないといけないと思い
Unityの教科書(猫本)を読んでいます。
この本のp.91 平均値を求めるサンプルのコード解釈でまたまたつまずきました。
誰のためのデザイン?
〇理解
→内的な記憶のより強力な在り方の1形態
説明と解釈にはメンタルモデルが重要な役割を果たしている。
・必要とされる行動の詳細をメンタルモデルに基づいて引き出すことができる
・メンタルモデルさえあれば、自分で経験したことではなくても、何が起こるかということを引き出すことができる。
・行動の詳細を引き出す作業には、時間と心的資源が必要になるが、メンタルモデルを使用することでそれらを滑らかに実行することができる
メンタルモデルとは、そのできごとの一連の流れ、原因、と結果。実際に作業をしていて問題にあたったとき、メンタルモデルがあれば新しい場面で何が起きるか推測することができる。
しかし、ユーザーは間違ったモデルを勝手に作ってしまうので、モデルがわかるように提供することが必要である;。
〇思い出すこと
思い出させるものには、シグナルとメッセージが必要。
何か思い出さなくてはいけないことがあるというシグナルと、それが何であるかというメッセージ
メモはいつ見たらよいのかについて思い出させてくれない。
アプリ案:毎日の予定や約束を思い出させてくれるもの
Shader勉強5日目_Tag、Pragma構造体
今日もホロ元さんのコチラの記事を学習していきます。
https://redhologerbera.hatenablog.com/entry/2020/03/31/100000
〇Tag
Tagには、subchader内のTagと、GameobjecyにつけるTagがあります。
subchader内のTagでは、どのように描画するか(点を打つか)を決めます。
<subchader内のTag 主要そうなものの種類>
- Queue(キュー):描画する順序を指定する。
- RenderType:不透明や半透明の機能を設定できます。
大庭さんのこちらの記事もとても参考になります。
https://www.shibuya24.info/entry/shader_pass_tag
GameObjectタグは、ゲーム内のオブジェクトを識別するために使用します。
<subchader内のTag 主要そうなものの種類>
- Respawn:復活
- Finish:クリア
- EditorOnly:Unity エディタ上でのみ存在するゲームオブジェクトになります
アタッチしたスクリプトも動かなくなります。※http://baba-s.hatenablog.com/entry/2014/08/07/093316 - Main Camera
- Player
- Game Controller
〇Pragma構造体
Shaderをどのように出力するかを定義する。
さくたろうさんの記事も参考にしました。
https://soramamenatan.hatenablog.com/entry/2019/06/22/211220
Shader勉強4日目
今日はホロ元さんのブログ「UnityでShaderを勉強する その③ 実際にShaderの中身を見ていく」を学習します。
https://redhologerbera.hatenablog.com/entry/2020/03/31/100000
ホロ元さんの記事では、unity公式HPのビルトインのライティングモデルの使用方法を説明しているページを参照しています。
https://docs.unity3d.com/jp/current/Manual/SL-SurfaceShaderExamples.html
ビルトインは、内蔵(の)、組み込み(の)、作り付け(の)、生来の、本来備わっている、固有の、などの意味を持つ英単語のようです。なので、unityに備え付けられている光のモデルのような意味だとおもいます。
ここからは気合をいれて、
〇Diffuse SimpleShaderの中身をみていきます。((*'ω'*)
私がさっそくつまずいたのは、公式に記述されているこのプログラムがどこにあるのかということです。addcomponentでscriptを作成したときのコードとは違っています。
shaderをくっつけた、materialのInspectorの右上⚙マークをクリックすると、edit Shaderをという項目がありました。
Edit shaderをクリックして、さらにCombile and show codeをクリックすると
でてきました!なんだか思ったよりずっと長いですし、たぶん名称もsampleではないので、違うとおもうのですが、とりあえずこれで良しとします。
私がみつけてきたshaderは激ムズだったので、勉強したいshaderを①から書くことにします。
とおもって、全部消して書いたのですがうまく実行されませんでした。方法を変えて、assets→create→shader でshaderを作成し、openから開いたスクリプトで作業すると、反映されました。open と Compile and show code の違いは何だろう?
Shader勉強3日目
本日はホロ元さんの「unityでShaderを勉強する その②」をみていきます。
https://redhologerbera.hatenablog.com/entry/2020/03/30/100000
unityのShaderは、「shader Lab 」と「HLSL」という二つの言語の塊で構成されているようです。
また、shader Labの中身には、プロパティとプロパティの処理方法とプロパティの処理が上手くいかなかった場合の結果を記載するようです。
shader = shader Labのことで、shader lab がマテリアルとHLSLを結び付けていると理解しました。
Fintech協会主催「アフターコロナの世界に向けて」
Fintech協会主催「
コロナをきっかけに、世界的に生活スタイルが変容していますが、これからの時代の諸々はどのようになるか、ということについてのパネルディスカッションです。
<トピック>
・シェアリングエコノミー時代における信頼→分散化された信頼
旧:厚労省による認定・上場基準クリア
新:使用者の集合による評価レビューシステム
・セレンディピティの設計
源体験を持っているかどうかがクリティカルマスになるのではないか
AR/VR
・デジタル化にシフトしたい人、したくない人の差
明治維新(変革がうまくいったときの日本)は、変革のため教育や言語までをも変えた。教育機関をしてのマスコミが何ができるかも重要。
・out comeベース
テレワーク時代は、プロセスではなくアウトカムベースでのバリューをみる時代。
それなのに、ちゃんと在宅しているか監視するための謎のプロセス管理ツールがでてくるのでは意味がない。
・ブロックチェーンはまだreadyの状態ではない
COVIDのコンタクトレースアプリも、既存は分散型の考えをもとに、アプリは集約型で作成している。
(分散型の考えってなに??って理解できなかったです)
・マイナンバーカード
マイナンバーカードが普及するかどうか、というよりも、指標?(違う用語だったような)として使用できるかどうかが重要。たとえば、コロナウイルスの抗体をもっているかどうかが、将来発展途上国等に渡航する際に必要となる可能性がある。(証明できなければ、入国できない)そのようになれば、経済打撃が大きいので、あるウイルスの予防接収をうけているかを、マイナンバーカードと紐づける仕組みが必要。