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
アバターライブ配信アプリ「トピア」の開発の話アバターライブ配信アプリ「トピア」の開発の話
Search
Moomo
August 24, 2019
Programming
0
520
アバターライブ配信アプリ「トピア」の開発の話アバターライブ配信アプリ「トピア」の開発の話
トピアのアバター・配信・視聴・開発の苦労話など幅広い内容が含まれています
Moomo
August 24, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
180
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
0
250
PHPの次期バージョンはこの時期どうなっているのか - Internalsの開発体制について - PHPカンファレンス小田原
youkidearitai
PRO
1
190
ONE WEDGE_company_guide
1wedge_one
0
490
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
27
8.3k
StoreKit2によるiOSのアプリ内課金のリニューアル
kangnux
0
110
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
710
Elm 0.19.0 Changes
bkuhlmann
0
490
Let's learn code review
riofujimon
2
380
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
270
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
130
新宿ダンジョンを可視化してみた
satoshi7190
2
260
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
73
5.2k
Building Applications with DynamoDB
mza
88
5.6k
Music & Morning Musume
bryan
41
5.6k
What the flash - Photography Introduction
edds
64
11k
Scaling GitHub
holman
457
140k
Web development in the modern age
philhawksworth
202
10k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
Code Review Best Practice
trishagee
55
15k
Happy Clients
brianwarren
92
6.4k
The Mythical Team-Month
searls
216
42k
Unsuck your backbone
ammeep
663
57k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
Transcript
ΞόλʔϥΠϒ৴ΞϓϦ ʮτϐΞʯͷ։ൃͷ גࣜձࣾ6/#&3&"-ΤϯδχΞ ߴऔହ༸
ࣗݾհ ɾϝΨϕϯνϟʔͱݺΕΔձࣾͰιʔγϟϧήʔϜͷ։ൃʹैࣄ ɾϑϦʔϥϯεͰΦϯϥΠϯ6OJUZߨࢣ ΧδϡΞϧήʔϜͷडୗ։ൃ ɾʹ6/#&3&"-ʹδϣΠϯ ɾτϐΞͷΫϥΠΞϯταΠυͷ։ൃΛ୲ɹˡ/PX $PNQBOZגࣜձࣾ6/#&3&"- 1PTJUJPOऔకɾΤϯδχΞ /BNFߴऔହ༸ʢ͔ͨͱΓ͢ͻΖʣ ɾ౦ژήʔϜγϣʔͰ73ήʔϜʮΞʔςΟϑΝΠτʯΛग़ల
ձࣾհ ɾि̏ʢ݄ɾਫɾۚʣۈɺि̎ϦϞʔτϫʔΫ ɾͪΖΜ ɾٸͳϙϯϙϯϖΠϯʢෲ௧ʣ ɾՆόςർ࿑ ɾؾ͕Βͳ͍ ͳͲཧ༝ͰͷϦϞʔτϫʔΫҠߦʹॊೈʹରԠʂ ۈܗଶ ΦϑΟε ɾכொӺెา̑ͷ'VUVSF5FDI)VC
ਓһ ɾΤϯδχΞ໊̏ɺاը໊ɼσβΠϯ໊̏
ΞϓϦ ɾΞόλʔϥΠϒ৴ʮτϐΞʯΛ։ൃɾӡӦதʂ ɾڈ݄̍̌ʹϦϦʔεʂ ɾଟ࠼ͳΞόλʔϝΠΩϯάػೳɾΧϥΦέ දɾϞʔγϣϯΤϞʔτΛ༻͍ͨ৴ػೳ
։ൃද ։ൃ։࢝ڈͷ݄̍ʢΤϯδχΞ໊̍ʣ ॳڈͷ݄̔ͷϦϦʔεΛࢦ͍͕ͯͨ͠։ൃ͕ΕΔ ڈͷ݄̍̌ϦϦʔε ΞόλʔΛ༻͍ͨϥΠϒ৴ܕͷίϛϡχςΟΞϓϦΛࢦ͍ͯ͠ ͕ͨࠓʹೖͬͯ̍ରଟͷ͛મܕϥΠϒ৴ΞϓϦʹϐϘοτ ݄̐ʹ՝ۚɾΪϑτػೳΛ࣮ ݄̓ʹΞόλʔͷେ෯ΫΦϦςΟΞοϓɾΧϥΦέػೳͷࡌ ݄̔ʹେ෯ͳύϑΥʔϚϯεվળ
ຊͷΞδΣϯμ Ξόλʔ ணͤସ͑ ΧϥʔόϦΤʔγϣϯ දτϥοΩϯά ϦοϓγϯΫɾͷಈ͖
৴ɾࢹௌ νϟοτɾΪϑτͷಉظ දɾମಈ͖ͷಉظ ։ൃͷۤ࿑͠ ࠓޙͷల
Ξόλʔ
Ξόλʔணͤସ͑ τϐΞ༷ʑͳணͤସ͑Λߦ͏ࣄ͕Ͱ͖Δ ݱࡏ̍̌Օॴͷணͤସ͕͑Մೳ τοϓε ϘτϜε ܕʢલɾޙΖʣ එໟ ඓ ޱ ۺ
ۺԼ ϔουΞΫηαϦʢΧνϡʔγϟʣ ϑΣΠεΞΫηαϦ
Ξόλʔணͤସ͑ Ξόλʔͷணͤସ͑ͷ։ൃΛߦͬͨܦݧ͕ͳ͔ͬͨ Ͳ͏ͬͨΒ࣮Ͱ͖Δ͔ ։ൃॳʜ ͱΓ͋͑ͣԿߟ͑ͣʹணͤସ͑ͷ෦ҐͷΦϒδΣΫτΛࠩ͠ସ͑ͯΈΔʜ ݁Ռɺ͜ͷํ๏Ͱ͏·͘ߦ͔ͣɾɾɾ
Ξόλʔணͤସ͑ %ΞόλʔϞσϧͷओͳߏཁૉ Ϙʔϯ ϙϦΰϯ ςΫενϟ
Ξόλʔணͤସ͑ Ϙʔϯͷಈ͖ϙϦΰϯʹӨڹΛ༩͑Δ ணͤସ͑ରͷ̏%ϞσϧͷϙϦΰϯʹରͯ͠ϘʔϯͷࢀরεΫϦϓτͰઃఆ
ΞόλʔΧϥʔόϦΤʔγϣϯ τϐΞͷΞόλʔΞΠςϜͷΧϥʔόϦΤʔγϣϯͷಛ ΞΠςϜ̍ʹ͖ͭ࠷େ̏Օॴ·Ͱ৭มߋՄೳ άϥσʔγϣϯදݱՄೳ
ΞόλʔΧϥʔόϦΤʔγϣϯ Ͳ͏͍ͬͯΔ͔ɾɾɾ ςΫενϟ 3(#ϚεΫςΫενϟ ̎ຕͷςΫενϟΛ༻ҙ
ΞόλʔΧϥʔόϦΤʔγϣϯ ςΫενϟͱ3(#ϚεΫςΫενϟ ΛॏͶΔͱʜ ৭มߋ͍ͨ͠෦Λ3(#ͷࡾ৭ͰృΓͭͿ͢ γΣʔμʔଆͰ3(#ςΫενϟΛݩʹ৭มߋ ෦ҐΛఆ Χϥʔ̍
Χϥʔ̎ ੨Χϥʔ̏
ΞόλʔΧϥʔόϦΤʔγϣϯ άϥσʔγϣϯ͕͍ͭͨ3(#ϚεΫςΫενϟΛ༻ҙ͢Δͱɾɾɾ
ΞόλʔදτϥοΩϯά τϥοΩϯάө෦Ґ إͷ֯ ޱ එໟ
ΞόλʔදτϥοΩϯά إͷಛݕग़6-4'BDF5SBDLFSΛ༻
ΞόλʔදτϥοΩϯά ͷ෦ҐΛݕग़Մೳ
ΞόλʔදτϥοΩϯά ݕग़ͨ͠ಛΛղੳ إͷ֯4%,ଆ͔ΒऔಘՄೳ ޱඑໟಛͷڑΛଌΔ ڑσʔλͷՃॲཧ εϜʔδϯά εϨογϣϧυ
ϊΠζআڈ إͷճసิਖ਼
ΞόλʔදτϥοΩϯά ಛͷөɾௐ༻ΤσΟλΛ6OJUZͷ&EJUPS֦ுػೳͰ࡞
ΞόλʔϦοϓγϯΫɾͷಈ͖ <Ϣʔβʔ͔Βͷใࠂ>͕͙͘͢ͳΔɻΞϓϦ͕ॏ͍ɻ ˠϑϩϯτΧϝϥΛৗ࣌ىಈͤͯ͞إೝ͍ࣝͤͯ͞Δͷ͕ॏͦ͏ ˠϑΣΠετϥοΩϯάΛΘͣʹΞόλʔͷදΛදݱ͢Δํ๏Λࡧ͢Δ
ΞόλʔϦοϓγϯΫ ·ͣ৭ʑͱࢼ͢ - OVRLipsync : Oculus͕։ൃͨ͠ϦοϓγϯΫΞηοτɺԻݕग़ Λߦͬͯࢦఆͨ͠BlendShapeʹͷөΛߦͬͯ͘ΕΔ༏Εͨػೳ Λ࣋ͭ →ػೳతʹ༏Ε͍͕ͯͨAndroid͔͠ରԠ͓ͯ͠ΒͣɺԆཱ͕ͬ ͨͷͰϦΞϧλΠϜͳϦοϓγϯΫʹ͔ͣ…
ΞόλʔϦοϓγϯΫ - Salsa LipSync : UnityͷΞηοτετΞ͔ΒߪೖՄೳͰධՁׂͱ ྑ͍ɻϚΠΫ͔ΒरͬͨԻྔͷڧऑͰޱͷ։ด߹͍ΛௐͰ͖ Δɻ →ԻͷมԽʢ͍͋͏͓͑ʣΛݕग़ͯ͘͠Εͳ͍ͷͰɺৗʹޱ͕։
͖ͬͺͳ͠ʹͳΔɻOVRLipSync΄ͲͰͳ͍͕Ԇ͕ൃੜ͢Δɻ
ΞόλʔϦοϓγϯΫ ํͳ͍ͷͰࣗ࡞͢Δ - ԻྔԻ৴༻ͷSDKΛ௨ͯ͠ωΠςΟϒଆ͔Βऔಘ - Իղੳ·ͰͰ͖ͳ͔ͬͨͷͰɺԻྔܗΛղੳ͠ɺԻͷ۟ ΕΛఆ͢Δ - Իྔͷޯ͕ҰఆҎ্ͩͱޱΛด͍ͯ͡Δͱఆ
- ҰఆԻྔҎԼޱͷಈ͖ʹө͠ͳ͍
Ξόλʔͷಈ͖ -Χϝϥઢ -ॠ͖ʢύνʣΛࣗಈతʹߦ͏ -ϥϯμϜͰ̎ճ࿈ଓॠ͖ -ඍࡉ؟ٿӡಈ - ΑΓੜ͖͍ͯΔײΛදݱ͢Δ
৴ɾࢹௌ
৴ɾࢹௌ Իͷ৴ɾࢹௌ෦ͷΠϯϑϥBHPSBJPͷαʔϏεΛར༻ 6OJUZ༻ͷ4%,ఏڙ͞Ε͓ͯΓɺؾܰʹө૾ɾԻ৴Λ։ൃͰ͖Δ༏Εͷ
Ξόλʔͷಉظ ௨ৗͷϥΠϒ৴ΞϓϦө૾ετϦʔϛϯάํࣜͰ৴ߦ͍ͬͯΔͷͰࢹௌ ऀଆͷ௨৴ڥ͕ѱ͍ͱը࣭͕མͪͯ͠·͏ τϐΞͰΞόλʔࢹௌऀɾ৴ऀͦΕͧΕੜͨ͠ͷʹإͷಛσʔ λΛಉظ͍ͯ͠ΔͰ௨৴ڥ͕ѱͯ͘ը࣭͕མͪͳ͍ ৴ऀଆ ࢹௌऀଆ
νϟοτɾΪϑτͷಉظ νϟοτɾΪϑτͷಉظ'JSFCBTFͷ3FBMUJNF%#Λར༻ 6OJUZ༻ͷ4%,͕༻ҙ͞Ε͓ͯΓɺԆͰ͓खܰʹ νϟοτͷσʔλΛಉظͰ͖Δ
։ൃͷۤ࿑͠
ΞϓϦͷ࣭վળ ϦϦʔεॳෆ۩߹͕େྔʹൃੜ ΞϓϦͷΫϥογϡͷසൃ ৴͕ಥવऴྃ͢Δ ࢹௌϦετ͕৴͕දࣔ͞Εͳ͍ ΞϓϦ͕ॏ͗ͯ͢·ͱʹ༡ͳ͍ ͳͲͳͲʜ ݪҼ༷ʑ ϦϦʔεεέδϡʔϧͷΕ
͋ΓݱͷযΓ͕։ൃ࣭ͷ Լʹʜ ࣮ྃˠ֬ೝϑϩʔ͕ͬ ͍ͯͳ͔ͬͨ όάϨϙʔτͷӡ༻͕Ͱ͖ͯ ͍ͳ͔ͬͨ
ΞϓϦͷ࣭վળ #VHTOBHΛಋೖ͠ൃੜසͷߴ͍όάͷൃݟ ͲͷϢʔβʔͰى͖ͨόά͔ όάͷൃੜ݅ Ϋϥογϡͷ༗ແ όάൃੜ࣌ͷελοΫτϨʔε ΤϯδχΞ͕࣮ͨ͠ͷνέοτ୯ҐͰඞͣνΣοΫϑϩʔΛ௨ͯ֬͠ೝͯ͠Β ͏Α͏ϧʔϧԽ ༷ܾΊ ࣮
֬ೝ ϦϦʔε
ΞϓϦͷ࣭վળ ͔֬ͳվળޮՌʜJ04ͷඇΫϥογϡ͕ˋۙ͘·Ͱ౸ୡ
ΞϓϦͷ࣭վળ ύϑΥʔϚϯεվળ $16ෛՙओʹ6OJUZͷ1SPpMFSͰ֬ೝ͢Δ
ࠓޙͷల
ࠓޙͷల Ξόλʔͷදݱͷ෯Λߋʹ৳͍͖ͯ͠·͢ʂ 6*ͷϞοαϦײΛղফ͠ɺΑΓշదʹ͑ΔΞϓϦΛࢦ͠·͢ʂ ΧϥΦέػೳΛॆ࣮͍ͤͯ͘͞༧ఆʂ ҰॹʹτϐΞΛΓ্͛ͯ։ൃ͢ΔؒΛઈࢍืूதͰ͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ྑ͖6OJUZ-JGFΛ