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
360°写真、動画を用いた VR 対応アプリの開発方法
Search
yuky_az
August 20, 2016
Programming
5
5.3k
360°写真、動画を用いた VR 対応アプリの開発方法
iOSDC 2016で発表した際のスライドです。スマートフォンのVR対応についてお話です。
yuky_az
August 20, 2016
Tweet
Share
More Decks by yuky_az
See All by yuky_az
AGI福岡 第8回
yukinaga
0
50
AGI福岡 第6回
yukinaga
0
110
AGI福岡 第5回
yukinaga
0
160
AGI福岡 第3回
yukinaga
0
100
AGI福岡 第2回
yukinaga
0
110
生成AIの現状と展望: AIと共生する未来への道程
yukinaga
3
1.1k
BERTによる自然言語処理を学ぼう!【 Live!人工知能 #26】 #Live人工知能
yukinaga
0
420
iOSアプリは「感情」を宿すのか? AIとアプリの未来について
yukinaga
2
1.1k
iOSアプリに「意識」は宿るのか? ディープラーニングの先にある人工知能(AI)
yukinaga
6
5.9k
Other Decks in Programming
See All in Programming
Honoを技術選定したAI要件定義プラットフォームAcsimでの意思決定
codenote
0
260
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.2k
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
3
1.5k
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
6.4k
AI 時代だからこそ抑えたい「価値のある」PHP ユニットテストを書く技術 #phpconfuk / phpcon-fukuoka-2025
shogogg
1
580
高単価案件で働くための心構え
nullnull
0
160
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
1.9k
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 1
philipschwarz
PRO
0
100
予防に勝る防御なし(2025年版) - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHP Conference Fukuoka 2025
twada
PRO
39
13k
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
260
生成AIを活用したリファクタリング実践 ~コードスメルをなくすためのアプローチ
raedion
0
120
Stay Hacker 〜九州で生まれ、Perlに出会い、コミュニティで育つ〜
pyama86
2
2.4k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Statistics for Hackers
jakevdp
799
230k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Rails Girls Zürich Keynote
gr2m
95
14k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Code Review Best Practice
trishagee
72
19k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Transcript
˃ࣸਅɺಈըΛ༻͍ͨ 73ରԠΞϓϦͷ։ൃํ๏ :VLJOBHB"[VNB !ZVLZ@B[ J04%$+BQBO
ࣗݾհ :VLJOBHB"[VNB ʢզ࠺ʣ J04ΤϯδχΞ 3% େֶͷݚڀһɺϝʔΧʔۈɺϓϩάϥϛϯά ߨࢣɺϑϦʔϥϯεΛܦͯɺ%VDLMJOHTגࣜձࣾͰ εϚϗ͚73"*Λ։ൃத !ZVLZ@B[ TBJJMBCDPN
ਓೳɺਓੜ໋ɺੜֶɺ ϓϩάϥϛϯάڭҭɺ ϒϥδϦΞϯॊज़ ଞͷڵຯͷର
ൃදͷྲྀΕ εϚʔτϑΥϯʹΑΔ73ʹ͍ͭͯ ˠҰൠɺɺΞϓϦͷཁٻ ϥΠϒετϦʔϛϯάΞϓϦͷ։ൃྫ ˠΧϝϥରԠɺ).%ରԠɺ࣮ํ๏
όʔνϟϧϦΞϦςΟʔ(VR)ͱʁ ޒײ૾ྗΛܹ͠ɺͦ͜ʹͳ͍ͷΛ࡞Γग़͢
VRʹඞཁͳཁૉ ྟײ ˠө૾Իͱମײ֮ͷҰகʹΑΓɺຊʹͦͷʹ͍Δ Α͏ͳͷࡨ͕֮ى͖Δ շదੑ ˠө૾Իͱମײ֮ͷෆҰகʹΑΓɺ73ਲ͍͕ൃੜ͢Δ ͷͰɺ͜ΕΛݮ͢Δ
εϚʔτϑΥϯʹΑΔVR ೋ؟ϔουϚϯτσΟεϓϨΠ ).% ʹεϚϗΛண σόΠεͷ͖ͱө૾ͷ͖ΛҰகͤ͞Δ
εϚʔτϑΥϯVRͷಛ ϋΠΤϯυσόΠε 0DVMVT3JGUɺ)5$7JWFɺ1MBZ4UBUJPO73ɺFUD ˠ1$ͱͷଓ͕ඞཁɺϦιʔεେɺମҠಈͷݕ͕Մೳ εϚʔτϑΥϯ J1IPOFɺ"OESPJEεϚϗɺFUD ˠ1$ͱͷଓෆཁɺϦιʔεখɺମҠಈͷݕ͕͍͠
ΞϓϦͷཁٻ ྟײˍշదੑͷͨΊʹ ˠߴ͍ϑϨʔϜϨʔτͱɺटͷಈ͖ʹର͢Δө૾ͷैੑ ڑͷݕ΄΅ෆՄ ˠମͷҠಈͷݕ͍͠ɻମҐஔΛݻఆͯ͠༻͕લఏ Ϧιʔεʹ༨༟͕ͳ͍ ˠ$16ɺ(16ɺϝϞϦͷແବݣ͍Λۃྗ͑Δ
˃ϥΠϒετϦʔϛϯάΞϓϦͷ։ൃྫ )6(73EFHSFFMJWF ˃ϥΠϒಈըΛࢹௌɺ).%ରԠ ϦΞϧλΠϜͰίϛϡχέʔγϣϯ ༻࣮ ˠԻָϥΠϒɺΧϯϑΝϨϯεɺFUD ͔ࠃͰͷར༻
ΞϓϦͷཁٻ ϥΠϒதɺϦΞϧλΠϜͰҎԼͷॲཧ͕ൃੜ ಈըͷड৴ɺϐΫηϧόοϑΝͷॲཧɺ ΧϝϥରԠɺ%ඳըɺ ϝοηʔδͷૹड৴ɺϞʔγϣϯηϯαɺFUD J1IPOFͷੑೳΛϑϧʹҾ͖ग़͢͜ͱ͕ඞཁ
࣮ํ๏ͷબఆ (PPHMF734%, ˠ࣮͕؆୯͕ͩɺΧελϚΠζੑ͕͍ 6OJUZ ˠϢχόʔαϧͳ։ൃڥͷͨΊɺ J1IPOFͷੑೳΛϑϧʹҾ͖ग़͢ͷ͍͠
࣮ํ๏ͷબఆ 4DFOF,JU ˠߴϑϨʔϜϨʔτͰͷಈը࠶ੜ͕͍͠ɻ 0QFO(-&4 (-,JU ˠѻ͍͕͍͕͠ɺ ύϑΥʔϚϯεΧελϚΠζੑ͕ߴ͍ ADOPTED
ॲཧͷྲྀΕͷུ֓ ϥΠϒσʔλͷड৴ J1IPOFεΫϦʔϯʹඳը ಄ͷ͖ͷݕग़ ֤ॲཧϚϧνεϨουͰ࣮ߦ͞ΕΔ ٿͷ໘ʹ ςΫενϟΛషΓ͚ Ұఆִ࣌ؒؒͰ࣮ߦ ࢹઢϕΫτϧͷճస
ςΫενϟͷషΓ͚,PEBL41, %มΛߦ͍ ٿͷ໘ʹషΓ͚Δ x = R * sin(φ) * cos(θ)
y = R * cos(φ) z = R * sin(φ) * sin(θ) Γൈ͖ ࠲ඪม ݩը૾4JOHMFpTIFZF D 8BMUFS θ φ
ςΫενϟͷషΓ͚3JDPI5IFUB4 ݩը૾%VBMpTIFZF %มΛߦ͍ɺͦΕͧΕ ٿͷ໘ʹషΓ͚Δ x = R * sin(φ) *
cos(θ) y = R * sin(φ) * sin(θ) z = R * cos(φ) Γൈ͖ ճస ࠲ඪม
಄ͷ͖ͷݕग़ MFUNPUJPO.BOBHFS$..PUJPO.BOBHFS NPUJPO.BOBHFSEFWJDF.PUJPO6QEBUF*OUFSWBM NPUJPO.BOBHFSTUBSU%FWJDF.PUJPO6QEBUFT5P2VFVF /40QFSBUJPO2VFVF \ EFWJDF.BOBHFS FSSPS
JO MFUZBXEFWJDF.BOBHFSBUUJUVEFZBX MFUQJUDIEFWJDF.BOBHFSBUUJUVEFSPMM MFUSPMMEFWJDF.BOBHFSBUUJUVEFQJUDI ^ $PSF.PUJPOΛར༻ͯ͠ σόΠεͷ͖ ಄ͷ͖ Λऔಘ
ࢹઢϕΫτϧͷճస D +VBOTFNQFSF Ψ = yaw θ = pitch Φ
= roll ࢹઢϕΫτϧΛճస͠ ࢹઢͷઌΛεΫϦʔϯʹඳը͢Δ ΫΥλʔχΦϯʢ࢛ݩʣ ͷར༻͕ඞཁ
ϚϧνεϨουઃܭ ༷ʑͳॲཧΛฒྻͰߦ͍ɺϘτϧωοΫ͕ੜ͡ͳ͍Α͏ʹ͢Δ ಈըσʔλͷड৴ ϐΫηϧόοϑΝͷॲཧ ςΫενϟͷషΓ͚ ಄ͷ͖ͷݕग़ ࢹઢϕΫτϧͷઃఆ εΫϦʔϯʹඳը γϦΞϧΩϡʔ༏ઌ ը໘ͷϦϑϨογϡͱಉظ
௨৴ͱಉظ γϦΞϧΩϡʔ༏ઌߴ Ϟʔγϣϯηϯαͱಉظ
GPUͷνϡʔχϯά %FCVHOBWJHBUPS'14*OTUSVNFOUT0QFO(-&4"OBMZTJT ෛՙͷେ͖͍ॲཧແ͍͔ʁϝογϡͷܗঢ়ద͔ʁFUD
࣮ԋಈը -ѱ͍ྫ- ϚϧνεϨουͷઃܭ͕ෆద ύϑΥʔϚϯεͷνϡʔχϯά͕ेͰͳ͍ ྟײ͕͍ɺ73ਲ͍͕ൃੜɺ͕ߴԹ
࣮ԋಈը -ྑ͍ྫ- ϚϧνεϨουͷઃܭ͕ద ύϑΥʔϚϯεͷνϡʔχϯά͕े ྟײ͕ߴ͍ɺ73ਲ͍͕ൃੜ͠ͳ͍ɺ͕ߴԹʹͳΒͳ͍
·ͱΊ ύϑΥʔϚϯεͷ্ ˠ$16ɺ(16ͷ࠷దԽ %ඳը ˠඳ͖͍ͨΠϝʔδΛࣜԽ͢Δ ྟײ͕͋ΓɺշదͳεϚʔτϑΥϯ73ͷͨΊʹ ϚϧνεϨου ˠෳͷॲཧΛฒߦͯ͠ߦ͍ɺಛఆͷεϨου͕ϘτϧωοΫ ʹͳΔͷΛ͙