SlideShare a Scribd company logo
Unity に於ける
ビルド自動化のおはなし
【まとめ編】+α
2015.01.23 (Fri) / Unity 勉強会 vol.28
株式会社キッズスター
システムデベロプメントチーム リーダー
森 哲哉
あけおめ!
毎度おなじみ?
もんりぃです!
今日のテーマ
20150123 第28回 Unity 勉強会「Unity に於けるビルド自動化のおはなし & 設定管理とリソース管理のおはなし」
と、いうわけで
ビルド
のおはなしです
(最終回)
と、思いきや…
今日は、"+α" の
部分がメインですw
おしながき
おしながき
• Android ビルド自動化のおはなし
• iOS ビルド自動化のおはなし
• 【+α】Editor Script を用いた設定管理
• 【+α】KidsStar に於けるリソース管理の紹介
自己紹介
$ whoami
• 森 哲哉 と申します。
• a.k.a: もんりぃ / T: @monry / F: monry84
• 30歳 / ♂ / O型 / 天 座 / 既婚
• 趣味は「お酒」と「合唱」です。
$ whoami
• 大学を (自主的に) 卒業後、ベンチャーを転々。
• Web のフロントエンド、サーバサイドが得意。
• Unity 歴 2 年弱くらい。
• AWS とキャッキャウフフするのも好きです。
• 最近は Kinect さんがお気に入り。
$ whoami
$ whoami
$ jobs
• 株式会社キッズスター って会社で働いてます。
• 未就学児∼小学生のお子さまをお持ちの

ファミリーをターゲットにした、知育/教育に

関わるアプリ・サービスを展開しております。
• 「IID 世田谷ものづくり学校」という、

元中学校に入居しております。
$ jobs
$ jobs
$ jobs
$ jobs
$ ls -la apps/
なりきり!!
ごっこランド
パズル&テイルズ

おかしのくにを
つくるのじゃ!!
なりきり!!
アイスクリーム
屋さんごっこ
なりきり!!
ママごっこ
お弁当をつくろう!
おかしの家を
つくろう!
ハンバーガー
やさんごっこ
飛行機を
組み立てよう!
i18n i18n i18n
i18n
ゆかいな
お花屋さん
App Store / Google Play
カテゴリランキング1位
多数獲得!!!
きかんしゃ
トーマスと
パズルで
あそぼう!
前置き
環境
• Operation System: OS X Yosemite
• Unity: 4.6.1p2 (Pro Only)
• Platform: iOS, Android
• Language: C#
• Other: Xcode, Android SDK, gradle
今日 喋るコト
• iOS, Android に於けるビルド自動化のまとめ
• PostProcessBuild な話
• 複数プロジェクトに跨がるコードの話
• 画像やら音声やらのリソース管理の話
今日 喋らないこと
• Native Plugin の話
• 各マーケットへの公開に関する話
• リソースの読み込み方に関する話
iOS
iOS
つ [ ]
iOS
• BuildPipeline.BuildPlayer()
• Xcode Editor for Unity (forked by monry)
• xcodebuild
• xcrun
iOS
• Provisioning Profile 周りは1回ハマっとけw
• 複数アプリ展開してるなら、Wildcard な
AdHoc 作っとけ。
iOS
• テクスチャの圧縮は PVRTC がオヌヌメ
• アルファチャンネル分離して、Shader で

合成するようにしてあげれば

RGB Compressed PVRTC 4bits と

RGB Compressed PVRTC 2bits だけでコトが足りる
• imésta とか使って pvr コンテナを事前に生成しとく

ってのもアリ
• PVR 荒れを起こしにくいよ!
Android
Android
つ [ ]
Android
• BuildPipeline.BuildPlayer()
• gradle
• レシピはコチラ。
Android
• Maven のローカルリポジトリに

unity-classes.jar を登録しとく。
• Keystore とか Proguard とかは気を付ける。
• 各種広告 SDK とかを突っ込む際に、

最低1回はハマるんじゃないかな?w
Android
• テクスチャの圧縮は ETC1 か DXT5 かな?
• 以前の勉強会で「ATC が∼」とか言ったけど、

あれ、嘘。
• GPU が Adreno じゃない場合とかに壊滅的。
• アルファチャンネル無しなら ETC1 で、

有りなら DXT5 が良いんじゃないかと。
両 OS
両 OS
• ビルド後のアレコレをちょっとでも楽に
• DeployGate なり TestFlight なりにデプロイ
• ChatWork なり Slack なりに通知
• Jenkins おじさんと密接な関係になろう!w
ちょっと休憩…。
+α 其の壱
Editor Script による
設定管理
設定管理
• コード共通化の際に直面する問題
• それが
• プロジェクト毎に異なる設定値
設定管理
• 例えば、Flurry のような解析 SDK の API Key
• 例えば、広告 SDK の API Key
• 例えば、レビュー依頼ダイアログの遷移先 URL
• 例えば、AssetBundle のダウンロード URL
設定管理
• ポイントは
• ScriptableObject
• Editor Script を書く
• ".asset" ファイルを理解する
• 根性あるなら Editor GUI も頑張る
設定管理
• AssetDatabase.CreateAsset(Object, string)
• [SerializeField]
• EditorUtility.SetDirty(Object)
• Resources.Load(string)
設定管理
DEMO
設定管理
• こちらに、本日のデモを push してあります。
+α 其の弐
KidsStar に於ける
リソース管理の紹介
リソース管理
• Unity でアプリとかを作る時に困るコト
• それが
• リソース管理
リソース管理
• 例えば、Texture
• 例えば、AudioClip
• 例えば、AssetBundle
• 例えば、外部 SDK
• 例えば、ローカライズテキスト
• 例えば、アイコンやスプラッシュ
リソース管理
• 免責
• これからお話するのは、あくまで弊社での

運用事例の紹介です。
• 「この通りやったら完璧」とは言いませんw
リソース管理
• Unity の特殊ディレクトリに対する理解
• Resources
• Streaming Assets
• Plugins
• これらのディレクトリ配下の Asset は

ビルド時にパッケージに含まれる
リソース管理
• Import Asset に対する理解
• 大量の画像とかあると死にたくなるw
• ".meta" ファイル重要
• CacheServer 無いと死ねる
リソース管理
• Unity による自動変換に対する理解
• 画像 → Texture
• 音声 → AudioClip
• オブジェクト → YAML (Force Text の場合)
リソース管理
DEMO
まとめ
まとめ
• 自動化による怠惰なエンジニアライフを!
• 全ては公式リファレンスに載ってる!
• プロジェクト管理のベストプラクティスを

探す旅は果てしなく続く!!!w
Thank you for

your attention !

More Related Content

PDF
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
PDF
Unity 5.3 の In-App Purchase を試してみた
PDF
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
PDF
Unity に於ける iOS ビルド自動化のおはなし - 20141030 第26回 Unity 勉強会
PDF
Unityと.NET
PPTX
Unity入門ハンズオン
PDF
20140314 Unity勉強会 PostProcessBuild のおはなし
PPTX
Unity * スマートフォン開発で学んだこと
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
Unity 5.3 の In-App Purchase を試してみた
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
Unity に於ける iOS ビルド自動化のおはなし - 20141030 第26回 Unity 勉強会
Unityと.NET
Unity入門ハンズオン
20140314 Unity勉強会 PostProcessBuild のおはなし
Unity * スマートフォン開発で学んだこと

What's hot (20)

PDF
Unity講習会(初級)
PDF
【 #Unity会 】このUnityがすごい2015年版
PDF
UnityでつくるはじめてのPONG
PPTX
ポコロンダンジョンズを彩るアニメーションノウハウ
PDF
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
PDF
Unity2DとNewGUIについて
PDF
Doozy ui 導入Tips
ODP
Unityは神,Unrealは現実
PDF
Doozy UI 使おうぜ! #unity_lt
PPTX
各種ゲームエンジンの紹介と利用について
PDF
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
PPTX
ゲームデータDLとの戦い ~幻塔戦記グリフォン~
PPTX
Unity って何?
PDF
Unity での asset bundle による追加コンテンツの扱い方
PPTX
C# で i phone ゲーム開発
PDF
UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow)
PDF
"有翼のフロイライン Wing of Darkness"と歩むUE4の世界
PDF
UE4を使った映像制作 (UE4 Character Art Dive Online)
PDF
UE4を用いた人間から狼男への変身表現法の解説
PDF
UE4におけるキャラクタークラス設計
Unity講習会(初級)
【 #Unity会 】このUnityがすごい2015年版
UnityでつくるはじめてのPONG
ポコロンダンジョンズを彩るアニメーションノウハウ
UE4をレンダラとした趣味的スピード背景ルックデブ(UE4 Environment Art Dive)
Unity2DとNewGUIについて
Doozy ui 導入Tips
Unityは神,Unrealは現実
Doozy UI 使おうぜ! #unity_lt
各種ゲームエンジンの紹介と利用について
UE4で”MetaHumanを使わずに”耳なし芳一になる10の方法 | UE4 Character Art Dive Online
ゲームデータDLとの戦い ~幻塔戦記グリフォン~
Unity って何?
Unity での asset bundle による追加コンテンツの扱い方
C# で i phone ゲーム開発
UE4ディープラーニングってやつでなんとかして!環境構築編(Python3+TensorFlow)
"有翼のフロイライン Wing of Darkness"と歩むUE4の世界
UE4を使った映像制作 (UE4 Character Art Dive Online)
UE4を用いた人間から狼男への変身表現法の解説
UE4におけるキャラクタークラス設計
Ad

Similar to 20150123 第28回 Unity 勉強会「Unity に於けるビルド自動化のおはなし & 設定管理とリソース管理のおはなし」 (20)

PPTX
Unity ゲーム開発
PPTX
Unity/CSharp 1 - pptx
PPTX
みくみくまうすについて&Unity で使えるコーディングノウハウ
PPTX
Live2Dの描画の裏側の話
PPTX
Unity/CSharp 3
PDF
Unity2015_No2~Terrain~
PDF
福井スマートフォンハッカソン Titanium Mobileの紹介
PPTX
Unity/CSharp 2
PPTX
FriendlyとTestAssistantProでテスト自動化やってみた
PPTX
unity build on github actions
PPTX
[141004] cedec 2014 참관기 & 강연 리뷰 #1
PDF
java-ja TDD 2nd
PDF
C#への招待
PDF
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
PPTX
はじめてのUnity教室 講義用ppt
PDF
Android studio で行ってみよう!!
PDF
第二世代MDD(萌え駆動開発)によるプログラミングWin32 #CLRH89
PDF
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PDF
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
PDF
GCSアジャイル開発を使ったゲームの作り方
Unity ゲーム開発
Unity/CSharp 1 - pptx
みくみくまうすについて&Unity で使えるコーディングノウハウ
Live2Dの描画の裏側の話
Unity/CSharp 3
Unity2015_No2~Terrain~
福井スマートフォンハッカソン Titanium Mobileの紹介
Unity/CSharp 2
FriendlyとTestAssistantProでテスト自動化やってみた
unity build on github actions
[141004] cedec 2014 참관기 & 강연 리뷰 #1
java-ja TDD 2nd
C#への招待
2015/10/14 JJUGナイトセミナー「テスト駆動開発ここが聞きたい」
はじめてのUnity教室 講義用ppt
Android studio で行ってみよう!!
第二世代MDD(萌え駆動開発)によるプログラミングWin32 #CLRH89
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 OSAKA
PlayCanvas:2D機能とライブラリ組み込みのいろは - PlayCanvas運営事務局 - GTMF 2018 TOKYO
GCSアジャイル開発を使ったゲームの作り方
Ad

More from Mori Tetsuya (20)

PDF
GraphView のすゝめ / Introduction of GraphView
PDF
基盤・設計まわりでしくじってしまった話
PDF
2020年版 Unity Package Manager 更新点まとめ
PDF
Unity Development Infrastructure / Unity プロジェクトの開発基盤を大公開
PDF
Future of UniFlow
PDF
Clean Architecture for Unity
PDF
Visual Programming Framework for Unity - UniFlow のご紹介
PDF
Unity ユーザのための Git ハンズオン #2
PDF
Unity で Unit な Test を書いてみた
PDF
AssetBundle (もどき) の作り方
PDF
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
PDF
Unity 5 の AssetBundle について (浅く) まとめてみた - 2015/05/22 第31回 Unity 勉強会
PDF
できる! Unity 2D (vol.2)
PDF
20150216 Unity Hands-on 「できる!Unity 2D」
PDF
20140926 NCMB勉強会 #4 - Unity meets SpriteStudio
PDF
20140829 第24回 Unity 勉強会 - Unity meets SpriteStudio
PDF
20140822 Swift 勉強会 vol.3 - はぢめての Swift
PDF
20140711 MySQL Casual Talks vol.6 / 続・Amazon RDS Casual Talks
PDF
20140618 教育・知育アプリのつくりかた
PDF
20140530 Unity に於ける Localization のおはなし
GraphView のすゝめ / Introduction of GraphView
基盤・設計まわりでしくじってしまった話
2020年版 Unity Package Manager 更新点まとめ
Unity Development Infrastructure / Unity プロジェクトの開発基盤を大公開
Future of UniFlow
Clean Architecture for Unity
Visual Programming Framework for Unity - UniFlow のご紹介
Unity ユーザのための Git ハンズオン #2
Unity で Unit な Test を書いてみた
AssetBundle (もどき) の作り方
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
Unity 5 の AssetBundle について (浅く) まとめてみた - 2015/05/22 第31回 Unity 勉強会
できる! Unity 2D (vol.2)
20150216 Unity Hands-on 「できる!Unity 2D」
20140926 NCMB勉強会 #4 - Unity meets SpriteStudio
20140829 第24回 Unity 勉強会 - Unity meets SpriteStudio
20140822 Swift 勉強会 vol.3 - はぢめての Swift
20140711 MySQL Casual Talks vol.6 / 続・Amazon RDS Casual Talks
20140618 教育・知育アプリのつくりかた
20140530 Unity に於ける Localization のおはなし

20150123 第28回 Unity 勉強会「Unity に於けるビルド自動化のおはなし & 設定管理とリソース管理のおはなし」