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.1k
360°写真、動画を用いた VR 対応アプリの開発方法
iOSDC 2016で発表した際のスライドです。スマートフォンのVR対応についてお話です。
yuky_az
August 20, 2016
Tweet
Share
More Decks by yuky_az
See All by yuky_az
AGI福岡 第3回
yukinaga
0
57
AGI福岡 第2回
yukinaga
0
52
生成AIの現状と展望: AIと共生する未来への道程
yukinaga
3
1.1k
BERTによる自然言語処理を学ぼう!【 Live!人工知能 #26】 #Live人工知能
yukinaga
0
360
iOSアプリは「感情」を宿すのか? AIとアプリの未来について
yukinaga
2
1k
iOSアプリに「意識」は宿るのか? ディープラーニングの先にある人工知能(AI)
yukinaga
6
5.6k
ヒトとAIの共生、そしてシンギュラリティ
yukinaga
0
970
iOSと(深層)強化学習
yukinaga
6
8.7k
iOSと人工知能(AI) -GPU並列演算の仕組みと機械学習-
yukinaga
0
3.1k
Other Decks in Programming
See All in Programming
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
450
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
3
480
LLM Supervised Fine-tuningの理論と実践
datanalyticslabo
7
1.3k
Go の GC の不得意な部分を克服したい
taiyow
3
790
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
150
暇に任せてProxmoxコンソール 作ってみました
karugamo
2
720
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
3
460
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.7k
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
460
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
RailsConf 2023
tenderlove
29
940
Navigating Team Friction
lara
183
15k
4 Signs Your Business is Dying
shpigford
181
21k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Gamification - CAS2011
davidbonilla
80
5.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
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ͷͨΊʹ ϚϧνεϨου ˠෳͷॲཧΛฒߦͯ͠ߦ͍ɺಛఆͷεϨου͕ϘτϧωοΫ ʹͳΔͷΛ͙