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
Android上でUnityを動かすためのノウハウ / Android with Unity
Search
morizooo
August 22, 2018
Programming
860
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Android上でUnityを動かすためのノウハウ / Android with Unity
morizooo
August 22, 2018
More Decks by morizooo
See All by morizooo
Flipperを活用した デバッグ効率化について/flipper
morizooo
0
820
Androidアプリをリアーキテクチャした話/Android-rearchitecture
morizooo
1
220
Mirrativ-android-efforts
morizooo
1
7.7k
消費型課金を導入する / Introduction to consumable In-App Billing
morizooo
0
540
カンファレンスアプリを作ったぞ!! / builderscon tokyo 2017 LT
morizooo
0
3.4k
Other Decks in Programming
See All in Programming
Foundation Models frameworkで画像分析
ryodeveloper
1
140
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
150
Google Apps Script で Ruby を動かす
kawahara
0
110
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
210
FDEが実現するAI駆動経営の現在地
gonta
2
230
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
240
自作OSでスライド発表する
uyuki234
1
4k
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.4k
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
150
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
550
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
420
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
750
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
420
Typedesign – Prime Four
hannesfritz
42
3.1k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
270
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
Into the Great Unknown - MozCon
thekraken
41
2.6k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
290
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
45k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Chasing Engaging Ingredients in Design
codingconduct
0
240
The Invisible Side of Design
smashingmag
301
52k
Transcript
Android上でUnityを 動かすためのノウハウ LIVE STREAMING HACK #1 2018.08.22 YUTA MORIOKA Mirrativ,
Inc. © 2018 Mirrativ, Inc.
•Profile •morizooo •2018年2月入社 •ミラティブのAndroid作ってます •UnityはAndroidビルド部分しか触ってません
•Android上でUnityを動かす
•Unityからのエクスポート • ARM64はUnity 2018.2から使用可能 • apply pluginをlibraryに変更 • Manifestの不要な部分を削除 → AARを作成
•UnityPlayerの使い方 • UnityPlayerにcontextを渡してFrameLayoutにAddすればOK • SurfaceViewにアバターが映るのでリフレクション使って透過させる
•UnitySendMessageについて UnitySendMessage("GameObjectName1", "MethodName1", "Message to send"); •NativeからUnityのコールバックを実行するための関数 •主な用途はUnity用のプラグインをNativeで書くときに使われている → MirrativではAndroid/iOSからUnityを操作するために利用
•困ったこと •UnityPlayerを破棄するとアプリが落ちる →android:processを設定することで対処
•困ったこと •UnityPlayerを一度破棄すると、再生成できない - 配信視聴時にインスタンス作成、終了時に破棄したかった - 原因わからず。そもそも複数回作られるような想定がされてなさそう → Applicationクラスにグローバルインスタンスとして作成して対処 → UnityPlayerを破棄することはできないので、 Activity破棄時にUnityPlayer.pause()を実行
•困ったこと •UnityPlayerの上にViewを重ねる - Viewを配置するだけだとUnityPlayerが最前面になる - WindowManagerでアプリに重ねて表示する →配信時にパーミションは取っているが視聴時は取ってない ... - 透過したDialogFragmentを使うことで実現
•今後の展望 •Android5,6系のパフォーマンス改善 - 電池使用量が多いので現状対象外(充電中でも30分で10%減る) - 原因調査中。内部で動いているのがSurfaceViewなのが原因か? •リップシンクの精度向上 - 配信時はマイク音声、視聴時はRTMP音声を基にリップシンクしてます •他にもやりたいことが沢山あります!!
現在ゲーム好きなAndroidエンジニアを積極採用中! © 2018 Mirrativ, Inc. 詳細はこちら! https://www.wantedly.com/projects/226247 ◆具体的な業務内容 ・MirrativのAndroidアプリ開発 ◆必須の経験/能
・Java or Kotlinでの Androidアプリ開発経験 ・Mirrativのサービス内容や コンセプト、未来像に共感できる