SlideShare a Scribd company logo
1
MadewithUnity:ADAM
AssetGraph
入門
山村 達彦
2
3
予定
● 前半
○ Asset Graphの紹介
○ AssetGraphの機能
● 後半
○ デモ(AssetBundleを作る)
○ デモ(設定の変更を作る)
○ デモ(Prefabのセットアップ)
4
AssetGraphって
なんぞや?
5
6
アセットのフローを改善するもの
● アセットの操作に特化したシステム
● 手作業のオペレーションを削減する
● 汎用的なノードの組み合わせで複雑な設定を表現
● C#で容易に拡張が可能
● 大量のファイル操作に強い
7
アセットの一括生成。
アセットの一括更新。
アセットの一括バンドル化。
グラフィカルに。
8
なんでそんなモンが必
要に?
9
10
11
12
13
A社 B社
C社
14
「TextureからPrefab作る拡張、作れる?」
「お任せあれ」
「この前のアレなんだけど、
 ちょっと設定を変えれる?」
「反応無いけど大丈夫?
 出来たら連絡ヨロ」
「おーい?」
15
拡張作るはプログラマ?
動作の修正にはプログラマが必要、
もしくは
どんな設定にも対応できるような汎用的な実装が必要(大
変)
16
17
● アセット操作をコーディング無しに作成できる。
ノードを作って接続していくだけで、必要なアセットを作成できる
● ビルドするときに、何が起こるのかがわかる
グラフィカルに確認できる
● ルールベースでパイプラインを構築できる
名前やパスといったルールで動作を定義できる
18
ちなみに・・・
19
2年前・・・
20
AssetBundle Browser AssetBundle Graph Tool
AssetBundle Manager
21
22
AssetBundle Browser
アセットの登録や依存関係を
視覚的に制御・確認できる
暗黙的なアセット参照の問題
AssetBundle Graph Tool
AssetBundleの生成を
ルールベースで一括処理する
複雑なアセット管理の面倒さ
23
「このツールでPrefabとか作りたいんだけど、どうやるん?」
24
!
25
「ABGTでPrefabとかも作れたら便利だな」
「もういっそアセット制御全般に使おうぜ」
「それ、最早 ”AssetBundle” Graph Toolじゃなくね?」
「おk、名前を変えよう」
「Asset Flow Special Graph Toolとかどうよ?」
「ダサい」
「臭い」
「長い」
26
MadewithUnity:ADAM
Asset Graph Tool
27
Asset Graph Toolの立ち位置
● オープンソースで展開(Github、Bitbacket)
28
Asset Graph Toolの立ち位置
● オープンソースで展開(Github、Bitbacket)
● 標準ツールとしてPackman経由で配信予定
Navmesh
PostProcessingStack
UGUI
SRP
Unity Package Manager
29
Asset Graph Toolの立ち位置
● オープンソースで展開(Github、Bitbacket)
● 標準ツールとしてPackman経由で配信予定
● 作ってるのは日本人
今なら要望には割と答えられるかもしれない
We need feedback
30
Asset Graph Toolの立ち位置
● オープンソースで展開(Github、Bitbacket)
● 標準ツールとしてPackman経由で配信予定
● 作ってるのは日本人
今なら要望には割と答えられるかもしれない
● 別口の手動ワークフローとして Preset も出る
31
AssetGraphには、
どんな機能があるの?
どうやって使うの?
32
● ノードを繋いで処理を行う
● 処理の内容を確認できる
● アセットを監視し、変化したら処理を行う
● 複数のグラフを複数プラットフォーム向けにバッチ処理できる
機能概要
33
ノードを繋いで処理を行う
34
35
見つける
操作対象を
決める
抽出する
まとめる
アセットを作る
設定を書き換える
ビルドする
絞り込む 何かする
36
見つける
スプライトフォ
ルダから Textureを
抽出する
名前を元に
まとめる
アニメーションを作る
絞り込む 何かする
37
uWalk (01~14)
uRun (01~18)
uBrake (01~18)
Walk
Run
Brake
38
uWalk (01~14)
uRun (01~18)
uBrake (01~18)
Walk
Run
Brake
Breake
Run
Brake
u*
見つける 絞り込む 何かする
39
uWalk (01~14)
uRun (01~18)
uBrake (01~18)
Walk
Run
Brake
Breake
Run
Brake
u*
Idle (01~6)
Attack (01~6)
Idle
Attack
Idle
Attack
見つける 絞り込む 何かする
40
41
アセットを作る
設定を書き換える
ビルドする
何かする見つける
操作対象を
決める
抽出する
まとめる
絞り込む
42
アセットを作る
設定を書き換える
ビルドする
43
アセットを作る
設定を書き換える
ビルドする
44
アセットを作る
設定を書き換える
ビルドする
45
DEMO
46
アセットを変更したらPrefabにも反映
47
操作対象を
決めるノード
48
Textureをインポートして
スプライト作って
Prefabを作る
49
処理の内容を確認する
50
基本な流れ(処理を確認する)
スプライトフォ
ルダから Textureを
抽出する
名前を元に
まとめる
アニメーションを作る
ちゃんと
抽出できる?
設定は
正しい?
ちゃんと
グループ化
できた?
51
52
処理したアセット
一覧表示
53
何か設定がおかしい
アセットがある…
ログで確認 操作したノードをハ
イライト
54
55
各プラットフォーム向けにバッチ処理
56
バッチ処理
Prefab設定のグラフ
Sprite構築のグラフ
AssetBundleビルドのグラフ
57
グラフを登録して、 処理を実行する
58
ドラッグ&ドロップ
59
ビルドしたい
プラットフォームを
指定
60
$> sh -e buildassetbundle.sh -target WebGL MyGraphNameToRun
61
● ノードを繋いで処理を行う
● 処理の内容を確認できる
● アセットを監視し、変化したら処理を行う
● 複数のグラフを複数プラットフォーム向けにバッチ処理できる
機能概要
62
63
Asset Graphの拡張
64
● IModifier
● IPostprocess
● IFilter
● IAssetGenerator
● IPrefabBuilder
● IAssetImporterConfigurator
65
66
67
68
69
70
71
72
MadewithUnity:ADAM
後半に続く
73
実際に使ってみる
(AssetBundleを作る)
74
実際に使ってみる
(設定の変更)
75
実際に使ってみる
(Prefabのセットアップ)
76
MadewithUnity:GenerativeArt
まとめ
77
● AssetGraphはノードベースで一括操作するときに便利な機能
● なんか一括処理とかするやつはコレ使って楽しよう(提案
● ノードは割と簡単に拡張できる
● 将来的には標準化する予定
● 求む現場のフィードバック
まとめ
78
79
MadewithUnity:MonumentValley2byustwoGames
Thank you

More Related Content

PDF
インタフェース完全に理解した
PPTX
なぜなにリアルタイムレンダリング
PDF
Unity開発で使える設計の話+Zenjectの紹介
PDF
UniTask入門
PDF
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
PDF
【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~
PDF
Unityでパフォーマンスの良いUIを作る為のTips
PDF
【Unite Tokyo 2018】さては非同期だなオメー!async/await完全に理解しよう
インタフェース完全に理解した
なぜなにリアルタイムレンダリング
Unity開発で使える設計の話+Zenjectの紹介
UniTask入門
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~
Unityでパフォーマンスの良いUIを作る為のTips
【Unite Tokyo 2018】さては非同期だなオメー!async/await完全に理解しよう

What's hot (20)

PDF
【Unity】 Behavior TreeでAIを作る
PDF
UniRx完全に理解した
PDF
コールバックと戦う話
PPTX
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
PPTX
UnityでUI開発を高速化した件
PDF
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
PDF
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
PDF
Unityでオニオンアーキテクチャ
PPTX
UniRxでMV(R)Pパターン をやってみた
PDF
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライド
PDF
【Unite Tokyo 2019】Understanding C# Struct All Things
PDF
UE4でマルチプレイヤーゲームを作ろう
PDF
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
PDF
Unityではじめるオープンワールド制作 エンジニア編
PPTX
UE4のためのより良いゲーム設計を理解しよう!
PDF
ゲーム開発者のための C++11/C++14
PDF
Observableで非同期処理
PDF
UIElements+UI BuilderでEditor拡張を作ろう
PPTX
DeNAの最新のマスタデータ管理システム Oyakata の全容
PDF
トリコの動かし方
【Unity】 Behavior TreeでAIを作る
UniRx完全に理解した
コールバックと戦う話
【CEDEC2018】一歩先のUnityでのパフォーマンス/メモリ計測、デバッグ術
UnityでUI開発を高速化した件
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
Unityでオニオンアーキテクチャ
UniRxでMV(R)Pパターン をやってみた
CEDEC2015「加算合成コストが0になる!?すぐに使えるP-MAPブレンドテクニック」発表スライド
【Unite Tokyo 2019】Understanding C# Struct All Things
UE4でマルチプレイヤーゲームを作ろう
猫でも分かるUE4を使った VRコンテンツ開発 超入門編 2021
Unityではじめるオープンワールド制作 エンジニア編
UE4のためのより良いゲーム設計を理解しよう!
ゲーム開発者のための C++11/C++14
Observableで非同期処理
UIElements+UI BuilderでEditor拡張を作ろう
DeNAの最新のマスタデータ管理システム Oyakata の全容
トリコの動かし方
Ad

Similar to 【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜 (20)

PDF
増加するコアを使い切れ!!
PDF
JAMstackは眠らない
PDF
QGISセミナー初級・実践編(V2.4)
PDF
QGISセミナー初級編 ~QGISの使い方・実践編~ Ver. 2.4版
PPT
Asakusa Enterprise Batch Processing Framework for Hadoop
PDF
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
PDF
Hadoop事始め
PDF
asm.jsとWebAssemblyって実際なんなの?
PDF
PHP開発者のためのNoSQL入門
PPT
GruntでJavaScript 前作業の自動化!
PDF
Rubyによるお手軽分散処理
PDF
sbtマルチプロジェクトビルドの使いどころ
PDF
地方企業がソーシャルゲーム開発を成功させるための10のポイント
PDF
TripleOの光と闇
PPTX
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
PDF
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介
PPTX
機械学習 / Deep Learning 大全 (5) Tool編
PDF
20110519 okuyama tokyo_linuxstudy
PPTX
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう!
PPTX
EmbulkとDigdagとデータ分析基盤と
増加するコアを使い切れ!!
JAMstackは眠らない
QGISセミナー初級・実践編(V2.4)
QGISセミナー初級編 ~QGISの使い方・実践編~ Ver. 2.4版
Asakusa Enterprise Batch Processing Framework for Hadoop
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
Hadoop事始め
asm.jsとWebAssemblyって実際なんなの?
PHP開発者のためのNoSQL入門
GruntでJavaScript 前作業の自動化!
Rubyによるお手軽分散処理
sbtマルチプロジェクトビルドの使いどころ
地方企業がソーシャルゲーム開発を成功させるための10のポイント
TripleOの光と闇
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
Hadoopデータ基盤とMulti-CloudなML基盤への取り組みの紹介
機械学習 / Deep Learning 大全 (5) Tool編
20110519 okuyama tokyo_linuxstudy
Web App for Containers + MySQLでコンテナ対応したPHPアプリを作ろう!
EmbulkとDigdagとデータ分析基盤と
Ad

More from Unity Technologies Japan K.K. (20)

PDF
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
PDF
UnityのクラッシュをBacktraceでデバッグしよう!
PDF
Unityで始めるバーチャルプロダクション
PDF
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
PDF
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
PDF
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
PDF
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
PDF
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
PDF
Unity教える先生方注目!ティーチャートレーニングデイを体験しよう
PDF
「原神」におけるコンソールプラットフォーム開発
PDF
FANTASIANの明日使えない特殊テクニック教えます
PDF
インディーゲーム開発の現状と未来 2021
PDF
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
PDF
Burstを使ってSHA-256のハッシュ計算を高速に行う話
PDF
Cinemachineで見下ろし視点のカメラを作る
PDF
徹底解説 Unity Reflect【開発編 ver2.0】
PDF
徹底解説 Unity Reflect【概要編 ver2.0】
PDF
Unityティーチャートレーニングデイ -認定プログラマー編-
PDF
Unityティーチャートレーニングデイ -認定3Dアーティスト編-
PDF
Unityティーチャートレーニングデイ -認定アソシエイト編-
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
UnityのクラッシュをBacktraceでデバッグしよう!
Unityで始めるバーチャルプロダクション
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
Unity教える先生方注目!ティーチャートレーニングデイを体験しよう
「原神」におけるコンソールプラットフォーム開発
FANTASIANの明日使えない特殊テクニック教えます
インディーゲーム開発の現状と未来 2021
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
Burstを使ってSHA-256のハッシュ計算を高速に行う話
Cinemachineで見下ろし視点のカメラを作る
徹底解説 Unity Reflect【開発編 ver2.0】
徹底解説 Unity Reflect【概要編 ver2.0】
Unityティーチャートレーニングデイ -認定プログラマー編-
Unityティーチャートレーニングデイ -認定3Dアーティスト編-
Unityティーチャートレーニングデイ -認定アソシエイト編-

【Unity道場】AssetGraph入門 〜ノードを駆使しててUnityの面倒な手作業を自動化する方法〜