サムザップテックナイトvol.4 イベントレポート

 

 

こんにちは、後輩ができて心地よい緊張感のあるインフラエンジニア、ハピおかです。
サムザップテックナイト vol.4 のイベントレポートを書きます。
技術ブログなのに(前々回から今回も)技術的なことは書いてないので、まったりと読んでいただければと思います。

 

technight-vol4

 

サムザップテックナイト vol.4「Unity山村氏が語る。~スマホのパフォーマンスチューニング最前線~」 は、
6月22日に TECH PLAY SHIBUYATECH PLAY SHIBUYA*1にて開催されました。

 

ユニティ・テクノロジーズ・ジャパン合同会社 山村達彦さんにパフォーマンスチューニングとは何なのか、具体的に何をしていくのかなどをお話していただきました。

 

山村さんのプレゼンテーションはこちらのサイトで閲覧可能です。
分かり易くまとめられており、チェックのフローが実用的で、すぐに実践できそうです!弊社のエンジニアだけでなく、普段業務でスマートフォンゲームを開発している参加された方からも勉強になる内容だったと評判でした!

 

technight-vol4 02

 

スマートフォンでは、一般的なパソコンと異なり使える資源*2が限られています。
そのため、パフォーマンスチューニングを行うことが必要になることが多いです。お話を聞いていて、パフォーマンスチューニングを行う上で二つのことを明確にして行うことが重要だと思いました。

まず、パフォーマンスチューニングの目的と対象端末です。
具体例をあげると、「シェアが一番高い端末でサクサク高速に動くようにしたい」あるいは「最低でもこのバージョンから遊べるようにしたいから、この端末でもストレスを感じないプレイができるようにしたい」などです。

 

スマートフォンの種類は多くあり、そのスペック*3は多岐に渡っています。
ひと昔前のスマートフォンのハードウェアと比較すると、CPUの性能、メモリサイズ、画面サイズや解像度は飛躍して向上しています。また同じ処理でも端末によって遅かったり、向き不向きがある場合もあります。

 

全ての端末で良くしたいという欲が出てくるかもしれません。しかし、販売されている全ての端末を購入して検証することはできませんし、エミュレータと実機では動作やパフォーマンス分析結果が異なることがあります。なので、目的とターゲットを決めてから行うことが重要であると思いました。

 

次に、ゲームのパフォーマンスを実際に確認し、分析することです。インフラ部門であれば「開発環境が重い」という相談が来たとして、「開発環境までのネットワークトラフィックが多くて重いのか」、「開発環境の処理が重いのか」、「開発環境のあるネットワーク内に問題があるのか」など、どこに原因があるのか一つ一つ確認していく必要があります。
それと同じく、ゲームが重いので改善したい!と思った時も何が原因でどこに改善の余地があるのか実際に確認して、分析することが大切だと思いました。

 

ゲームのロードが重いとして、時間がかかっている処理は「初期化*4」なのか
ロード*5」なのか切り分ける。初期化の場合は、余分なデータを読まない あるいは重複しているか大きいアセット*6 を避けることで改善できるそうです。このように原因が特定すれば、検証してみる項目もあたりがつけられます。山村さんによると、パレートの法則*7に従い、原因を作り出している20%の部分を見つけることができれば、パフォーマンスは劇的に改善するようです。

 

technight-vol4 3

 

 今回のサムザップテックナイトでは、参加者の方々が熱心にメモを取る姿がとても印象に残っています!「医者、英語通訳そして技術者は一生勉強する職業だ」とよく言われます。そして、習熟度をあげるために必要なことは「手を動かすこと」、「自分より上級者と会話をすること」だと思っています。ザムサップテックナイトでは、様々な分野の著名人やエバンジェリストをお招きしており、自分の業務とは直接結びつく分野でなくても、聴講していて楽しいです。
また、弊社のエンジニアが今回の知見を試してみたところ、検証アプリでアセットバンドルが2MB増えたものの、起動時間が数秒早くなったそうです。実践的な情報が手に入るのも嬉しいことですよね。

 

…ということで、第5回目のサムザップテックナイトでお会いしましょう!「ハピおか、みーつけた!」とお声かけいただけるのを楽しみにしております!

 

サムザップテックナイトの最新情報はこちら ↓↓

https://sumzaptechnight.connpass.com/

 


1. [TECH PLAY SHIBUYA:dots.渋谷から名称変更 ]
2. [資源:CPUやメモリなどの利用に限りのある構成要素 ]
3. [スペック:仕様も含めた広い意味でのスペック ]
4. [初期化:使えるようにするための準備 ]
5. [ロード:メモリにデータを実際に乗せる処理 ]
6. [アセット:モデルや画像などゲーム内素材をまとめたもの ]
7. [パレートの法則:経済などにおいて、全体の数値の大部分は2割程度の一部の構成要素が支配的な原因を持っているという経験則。80:20の法則などと呼ばれ有名な例は「働きアリ」がある。]

 

 

  • このエントリーをはてなブックマークに追加