はじめに
2016/08/14に開催されたUnity道場の第10回、アセット運用ベストプラクティスの参加報告記事です。
会場は渋谷Dots.さん、担当講師はUnity Technologies Japanの山村さんでした。
Unty開発者ならおなじみ、ResourcesそしてAssetBundleの中身!
発表資料はこちら。
AssetBundleとは?、Resourcesとは?上辺の話だけでなく、それぞれのフードの内側を説明・解説しつつ、それぞれの利点・欠点を紹介されていました!
ある程度大きなゲームを作ろうとする人は、必見の内容でした!
状況によってベストプラクティスは異なる!
AssetBundleとは?、Resourcesとは?の内容も素敵でしたが、更にぐっと来たことはこちら!
ベストプラクティスは実力、目的、残り時間、規模、様々な要因で異なると思います。誰もに共通なベストプラクティスなんてものは存在しないと思います。「○○はダメだ××が最高!」という話は、○○がだめで××の方が優れているという主張の理由・原因の方を大事にするべきですね。
また、複数ある選択肢の中から最良の選択肢を選ぶためには、その選択肢を正しく理解している必要もあります。更に選択肢が一つだけなのもよくありませんね。あるやり方に固執するだけではなく、正しい方法を適切に使えるように、準備をしておきたいですね。
関連ツイートとおまけ
— むろほし (@RyotaMurohoshi) 2016年8月14日
実は当日はコミケ(C90))の3日目でした。当日私が所属するUnity部では、当日Unibook6を頒布していました。
以下当日の私のツイートピックアップ。
『【Unity道場10】アセット運用ベストプラクティス』に申し込みました!https://t.co/tprd9YCYbJ#eventdots
— むろほし (@RyotaMurohoshi) 2016年8月14日
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
Resourcesは、リリース後中身の更新・追加はできないよね
けど、AssetBundleを使えば、
というイントロ〜
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
へぇー
シーン丸ごとアセットバンドル!
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
Assetの依存関係
注意しないと、一部しか使わないけれどデカイAssetBundleに依存してて、めんどくさいことになりそう
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
プロジェクトによってはAssetBundleのビルドに一日かかる
ひぇー
確かに、AssetBundleのシミュレーションしたくなる
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
最適解は状況によって変わる
たしかに。
チームメンバー、制作物の規模、目的で全然異なる
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
ファイル名の変更をしても参照が保たれているのは、*.meta内のGUIDが一緒だから。
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
おれ、画像ファイルの更新
旧ファイル消す
新ファイル置く
*.metaをチェックアウトする
で割とやる。
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
アセットのランタイムのライフサイクルの話
肝はInstance I'd
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
Instance IDは、ゲーム起動時全てのアセットに、割り当てられるー
ほぉー
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
今日の肝、Instance Idっぽい
#Unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
ベストプラクティスは、
「ベストプラクティスを信じない」
#unity道場
— むろほし (@RyotaMurohoshi) 2016年8月14日
チームに、よってはResourcesを使うのもありー
おれは今使ってるー
一人だし、ノーバージョンアップコンテンツ追加もすぐにはやらないし