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
Azure Kinect の点群を軽率にVFX Graphで表示する
Search
にー兄さん
June 18, 2020
Technology
0
1.1k
Azure Kinect の点群を軽率にVFX Graphで表示する
社内の勉強会発表したLT資料です
にー兄さん
June 18, 2020
Tweet
Share
More Decks by にー兄さん
See All by にー兄さん
UnJSを使って軽率にCLIを作ってみたらめちゃくちゃ便利だった / create CLI with UnJS
drumath2237
4
1.1k
create-babylon-appを軽率にアプデしたい / update create babylon app
drumath2237
1
1.2k
Babylon.js 7注目機能を 軽率にまとめてみる/whats-new-in-babylonjs-v7
drumath2237
1
150
軽率にVFX Graphと Compute Shaderを 組み合わせるテクニック/integrate-vfxgraph-and-compute-shader
drumath2237
1
190
軽率にVue 3で リアルタイム3Dアプリを作れる ライブラリを作ってみた/vue-with-3d-app
drumath2237
3
1.7k
軽率にBabylon.jsを C#で使う技術 / using-babylonjs-with-csharp
drumath2237
1
590
今こそ軽率に理解したい WebXR Device APIとBabylon.jsの話 / understand-webxr-device-api-and-babylonjs
drumath2237
0
93
Vue・Babylon連携ライブラリ BabyuewJSについて / about-babyuewjs
drumath2237
0
140
軽率にBabylon.jsの WebGPUエンジンを使って ComputeShaderに入門した / learn-about-babylonjs-webgpu-computeshader
drumath2237
0
550
Other Decks in Technology
See All in Technology
Evolving DevOps Teams and Flexible Organizational Culture
kakehashi
1
180
ビジネスとエンジニアリングを繋ぐプロダクトを中心とした組織づくりの実践
sansantech
PRO
1
130
Functional TypeScript
naoya
10
4k
忙しい人のためのLangGraph概要まとめ
__ymgc__
0
100
The XZ Backdoor Story
fr0gger
0
2.5k
標準ライブラリの奥深アップデートを掘り下げよう!
logica0419
2
430
HolidayJp.jl を作りました
mrkn
0
120
LandingZoneAccelerator と学ぶ 「スケーラブルで安全なマルチアカウントAWS環境」と 私たちにもできるベストプラクティス
maimyyym
1
120
[RSJ24] Task Success Prediction for Open-Vocabulary Manipulation Based on Multi-Level Aligned Representations
keio_smilab
PRO
0
230
RAGHack: Kickoff and RAG 101
pamelafox
0
270
技術力あげたい
hisaichi5518
2
2.9k
Oracle Database Backup Service:サービス概要のご紹介
oracle4engineer
PRO
0
4k
Featured
See All Featured
What the flash - Photography Introduction
edds
67
11k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
363
22k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
225
22k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.2k
Documentation Writing (for coders)
carmenintech
65
4.3k
Designing with Data
zakiwarfel
98
5k
Bash Introduction
62gerente
608
210k
Practical Orchestrator
shlominoach
185
10k
How to name files
jennybc
75
98k
The Pragmatic Product Professional
lauravandoore
30
6.2k
In The Pink: A Labor of Love
frogandcode
139
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
157
15k
Transcript
Azure Kinect の点群を軽率に VFX Graphで表示する にー兄さん@Unity 2019.4リリースノート読む会
agenda 背景とか VFX Graphについて AzureKinectとVFX Graph おわりに
スライドって公開しちゃって大丈夫ですかね...? (大丈夫だったらSpeakerDeckに上げます)
背景とか
Twitterを見ていればわかるのですが 8~9割の人類はすでに 点群を扱ったプログラムを書いている →
Twitterを見ていればわかるのですが 8~9割の人類はすでに 点群を扱ったプログラムを書いている
Twitterを見ていればわかるのですが 8~9割の人類はすでに 点群を扱ったプログラムを書いている →やるか...。
なんとなく点群に憧れがあった もともとKinectを使ったモーションキャプ チャを制作していた Body Trackingしか使ったことない... せっかくk4aをお借りできたので やるか→シェーダ書けない...
VFX Graphについて
2019.4のPVでも取り上げられた 2018.4でも使えた機能ではある リリースノートの見ると ”ノード”が新しく追加されてたり (後述)
Unityの新しいパーティクルシステム 名称 特徴 制約 従来 shuriken CPUパーティクル、設定画面が煩雑 特になし 最新 VFX
Graph GPUパーティクル、ノードベース SRP推奨 SRPによって大幅に改良されたパーティクルシステムという感じ 操作性、表現力、性能、が強化されている
VFX Graphの概観 パーティクルの挙動をノードで管理
VFX Graphの概観 Spawn→Initialize→Update→Outputコンテキストノードで構成される
VFX Graphの概観 Operatorノードをつなぐことで複雑な挙動を定義
VFX Graphの概観 Property Binderによって外部の値を読み込む
VFX Graphの概観 Updateでイベントを発火 →ほかのGraphに通知 →別のパーティクルをSpawn trail(軌跡)のような表現が可能に
demo!
AzureKinectとVFX Graph
参考にした記事(ほぼそのまま) yoshinagaさんの 『C#で始めるAzure Kinect開発⑥:Unity+C#でPoint Cloud表示』 https://tks-yoshinaga.hatenablog.com/entry/azurekinect-6 maoさんの 『Face Tracking with
ARKit + Visual Effect Graph(VFX Graph)で遊んでみる』 https://qiita.com/mao_/items/0fffc84b2b16cf680f80
手順 AzureKinectで 点群を取得 depthを AttributeMap に変換 VFXでMapを 読み込み
手順 AzureKinectで 点群を取得 depthを AttributeMap に変換 VFXでMapを 読み込み C#スクリプト C#スクリプト
+ComputeShader VFX Graph
depth情報の取得 記事の通りにコードを書いていく 今回は色情報はいらないので深度情報だけ取得
depthをComputeShaderに渡す depth情報をbufferに載せて ComputeShaderに渡す
AttributeMap VFXは配列での受け渡しをサポートし ていない 点群の情報をMapとして渡す
VFX Graphに読み込む PositionをMapとして読み込む
おわりに
まとめ VFX Graphを使えば、簡単にエフェクトが作れる Mapを使えば点群を扱うこともできる 今後の動向に期待!
参考 yoshinagaさんの 『C#で始めるAzure Kinect開発⑥:Unity+C#でPoint Cloud表示』 https://tks-yoshinaga.hatenablog.com/entry/azurekinect-6 maoさんの 『Face Tracking with
ARKit + Visual Effect Graph(VFX Graph)で遊んでみる』 https://qiita.com/mao_/items/0fffc84b2b16cf680f80 keijiro先生のサンプル https://github.com/keijiro/Smrvfx