Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
hecomi
PPTX, PDF
14,343 views
HoloLens x Graphics 入門
Tokyo HoloLens Meetup vol.2 での LT 発表資料です
Software
◦
Read more
16
Save
Share
Embed
Embed presentation
Download
Downloaded 33 times
1
/ 33
2
/ 33
3
/ 33
4
/ 33
5
/ 33
6
/ 33
7
/ 33
8
/ 33
9
/ 33
10
/ 33
11
/ 33
12
/ 33
13
/ 33
14
/ 33
15
/ 33
16
/ 33
17
/ 33
18
/ 33
19
/ 33
20
/ 33
21
/ 33
22
/ 33
23
/ 33
24
/ 33
25
/ 33
26
/ 33
27
/ 33
28
/ 33
29
/ 33
30
/ 33
31
/ 33
32
/ 33
33
/ 33
More Related Content
PDF
HoloLens x iPad
by
hecomi
PDF
Unityで始めるHoloLensアプリ開発
by
kazuya noshiro
PPTX
広告目線から見たHoloLens - 坪倉輝明
by
Teruaki Tsubokura
PPTX
Holo toolkit unityでできること
by
Naoaki Yamaji
PDF
HoloLensでSharingする方法(Bluetooth編)@TokyoHoloLensMeetup vol.6
by
akihiro yamamoto
PDF
HoloLens x IoT 試すときによくやる実装
by
Seigo Tanaka
PDF
HoloLensでImage-Based Lightingを試してみた話
by
Soichiro Sugimoto
PPTX
Holo lensを普段使いするとしたら
by
Naoaki Yamaji
HoloLens x iPad
by
hecomi
Unityで始めるHoloLensアプリ開発
by
kazuya noshiro
広告目線から見たHoloLens - 坪倉輝明
by
Teruaki Tsubokura
Holo toolkit unityでできること
by
Naoaki Yamaji
HoloLensでSharingする方法(Bluetooth編)@TokyoHoloLensMeetup vol.6
by
akihiro yamamoto
HoloLens x IoT 試すときによくやる実装
by
Seigo Tanaka
HoloLensでImage-Based Lightingを試してみた話
by
Soichiro Sugimoto
Holo lensを普段使いするとしたら
by
Naoaki Yamaji
What's hot
PPTX
HoloLensStartdash_v1.5
by
Naoaki Yamaji
PPTX
HoloLensの魅力とビジネス利用
by
Yusuke Furuta
PPTX
やんちゃでかしこいあいぼうをHoloLensで操作してみた
by
Kohsuke Nakagawa
PPTX
自分で作ったHoloLensアプリを他業種の人に見せてみた
by
Shinnosuke Oka
PPTX
20171030_HoloLens読書会vol.1発表資料
by
Shingo Mori
PPTX
画像から深度推定 on HoloLens
by
matsunoh
PDF
HoloLensでIoT制御してみて感じる未来
by
Seigo Tanaka
PDF
HoloLensとBluetooth SensorTagをつなげた話
by
Seigo Tanaka
PPTX
Holo lens × ue4での開発について
by
Naoaki Yamaji
PDF
Adobe XDをHoloLensで表示させて考えるいろいろな可能性
by
Seigo Tanaka
PDF
Osaka holo lens hackathon 2021 HoloMoto
by
AsahiSakamoto
PDF
ひとまずHoloLensと自分の周辺技術(WEB・IoT)と混ぜた話
by
Seigo Tanaka
PDF
Xrmeating2021
by
AsahiSakamoto
PDF
第4回HoloLens参考書読書会発表資料
by
Masahiro Ide
PDF
なにかが起きるで考えるWEB、そしてIoT・Mixed Reality
by
Seigo Tanaka
PPTX
Holoニュースとか(2019_08)
by
Naoaki Yamaji
PPTX
Holoニュースとか(2020 02)
by
Naoaki Yamaji
PPTX
Win mrモーションコントローラーについての所感
by
Naoaki Yamaji
PPTX
TGSでのXR系展示レポ
by
Naoaki Yamaji
PDF
HoloLens_MeetupVal22 HoloMoto
by
AsahiSakamoto
HoloLensStartdash_v1.5
by
Naoaki Yamaji
HoloLensの魅力とビジネス利用
by
Yusuke Furuta
やんちゃでかしこいあいぼうをHoloLensで操作してみた
by
Kohsuke Nakagawa
自分で作ったHoloLensアプリを他業種の人に見せてみた
by
Shinnosuke Oka
20171030_HoloLens読書会vol.1発表資料
by
Shingo Mori
画像から深度推定 on HoloLens
by
matsunoh
HoloLensでIoT制御してみて感じる未来
by
Seigo Tanaka
HoloLensとBluetooth SensorTagをつなげた話
by
Seigo Tanaka
Holo lens × ue4での開発について
by
Naoaki Yamaji
Adobe XDをHoloLensで表示させて考えるいろいろな可能性
by
Seigo Tanaka
Osaka holo lens hackathon 2021 HoloMoto
by
AsahiSakamoto
ひとまずHoloLensと自分の周辺技術(WEB・IoT)と混ぜた話
by
Seigo Tanaka
Xrmeating2021
by
AsahiSakamoto
第4回HoloLens参考書読書会発表資料
by
Masahiro Ide
なにかが起きるで考えるWEB、そしてIoT・Mixed Reality
by
Seigo Tanaka
Holoニュースとか(2019_08)
by
Naoaki Yamaji
Holoニュースとか(2020 02)
by
Naoaki Yamaji
Win mrモーションコントローラーについての所感
by
Naoaki Yamaji
TGSでのXR系展示レポ
by
Naoaki Yamaji
HoloLens_MeetupVal22 HoloMoto
by
AsahiSakamoto
Similar to HoloLens x Graphics 入門
PDF
Microsoft Holographicってなに?来年、Windows 10に来るらしいぜ?
by
Akira Hatsune
PPTX
HoloLensアプリの臨場感を高める技術
by
Hiroki Tanaka
PPTX
HoloLens光学系の謎に迫る
by
AmadeusSVX
PDF
Spl006 mixed reality_の世界へようこ
by
Tech Summit 2016
PPTX
お絵描きアプリで考えるHoloLensUI
by
Shinichiro Danno
PPTX
HoloLens/Windows Mixed Reality Device開発環境構築(2018/5版)
by
Takahiro Miyaura
PDF
HoloLens FirstImpression v2
by
c-mitsuba
PPTX
HoloLens/Windows Mixed Reality開発環境構築
by
Takahiro Miyaura
PDF
Hololensに感じる未来と魅力
by
AsahiSakamoto
PPTX
Holographic Remoting を試してみた
by
Tatsuya Sakai
PDF
HoloLens×アクセシビリティ
by
AsahiSakamoto
PPTX
Holo meetup3 lt_yamanaka
by
daisuke yamanaka
PDF
HoloLens 2Dでもここまでできる
by
Akira Hatsune
PDF
ノンプログラミングで始めようHoloLensコンテンツ開発
by
Takashi Yoshinaga
PDF
楽しんで始めるHoloLensアプリ設計
by
A AOKI
PPTX
2018/01/17 第3回 HoloLens 参考書読み会発表資料
by
Yusuke Furuta
PPTX
HoloLens RS4
by
Shinya Tachihara
PDF
20160723 unibook lt大会_発表資料(HoloLensのアプリ開発)
by
WheetTweet
PDF
Xrmtg0617 オリジナルUIを作っている話
by
AsahiSakamoto
PDF
HoloLens勉強会#01
by
Akira Hatsune
Microsoft Holographicってなに?来年、Windows 10に来るらしいぜ?
by
Akira Hatsune
HoloLensアプリの臨場感を高める技術
by
Hiroki Tanaka
HoloLens光学系の謎に迫る
by
AmadeusSVX
Spl006 mixed reality_の世界へようこ
by
Tech Summit 2016
お絵描きアプリで考えるHoloLensUI
by
Shinichiro Danno
HoloLens/Windows Mixed Reality Device開発環境構築(2018/5版)
by
Takahiro Miyaura
HoloLens FirstImpression v2
by
c-mitsuba
HoloLens/Windows Mixed Reality開発環境構築
by
Takahiro Miyaura
Hololensに感じる未来と魅力
by
AsahiSakamoto
Holographic Remoting を試してみた
by
Tatsuya Sakai
HoloLens×アクセシビリティ
by
AsahiSakamoto
Holo meetup3 lt_yamanaka
by
daisuke yamanaka
HoloLens 2Dでもここまでできる
by
Akira Hatsune
ノンプログラミングで始めようHoloLensコンテンツ開発
by
Takashi Yoshinaga
楽しんで始めるHoloLensアプリ設計
by
A AOKI
2018/01/17 第3回 HoloLens 参考書読み会発表資料
by
Yusuke Furuta
HoloLens RS4
by
Shinya Tachihara
20160723 unibook lt大会_発表資料(HoloLensのアプリ開発)
by
WheetTweet
Xrmtg0617 オリジナルUIを作っている話
by
AsahiSakamoto
HoloLens勉強会#01
by
Akira Hatsune
More from hecomi
PDF
ゲーム x リアル - Mont Blanc Pj. & LITTAI -
by
hecomi
PDF
ガジェットやサービスを組み合わせて出来る生活の紹介とその考察 - おうちハックナイト/ 野生のおうちハック セッション 1
by
hecomi
PDF
おうちハック勉強会2
by
hecomi
PDF
ハッピーおうちハッキング - 第2回おうちハック勉強会 キーノートトーク
by
hecomi
PDF
手の形状とか距離とか分かるスクリーン作ってみた@透明ごっちゃ煮技術交流会
by
hecomi
PDF
第5回 ニコニコ学会β 研究してみたマッドネス Mont Blanc Pj.(レゴへのプロジェクションマッピング)
by
hecomi
PDF
Oculus Rift meets Mixed Reality World (裏 Ocufes #1)
by
hecomi
PDF
Hello, C++ + JavaScript World! - Boost.勉強会 #11 東京
by
hecomi
PDF
Node.js × 音声認識 - 東京Node学園 2012 LT枠 6番目
by
hecomi
PDF
モテる! Node.js でつくる twitter ボット制作
by
hecomi
ゲーム x リアル - Mont Blanc Pj. & LITTAI -
by
hecomi
ガジェットやサービスを組み合わせて出来る生活の紹介とその考察 - おうちハックナイト/ 野生のおうちハック セッション 1
by
hecomi
おうちハック勉強会2
by
hecomi
ハッピーおうちハッキング - 第2回おうちハック勉強会 キーノートトーク
by
hecomi
手の形状とか距離とか分かるスクリーン作ってみた@透明ごっちゃ煮技術交流会
by
hecomi
第5回 ニコニコ学会β 研究してみたマッドネス Mont Blanc Pj.(レゴへのプロジェクションマッピング)
by
hecomi
Oculus Rift meets Mixed Reality World (裏 Ocufes #1)
by
hecomi
Hello, C++ + JavaScript World! - Boost.勉強会 #11 東京
by
hecomi
Node.js × 音声認識 - 東京Node学園 2012 LT枠 6番目
by
hecomi
モテる! Node.js でつくる twitter ボット制作
by
hecomi
HoloLens x Graphics 入門
1.
HoloLens×Graphics入門 Tokyo HoloLens Meetup
vol.2 - 2017/03/15 hecomi
2.
はじめに
3.
はじめに • HoloLens で見られる面白い表現の解説 •
本発表のサンプルのコードは以下で公開: • https://github.com/hecomi/HoloLensPlayground • 詳細な解説は別途ブログにまとめます(一部まとめ済み)
4.
自己紹介 凹(hecomi) @hecomi http://tips.hecomi.com
5.
HoloLens に見られる表現
6.
HoloLens に見られる表現 • VR
や普通のゲームとは違う表現の仕方・工夫が色々とある • こういった表現のうち基本的な幾つかを紹介・解説 • バーチャルなオブジェクトを実在感を高める • バーチャルなオブジェクトの実在感を損なわないようにする
7.
実在感を高める • リアルなものでオブジェクトを遮蔽
8.
実在感を高める • 壁に穴をあけて別の世界を表示
9.
実在感を高める • 空間マッピングの提示
10.
実在感を損なわない • ニアクリップの表現の工夫
11.
実在感を高める
12.
別の世界への入り口をつくる Unlit/Color で (0,
0, 0, 1)公式チュートリアル Holograms 101 • HoloLens では黒色が透明になる • 穴の空いた黒いモデルを用意すれば穴空き表現が可能
13.
別の世界への入り口をつくる // a =
オブジェクトのアルファ (現実の色 × (1 - a)) +オブジェクトの色 × a (現実の色 × バイザの黒半透明)+ オブジェクトの色 目に見える情報 キャプチャの情報 簡単な説明(※正確ではないので注意) ※ https://developer.microsoft.com/ja-jp/windows/holographic/case_study_-_looking_through_holes_in_your_reality • ただし黒を描画するとキャプチャ時に黒になってしまう
14.
別の世界への入り口をつくる Shader "HoloLens/Occlusion" { SubShader { … Pass { ColorMask 0 ZWrite
On CGPROGRAM #pragma vertex vert #pragma fragment frag ENDCG } } } 色は出力しないが、 デプスは出力する • これを回避するには ColorMask 0 をする
15.
リアルなものでオブジェクトを遮蔽 • 同じマテリアルを空間マッピングで認識したモデルに割り当てれば、現実のもの でバーチャルなオブジェクトを遮蔽できる • HoloToolkit-Unity
の Occlusion マテリアルがそれに該当 • = 認識した空間のデプス情報だけをゲームに書き込む
16.
壁に穴をあけて別の世界を表示 • 決め打ちの穴空きモデルではなく動的に穴をあけてみる
17.
壁に穴をあけて別の世界を表示 • ステンシルバッファを利用 • 見えないバッファ領域にマスク情報などを書き込める •
詳細はこちら: http://tips.hecomi.com/entry/2017/02/18/190949
18.
ステンシルバッファ 最終的な出力 ステンシルバッファにマスクを書き込み 画は出力しない マスクされた場所を調べる マスクされた場所に描画 マスクされた場所以外を調べる マスクされた場所以外に描画 OR OR … マスク用オブジェクト
描画オブジェクト Stencil { Ref [_Mask] Comp Equal } Stencil { Ref [_Mask] Comp NotEqual } Stencil { Ref [_Mask] Comp Always Pass Replace } 壁に穴をあけて別の世界を表示
19.
壁に穴をあけて別の世界を表示 • 方法1:次の順で描画 1. 窓をマスクにしたオブジェクト 2.
マスク領域以外に壁
20.
壁に穴をあけて別の世界を表示 • 方法2:次の順で描画 1. 窓をマスクにしたオブジェクト 2.
マスク領域にオブジェクト 壁の穴あけとハイブリッドにしても OK
21.
空間マッピングの提示 • デフォルト(HoloToolkit-Unity)の方法 • 認識した壁をワイヤーフレーム表示 •
ジオメトリシェーダで処理 • ジオメトリシェーダで各ポリゴン内の各頂点から対 辺までの距離を求め、フラグメントシェーダでその 距離を参照して線になる場所を色塗り HoloLens は シェーダモデル 5.0 が使える!
22.
空間マッピングの提示 • ワールド座標を使えば色々と面白表現ができる • ここでいうワールド座標はゲーム内だけでなく現実の座標とも考えられる struct
v2f { float3 worldPos : TEXCOORD0; ... }; v2f vert(appdata_base v) { ... o.worldPos = mul(unity_ObjectToWorld, v.vertex); ... } inline float toIntensity(float3 pos) { return frac(length(pos) - _Time.y); } fixed4 frag(v2f i) : SV_Target { float3 worldIndex = floor(i.worldPos.xyz * _TilesPerMeter); float3 boxelCenter = worldIndex / _TilesPerMeter; float intensity = toIntensity(boxelCenter); return _Color * intensity; } ワールド座標を使って空間をボクセルに区切る
23.
空間マッピングの提示 • ワールド座標を使えば色々と面白表現ができる • ここでいうワールド座標はゲーム内だけでなく現実の座標とも考えられる
24.
空間マッピングの提示 • スクリプト連携で壁にエフェクトを出す Physics.Raycast r =
speed * time center
25.
実在感を損なわないようにする
26.
ニアクリップ表現の工夫 https://developer.microsoft.com/en-us/windows/holographic/Hologram_stability.html より • HoloLens
では 0.85 m という比較的遠目のニアクリップが推奨 • 現実のオブジェクトとの整合
27.
ニアクリップ表現の工夫 https://developer.microsoft.com/en-us/windows/holographic/Hologram_stability.html より ここの表現が大事 • HoloLens
では 0.85 m という比較的遠目のニアクリップが推奨 • 現実のオブジェクトとの整合
28.
ニアクリップ表現の工夫 • ホーム画面では近づいたとき黒くなる • Fragments
ではポリゴン分解
29.
ニアクリップ表現の工夫 • 再現してみる
30.
ニアクリップ表現の工夫 • 頂点シェーダでカメラまでの距離を頂点ごとに取得 • 頂点カラーに開始・終了距離から算出した度合いを掛ける •
透明にしても良いが透明オブジェクトはコスト高なので注意 float4 worldPos = mul(unity_ObjectToWorld, v.vertex); float3 dist = length(_WorldSpaceCameraPos - worldPos); fixed darkness = clamp((_Start - dist) / (_Start - _End), 0.0, 1.0); o.color *= darkness;
31.
ニアクリップ表現の工夫 [maxvertexcount(3)] void geom(triangle appdata_t
input[3], inout TriangleStream<g2f> stream) { for (int i = 0; i < 3; ++i) { ... float4 worldPos = mul(unity_ObjectToWorld, v.vertex); float3 dist = length(_WorldSpaceCameraPos - worldPos); fixed destruction = clamp((_Start - dist) / (_Start - _End), 0.0, 1.0); ... v.vertex.xyz = (v.vertex.xyz - center) * (1.0 - destruction * _Scale) + center; v.vertex.xyz = rotate(v.vertex.xyz - center, random * destruction * _Rotation) + center; v.vertex.xyz += v.normal.xyz * destruction * _Position * random; o.vertex = UnityObjectToClipPos(v.vertex); ... stream.Append(o); } stream.RestartStrip(); } • ポリゴン分解はジオメトリシェーダを経由すると簡単 自動で頂点がバラバラになってくれる
32.
まとめ
33.
まとめ • HoloLens 特有の表現をいくつか解説 •
シェーダを使えると表現の幅が広がる • 本発表のサンプルプロジェクトは以下からダウンロード可: • https://github.com/hecomi/HoloLensPlayground
Download