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
gree_tech
PRO
June 10, 2019
Technology
0
150
ららマジでしかできない!?キャラクターアセット最適化事例
「WFS Tech Talk #1」で発表された資料です。
https://gree.connpass.com/event/129292/
gree_tech
PRO
June 10, 2019
Tweet
Share
More Decks by gree_tech
See All by gree_tech
REALITY株式会社における開発生産性向上の取り組み: 失敗と成功から学んだこと
gree_tech
PRO
2
130
『ヘブンバーンズレッド』におけるフィールドギミックの裏側
gree_tech
PRO
2
90
セキュリティインシデント対応の体制・運用の試行錯誤 / greetechcon2024-session-a1
gree_tech
PRO
1
96
『アナザーエデン 時空を超える猫』国内海外同時運営実現への道のり ~別々で開発されたアプリを安定して同時リリースするまでの取り組み~
gree_tech
PRO
1
78
『アサルトリリィ Last Bullet』におけるクラウドストリーミング技術を用いたブラウザゲーム化の紹介
gree_tech
PRO
1
89
UnityによるPCアプリの新しい選択肢。「PC版 Google Play Games」への対応について
gree_tech
PRO
1
110
実機ビルドのエラーによる検証ブロッカーを0に!『ヘブンバーンズレッド』のスモークテスト自動化の取り組み
gree_tech
PRO
1
110
"ゲームQA業界の技術向上を目指す! 会社を超えた研究会の取り組み"
gree_tech
PRO
1
140
Jamstack でリニューアルするグリーグループのメディア
gree_tech
PRO
2
300
Other Decks in Technology
See All in Technology
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
Taming you application's environments
salaboy
0
180
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
170
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
The Rise of LLMOps
asei
5
1.2k
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
670
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
Featured
See All Featured
Designing Experiences People Love
moore
138
23k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
A designer walks into a library…
pauljervisheath
203
24k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Bash Introduction
62gerente
608
210k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
47
2.1k
The Invisible Side of Design
smashingmag
298
50k
Code Review Best Practice
trishagee
64
17k
Done Done
chrislema
181
16k
Code Reviewing Like a Champion
maltzj
520
39k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Transcript
ららマジにしかできない!? キャラクターアセット最適化事例 2019/6/6 奥村 典史
©️ WFS ららマジとは? ららマジのご紹介
None
• キミと奏でる、音と魔法の学園RPG • Write Flyer Statdios✕A-1 Pictures協力タッグでおくる、圧倒的 ドラマティックRPG! • 登場するのは30人の個性豊かなヒロイン。豪華声優陣がストー
リーをフルボイスで彩ります。 • 2017年1月25日リリース(約2年半) ららマジとは
Unity✕Spine✕アクション
だけで使える最適化の話
None
None
ボーン100以内くらい メッシュ変形多用
None
太鼓が3Dみたいに動く すごくない?
ららマジでSpineのアセットを 使う方法
.skel .atlas .png skel.asset (.skelへの参照を持つ) atlas.asset (.atlasへの参照を持つ) .mat (.pngへの参照を持つ) 変換
Spineのインポート
None
Spineのボーンの位置をUnity上 で参照できるようにする
None
None
None
ここで作ったボーンは位置を エミュレートしているだけ
見た目には影響がありません
このボーンの先に攻撃用の コリジョンをひっつけます
ちょっと苦労した話
Unity上でエミュレートした ボーンが死ぬほど重い!
敵キャラ5体味方キャラ1体で CPU負荷が限界!
負荷の3/4がUnity上でエミュレ ートされたボーンの負荷!
重い!
プランナーさんとラーメンを 食べた帰り道
「キャラクター4体同時に出した いんですよねぇ・・・・」
!?
出すことは造作もない
パフォーマンスが無理!
こうして、パフォーマンスの 最適化が必要となりました
ではここで クエスチョンです!
結果的にキャラクターデータの 最適化によってキャラクターの アセットは4倍速くなりました!
どうやって キャラクターアセットを 最適化したのでしょう?
答え
重たいのはUnity上でエミュレー トされたボーンの負荷
Spineのボーンエミュレートは 機械的にすべてのボーンをエミ ュレートする
コリジョンがひっついているの は一部のボーンのみ
答えは 「コリジョンがひっついている ボーンとその親ボーン以外を 削除した」
None
None
でした
おまけ
ららマジには アンサンブル玉と呼ばれる 「コイン」みたいなものが あります
しかしららマジのAIには 1行もアンサンブル玉の位置を特 定するコードが ありません
クエスチョン: なぜオートモードですべての アンサンブル玉をとりながら 器楽部の女の子は 走れるのでしょう?
答えは懇親会で奥村に 聞いてください!
ありがとうございました!