Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ARDKハンズオン1のメインスライド
Search
ppengotsu
June 17, 2022
Technology
900
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ARDKハンズオン1のメインスライド
ppengotsu
June 17, 2022
More Decks by ppengotsu
See All by ppengotsu
ARDKハンズオン1用に準備して欲しいこと
ppengotsu
0
570
Other Decks in Technology
See All in Technology
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
React Nativeでの OTA Updateって、 どう説明する?
ichiki1023
0
120
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
200
Swap and Memory Reclaim - Squeezing Out More RAM
ennael
PRO
1
1.4k
Account Factory for Terraformによる 標準化されたアカウント発行の自動化
pensuke628
0
120
Mastering Agentic Development: Harness Engineering for Effective Coding Agents
konippi
3
660
TiDBファミリーにDWHが新登場!! TiDB最新情報 / TiDB update 202609
yoshiakiyamasaki
0
160
GitHub Agentic Workflows を触ってみる
htkym
2
880
The seven pitfalls of AI (revised version)
ufried
0
140
10年欲しかった音楽管理アプリを、AIと一緒に作りはじめた
judau
1
190
HacobuにおけるFDEとは/登壇資料(戸井田 裕貴)
hacobu
PRO
1
620
営業オントロジーの作り方と、エージェントからの辿り方 ── ナレッジワークの現場から
kworkdev
PRO
1
200
Featured
See All Featured
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Product Roadmaps are Hard
iamctodd
55
13k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
Test your architecture with Archunit
thirion
2
2.4k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
600
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
290
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
600
Transcript
#ARDKUG Zoomで質問受付中 Niantic Lightship ARDK online Hands-on workshop #1 佐久間捷矢
/ デザイニウム 1
#ARDKUG Zoomで質問受付中 登壇者 2 Designium @ppengotsu 佐久間 Niantic 白石 Designium
@marikocco マリコ Niantic Joe
#ARDKUG Zoomで質問受付中 ハンズオンの質疑など 3 エラーで詰まった場合などは、Discordの”〇〇” Zoomのチャットで質問くださ い。 zoomは、いいね!👍などリアクションもお願いします 人数が人数ですので、もし自分のところでは、そのエラーなおったよー!みたい な方いたら、返信お願いします。
Twitterで制作物などをつぶやくときは、#ARDK #ARDKUG をつけてツイートし てもらえるとたすかります。
#ARDKUG Zoomで質問受付中 本日の流れ 4
#ARDKUG Zoomで質問受付中 ARDKの説明の前に、、 5
#ARDKUG Zoomで質問受付中 Unityで新規プロジェクトを作成 6 Unity2021.3.3f1で、新規3D(URP)プロジェクトを作成してください。 作成後、プラットフォームをiOSに変更してください。
#ARDKUG Zoomで質問受付中 ARDKの簡単な説明 7
#ARDKUG Zoomで質問受付中 ARDKとは? 8 NianticのLightshipに属するAR SDKとなります Niantic Lightship ARDK VPS
#ARDKUG Zoomで質問受付中 ARDKを使った例 9 https://youtu.be/bQ8lUzU52Pc
#ARDKUG Zoomで質問受付中 ARDKの特徴 10 特徴は、4つあります。 • メッシュ • セマンティックセグメンテーション •
マルチプレイヤー • VPS ←New!!
#ARDKUG Zoomで質問受付中 ARDKの特徴 - メッシュ機能 11 • iPhone8以上 • 2018年以降発売のハイエンド
Android であれば、周りの環境に合わせて、 メッシュを生成できます。 https://youtu.be/4m_rdpFxJao この後、一緒に作ります。
#ARDKUG Zoomで質問受付中 ARDKの特徴 - セマンティックセグメンテーション機能 12 後半、この機能のサンプル で遊びます。 https://www.youtube.com/watch?v=fpKNd2LKAuk &t=3s
#ARDKUG Zoomで質問受付中 ARDKの特徴 - マルチプレイヤー機能 13 iOS、Androidを相互に繋ぎ、 複数端末を同期したARを作成できます。 サーバは、Nianticが稼働させている ものを使います
後半、この機能のサンプル で遊びます。 https://youtu.be/bQ8lUzU52Pc
#ARDKUG Zoomで質問受付中 ARDKの特徴 - VPS機能 14 現実の位置に合わせて、3Dモデルを 設置できるようになる機能です。 詳細 https://lightship.dev/docs/ardk/vp
s/concepts_and_terminology.html https://www.youtube.com/watch?v=wwFiZ7CU9LE &t=24s
#ARDKUG Zoomで質問受付中 ARDKの特徴 15 特徴は、4つあります。 • メッシュ • セマンティックセグメンテーション •
マルチプレイヤー • VPS ←New!!
#ARDKUG Zoomで質問受付中 ARDKの簡単な説明は終わり 16
#ARDKUG Zoomで質問受付中 初級編2の実践 17
#ARDKUG Zoomで質問受付中 目標 18
#ARDKUG Zoomで質問受付中 情報 19 参考元ブログ https://note.com/thedesignium/n/nbfba2a831469 ブログは、少し古いARDKかつ、旧式レンダーラインで環境構築したものです。
#ARDKUG Zoomで質問受付中 ステップ一覧 20 1. PlayerSettingsの変更 2. ARDK本体のインポート 3. ARDKライセンスキー発行
4. ARDKライセンスキーの設定 5. URP特有の設定 6. シーン作成 7. メッシュ生成機能の設定 8. ボールを飛ばす設定 9. ビルド
#ARDKUG Zoomで質問受付中 PlayerSettingsの変更 21 Bundle Identifier 各自(xcodeで設定し てもよい) Camera
Usage Desciption “ForAR”などいれてく ださい Location Usage Desciption “ForAR”などいれてく ださい
#ARDKUG Zoomで質問受付中 ARDK本体のインポート 22 事前準備でダウンロード済みのARDK本体を Unityにインポートしてください ARDK本体のダウンロード先 https://lightship.dev/account/downloads 途中表示される アラートはYESでよいです。
#ARDKUG Zoomで質問受付中 ARDKライセンスキー発行 -1 23 https://lightship.dev/account/projects
#ARDKUG Zoomで質問受付中 ARDKライセンスキー発行 -2 24 https://lightship.dev/account/projects わかりやすいものにしておくとよい わかりやすいものにしておくとよい ライセンス発行するボタン
#ARDKUG Zoomで質問受付中 ARDKライセンスキー発行 -3 25 https://lightship.dev/account/projects ここのボタンで、ライセンスキーをコピーします
#ARDKUG Zoomで質問受付中 ARDKライセンスキーの設定 26 Unityプロジェクトへ戻ります。 1. /Assets/Resources/ARDK フォルダを作成 2. 作成したフォルダで右クリックして
ArdkAuthConfigを作成 3. Api keyに、さきほどコピーしたキーを設定
#ARDKUG Zoomで質問受付中 URP特有の設定 27 /Assets/Settings/URP-Balanc ed-Rendererの設定を変更しま す。 ・ARSessionFeature ・DepthMeshRenderFeature の2つを追加してください。
詳細: https://lightship.dev/docs/ardk/rendering/urp.html#doxid-urp
#ARDKUG Zoomで質問受付中 シーン作成 28 1. シーンを新規作成し、シーン名を”Main”にしてください 2. MainCameraを削除 3. /Assets/ARDK/Extensions/Prefabs/ARSceneManagerをシーンに追加
#ARDKUG Zoomで質問受付中 メッシュ生成機能の設定 - 1 29 /Assets/ARDK/Extensions/Meshing/ARMesh をシーンに追加してください
#ARDKUG Zoomで質問受付中 メッシュ生成機能の設定 - 2 30 新しいマテリアルを作ってください 透過設定にし、 透過率を90前後に調整してみてください。
#ARDKUG Zoomで質問受付中 メッシュ生成機能の設定 - 3 31 シーン上のARMeshの設定を変更します。 ・MeshPrefabを /Assets/ARDK/Extensions/Meshing/ARMesh ColliderChunkに変更
・UseInvisibleMaterialをオンに変更 ・InvisibleManterialに新規作成したMaterialに 変更
#ARDKUG Zoomで質問受付中 ボールを飛ばす設定 - 1 32 https://github.com/TheDesignium/public_ardkhandson1/blob/main/ActionM anager.cs 上記、スクリプトをダウンロードして、Unityへインポートしてください
#ARDKUG Zoomで質問受付中 ボールを飛ばす設定 - 2 33 シーンで、球体(Sphere)を作成し、”Ball”と名前を変 えてください。 作成後、 ・Scaleを0.1に変更
・Rigidbody追加 ・RigidbodyのMassを0.01に変更 上記3つの変更をしてください。
#ARDKUG Zoomで質問受付中 ボールを飛ばす設定 - 3 34 シーンで、空のオブジェクトを作成し、”Manager”に名前を変更し てください。 ”Manager”オブジェクトに、ActionManager.csを追加してくださ い。
次、ActionManager.csの紐づけ作業をします ・”BallPrefab”には、さきほど作成したBallおぶえジェクト ・”Main Camera”には、シーン上のARSceneManagerの小オブジェク トであるARSceneCameraオブジェクト のそれぞれを紐づけるようにしてください。
#ARDKUG Zoomで質問受付中 ビルド 35 作成した”Main”シーンをビルド対象に追加し、 いつもどおりBuild&Runして、実機で動作させてみてください。 何か詰まった!や質問などがあったら教えてください。
#ARDKUG Zoomで質問受付中 おまけ 36 時間が余った方向け • VPSの解説 ◦ https://note.com/thedesignium/n/n10cbe153a7c7 •
Mesh1のシェーダをいろいろ変えてみると おもしろいかとおもいます。
#ARDKUG Zoomで質問受付中 休憩 〜??:?? 37
#ARDKUG Zoomで質問受付中 後半 38
#ARDKUG Zoomで質問受付中 ARDK公式サンプルを試す 39
#ARDKUG Zoomで質問受付中 流れ 40 • ARDK公式サンプルインポートと設定 • ビルド • セマンティックセグメンテーション
• マルチプレイヤー
#ARDKUG Zoomで質問受付中 ARDK公式サンプルインポート-1 41 さきほどボールを出せるようになったUnityプロジェクトに、 事前にダウンロードしていた”ardk-examples-2.0.0.unitypackage”をインポート してください。 https://lightship.dev/account/downloads
#ARDKUG Zoomで質問受付中 ARDK公式サンプルインポート-2 42 URPマテリアルに変更が必要です。 まず、ARDKExamplesフォルダに含 まれるマテリアルをURPに対応させ ます。 5番目で表示されたマテリアルを すべて選択してください
1 3 4 2 5
#ARDKUG Zoomで質問受付中 ARDK公式サンプルインポート-3 43 マテリアルを選んだ状態で、 Editメニューの Rendering>Maerials>Convert Selected Build~~~URPを選んで ください。
表示された警告はYesを選んでく ださい
#ARDKUG Zoomで質問受付中 ARDK公式サンプルインポート-4 44 ダブったARDKライセンスキーファイルを削除 します ARDKExamples>Resources>ARDK>ArdkAuthC onfig を削除します
#ARDKUG Zoomで質問受付中 ARDK公式サンプルインポート-5 45 ビルド対象シーンにサンプルシーン全て追加し ます。 Materialと同様に、ARDKExsampleフォルダの Sceneを全て選びます 1 3
2 4
#ARDKUG Zoomで質問受付中 ARDK公式サンプルインポート-6 46 さきほど選んだシーンを、ビルド対象に追加し てください。 そして、SceneSelectorシーンを一番上にして ください。
#ARDKUG Zoomで質問受付中 ビルド 47 ビルドしてください。たぶん時間かかるかと思います。。。
#ARDKUG Zoomで質問受付中 セマンティックセグメンテーション - 1 48 SemanticSegmentationシーンを開いてみてください 右上の”Change Feature Channel”で対象物を変えてみてください
#ARDKUG Zoomで質問受付中 セマンティックセグメンテーション - 2 49 SemanticSegmentationExampleManagerでは、 Update文で、セグメンテーションのテクスチャを使って マスクの設定をしています。
#ARDKUG Zoomで質問受付中 マルチプレイヤー 50 ARNetworkingExampleManagerシーンを みてみましょう。
#ARDKUG Zoomで質問受付中 マルチプレイヤー 51 1. 端末Aで矢印1のボタンを押し、ルームIDを作ります 2. 端末1の矢印2に表示されたルームIDを、端末Bの矢 印2に入力してください 3.
端末Aで矢印3のボタンをおす 4. 端末Bで矢印3のボタンをおす 5. まわりをしばらく見渡すとローカライズできて、 お互いの端末位置に立方体が表示されます 1 2 3
#ARDKUG Zoomで質問受付中 マルチプレイヤー 52 ARNetworkingExampleManagerには、バイト形式でデータ送受信している例があ ります 送信 受信
#ARDKUG Zoomで質問受付中 マルチプレイヤー 53 エラーコード https://lightship.dev/docs/ardk/multiplayer/low_level_networking_errors.h tml
#ARDKUG Zoomで質問受付中 残り時間、各シーン試してみてください 54
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 55 ボールを飛ばすトリガーを送受信するようにしてみます 時間がある場合
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 56 Assets/ARDKExamples/ARNetworking/ARNetworkingシーンを複製し、 ”ARNetworkingWithBall”という名前にしてください その後、作成したシーンを開いてください
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 57 /Assets/ARDK/Extensions/Meshing/ARMesh をシーンに追加してください
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 58 シーン上のARMeshの設定を変更します。 ・MeshPrefabを /Assets/ARDK/Extensions/Meshing/ARMesh ColliderChunkに変更 に変更
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 59 シーンで、球体(Sphere)を作成し、”Ball”と名前を変 えてください。 作成後、 ・Scaleを0.1に変更 ・Rigidbody追加 ・RigidbodyのMassを0.01に変更
上記3つの変更をしてください。
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 60 https://github.com/TheDesignium/public_ardkhandson1/blob/main/ActionNe tworkManager.cs をダウンロードし、Unityプロジェクトへ追加してください。
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 61 シーンで、空のオブジェクトを作成し、”Manager”に名前を変更し てください。 ”Manager”オブジェクトに、ActionNetworkManager.csを追加して ください。 次、ActionNetworkManager.csの紐づけ作業をします ・”BallPrefab”には、さきほど作成したBallおぶえジェクト
・”Main Camera”には、シーン上のARSceneManagerの小オブジェク トであるARSceneCameraオブジェクト のそれぞれを紐づけるようにしてください。
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 62 ビルドします ビルド対象に、”ARNetworkingWithBall”シーンを追加し、 シーンリストの先頭にし、ビルドしてください
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 63 送信部分 ボールを発生させたい位置と飛ばしたい方向を送信してます。
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 64 受信部分 受信した位置、方向に向かって ボールを発射する処理をしている
#ARDKUG Zoomで質問受付中 ボール発射するサンプルのネットワーク版 65 今回のサンプルは、発射トリガーだけを送受信してます。 そのため、飛ばした後のボールの位置は同期されません。 今回のような低レイヤーの実装なら、常に位置情報を送受信する修正を行う必要があります。 高レイヤーの場合は、位置同期便利クラスを使うとよいかもれしれないです https://lightship.dev/docs/ardk/multiplayer/HLAPI/network_spawning.html#doxid-hlapi-network- spawning
#ARDKUG Zoomで質問受付中 サンプル補足 66 • 深度取得しているサンプルやVPSのサンプルもあります • 公式のテンプレートもあります ◦ 公式テンプレートは、新しいシーン
を作ってから、各テンプレを選ぶと よさそうです。
#ARDKUG Zoomで質問受付中 Q&A 67
#ARDKUG Zoomで質問受付中 Nianticからの話 68
#ARDKUG Zoomで質問受付中 おわり 69